/* ==========================================================================
   МОБИЛЬНЫЕ СТИЛИ (mobile-style.css)
   Полная адаптация для всех устройств
   ========================================================================== */

/* ===== ОБЩИЕ НАСТРОЙКИ ===== */
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

body {
    overflow-x: hidden;
    width: 100%;
}

img {
    max-width: 100%;
    height: auto;
}

.container {
    width: 100%;
    max-width: 1350px;
    margin: 0 auto;
    padding: 0 20px;
}

/* ===== СКРЫТИЕ ЭЛЕМЕНТОВ НА МОБИЛЬНЫХ ===== */
@media (max-width: 768px) {
    /* Скрываем коллаж на мобильных */
    .hero-fullscreen-collage {
        display: none !important;
    }

    /* Скрываем фоновое дерево на мобильных */
    .mission-bg-forest {
        display: none !important;
    }

    /* Скрываем декоративные элементы */
    .reviews-blob-left,
    .reviews-svg-leaf,
    .access-svg-leaf,
    .news-blob-1,
    .floating-leaf,
    .footer-wave-decor {
        display: none !important;
    }

    /* Скрываем лишние декоративные SVG */
    .access-bg-decor svg {
        display: none !important;
    }

    .reviews-bg-decor svg {
        display: none !important;
    }

    /* Убираем лишние отступы */
    .hero-section {
        padding: 100px 0 40px !important;
        background: linear-gradient(135deg, #5d7625 0%, #5d7625 100%) !important;
        min-height: auto !important;
    }

    .hero-container {
        margin-left: 0 !important;
        display: flex;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
        padding: 10px 0 !important;
        gap: 20px !important;
    }

    .hero-content {
        width: 100% !important;
        flex: none !important;
    }

    .hero-content h1 {
        font-size: 28px !important;
        text-align: center !important;
    }

    .hero-description {
        max-width: 100% !important;
        text-align: center !important;
        font-size: 16px !important;
    }

    .hero-actions {
        justify-content: center !important;
    }

    .hero-visual {
        flex: none !important;
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
    }

    .main-circle-graphic {
        width: 200px !important;
        height: 200px !important;
        border-width: 6px !important;
    }

    .logo-wrapper {
        width: 100% !important;
        height: 100% !important;
    }

    .hero-premium-title {
        font-size: 28px !important;
        text-align: center !important;
    }

    .hero-badge {
        display: inline-block !important;
        margin: 0 auto 15px !important;
    }
}

/* ===== ШАПКА ===== */
@media (max-width: 992px) {
    .main-header {
        padding: 12px 0 !important;
    }

    .header-container {
        padding: 0 15px !important;
    }

    .logo span {
        font-size: 18px !important;
    }

    .logo svg {
        width: 30px !important;
        height: 30px !important;
    }

    .btn-header {
        padding: 8px 16px !important;
        font-size: 12px !important;
    }
}

@media (max-width: 480px) {
    .main-header {
        padding: 10px 0 !important;
    }

    .header-container {
        padding: 0 10px !important;
    }

    .logo span {
        font-size: 15px !important;
    }

    .logo svg {
        width: 24px !important;
        height: 24px !important;
    }

    .logo {
        gap: 8px !important;
    }
}

/* ===== БУРГЕР-МЕНЮ ===== */
@media (max-width: 992px) {
    .burger-button {
        display: flex !important;
        flex-direction: column;
        gap: 5px;
        cursor: pointer;
        padding: 8px;
        z-index: 1001;
        position: relative;
    }

    .burger-line {
        width: 28px;
        height: 3px;
        background: #ffffff;
        border-radius: 3px;
        transition: all 0.3s ease;
        display: block;
    }

    .nav-menu {
        position: fixed !important;
        top: 0;
        right: -100%;
        width: 280px;
        height: 100vh;
        background: rgba(93, 118, 37, 0.98) !important;
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        flex-direction: column !important;
        padding: 80px 25px 30px !important;
        transition: right 0.4s ease !important;
        box-shadow: -10px 0 40px rgba(0, 0, 0, 0.2) !important;
        gap: 5px !important;
        align-items: flex-start !important;
        max-width: 100% !important;
        overflow-y: auto !important;
        z-index: 1000 !important;
        display: flex !important;
    }

    .nav-menu a {
        color: #ffffff !important;
        font-size: 17px !important;
        padding: 12px 0 !important;
        width: 100% !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
        text-align: left !important;
    }

    .nav-menu a:hover {
        color: #FF8C00 !important;
    }

    .nav-menu .btn-header {
        margin-top: 15px !important;
        background: #f4810d !important;
        color: #ffffff !important;
        width: 100% !important;
        text-align: center !important;
        justify-content: center !important;
        border: none !important;
        padding: 12px 20px !important;
    }

    .nav-menu .btn-header:hover {
        background: #e07400 !important;
    }

    .burger-toggle:checked ~ .nav-menu {
        right: 0 !important;
    }

    .burger-toggle:checked ~ .burger-button .burger-line:nth-child(1) {
        transform: rotate(45deg) translate(6px, 6px) !important;
    }

    .burger-toggle:checked ~ .burger-button .burger-line:nth-child(2) {
        opacity: 0 !important;
    }

    .burger-toggle:checked ~ .burger-button .burger-line:nth-child(3) {
        transform: rotate(-45deg) translate(6px, -6px) !important;
    }

    .desktop-nav-btn {
        display: none !important;
    }

    .mobile-nav-btn {
        display: inline-flex !important;
    }

    .burger-toggle {
        position: absolute !important;
        opacity: 0 !important;
        width: 0 !important;
        height: 0 !important;
        pointer-events: none !important;
    }
}

@media (min-width: 993px) {
    .mobile-nav-btn {
        display: none !important;
    }

    .burger-button {
        display: none !important;
    }

    .burger-toggle {
        display: none !important;
    }
}

/* ===== СЕКЦИЯ "О НАС" ===== */
@media (max-width: 992px) {
    .about-section {
        padding: 60px 0 !important;
    }

    .about-grid {
        flex-direction: column !important;
        gap: 30px !important;
    }

    .about-text {
        flex: 1 !important;
        width: 100% !important;
        text-align: center !important;
    }

    .about-media {
        flex: 1 !important;
        width: 100% !important;
    }

    .image-stack {
        max-width: 350px !important;
        margin: 0 auto !important;
    }

    .stack-card {
        position: relative !important;
        bottom: 0 !important;
        left: 0 !important;
        margin-top: -20px !important;
        max-width: 100% !important;
        padding: 15px !important;
    }

    h2 {
        font-size: 28px !important;
        text-align: center !important;
    }

    .section-title-block {
        text-align: center !important;
    }

    .sub-title {
        text-align: center !important;
        display: block !important;
    }

    .lead-text {
        font-size: 17px !important;
        text-align: center !important;
    }

    .about-text p {
        text-align: center !important;
    }

    .features-list {
        text-align: left !important;
    }

    .feature-item {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 10px !important;
    }

    .feature-icon {
        width: 45px !important;
        height: 45px !important;
        font-size: 18px !important;
    }

    .card-num {
        font-size: 30px !important;
    }
}

@media (max-width: 480px) {
    .about-section {
        padding: 40px 0 !important;
    }

    h2 {
        font-size: 22px !important;
    }

    .sub-title {
        font-size: 11px !important;
    }

    .lead-text {
        font-size: 15px !important;
    }

    .about-text p {
        font-size: 14px !important;
    }

    .feature-body h3 {
        font-size: 16px !important;
    }

    .feature-body p {
        font-size: 13px !important;
    }

    .stack-card {
        padding: 12px !important;
    }

    .card-num {
        font-size: 24px !important;
    }

    .card-txt {
        font-size: 11px !important;
    }

    .section-title-block {
        margin-bottom: 25px !important;
    }
}

/* ===== МИССИЯ ===== */
@media (max-width: 992px) {
    .mission-section {
        padding: 60px 0 !important;
    }

    .mission-section .container {
        flex-direction: column !important;
        gap: 25px !important;
        padding: 0 20px !important;
    }

    .mission-images-triangle {
        width: 280px !important;
        height: 280px !important;
        margin-left: 0 !important;
        margin: 0 auto !important;
        position: relative !important;
    }

    .mission-image-wrapper {
        width: 140px !important;
        height: 140px !important;
        border-width: 2px !important;
    }

    .circle-l01 {
        top: 15px !important;
        left: 70px !important;
    }

    .circle-l02 {
        bottom: 0 !important;
        left: 0 !important;
    }

    .circle-l03 {
        bottom: 0 !important;
        right: 0 !important;
    }

    .content-wrapper {
        padding: 0 !important;
        text-align: center !important;
    }

    .mission-title {
        font-size: 26px !important;
        text-align: center !important;
    }

    .mission-text {
        font-size: 18px !important;
        text-align: center !important;
        padding: 0 !important;
    }
}

@media (max-width: 480px) {
    .mission-section {
        padding: 40px 0 !important;
    }

    .mission-images-triangle {
        width: 200px !important;
        height: 200px !important;
    }

    .mission-image-wrapper {
        width: 100px !important;
        height: 100px !important;
    }

    .circle-l01 {
        top: 10px !important;
        left: 50px !important;
    }

    .circle-l02 {
        bottom: 0 !important;
        left: 0 !important;
    }

    .circle-l03 {
        bottom: 0 !important;
        right: 0 !important;
    }

    .mission-title {
        font-size: 22px !important;
    }

    .mission-text {
        font-size: 15px !important;
    }
}

/* ===== ПРЕИМУЩЕСТВА ===== */
@media (max-width: 992px) {
    .benefits-section {
        padding: 60px 0 !important;
    }

    .benefits-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 15px !important;
    }

    .benefit-card {
        padding: 20px !important;
        text-align: center !important;
    }

    .benefit-card h3 {
        font-size: 18px !important;
    }

    .benefit-card p {
        font-size: 14px !important;
    }

    .card-icon {
        font-size: 28px !important;
        text-align: center !important;
    }
}

