/* AIUncovered — slate / cyan visual refresh, September 2026.
   Loaded after the legacy export; application behaviour stays intact. */
:root {
  color-scheme: dark;
  --aiu-bg: #192c37;
  --aiu-surface: #223946;
  --aiu-raised: #2b4451;
  --aiu-text: #f3f4ef;
  --aiu-muted: #b9cbd2;
  --aiu-accent: #55d7e6;
  --aiu-on-accent: #132d38;
  --aiu-line: rgba(181, 209, 216, .18);
  --aiu-font: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --aiu-header-height: 88px;
}
html, body, #__next {
  min-height: 100%;
  height: auto;
  width: 100%;
}
html { scroll-behavior: smooth; scroll-padding-top: 112px; }
html, body { overflow-x: clip; overflow-y: auto; }
body {
  display: block;
  background: var(--aiu-bg);
  background-image: radial-gradient(ellipse at 90% 5%, rgba(77, 136, 150, .15), transparent 48%);
  color: var(--aiu-text);
  font-family: var(--aiu-font);
  font-size: 17px;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
#__next { min-height: 100svh; display: flex; flex-direction: column; }
.react-reveal { animation: none !important; opacity: 1 !important; visibility: visible !important; transform: none !important; }
h1, h2, h3, h4, .title, button, input, .ui.button, .ui.menu {
  font-family: var(--aiu-font) !important;
}
::selection { background: #73d9e2; color: #122b35; }
a { color: var(--aiu-accent); }
a:hover { color: #a7edf2; }
a, button { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, [tabindex]:focus-visible {
  outline: 3px solid #a5edf0 !important;
  outline-offset: 5px;
  border-radius: 5px;
}

/* Header and both navigation modes. */
.header, .header-start {
  height: var(--aiu-header-height);
  min-height: var(--aiu-header-height);
  padding: 0 48px;
  position: relative;
  z-index: 30;
  background: rgba(24, 43, 54, .78);
  border-bottom: 1px solid var(--aiu-line);
  box-shadow: none;
  backdrop-filter: blur(16px);
}
.header-container { max-width: 1200px; height: 100%; gap: 24px; }
.header .logo, .header-start .logo {
  margin: 0;
  width: auto;
  flex-shrink: 0;
  font-size: 25px;
  letter-spacing: -.055em;
  font-weight: 730;
  color: var(--aiu-text);
}
.header .ai, .header-start .ai { color: var(--aiu-accent); }
.header .navbar, .header-start .navbar { width: auto; margin: 0; gap: 17px; height: 100%; }
.header .navbar-item, .header .navbar-item-selected,
.header .navbar-link, .header .navbar-link-active,
.header-start .navbar-item, .header-start .navbar-link {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .055em;
  color: var(--aiu-muted);
  padding: 10px 6px;
}
.header .navbar-item-selected, .header .navbar-link-active,
.header .navbar-link:hover { color: var(--aiu-accent); font-size: 12px; }
.header .request-demo, .header .request-demo-active, .header .request-demo:hover,
.header .request-demo-active:hover {
  width: auto;
  padding: 10px 20px;
  margin-right: 0;
  border: 1px solid rgba(124, 196, 209, .44);
  border-radius: 8px;
  color: var(--aiu-text);
  background: rgba(124, 196, 209, .06);
}
.header .request-demo:hover, .header .request-demo-active {
  color: var(--aiu-on-accent);
  background: var(--aiu-accent);
  border-color: var(--aiu-accent);
}
.header .menu.transition.visible {
  background: var(--aiu-surface);
  color: var(--aiu-text);
  border: 1px solid var(--aiu-line);
  border-radius: 10px;
  padding: 8px;
  box-shadow: 0 16px 48px rgba(10, 26, 34, .25);
  top: 38px;
}
.header .menu.transition.visible .item, .header .navbar-sublink {
  background: transparent;
  border-radius: 6px;
  color: var(--aiu-text);
  font-size: 14px;
}
.header .menu.transition.visible .item:hover { background: var(--aiu-raised); }
.header .navbar-mobile { margin-right: 0; }
.header .sidebar-icon { color: var(--aiu-text); border: 1px solid var(--aiu-line); width: 42px; height: 42px; padding: 10px; border-radius: 8px; }
.header .sidebar-icon:hover { color: var(--aiu-accent); background: var(--aiu-surface); }
.aside {
  top: var(--aiu-header-height);
  width: min(340px, 100vw);
  height: calc(100svh - var(--aiu-header-height));
  background: var(--aiu-surface);
  border-left: 1px solid var(--aiu-line);
  box-shadow: -16px 16px 48px rgba(8, 25, 32, .2);
  z-index: 25;
}
.aside a { color: var(--aiu-text); border-bottom: 1px solid var(--aiu-line); font-size: 14px; padding: 23px 28px; }
.aside a:hover { background: var(--aiu-raised); color: var(--aiu-accent); }

/* Homepage. The orbital artwork is decorative, not an information diagram. */
.index {
  flex: 1 0 auto;
  overflow: visible;
  position: relative;
  isolation: isolate;
  padding: 80px 48px 90px;
  min-height: min(760px, calc(100svh - 190px));
  background: radial-gradient(ellipse at 81% 48%, rgba(71, 159, 168, .12), transparent 48%);
}
.index::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: min(49vw, 650px);
  height: min(49vw, 650px);
  top: 50%;
  left: calc(50% + 40px);
  transform: translateY(-50%);
  background: url("/assets/aiu-modern/orbit.bc89426b1e27.svg") center / contain no-repeat;
  pointer-events: none;
}
.index-internal { max-width: 1200px; width: 100%; margin: auto; }
.index-internal::before {
  content: "ARTIFICIAL INTELLIGENCE & DATA";
  display: block;
  color: var(--aiu-accent);
  font-size: 11px;
  font-weight: 650;
  letter-spacing: .19em;
  margin-bottom: 32px;
}
.index .title {
  display: block;
  width: min(660px, 60%);
  padding: 0;
  margin: 0 0 38px;
  text-align: left;
  color: var(--aiu-text);
  font-size: clamp(56px, 6.2vw, 87px);
  font-weight: 500;
  line-height: 1.035;
  letter-spacing: -.045em;
  word-break: normal;
}
.index .title span { display: block; text-transform: lowercase; }
.index .title span:first-child::first-letter { text-transform: uppercase; }
.index .title .blue { color: var(--aiu-accent); }
.index-buttons { width: auto; justify-content: flex-start; gap: 12px; }
.index-buttons .btn, .index-buttons .btn2 {
  width: auto;
  min-width: 162px;
  margin: 0;
  padding: 13px 23px;
  border-radius: 9px;
  font-size: 14px;
  font-weight: 650;
  line-height: 24px;
  color: var(--aiu-on-accent);
  background: var(--aiu-accent);
  border: 1px solid var(--aiu-accent);
  transition: background .18s, border-color .18s, transform .18s;
}
.index-buttons .btn2 { background: transparent; border-color: rgba(193, 220, 225, .36); color: var(--aiu-text); }
.index-buttons .btn:hover { color: var(--aiu-on-accent); background: #8ee9ee; border-color: #8ee9ee; transform: translateY(-2px); }
.index-buttons .btn2:hover { background: var(--aiu-surface); color: var(--aiu-text); border-color: #afcdd4; transform: translateY(-2px); }

/* Readable content pages, with open sections instead of dense centred copy. */
.whoweare, .contact, .ideasearch, .dataviz, .manipulist {
  padding: 70px 48px 76px;
  overflow: visible;
  flex: 1 0 auto;
  min-height: 0;
}
.whoweare-internal, .contact-internal, .ideasearch-internal, .dataviz-internal, .manipulist-internal {
  width: 100%; max-width: 1120px; margin: 0 auto;
}
.whoweare-title, .contact-title, .ideasearch-title, .dataviz-title, .manipulist-title {
  display: block;
  padding: 0 0 44px;
  margin: 0 0 32px;
  font-size: clamp(40px, 5vw, 68px);
  line-height: 1.1;
  font-weight: 500;
  letter-spacing: -.05em;
  color: var(--aiu-text);
  text-align: left;
  border-bottom: 1px solid var(--aiu-line);
}
.whoweare-title, .contact-title { text-transform: lowercase; }
.whoweare-title::first-letter, .contact-title::first-letter { text-transform: uppercase; }
.whoweare-section, .ideasearch-section, .dataviz-section, .manipulist-section { margin: 0; padding: 34px 0; }
.whoweare-section + .whoweare-section,
.ideasearch-section + .ideasearch-section,
.dataviz-section + .dataviz-section { border-top: 1px solid var(--aiu-line); }
.whoweare-section-title, .ideasearch-section-title, .dataviz-section-title, .manipulist-section-title {
  text-align: left;
  padding: 0;
  margin: 0 0 20px;
  color: var(--aiu-text);
  font-weight: 550;
  font-size: 25px;
  line-height: 1.3;
  letter-spacing: -.025em;
}
.whoweare-section-desc, .ideasearch-section-desc, .dataviz-section-desc, .manipulist-section-desc {
  max-width: 70ch;
  padding: 0;
  margin: 0;
  color: var(--aiu-muted);
  text-align: left;
  font-size: 17px;
  line-height: 1.8;
}
.whoweare-section-desc p, .ideasearch-section-desc p, .dataviz-section-desc p { margin-bottom: 16px; }
.whoweare-section-desc ul, .ideasearch-section-desc ul, .dataviz-section-desc ul { padding-left: 21px; }
.whoweare-section-desc li, .ideasearch-section-desc li, .dataviz-section-desc li { padding-left: 4px; margin-bottom: 9px; }
.whoweare-section-desc li::marker, .ideasearch-section-desc li::marker, .dataviz-section-desc li::marker { color: var(--aiu-accent); }
.whoweare-section-wimage { display: grid; grid-template-columns: 1.2fr 1fr; align-items: center; gap: 72px; max-width: none; margin: 0 0 24px; }
.whoweare-section-wimage > .react-reveal { padding: 38px; border-radius: 24px; background: rgba(112, 179, 187, .07); border: 1px solid var(--aiu-line); }
.whoweare-image { max-width: 390px !important; width: 100%; opacity: .88; }
.whoweare-section-desc .ui.grid > .column { padding-top: 14px; padding-bottom: 14px; }
.requestbtn { padding: 45px 0 0; }
.requestbtn-internal { margin: 0; }
.requestbtn-link, .dataviz-button, .manipulist-button {
  width: fit-content;
  max-width: 100%;
  margin: 20px 0 0;
  padding: 14px 28px;
  border-radius: 9px;
  background: var(--aiu-accent);
  border: 1px solid var(--aiu-accent);
  color: var(--aiu-on-accent);
  font-size: 14px;
  line-height: 1.6;
  font-weight: 650;
}
.requestbtn-link:hover, .dataviz-button:hover, .manipulist-button:hover { background: #8ee9ee; color: var(--aiu-on-accent); }

/* Contact. */
.contact-contacts { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: stretch; }
.contact-email, .contact-map {
  max-width: none;
  width: auto;
  margin: 0;
  padding: 42px;
  text-align: left;
  border: 1px solid var(--aiu-line);
  border-radius: 18px;
  background: linear-gradient(130deg, rgba(60, 91, 105, .28), rgba(47, 75, 88, .15));
  color: var(--aiu-muted);
}
.contact-email-message { font-size: 25px; line-height: 1.3; color: var(--aiu-text); letter-spacing: -.025em; }
.contact-email-button { justify-content: flex-start; margin: 28px 0; color: var(--aiu-accent); }
.contact-email-button::after { content: "info@aiuncovered.io"; font-size: 17px; font-weight: 550; margin-left: 18px; }
.contact i.icon { margin: 0; font-size: 31px; line-height: 1; }
.contact-map-button { font-size: 32px; line-height: 1.4; margin: 0 0 23px; color: var(--aiu-accent); }
.contact-map p { margin: 0 0 5px; }
.contact .small { font-size: 13px; color: var(--aiu-muted); }
.contact-link { color: var(--aiu-accent); }

/* Legal pages retain the application's section navigation and scroll target. */
.legal { max-width: 1296px; width: 100%; margin: 0 auto; padding: 48px; gap: 48px; height: auto; flex: 1; color: var(--aiu-muted); text-align: left; overflow: visible; }
.legal-points { width: 255px; flex-shrink: 0; position: sticky; top: 30px; align-self: flex-start; }
.legal-title { color: var(--aiu-text); font-size: 22px; text-align: left; font-weight: 550; }
.legal-points .table-of-content button { color: var(--aiu-muted); font-size: 13px; line-height: 1.55; padding: 7px 0; margin-bottom: 3px; }
.legal-points .table-of-content button:hover { color: var(--aiu-accent); }
.legal-content { flex: 1; width: 0; max-width: 76ch; height: auto; max-height: calc(100svh - 90px); overflow-y: auto; padding: 0 24px 24px 0; font-size: 16px; line-height: 1.8; }
.legal-content .paragraph-text { text-align: left; }
.legal-content .last-update { text-align: left; margin-top: 0; color: var(--aiu-muted); font-size: 13px; }
.legal h2, .legal h3, .legal strong { color: var(--aiu-text); }
.legal-content a { color: var(--aiu-accent); text-decoration: underline; text-underline-offset: 3px; }
.legal-content button { color: var(--aiu-accent); display: inline; text-align: inherit; font: inherit; text-decoration: underline; text-underline-offset: 3px; }
.legal-content button:hover { color: #a7edf2; }
.legal-content .paragraph-title { margin-top: 36px; color: var(--aiu-text); }
.legal-content table { max-width: 100%; }
.legal-content table thead, .legal-content table thead th { background: var(--aiu-raised); color: var(--aiu-text); }
.legal-content table tbody, .legal-content table tbody tr:nth-child(2n) { background: var(--aiu-surface); color: var(--aiu-muted); }
.legal-content table td, .legal-content table th { border: 1px solid var(--aiu-line); }

/* Footer and consent are visible, quiet, and keyboard accessible. */
.footer { height: auto; min-height: 100px; padding: 25px 48px; background: rgba(21, 38, 49, .24); border-top: 1px solid var(--aiu-line); }
.footer-internal { max-width: 1200px; padding: 0; gap: 20px; font-size: 12px; color: #afc3cc; }
.footer-right { gap: 20px; flex-wrap: wrap; }
.footer-right a { padding: 8px 0; color: #c3d2d8; font-size: 12px; }
.footer-right .laptop { display: inline-flex !important; }
.footer-right .cookie-button { margin: 0; padding: 9px; width: 38px; height: 38px; font-size: 19px; border-radius: 9px; color: #c3d2d8; }
.footer-right .cookie-button:hover { background: var(--aiu-surface); color: var(--aiu-accent); border: none; }
.cookiebar {
  bottom: 20px;
  right: 20px;
  max-width: 365px;
  width: calc(100% - 40px);
  max-height: calc(100svh - 40px);
  overflow-y: auto;
  background: #29434f;
  border: 1px solid rgba(163, 204, 213, .35);
  border-radius: 15px;
  box-shadow: 0 20px 70px rgba(8, 22, 30, .3);
  color: var(--aiu-muted);
  padding: 24px;
  font-size: 12px;
  line-height: 1.6;
}
.cookiebar-title { color: var(--aiu-text); font-size: 19px; font-weight: 600; margin-bottom: 12px; }
.cookiebar .p-text-italic { font-style: normal; }
.cookiebar .bold { color: var(--aiu-text); }
.cookiebar .m-t-20 { margin-top: 15px; }
.cookiebar .m-t-10 { margin-top: 8px; }
.cookiebar .yes-no-btn { border-radius: 6px; padding: 8px 14px; background: #1d333f; color: var(--aiu-muted); }
.cookiebar .yes-no-btn:focus:not(.yes-no-btn-selected) { background: #1d333f; color: var(--aiu-muted); }
.cookiebar-yn .yes-no-btn-selected { background: var(--aiu-accent); color: var(--aiu-on-accent); }
.cookiebar .cookie-btn { border-radius: 7px; max-width: 143px; background: var(--aiu-accent); color: var(--aiu-on-accent); font-weight: 600; height: 43px; }
.cookiebar .cookie-btn-tertiaryColor { background: transparent; border: 1px solid #819da9; color: var(--aiu-text); }
.cookiebar .cookie-btn:hover { background: #8ee9ee !important; color: #142e38 !important; }
.cookiebar .cookie-btn-tertiaryColor:hover { background: #375463 !important; color: var(--aiu-text) !important; }

@media (min-width: 993px) {
  .ideasearch-section, .dataviz-section { display: grid; grid-template-columns: 290px 1fr; column-gap: 50px; }
  .ideasearch-section-title, .dataviz-section-title { font-size: 22px; max-width: 260px; }
}
@media (max-width: 1100px) {
  .index .title { font-size: clamp(56px, 6.8vw, 76px); }
  .index::after { left: 52%; width: 53vw; height: 53vw; }
  .header, .header-start, .footer { padding-left: 32px; padding-right: 32px; }
  .index, .whoweare, .contact, .ideasearch, .dataviz { padding-left: 32px; padding-right: 32px; }
  .footer-internal { align-items: flex-start; }
  .footer-right { gap: 14px; }
  .legal { padding: 36px 32px; gap: 30px; }
}
@media (max-width: 800px) {
  :root { --aiu-header-height: 76px; }
  .header, .header-start { padding: 0 25px; }
  .index { min-height: 740px; padding: 60px 28px 290px; }
  .index .title { width: 100%; max-width: 580px; font-size: clamp(53px, 9vw, 70px); }
  .index::after { width: 430px; height: 430px; left: auto; right: -40px; top: auto; bottom: -60px; transform: none; opacity: .72; }
  .index-internal { margin-top: 0; }
  .index-internal::before { margin-bottom: 25px; font-size: 10px; }
  .whoweare, .contact, .ideasearch, .dataviz { padding: 45px 26px; }
  .whoweare-section-wimage { grid-template-columns: 1fr; gap: 25px; }
  .whoweare-section-wimage > .react-reveal { max-width: 470px; padding: 28px; }
  .contact-contacts { grid-template-columns: 1fr; }
  .contact-email, .contact-map { padding: 30px; }
  .footer { padding: 22px 26px; }
  .footer-internal { flex-direction: column; gap: 10px; }
  .footer-right { justify-content: flex-start; gap: 21px; }
  .legal { display: block; padding: 32px 24px; }
  .legal-content { width: 100%; max-height: none; overflow: visible; padding: 0; }
}
@media (max-width: 480px) {
  .index { min-height: 720px; padding-top: 49px; padding-bottom: 295px; }
  .index .title { font-size: clamp(45px, 12vw, 57px); margin-bottom: 30px; line-height: 1.09; letter-spacing: -.055em; }
  .index-buttons { gap: 10px; }
  .index-buttons .btn, .index-buttons .btn2 { min-width: 0; padding: 12px 17px; font-size: 13px; }
  .index::after { width: 355px; height: 355px; bottom: -18px; right: -17px; }
  .whoweare-title, .contact-title, .ideasearch-title, .dataviz-title { font-size: 42px; margin-bottom: 18px; padding-bottom: 29px; }
  .whoweare-section-title, .ideasearch-section-title, .dataviz-section-title { font-size: 23px; }
  .whoweare-section-desc, .ideasearch-section-desc, .dataviz-section-desc { font-size: 16px; }
  .contact-email, .contact-map { padding: 25px; }
  .contact-email-button::after { font-size: 15px; margin-left: 12px; }
  .footer-right { gap: 16px; }
  .footer-right a, .footer-internal { font-size: 11px; }
  .cookiebar { bottom: 12px; right: 12px; width: calc(100% - 24px); max-height: calc(100svh - 24px); }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .react-reveal { opacity: 1 !important; visibility: visible !important; transform: none !important; }
}
