/* Scoped to this carousel; SVG arrows are independent of icon fonts. */
html body .spaic-news-carousel-host > .elementor-container { width:100%; max-width:1280px; }
html body .spaic-news-carousel-host > .elementor-container > .elementor-column { width:100%; min-width:0; }
html body .spaic-news-carousel-host .elementor-widget-wrap,
html body .spaic-news-carousel-host .elementor-widget-shortcode { min-width:0; width:100%; }
html body .snc {
  --snc-visible:5; --snc-gap:18px;
  position:relative; box-sizing:border-box; width:100%; max-width:1280px;
  padding:8px 48px 20px; margin:0 auto;
  color:#194b43; font-family:var(--spaic-font-main, Arial, sans-serif);
}
html body .snc *, html body .snc *::before, html body .snc *::after { box-sizing:border-box; }
html body .snc .snc-viewport { overflow-x:auto; padding:5px 0 14px; width:100%; }
html body .snc.snc-ready .snc-viewport { overflow:hidden; touch-action:pan-y pinch-zoom; }
html body .snc .snc-track {
  display:grid; grid-auto-flow:column;
  grid-auto-columns:calc((100% - (var(--snc-visible) - 1) * var(--snc-gap)) / var(--snc-visible));
  gap:var(--snc-gap); align-items:stretch; direction:ltr;
  transition:transform 280ms ease;
}
html body .snc.snc-no-motion .snc-track { transition:none; }
html body .snc .snc-card {
  display:flex; flex-direction:column; min-width:0; margin:0; padding:0 0 20px;
  background:#fff; border:1px solid #bdc8bf; border-radius:14px; overflow:hidden;
  box-shadow:0 5px 10px rgba(24,61,39,.10); text-align:center;
}
html body .snc .snc-story { display:block; color:#194b43; text-decoration:none; }
html body .snc .snc-story:hover { color:#397d32; text-decoration:none; }
html body .snc .snc-media { display:block; width:100%; aspect-ratio:16/9; overflow:hidden; background:#eff6e9; }
html body .snc img.snc-image { display:block; width:100% !important; height:100% !important; max-width:none; object-fit:cover; object-position:center; margin:0; border:0; border-radius:0; }
html body .snc .snc-image-fallback { display:grid; place-items:center; width:100%; height:100%; }
html body .snc .snc-image-fallback svg { width:64px; stroke:#8faa8a; stroke-width:2; }
html body .snc h3.snc-title { margin:0; padding:21px 16px 12px; color:inherit; font-size:16px; font-weight:700; line-height:1.35; letter-spacing:0; text-transform:none; overflow-wrap:anywhere; }
html body .snc p.snc-excerpt { margin:0; padding:0 16px 24px; color:#194b43; font-size:14px; font-weight:400; line-height:1.55; overflow-wrap:anywhere; }


html body .snc button.snc-arrow { position:absolute; z-index:2; top:calc(50% - 30px); display:grid; place-items:center; width:40px; height:44px; min-width:0; margin:0; padding:8px; border:1px solid #4e963f; border-radius:50%; background:#fff; color:#397d32; cursor:pointer; box-shadow:0 3px 8px rgba(24,61,39,.1); }
html body .snc button.snc-prev { left:0; }
html body .snc button.snc-next { right:0; }
html body .snc button.snc-arrow svg { display:block; width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
html body .snc button.snc-arrow:hover:not(:disabled) { background:#4e963f; color:#fff; }
html body .snc button.snc-arrow:disabled { opacity:.3; cursor:default; }
html body .snc button.snc-arrow[hidden] { display:none !important; }
html body .snc :is(a, button):focus-visible { outline:3px solid #194b43; outline-offset:3px; }
html body .snc .snc-story:focus-visible { outline-offset:-4px; }
html body .snc p.snc-status:not(.snc-error) { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
html body .snc p.snc-status.snc-error { margin:12px 0 0; font-size:14px; color:#94392f; }
html body .snc .snc-archive { display:block; margin-top:16px; text-align:center; }
@media (max-width:1024px) {
  html body .snc { --snc-visible:4; --snc-gap:12px; padding-right:42px; padding-left:42px; }
  html body .snc h3.snc-title { font-size:15px; padding:16px 12px 12px; }
  html body .snc p.snc-excerpt { font-size:13px; padding-right:12px; padding-left:12px; }
  html body .snc button.snc-arrow { width:36px; }
}
@media (max-width:767px) {
  html body .snc { --snc-visible:1; --snc-gap:16px; padding-right:40px; padding-left:40px; }
  html body .snc h3.snc-title { font-size:18px; padding:20px 18px 12px; }
  html body .snc p.snc-excerpt { font-size:15px; padding-right:18px; padding-left:18px; }
}
@media (prefers-reduced-motion:reduce) {
  html body .snc .snc-track { transition:none; }
}


/* SPAIC 1.0.1 — use the site's existing Elementor button design and animation. */
html body .snc .snc-action {
  align-self: center;
  margin: auto 14px 0;
  max-width: calc(100% - 28px);
}
html body .snc .snc-action > .elementor-button {
  max-width: 100%;
  color: #fff !important;
}
html body .snc .snc-action > .elementor-button .elementor-button-text {
  color: inherit !important;
}
