:root {
    --primary-dark: #02173a;    /* dark navy for general background */
    --accent-blue: #0055ff;     /* primary CTA colour */
    --accent-blue-hover: #0041c9;
    --highlight-gold: #f5c542;  /* warm yellow used in subtitles and hovers */
    --text-light: #ffffff;      /* primary light text colour */
    --text-muted: #d5d9e0;      /* softer white for secondary text */
    --footer-bg: rgba(0, 0, 0, 0.5);
}

html {
  background-color: transparent; /* Or match body background if needed */
}

body {
    font-family: "Sora", sans-serif;
    font-optical-sizing: auto;
    font-style: normal;
    background: url('images/background.png') no-repeat center center / cover;
    background-attachment: fixed;
    color: var(--text-light);
    min-height: 100vh;
}

.title {
    font-size: clamp(2.5rem, 6vw, 4rem);
    font-weight: 700;
    line-height: 1.2;
}

.subtitle {
    font-size: clamp(1rem, 2.5vw, 1.5rem);
    color: var(--highlight-gold);
    max-width: 32rem;
}

footer {
    margin-top: auto;
    padding: 2rem 5%;
    text-align: center;
    background: var(--footer-bg) !important;
}

footer .disclaimer {
    font-size: 0.85rem;
    margin-bottom: 1rem;
    color: var(--text-muted);
}

footer .footer-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1.5rem;
}

footer .footer-links a {
    color: var(--text-muted);
    font-size: 0.9rem;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: color 0.3s ease, border-bottom 0.3s ease;
}

footer .footer-links a:hover {
    color: var(--highlight-gold);
    border-bottom-color: var(--highlight-gold);
}
