.bg-noise {
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.04'/%3E%3C/svg%3E");
    pointer-events: none;
}

.contact-link {
    font-family: '"Cormorant Garamond"', serif;
    font-style: italic;
    letter-spacing: 0.025em;
    color: rgb(16 185 129 / 0.5);
    transition: color 0.5s ease;
}

.contact-link:hover,
.contact-link:focus-visible {
    color: rgb(167 243 208 / 1);
}

.contact-link:focus-visible {
    outline: 1px solid rgb(167 243 208 / 0.6);
    outline-offset: 4px;
}

.primary-nav-link {
    font-family: '"Inter"', sans-serif;
    font-weight: 300;
    font-size: 0.7rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: rgb(110 231 183 / 0.86);
    transition: color 0.4s ease;
    white-space: nowrap;
}

.primary-nav-link:hover,
.primary-nav-link:focus-visible {
    color: rgb(167 243 208 / 1);
}

.primary-nav-link:focus-visible {
    outline: 1px solid rgb(167 243 208 / 0.6);
    outline-offset: 4px;
}

.primary-nav-link[aria-current="page"] {
    color: rgb(167 243 208 / 1);
}

.nav-dot {
    color: rgb(16 185 129 / 0.58);
    font-size: 0.6rem;
}

.bio-link {
    color: inherit;
    text-decoration: underline;
    text-decoration-color: rgb(16 185 129 / 0.5);
    text-underline-offset: 3px;
    transition: text-decoration-color 0.3s ease, color 0.3s ease;
}

.bio-link:hover,
.bio-link:focus-visible {
    color: rgb(167 243 208 / 1);
    text-decoration-color: rgb(167 243 208 / 1);
}

.bio-link:focus-visible {
    outline: 1px solid rgb(167 243 208 / 0.6);
    outline-offset: 2px;
}

.field-label {
    font-family: '"Inter"', sans-serif;
    font-weight: 300;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-size: 0.7rem;
    color: rgb(167 243 208 / 0.6);
}

.field-input {
    font-family: '"Cormorant Garamond"', serif;
    background-color: rgb(255 255 255 / 0.03);
    border: 1px solid rgb(16 185 129 / 0.25);
    color: rgb(236 253 245 / 0.95);
    transition: border-color 0.3s ease, background-color 0.3s ease;
}

.field-input::placeholder {
    color: rgb(167 243 208 / 0.3);
}

.field-input:focus {
    outline: none;
    border-color: rgb(110 231 183 / 0.7);
    background-color: rgb(255 255 255 / 0.05);
}

.submit-btn {
    font-family: '"Inter"', sans-serif;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-size: 0.75rem;
    border: 1px solid rgb(110 231 183 / 0.5);
    color: rgb(236 253 245 / 0.9);
    transition: background-color 0.4s ease, color 0.4s ease;
}

.submit-btn:hover,
.submit-btn:focus-visible {
    background-color: rgb(110 231 183 / 0.12);
}

.hp-field {
    position: absolute;
    left: -9999px;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

.timeline-line {
    background: linear-gradient(180deg, rgb(16 185 129 / 0.4), rgb(16 185 129 / 0.05));
}

.timeline-node {
    box-shadow: 0 0 0 4px #022c22;
}

.headline-link {
    color: rgb(209 250 229 / 0.88);
    transition: color 0.35s ease, border-color 0.35s ease;
    border-bottom: 1px solid rgb(16 185 129 / 0.22);
}

.headline-link:hover,
.headline-link:focus-visible {
    color: rgb(167 243 208 / 1);
    border-bottom-color: rgb(167 243 208 / 0.75);
}

.headline-link:focus-visible {
    outline: 1px solid rgb(167 243 208 / 0.6);
    outline-offset: 4px;
}

@media (prefers-reduced-motion: reduce) {
    .animate-fade-in,
    .animate-fade-in-delayed,
    .animate-fade-in-delayed-lg,
    .animate-fade-in-delayed-xl,
    .animate-fade-in-fast,
    .animate-fade-in-fast-delayed,
    .animate-fade-in-fast-delayed-lg {
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
    }
}
