/* responsive.css — все адаптивные стили для основных страниц */
/* @media (max-width: 768px), (max-width: 480px), (min-width: 769px), print */

@media (max-width: 768px) {
            body {
                overflow-x: hidden;
                width: 100%;
            }
            
            .container, .header-inner, .status-bar {
                max-width: 100%;
                padding-left: 16px;
                padding-right: 16px;
            }
        }

@media (max-width: 768px) {
            .mobile-nav {
                display: flex;
                padding: 6px 0 10px;
                width: 100%;
                box-sizing: border-box;
                bottom: 0;
                padding-bottom: env(safe-area-inset-bottom);
            }
            .mobile-nav a {
                min-width: 0;
                padding: 4px 4px;
            }

            .status-bar {
                font-size: 0.6rem;
                padding: 4px 10px;
                gap: 0;
            }

            .status-step {
                padding: 0 6px;
            }

            .status-bar > .step-line {
                width: 12px;
            }

            .status-label {
                display: none;
            }

            .drawer-overlay.open ~ .mobile-nav {
                display: flex !important;
            }

            .header-inner {
                padding: 12px 16px;
            }

            .header-actions .header-link {
                display: none;
            }

            .header-badge {
                font-size: 0.65rem;
                padding: 3px 8px;
            }

            .theme-toggle {
                width: 40px;
                height: 40px;
            }

            .floating-nav {
                display: none !important;
            }

            footer {
                padding-bottom: 80px;
            }

            body {
                padding: env(safe-area-inset-top) 0 env(safe-area-inset-bottom) 0;
                line-height: 1.7;
            }

            section {
                padding: 60px 20px;
            }

            .section-header {
                margin-bottom: 36px;
            }

            .section-title {
                font-size: clamp(1.5rem, 6vw, 2rem);
                line-height: 1.2;
                margin-bottom: 12px;
            }

            .section-subtitle {
                font-size: clamp(0.9rem, 2.8vw, 1rem);
                color: var(--text-secondary);
            }

            .hero {
                padding: 80px 20px 60px;
            }

            .hero-title {
                font-size: clamp(1.8rem, 6vw, 2.5rem);
                line-height: 1.15;
            }

            .hero-subtitle {
                font-size: clamp(0.95rem, 3vw, 1.15rem);
                line-height: 1.7;
            }

            .hero-buttons {
                flex-direction: column;
                gap: 12px;
            }

            .hero-buttons .btn {
                width: 100%;
                min-width: auto;
                padding: 16px 24px;
            }

            .card,
            .issuer-card,
            .investment-card,
            .case-card,
            .step-card,
            .stat-box,
            .faq-item,
            .product-card,
            .fund-item,
            .partner-item {
                padding: 24px;
                border-radius: 20px;
            }

            .card-text,
            .issuer-desc,
            .case-body p,
            .step-card p,
            .faq-item p {
                font-size: 0.95rem;
                color: var(--text-secondary);
                line-height: 1.6;
            }

            .cards-grid {
                grid-template-columns: 1fr;
                gap: 16px;
            }

            .team-card-full {
                padding: 24px 20px;
            }

            .team-expertise {
                justify-content: center;
            }

            .issuer-grid {
                grid-template-columns: 1fr;
                gap: 16px;
            }

            .issuer-value {
                font-size: 2rem;
            }

            .investment-grid {
                grid-template-columns: 1fr;
                gap: 20px;
            }

            .investment-value {
                font-size: 2.5rem;
            }

            .funds-row {
                grid-template-columns: 60px 120px 1fr;
            }

            .funds-col.col-detail {
                display: none;
            }

            .funds-header .col-detail {
                display: flex;
            }

            .case-metric .cm-value {
                font-size: 0.9rem;
            }

            .case-metric .cm-label {
                font-size: 0.65rem;
            }

            .doc-table {
                display: block;
                border: none;
            }

            .doc-table thead {
                display: none;
            }

            .doc-table tbody tr {
                display: block;
                padding: 16px;
                margin-bottom: 12px;
                background: var(--card-bg);
                border: 1px solid var(--border-color);
                border-radius: 20px;
            }

            .doc-table tbody td {
                display: flex;
                justify-content: space-between;
                padding: 6px 0;
                border: none;
                font-size: 0.9rem;
            }

            .doc-table tbody td::before {
                content: attr(data-label);
                font-weight: 600;
                color: var(--text-secondary);
                font-size: 0.8rem;
            }

            .roadmap::before {
                left: 20px;
            }

            .roadmap-content h3 {
                font-size: 1rem;
            }

            .step-card {
                padding: 24px 18px;
            }

            .card {
                backdrop-filter: blur(4px);
            }

            .card:hover {
                box-shadow: 0 12px 40px rgba(13, 148, 136, 0.08);
            }

            .achievement-value {
                font-size: 1.2rem;
            }

            .investment-card {
                padding: 30px 24px;
            }

            .investment-details div {
                flex-direction: column;
                gap: 6px;
                font-size: 0.9rem;
            }

            .investment-details div span:first-child {
                color: var(--text-secondary);
                font-size: 0.8rem;
            }

            .issuer-section {
                padding: 60px 20px;
            }

            .issuer-card {
                padding: 24px 20px;
            }

            .calc-form {
                padding: 24px;
            }

            .calc-result-item {
                padding: 16px 20px;
            }

            .calc-result-item .crl-value {
                font-size: 1.1rem;
            }

            .calc-result-item.highlight .crl-value {
                font-size: 1.3rem;
            }

            .logo-showcase {
                padding: 40px 15px;
            }

            .logo-wrapper {
                max-width: 100%;
            }

            .doc-icon {
                width: 40px;
                height: 40px;
            }

            .doc-icon svg {
                width: 20px;
                height: 20px;
            }

            .doc-info h4 {
                font-size: 0.95rem;
            }

            .doc-info p {
                font-size: 0.8rem;
            }

            .doc-item {
                flex-wrap: wrap;
                gap: 12px;
            }

            .doc-tag { order: 1; }

            .doc-info { width: calc(100% - 64px); }

            .doc-arrow { margin-left: auto; }

            .onboarding-steps { grid-template-columns: 1fr; }

            .team-achievements {
                grid-template-columns: 1fr;
            }

            .team-header {
                flex-direction: column;
                text-align: center;
            }

            .calc-layout { grid-template-columns: 1fr; }

            .case-metrics { grid-template-columns: repeat(3, 1fr); }

            .details-row {
                flex-direction: column;
                gap: 8px;
                padding: 15px 20px;
            }

            .details-label {
                width: auto;
            }
        }