@media (max-width: 480px) {
    .benefits-section {
        padding: 40px 0 !important;
    }

    .benefit-card {
        padding: 15px !important;
    }

    .benefit-card h3 {
        font-size: 16px !important;
    }

    .benefit-card p {
        font-size: 13px !important;
    }
}

/* ===== АУДИТОРИЯ ===== */
@media (max-width: 992px) {
    .accessibility-section {
        padding: 60px 0 !important;
    }

    .access-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 15px !important;
        padding: 0 !important;
    }

    .access-title-block {
        text-align: center !important;
    }

    .access-title-block h2 {
        font-size: 28px !important;
        text-align: center !important;
    }

    .access-title-block .text-white {
        display: inline !important;
    }

    .access-subtitle {
        font-size: 16px !important;
        text-align: center !important;
    }

    .access-badge {
        display: inline-block !important;
        margin: 0 auto 15px !important;
    }

    .access-card {
        padding: 20px !important;
        text-align: center !important;
    }

    .access-card h3 {
        font-size: 17px !important;
        text-align: center !important;
    }

    .access-card p {
        font-size: 14px !important;
        text-align: center !important;
    }

    .access-icon-wrapper {
        margin: 0 auto 15px !important;
        width: 50px !important;
        height: 50px !important;
    }

    .access-icon-wrapper svg {
        width: 28px !important;
        height: 28px !important;
    }

    .access-feedback-box {
        flex-direction: column !important;
        text-align: center !important;
        padding: 20px !important;
        gap: 15px !important;
    }

    .feedback-content h3 {
        font-size: 20px !important;
        text-align: center !important;
        justify-content: center !important;
    }

    .feedback-content p {
        font-size: 15px !important;
        text-align: center !important;
    }

    .feedback-interactive-actions {
        width: 100% !important;
    }

    .access-stations-card {
        grid-column: span 1 !important;
    }

    .access-stations-card h3 {
        text-align: center !important;
        justify-content: center !important;
    }

    .stations-list {
        text-align: left !important;
    }

    .station-badge {
        text-align: center !important;
        justify-content: center !important;
    }
}

