/* Refinement of Updu's existing type and spacing. Brand colors, gradients,
   card treatments and animation definitions remain in their original components. */
:root {
  color-scheme: light;
  --updu-blue: #125AFD;
  --updu-ink: #060A1F;
  --updu-muted: #4A5272;
  --updu-space-1: .5rem;
  --updu-space-2: .75rem;
  --updu-space-3: 1rem;
  --updu-space-4: 1.5rem;
  --updu-space-5: 2rem;
  --updu-gutter: clamp(1.25rem, 4vw, 2.5rem);
  --updu-section-space: clamp(4rem, 7.5vw, 6.5rem);
  --updu-content-gap: clamp(2rem, 4vw, 3rem);
  --updu-card-pad: clamp(1.25rem, 2.5vw, 2rem);
  --updu-demo-pad: clamp(.875rem, 2vw, 1.375rem);
  --updu-card-radius: clamp(1.5rem, 2.6vw, 2rem);
  --updu-content-width: 1160px;
  --updu-display-size: clamp(2.125rem, 9.4vw, 5.5rem);
  --updu-section-size: clamp(1.875rem, 1.5rem + 2vw, 3.375rem);
  --updu-body-size: clamp(1.0625rem, 1rem + .2vw, 1.1875rem);
  --updu-lead-size: clamp(1.0625rem, 1rem + .3vw, 1.25rem);
}
.updu-page { --updu-anchor-offset: 96px; line-height: 1.6; }
.updu-page[data-page="investors"] { --updu-anchor-offset: 156px; }
.updu-page :is(h1, h2, h3, p, li, dd) { overflow-wrap: break-word; }
.updu-hero-title {
  font-size: var(--updu-display-size);
  font-weight: 750;
  line-height: 1.08;
  letter-spacing: -.035em;
  text-wrap: balance;
}
[data-page="investors"] .updu-hero-title {
  font-size: clamp(2.125rem, 1.5rem + 3.2vw, 4.25rem);
  max-width: 19ch;
  line-height: 1.12;
}
.updu-title {
  font-size: var(--updu-section-size);
  line-height: 1.14;
  font-weight: 700;
  letter-spacing: -.03em;
  text-wrap: balance;
}
.updu-close-title { font-size: clamp(2.125rem, 1.5rem + 4vw, 4.5rem); }
.updu-copy { font-size: var(--updu-body-size); line-height: 1.65; text-wrap: pretty; }
.updu-lead { font-size: var(--updu-lead-size); line-height: 1.6; font-weight: 400; text-wrap: pretty; }
.updu-page :is(button, input:not([aria-hidden="true"]), select, textarea) { min-width: 0; }
.updu-page button { min-height: 44px; }
.updu-page header nav[aria-label="Main"] a { min-height: 44px; display: inline-flex; align-items: center; }
.updu-page :is(button, a, input, select, textarea):focus-visible {
  scroll-margin-top: var(--updu-anchor-offset);
  scroll-margin-bottom: 100px;
}
.updu-page main > section[id] { scroll-margin-top: var(--updu-anchor-offset); }
.updu-page footer nav { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 24px; }
.updu-page footer nav a { display: inline-flex; align-items: center; min-width: 0; min-height: 44px; }
.updu-page footer nav .updu-footer-contact { flex-wrap: wrap; gap: 0 8px; }
.updu-page .updu-footer-contact span { min-width: 0; overflow-wrap: anywhere; }
.updu-page [data-layout="how"] > article { gap: var(--updu-space-4) !important; }
.updu-page [data-layout="how"] > article > p { max-width: 44ch !important; }
.updu-page [data-layout="access"] > li > p { margin-top: var(--updu-space-4) !important; }
.updu-page [data-layout="access"] > li > span { font-size: 52px !important; line-height: 1 !important; }
.updu-page [data-demo="log"] { gap: 8px !important; }
.updu-page [data-demo="log"] > updu-list > updu-item > div { line-height: 1.6; }
.updu-page [data-demo="checks"] > div > div:first-child { flex-wrap: wrap; row-gap: 4px; }
.updu-page [data-demo="checks"] > div > div:first-child > span:last-child { margin-left: auto; }
.updu-page [data-demo-title] { font-weight: 700 !important; line-height: 1.4 !important; }
.updu-page [data-faq] button { font-weight: 600 !important; line-height: 1.5 !important; }
.updu-page [data-faq] button > span { min-width: 0; }
.updu-page [data-faq] p { line-height: 1.7 !important; }
.updu-page [data-investor-tabs] { height: 56px !important; }
.updu-page [data-investor-tabs] > div {
  scrollbar-width: thin !important;
  scrollbar-color: #C5D0E2 transparent;
}
.updu-page [data-investor-tabs] a { min-height: 44px; display: inline-flex; align-items: center; }
.updu-page [data-investor-tabs] > a { line-height: 1.25; }
.updu-page [data-market-fact] { font-size: clamp(2.25rem, 4vw, 3.5rem) !important; font-weight: 700 !important; }
.updu-page [data-market-copy] strong { display: block; margin-bottom: 4px; }
.updu-page [data-market-source] { line-height: 1.6; }
.updu-page [data-investor-faq] button { gap: 12px !important; }
.updu-page [data-investor-faq] button > span:nth-child(2) { font-weight: 600 !important; line-height: 1.5 !important; }
.updu-page [data-investor-faq] p { line-height: 1.7 !important; }
.updu-page [data-investor-form] { padding: var(--updu-card-pad) !important; }
.updu-page [data-investor-form] :is(input:not([type="checkbox"]), select, textarea) { width: 100%; }
.updu-page [data-consent-copy] { min-width: 0; }
.updu-page [data-hero-badge] { white-space: normal !important; text-align: left; line-height: 1.4; }
.updu-page [data-hero-badge] > span { flex: none; }
.updu-page [data-film-label] { white-space: normal !important; text-align: center; line-height: 1.4; }

