* {    margin: 0;    padding: 0;    box-sizing: border-box;}:root {    --color-bg: #0c0c0c;    --color-bg-secondary: #121212;    --color-bg-tertiary: #1a1a1a;    --color-border: #1f1f1f;    --color-text: #ffffff;    --color-text-secondary: #8b949e;    --color-primary: #4d916a;    --color-primary-light: #6eb88f;    --color-accent: #58a6ff;    --color-positive: #3fb950;    --color-negative: #f85149;}html {    scroll-behavior: smooth;    overflow-y: scroll;    overflow-x: hidden;    -webkit-text-size-adjust: 100%;}@media (hover: none) and (pointer: coarse) {    .btn {        min-height: 44px;    }    .nav-links a {        padding: 12px 8px;    }    .faq-question {        min-height: 56px;    }    .problem-card:hover,    .roadmap-step:hover,    .for-you-card:hover,    .faq-item:hover {        transform: none;    }}body {    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica', 'Arial', sans-serif;    background-color: var(--color-bg);    color: var(--color-text);    line-height: 1.6;    overflow-x: hidden;}.container {    max-width: 1280px;    margin: 0 auto;    padding: 0 24px;}.nav {    position: fixed;    top: 0;    left: 0;    right: 0;    z-index: 1000;    background-color: transparent;    backdrop-filter: none;    border-bottom: none;    transition: background-color 0.3s ease, backdrop-filter 0.3s ease;}.nav.scrolled,.nav.menu-open {    background-color: rgba(12, 12, 12, 0.95);    backdrop-filter: blur(12px);    box-shadow: 0 1px 0 rgba(31, 31, 31, 0.5);}.nav-container {    max-width: 1280px;    margin: 0 auto;    padding: 16px 24px;    display: flex;    align-items: center;    justify-content: space-between;}.nav-logo {    display: flex;    align-items: center;    gap: 12px;}.nav-logo img {    height: 31px;    width: 177px;    object-fit: contain;}.logo-text {    font-size: 20px;    font-weight: 700;    color: var(--color-text);    letter-spacing: -0.5px;}.nav-links {    display: flex;    gap: 32px;    align-items: center;}.nav-links a {    color: var(--color-text-secondary);    text-decoration: none;    font-size: 14px;    font-weight: 500;    transition: color 0.2s ease;    position: relative;}.nav-links a::after {    content: '';    position: absolute;    bottom: -4px;    left: 0;    width: 0;    height: 2px;    background-color: var(--color-primary);    transition: width 0.3s ease;}.nav-links a:hover {    color: var(--color-text);}.nav-links a:hover::after {    width: 100%;}.nav-actions {    display: flex;    gap: 12px;}.mobile-menu-toggle {    display: none;    flex-direction: column;    justify-content: center;    align-items: center;    gap: 5px;    width: 40px;    height: 40px;    background: transparent;    border: none;    cursor: pointer;    padding: 8px;    z-index: 1001;}.hamburger-line {    width: 24px;    height: 2px;    background-color: var(--color-text);    transition: all 0.3s ease;    border-radius: 2px;}.mobile-menu-toggle.active .hamburger-line:nth-child(1) {    transform: rotate(45deg) translate(5px, 5px);}.mobile-menu-toggle.active .hamburger-line:nth-child(2) {    opacity: 0;}.mobile-menu-toggle.active .hamburger-line:nth-child(3) {    transform: rotate(-45deg) translate(5px, -5px);}.mobile-menu {    display: none;    position: absolute;    top: 100%;    left: 0;    right: 0;    background: rgba(12, 12, 12, 0.98);    backdrop-filter: blur(20px);    border-top: 1px solid var(--color-border);    padding: 0 24px;    flex-direction: column;    gap: 24px;    max-height: 0;    overflow: hidden;    opacity: 0;    transition: max-height 0.4s ease, opacity 0.3s ease, padding 0.3s ease;}.mobile-menu.active {    max-height: 500px;    padding: 24px;    opacity: 1;    display: flex;    overflow-y: auto;}.mobile-menu-links {    display: flex;    flex-direction: column;    gap: 16px;}.mobile-menu-links a {    color: var(--color-text);    text-decoration: none;    font-size: 18px;    font-weight: 500;    padding: 12px 0;    border-bottom: 1px solid var(--color-border);    transition: color 0.2s ease;}.mobile-menu-links a:hover {    color: var(--color-primary-light);}.mobile-menu-actions {    display: flex;    flex-direction: column;    gap: 12px;    padding-bottom: 8px;}.mobile-menu-actions .btn {    width: 100%;    justify-content: center;    padding: 14px 20px;    flex-shrink: 0;}.btn {    display: inline-flex;    align-items: center;    justify-content: center;    padding: 8px 20px;    font-size: 14px;    font-weight: 600;    border-radius: 8px;    text-decoration: none;    transition: all 0.2s ease;    cursor: pointer;    border: 1px solid transparent;}.btn-primary {    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);    color: white;    box-shadow: 0 0 20px rgba(77, 145, 106, 0.3);}.btn-primary:hover {    transform: translateY(-2px);    box-shadow: 0 8px 30px rgba(77, 145, 106, 0.4);}.btn-secondary {    color: var(--color-text);    background: rgba(255, 255, 255, 0.05);}.btn-secondary:hover {    background-color: rgba(255, 255, 255, 0.1);}.btn-hero {    padding: 16px 32px;    font-size: 16px;    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);    color: white;    box-shadow: 0 8px 32px rgba(77, 145, 106, 0.3);}.btn-hero:hover {    transform: translateY(-2px);    box-shadow: 0 12px 40px rgba(77, 145, 106, 0.5);}.btn-hero-secondary {    padding: 16px 32px;    font-size: 16px;    color: var(--color-text);    border: 1px solid rgba(255, 255, 255, 0.1);    background: rgba(255, 255, 255, 0.03);}.btn-hero-secondary:hover {    border-color: rgba(77, 145, 106, 0.3);    background: rgba(77, 145, 106, 0.05);}.hero {    position: relative;    padding: 120px 0 48px;    overflow: visible;    margin-bottom: 0;}.hero-background {    position: absolute;    top: 0;    left: 0;    right: 0;    bottom: 0;    z-index: 0;}.hero-grid {    position: absolute;    top: 0;    left: 0;    right: 0;    bottom: 0;    background-image:         linear-gradient(var(--color-border) 1px, transparent 1px),        linear-gradient(90deg, var(--color-border) 1px, transparent 1px);    background-size: 50px 50px;    opacity: 0.3;    animation: gridMove 20s linear infinite;}@keyframes gridMove {    0% {        transform: translate(0, 0);    }    100% {        transform: translate(50px, 50px);    }}.hero-gradient {    position: absolute;    top: 0;    left: 50%;    transform: translateX(-50%);    width: 800px;    height: 800px;    background: radial-gradient(circle, rgba(77, 145, 106, 0.04) 0%, transparent 70%);    animation: pulse 8s ease-in-out infinite;}@keyframes pulse {    0%, 100% {        opacity: 0.5;        transform: translateX(-50%) scale(1);    }    50% {        opacity: 0.8;        transform: translateX(-50%) scale(1.1);    }}.floating-element {    position: absolute;    animation: float-idle 6s ease-in-out infinite;    opacity: 0.6;    pointer-events: none;}@keyframes float-idle {    0%, 100% {        transform: translateY(0) rotate(0deg);    }    33% {        transform: translateY(-20px) rotate(5deg);    }    66% {        transform: translateY(10px) rotate(-5deg);    }}.hero .container {    position: relative;    z-index: 1;}.hero-content {    text-align: center;    max-width: 900px;    margin: 0 auto 40px;    animation: fadeInUp 1s ease-out;}@keyframes fadeInUp {    from {        opacity: 0;        transform: translateY(30px);    }    to {        opacity: 1;        transform: translateY(0);    }}.hero-title {    display: flex;    flex-direction: column;    gap: 16px;    margin-bottom: 24px;}.hero-title-main {    font-size: 64px;    font-weight: 800;    line-height: 1.1;    color: var(--color-text);    letter-spacing: -2px;}.hero-title-gradient {    font-size: 54px;    font-weight: 800;    line-height: 1.1;    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 50%, #8ed1b0 100%);    -webkit-background-clip: text;    -webkit-text-fill-color: transparent;    background-clip: text;    letter-spacing: -2px;}.hero-description {    font-size: 20px;    color: var(--color-text-secondary);    margin-bottom: 32px;    line-height: 1.7;    max-width: 700px;    margin-left: auto;    margin-right: auto;}.hero-video-wrapper {    position: relative;    width: 100%;    max-width: 780px;    margin: 0 auto 32px;    padding-bottom: min(56.25%, 440px);    border-radius: 14px;    overflow: hidden;    border: 1px solid rgba(77, 145, 106, 0.2);    box-shadow:        0 0 0 1px rgba(255, 255, 255, 0.04),        0 20px 60px rgba(0, 0, 0, 0.5),        0 0 40px rgba(77, 145, 106, 0.08);    background: var(--color-bg-secondary);}.hero-video-wrapper iframe {    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;}.hero-video-thumb {    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%;    object-fit: cover;    cursor: pointer;}.hero-video-play {    position: absolute;    top: 50%;    left: 50%;    transform: translate(-50%, -50%);    background: none;    border: none;    cursor: pointer;    padding: 0;    opacity: 0.85;    transition: opacity 0.2s ease, transform 0.2s ease;    z-index: 1;}.hero-video-play:hover {    opacity: 1;    transform: translate(-50%, -50%) scale(1.1);}.hero-video-wrapper.playing .hero-video-thumb,.hero-video-wrapper.playing .hero-video-play {    display: none;}.hero-actions {    display: flex;    gap: 16px;    justify-content: center;    align-items: center;    margin-bottom: 24px;}.hero-visual {    max-width: 1100px;    margin: 0 auto;    perspective: 2000px;    animation: fadeInUp 1s ease-out 0.3s both;}.hero-media-container {    position: relative;    transform-style: preserve-3d;    animation: float 6s ease-in-out infinite;}@keyframes float {    0%, 100% {        transform: translateY(0) rotateX(5deg);    }    50% {        transform: translateY(-20px) rotateX(5deg);    }}.hero-media-frame {    background: linear-gradient(135deg, var(--color-bg-secondary) 0%, var(--color-bg-tertiary) 100%);    border: 1px solid rgba(31, 31, 31, 0.3);    border-radius: 16px;    overflow: hidden;    box-shadow:         0 20px 60px rgba(0, 0, 0, 0.5),        0 0 0 1px rgba(77, 145, 106, 0.05);    transition: transform 0.3s ease, box-shadow 0.3s ease;}.hero-media-frame:hover {    box-shadow:         0 25px 70px rgba(0, 0, 0, 0.6),        0 0 0 1px rgba(77, 145, 106, 0.15);}.media-header {    background-color: var(--color-bg-tertiary);    padding: 12px 16px;    border-bottom: 1px solid rgba(31, 31, 31, 0.3);}.media-dots {    display: flex;    gap: 8px;}.media-dots span {    width: 12px;    height: 12px;    border-radius: 50%;    background-color: var(--color-border);    transition: all 0.3s ease;}.media-dots span:nth-child(1) {    background-color: #ff5f56;}.media-dots span:nth-child(2) {    background-color: #ffbd2e;}.media-dots span:nth-child(3) {    background-color: #27c93f;}.hero-media-frame:hover .media-dots span {    transform: scale(1.1);}.media-content {    position: relative;    width: 100%;    min-height: 500px;    background-color: var(--color-bg);    display: flex;    align-items: center;    justify-content: center;    overflow: hidden;}.hero-video {    width: 100%;    height: 100%;    object-fit: cover;    display: block;}.hero-gif,.hero-gif-fallback {    width: 100%;    height: 100%;    object-fit: cover;    display: block;}.media-content::before {    content: '';    position: absolute;    top: 50%;    left: 50%;    transform: translate(-50%, -50%);    width: 50px;    height: 50px;    border: 3px solid rgba(77, 145, 106, 0.2);    border-top-color: var(--color-primary);    border-radius: 50%;    animation: spin 1s linear infinite;    opacity: 0;    transition: opacity 0.3s ease;}.media-content.loading::before {    opacity: 1;}@keyframes spin {    to {        transform: translate(-50%, -50%) rotate(360deg);    }}.dashboard-preview {    position: relative;    transform-style: preserve-3d;    animation: float 6s ease-in-out infinite;}.dashboard-frame {    background: linear-gradient(135deg, var(--color-bg-secondary) 0%, var(--color-bg-tertiary) 100%);    border: 1px solid rgba(31, 31, 31, 0.3);    border-radius: 16px;    overflow: hidden;    box-shadow:         0 20px 60px rgba(0, 0, 0, 0.5),        0 0 0 1px rgba(77, 145, 106, 0.05);}.dashboard-header {    background-color: var(--color-bg-tertiary);    padding: 12px 16px;    border-bottom: 1px solid rgba(31, 31, 31, 0.3);}.dashboard-dots {    display: flex;    gap: 8px;}.dashboard-dots span {    width: 12px;    height: 12px;    border-radius: 50%;    background-color: var(--color-border);}.dashboard-dots span:nth-child(1) {    background-color: #ff5f56;}.dashboard-dots span:nth-child(2) {    background-color: #ffbd2e;}.dashboard-dots span:nth-child(3) {    background-color: #27c93f;}.dashboard-content {    display: flex;    min-height: 400px;}.dashboard-sidebar {    width: 200px;    background-color: var(--color-bg-secondary);    border-right: 1px solid rgba(31, 31, 31, 0.2);    padding: 24px 16px;    display: flex;    flex-direction: column;    gap: 16px;}.sidebar-item {    height: 40px;    background-color: var(--color-bg-tertiary);    border-radius: 8px;    border: 1px solid rgba(31, 31, 31, 0.3);    transition: all 0.3s ease;}.sidebar-item.active {    background: linear-gradient(135deg, rgba(77, 145, 106, 0.15) 0%, rgba(110, 184, 143, 0.08) 100%);    border-color: rgba(77, 145, 106, 0.3);    box-shadow: 0 0 20px rgba(77, 145, 106, 0.1);}.dashboard-main {    flex: 1;    padding: 32px;}.chart-container {    position: relative;    height: 100%;}.chart-line {    position: absolute;    top: 20%;    left: 0;    right: 0;    height: 60%;    background: linear-gradient(to right,         transparent 0%,        rgba(77, 145, 106, 0.3) 20%,        rgba(77, 145, 106, 0.5) 50%,        rgba(110, 184, 143, 0.5) 80%,        transparent 100%    );    clip-path: polygon(        0% 80%, 15% 70%, 30% 75%, 45% 40%, 60% 45%, 75% 20%, 90% 25%, 100% 30%    );    animation: chartPulse 3s ease-in-out infinite;}@keyframes chartPulse {    0%, 100% {        opacity: 0.6;    }    50% {        opacity: 1;    }}.chart-bars {    display: flex;    align-items: flex-end;    justify-content: space-around;    height: 100%;    padding: 40px 20px;    gap: 12px;}.bar {    flex: 1;    background: linear-gradient(to top, var(--color-primary) 0%, var(--color-primary-light) 100%);    border-radius: 4px 4px 0 0;    opacity: 0.7;    animation: barGrow 2s ease-out both;}.bar:nth-child(1) { animation-delay: 0.1s; }.bar:nth-child(2) { animation-delay: 0.2s; }.bar:nth-child(3) { animation-delay: 0.3s; }.bar:nth-child(4) { animation-delay: 0.4s; }.bar:nth-child(5) { animation-delay: 0.5s; }.bar:nth-child(6) { animation-delay: 0.6s; }.bar:nth-child(7) { animation-delay: 0.7s; }@keyframes barGrow {    from {        height: 0;        opacity: 0;    }    to {        opacity: 0.7;    }}.section-header {    text-align: center;    margin-bottom: 80px;}.section-header h2 {    font-size: 48px;    font-weight: 800;    margin-bottom: 16px;    letter-spacing: -1px;}.section-header p {    font-size: 20px;    color: var(--color-text-secondary);}.features-intro {    height: 100vh;    max-height: 100vh;    display: flex;    align-items: center;    justify-content: center;    padding: 120px 0;    scroll-snap-align: start;    scroll-snap-stop: always;    opacity: 0;    transform: translateY(50px);    transition: opacity 0.8s ease, transform 0.8s ease;    box-sizing: border-box;}.features-intro.visible {    opacity: 1;    transform: translateY(0);}.fullscreen-features-container {    position: relative;    background-color: transparent;}.fullscreen-feature {    position: relative;    min-height: 100vh;    display: flex;    align-items: center;    justify-content: center;    padding: 100px 0;    opacity: 0;    transform: translateY(60px);    transition: opacity 1.2s cubic-bezier(0.16, 1, 0.3, 1),                transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);    background-color: transparent;}.fullscreen-feature.visible {    opacity: 1;    transform: translateY(0);}.fullscreen-feature.visible {    opacity: 1;    visibility: visible;    pointer-events: auto;}.fullscreen-feature.active {    z-index: 20;}.fullscreen-bg {    position: absolute;    top: 0;    left: 0;    right: 0;    bottom: 0;    background: radial-gradient(circle at 50% 50%, rgba(77, 145, 106, 0.02) 0%, transparent 70%);    opacity: 0;    transition: opacity 1.5s cubic-bezier(0.16, 1, 0.3, 1);    z-index: -1;}.fullscreen-feature.visible .fullscreen-bg {    opacity: 1;}.fullscreen-content {    max-width: 1200px;    width: 100%;    margin: 0 auto;    padding: 80px 40px;    display: flex;    flex-direction: column;    justify-content: center;    align-items: center;    gap: 40px;    box-sizing: border-box;    position: relative;    z-index: 1;}.feature-header {    text-align: center;}.feature-header .feature-icon {    width: 64px;    height: 64px;    background: linear-gradient(135deg, rgba(77, 145, 106, 0.2) 0%, rgba(110, 184, 143, 0.1) 100%);    border: 1px solid rgba(77, 145, 106, 0.4);    border-radius: 12px;    display: flex;    align-items: center;    justify-content: center;    margin: 0 auto 16px;    color: var(--color-primary);}.feature-header.revealed {    opacity: 1;    transform: translateY(0);}.fullscreen-title {    font-size: 48px;    font-weight: 800;    margin: 16px 0 0 0;    letter-spacing: -1.5px;    background: linear-gradient(135deg, var(--color-text) 0%, rgba(255, 255, 255, 0.8) 100%);    -webkit-background-clip: text;    -webkit-text-fill-color: transparent;    background-clip: text;}.feature-description-block {    text-align: center;    max-width: 700px;    margin: 0 auto;}.feature-description-block.revealed {    opacity: 1;    transform: translateY(0);}.fullscreen-description {    font-size: 18px;    color: var(--color-text-secondary);    line-height: 1.6;    margin: 0;}.feature-list-block {    max-width: 650px;    width: 100%;    margin: 0 auto;}.feature-list-block.revealed {    opacity: 1;    transform: translateY(0);}.fullscreen-feature-list {    list-style: none;    display: grid;    grid-template-columns: repeat(2, 1fr);    gap: 16px;    margin: 0;    padding: 0;}.list-item {    display: flex;    align-items: center;    gap: 10px;    font-size: 16px;    color: var(--color-text);}.list-item.revealed {    opacity: 1;    transform: translateX(0);}.check-icon {    display: flex;    align-items: center;    justify-content: center;    width: 24px;    height: 24px;    background: linear-gradient(135deg, rgba(77, 145, 106, 0.2) 0%, rgba(110, 184, 143, 0.1) 100%);    border-radius: 50%;    color: var(--color-primary);    font-weight: 700;    flex-shrink: 0;    font-size: 14px;}.fullscreen-visual {    max-width: 800px;    width: 100%;    max-height: 30vh;    margin: 0 auto;    display: flex;    align-items: center;    justify-content: center;}.fullscreen-visual.revealed {    opacity: 1;    transform: scale(1) translateY(0);}.reveal-element {    opacity: 0;    transform: translateY(40px) scale(0.95);    transition: opacity 1s cubic-bezier(0.16, 1, 0.3, 1),                transform 1s cubic-bezier(0.16, 1, 0.3, 1);}.reveal-element.revealed {    opacity: 1;    transform: translateY(0) scale(1);}.reveal-element[data-delay="0"] {    transition-delay: 0ms;}.reveal-element[data-delay="100"] {    transition-delay: 100ms;}.reveal-element[data-delay="200"] {    transition-delay: 200ms;}.reveal-element[data-delay="300"] {    transition-delay: 300ms;}.reveal-element[data-delay="400"] {    transition-delay: 400ms;}.reveal-element[data-delay="500"] {    transition-delay: 500ms;}@media (max-width: 1024px) {    .fullscreen-title {        font-size: 38px;    }    .fullscreen-description {        font-size: 16px;    }    .fullscreen-feature-list {        grid-template-columns: 1fr;    }    .fullscreen-content {        gap: 32px;    }}@media (max-width: 768px) {    .fullscreen-content {        padding: 60px 24px;        gap: 28px;    }    .fullscreen-title {        font-size: 28px;    }    .fullscreen-description {        font-size: 15px;    }    .list-item {        font-size: 14px;    }    .fullscreen-visual {        max-height: 25vh;    }}.feature-section {    padding: 80px 0;    opacity: 0;    transform: translateY(50px);    transition: opacity 0.8s ease, transform 0.8s ease;}.feature-section.visible {    opacity: 1;    transform: translateY(0);}.feature-grid {    display: grid;    grid-template-columns: 1fr 1fr;    gap: 80px;    align-items: center;}.feature-grid.reverse {    direction: rtl;}.feature-grid.reverse > * {    direction: ltr;}.feature-content {    padding: 40px 0;}.feature-icon {    width: 64px;    height: 64px;    background: linear-gradient(135deg, rgba(77, 145, 106, 0.15) 0%, rgba(110, 184, 143, 0.05) 100%);    border: 1px solid rgba(77, 145, 106, 0.3);    border-radius: 12px;    display: flex;    align-items: center;    justify-content: center;    margin-bottom: 24px;    color: var(--color-primary);}.feature-title {    font-size: 36px;    font-weight: 800;    margin-bottom: 20px;    letter-spacing: -0.5px;}.feature-description {    font-size: 18px;    color: var(--color-text-secondary);    line-height: 1.7;    margin-bottom: 32px;}.feature-list {    list-style: none;    display: flex;    flex-direction: column;    gap: 12px;}.feature-list li {    font-size: 16px;    color: var(--color-text);    display: flex;    align-items: center;    gap: 8px;}.feature-visual {    position: relative;}.cycles-demo {    perspective: 1000px;    max-height: 100%;    display: flex;    flex-direction: column;    align-items: center;    gap: 20px;    transform: scale(0.85);}.connection-illustration {    display: flex;    align-items: center;    justify-content: center;    margin-bottom: 30px;    gap: 20px;}.terminal {    animation: terminal-pulse 3s ease-in-out infinite;}.left-terminal {    animation-delay: 0s;}.right-terminal {    animation-delay: 1.5s;}@keyframes terminal-pulse {    0%, 100% {        opacity: 0.8;        transform: scale(1);    }    50% {        opacity: 1;        transform: scale(1.05);    }}.terminal-line {    animation: terminal-line-pulse 2s ease-in-out infinite;}@keyframes terminal-line-pulse {    0%, 100% {        opacity: 0.4;    }    50% {        opacity: 1;    }}.connection-lines {    position: relative;}.connection-path {    animation: connection-dash 3s linear infinite;}@keyframes connection-dash {    0% {        stroke-dashoffset: 0;    }    100% {        stroke-dashoffset: 50;    }}.connection-pulse {    animation: connection-pulse-move 3s ease-in-out infinite;}@keyframes connection-pulse-move {    0% {        cx: 10;        opacity: 0;    }    50% {        opacity: 1;    }    100% {        cx: 90;        opacity: 0;    }}.cycle-card {    background: linear-gradient(135deg, var(--color-bg-secondary) 0%, var(--color-bg-tertiary) 100%);    border: 1px solid rgba(31, 31, 31, 0.3);    border-radius: 16px;    padding: 24px;    transition: all 0.3s ease;}.cycle-card:hover {    transform: translateY(-8px);    box-shadow: 0 20px 40px rgba(77, 145, 106, 0.15);    border-color: rgba(77, 145, 106, 0.3);}.cycle-card.active-cycle {    border-color: rgba(77, 145, 106, 0.4);    box-shadow: 0 0 30px rgba(77, 145, 106, 0.1);}.cycle-header {    display: flex;    justify-content: space-between;    align-items: center;    margin-bottom: 20px;}.cycle-name {    font-size: 18px;    font-weight: 700;    color: var(--color-text);}.cycle-status {    padding: 4px 12px;    background-color: rgba(77, 145, 106, 0.2);    color: var(--color-primary);    border-radius: 12px;    font-size: 12px;    font-weight: 600;}.cycle-stats {    display: grid;    grid-template-columns: 1fr 1fr;    gap: 16px;    margin-bottom: 20px;}.stat {    display: flex;    flex-direction: column;    gap: 4px;}.stat-label {    font-size: 12px;    color: var(--color-text-secondary);    text-transform: uppercase;    letter-spacing: 0.5px;}.stat-value {    font-size: 24px;    font-weight: 700;}.stat-value.positive {    color: var(--color-positive);}.stat-value.negative {    color: var(--color-negative);}.cycle-chart {    height: 100px;    background-color: var(--color-bg);    border-radius: 8px;    border: 1px solid rgba(31, 31, 31, 0.3);    overflow: hidden;}.mini-chart {    height: 100%;    background: linear-gradient(to right,         transparent 0%,        rgba(77, 145, 106, 0.3) 20%,        rgba(77, 145, 106, 0.5) 50%,        rgba(110, 184, 143, 0.5) 80%,        transparent 100%    );    clip-path: polygon(        0% 80%, 15% 70%, 30% 75%, 45% 40%, 60% 45%, 75% 20%, 90% 25%, 100% 30%    );}.erosion-demo {    display: flex;    justify-content: center;    align-items: center;    padding: 40px;    background: linear-gradient(135deg, var(--color-bg-secondary) 0%, var(--color-bg-tertiary) 100%);    border: 1px solid rgba(31, 31, 31, 0.3);    border-radius: 16px;    position: relative;    overflow: hidden;    max-height: 100%;    width: 100%;    transform: scale(0.85);}.cloud {    position: absolute;    animation: cloud-float 8s ease-in-out infinite;}.cloud-1 {    top: 20%;    left: 10%;    animation-delay: 0s;}.cloud-2 {    bottom: 25%;    right: 15%;    animation-delay: 2s;}@keyframes cloud-float {    0%, 100% {        transform: translate(0, 0);    }    50% {        transform: translate(15px, -10px);    }}.erosion-gauge {    position: relative;    width: 200px;    height: 120px;}.gauge-svg {    width: 100%;    height: 100%;}.gauge-fill {    animation: gaugeAnimate 2s ease-out both;}@keyframes gaugeAnimate {    from {        stroke-dashoffset: 251.2;    }    to {        stroke-dashoffset: 125.6;    }}.gauge-value {    position: absolute;    bottom: 10px;    left: 50%;    transform: translateX(-50%);    font-size: 32px;    font-weight: 800;    color: var(--color-primary);}.accounting-demo {    background: linear-gradient(135deg, var(--color-bg-secondary) 0%, var(--color-bg-tertiary) 100%);    border: 1px solid rgba(31, 31, 31, 0.3);    border-radius: 16px;    padding: 20px;    max-height: 100%;    width: 100%;    overflow: auto;    transform: scale(0.85);}.accounting-table {    display: flex;    flex-direction: column;    gap: 12px;}.table-row {    display: grid;    grid-template-columns: 1fr 1.5fr 1fr;    gap: 16px;    padding: 16px;    background-color: var(--color-bg);    border-radius: 8px;    align-items: center;    transition: all 0.2s ease;}.table-row:hover {    background-color: var(--color-bg-secondary);    transform: translateX(4px);}.table-row.header {    background-color: transparent;    font-weight: 700;    font-size: 12px;    text-transform: uppercase;    letter-spacing: 0.5px;    color: var(--color-text-secondary);}.table-row span:last-child {    text-align: right;    font-weight: 600;}.positive {    color: var(--color-positive);}.negative {    color: var(--color-negative);}.database-demo {    background: linear-gradient(135deg, var(--color-bg-secondary) 0%, var(--color-bg-tertiary) 100%);    border: 1px solid rgba(31, 31, 31, 0.3);    border-radius: 16px;    padding: 32px;    max-height: 100%;    width: 100%;    transform: scale(0.85);}.database-grid {    display: grid;    grid-template-columns: 1fr 1fr;    gap: 16px;}.db-card {    background-color: var(--color-bg);    border: 1px solid rgba(31, 31, 31, 0.3);    border-radius: 12px;    padding: 24px;    display: flex;    flex-direction: column;    align-items: center;    gap: 12px;    transition: all 0.3s ease;    cursor: pointer;}.db-card:hover {    transform: translateY(-4px);    border-color: rgba(77, 145, 106, 0.3);    background-color: var(--color-bg-secondary);    box-shadow: 0 10px 30px rgba(77, 145, 106, 0.1);}.db-icon {    font-size: 32px;}.db-card span {    font-size: 14px;    font-weight: 600;    color: var(--color-text);}.stats-section {    min-height: auto;    display: flex;    align-items: center;    justify-content: center;    padding: 80px 0;    margin-top: 0;    background: transparent;    border-top: 1px solid rgba(31, 31, 31, 0.3);    border-bottom: 1px solid rgba(31, 31, 31, 0.3);    opacity: 0;    transform: translateY(50px);    transition: opacity 0.8s ease, transform 0.8s ease;    box-sizing: border-box;}.stats-section.visible {    opacity: 1;    transform: translateY(0);}.stats-grid {    display: grid;    grid-template-columns: repeat(4, 1fr);    gap: 40px;}.stat-card {    text-align: center;    padding: 40px 20px;    background: linear-gradient(135deg, var(--color-bg-secondary) 0%, var(--color-bg-tertiary) 100%);    border: 1px solid rgba(31, 31, 31, 0.3);    border-radius: 16px;    transition: all 0.3s ease;}.stat-card:hover {    transform: translateY(-8px);    border-color: rgba(77, 145, 106, 0.3);    box-shadow: 0 20px 40px rgba(77, 145, 106, 0.1);}.stat-number {    font-size: 48px;    font-weight: 800;    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);    -webkit-background-clip: text;    -webkit-text-fill-color: transparent;    background-clip: text;    margin-bottom: 8px;}.stat-label {    font-size: 16px;    color: var(--color-text-secondary);    text-transform: uppercase;    letter-spacing: 1px;}.faq-section {    padding: 120px 0;    background: transparent;    position: relative;}.faq-section::before {    content: '';    position: absolute;    top: 0;    left: 50%;    transform: translateX(-50%);    width: 600px;    height: 600px;    background: radial-gradient(circle, rgba(77, 145, 106, 0.03) 0%, transparent 70%);    pointer-events: none;}.faq-list {    max-width: 900px;    margin: 60px auto 0;    position: relative;    z-index: 1;}.faq-item {    background: linear-gradient(135deg, rgba(26, 26, 26, 0.6) 0%, rgba(18, 18, 18, 0.4) 100%);    border: none;    border-radius: 16px;    margin-bottom: 20px;    overflow: hidden;    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);    backdrop-filter: blur(10px);    position: relative;}.faq-item:hover {    background: linear-gradient(135deg, rgba(26, 26, 26, 0.8) 0%, rgba(18, 18, 18, 0.6) 100%);    transform: translateY(-4px);    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);}.faq-item.active {    background: linear-gradient(135deg, rgba(26, 26, 26, 0.95) 0%, rgba(18, 18, 18, 0.8) 100%);    box-shadow: 0 12px 40px rgba(77, 145, 106, 0.15);}.faq-question {    width: 100%;    display: flex;    align-items: center;    justify-content: space-between;    gap: 24px;    padding: 24px 32px;    background: none;    border: none;    color: var(--color-text);    font-size: 18px;    font-weight: 600;    text-align: left;    cursor: pointer;    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);    position: relative;    font-family: 'Inter', sans-serif;}.faq-question span {    flex: 1;    transition: color 0.3s ease;}.faq-question:hover span {    color: var(--color-primary-light);}.faq-item.active .faq-question span {    color: var(--color-primary-light);}.faq-icon {    flex-shrink: 0;    width: 32px;    height: 32px;    display: flex;    align-items: center;    justify-content: center;    background: rgba(77, 145, 106, 0.12);    border: none;    border-radius: 8px;    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);    color: var(--color-primary);}.faq-item:hover .faq-icon {    background: rgba(77, 145, 106, 0.18);}.faq-item.active .faq-icon {    transform: rotate(180deg);    background: rgba(77, 145, 106, 0.25);    box-shadow: 0 0 20px rgba(77, 145, 106, 0.2);}.faq-answer {    max-height: 0;    overflow: hidden;    transition: max-height 0.5s cubic-bezier(0.16, 1, 0.3, 1),                padding 0.5s cubic-bezier(0.16, 1, 0.3, 1),                opacity 0.4s ease 0.1s;    opacity: 0;}.faq-item.active .faq-answer {    max-height: 1000px;    padding: 0 32px 24px;    opacity: 1;}.faq-answer p {    color: rgba(255, 255, 255, 0.85);    line-height: 1.8;    margin: 0;    margin-top: 12px;    font-size: 16px;}.faq-notice-link {    display: block;    margin-top: 16px;    color: var(--color-primary);    text-decoration: underline;    text-underline-offset: 3px;    font-weight: 500;    transition: color 0.2s ease;}.faq-notice-link:hover {    color: var(--color-primary-light);}.highlight-orange {    color: #ffbd2e;    font-weight: 600;}.faq-item {    opacity: 0;    transform: translateY(30px);    animation: fadeInUp 0.6s ease forwards;}.faq-item:nth-child(1) { animation-delay: 0.1s; }.faq-item:nth-child(2) { animation-delay: 0.2s; }.faq-item:nth-child(3) { animation-delay: 0.3s; }.faq-item:nth-child(4) { animation-delay: 0.4s; }.faq-item:nth-child(5) { animation-delay: 0.5s; }.faq-item:nth-child(6) { animation-delay: 0.6s; }@keyframes fadeInUp {    to {        opacity: 1;        transform: translateY(0);    }}.cta-section {    min-height: auto;    display: flex;    align-items: center;    justify-content: center;    padding: 80px 0;    margin-top: 0;    background: transparent;    opacity: 0;    transform: translateY(50px);    transition: opacity 0.8s ease, transform 0.8s ease;    box-sizing: border-box;}.cta-section.visible {    opacity: 1;    transform: translateY(0);}.cta-content {    text-align: center;    max-width: 800px;    margin: 0 auto;    padding: 80px 60px;    background: linear-gradient(135deg, var(--color-bg-secondary) 0%, var(--color-bg-tertiary) 100%);    border: 1px solid rgba(31, 31, 31, 0.3);    border-radius: 24px;    position: relative;    overflow: hidden;}.cta-content::before {    content: '';    position: absolute;    top: 0;    left: 0;    right: 0;    bottom: 0;    background: radial-gradient(circle at center, rgba(77, 145, 106, 0.1) 0%, transparent 70%);    pointer-events: none;}.cta-title {    font-size: 48px;    font-weight: 800;    margin-bottom: 20px;    letter-spacing: -1px;    position: relative;}.cta-description {    font-size: 20px;    color: var(--color-text-secondary);    margin-bottom: 40px;    line-height: 1.7;    position: relative;}.cta-actions {    display: flex;    gap: 16px;    justify-content: center;    position: relative;}.btn-cta-primary {    padding: 16px 32px;    font-size: 16px;    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);    color: white;    box-shadow: 0 8px 32px rgba(77, 145, 106, 0.3);}.btn-cta-primary:hover {    transform: translateY(-2px);    box-shadow: 0 12px 40px rgba(77, 145, 106, 0.5);}.btn-cta-secondary {    padding: 16px 32px;    font-size: 16px;    color: var(--color-text);    border: 1px solid rgba(255, 255, 255, 0.1);}.btn-cta-secondary:hover {    border-color: rgba(77, 145, 106, 0.3);    background: rgba(77, 145, 106, 0.05);}.footer {    min-height: auto;    display: block;    padding: 80px 0 0;    margin-top: 0;    position: relative;    background: linear-gradient(180deg, transparent 0%, rgba(77, 145, 106, 0.02) 100%);}.footer::before {    content: '';    position: absolute;    top: 0;    left: 50%;    transform: translateX(-50%);    width: min(90%, 1200px);    height: 1px;    background: linear-gradient(90deg, transparent 0%, var(--color-primary) 30%, var(--color-primary) 70%, transparent 100%);    opacity: 0.4;}.footer-grid {    display: grid;    grid-template-columns: 1.5fr 3fr;    gap: 80px;    margin-bottom: 48px;    padding-bottom: 48px;    border-bottom: 1px solid rgba(77, 145, 106, 0.1);}.footer-brand {    display: flex;    flex-direction: column;    gap: 20px;}.footer-logo {    display: flex;    align-items: center;    gap: 12px;}.footer-logo img {    height: 31px;    width: 177px;    object-fit: contain;    filter: drop-shadow(0 0 20px rgba(77, 145, 106, 0.15));}.footer-brand p {    color: var(--color-text-secondary);    font-size: 14px;    line-height: 1.7;    max-width: 260px;    font-weight: 400;}.footer-links {    display: grid;    grid-template-columns: repeat(3, 1fr);    gap: 48px;}.footer-column {    display: flex;    flex-direction: column;    gap: 14px;}.footer-column h4 {    font-size: 11px;    font-weight: 600;    margin-bottom: 8px;    color: var(--color-primary);    text-transform: uppercase;    letter-spacing: 0.12em;    position: relative;    padding-bottom: 12px;}.footer-column h4::after {    content: '';    position: absolute;    bottom: 0;    left: 0;    width: 24px;    height: 2px;    background: linear-gradient(90deg, var(--color-primary), transparent);    border-radius: 1px;}.footer-column a {    font-size: 13px;    color: var(--color-text-secondary);    text-decoration: none;    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);    position: relative;    padding-left: 0;}.footer-column a:hover {    color: var(--color-text);    padding-left: 8px;}.footer-column a::before {    content: '';    position: absolute;    left: -8px;    top: 50%;    transform: translateY(-50%);    width: 3px;    height: 3px;    background: var(--color-primary);    border-radius: 50%;    opacity: 0;    transition: opacity 0.25s ease;}.footer-column a:hover::before {    opacity: 1;}.footer-disclaimer {    margin-top: 0;    padding: 32px;    background: linear-gradient(135deg, rgba(18, 18, 18, 0.8) 0%, rgba(26, 26, 26, 0.6) 100%);    border: 1px solid rgba(77, 145, 106, 0.12);    border-radius: 12px;    position: relative;    overflow: hidden;}.footer-disclaimer::before {    content: '';    position: absolute;    top: 0;    left: 0;    right: 0;    height: 1px;    background: linear-gradient(90deg, transparent, rgba(77, 145, 106, 0.3), transparent);}.footer-disclaimer::after {    content: '';    position: absolute;    top: 0;    left: 0;    width: 60px;    height: 60px;    background: radial-gradient(circle at top left, rgba(77, 145, 106, 0.08), transparent 70%);    pointer-events: none;}.footer-disclaimer .disclaimer-intro {    font-size: 13px;    color: rgba(255, 255, 255, 0.7);    line-height: 1.8;    margin-bottom: 16px;    padding-bottom: 16px;    border-bottom: 1px solid rgba(77, 145, 106, 0.1);    text-align: center;}.footer-disclaimer p {    color: rgba(255, 255, 255, 0.5);    font-size: 12px;    line-height: 1.8;    margin-bottom: 12px;    text-align: justify;    text-align-last: center;}.footer-disclaimer p:last-child {    margin-bottom: 0;}.footer-disclaimer p strong {    color: rgba(255, 255, 255, 0.85);    font-weight: 600;}.footer-disclaimer h5 {    color: var(--color-primary);    font-size: 10px;    font-weight: 700;    margin: 28px 0 14px 0;    text-transform: uppercase;    letter-spacing: 0.15em;    display: flex;    align-items: center;    justify-content: center;    gap: 12px;}.footer-disclaimer h5::before {    content: '';    flex: 1;    height: 1px;    background: linear-gradient(90deg, transparent, rgba(77, 145, 106, 0.3));}.footer-disclaimer h5::after {    content: '';    flex: 1;    height: 1px;    background: linear-gradient(90deg, rgba(77, 145, 106, 0.3), transparent);}.footer-disclaimer h5:first-of-type {    margin-top: 20px;}.footer-bottom {    padding: 24px 20px;    margin-top: 48px;    border-top: none;    text-align: center;    background: rgba(0, 0, 0, 0.4);    margin-left: calc(-50vw + 50%);    margin-right: calc(-50vw + 50%);    width: 100vw;}.footer-bottom p {    color: rgba(255, 255, 255, 0.35);    font-size: 12px;    letter-spacing: 0.03em;    white-space: nowrap;}@media (max-width: 1024px) {    .feature-grid {        grid-template-columns: 1fr;        gap: 60px;    }    .feature-grid.reverse {        direction: ltr;    }    .stats-grid {        grid-template-columns: repeat(2, 1fr);    }}@media (max-width: 768px) {    .nav-links {        display: none;    }    .nav-actions {        display: none;    }    .mobile-menu-toggle {        display: flex;    }    .nav-container {        padding: 12px 16px;    }    .nav-logo img {        height: 26px;        width: auto;    }    .hero {        padding: 100px 0 60px;    }    .hero-title-main {        font-size: 36px;    }    .hero-title-gradient {        font-size: 28px;    }    .hero-title {        gap: 12px;    }    .hero-description {        font-size: 15px;        margin-bottom: 32px;    }    .hero-actions {        flex-direction: column;        width: 100%;    }    .hero-actions .btn {        width: 100%;    }    .hero-content {        margin-bottom: 40px;    }    .section-header h2 {        font-size: 28px;        line-height: 1.3;    }    .section-header {        margin-bottom: 48px;    }    .section-header p {        font-size: 16px;    }    .feature-title {        font-size: 24px;    }    .feature-description {        font-size: 15px;    }    .stats-grid {        grid-template-columns: 1fr;        gap: 16px;    }    .stat-card {        padding: 24px 16px;    }    .stat-number {        font-size: 36px;    }    .footer-grid {        grid-template-columns: 1fr;        gap: 32px;    }    .footer-links {        grid-template-columns: 1fr 1fr;        gap: 24px;    }    .footer {        padding: 48px 0 0;    }    .footer-disclaimer {        padding: 24px;        margin-top: 0;    }    .footer-bottom {        padding: 20px 0;        margin-top: 32px;    }    .footer-column a::before {        display: none;    }    .footer-column a:hover {        padding-left: 0;    }    .cta-content {        padding: 40px 24px;        border-radius: 16px;    }    .cta-title {        font-size: 26px;    }    .cta-description {        font-size: 15px;        margin-bottom: 32px;    }    .faq-question {        padding: 20px;        font-size: 16px;        gap: 16px;    }    .faq-item.active .faq-answer {        padding: 0 20px 20px;    }    .faq-answer p {        font-size: 14px;    }    .faq-icon {        width: 28px;        height: 28px;    }    .floating-element {        display: none;    }    .container {        padding: 0 16px;    }}.problems-section {    padding: 120px 0;    background: transparent;    position: relative;}.problems-section::before {    content: '';    position: absolute;    top: 0;    left: 50%;    transform: translateX(-50%);    width: 800px;    height: 800px;    background: radial-gradient(circle, rgba(77, 145, 106, 0.03) 0%, transparent 70%);    pointer-events: none;}.problems-grid {    display: grid;    grid-template-columns: repeat(3, 1fr);    gap: 32px;    margin-bottom: 60px;}.problem-card {    background: linear-gradient(135deg, var(--color-bg-secondary) 0%, var(--color-bg-tertiary) 100%);    border: 1px solid rgba(31, 31, 31, 0.3);    border-radius: 16px;    padding: 32px;    position: relative;    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);    opacity: 0;    transform: translateY(40px);}.problem-card.revealed {    opacity: 1;    transform: translateY(0);}.problem-card:hover {    transform: translateY(-8px);    border-color: rgba(77, 145, 106, 0.3);    box-shadow: 0 20px 40px rgba(77, 145, 106, 0.1);}.problem-number {    width: 48px;    height: 48px;    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);    border-radius: 12px;    display: flex;    align-items: center;    justify-content: center;    font-size: 24px;    font-weight: 800;    color: white;    margin-bottom: 20px;}.problem-title {    font-size: 20px;    font-weight: 700;    color: var(--color-text);    margin-bottom: 12px;    line-height: 1.4;}.problem-description {    font-size: 15px;    color: var(--color-text-secondary);    line-height: 1.7;}.section-cta {    display: flex;    flex-direction: column;    align-items: center;    gap: 20px;    margin-top: 40px;}.roadmap-section {    padding: 120px 0;    background: transparent;    position: relative;}.roadmap-section::before {    content: '';    position: absolute;    top: 50%;    left: 50%;    transform: translate(-50%, -50%);    width: 1000px;    height: 1000px;    background: radial-gradient(circle, rgba(77, 145, 106, 0.04) 0%, transparent 70%);    pointer-events: none;}.roadmap-steps {    display: flex;    flex-direction: column;    gap: 40px;    max-width: 900px;    margin: 0 auto 60px;}.roadmap-step {    display: grid;    grid-template-columns: auto 1fr auto;    gap: 32px;    align-items: start;    background: linear-gradient(135deg, var(--color-bg-tertiary) 0%, var(--color-bg) 100%);    border: 1px solid rgba(31, 31, 31, 0.3);    border-radius: 16px;    padding: 32px;    position: relative;    opacity: 0;    transform: translateY(40px);    transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);}.roadmap-step.revealed {    opacity: 1;    transform: translateY(0);}.roadmap-step:hover {    border-color: rgba(77, 145, 106, 0.3);    box-shadow: 0 20px 40px rgba(77, 145, 106, 0.1);}.step-number {    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);    color: white;    font-size: 12px;    font-weight: 700;    text-transform: uppercase;    letter-spacing: 1px;    padding: 8px 16px;    border-radius: 20px;    white-space: nowrap;}.step-content {    flex: 1;}.step-title {    font-size: 22px;    font-weight: 700;    color: var(--color-text);    margin-bottom: 12px;}.step-description {    font-size: 16px;    color: var(--color-text-secondary);    line-height: 1.7;}.step-visual {    display: flex;    align-items: center;    justify-content: center;}.step-icon {    width: 80px;    height: 80px;    background: linear-gradient(135deg, rgba(77, 145, 106, 0.15) 0%, rgba(110, 184, 143, 0.05) 100%);    border: 1px solid rgba(77, 145, 106, 0.3);    border-radius: 16px;    display: flex;    align-items: center;    justify-content: center;    color: var(--color-primary);}.platforms-bar {    padding: 0 0 48px;    position: relative;    z-index: 1;}.platforms-bar-inner {    display: flex;    align-items: center;    justify-content: center;    gap: 24px;    border-top: 1px solid rgba(255, 255, 255, 0.05);    border-bottom: 1px solid rgba(255, 255, 255, 0.05);    padding: 18px 0;}.platforms-bar-item {    display: flex;    align-items: center;    gap: 10px;}.platforms-bar-item img {    width: 24px;    height: 24px;    border-radius: 5px;}.platforms-bar-name {    font-size: 13px;    font-weight: 500;    color: rgba(255, 255, 255, 0.7);    letter-spacing: -0.01em;    white-space: nowrap;}.platforms-bar-sep {    width: 3px;    height: 3px;    border-radius: 50%;    background: rgba(255, 255, 255, 0.15);    flex-shrink: 0;}.platforms-bar-item--upcoming {    opacity: 0.45;}.platforms-bar-tag {    font-size: 10px;    font-weight: 600;    text-transform: uppercase;    letter-spacing: 0.04em;    color: var(--color-primary);    background: rgba(99, 102, 241, 0.12);    padding: 2px 7px;    border-radius: 4px;    white-space: nowrap;    line-height: 1;}.platforms-bar-soon {    font-size: 12px;    color: var(--color-text-secondary);    opacity: 0.35;    white-space: nowrap;    font-style: italic;}@media (max-width: 520px) {    .platforms-bar {        padding: 0 0 32px;    }    .platforms-bar-inner {        gap: 14px;        padding: 14px 0;        flex-wrap: wrap;        justify-content: center;    }    .platforms-bar-soon {        width: 100%;        text-align: center;    }    .platforms-bar-soon ~ .platforms-bar-sep {        display: none;    }}.for-you-section {    padding: 120px 0;    background: transparent;    position: relative;}.for-you-grid {    display: grid;    grid-template-columns: 2fr 1fr;    gap: 32px;    max-width: 1000px;    margin: 0 auto 60px;}.for-you-card {    background: linear-gradient(135deg, var(--color-bg-secondary) 0%, var(--color-bg-tertiary) 100%);    border: 1px solid rgba(31, 31, 31, 0.3);    border-radius: 16px;    padding: 32px;    opacity: 0;    transform: translateY(40px);    transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);}.for-you-card.revealed {    opacity: 1;    transform: translateY(0);}.for-you-card.for-you-yes:hover {    border-color: rgba(77, 145, 106, 0.3);    box-shadow: 0 20px 40px rgba(77, 145, 106, 0.1);}.for-you-card.for-you-no:hover {    border-color: rgba(248, 81, 73, 0.3);    box-shadow: 0 20px 40px rgba(248, 81, 73, 0.1);}.for-you-yes {    border-color: rgba(77, 145, 106, 0.2);}.for-you-no {    border-color: rgba(248, 81, 73, 0.2);}.for-you-header {    margin-bottom: 24px;}.for-you-badge {    display: inline-block;    padding: 8px 16px;    border-radius: 20px;    font-size: 14px;    font-weight: 600;}.for-you-badge.yes {    background: rgba(77, 145, 106, 0.15);    color: var(--color-primary-light);}.for-you-badge.no {    background: rgba(248, 81, 73, 0.15);    color: var(--color-negative);}.for-you-list {    list-style: none;    display: flex;    flex-direction: column;    gap: 16px;}.for-you-list li {    display: flex;    align-items: flex-start;    gap: 12px;    font-size: 15px;    color: var(--color-text);    line-height: 1.6;}.for-you-list .check-icon {    flex-shrink: 0;    width: 24px;    height: 24px;    border-radius: 50%;    display: flex;    align-items: center;    justify-content: center;    font-size: 14px;    font-weight: 700;    margin-top: 2px;}.for-you-list .check-icon.yes {    background: rgba(77, 145, 106, 0.2);    color: var(--color-primary-light);}.for-you-list .check-icon.no {    background: rgba(248, 81, 73, 0.2);    color: var(--color-negative);}@media (max-width: 1024px) {    .problems-grid {        grid-template-columns: 1fr;        gap: 24px;    }    .roadmap-step {        grid-template-columns: 1fr;        gap: 20px;    }    .step-visual {        order: -1;    }    .step-icon {        width: 64px;        height: 64px;    }    .for-you-grid {        grid-template-columns: 1fr;    }}@media (max-width: 768px) {    .problems-section,    .roadmap-section,    .for-you-section {        padding: 60px 0;    }    .problem-card {        padding: 24px;    }    .problem-title {        font-size: 18px;    }    .problem-number {        width: 40px;        height: 40px;        font-size: 20px;    }    .roadmap-step {        padding: 20px;    }    .step-title {        font-size: 18px;    }    .step-description {        font-size: 14px;    }    .step-number {        font-size: 11px;        padding: 6px 12px;    }    .for-you-card {        padding: 20px;    }    .for-you-list li {        font-size: 14px;    }    .section-cta {        margin-top: 32px;    }    .btn-hero {        padding: 14px 28px;        font-size: 15px;    }    .faq-section {        padding: 60px 0;    }    .faq-list {        margin-top: 40px;    }}@media (max-width: 480px) {    .hero {        padding: 90px 0 36px;    }    .hero-title-main {        font-size: 28px;        letter-spacing: -1px;    }    .hero-title-gradient {        font-size: 22px;        letter-spacing: -0.5px;    }    .hero-title {        gap: 8px;    }    .hero-description {        font-size: 14px;        line-height: 1.6;    }    .section-header h2 {        font-size: 24px;    }    .section-header {        margin-bottom: 36px;    }    .problem-card {        padding: 20px;    }    .problem-title {        font-size: 16px;    }    .problem-description {        font-size: 14px;    }    .roadmap-step {        padding: 16px;        gap: 16px;    }    .step-title {        font-size: 16px;    }    .step-icon {        width: 56px;        height: 56px;    }    .step-icon svg {        width: 32px;        height: 32px;    }    .for-you-card {        padding: 16px;    }    .for-you-badge {        font-size: 13px;        padding: 6px 12px;    }    .for-you-list li {        font-size: 13px;    }    .for-you-list .check-icon {        width: 20px;        height: 20px;        font-size: 12px;    }    .cta-content {        padding: 32px 20px;    }    .cta-title {        font-size: 22px;    }    .cta-description {        font-size: 14px;    }    .faq-question {        padding: 16px;        font-size: 15px;    }    .faq-item.active .faq-answer {        padding: 0 16px 16px;    }    .footer-links {        grid-template-columns: 1fr;        gap: 20px;    }    .footer-column h4 {        font-size: 13px;    }    .footer-column a {        font-size: 13px;    }    .footer-brand p {        font-size: 13px;    }    .btn-hero {        padding: 12px 24px;        font-size: 14px;    }    .btn-cta-primary {        padding: 12px 24px;        font-size: 14px;    }}.cookie-overlay {    position: fixed;    inset: 0;    z-index: 99999;    display: flex;    align-items: center;    justify-content: center;    background: rgba(0, 0, 0, 0.7);    backdrop-filter: blur(8px);    -webkit-backdrop-filter: blur(8px);    opacity: 0;    visibility: hidden;    transition: opacity 0.4s ease, visibility 0.4s ease;    padding: 20px;}.cookie-overlay.visible {    opacity: 1;    visibility: visible;}.cookie-modal {    background: linear-gradient(165deg, rgba(26, 26, 26, 0.97) 0%, rgba(18, 18, 18, 0.99) 100%);    border: 1px solid rgba(77, 145, 106, 0.15);    border-radius: 20px;    padding: 40px 36px 32px;    max-width: 420px;    width: 100%;    text-align: center;    box-shadow:        0 0 0 1px rgba(255, 255, 255, 0.04),        0 24px 48px rgba(0, 0, 0, 0.5),        0 0 80px rgba(77, 145, 106, 0.06);    transform: scale(0.92) translateY(20px);    opacity: 0;    transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.4s ease;}.cookie-overlay.visible .cookie-modal {    transform: scale(1) translateY(0);    opacity: 1;}.cookie-modal-icon {    width: 56px;    height: 56px;    margin: 0 auto 20px;    display: flex;    align-items: center;    justify-content: center;    border-radius: 16px;    background: linear-gradient(135deg, rgba(77, 145, 106, 0.15) 0%, rgba(110, 184, 143, 0.08) 100%);    border: 1px solid rgba(77, 145, 106, 0.2);    color: var(--color-primary-light);}.cookie-modal-title {    font-size: 20px;    font-weight: 700;    color: var(--color-text);    margin-bottom: 10px;    letter-spacing: -0.01em;}.cookie-modal-text {    font-size: 14px;    color: var(--color-text-secondary);    line-height: 1.6;    margin-bottom: 28px;}.cookie-modal-actions {    display: flex;    gap: 12px;    margin-bottom: 16px;}.cookie-modal-actions .cookie-btn {    flex: 1;}.cookie-btn {    padding: 13px 20px;    border-radius: 12px;    font-size: 14px;    font-weight: 600;    cursor: pointer;    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);    border: none;    letter-spacing: 0.01em;}.cookie-btn-accept {    background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-light) 100%);    color: white;    box-shadow: 0 4px 16px rgba(77, 145, 106, 0.3);}.cookie-btn-accept:hover {    box-shadow: 0 6px 24px rgba(77, 145, 106, 0.45);    transform: translateY(-1px);}.cookie-btn-reject {    background: rgba(255, 255, 255, 0.04);    color: var(--color-text-secondary);    border: 1px solid rgba(255, 255, 255, 0.1);}.cookie-btn-reject:hover {    background: rgba(255, 255, 255, 0.08);    color: var(--color-text);    border-color: rgba(255, 255, 255, 0.2);}.cookie-modal-link {    font-size: 12px;    color: var(--color-text-secondary);    text-decoration: none;    opacity: 0.7;    transition: opacity 0.2s ease, color 0.2s ease;}.cookie-modal-link:hover {    opacity: 1;    color: var(--color-primary-light);}@media (max-width: 768px) {    .cookie-overlay {        align-items: flex-end;        padding: 0;    }    .cookie-modal {        border-radius: 20px 20px 0 0;        padding: 32px 24px 28px;        max-width: 100%;    }    .cookie-modal-icon {        width: 48px;        height: 48px;        margin-bottom: 16px;    }    .cookie-modal-title {        font-size: 18px;    }    .cookie-modal-text {        font-size: 13px;        margin-bottom: 24px;    }    .cookie-btn {        min-height: 48px;        font-size: 15px;        padding: 14px 16px;    }}.legal-page {    min-height: 100vh;    padding-top: 100px;    padding-bottom: 80px;}.legal-header {    position: fixed;    top: 0;    left: 0;    right: 0;    z-index: 1000;    background: rgba(12, 12, 12, 0.95);    backdrop-filter: blur(12px);    border-bottom: 1px solid var(--color-border);    padding: 16px 24px;}.legal-header-content {    max-width: 1280px;    margin: 0 auto;    display: flex;    align-items: center;    justify-content: space-between;}.legal-header-brand {    display: flex;    align-items: center;    gap: 12px;    text-decoration: none;    color: var(--color-text);}.legal-header-brand .logo-icon {    fill: var(--color-text);}.legal-header-brand .logo-icon path {    fill: var(--color-text);}.legal-header-brand .logo-text {    font-size: 18px;    font-weight: 600;    color: var(--color-text);}.legal-header-brand .logo-highlight {    color: var(--color-primary);}.legal-back-link {    display: flex;    align-items: center;    gap: 8px;    color: var(--color-text-secondary);    text-decoration: none;    font-size: 14px;    font-weight: 500;    transition: color 0.2s ease;}.legal-back-link:hover {    color: var(--color-primary-light);}.legal-back-link svg {    width: 16px;    height: 16px;}.legal-container {    max-width: 800px;    margin: 0 auto;    padding: 0 24px;}.legal-title {    font-size: 36px;    font-weight: 700;    color: var(--color-text);    margin-bottom: 8px;    letter-spacing: -0.5px;}.legal-subtitle {    font-size: 16px;    color: var(--color-text-secondary);    margin-bottom: 8px;}.legal-meta {    font-size: 13px;    color: var(--color-text-secondary);    margin-bottom: 40px;    padding-bottom: 24px;    border-bottom: 1px solid var(--color-border);}.legal-content {    color: var(--color-text-secondary);    line-height: 1.7;}.legal-content h2 {    font-size: 24px;    font-weight: 600;    color: var(--color-text);    margin-top: 48px;    margin-bottom: 16px;    letter-spacing: -0.3px;}.legal-content h3 {    font-size: 18px;    font-weight: 600;    color: var(--color-text);    margin-top: 32px;    margin-bottom: 12px;}.legal-content h4 {    font-size: 16px;    font-weight: 600;    color: var(--color-text);    margin-top: 24px;    margin-bottom: 10px;}.legal-content p {    margin-bottom: 16px;    font-size: 15px;}.legal-content ul,.legal-content ol {    margin-bottom: 16px;    padding-left: 24px;}.legal-content li {    margin-bottom: 8px;    font-size: 15px;}.legal-content a {    color: var(--color-primary-light);    text-decoration: none;    transition: color 0.2s ease;}.legal-content a:hover {    color: var(--color-primary);    text-decoration: underline;}.legal-content strong {    color: var(--color-text);    font-weight: 600;}.legal-content .notice-box {    background: rgba(77, 145, 106, 0.1);    border: 1px solid rgba(77, 145, 106, 0.3);    border-radius: 8px;    padding: 16px 20px;    margin: 24px 0;}.legal-content .notice-box p {    margin-bottom: 0;    color: var(--color-text);}.legal-content .warning-box {    background: rgba(248, 81, 73, 0.1);    border: 1px solid rgba(248, 81, 73, 0.3);    border-radius: 8px;    padding: 16px 20px;    margin: 24px 0;}.legal-content .warning-box p {    margin-bottom: 0;    color: var(--color-text);}.legal-content table {    width: 100%;    border-collapse: collapse;    margin: 24px 0;    font-size: 14px;}.legal-content th,.legal-content td {    padding: 12px 16px;    text-align: left;    border-bottom: 1px solid var(--color-border);}.legal-content th {    background: var(--color-bg-secondary);    color: var(--color-text);    font-weight: 600;}.legal-content td {    color: var(--color-text-secondary);}.legal-footer {    margin-top: 60px;    padding-top: 32px;    border-top: 1px solid var(--color-border);}.legal-footer-brand {    display: flex;    align-items: center;    gap: 12px;    margin-bottom: 16px;    text-decoration: none;    color: var(--color-text);}.legal-footer-brand .logo-icon path {    fill: var(--color-text);}.legal-footer-brand .logo-text {    font-size: 16px;    font-weight: 600;}.legal-footer-brand .logo-highlight {    color: var(--color-primary);}.legal-footer p {    font-size: 13px;    color: var(--color-text-secondary);    margin-bottom: 8px;}.legal-footer a {    color: var(--color-primary-light);    text-decoration: none;}.legal-footer a:hover {    text-decoration: underline;}@media (max-width: 768px) {    .legal-page {        padding-top: 80px;    }    .legal-title {        font-size: 28px;    }    .legal-content h2 {        font-size: 20px;        margin-top: 36px;    }    .legal-content h3 {        font-size: 16px;    }    .legal-content table {        display: block;        overflow-x: auto;    }}.legal-download {    display: inline-flex;    align-items: center;    gap: 10px;    padding: 12px 20px;    background: var(--color-bg-secondary);    border: 1px solid var(--color-border);    border-radius: 8px;    color: var(--color-text);    text-decoration: none;    font-size: 14px;    font-weight: 500;    transition: all 0.2s ease;    margin-bottom: 32px;}.legal-download:hover {    background: var(--color-bg-tertiary);    border-color: var(--color-primary);    color: var(--color-primary-light);    transform: translateY(-1px);}.legal-download svg {    width: 18px;    height: 18px;    flex-shrink: 0;}.legal-download-info {    display: flex;    flex-direction: column;    gap: 2px;}.legal-download-label {    font-weight: 600;}.legal-download-meta {    font-size: 12px;    color: var(--color-text-secondary);}.contact-section {    padding: 120px 0;    background: transparent;    position: relative;}.contact-section::before {    content: '';    position: absolute;    top: 50%;    left: 50%;    transform: translate(-50%, -50%);    width: 800px;    height: 800px;    background: radial-gradient(circle, rgba(77, 145, 106, 0.04) 0%, transparent 70%);    pointer-events: none;}.contact-content {    display: grid;    grid-template-columns: 1.5fr 1fr;    gap: 60px;    max-width: 1100px;    margin: 0 auto;    position: relative;    z-index: 1;}.contact-form {    background: linear-gradient(135deg, var(--color-bg-secondary) 0%, var(--color-bg-tertiary) 100%);    border: 1px solid rgba(31, 31, 31, 0.3);    border-radius: 16px;    padding: 40px;}.form-row {    display: grid;    grid-template-columns: 1fr 1fr;    gap: 20px;}.form-group {    margin-bottom: 24px;}.form-group label {    display: block;    font-size: 14px;    font-weight: 600;    color: var(--color-text);    margin-bottom: 8px;}.form-group input,.form-group select,.form-group textarea {    width: 100%;    padding: 14px 16px;    font-size: 15px;    font-family: 'Inter', sans-serif;    color: var(--color-text);    background-color: var(--color-bg);    border: 1px solid var(--color-border);    border-radius: 10px;    transition: all 0.3s ease;    outline: none;}.form-group input::placeholder,.form-group textarea::placeholder {    color: var(--color-text-secondary);    opacity: 0.6;}.form-group input:focus,.form-group select:focus,.form-group textarea:focus {    border-color: var(--color-primary);    box-shadow: 0 0 0 3px rgba(77, 145, 106, 0.15);}.form-group input:hover,.form-group select:hover,.form-group textarea:hover {    border-color: rgba(77, 145, 106, 0.4);}.form-group select {    cursor: pointer;    appearance: none;    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238b949e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");    background-repeat: no-repeat;    background-position: right 14px center;    padding-right: 44px;}.form-group select option {    background-color: var(--color-bg-secondary);    color: var(--color-text);    padding: 12px;}.form-group textarea {    resize: vertical;    min-height: 120px;    max-height: 300px;}.contact-submit {    width: 100%;    position: relative;}.contact-submit .btn-text,.contact-submit .btn-loading {    display: inline-flex;    align-items: center;    justify-content: center;    gap: 8px;}.contact-submit .spinner {    animation: spin 1s linear infinite;}.contact-submit:disabled {    opacity: 0.7;    cursor: not-allowed;    transform: none;}.form-message {    margin-top: 16px;    padding: 0;    border-radius: 8px;    font-size: 14px;    text-align: center;    opacity: 0;    max-height: 0;    overflow: hidden;    transition: all 0.3s ease;}.form-message.visible {    padding: 14px 16px;    opacity: 1;    max-height: 100px;}.form-message.success {    background: rgba(63, 185, 80, 0.15);    border: 1px solid rgba(63, 185, 80, 0.3);    color: var(--color-positive);}.form-message.error {    background: rgba(248, 81, 73, 0.15);    border: 1px solid rgba(248, 81, 73, 0.3);    color: var(--color-negative);}.contact-info {    display: flex;    flex-direction: column;    gap: 24px;}.contact-info-card {    background: linear-gradient(135deg, var(--color-bg-secondary) 0%, var(--color-bg-tertiary) 100%);    border: 1px solid rgba(31, 31, 31, 0.3);    border-radius: 16px;    padding: 28px;    transition: all 0.3s ease;}.contact-info-card:hover {    border-color: rgba(77, 145, 106, 0.3);    box-shadow: 0 10px 30px rgba(77, 145, 106, 0.1);}.contact-info-icon {    width: 48px;    height: 48px;    background: linear-gradient(135deg, rgba(77, 145, 106, 0.15) 0%, rgba(110, 184, 143, 0.05) 100%);    border: 1px solid rgba(77, 145, 106, 0.3);    border-radius: 12px;    display: flex;    align-items: center;    justify-content: center;    color: var(--color-primary);    margin-bottom: 16px;}.contact-info-card h4 {    font-size: 18px;    font-weight: 700;    color: var(--color-text);    margin-bottom: 8px;}.contact-info-card p {    font-size: 14px;    color: var(--color-text-secondary);    line-height: 1.6;    margin-bottom: 16px;}.contact-info-card .btn {    width: 100%;}.contact-email {    display: inline-block;    color: var(--color-primary-light);    text-decoration: none;    font-size: 15px;    font-weight: 500;    transition: color 0.2s ease;}.contact-email:hover {    color: var(--color-primary);    text-decoration: underline;}@media (max-width: 1024px) {    .contact-content {        grid-template-columns: 1fr;        gap: 40px;    }}@media (max-width: 768px) {    .contact-section {        padding: 60px 0;    }    .contact-form {        padding: 24px;    }    .form-row {        grid-template-columns: 1fr;        gap: 0;    }    .form-group {        margin-bottom: 20px;    }    .form-group input,    .form-group select,    .form-group textarea {        padding: 14px;        font-size: 16px;     }    .contact-info {        gap: 16px;    }    .contact-info-card {        padding: 20px;    }    .contact-info-card h4 {        font-size: 16px;    }}@media (max-width: 380px) {    .contact-form {        padding: 20px 16px;    }    .form-group label {        font-size: 13px;    }}@supports (padding: max(0px)) {    body {        padding-left: env(safe-area-inset-left);        padding-right: env(safe-area-inset-right);    }    .nav {        padding-left: max(16px, env(safe-area-inset-left));        padding-right: max(16px, env(safe-area-inset-right));    }    .footer {        padding-bottom: max(30px, env(safe-area-inset-bottom));    }    .cookie-modal {        padding-bottom: max(28px, env(safe-area-inset-bottom));    }}html, body {    max-width: 100%;    overflow-x: hidden;}@media (hover: none) and (pointer: coarse) {    .btn,    .nav-links a,    .mobile-menu-links a,    .faq-question,    .footer-column a,    .cookie-btn {        min-height: 44px;        display: inline-flex;        align-items: center;    }    .btn:active {        transform: scale(0.98);        opacity: 0.9;    }    .faq-question:active {        background: rgba(255, 255, 255, 0.05);    }    .problem-card:active,    .roadmap-step:active,    .for-you-card:active {        transform: scale(0.99);    }    .problem-card:hover,    .roadmap-step:hover,    .for-you-card:hover,    .faq-item:hover,    .stat-card:hover {        transform: none;        box-shadow: none;    }}@media (max-width: 768px) {    .container {        padding: 0 16px;    }    .nav-container {        padding: 12px 16px;        min-height: 56px;    }    .mobile-menu-toggle {        width: 44px;        height: 44px;        display: flex;    }    .mobile-menu {        padding: 0 16px;    }    .mobile-menu.active {        padding: 20px 16px;        max-height: calc(100vh - 60px);    }    .mobile-menu-links {        gap: 0;    }    .mobile-menu-links a {        padding: 16px 0;        font-size: 16px;        min-height: 52px;        display: flex;        align-items: center;    }    .mobile-menu-actions {        padding-top: 16px;        gap: 12px;    }    .mobile-menu-actions .btn {        padding: 16px 24px;        font-size: 16px;        min-height: 52px;    }    .hero {        padding: 80px 0 32px;        min-height: auto;    }    .hero-video-wrapper {        margin-bottom: 24px;        border-radius: 10px;        padding-bottom: 56.25%;    }    .hero-title {        gap: 8px;    }    .hero-title-main {        font-size: clamp(28px, 8vw, 36px);        letter-spacing: -1px;    }    .hero-title-gradient {        font-size: clamp(22px, 6vw, 28px);        letter-spacing: -0.5px;    }    .hero-description {        font-size: 15px;        line-height: 1.6;        margin-bottom: 20px;        padding: 0 8px;    }    .hero-actions {        flex-direction: column;        gap: 12px;        width: 100%;        padding: 0 8px;    }    .hero-actions .btn {        width: 100%;        min-height: 52px;        font-size: 16px;        padding: 16px 24px;    }    .hero-content {        margin-bottom: 32px;    }    .section-header {        margin-bottom: 40px;        padding: 0 8px;    }    .section-header h2 {        font-size: clamp(24px, 6vw, 28px);        line-height: 1.3;        letter-spacing: -0.5px;    }    .section-header p {        font-size: 15px;        line-height: 1.5;    }    .problems-section {        padding: 60px 0;    }    .problems-grid {        grid-template-columns: 1fr;        gap: 16px;        margin-bottom: 40px;    }    .problem-card {        padding: 20px;    }    .problem-number {        width: 36px;        height: 36px;        font-size: 18px;        margin-bottom: 16px;    }    .problem-title {        font-size: 17px;        margin-bottom: 10px;    }    .problem-description {        font-size: 14px;        line-height: 1.6;    }    .roadmap-section {        padding: 60px 0;    }    .roadmap-steps {        gap: 16px;        margin-bottom: 40px;    }    .roadmap-step {        grid-template-columns: 1fr;        gap: 16px;        padding: 20px;    }    .step-number {        font-size: 10px;        padding: 6px 12px;        width: fit-content;    }    .step-visual {        order: -1;        justify-content: flex-start;    }    .step-icon {        width: 56px;        height: 56px;    }    .step-icon svg {        width: 28px;        height: 28px;    }    .step-title {        font-size: 17px;        margin-bottom: 10px;    }    .step-description {        font-size: 14px;        line-height: 1.6;    }    .for-you-section {        padding: 60px 0;    }    .for-you-grid {        grid-template-columns: 1fr;        gap: 16px;        margin-bottom: 40px;    }    .for-you-card {        padding: 20px;    }    .for-you-header {        margin-bottom: 16px;    }    .for-you-badge {        font-size: 13px;        padding: 6px 14px;    }    .for-you-list {        gap: 12px;    }    .for-you-list li {        font-size: 14px;        gap: 10px;        line-height: 1.5;    }    .for-you-list .check-icon {        width: 22px;        height: 22px;        font-size: 12px;        flex-shrink: 0;    }    .faq-section {        padding: 60px 0;    }    .faq-list {        margin-top: 32px;    }    .faq-item {        margin-bottom: 12px;        border-radius: 12px;    }    .faq-question {        padding: 16px;        font-size: 15px;        gap: 12px;        min-height: 56px;    }    .faq-question span {        line-height: 1.4;    }    .faq-icon {        width: 28px;        height: 28px;        min-width: 28px;    }    .faq-item.active .faq-answer {        padding: 0 16px 16px;    }    .faq-answer p {        font-size: 14px;        line-height: 1.6;    }    .cta-section {        padding: 60px 0;    }    .cta-content {        padding: 32px 20px;        border-radius: 16px;        margin: 0 8px;    }    .cta-title {        font-size: clamp(22px, 5.5vw, 26px);        margin-bottom: 16px;    }    .cta-description {        font-size: 14px;        margin-bottom: 24px;        line-height: 1.6;    }    .cta-actions {        flex-direction: column;        gap: 12px;    }    .btn-cta-primary,    .btn-cta-secondary {        width: 100%;        min-height: 52px;        font-size: 15px;        padding: 14px 24px;    }    .section-cta {        margin-top: 32px;        padding: 0 8px;    }    .section-cta .btn-hero {        width: 100%;        min-height: 52px;    }    .footer {        padding: 40px 0 24px;    }    .footer-grid {        grid-template-columns: 1fr;        gap: 32px;        margin-bottom: 32px;    }    .footer-brand {        text-align: center;        align-items: center;    }    .footer-logo {        justify-content: center;    }    .footer-brand p {        font-size: 14px;        max-width: 280px;    }    .footer-links {        grid-template-columns: 1fr 1fr;        gap: 24px 16px;    }    .footer-column {        gap: 10px;    }    .footer-column h4 {        font-size: 13px;        margin-bottom: 4px;    }    .footer-column a {        font-size: 13px;        padding: 4px 0;        min-height: 32px;        display: flex;        align-items: center;    }    .footer-bottom {        padding-top: 20px;    }    .footer-bottom p {        font-size: 12px;    }    .cookie-modal-actions .cookie-btn {        flex: 1;        min-height: 48px;        font-size: 14px;        padding: 14px 16px;    }    .floating-element {        display: none;    }    @media (prefers-reduced-motion: reduce) {        *,        *::before,        *::after {            animation-duration: 0.01ms !important;            animation-iteration-count: 1 !important;            transition-duration: 0.01ms !important;        }    }}@media (max-width: 380px) {    .container {        padding: 0 12px;    }    .hero {        padding: 90px 0 40px;    }    .hero-title-main {        font-size: 26px;    }    .hero-title-gradient {        font-size: 20px;    }    .hero-description {        font-size: 14px;    }    .section-header h2 {        font-size: 22px;    }    .problem-card,    .roadmap-step,    .for-you-card {        padding: 16px;    }    .problem-title,    .step-title {        font-size: 16px;    }    .cta-content {        padding: 24px 16px;        margin: 0 4px;    }    .cta-title {        font-size: 20px;    }    .footer-links {        grid-template-columns: 1fr;        gap: 20px;        text-align: center;    }    .footer-column {        align-items: center;    }    .faq-question {        padding: 14px;        font-size: 14px;    }    .btn-hero,    .btn-cta-primary {        font-size: 14px;        padding: 14px 20px;    }}@media (max-width: 768px) and (orientation: landscape) {    .hero {        padding: 80px 0 40px;        min-height: auto;    }    .hero-content {        margin-bottom: 24px;    }    .section-header {        margin-bottom: 32px;    }    .problems-section,    .roadmap-section,    .for-you-section,    .faq-section,    .cta-section {        padding: 40px 0;    }    .mobile-menu.active {        max-height: 70vh;    }}@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {    body {        -webkit-font-smoothing: antialiased;        -moz-osx-font-smoothing: grayscale;    }}
/* ==========================================================================
   i18n — FOUC prevention + language switcher styles
   ========================================================================== */

/* --------------------------------------------------------------------------
   FOUC prevention
   Hide data-i18n elements when lang-it is active but translation not applied
   -------------------------------------------------------------------------- */
html.lang-it [data-i18n]:not(.i18n-ready),
html.lang-it [data-i18n-html]:not(.i18n-ready),
html.lang-it [data-i18n-placeholder]:not(.i18n-ready),
html.lang-it [data-i18n-alt]:not(.i18n-ready),
html.lang-it [data-i18n-aria-label]:not(.i18n-ready) {
    visibility: hidden;
}
html.lang-es [data-i18n]:not(.i18n-ready),
html.lang-es [data-i18n-html]:not(.i18n-ready),
html.lang-es [data-i18n-placeholder]:not(.i18n-ready),
html.lang-es [data-i18n-alt]:not(.i18n-ready),
html.lang-es [data-i18n-aria-label]:not(.i18n-ready) {
    visibility: hidden;
}

/* --------------------------------------------------------------------------
   Language dropdown  (flag selector used in nav bar)
   -------------------------------------------------------------------------- */
.lang-dropdown {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-left: 12px;
}

.lang-dropdown-toggle {
    display: flex;
    align-items: center;
    gap: 6px;
    background: none;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 8px;
    padding: 6px 10px;
    cursor: pointer;
    color: #ffffff;
    font-family: inherit;
    font-size: 13px;
    font-weight: 500;
    transition: border-color 0.15s ease, background-color 0.15s ease;
    user-select: none;
}

.lang-dropdown-toggle:hover {
    background-color: rgba(255, 255, 255, 0.06);
    border-color: rgba(255, 255, 255, 0.2);
}

.lang-dropdown-toggle .flag-icon {
    width: 20px;
    height: 15px;
    border-radius: 2px;
    object-fit: cover;
}

.lang-dropdown-toggle .chevron {
    width: 10px;
    height: 10px;
    border-right: 1.5px solid rgba(255, 255, 255, 0.5);
    border-bottom: 1.5px solid rgba(255, 255, 255, 0.5);
    transform: rotate(45deg);
    transition: transform 0.2s ease;
    margin-top: -2px;
}

.lang-dropdown.open .lang-dropdown-toggle .chevron {
    transform: rotate(-135deg);
    margin-top: 2px;
}

.lang-dropdown-menu {
    position: absolute;
    top: calc(100% + 6px);
    right: 0;
    background: rgba(18, 18, 18, 0.95);
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 8px;
    padding: 4px;
    min-width: 140px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(-4px);
    transition: opacity 0.15s ease, transform 0.15s ease, visibility 0.15s ease;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    z-index: 1200;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
}

.lang-dropdown.open .lang-dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.lang-dropdown-item {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 8px 10px;
    background: none;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    color: rgba(255, 255, 255, 0.7);
    font-family: inherit;
    font-size: 13px;
    font-weight: 500;
    transition: background-color 0.12s ease, color 0.12s ease;
}

.lang-dropdown-item:hover {
    background-color: rgba(255, 255, 255, 0.08);
    color: #ffffff;
}

.lang-dropdown-item.active {
    color: #ffffff;
    background-color: rgba(77, 145, 106, 0.2);
}

.lang-dropdown-item .flag-icon {
    width: 20px;
    height: 15px;
    border-radius: 2px;
    object-fit: cover;
}

/* --------------------------------------------------------------------------
   Floating language dropdown  (standalone pages without nav bar)
   -------------------------------------------------------------------------- */
.lang-dropdown-floating {
    position: fixed;
    top: 16px;
    right: 20px;
    z-index: 1100;
}

.lang-dropdown-floating .lang-dropdown-toggle {
    background: rgba(12, 12, 12, 0.85);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

/* --------------------------------------------------------------------------
   Mobile menu language dropdown
   -------------------------------------------------------------------------- */
.mobile-menu .lang-dropdown {
    margin-left: 0;
    margin-top: 16px;
    align-self: center;
}

.mobile-menu .lang-dropdown-menu {
    right: auto;
    left: 50%;
    transform: translateX(-50%) translateY(-4px);
}

.mobile-menu .lang-dropdown.open .lang-dropdown-menu {
    transform: translateX(-50%) translateY(0);
}

/* Ensure spacing between nav items and push actions + dropdown to the right */
.nav-container {
    gap: 32px;
}
.nav-container .nav-actions {
    margin-left: auto;
}

/* ==========================================================================
   Blog section (landing page)
   ========================================================================== */
.blog-section {
    padding: 120px 0;
    position: relative;
}
.blog-section .section-header {
    margin-bottom: 48px;
}
.blog-section .section-label {
    display: block;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #FF6B00;
    margin-bottom: 8px;
    opacity: 0.7;
}
.blog-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-bottom: 36px;
}
.blog-card-featured {
    background: var(--color-bg-secondary);
    border: 1px solid rgba(255,255,255,0.06);
    border-left: 3px solid #FF6B00;
    border-radius: 12px;
    padding: 36px 32px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    transition: border-color 0.2s, background 0.2s;
    cursor: pointer;
    text-decoration: none;
    color: inherit;
}
.blog-card-featured:hover {
    background: #161616;
    border-color: rgba(255,255,255,0.1);
    border-left-color: #FF6B00;
}
.blog-card-featured .card-tag {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #FF6B00;
    margin-bottom: 16px;
}
.blog-card-featured h3 {
    font-size: 1.55rem;
    font-weight: 800;
    line-height: 1.3;
    margin-bottom: 14px;
    letter-spacing: -0.01em;
    color: #ffffff;
}
.blog-card-featured .card-desc {
    color: var(--color-text-secondary);
    font-size: 0.95rem;
    line-height: 1.65;
    margin-bottom: 20px;
}
.blog-card-featured .card-link {
    color: #FF6B00;
    font-weight: 600;
    font-size: 0.9rem;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: gap 0.2s;
}
.blog-card-featured:hover .card-link {
    gap: 10px;
}
.blog-cards-small {
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.blog-card-small {
    background: var(--color-bg-secondary);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 12px;
    padding: 28px;
    flex: 1;
    transition: border-color 0.2s, background 0.2s;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-decoration: none;
    color: inherit;
}
.blog-card-small:hover {
    background: #161616;
    border-color: rgba(255,255,255,0.12);
}
.blog-card-small h3 {
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.35;
    margin-bottom: 10px;
    color: #ffffff;
}
.blog-card-small .card-desc {
    color: var(--color-text-secondary);
    font-size: 0.88rem;
    line-height: 1.55;
    margin-bottom: 14px;
}
.blog-card-small .card-link {
    color: #FF6B00;
    font-weight: 600;
    font-size: 0.85rem;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: gap 0.2s;
}
.blog-card-small:hover .card-link {
    gap: 10px;
}
.blog-view-all {
    text-align: center;
}
.blog-view-all a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 14px 32px;
    border: 1px solid rgba(255,107,0,0.4);
    border-radius: 8px;
    color: #FF6B00;
    font-weight: 600;
    font-size: 0.95rem;
    text-decoration: none;
    transition: background 0.2s, border-color 0.2s, gap 0.2s;
    cursor: pointer;
}
.blog-view-all a:hover {
    background: rgba(255,107,0,0.08);
    border-color: #FF6B00;
    gap: 12px;
}

/* ==========================================================================
   Blog index page (/blog)
   ========================================================================== */
.blog-index {
    padding: 140px 0 80px;
    min-height: 100vh;
}
.blog-index-header {
    margin-bottom: 48px;
}
.blog-index-header h1 {
    font-size: 2.6rem;
    font-weight: 900;
    letter-spacing: -0.03em;
    margin-bottom: 10px;
}
.blog-index-header p {
    color: var(--color-text-secondary);
    font-size: 1.05rem;
}
.blog-index-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.blog-index-card {
    background: var(--color-bg-secondary);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 12px;
    padding: 28px 26px;
    transition: border-color 0.2s, background 0.2s, transform 0.2s;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    text-decoration: none;
    color: inherit;
}
.blog-index-card:hover {
    background: #161616;
    border-color: rgba(255,107,0,0.3);
    transform: translateY(-2px);
}
.blog-index-card h3 {
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.35;
    margin-bottom: 10px;
    color: #ffffff;
}
.blog-index-card .card-desc {
    color: var(--color-text-secondary);
    font-size: 0.85rem;
    line-height: 1.55;
    margin-bottom: 16px;
    flex: 1;
}
.blog-index-card .card-link {
    color: #FF6B00;
    font-weight: 600;
    font-size: 0.85rem;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: gap 0.2s;
}
.blog-index-card:hover .card-link {
    gap: 10px;
}

@media (prefers-reduced-motion: reduce) {
    .blog-index-card:hover {
        transform: none;
    }
}

/* Hide desktop lang-dropdown on mobile, show mobile one */
@media (max-width: 768px) {
    .nav-container > .lang-dropdown {
        display: none;
    }
    .blog-section {
        padding: 80px 0;
    }
    .blog-grid {
        grid-template-columns: 1fr;
    }
    .blog-card-featured {
        padding: 28px 24px;
    }
    .blog-card-featured h3 {
        font-size: 1.3rem;
    }
    .blog-index {
        padding: 120px 0 60px;
    }
    .blog-index-grid {
        grid-template-columns: 1fr;
    }
    .blog-index-header h1 {
        font-size: 2rem;
    }
}
