* { margin:0; padding:0; box-sizing:border-box; }
body { background:#0b0d1a; color:#fff; font-family:Arial, sans-serif; }
.container { max-width:1200px; margin:0 auto; padding:0 15px; }

.hero { background:linear-gradient(to bottom,#14182f,#0b0d1a); padding:40px 0 70px; text-align:center; }
h1 { font-size:52px; margin-bottom:10px; text-shadow:0 0 20px #8b6cff; }
h1 span { color:#a386ff; }
.subtitle { font-size:24px; color:#c7b8ff; margin-bottom:30px; }

.main-media { 
    max-width:100%; 
    border-radius:20px; 
    box-shadow:0 0 50px rgba(139,108,255,0.5); 
    margin:30px 0; 
    width:100%; 
    height:auto;
}

.features {
    background:rgba(139,108,255,0.15);
    border:1px solid #8b6cff;
    border-radius:15px;
    padding:20px;
    margin:30px 0;
    font-size:18px;
    line-height:1.8;
}

.price-block { margin:40px 0; font-weight:bold; }
.price-old { font-size:32px; color:#666; text-decoration:line-through; margin-right:20px; }
.price-new { font-size:48px; color:#ff6b6b; }
.sale { background:#ff0040; padding:8px 24px; border-radius:50px; font-size:26px; margin-left:15px; }

.timer { background:rgba(255,0,64,0.15); padding:20px; border-radius:15px; margin:30px 0; font-size:20px; }
#countdown { font-size:38px; font-weight:bold; color:#ff6b6b; margin-top:10px; }

.buy-btn {
    display:inline-block;
    background:linear-gradient(45deg,#ff6b6b,#ffa046);
    color:white;
    font-size:34px;
    font-weight:bold;
    padding:22px 70px;
    border-radius:50px;
    text-decoration:none;
    margin:40px 0;
    box-shadow:0 15px 40px rgba(255,107,107,0.5);
    transition:0.3s;
}
.buy-btn:hover { transform:scale(1.07); }

.bonus {
    background:rgba(139,108,255,0.2);
    border:1px solid #8b6cff;
    padding:20px;
    border-radius:15px;
    font-size:22px;
    margin-top:30px;
}

.gallery { padding:70px 0; background:#14182f; text-align:center; }
.gallery h2 { font-size:38px; color:#a386ff; margin-bottom:20px; }
.gallery-text { font-size:20px; margin-bottom:40px; color:#d0c4ff; }

.grid {
    display:grid;
    grid-template-columns: repeat(2, 1fr);
    gap:20px;
}
.grid img {
    width:100%;
    border-radius:15px;
    box-shadow:0 0 30px rgba(139,108,255,0.3);
    cursor:zoom-in;
    transition:0.3s;
}
.grid img:hover { transform:scale(1.04); }

.saga-text {
    grid-column: 1 / -1;
    background:rgba(139,108,255,0.1);
    border:1px solid #8b6cff;
    border-radius:15px;
    padding:20px;
    font-size:18px;
    line-height:1.6;
    color:#d0c4ff;
    text-align:center;
}

.footer {
    padding:50px 0;
    text-align:center;
    font-size:18px;
    color:#a386ff;
}
.footer a { color:#ff6b6b; text-decoration:underline; }

#lightbox {
    display:none;
    position:fixed; top:0; left:0; right:0; bottom:0;
    background:rgba(0,0,0,0.97);
    z-index:999;
    justify-content:center;
    align-items:center;
}
#lightbox-img { max-width:94%; max-height:94vh; border-radius:15px; }

@media (max-width:768px) {
    h1 { font-size:38px; }
    .buy-btn { font-size:28px; padding:18px 50px; }
    .grid { grid-template-columns: 1fr; } /* На очень узких — 1 колонка */
    .saga-text { font-size:16px; padding:15px; }
}
@media (max-width:480px) {
    .price-new { font-size:40px; }
    #countdown { font-size:28px; }
}