@media (max-width: 480px) {
    .accessibility-section {
        padding: 40px 0 !important;
    }

    .access-title-block h2 {
        font-size: 22px !important;
    }

    .access-subtitle {
        font-size: 14px !important;
    }

    .access-badge {
        font-size: 11px !important;
        padding: 4px 12px !important;
    }

    .access-card {
        padding: 15px !important;
    }

    .access-card h3 {
        font-size: 15px !important;
        margin-bottom: 8px !important;
    }

    .access-card p {
        font-size: 13px !important;
    }

    .access-icon-wrapper {
        width: 40px !important;
        height: 40px !important;
    }

    .access-icon-wrapper svg {
        width: 22px !important;
        height: 22px !important;
    }

    .access-feedback-box {
        padding: 15px !important;
    }

    .feedback-content h3 {
        font-size: 17px !important;
    }

    .feedback-content p {
        font-size: 14px !important;
    }

    .btn-feedback-yes,
    .btn-feedback-suggest {
        font-size: 13px !important;
        padding: 10px 16px !important;
    }

    .stations-list li {
        font-size: 12px !important;
    }

    .station-badge {
        font-size: 11px !important;
    }
}

/* ===== АВТОР ===== */
@media (max-width: 992px) {
    .guide-section {
        padding: 60px 0 !important;
    }

    .guide-grid {
        flex-direction: column !important;
        gap: 30px !important;
    }

    .guide-visual {
        flex: 1 !important;
        width: 100% !important;
        display: flex !important;
        justify-content: center !important;
    }

    .guide-circle-svg {
        max-width: 250px !important;
    }

    .guide-content {
        flex: 1 !important;
        text-align: center !important;
        padding: 0 15px !important;
    }

    .guide-content .sub-title {
        text-align: center !important;
    }

    .guide-content h2 {
        font-size: 28px !important;
        text-align: center !important;
    }

    .guide-lead {
        font-size: 17px !important;
        text-align: center !important;
    }

    .guide-content p {
        font-size: 15px !important;
        text-align: center !important;
    }

    .guide-quote {
        text-align: center !important;
        padding-left: 0 !important;
        border-left: none !important;
        padding: 15px !important;
        border-top: 3px solid var(--primary) !important;
        border-bottom: 3px solid var(--primary) !important;
        margin-top: 20px !important;
    }
}

