body {
      margin: 0;
      font-family: 'Segoe UI', Arial, sans-serif;
      background: #181a1b;
      color: #f3f3f3;
      font-size: 1.18rem;
      line-height: 1.7;
      letter-spacing: 0.02em;
    }

    .header {
      background: #23272a;
      padding: 64px 0 48px 0;
      box-shadow: 0 2px 16px rgba(0, 0, 0, 0.25);
      animation: fadeDown 1s ease;
    }

    .container {
      max-width: 1400px;
      margin: 0 auto;
      padding: 0 64px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
    }

    .logo {
      font-size: 3.2rem;
      font-weight: bold;
      letter-spacing: 3px;
      color: #61dafb;
      animation: fadeLeft 1.2s cubic-bezier(.77, 0, .18, 1);
      text-shadow: 0 2px 12px rgba(97, 218, 251, 0.15);
    }

    nav {
      display: flex;
      gap: 64px;
      font-size: 1.5rem;
      animation: fadeRight 1.2s cubic-bezier(.77, 0, .18, 1);
    }

    nav a {
      color: #f3f3f3;
      text-decoration: none;
      font-size: 1.25rem;
      font-weight: 500;
      transition: color 0.2s, letter-spacing 0.2s;
      letter-spacing: 0.04em;
      padding: 8px 18px;
      border-radius: 8px;
    }

    nav a:hover {
      color: #61dafb;
      background: rgba(97, 218, 251, 0.08);
      letter-spacing: 0.12em;
      box-shadow: 0 2px 8px rgba(97, 218, 251, 0.10);
      transition: all 0.2s;
    }

    .header-btn {
      background: #61dafb;
      color: #181a1b;
      border: none;
      padding: 18px 48px;
      border-radius: 32px;
      font-size: 1.35rem;
      font-weight: 800;
      cursor: pointer;
      transition: background 0.2s, color 0.2s, transform 0.2s, box-shadow 0.2s;
      animation: fadeUp 1.3s cubic-bezier(.77, 0, .18, 1);
      box-shadow: 0 6px 24px rgba(97, 218, 251, 0.25), 0 2px 8px rgba(0, 0, 0, 0.12);
      margin-left: 32px;
    }

    .header-btn:hover {
      background: #21a1f3;
      color: #fff;
      transform: translateY(-4px) scale(1.04);
    }

    .hero {
      background: linear-gradient(120deg, #23272a 60%, #181a1b 100%);
      padding: 140px 0 120px 0;
      color: #f3f3f3;
      animation: fadeIn 1.2s cubic-bezier(.77, 0, .18, 1);
    }

    .hero-content {
      display: flex;
      flex-direction: row;
      align-items: center;
      justify-content: space-between;
      min-height: 520px;
      gap: 96px;
    }

    .hero-title {
      font-size: 4.2rem;
      font-weight: 800;
      margin-bottom: 28px;
      animation: fadeRight 1.3s cubic-bezier(.77, 0, .18, 1);
      letter-spacing: 0.04em;
      text-shadow: 0 2px 12px rgba(97, 218, 251, 0.10);
    }

    .hero-photo {
      width: 340px;
      height: 340px;
      border-radius: 15%;
      object-fit: cover;
      box-shadow: 0 12px 40px rgba(0, 0, 0, 0.32);
      border: 8px solid #23272a;
      background: #23272a;
      margin-bottom: 0;
      animation: fadeLeft 1.3s cubic-bezier(.77, 0, .18, 1);
      transition: transform 0.3s cubic-bezier(.77, 0, .18, 1), box-shadow 0.3s;
    }

    .hero-photo:hover {
      transform: scale(1.04) rotate(-2deg);
      box-shadow: 0 20px 60px rgba(97, 218, 251, 0.18), 0 8px 32px rgba(0, 0, 0, 0.32);
    }

    .highlight {
      color: #61dafb;
      font-weight: 900;
      letter-spacing: 0.06em;
    }

    .hero-subtitle {
      font-size: 2.1rem;
      font-weight: 600;
      margin-bottom: 32px;
      color: #b0b8c1;
      animation: fadeRight 1.4s cubic-bezier(.77, 0, .18, 1);
      letter-spacing: 0.03em;
    }

    .hero-desc {
      font-size: 1.35rem;
      max-width: 700px;
      margin-bottom: 48px;
      color: #d1d5db;
      animation: fadeRight 1.5s cubic-bezier(.77, 0, .18, 1);
    }

    .hero-btn {
      display: inline-block;
      background: #61dafb;
      color: #181a1b;
      padding: 20px 56px;
      border-radius: 32px;
      font-size: 1.45rem;
      font-weight: 800;
      text-decoration: none;
      transition: background 0.2s, color 0.2s, transform 0.2s, box-shadow 0.2s;
      animation: fadeUp 1.6s cubic-bezier(.77, 0, .18, 1);
      box-shadow: 0 6px 24px rgba(97, 218, 251, 0.18), 0 2px 8px rgba(0, 0, 0, 0.12);
    }

    .hero-btn:hover {
      background: #21a1f3;
      color: #fff;
      transform: translateY(-4px) scale(1.06);
      box-shadow: 0 12px 36px rgba(97, 218, 251, 0.22), 0 8px 32px rgba(0, 0, 0, 0.22);
    }

    @keyframes fadeIn {
      from {
        opacity: 0;
        transform: translateY(40px);
      }

      to {
        opacity: 1;
        transform: none;
      }
    }

    @keyframes fadeUp {
      from {
        opacity: 0;
        transform: translateY(60px);
      }

      to {
        opacity: 1;
        transform: none;
      }
    }

    @keyframes fadeDown {
      from {
        opacity: 0;
        transform: translateY(-60px);
      }

      to {
        opacity: 1;
        transform: none;
      }
    }

    @keyframes fadeLeft {
      from {
        opacity: 0;
        transform: translateX(-60px);
      }

      to {
        opacity: 1;
        transform: none;
      }
    }

    @keyframes fadeRight {
      from {
        opacity: 0;
        transform: translateX(60px);
      }

      to {
        opacity: 1;
        transform: none;
      }
    }

    .about {
      background: #202225;
      padding: 120px 0 120px 0;
      color: #f3f3f3;
      animation: fadeInAbout 1.2s cubic-bezier(.77, 0, .18, 1);
    }

    @keyframes fadeInAbout {
      from {
        opacity: 0;
        transform: translateY(60px);
      }

      to {
        opacity: 1;
        transform: none;
      }
    }

    .about-content {
      display: flex;
      flex-direction: row;
      align-items: center;
      justify-content: space-between;
      gap: 96px;
      max-width: 1200px;
      margin: 0 auto;
      padding: 0 64px;
      animation: fadeLeft 1.2s cubic-bezier(.77, 0, .18, 1);
    }

    .about-text {
      flex: 1 1 0%;
      min-width: 340px;
      animation: fadeLeft 1.2s cubic-bezier(.77, 0, .18, 1);
    }

    .about-text h2 {
      font-size: 2.8rem;
      margin-bottom: 28px;
      color: #61dafb;
      font-weight: 900;
      letter-spacing: 0.06em;
      text-shadow: 0 2px 12px rgba(97, 218, 251, 0.10);
    }

    .about-text p {
      font-size: 1.35rem;
      margin-bottom: 32px;
      color: #d1d5db;
    }

    .about-list {
      list-style: none;
      padding: 0;
      margin: 0;
    }

    .about-list li {
      font-size: 1.18rem;
      margin-bottom: 16px;
      color: #b0b8c1;
      padding-left: 1.2em;
      position: relative;
      letter-spacing: 0.02em;
      transition: color 0.2s, letter-spacing 0.2s;
    }

    .about-list li:before {
      content: '';
      position: absolute;
      left: 0;
      top: 0.7em;
      width: 10px;
      height: 10px;
      background: #61dafb;
      border-radius: 50%;
    }

    .about-list li:hover {
      color: #61dafb;
      letter-spacing: 0.08em;
    }

    .about-photo-wrap {
      flex: 0 0 320px;
      display: flex;
      justify-content: flex-end;
      align-items: center;
      animation: fadeRight 1.2s cubic-bezier(.77, 0, .18, 1);
    }

    .about-photo {
      width: 300px;
      height: 300px;
      border-radius: 18%;
      object-fit: cover;
      box-shadow: 0 12px 40px rgba(0, 0, 0, 0.32);
      border: 8px solid #23272a;
      background: #23272a;
      transition: transform 0.3s cubic-bezier(.77, 0, .18, 1), box-shadow 0.3s;
    }

    .about-photo:hover {
      transform: scale(1.05) rotate(2deg);
      box-shadow: 0 20px 60px rgba(97, 218, 251, 0.18), 0 8px 32px rgba(0, 0, 0, 0.32);
    }

    .skills {
      background: #181a1b;
      padding: 120px 0 120px 0;
      color: #f3f3f3;
      animation: fadeIn 0.7s cubic-bezier(.77, 0, .18, 1);
    }

    .skills-content {
      max-width: 900px;
      margin: 0 auto;
      padding: 0 64px;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 32px;
    }

    .skills-text h2 {
      font-size: 2.8rem;
      margin-bottom: 28px;
      color: #61dafb;
      font-weight: 900;
      letter-spacing: 0.06em;
      text-shadow: 0 2px 12px rgba(97, 218, 251, 0.10);
      /* No animation */
    }

    .skills-text p {
      font-size: 1.35rem;
      margin-bottom: 32px;
      color: #d1d5db;
      /* No animation */
    }

    .college-contact {
      background: #202225;
      padding: 100px 0 100px 0;
      color: #f3f3f3;
      animation: fadeInCollege 1.1s cubic-bezier(.77, 0, .18, 1);
    }

    @keyframes fadeInCollege {
      from {
        opacity: 0;
        transform: translateY(60px);
      }

      to {
        opacity: 1;
        transform: none;
      }
    }

    .college-contact-content {
      display: flex;
      flex-direction: row;
      align-items: flex-start;
      justify-content: space-between;
      gap: 220px;
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 64px;
      animation: fadeUp 1.2s cubic-bezier(.77, 0, .18, 1);
    }

    .college-input {
      flex: 1 1 0%;
      min-width: 320px;
      background: #23272a;
      border-radius: 18px;
      box-shadow: 0 4px 24px rgba(97, 218, 251, 0.10), 0 2px 8px rgba(0, 0, 0, 0.12);
      padding: 36px 32px 28px 32px;
      margin-bottom: 0;
      animation: fadeIn 1.2s cubic-bezier(.77, 0, .18, 1);
    }

    .college-input h2 {
      font-size: 2rem;
      margin-bottom: 24px;
      color: #61dafb;
      font-weight: 900;
      letter-spacing: 0.06em;
    }

    .contact-form {
      display: flex;
      flex-direction: column;
      gap: 18px;
    }

    .contact-form input,
    .contact-form textarea {
      background: #181a1b;
      color: #f3f3f3;
      border: 1.5px solid #23272a;
      border-radius: 8px;
      padding: 14px 16px;
      font-size: 1.1rem;
      font-family: inherit;
      resize: none;
      transition: border 0.2s, box-shadow 0.2s;
    }

    .contact-form input:focus,
    .contact-form textarea:focus {
      border: 1.5px solid #61dafb;
      outline: none;
      box-shadow: 0 0 0 2px rgba(97, 218, 251, 0.12);
    }

    .contact-form button {
      background: #61dafb;
      color: #181a1b;
      border: none;
      padding: 14px 0;
      border-radius: 8px;
      font-size: 1.15rem;
      font-weight: 700;
      cursor: pointer;
      margin-top: 8px;
      transition: background 0.2s, color 0.2s, transform 0.2s, box-shadow 0.2s;
      box-shadow: 0 2px 8px rgba(97, 218, 251, 0.10);
    }

    .contact-form button:hover {
      background: #21a1f3;
      color: #fff;
      transform: translateY(-2px) scale(1.03);
    }

    .college-info {
      flex: 1 1 0%;
      min-width: 320px;
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      animation: fadeIn 1.2s cubic-bezier(.77, 0, .18, 1);
    }

    .college-info h2 {
      font-size: 2rem;
      margin-bottom: 24px;
      color: #61dafb;
      font-weight: 900;
      letter-spacing: 0.06em;
    }

    .college-card {
      background: #23272a;
      border-radius: 18px;
      box-shadow: 0 4px 24px rgba(97, 218, 251, 0.10), 0 2px 8px rgba(0, 0, 0, 0.12);
      padding: 36px 32px 28px 32px;
      margin-bottom: 0;
    }

    .college-card h3 {
      font-size: 1.35rem;
      color: #61dafb;
      margin-bottom: 12px;
      font-weight: 800;
    }

    .college-card p {
      color: #d1d5db;
      font-size: 1.1rem;
      margin: 0;
    }

    /* Footer styles */
    .footer {
      background: #181a1b;
      color: #b0b8c1;
      padding: 36px 0 28px 0;
      border-top: 1.5px solid #23272a;
      margin-top: 0;
      animation: fadeInFooter 1.2s cubic-bezier(.77, 0, .18, 1);
    }

    @keyframes fadeInFooter {
      from {
        opacity: 0;
        transform: translateY(40px);
      }

      to {
        opacity: 1;
        transform: none;
      }
    }

    .footer-content {
      max-width: 1100px;
      margin: 0 auto;
      padding: 0 32px;
      display: flex;
      flex-direction: row;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
    }

    .footer-left {
      display: flex;
      align-items: center;
      gap: 12px;
      font-size: 1.18rem;
      font-weight: 600;
      letter-spacing: 0.04em;
    }

    .footer-logo {
      font-size: 2rem;
      color: #61dafb;
      margin-right: 6px;
      vertical-align: middle;
      animation: fadeLeft 1.2s cubic-bezier(.77, 0, .18, 1);
    }

    .footer-title {
      color: #61dafb;
      font-weight: 900;
      font-size: 1.18rem;
      letter-spacing: 0.06em;
      margin-right: 6px;
      animation: fadeIn 1.2s cubic-bezier(.77, 0, .18, 1);
    }

    .footer-tagline {
      color: #b0b8c1;
      font-size: 1.05rem;
      font-weight: 400;
      letter-spacing: 0.03em;
      animation: fadeRight 1.2s cubic-bezier(.77, 0, .18, 1);
    }

    .footer-right {
      font-size: 1.08rem;
      color: #b0b8c1;
      text-align: right;
      font-weight: 400;
      letter-spacing: 0.03em;
      animation: fadeUp 1.2s cubic-bezier(.77, 0, .18, 1);
    }