/* Compact mobile layout — loaded last so it wins over page-level styles */

html {
    -webkit-text-size-adjust: 100%;
}

@media (max-width: 768px) {
    html,
    body {
        overflow-x: hidden !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    body {
        padding-top: 58px !important;
        line-height: 1.5 !important;
    }

    .container {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    .header {
        padding: 8px 0 !important;
    }

    .logo-img {
        height: 36px !important;
        margin-right: 8px !important;
    }

    /* Hero — keep above the fold on phones */
    .hero {
        min-height: 0 !important;
        height: auto !important;
        padding: 10px 0 8px !important;
    }

    .hero-content {
        flex-direction: column !important;
        padding: 0 8px !important;
        gap: 8px !important;
        text-align: center !important;
    }

    .hero-left {
        margin-bottom: 0 !important;
        max-width: 100% !important;
    }

    .hero-title {
        font-size: 1.12rem !important;
        line-height: 1.25 !important;
        margin-bottom: 0.3rem !important;
        letter-spacing: 0 !important;
        font-weight: 700 !important;
    }

    .hero-subtitle {
        font-size: 0.78rem !important;
        line-height: 1.35 !important;
        margin-bottom: 0.5rem !important;
        max-width: 100% !important;
    }

    .hero-buttons {
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        gap: 8px !important;
        align-items: stretch !important;
        justify-content: center !important;
    }

    .hero-buttons .btn-primary,
    .hero-buttons .btn-secondary {
        width: auto !important;
        flex: 1 1 0 !important;
        max-width: none !important;
        padding: 0.45rem 0.5rem !important;
        font-size: 0.75rem !important;
        white-space: nowrap !important;
    }

    .phone-mockup {
        width: 100% !important;
        height: auto !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 28px !important;
        box-sizing: border-box !important;
    }

    .slider-container {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
    }

    .slider-container img,
    .mockup-img,
    #slayt {
        height: auto !important;
        max-height: none !important;
        width: 100% !important;
        object-fit: contain !important;
        border-radius: 10px !important;
    }

    .slider-nav,
    .phone-mockup > button {
        width: 32px !important;
        height: 32px !important;
        top: 50% !important;
        z-index: 5 !important;
    }

    .slider-nav-prev,
    .phone-mockup > button:first-of-type {
        left: 0 !important;
        right: auto !important;
    }

    .slider-nav-next,
    .phone-mockup > button:last-of-type {
        right: 0 !important;
        left: auto !important;
    }

    .shape-divider svg {
        height: 28px !important;
    }

    /* Sections — compact like a native app */
    .section,
    .stats-section,
    .partners-section,
    .demo-section,
    .age-groups-section,
    .about-section,
    .mission-vision-section,
    .education-approach-section,
    .team-section,
    .cta-section,
    .galeri-section,
    .rating-section,
    .yasal-wrap {
        padding: 28px 0 !important;
    }

    #degerlendirmeler,
    #instagram-etkinlikler,
    #ozellikler,
    #programlar,
    #iletisim {
        padding-top: 28px !important;
        padding-bottom: 28px !important;
    }

    .section-header {
        margin-bottom: 16px !important;
    }

    .section-title {
        font-size: 1.35rem !important;
        line-height: 1.3 !important;
        margin-bottom: 0.4rem !important;
    }

    .section-subtitle {
        font-size: 0.88rem !important;
        margin: 0 !important;
        padding: 0 4px !important;
    }

    .highlight::after {
        height: 5px !important;
    }

    /* Stats: 2x2 compact grid instead of 4 stacked circles */
    .stats-section {
        padding: 10px 0 4px !important;
    }

    .stats-container {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 6px 8px !important;
        flex-direction: unset !important;
        align-items: stretch !important;
        justify-content: stretch !important;
    }

    .stat-item {
        min-width: 0 !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 4px 2px !important;
    }

    .stat-circle {
        width: 56px !important;
        height: 56px !important;
        margin: 0 auto 4px !important;
        box-shadow: 0 6px 12px rgba(139, 92, 246, 0.18) !important;
    }

    .stat-number {
        font-size: 1.05rem !important;
    }

    .stat-symbol {
        font-size: 0.75rem !important;
        top: 12px !important;
        right: 14px !important;
    }

    .stat-title {
        font-size: 0.78rem !important;
        line-height: 1.3 !important;
    }

    /* Testimonials */
    .testimonial-slider {
        padding: 0 !important;
        max-width: 100% !important;
    }

    .testimonial-slide {
        padding: 16px 14px !important;
        max-width: 100% !important;
    }

    .testimonial-rating {
        font-size: 16px !important;
        margin-bottom: 8px !important;
    }

    .testimonial-text {
        font-size: 0.9rem !important;
        line-height: 1.55 !important;
        margin-bottom: 10px !important;
    }

    .testimonial-slider button {
        width: 32px !important;
        height: 32px !important;
        left: 0 !important;
        right: 0 !important;
    }

    .testimonial-slider > div[style*="position: absolute"] {
        padding: 0 !important;
    }

    .testimonial-slider > div[style*="position: absolute"] > div {
        padding: 0 4px !important;
    }

    /* Age groups */
    .age-groups-container {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        margin-top: 8px !important;
        flex-direction: unset !important;
    }

    .age-group-card {
        width: 100% !important;
        max-width: none !important;
        padding: 14px 12px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    .age-icon {
        font-size: 26px !important;
        margin-bottom: 6px !important;
    }

    .age-group-card h3 {
        font-size: 1.05rem !important;
        margin-bottom: 4px !important;
    }

    .age-group-card p {
        font-size: 0.85rem !important;
        margin-bottom: 4px !important;
    }

    /* Features */
    .features-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .feature-item {
        padding: 14px 12px !important;
        max-width: none !important;
        margin: 0 !important;
        border-radius: 12px !important;
    }

    .feature-icon {
        width: 48px !important;
        height: 48px !important;
        font-size: 1.15rem !important;
        margin: 0 auto 8px !important;
    }

    .feature-item h3 {
        font-size: 1rem !important;
        margin-bottom: 4px !important;
    }

    .feature-item p {
        font-size: 0.85rem !important;
        line-height: 1.45 !important;
        margin: 0 !important;
    }

    /* Programs preview */
    .partners-section {
        padding: 24px 0 !important;
    }

    .partners-slider {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
        flex-direction: unset !important;
        align-items: stretch !important;
    }

    .partner-item {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        filter: none !important;
        opacity: 1 !important;
    }

    .partner-item img {
        max-width: 100% !important;
        height: 150px !important;
        object-fit: cover !important;
    }

    .partner-item h4 {
        font-size: 0.95rem !important;
        margin-top: 6px !important;
        margin-bottom: 0 !important;
    }

    /* Instagram cards */
    .ig-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
        margin-top: 12px !important;
    }

    .ig-card img {
        height: 150px !important;
    }

    .ig-card h3 {
        font-size: 0.98rem !important;
    }

    /* Contact */
    .demo-section {
        background-attachment: scroll !important;
        padding: 28px 0 !important;
    }

    .demo-section [style*="background-attachment"] {
        background-attachment: scroll !important;
    }

    .demo-container {
        flex-direction: column !important;
        gap: 18px !important;
        align-items: stretch !important;
    }

    .demo-left,
    .demo-right {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
        text-align: center !important;
    }

    .demo-logo {
        width: 88px !important;
        margin-bottom: 12px !important;
    }

    .contact-info {
        gap: 8px !important;
        align-items: stretch !important;
    }

    .contact-item {
        gap: 10px !important;
        text-align: left !important;
        justify-content: flex-start !important;
        padding: 8px 0 !important;
        margin-bottom: 0 !important;
        background: transparent !important;
    }

    .contact-icon {
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
        font-size: 0.9rem !important;
        margin: 0 !important;
    }

    .contact-text h4 {
        font-size: 0.85rem !important;
        margin-bottom: 2px !important;
    }

    .contact-text p {
        font-size: 0.82rem !important;
        margin: 0 !important;
        line-height: 1.4 !important;
    }

    .contact-form-card,
    .demo-right > div {
        padding: 14px 12px !important;
        border-radius: 14px !important;
    }

    .demo-title {
        font-size: 1.15rem !important;
        margin-bottom: 12px !important;
    }

    .demo-form {
        gap: 10px !important;
    }

    .form-control,
    textarea.form-control {
        padding: 10px 12px !important;
        font-size: 16px !important;
        min-height: 0 !important;
    }

    textarea.form-control {
        min-height: 88px !important;
    }

    .btn-primary.full-width {
        padding: 11px !important;
        margin-top: 4px !important;
    }

    /* Program detail cards */
    .program-card {
        flex-direction: column !important;
        gap: 12px !important;
        margin-bottom: 16px !important;
        padding: 12px !important;
    }

    .program-image {
        max-width: 100% !important;
        margin-bottom: 0 !important;
    }

    .program-content {
        padding: 0 !important;
        width: 100% !important;
    }

    .program-card h2 {
        font-size: 1.15rem !important;
        margin-bottom: 8px !important;
        text-align: left !important;
    }

    .program-card p {
        font-size: 0.88rem !important;
        line-height: 1.5 !important;
        margin-bottom: 8px !important;
        text-align: left !important;
    }

    .program-features {
        margin-top: 8px !important;
        max-width: none !important;
        align-items: flex-start !important;
    }

    .program-button {
        width: 100% !important;
        margin: 10px 0 0 !important;
        padding: 10px 14px !important;
        font-size: 0.9rem !important;
    }

    /* Page headers */
    .page-header {
        padding: 28px 0 36px !important;
        margin-bottom: 0 !important;
    }

    .page-title {
        font-size: 1.4rem !important;
        margin-bottom: 4px !important;
    }

    .breadcrumb {
        font-size: 0.8rem !important;
        gap: 6px !important;
    }

    /* Gallery */
    .galeri-filter {
        gap: 6px !important;
        margin-bottom: 14px !important;
    }

    .filter-btn {
        padding: 6px 12px !important;
        font-size: 0.78rem !important;
        margin: 2px !important;
    }

    .galeri-grid {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .galeri-img,
    .video-container {
        height: 180px !important;
    }

    /* About */
    .about-content {
        gap: 14px !important;
    }

    .about-image {
        max-width: 180px !important;
    }

    .about-text p {
        font-size: 0.9rem !important;
        margin-bottom: 10px !important;
    }

    .about-features,
    .approach-content,
    .team-members {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .mission-box,
    .vision-box,
    .approach-item,
    .about-feature {
        padding: 14px 12px !important;
    }

    .cta-content h2 {
        font-size: 1.2rem !important;
        margin-bottom: 8px !important;
    }

    .cta-content p {
        margin-bottom: 14px !important;
        font-size: 0.9rem !important;
    }

    /* Legal */
    .yasal-card {
        padding: 16px 14px !important;
        border-radius: 12px !important;
    }

    .yasal-card h2 {
        font-size: 1.05rem !important;
        margin: 16px 0 6px !important;
    }

    /* Rating form */
    .rating-form-container {
        padding: 0 !important;
    }

    .rating-form .form-group {
        margin-bottom: 12px !important;
    }

    .star-rating label {
        font-size: 22px !important;
    }

    .testimonials-section {
        margin-top: 24px !important;
        padding-top: 16px !important;
    }

    .testimonials-container {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        margin-top: 12px !important;
        overflow: visible !important;
        flex-wrap: unset !important;
    }

    .testimonial-card {
        min-width: 0 !important;
        width: 100% !important;
        max-width: none !important;
        padding: 14px !important;
    }

    /* Footer */
    .footer {
        padding: 28px 0 72px !important;
    }

    .footer-content {
        flex-direction: column !important;
        gap: 16px !important;
        margin-bottom: 12px !important;
    }

    .footer-column {
        min-width: 0 !important;
        width: 100% !important;
        margin-bottom: 0 !important;
    }

    .footer-column h3 {
        font-size: 1.05rem !important;
        margin-bottom: 8px !important;
        padding-bottom: 6px !important;
    }

    .footer-column p {
        margin-bottom: 10px !important;
        font-size: 0.85rem !important;
        line-height: 1.5 !important;
    }

    .footer-link {
        margin-bottom: 6px !important;
        font-size: 0.85rem !important;
    }

    .copyright {
        padding-top: 12px !important;
        font-size: 0.78rem !important;
    }

    /* Modals */
    .rating-modal,
    .video-modal {
        padding: 12px !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
        box-sizing: border-box !important;
    }

    .rating-modal-content {
        width: 100% !important;
        max-width: 100% !important;
        margin: 8px auto !important;
        padding: 16px 14px !important;
        max-height: min(88vh, 640px);
        overflow-y: auto;
        box-sizing: border-box !important;
    }

    .rating-modal h2 {
        font-size: 1.15rem !important;
        margin-bottom: 12px !important;
    }

    .close-modal {
        top: 8px !important;
        right: 12px !important;
        font-size: 22px !important;
    }

    .video-modal-content {
        width: 100% !important;
        max-width: 100% !important;
        margin: 48px auto 12px !important;
    }

    .video-modal-content h3 {
        font-size: 1rem !important;
        margin-bottom: 8px !important;
    }

    .video-modal-content video {
        max-height: 58vh !important;
        width: 100% !important;
    }

    .close-video {
        top: 8px !important;
        left: auto !important;
        right: 8px !important;
        width: 36px !important;
        height: 36px !important;
        font-size: 24px !important;
    }

    /* Floating WhatsApp widget */
    .whatsapp-float {
        width: 46px !important;
        height: 46px !important;
        bottom: calc(12px + env(safe-area-inset-bottom, 0px)) !important;
        right: calc(12px + env(safe-area-inset-right, 0px)) !important;
        font-size: 22px !important;
        z-index: 1100 !important;
    }

    .whatsapp-float i {
        font-size: 22px !important;
    }

    /* Nav drawer */
    .nav-menu {
        padding-top: 12px !important;
    }

    .nav-link {
        padding: 12px 16px !important;
        font-size: 0.92rem !important;
    }
}

@media (max-width: 400px) {
    .hero-title {
        font-size: 1.05rem !important;
    }

    .hero-subtitle {
        font-size: 0.74rem !important;
    }

    .section-title {
        font-size: 1.18rem !important;
    }

    .stat-circle {
        width: 52px !important;
        height: 52px !important;
    }
}
