/* ============================================================
   AURISUS — links.css (page-specific)
   ============================================================ */

.links-page {
    position: relative;
    min-height: 100svh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--space-4);
    background: var(--void);
    overflow: hidden;
    isolation: isolate;
}

/* --- Background Moonshot SVG --- */
.moonshot-canvas {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    pointer-events: none;
    overflow: hidden;
}

.moonshot-svg {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 100vw;
    height: 100vh;
    min-height: 800px;
    transform: translateX(-50%);
    opacity: 0.7;
}

/* The rocket path draws itself */
.rocket-path {
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    animation: drawPath 3s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
}

@keyframes drawPath {
    to { stroke-dashoffset: 0; }
}

.rocket-dashes {
    opacity: 0;
    animation: fadeIn 1s 2s forwards;
}

.rocket {
    animation: launch 10s infinite;
}

@keyframes launch {
    0% { transform: translate(200px, 750px) rotate(-45deg); opacity: 0; }
    5% { opacity: 1; }
    95% { opacity: 1; }
    100% { transform: translate(320px, 80px) rotate(-15deg); opacity: 0; }
}

.target-pulse {
    animation: pulse 2s infinite alternate;
}
.target-ring {
    transform-origin: 320px 80px;
    animation: ping 2s cubic-bezier(0, 0.5, 0.5, 1) infinite;
}

@keyframes pulse {
    0% { opacity: 0.5; }
    100% { opacity: 1; }
}
@keyframes ping {
    0% { transform: scale(0.5); opacity: 1; }
    100% { transform: scale(2); opacity: 0; }
}

.star {
    animation: twinkle 3s infinite alternate;
}
@keyframes twinkle {
    0% { opacity: 0.2; }
    100% { opacity: 1; }
}
@keyframes fadeIn {
    to { opacity: 1; }
}

/* --- Content --- */
.links-container {
    width: 100%;
    max-width: 400px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    z-index: 2;
    padding: var(--space-5) 0;
}

.links-logo {
    font-family: var(--font-display);
    font-size: clamp(2.5rem, 10vw, 4rem);
    font-weight: 700;
    color: var(--ivory);
    margin: 0 0 var(--space-2);
    letter-spacing: 0.05em;
}

.links-mission {
    color: var(--silver);
    font-size: 1rem;
    margin-bottom: var(--space-6);
    max-width: 32ch;
    line-height: 1.4;
}

.links-list {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}

/* Buttons */
.link-btn {
    display: block;
    width: 100%;
    padding: 1.125rem;
    background: var(--void);
    border: 1px solid color-mix(in srgb, var(--silver) 30%, transparent);
    color: var(--ivory);
    font-family: var(--font-display);
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    transition: all 0.2s ease;
}

.link-btn:hover {
    background: color-mix(in srgb, var(--silver) 15%, transparent);
    border-color: var(--ivory);
    transform: translateY(-2px);
}

.link-btn.primary {
    background: var(--ivory);
    color: var(--void);
    border-color: var(--ivory);
}
.link-btn.primary:hover {
    background: var(--silver);
    border-color: var(--silver);
}

.link-btn.outline {
    background: transparent;
    border-color: var(--silver);
}
.link-btn.outline:hover {
    background: var(--silver);
    color: var(--void);
}