/* VIOSO static-site overrides
   Keep scraped theme CSS untouched. Put all future edits here. */

/* Fonts ------------------------------------------------------------ */
/*@font-face {
  font-family: "Quicksand";
  src: url("fonts/quicksand-4c207512.woff2") format("woff2");
  font-weight: 300 500;
  font-style: normal;
  font-display: swap;
}*/

@font-face {
  font-family: "Quicksand";
  src: url("fonts/quicksand-e8fdda23.woff2") format("woff2");
  font-weight: 600 700;
  font-style: normal;
  font-display: swap;
}

/* Design tokens ---------------------------------------------------- */
:root {
  --vioso-blue: #0095db;
  --vioso-dark-blue: #05429b;
  --vioso-mint: #00eaa9;
  --vioso-text: #222831;
  --vioso-card-dark: #151b22;
  --vioso-card-dark-hover: #1b232d;
  --vioso-border-soft: rgba(255,255,255,.08);
  --vioso-border-card: rgba(255,255,255,.12);
  --vioso-shadow-card: 0 18px 45px rgba(0,0,0,.18);
  --vioso-white-muted: rgba(255,255,255,.72);
}

/* Base overrides --------------------------------------------------- */
html,
body,
body *,
button,
input,
select,
textarea {
  font-family: "Quicksand", Arial, sans-serif !important;
}

img,
video,
svg {
  max-width: 100%;
}

/* Hide empty Joomla/YOOtheme artefacts retained from scrape. */
#system-message-container:empty,
.jmodedit,
.joomla-alert {
  display: none !important;
}

/* Template-ready helpers ------------------------------------------ */
.page-standard main,
.page-product main,
.page-project main {
  min-height: 60vh;
}

/* Reference project hero offset -----------------------------------
   VIOSO navigation uses an overlay header. Legacy reference-project
   articles can begin with uk-padding-remove-top, which lets the first
   heading sit behind the navigation. Add a page-scoped offset only for
   the first reference-project content section. */
.page-reference-project .reference-project > .uk-section:first-child {
  padding-top: 130px !important;
}

@media (max-width: 959px) {
  .page-reference-project .reference-project > .uk-section:first-child {
    padding-top: 105px !important;
  }
}

/* Software landing page -------------------------------------------
   Uses the same visual language as the News archive cards:
   dark rounded cards, clear contrast, contained hover treatment.
   Body class: page-software-landing
   ---------------------------------------------------------------- */
.page-software-landing .software-stage-heading,
.page-software-landing .software-specialist-heading {
  color: var(--vioso-blue) !important;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 700;
  font-size: .95rem;
  margin-bottom: 18px;
}

.page-software-landing .software-stage-row {
  margin-top: 42px;
  background: var(--vioso-card-dark);
  border: 1px solid var(--vioso-border-soft);
  border-radius: 14px;
  padding: 28px;
}

.page-software-landing a.software-stage-card,
.page-software-landing a.software-specialist-card {
  display: block;
  height: 100%;
  background: var(--vioso-card-dark) !important;
  border: 1px solid var(--vioso-border-card) !important;
  border-radius: 18px !important;
  overflow: hidden;
  color: #ffffff !important;
  box-shadow: var(--vioso-shadow-card);
}

.page-software-landing a.software-stage-card:hover,
.page-software-landing a.software-specialist-card:hover {
  background: var(--vioso-card-dark-hover) !important;
  text-decoration: none;
}

.page-software-landing .software-stage-card .uk-card-body,
.page-software-landing .software-specialist-card .uk-card-body {
  background: transparent !important;
  color: #ffffff !important;
}

.page-software-landing .software-stage-card h1,
.page-software-landing .software-stage-card h2,
.page-software-landing .software-stage-card h3,
.page-software-landing .software-stage-card h4,
.page-software-landing .software-stage-card p,
.page-software-landing .software-stage-card strong,
.page-software-landing .software-stage-card span,
.page-software-landing .software-stage-card .uk-card-title,
.page-software-landing .software-stage-card .uk-text-meta,
.page-software-landing .software-stage-card .uk-link-text,
.page-software-landing .software-specialist-card h1,
.page-software-landing .software-specialist-card h2,
.page-software-landing .software-specialist-card h3,
.page-software-landing .software-specialist-card h4,
.page-software-landing .software-specialist-card p,
.page-software-landing .software-specialist-card strong,
.page-software-landing .software-specialist-card span,
.page-software-landing .software-specialist-card .uk-card-title,
.page-software-landing .software-specialist-card .uk-text-meta,
.page-software-landing .software-specialist-card .uk-link-text {
  color: #ffffff !important;
}

.page-software-landing .software-stage-card .uk-text-meta,
.page-software-landing .software-specialist-card .uk-text-meta {
  color: var(--vioso-white-muted) !important;
}

.page-software-landing .software-stage-card .uk-link-text,
.page-software-landing .software-specialist-card .uk-link-text {
  color: var(--vioso-blue) !important;
}

.page-software-landing .software-specialist {
  background: #ffffff !important;
}

/* Software decision table colours --------------------------------- */
.page-software-landing .uk-table thead th {
  color: var(--vioso-blue) !important;
}

.page-software-landing .uk-table tbody td,
.page-software-landing .uk-table tbody td *,
.page-software-landing .uk-table tbody tr td {
  color: #ffffff !important;
}

/* Full-width software card containment -----------------------------
   The Experience Designer and EXAPLAY cards sit inside .software-stage-row
   with a heading above them. The inherited News-card height:100% makes
   the anchor card extend beyond the parent row. Keep equal-height behaviour
   for multi-card rows, but let single full-width stage cards size naturally. */
.page-software-landing .software-stage-row > a.software-stage-card,
.page-software-landing .software-stage-row > a.software-stage-card .uk-card-body {
  height: auto !important;
  min-height: 0 !important;
}