@media (max-width: 480px) {
    .guide-section {
        padding: 40px 0 !important;
    }

    .guide-circle-svg {
        max-width: 180px !important;
    }

    .guide-content h2 {
        font-size: 22px !important;
    }

    .guide-lead {
        font-size: 15px !important;
    }

    .guide-content p {
        font-size: 14px !important;
    }

    .guide-quote {
        font-size: 14px !important;
        padding: 12px !important;
    }
}

/* ===== ВОЛОНТЕРЫ ===== */
@media (max-width: 992px) {
    .process-section {
        padding: 60px 0 !important;
    }

    .timeline {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 15px !important;
    }

    .timeline-item {
        padding: 20px !important;
        text-align: center !important;
    }

    .timeline-num {
        font-size: 32px !important;
        text-align: center !important;
    }

    .timeline-body h3 {
        font-size: 17px !important;
        text-align: center !important;
    }

    .timeline-body p {
        font-size: 14px !important;
        text-align: center !important;
    }
}

@media (max-width: 480px) {
    .process-section {
        padding: 40px 0 !important;
    }

    .timeline-item {
        padding: 15px !important;
    }

    .timeline-num {
        font-size: 26px !important;
        margin-bottom: 8px !important;
    }

    .timeline-body h3 {
        font-size: 15px !important;
    }

    .timeline-body p {
        font-size: 13px !important;
    }
}

/* ===== ЛОКАЦИЯ ===== */
@media (max-width: 992px) {
    .location-section {
        padding: 60px 0 !important;
    }

    .location-grid {
        flex-direction: column !important;
        gap: 25px !important;
    }

    .location-info-card {
        text-align: center !important;
        padding: 0 15px !important;
    }

    .location-info-card .sub-title {
        text-align: center !important;
    }

    .location-info-card h2 {
        font-size: 28px !important;
        text-align: center !important;
    }

    .location-desc {
        font-size: 15px !important;
        text-align: center !important;
    }

    .address-detail-item {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
    }

    .detail-text-box h4 {
        text-align: center !important;
    }

    .detail-text-box p {
        text-align: center !important;
    }

    .map-frame-border iframe {
        height: 300px !important;
        border-radius: 15px !important;
    }
}

@media (max-width: 480px) {
    .location-section {
        padding: 40px 0 !important;
    }

    .location-info-card h2 {
        font-size: 22px !important;
    }

    .location-desc {
        font-size: 14px !important;
    }

    .detail-text-box h4 {
        font-size: 14px !important;
    }

    .detail-text-box p {
        font-size: 13px !important;
    }

    .map-frame-border iframe {
        height: 200px !important;
    }
}

/* ===== ОТЗЫВЫ ===== */
@media (max-width: 992px) {
    .reviews-section {
        padding: 60px 0 !important;
    }

    .reviews-grid-layout {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 15px !important;
    }

    .review-premium-card {
        padding: 25px !important;
        text-align: center !important;
    }

    .review-main-text {
        font-size: 15px !important;
        text-align: center !important;
    }

    .reviews-title-block {
        text-align: center !important;
    }

    .reviews-title-block h2 {
        font-size: 28px !important;
        text-align: center !important;
    }

    .reviews-badge {
        display: inline-block !important;
        margin: 0 auto 15px !important;
    }

    .reviews-subtitle {
        font-size: 15px !important;
        text-align: center !important;
    }

    .review-author-info {
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
    }

    .review-quote-mark {
        display: none !important;
    }

    .reviews-cta-container {
        flex-direction: column !important;
        text-align: center !important;
        padding: 20px !important;
        gap: 15px !important;
    }

    .reviews-cta-content h3 {
        font-size: 18px !important;
        text-align: center !important;
    }

    .reviews-cta-content p {
        font-size: 14px !important;
        text-align: center !important;
    }

    .btn-reviews-white {
        width: 100% !important;
        justify-content: center !important;
    }
}

