:root {
     --bg: #0f1115;
     --bg-soft: #171a21;
     --bg-form: #242937;
     --card: #151922;
     --line: rgba(255,255,255,0.08);
     --text: #f3f5f7;
     --muted: #a9b2bf;
     --accent: #7dd3fc;
     --accent-2: #c4b5fd;
     --success: #22c55e;
     --error: #ef4444;
     --max: 1120px;
     --radius: 20px;
 }

 * { box-sizing: border-box; }

 html {
     scroll-behavior: smooth;
 }

 body {
     margin: 0;
     font-family: Inter, Segoe UI, Arial, sans-serif;
     background:
         radial-gradient(circle at top left, rgba(125, 211, 252, 0.12), transparent 30%),
         radial-gradient(circle at top right, rgba(196, 181, 253, 0.10), transparent 25%),
         var(--bg);
     color: var(--text);
     line-height: 1.55;
 }

 a { color: inherit; text-decoration: none; }

 .container {
     width: min(calc(100% - 32px), var(--max));
     margin: 0 auto;
 }

 .header {
     position: sticky;
     top: 0;
     z-index: 10;
     backdrop-filter: blur(10px);
     background: rgba(15, 17, 21, 0.72);
     border-bottom: 1px solid var(--line);
 }

 .header-inner {
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 20px;
     padding: 16px 0;
 }

 .brand {
     font-size: 20px;
     font-weight: 700;
     letter-spacing: 0.04em;
 }

 .brand span {
     color: var(--accent);
 }

 .nav {
     display: flex;
     align-items: center;
     gap: 18px;
     flex-wrap: wrap;
 }

 .nav a {
     color: var(--muted);
     transition: color 0.2s ease;
 }

 .nav a:hover,
 .lang-switch a:hover {
     color: var(--text);
 }

 .lang-switch {
     display: flex;
     gap: 8px;
     flex-wrap: wrap;
 }

 .lang-switch a {
     padding: 8px 10px;
     border: 1px solid var(--line);
     border-radius: 999px;
     color: var(--muted);
     font-size: 13px;
 }

 .lang-switch a.active {
     color: var(--text);
     border-color: rgba(125, 211, 252, 0.5);
     background: rgba(125, 211, 252, 0.08);
 }

 .hero {
     padding: 76px 0 42px;
 }

 .badge {
     display: inline-block;
     padding: 8px 14px;
     border-radius: 999px;
     background: rgba(125, 211, 252, 0.10);
     border: 1px solid rgba(125, 211, 252, 0.18);
     color: var(--accent);
     font-size: 13px;
     margin-bottom: 18px;
 }

 h1 {
     margin: 0 0 18px;
     font-size: clamp(34px, 6vw, 64px);
     line-height: 1.02;
     letter-spacing: -0.03em;
     max-width: 760px;
 }

 .hero-text {
     max-width: 760px;
     font-size: 18px;
     color: var(--muted);
     margin-bottom: 28px;
 }

 .hero-actions {
     display: flex;
     flex-wrap: wrap;
     gap: 12px;
 }

 .btn {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     padding: 13px 18px;
     border-radius: 14px;
     border: 1px solid var(--line);
     transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease;
 }

 .btn:hover {
     transform: translateY(-1px);
     border-color: rgba(255,255,255,0.18);
 }

 .btn-send,
 .btn-primary {
     background: linear-gradient(135deg, rgba(125, 211, 252, 0.22), rgba(196, 181, 253, 0.18));
     border-color: rgba(125, 211, 252, 0.30);
 }
 
 .btn-send:hover {
    background: linear-gradient(135deg, rgba(125, 211, 252, 0.32), rgba(196, 181, 253, 0.28));
    border-color: rgba(125, 211, 252, 0.45);
}

 .btn-secondary {
     color: var(--muted);
     background: rgba(255,255,255,0.02);
 }

 section {
     padding: 24px 0;
 }

 .section-title {
     font-size: 28px;
     margin: 0 0 10px;
 }

 .section-subtitle {
     margin: 0 0 24px;
     color: var(--muted);
 }

 .cards {
     display: grid;
     grid-template-columns: repeat(3, 1fr);
     gap: 16px;
 }

 .card {
     background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
     border: 1px solid var(--line);
     border-radius: var(--radius);
     padding: 22px;
 }

 .card h3 {
     margin-top: 0;
     margin-bottom: 10px;
     font-size: 20px;
 }

 .card p {
     margin: 0;
     color: var(--muted);
 }

 .stack-box {
     background: var(--bg-soft);
     border: 1px solid var(--line);
     border-radius: var(--radius);
     padding: 24px;
 }

 .stack-items {
     display: flex;
     gap: 12px;
     flex-wrap: wrap;
     margin-top: 16px;
 }

 .chip {
     padding: 11px 14px;
     border-radius: 999px;
     border: 1px solid var(--line);
     background: rgba(255,255,255,0.02);
     color: var(--text);
 }

 .contact-wrap {
     display: grid;
     grid-template-columns: 0.95fr 1.05fr;
     gap: 18px;
 }

 .contact-side{
     border: 1px solid var(--line);
     border-radius: var(--radius);
     background: var(--card);
     padding: 24px;
 }
 
 .form-box {
     border: 1px solid var(--line);
     border-radius: var(--radius);
     background: var(--bg-form);
     padding: 24px;
 }

 .contact-side p,
 .contact-side li,
 .meta {
     color: var(--muted);
 }

 .meta-list {
     margin: 18px 0 0;
     padding: 0;
     list-style: none;
     display: grid;
     gap: 10px;
 }

 .meta-list strong {
     color: var(--text);
 }

 form {
     display: grid;
     gap: 14px;
 }

 .grid-2 {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 14px;
 }

 label {
     display: block;
     font-size: 14px;
     margin-bottom: 6px;
     color: var(--text);
 }

 input,
 textarea {
     width: 100%;
     border: 1px solid rgba(255,255,255,0.10);
     background: rgba(255,255,255,0.03);
     color: var(--text);
     border-radius: 14px;
     padding: 13px 14px;
     font: inherit;
     outline: none;
     transition: border-color 0.2s ease, background 0.2s ease;
 }

 input:focus,
 textarea:focus {
     border-color: rgba(125, 211, 252, 0.45);
     background: rgba(255,255,255,0.05);
 }

 textarea {
     min-height: 150px;
     resize: vertical;
 }

 .hidden-trap {
     position: absolute;
     left: -9999px;
     width: 1px;
     height: 1px;
     overflow: hidden;
 }

 .status {
     padding: 12px 14px;
     border-radius: 14px;
     font-size: 14px;
 }

 .status.success {
     background: rgba(34, 197, 94, 0.12);
     border: 1px solid rgba(34, 197, 94, 0.25);
     color: #b7f7c9;
 }

 .status.error {
     background: rgba(239, 68, 68, 0.12);
     border: 1px solid rgba(239, 68, 68, 0.25);
     color: #ffc3c3;
 }

 .note {
     font-size: 13px;
     color: var(--muted);
 }

 .footer {
     padding: 28px 0 44px;
     color: var(--muted);
     font-size: 14px;
 }

 .footer-inner {
     display: flex;
     justify-content: space-between;
     gap: 20px;
     flex-wrap: wrap;
     padding-top: 20px;
     border-top: 1px solid var(--line);
 }

 @media (max-width: 920px) {
     .cards,
     .contact-wrap,
     .grid-2 {
         grid-template-columns: 1fr;
     }

     .header-inner {
         align-items: flex-start;
         flex-direction: column;
     }
 }

 @media (max-width: 640px) {
     .hero {
         padding-top: 48px;
     }

     .container {
         width: min(calc(100% - 24px), var(--max));
     }

     .nav {
         gap: 12px;
     }
 }