/* =====================================================
   LARGE DESKTOP
===================================================== */

@media (min-width:1400px){

    .hero-title{
        font-size:clamp(3.6rem,5vw,5.3rem);
    }

}


/* =====================================================
   NOTEBOOK / SMALL DESKTOP
===================================================== */

@media (max-width:1180px){

    .header .container{
        gap:24px;
    }

    .navigation{
        gap:22px;
    }

    .header-cta{
        padding-left:20px;
        padding-right:20px;
    }

    .hero-grid{
        gap:50px;
    }

    .solutions-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .architecture-flow{
        display:grid;
        grid-template-columns:repeat(5,minmax(0,1fr));
        gap:14px;
    }

    .flow-line{
        display:none;
    }

    .footer-grid{
        grid-template-columns:1.4fr repeat(3,1fr);
        gap:34px;
    }

}


/* =====================================================
   TABLET
===================================================== */

@media (max-width:960px){

    body.menu-open{
        overflow:hidden;
    }

    .header{
        min-height:78px;
    }

    .header .container{
        position:relative;
        min-height:78px;
    }

    .header .logo{
        position:relative;
        z-index:1002;
    }

    .header .logo img{
        max-width:180px;
    }

    .header-cta{
        display:none;
    }

    .menu-toggle{
		position:relative;
		z-index:1002;
		display:flex;
	}

    .menu-toggle.active span:nth-child(1){
        transform:translateY(7px) rotate(45deg);
    }

    .menu-toggle.active span:nth-child(2){
        opacity:0;
    }

    .menu-toggle.active span:nth-child(3){
        transform:translateY(-7px) rotate(-45deg);
    }

    .navigation{
        position:fixed;
        z-index:1001;
        inset:0;
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:26px;
        padding:110px 24px 50px;
        background:rgba(9,13,19,.97);
        -webkit-backdrop-filter:blur(18px);
		backdrop-filter:blur(18px);
        opacity:0;
        visibility:hidden;
        transform:translateY(-12px);
        transition:opacity .3s ease,
                   visibility .3s ease,
                   transform .3s ease;
    }

    .navigation.active{
        opacity:1;
        visibility:visible;
        transform:translateY(0);
    }

    .navigation a{
		min-width:180px;
		padding:10px 16px;

		font-size:1.35rem;
		font-weight:600;
		text-align:center;
	}

    .hero{
        min-height:auto;
        padding:140px 0 90px;
    }

    .hero-grid{
        grid-template-columns:1fr;
        gap:42px;
        text-align:center;
    }

    .hero-content{
        max-width:760px;
        margin:0 auto;
    }

    .hero-description{
        margin-left:auto;
        margin-right:auto;
    }

    .hero-buttons,
    .hero-tags{
        justify-content:center;
    }

    .hero-network{
		width:100%;
		max-width:680px;
		min-height:520px;

		margin:0 auto;
}

    .about,
    .solutions,
    .advantages,
    .architecture{
        padding:95px 0;
    }

    .about-grid{
        grid-template-columns:1fr;
        gap:58px;
    }

    .about-content{
        max-width:760px;
    }

    .architecture-flow{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .stats{
        padding:25px 0 95px;
    }

    .stats-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .cta-section{
        padding-bottom:95px;
    }

    .cta-box{
        padding:58px 46px;
    }

    .footer-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

}


/* =====================================================
   MOBILE LANDSCAPE / LARGE MOBILE
===================================================== */

@media (max-width:720px){

    .container{
        width:min(100% - 32px,var(--container));
    }

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

    .section-title{
        font-size:clamp(1.85rem,8vw,2.5rem);
    }

    .hero{
        padding:125px 0 75px;
    }

    .hero-title{
        font-size:clamp(2.6rem,11vw,4rem);
    }

    .hero-description{
        font-size:1rem;
        line-height:1.75;
    }

    .hero-buttons{
        flex-direction:column;
        align-items:stretch;
        max-width:420px;
        margin-left:auto;
        margin-right:auto;
    }

    .hero-buttons .btn{
        width:100%;
        justify-content:center;
    }

    .hero-network{
		min-height:400px;
		margin-top:0;
	}

    .network-svg{
        width:100%;
        height:auto;
    }

    .about,
    .solutions,
    .advantages,
    .architecture{
        padding:78px 0;
    }

    .about-cards,
    .solutions-grid,
    .advantages-grid{
        grid-template-columns:1fr;
    }

    .about-card,
    .solution-card,
    .advantage-card{
        min-height:auto;
    }

    .solution-card,
    .advantage-card{
        padding:34px 28px;
    }

    .architecture-flow{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .flow-item{
        min-height:160px;
    }

    .stats{
        padding:15px 0 78px;
    }

    .stats-grid{
        grid-template-columns:1fr;
    }

    .stat-card{
        min-height:145px;
    }

    .cta-section{
        padding-bottom:78px;
    }

    .cta-box{
        padding:46px 30px;
        border-radius:22px;
    }

    .cta-actions{
        flex-direction:column;
        align-items:stretch;
    }

    .cta-actions .btn{
        width:100%;
        justify-content:center;
    }

    .footer{
        padding-top:58px;
    }

    .footer-grid{
        grid-template-columns:1fr;
        gap:38px;
    }

    .footer-brand{
        max-width:none;
    }

    .footer-bottom{
        flex-direction:column;
        align-items:flex-start;
        margin-top:44px;
    }

}


/* =====================================================
   SMALL MOBILE
===================================================== */

@media (max-width:480px){

    .container{
        width:min(100% - 24px,var(--container));
    }

    .header .logo img{
        max-width:155px;
    }

    .hero{
        padding-top:112px;
    }

    .hero-badge{
        font-size:.72rem;
        letter-spacing:.04em;
    }

    .hero-title{
        font-size:clamp(2.25rem,12vw,3.1rem);
    }

	.hero-network{
    min-height:320px;
	}

    .hero-tags{
        gap:8px;
    }

    .tag{
        padding:8px 11px;
        font-size:.78rem;
    }

    .about-cards{
        gap:16px;
    }

    .about-card{
        min-height:155px;
        padding:28px 22px;
    }

    .solution-card,
    .advantage-card{
        padding:30px 24px;
    }

    .solution-icon,
    .advantage-icon,
    .flow-icon{
        width:62px;
        height:62px;
    }

    .architecture-flow{
        grid-template-columns:1fr;
    }

    .flow-item{
        min-height:145px;
    }

    .cta-box{
        padding:38px 22px;
    }

}


/* =====================================================
   REDUCED MOTION
===================================================== */

@media (prefers-reduced-motion:reduce){

    *,
    *::before,
    *::after{
        scroll-behavior:auto !important;
        animation-duration:.01ms !important;
		animation-delay:0s !important;
        animation-iteration-count:1 !important;
        transition-duration:.01ms !important;
    }

}