@media (max-width: 480px) {
    .reviews-section {
        padding: 40px 0 !important;
    }

    .reviews-title-block h2 {
        font-size: 22px !important;
    }

    .review-premium-card {
        padding: 18px !important;
    }

    .review-main-text {
        font-size: 14px !important;
        margin-bottom: 15px !important;
    }

    .reviews-badge {
        font-size: 11px !important;
        padding: 4px 12px !important;
    }

    .review-avatar-placeholder {
        width: 36px !important;
        height: 36px !important;
        font-size: 12px !important;
    }

    .review-meta-data h4 {
        font-size: 14px !important;
    }

    .review-meta-data span {
        font-size: 12px !important;
    }

    .reviews-cta-container {
        padding: 15px !important;
    }

    .reviews-cta-content h3 {
        font-size: 16px !important;
    }

    .btn-reviews-white {
        font-size: 13px !important;
        padding: 10px 18px !important;
    }
}

/* ===== ФУТЕР ===== */
@media (max-width: 992px) {
    .main-footer {
        padding: 40px 0 0 !important;
    }

    .footer-container {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 25px !important;
        padding: 20px 15px 30px !important;
        text-align: center !important;
    }

    .footer-column {
        text-align: center !important;
    }

    .footer-column h3 {
        font-size: 18px !important;
        text-align: center !important;
    }

    .footer-column h3::after {
        left: 50% !important;
        transform: translateX(-50%) !important;
    }

    .footer-logo {
        justify-content: center !important;
        text-align: center !important;
    }

    .footer-brand-desc {
        font-size: 13px !important;
        text-align: center !important;
    }

    .footer-phone-block {
        display: inline-flex !important;
        text-align: center !important;
        align-items: center !important;
        border-left: none !important;
        border-top: 3px solid var(--primary) !important;
        padding: 12px 20px !important;
        border-radius: 12px !important;
    }

    .footer-phone {
        font-size: 16px !important;
        justify-content: center !important;
    }

    .footer-phone-sub {
        text-align: center !important;
        padding-left: 0 !important;
    }

    .socials-intro {
        text-align: center !important;
    }

    .social-links-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        max-width: 300px !important;
        margin: 0 auto !important;
    }

    .social-card-link {
        justify-content: center !important;
        padding: 10px 14px !important;
    }

    .footer-interactive-col {
        grid-column: span 1 !important;
        text-align: center !important;
    }

    .footer-interactive-col svg {
        width: 150px !important;
        height: 150px !important;
    }

    .footer-flex {
        flex-direction: column !important;
        text-align: center !important;
        gap: 8px !important;
    }

    .footer-bottom {
        font-size: 12px !important;
        padding: 15px 0 !important;
    }
}

@media (max-width: 480px) {
    .main-footer {
        padding: 30px 0 0 !important;
    }

    .footer-container {
        gap: 20px !important;
        padding: 15px 10px 20px !important;
    }

    .footer-column h3 {
        font-size: 16px !important;
        margin-bottom: 12px !important;
    }

    .footer-logo span {
        font-size: 16px !important;
    }

    .footer-brand-desc {
        font-size: 12px !important;
    }

    .footer-phone {
        font-size: 14px !important;
    }

    .footer-phone-sub {
        font-size: 11px !important;
    }

    .social-links-grid {
        max-width: 100% !important;
    }

    .social-card-link {
        padding: 8px 12px !important;
    }

    .social-icon-box {
        width: 32px !important;
        height: 32px !important;
        font-size: 14px !important;
    }

    .social-name {
        font-size: 12px !important;
    }

    .social-user {
        font-size: 10px !important;
    }

    .footer-interactive-col svg {
        width: 120px !important;
        height: 120px !important;
    }

    .footer-bottom {
        font-size: 11px !important;
        padding: 12px 0 !important;
    }

    .developer-credit {
        font-size: 11px !important;
    }
}

/* ===== КНОПКИ ПРОКРУТКИ ===== */
@media (max-width: 768px) {
    .scroll-navigation-wrapper {
        bottom: 15px !important;
        right: 15px !important;
        gap: 8px !important;
    }

    .scroll-nav-btn {
        width: 40px !important;
        height: 40px !important;
        font-size: 14px !important;
    }
}

@media (max-width: 480px) {
    .scroll-navigation-wrapper {
        bottom: 10px !important;
        right: 10px !important;
        gap: 6px !important;
    }

    .scroll-nav-btn {
        width: 34px !important;
        height: 34px !important;
        font-size: 12px !important;
        background: rgba(255, 255, 255, 0.9) !important;
    }
}