@media (max-width: 719.98px) {
  .updu-page footer nav { display: grid; grid-template-columns: max-content minmax(0, 1fr); width: 100%; gap: 4px 24px; }
  .updu-page footer nav .updu-footer-contact { grid-column: 1 / -1; }
  .updu-page [data-investor-tabs] > a { width: 132px; flex: 0 0 132px !important; padding: 4px 12px !important; white-space: normal !important; text-align: center; justify-content: center; }
  .updu-page [data-investor-tabs] > div a { padding: 8px 12px !important; }
  .updu-page [data-investor-faq] button { padding: 18px 16px !important; grid-template-columns: 20px minmax(0,1fr) 28px !important; gap: 10px !important; }
  .updu-page [data-investor-faq] button > span:last-child { width: 28px !important; height: 28px !important; }
  .updu-page [data-layout="how"] > article > div { min-height: 0 !important; padding: 16px !important; }
  .updu-page [data-faq] button { gap: 16px !important; padding: 20px 0 !important; }
  .updu-page [data-faq] p { padding-right: 0 !important; }
  .updu-page [data-page-footer-logo] { max-width: 100%; height: auto !important; width: 260px !important; }
}
@media (max-width: 359.98px) {
  .updu-page [data-layout="how"] > article > div { padding: 12px !important; }
  .updu-page [data-demo="log"] { padding: 12px !important; }
  .updu-page [data-demo="header"] { flex-wrap: wrap; gap: 8px !important; }
}

/* Legal pages already have a readable document layout; keep its measure and palette. */
.updu-document { color-scheme: light; }
.updu-document header nav a { display: inline-flex; align-items: center; min-height: 44px; }
.updu-document h1 { line-height: 1.15; font-weight: 700; }
.updu-document h2 { line-height: 1.35; font-weight: 650; }
.updu-document :is(p, li, td) { overflow-wrap: anywhere; }
@media (max-width: 359.98px) {
  .updu-document header { flex-wrap: wrap; gap: 4px 16px; }
  .updu-document header nav { margin-left: auto; }
}
