﻿:root {
    --bg-page: linear-gradient(180deg, #f6fbfb, #e5eef1);
    --hero-start: #2c7c6d;
    --hero-end: #7ac7b6;
    --text-dark: #0f1f1a;
    --text-light: rgba(255, 255, 255, 0.92);
    --muted: rgba(255, 255, 255, 0.75);
    --shadow: 0 18px 50px rgba(7, 30, 22, 0.18);
    --outline: rgba(255, 255, 255, 0.9);
    --transition: 220ms cubic-bezier(0.4, 0, 0.2, 1);
}

* {
    box-sizing: border-box;
}

body {
    margin: 0;
    min-height: 100vh;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    background: var(--bg-page);
    color: var(--text-dark);
    display: flex;
    justify-content: center;
    padding: clamp(1.5rem, 5vw, 3rem) clamp(1rem, 5vw, 1.8rem);
}

.bg {
    position: fixed;
    inset: 0;
    background-image: radial-gradient(circle at 20% 20%, rgba(122, 199, 182, 0.45), transparent 45%),
        radial-gradient(circle at 80% 0%, rgba(44, 124, 109, 0.4), transparent 50%);
    filter: blur(50px);
    opacity: 0.6;
    pointer-events: none;
    z-index: 0;
}

.shell {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: 560px;
}

.hero {
    position: relative;
    background: linear-gradient(135deg, var(--hero-start), var(--hero-end));
    color: var(--text-light);
    border-radius: 32px;
    min-height: 160px;
    padding: clamp(1.8rem, 6vw, 2.4rem);
    overflow: hidden;
    box-shadow: 0 20px 50px rgba(26, 70, 57, 0.35);
}

.hero::before {
    content: '';
    position: absolute;
    width: 180px;
    height: 180px;
    background: rgba(255, 255, 255, 0.22);
    filter: blur(60px);
    top: -50px;
    right: -30px;
}

.hero-content {
    position: relative;
    z-index: 1;
}

.hero-subtitle {
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.22em;
    font-size: 0.82rem;
    color: var(--muted);
}

.hero h1 {
    margin: 0.35rem 0 0.2rem;
    font-size: clamp(2rem, 7vw, 2.8rem);
    font-weight: 600;
}

.hero-text {
    margin: 0;
    font-size: 1rem;
    color: var(--text-light);
}

.links {
    margin-top: clamp(1.3rem, 4vw, 1.8rem);
    display: flex;
    flex-direction: column;
    gap: clamp(0.9rem, 3vw, 1.1rem);
}

.link {
    display: block;
    width: 100%;
    transition: transform var(--transition), box-shadow var(--transition);
    box-shadow: 0 12px 30px rgba(12, 31, 25, 0.15);
}

.link:focus-visible {
    outline: 3px solid var(--outline);
    outline-offset: 6px;
}

.link:hover {
    transform: translateY(-2px) scale(1.01);
    box-shadow: var(--shadow);
}

.link:active {
    transform: scale(0.99);
}

.btn-img {
    width: 100%;
    height: auto;
    display: block;
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
        scroll-behavior: auto !important;
    }
}