@media (min-width: 769px) {
    .drawer-overlay {
        display: none !important;
    }
}

@media print {
            .status-bar, .status-step, .step-line, .step-dot {
                display: none !important;
            }
            .floating-nav {
                display: none !important;
            }
        }

@media (max-width: 480px) {
            .hero-title {
                font-size: clamp(1.5rem, 7vw, 1.8rem);
            }

            .section-title {
                font-size: clamp(1.2rem, 5vw, 1.4rem);
            }

            .team-achievements {
                grid-template-columns: repeat(2, 1fr);
            }

            .case-metrics {
                grid-template-columns: repeat(2, 1fr);
            }

            .issuer-card {
                padding: 20px 16px;
            }

            .funds-row {
                grid-template-columns: 50px 100px 1fr;
            }

            /* Цели продукта — адаптация */
            .investment-card {
                padding: 24px 20px;
            }

            .investment-value {
                font-size: 2rem;
            }

            .investment-details div {
                flex-direction: column;
                gap: 4px;
                font-size: 0.85rem;
            }

            .investment-details div span:first-child {
                color: var(--text-secondary);
                font-size: 0.75rem;
            }

            /* Документация выпуска — адаптация */
            .doc-item {
                flex-wrap: wrap;
                padding: 16px 18px;
                gap: 14px;
            }

            .doc-icon {
                width: 38px;
                height: 38px;
            }

            .doc-icon svg {
                width: 18px;
                height: 18px;
            }

            .doc-info h4 {
                font-size: 0.9rem;
                line-height: 1.3;
            }

            .doc-info p {
                font-size: 0.75rem;
                line-height: 1.4;
            }

            .doc-tag {
                font-size: 0.65rem;
                padding: 3px 8px;
                order: 3;
                width: 100%;
                text-align: center;
            }

            .doc-arrow {
                display: none;
            }
        }