/* ===== ИНДИКАТОР ПРОКРУТКИ ===== */
@media (max-width: 480px) {
    .scroll-progress-bar {
        height: 3px !important;
    }
}

/* ===== УЛУЧШЕНИЯ ДЛЯ МОБИЛЬНЫХ ===== */
@media (max-width: 480px) {
    /* Убираем лишние отступы у контейнеров */
    .container {
        padding: 0 10px !important;
    }

    /* Улучшаем читаемость */
    body {
        font-size: 15px !important;
        line-height: 1.6 !important;
    }

    p {
        font-size: 14px !important;
        line-height: 1.6 !important;
    }

    /* Центрируем кнопки */
    .btn {
        text-align: center !important;
        justify-content: center !important;
    }

    /* Карточки на всю ширину */
    .access-card,
    .benefit-card,
    .review-premium-card,
    .timeline-item,
    .archive-card {
        width: 100% !important;
        margin: 0 !important;
    }

    /* Убираем hover-эффекты */
    .news-card:hover,
    .access-card:hover,
    .benefit-card:hover,
    .review-premium-card:hover {
        transform: none !important;
        box-shadow: none !important;
    }

    .news-detail-btn:hover {
        transform: none !important;
    }
}

/*.news-card:first-child::before {*/
/*    content: '⭐ САМАЯ СВЕЖАЯ';*/
/*    position: absolute;*/
/*    top: 12px;*/
/*    right: 12px;*/
/*    background: #d96d00; !* Темно-оранжевый *!*/
/*    color: #ffffff;*/
/*    padding: 4px 14px;*/
/*    border-radius: 50px;*/
/*    font-size: 10px;*/
/*    font-weight: 700;*/
/*    letter-spacing: 0.5px;*/
/*    z-index: 5;*/
/*    box-shadow: 0 2px 10px rgba(244, 129, 13, 0.3);*/
/*    animation: pulseBadge 2s ease-in-out infinite;*/
/*}*/

/* ===== ВЫРАВНИВАНИЕ ЗАГОЛОВКОВ И ТЕКСТА В МОБИЛЬНОЙ ВЕРСИИ ===== */

/* Заголовки (h2) — по центру, текст под ними — по левому краю */
@media (max-width: 992px) {
    /* Секция "О нас" */
    #about .about-text p,
    #about .lead-text {
        text-align: left !important;
    }
    #about .features-list .feature-item {
        text-align: left !important;
        align-items: flex-start !important;
    }
    #about .feature-body h3,
    #about .feature-body p {
        text-align: left !important;
    }

    /* Секция "Наши цели и задачи" */
    #mission .mission-text {
        text-align: left !important;
    }

    /* Секция "Преимущества" */
    #benefits .benefit-card p {
        text-align: left !important;
    }
    #benefits .benefit-card h3 {
        text-align: left !important;
    }

    /* Секция "Аудитория" */
    #accessibility .access-card p {
        text-align: left !important;
    }
    #accessibility .access-card h3 {
        text-align: left !important;
    }
    #accessibility .feedback-content p {
        text-align: left !important;
    }
    #accessibility .stations-list {
        text-align: left !important;
    }
    #accessibility .station-badge {
        text-align: left !important;
        justify-content: flex-start !important;
    }

    /* Секция "Автор" */
    #guide .guide-content p {
        text-align: left !important;
    }
    #guide .guide-lead {
        text-align: left !important;
    }
    #guide .guide-quote p {
        text-align: left !important;
    }

    /* Секция "Волонтеры" */
    #process .timeline-body p {
        text-align: left !important;
    }
    #process .timeline-body h3 {
        text-align: left !important;
    }

    /* Секция "Отзывы" */
    #reviews .review-main-text {
        text-align: left !important;
    }
    #reviews .review-author-info {
        text-align: left !important;
        align-items: flex-start !important;
    }
    #reviews .review-meta-data h4,
    #reviews .review-meta-data span {
        text-align: left !important;
    }

    /* Секция "Локация" */
    #location .location-section p {
        text-align: left !important;
    }
    #location .location-section h4 {
        text-align: left !important;
    }

    /* Секция "Форма обратной связи" */
    #feedback .feedback-section p {
        text-align: left !important;
    }
    #feedback .feedback-section h3 {
        text-align: left !important;
    }
}

