/* A darker final chapter carries the same blue-glass light as the company artwork. */
.connections, .contact, .site-footer { background: var(--night); color: var(--night-text); --focus: #91c8ff; }
.connections { padding-block: var(--space-9); }
.connections-heading > p { max-width: 640px; margin: var(--space-5) auto 0; font-size: var(--text-editorial); line-height: 1.6; color: var(--night-muted); }
.connection-grid { width: 100%; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); margin: var(--space-7) auto 0; }
.connection-card { position: relative; isolation: isolate; overflow: hidden; display: flex; flex-direction: column; padding: 144px var(--space-6) var(--space-6); background: var(--night-surface); border: 1px solid var(--night-rule); border-radius: var(--radius-bento); }
.connection-card h3 { font-size: 32px; letter-spacing: -.025em; line-height: 1.2; font-weight: var(--weight-semibold); }
.connection-card > p { font-size: var(--text-reading); line-height: 1.6; color: var(--night-muted); margin-top: var(--space-4); }
.connection-light { position: absolute; inset: 0 0 auto; height: 140px; overflow: hidden; pointer-events: none; mask-image: linear-gradient(#000 45%, transparent); }
.connection-light::before { content: ''; position: absolute; inset: -130px -30% 0; border-radius: 50%; background: radial-gradient(ellipse at 50% 26%, #f8fcff 0%, #d6f4ff 20%, #70bbff 28%, #145ded 42%, #0c2862 57%, transparent 70%); transform: rotate(13deg); }
.connection-light::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgb(9 13 22 / 40%), transparent 70%); }
#investors .connection-light::before { transform: rotate(-15deg) translateX(-10%); }
.enquiry-topics { list-style: none; padding: 0; margin-block: var(--space-6); font-size: var(--text-reading); color: var(--night-text); border-top: 1px solid var(--night-rule); }
.enquiry-topics li { padding-block: var(--space-4); border-bottom: 1px solid var(--night-rule); }
.connection-card .button { width: 100%; min-height: 48px; margin-top: auto; }
.button-dark { color: var(--night-text); background: #252e3d; box-shadow: inset 0 1px 2px rgb(255 255 255 / 10%); }
.button-dark:hover { background: #303b4d; }
.button-dark:active { background: #1e2633; transform: scale(.98); }
.button-light { color: var(--ink); background: #f2f5fb; box-shadow: inset 0 1px 2px #fff; }
.button-light:hover { background: #dce8f9; }
.button-light:active { background: #cbdcf4; transform: scale(.98); }

.contact { padding-block: var(--space-8) var(--space-6); }
.page-home .contact { padding-top: 0; }
.contact-inner { display: grid; grid-template-columns: 1fr 1.1fr; align-items: center; gap: var(--space-7); padding: var(--space-7); background: var(--night-surface); border: 1px solid var(--night-rule); border-radius: var(--radius-surface); }
.contact-copy h2 { font-size: clamp(2rem, 3.5vw, 3rem); line-height: 1.1; letter-spacing: -.035em; font-weight: var(--weight-bold); }
.contact-copy p { margin-top: var(--space-4); color: var(--night-muted); font-size: var(--text-body); max-width: 380px; line-height: 1.6; }
.contact-details { min-width: 0; }
.contact-label { display: block; color: var(--night-muted); font-size: var(--text-ui); margin-bottom: var(--space-2); }
.contact-email-row { display: flex; align-items: center; gap: var(--space-4); }
.email-link { font-size: clamp(1.375rem, 2.25vw, 2rem); font-weight: var(--weight-semibold); gap: var(--space-3); letter-spacing: -.03em; line-height: 1.5; color: var(--night-text); white-space: nowrap; }
.email-link:hover { color: #b7dcff; }
.email-link:active { color: #92c5f7; }
.copy-button { display: flex; flex: 0 0 48px; width: 48px; min-height: 48px; padding: 0; }
.copy-button .copy-label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.copied-icon { display: none; }
.copy-button.is-copied .copy-icon { display: none; }
.copy-button.is-copied .copied-icon { display: inline; }
.copy-status { font-size: var(--text-ui); color: var(--night-muted); max-width: 460px; min-height: 24px; margin-top: var(--space-2); }
.site-footer { text-align: center; padding-bottom: var(--space-5); }
.footer-stage { position: relative; isolation: isolate; overflow: hidden; display: grid; place-items: center; min-height: 420px; background: radial-gradient(ellipse at 50% 85%, #0c489a 0%, #092754 22%, transparent 62%); }
.footer-stage::before { content: ''; position: absolute; width: 120%; height: 260px; left: -10%; bottom: 40px; border-radius: 50%; border-bottom: 4px solid #7fddff; box-shadow: 0 12px 32px #136bec, 0 6px 12px #39bbf9, inset 0 -8px 18px #1774e4; transform: rotate(-3deg); z-index: -1; }
.footer-stage[data-renderer='webgl'] { background: var(--night); }
.footer-stage[data-renderer='webgl']::before { display: none; }
#footer-shader { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; pointer-events: none; }
.wordmark-large { font-size: clamp(112px, 21vw, 288px); line-height: .9; letter-spacing: -.065em; padding-right: .065em; color: var(--night-text); margin-top: -32px; text-shadow: 0 4px 32px rgb(9 13 22 / 30%); }
.footer-base { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: var(--space-5); padding-top: var(--space-5); border-top: 1px solid var(--night-rule); font-size: var(--text-ui); }
.footer-base p { color: var(--night-muted); }
.footer-company { grid-column: 1 / -1; }
.footer-nav { display: flex; justify-content: center; gap: var(--space-5); }
.footer-nav a:hover { color: #a5d3ff; }

@media (max-width: 1100px) {
  .connection-card { padding-inline: var(--space-6); }
  .footer-base { grid-template-columns: 1fr auto; }
  .footer-base p:first-child { text-align: left; }
  .footer-base p:nth-child(2) { grid-column: 1 / -1; grid-row: 2; }
}
@media (max-width: 800px) {
  .connections { padding-block: var(--space-8); }
  .connection-grid { gap: var(--space-4); }
  .connection-card { padding: 120px var(--space-5) var(--space-5); }
  .connection-card h3 { font-size: 28px; }
  .connection-card > p, .enquiry-topics { font-size: var(--text-ui); }
  .connection-light { height: 112px; }
  .contact-inner { grid-template-columns: 1fr; gap: var(--space-6); padding: var(--space-6); }
  .footer-stage { min-height: 340px; }
}
@media (max-width: 600px) {
  .connection-grid { grid-template-columns: 1fr; gap: var(--space-5); margin-top: var(--space-6); }
  .connection-card { padding: 112px var(--space-5) var(--space-5); }
  .connection-card .button { padding-inline: var(--space-4); }
  .enquiry-topics { margin-block: var(--space-5); }
  .enquiry-topics li { padding-block: var(--space-3); }
  .contact-inner { gap: var(--space-6); padding: var(--space-5); }
  .contact-email-row { flex-direction: column; align-items: flex-start; gap: var(--space-4); }
  .contact-label { display: none; }
  .copy-button { width: auto; flex-basis: auto; padding-inline: var(--space-4); }
  .copy-button .copy-label { position: static; width: auto; height: auto; clip-path: none; }
  .contact-copy p { max-width: 320px; }
  .email-link { font-size: clamp(1.125rem, 5.5vw, 1.5rem); }
  .email-link svg { width: 22px; height: 22px; }
  .footer-stage { min-height: 280px; }
  .wordmark-large { font-size: clamp(104px, 23vw, 144px); margin-top: -24px; }
  .footer-base { display: flex; flex-direction: column; gap: var(--space-3); padding-top: var(--space-5); }
  .footer-base p:nth-child(2) { max-width: 280px; }
  .footer-nav { gap: var(--space-5); }
}
@media (prefers-reduced-motion: reduce) { .button-dark:active, .button-light:active { transform: none; } }
@media (forced-colors: active) {
  .connection-light, #footer-shader, .footer-stage::before { display: none !important; }
  .connections, .contact, .site-footer, .footer-stage { background: Canvas; color: CanvasText; }
  .contact-inner, .connection-card, .button-dark, .button-light { background: Canvas; color: CanvasText; border: 1px solid CanvasText; }
  .wordmark-large, .email-link { color: LinkText; text-shadow: none; }
}
