 :root {
            --sea-base: #1b3a5a;
            --accent: #5ac8fa;
            --glass-bg: rgba(255,255,255,0.12);
            --glass-border: rgba(255,255,255,0.25);
            --text-light: #e0e5ec;
            --section-padding: 2rem;
        }

        * { margin:0; padding:0; box-sizing:border-box; }

        body {
            font-family:'Inter',sans-serif;
            color:var(--text-light);
            background: var(--sea-base);
            overflow-x:hidden;
            position: relative;
        }

        /* Canvas background */
        #bg-canvas {
            position: fixed;
            top:0; left:0;
            width:100%;
            height:100%;
            z-index:0;
        }

        /* Hero */
        header.hero {
            position: relative;
            height: 100vh;
            display: flex;
            flex-direction: column;
            align-items: center;       /* горизонтальный центр */
            justify-content: center;    /* вертикальный центр */
            text-align: center;
            padding: 0 2rem;
            gap: 2.5rem;
            z-index: 1;
        }

        header.hero h1 {
            font-size: 4rem;
            font-weight: 700;
            letter-spacing: -0.02em;
        }

        header.hero p.hero-subtitle {
            font-size: 1.5rem;
            opacity: 0.9;
        }

        header.hero p.hero-description {
            max-width: 700px;
            font-size: 1.2rem;
            opacity: 0.85;
            line-height: 1.6;
        }

        header.hero .btn-primary {
            display:inline-block;
            background:var(--accent);
            color:#fff;
            padding:1rem 2rem;
            border-radius:30px;
            font-weight:600;
            margin-top:2rem;
            text-decoration:none;
            box-shadow:0 10px 25px rgba(90,200,250,0.3);
            transition: all 0.3s ease;
        }
        header.hero .btn-primary:hover {
            transform:translateY(-2px);
            box-shadow:0 15px 35px rgba(90,200,250,0.35);
        }

        /* Scroll down arrow */
        @keyframes bounce {
            0%, 20%, 50%, 80%, 100% { transform: translateY(0); }
            40% { transform: translateY(-10px); }
            60% { transform: translateY(-5px); }
        }
        #scroll-down {
            position: absolute;
            bottom: 10%;
            display:flex;
            justify-content:center;
            align-items:center;
            font-size: 2rem;
            color: rgba(255,255,255,0.6);
            background: transparent;
            border: none;
            cursor: pointer;
            animation: bounce 2s infinite;
            z-index:2;
        }

        /* Mail button */
        #scroll-contact {
            position: fixed;
            bottom: 2rem;
            right: 2rem;
            font-size: 1.5rem;
            background: var(--accent);
            border:none;
            border-radius:50%;
            width:50px; height:50px;
            display:flex;
            justify-content:center;
            align-items:center;
            color:#fff;
            cursor:pointer;
            z-index:3;
            box-shadow:0 5px 15px rgba(90,200,250,0.3);
            animation: pulse 3s infinite;
        }
        @keyframes pulse {
            0%,100% { transform: scale(1); }
            50% { transform: scale(1.15); }
        }

        /* Main content */
        main.content {
            max-width:1000px;
            margin:0 auto;
            padding:2rem 1.5rem;
            position:relative;
            z-index:1;
        }

        /* Liquid Glass Section */
        .content-section {
            background: var(--glass-bg);
            border:1px solid var(--glass-border);
            border-radius:20px;
            padding:var(--section-padding);
            margin-bottom:2rem;
            backdrop-filter: blur(20px) saturate(180%) contrast(110%);
            box-shadow: 0 15px 40px rgba(0,0,0,0.25);
            transition: all 0.3s ease;
        }
        .content-section:hover {
            transform:translateY(-5px);
            box-shadow:0 20px 60px rgba(0,0,0,0.35);
        }
        .content-section h2 {
            text-align:center;
            font-size:2rem;
            margin-bottom:1.5rem;
        }

        /* Experience, projects, education blocks */
        .experience-item, .project-item, .education-item {
            margin-bottom:1.5rem;
            padding:1.5rem;
            border-radius:15px;
            background: rgba(255,255,255,0.08);
            border: 1px solid rgba(255,255,255,0.2);
            transition: all 0.3s ease;
        }
        .experience-item:hover, .project-item:hover, .education-item:hover {
            transform: translateY(-3px);
            box-shadow:0 12px 30px rgba(0,0,0,0.3);
        }
        .experience-item h3, .project-item h3, .education-item h3 {
            margin-bottom:0.5rem;
            font-weight:600;
        }
        .experience-item p, .project-item p, .education-item p {
            margin-top:0.5rem;
            line-height:1.5;
        }

        /* Skills */
        .skills-list {
            display:flex;
            flex-wrap:wrap;
            justify-content:center;
            gap:0.8em;
        }
        .skill-tag {
            background: rgba(90,200,250,0.3);
            color:#fff;
            padding:0.5em 1em;
            border-radius:25px;
            font-size:0.9em;
            transition: all 0.3s ease;
        }
        .skill-tag:hover {
            background:var(--accent);
            transform:translateY(-3px);
        }

        /* Project buttons */
        .project-item a.btn-secondary {
            display:inline-block;
            background: rgba(90,200,250,0.2);
            color:#fff;
            text-decoration:none;
            padding:0.6rem 1.2rem;
            border-radius:15px;
            font-weight:500;
            margin-top:1rem;
            transition: all 0.3s ease;
        }
        .project-item a.btn-secondary:hover {
            background: var(--accent);
            transform:translateY(-3px);
        }

        /* Footer */
        footer.footer {
            text-align:center;
            color: var(--text-light);
            padding:3rem 1.5rem 2rem;
            margin-top:3rem;
            position:relative;
            z-index:1;
        }
        .contact-icons {
            display:flex;
            justify-content:center;
            gap:1.5em;
            margin:1.5em 0;
        }
        .contact-link {
            font-size:1.5em;
            color:var(--text-light);
            text-decoration:none;
            opacity:0.8;
            transition: all 0.3s ease;
        }
        .contact-link:hover { color:var(--accent); opacity:1; }

        /* Responsive */
        @media (max-width:768px){
            header.hero h1 { font-size:2.5rem; }
            header.hero p.hero-subtitle { font-size:1.2rem; }
            header.hero p.hero-description { font-size:1rem; }
            #scroll-down { font-size:1.5rem; }
        }

        /* Canvas blur circles */