/* Для очень маленьких экранов */
@media (max-width: 480px) {
    #about .about-text p,
    #about .lead-text {
        text-align: left !important;
    }
    #about .feature-body h3,
    #about .feature-body p {
        text-align: left !important;
    }
    #mission .mission-text {
        text-align: left !important;
    }
    #benefits .benefit-card p {
        text-align: left !important;
    }
    #benefits .benefit-card h3 {
        text-align: left !important;
    }
    #accessibility .access-card p {
        text-align: left !important;
    }
    #accessibility .access-card h3 {
        text-align: left !important;
    }
    #guide .guide-content p {
        text-align: left !important;
    }
    #guide .guide-lead {
        text-align: left !important;
    }
    #guide .guide-quote p {
        text-align: left !important;
    }
    #process .timeline-body p {
        text-align: left !important;
    }
    #process .timeline-body h3 {
        text-align: left !important;
    }
    #reviews .review-main-text {
        text-align: left !important;
    }
    #location .location-section p {
        text-align: left !important;
    }
    #feedback .feedback-section p {
        text-align: left !important;
    }
    #feedback .feedback-section h3 {
        text-align: left !important;
    }
}

@media (max-width: 360px) {
    #about .about-text p,
    #about .lead-text {
        text-align: left !important;
    }
    #mission .mission-text {
        text-align: left !important;
    }
    #benefits .benefit-card p {
        text-align: left !important;
    }
    #accessibility .access-card p {
        text-align: left !important;
    }
    #guide .guide-content p {
        text-align: left !important;
    }
    #reviews .review-main-text {
        text-align: left !important;
    }
    #location .location-section p {
        text-align: left !important;
    }
    #feedback .feedback-section p {
        text-align: left !important;
    }
}
/* ===== СКРЫТИЕ КАРТ В МОБИЛЬНОЙ ВЕРСИИ (display: none) ===== */

@media (max-width: 992px) {
    /* Скрываем все iframe с картами */
    .location-section iframe,
    .location-section .map-frame-border iframe,
    .location-section .map-frame-border,
    .location-section > .container > div > div:not(:last-child) > div:last-child > div:last-child,
    .location-section > .container > div > div:not(:last-child) > div:last-child > div:last-child *,
    .location-section [style*="border"] iframe,
    .location-section [style*="border-radius"] iframe,
    .location-section [style*="border"]:has(iframe),
    .location-section [style*="box-shadow"]:has(iframe) {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        width: 0 !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        max-width: 0 !important;
        max-height: 0 !important;
        overflow: hidden !important;
        position: absolute !important;
        z-index: -9999 !important;
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
    }

    /* Скрываем любые div-обертки с картами */
    .location-section > .container > div > div:not(:last-child) > div:last-child > div:last-child {
        display: none !important;
    }

    /* Скрываем контейнеры, которые могут содержать карты */
    .location-section .map-container,
    .location-section .map-wrapper,
    .location-section .gmap-wrap,
    .location-section .yandex-map,
    .location-section .gmaps-wrapper {
        display: none !important;
    }

    /* Скрываем родительские блоки с iframe */
    .location-section [style*="border"]:has(iframe),
    .location-section [style*="box-shadow"]:has(iframe) {
        display: none !important;
    }

    /* Убираем рамки и фоны у контейнеров карт */
    .location-section .map-frame-border {
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 !important;
        height: 0 !important;
        width: 0 !important;
        overflow: hidden !important;
        display: none !important;
    }
}
/* ===== МОБИЛЬНАЯ ЛОКАЦИЯ (адрес + карта) ===== */

/* Показываем мобильный блок только на мобильных */
@media (max-width: 768px) {
    .mobile-location-block {
        display: block !important;
    }
}

@media (min-width: 769px) {
    .mobile-location-block {
        display: none !important;
    }
}

/* На очень маленьких экранах уменьшаем карту */
@media (max-width: 480px) {
    .mobile-location-block iframe {
        height: 220px !important;
    }

    .mobile-location-block [style*="padding: 24px"] {
        padding: 16px !important;
    }

    .mobile-location-block .fa-map-pin,
    .mobile-location-block .fa-phone-alt {
        font-size: 14px !important;
    }

    .mobile-location-block h4 {
        font-size: 14px !important;
    }

    .mobile-location-block p {
        font-size: 13px !important;
    }

    .mobile-location-block [style*="width: 44px"] {
        width: 36px !important;
        height: 36px !important;
    }
}

@media (max-width: 360px) {
    .mobile-location-block iframe {
        height: 180px !important;
    }
}

/* ===== МОБИЛЬНАЯ ЛОКАЦИЯ (адрес + карта) ===== */

/* Показываем мобильный блок на всех мобильных устройствах */
@media (max-width: 768px) {
    .mobile-location-block {
        display: block !important;
    }

    /* Скрываем десктопные карточки с картами на мобильных */
    .desktop-location-card {
        display: none !important;
    }
}

