*{margin:0;padding:0;box-sizing:border-box}
body{
font-family:Inter,sans-serif;
background:#070d1f;
color:#fff;
}
.container{
width:90%;
max-width:1300px;
margin:auto;
}
header{
display:flex;
justify-content:space-between;
align-items:center;
padding:30px 0;
}
.logo{
display:flex;
gap:12px;
align-items:center;
}
.icon{
width:46px;
height:46px;
border-radius:12px;
background:linear-gradient(135deg,#7c3aed,#6366f1);
display:flex;
align-items:center;
justify-content:center;
font-weight:700;
}
.hero{
display:grid;
grid-template-columns:2fr 1fr;
gap:30px;
padding:60px 0;
}
.card{
background:#0d152c;
border:1px solid rgba(255,255,255,.08);
padding:40px;
border-radius:24px;
}
.badge{
display:inline-block;
margin-bottom:20px;
}
h1{
font-size:56px;
margin-bottom:20px;
}
p,li{
color:#b7c0d4;
line-height:1.8;
}
.btn{
display:inline-block;
text-decoration:none;
padding:14px 22px;
border-radius:12px;
margin-top:20px;
cursor:pointer;
}
.primary{
background:linear-gradient(135deg,#7c3aed,#6366f1);
color:#fff;
}
.outline{
border:1px solid rgba(255,255,255,.15);
color:#fff;
}

footer{
padding:40px 0;
color:#9ca3af;
}

.restriction-modal{
    display:none;
    position:fixed;
    inset:0;
    z-index:99999;
    justify-content:center;
    align-items:center;
    padding:20px;
    background:rgba(2,6,23,.75);
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    animation:fadeIn .25s ease;
}

.restriction-box{
    position:relative;
    width:92%;
    max-width:520px;
    padding:45px;
    text-align:center;
    overflow:hidden;

    background:rgba(12,18,38,.92);

    border:1px solid rgba(255,255,255,.08);

    border-radius:28px;

    box-shadow:
    0 25px 80px rgba(0,0,0,.55),
    0 0 0 1px rgba(255,255,255,.04);

    animation:popup .3s ease;
}

.restriction-glow{
    position:absolute;
    width:350px;
    height:350px;
    background:radial-gradient(
        circle,
        rgba(124,58,237,.45),
        transparent 70%
    );
    top:-180px;
    left:50%;
    transform:translateX(-50%);
    pointer-events:none;
}

.restriction-icon{
    position:relative;
    width:90px;
    height:90px;
    margin:0 auto 25px;

    border-radius:24px;

    background:linear-gradient(
        135deg,
        #7c3aed,
        #6366f1
    );

    display:flex;
    align-items:center;
    justify-content:center;

    color:white;

    box-shadow:
    0 15px 40px rgba(124,58,237,.45);
}

.restriction-badge{
    position:relative;
    display:inline-block;

    padding:10px 18px;

    border-radius:999px;

    font-size:13px;
    font-weight:600;

    color:#c4b5fd;

    background:rgba(124,58,237,.12);

    border:1px solid rgba(124,58,237,.25);

    margin-bottom:18px;
}

.restriction-box h2{
    position:relative;
    font-size:34px;
    font-weight:800;
    margin-bottom:15px;
}

.restriction-box p{
    position:relative;
    color:#b7c0d4;
    line-height:1.8;
    font-size:16px;
    max-width:400px;
    margin:0 auto 30px;
}

.restriction-actions{
    position:relative;
    display:flex;
    justify-content:center;
}

.restriction-btn{
    border:none;
    cursor:pointer;

    padding:14px 30px;

    border-radius:14px;

    font-family:inherit;
    font-weight:700;
    font-size:15px;

    color:white;

    background:
    linear-gradient(
        135deg,
        #7c3aed,
        #6366f1
    );

    transition:.25s ease;

    box-shadow:
    0 12px 30px rgba(124,58,237,.35);
}

.restriction-btn:hover{
    transform:translateY(-2px);
}

.restriction-btn:focus-visible{
    outline:3px solid rgba(196,181,253,.55);
    outline-offset:4px;
}

@keyframes fadeIn{
    from{
        opacity:0;
    }
    to{
        opacity:1;
    }
}

@keyframes popup{
    from{
        opacity:0;
        transform:translateY(20px) scale(.95);
    }
    to{
        opacity:1;
        transform:translateY(0) scale(1);
    }
}

@media(max-width:900px){
.hero{grid-template-columns:1fr;}
h1{font-size:40px;}
}

@media(max-width:560px){
header{align-items:flex-start;gap:20px;}
nav{display:flex;flex-direction:column;align-items:stretch;}
nav .btn{margin-top:8px;text-align:center;}
.card{padding:28px;}
.restriction-box{width:100%;padding:36px 24px;border-radius:24px;}
.restriction-icon{width:78px;height:78px;border-radius:21px;}
.restriction-box h2{font-size:29px;}
}