@media (min-width: 769px) {
    .mobile-location-block {
        display: none !important;
    }

    .desktop-location-card {
        display: block !important;
    }
}

/* ===== НАСТРОЙКИ ДЛЯ 360px ===== */
@media (max-width: 480px) {
    /* Мобильный блок с адресом и картой */
    .mobile-location-block {
        display: block !important;
        margin-bottom: 30px !important;
    }

    /* Карта внутри мобильного блока */
    .mobile-location-block iframe {
        height: 220px !important;
        width: 100% !important;
        display: block !important;
        border: none !important;
        border-radius: 16px !important;
    }

    /* Контейнер с адресом */
    .mobile-location-block > div:first-child {
        padding: 16px !important;
        border-radius: 16px !important;
        margin-bottom: 16px !important;
    }

    /* Иконки */
    .mobile-location-block [style*="width: 44px"] {
        width: 36px !important;
        height: 36px !important;
        flex-shrink: 0 !important;
    }

    .mobile-location-block [style*="width: 44px"] i {
        font-size: 14px !important;
    }

    /* Заголовки */
    .mobile-location-block h4 {
        font-size: 14px !important;
        margin-bottom: 2px !important;
    }

    /* Текст */
    .mobile-location-block p {
        font-size: 13px !important;
        line-height: 1.5 !important;
    }

    /* Ссылки */
    .mobile-location-block a {
        font-size: 13px !important;
    }

    /* Обертка карты */
    .mobile-location-block > div:last-child {
        border-radius: 16px !important;
        border-width: 2px !important;
        overflow: hidden !important;
        box-shadow: 0 8px 30px rgba(244, 129, 13, 0.12) !important;
    }

    /* Скрываем десктопные карточки с картами */
    .desktop-location-card {
        display: none !important;
    }

    /* Убеждаемся, что карта видна */
    .mobile-location-block iframe[src*="yandex"] {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        height: 220px !important;
        width: 100% !important;
        min-height: 220px !important;
        min-width: 100% !important;
        max-height: none !important;
        max-width: none !important;
        position: relative !important;
        z-index: 1 !important;
        pointer-events: auto !important;
    }
}

/* ===== ДЛЯ САМЫХ МАЛЕНЬКИХ ЭКРАНОВ (320-375px) ===== */
@media (max-width: 375px) {
    .mobile-location-block iframe {
        height: 180px !important;
        min-height: 180px !important;
    }

    .mobile-location-block > div:first-child {
        padding: 12px !important;
    }

    .mobile-location-block [style*="width: 44px"] {
        width: 32px !important;
        height: 32px !important;
    }

    .mobile-location-block [style*="width: 44px"] i {
        font-size: 12px !important;
    }

    .mobile-location-block h4 {
        font-size: 13px !important;
    }

    .mobile-location-block p {
        font-size: 12px !important;
    }

    .mobile-location-block a {
        font-size: 12px !important;
    }
}

/* ===== ОТМЕНА СКРЫТИЯ КАРТ ИЗ ОСНОВНОГО СТИЛЯ ===== */
@media (max-width: 992px) {
    /* Отменяем скрытие iframe для мобильного блока */
    .mobile-location-block iframe,
    .mobile-location-block .map-frame-border iframe,
    .mobile-location-block [style*="border"] iframe,
    .mobile-location-block [style*="border-radius"] iframe,
    .mobile-location-block [style*="border"]:has(iframe),
    .mobile-location-block [style*="box-shadow"]:has(iframe) {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        width: 100% !important;
        height: auto !important;
        min-width: auto !important;
        min-height: auto !important;
        max-width: 100% !important;
        max-height: none !important;
        overflow: visible !important;
        position: relative !important;
        z-index: 1 !important;
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
        margin: 0 !important;
        padding: 0 !important;
        border-radius: 16px !important;
        background: transparent !important;
    }

    /* Отменяем скрытие родительских блоков */
    .mobile-location-block .map-container,
    .mobile-location-block .map-wrapper,
    .mobile-location-block .gmap-wrap,
    .mobile-location-block .yandex-map,
    .mobile-location-block .gmaps-wrapper {
        display: block !important;
    }

    .mobile-location-block [style*="border"]:has(iframe),
    .mobile-location-block [style*="box-shadow"]:has(iframe) {
        display: block !important;
    }

    .mobile-location-block .map-frame-border {
        border: none !important;
        background: transparent !important;
        box-shadow: none !important;
        padding: 0 !important;
        margin: 0 !important;
        height: auto !important;
        width: 100% !important;
        overflow: visible !important;
        display: block !important;
    }
}