/*==================================================
HAHA MULTIMEDIA IPTV
Modern UI v2.0
==================================================*/

/*==========================
RESET
==========================*/

*{
margin:0;
padding:0;
box-sizing:border-box;
}

html{
scroll-behavior:smooth;
}

body{

font-family:'Cairo',sans-serif;

background:#050816;

color:#ffffff;

overflow-x:hidden;

line-height:1.6;

}

/*==========================
ROOT COLORS
==========================*/

:root{

--blue:#00d4ff;

--purple:#7b3dff;

--pink:#ff2d95;

--green:#00ff99;

--white:#ffffff;

--text:#d6d6d6;

--dark:#050816;

--dark2:#0b1023;

--dark3:#12192d;

--card:rgba(255,255,255,.05);

--border:rgba(255,255,255,.08);

--shadow:0 0 30px rgba(0,212,255,.18);

--radius:22px;

}

/*==========================
SCROLLBAR
==========================*/

::-webkit-scrollbar{

width:10px;

}

::-webkit-scrollbar-track{

background:#050816;

}

::-webkit-scrollbar-thumb{

background:linear-gradient(

180deg,

var(--blue),

var(--purple),

var(--pink)

);

border-radius:30px;

}

/*==========================
BODY BACKGROUND
==========================*/

body::before{

content:"";

position:fixed;

inset:0;

background:

radial-gradient(circle at 15% 20%,

rgba(0,212,255,.13),

transparent 28%),

radial-gradient(circle at 85% 25%,

rgba(123,61,255,.15),

transparent 30%),

radial-gradient(circle at 50% 100%,

rgba(255,45,149,.12),

transparent 32%);

z-index:-2;

}

/*==========================
LINKS
==========================*/

a{

text-decoration:none;

color:inherit;

transition:.3s;

}

/*==========================
IMAGES
==========================*/

img{

max-width:100%;

display:block;

}

/*==========================
SECTION
==========================*/

section{

padding:120px 5%;

position:relative;

}

/*==========================
CONTAINER
==========================*/

.container{

width:100%;

max-width:1400px;

margin:auto;

}

/*==========================
HEADINGS
==========================*/

h1{

font-size:clamp(42px,6vw,78px);

line-height:1.2;

font-weight:800;

}

h2{

font-size:clamp(34px,5vw,55px);

font-weight:800;

}

h3{

font-size:28px;

font-weight:700;

}

p{

font-size:18px;

color:var(--text);

line-height:2;

}

/*==========================
SECTION TITLE
==========================*/

.section-title{

text-align:center;

margin-bottom:70px;

}

.section-title h2{

margin-bottom:15px;

background:

linear-gradient(

90deg,

var(--blue),

var(--purple),

var(--pink)

);

-webkit-background-clip:text;

-webkit-text-fill-color:transparent;

}

.section-title p{

max-width:750px;

margin:auto;

}

/*==========================
BUTTONS
==========================*/

.btn-primary{

display:inline-flex;

align-items:center;

justify-content:center;

padding:16px 38px;

border-radius:50px;

background:

linear-gradient(

90deg,

var(--blue),

var(--purple)

);

color:white;

font-weight:700;

box-shadow:var(--shadow);

transition:.35s;

}

.btn-primary:hover{

transform:translateY(-6px);

}

.btn-secondary{

display:inline-flex;

align-items:center;

justify-content:center;

padding:16px 38px;

border-radius:50px;

border:2px solid var(--blue);

color:var(--blue);

font-weight:700;

transition:.35s;

}

.btn-secondary:hover{

background:var(--blue);

color:#000;

}

/*==========================
GLASS CARD
==========================*/

.glass{

background:var(--card);

border:1px solid var(--border);

backdrop-filter:blur(18px);

border-radius:var(--radius);

}

/*==========================
ANIMATIONS
==========================*/

@keyframes floating{

0%{

transform:translateY(0);

}

50%{

transform:translateY(-12px);

}

100%{

transform:translateY(0);

}

}

@keyframes pulse{

50%{

transform:scale(1.05);

}

}

@keyframes fadeUp{

from{

opacity:0;

transform:translateY(60px);

}

to{

opacity:1;

transform:translateY(0);

}

}

/*==================================================
HEADER
==================================================*/

.fixed-top{

position:fixed;

top:0;

left:0;

width:100%;

z-index:99999;

}

/*==========================
TOP NEWS
==========================*/

.top-news{

height:42px;

display:flex;

align-items:center;

overflow:hidden;

background:linear-gradient(
90deg,
var(--blue),
var(--purple),
var(--pink)
);

box-shadow:0 5px 20px rgba(0,0,0,.25);

}

.news-track{
    display:inline-block;
    white-space:nowrap;
    font-size:15px;
    font-weight:700;
    color:#fff;
    animation:newsMove 40s linear infinite;
    padding:0 20px;
}

@keyframes newsMove{
    from{
        transform:translateX(-100%);
    }
    to{
        transform:translateX(100%);
    }
}

/*==========================
HEADER
==========================*/

header{

height:85px;

display:flex;

justify-content:space-between;

align-items:center;

padding:0 5%;

background:rgba(5,8,22,.90);

backdrop-filter:blur(18px);

border-bottom:1px solid rgba(255,255,255,.06);

}

header.sticky {
    background: rgba(5,8,22,.98);
    box-shadow: 0 10px 40px rgba(0,0,0,.4);
}

/*==========================
LOGO
==========================*/

.logo-area{

display:flex;

align-items:center;

gap:15px;

}

.logo-area img{

height:62px;

width:auto;

animation:floating 5s ease-in-out infinite;

}

/*==========================
NAVIGATION
==========================*/

nav{

display:flex;

align-items:center;

gap:35px;

}

nav a{

position:relative;

font-size:17px;

font-weight:700;

color:#ffffff;

padding:8px 0;

}

nav a::after{

content:"";

position:absolute;

left:0;

bottom:-8px;

width:0;

height:3px;

background:linear-gradient(
90deg,
var(--blue),
var(--purple)
);

border-radius:30px;

transition:.35s;

}

nav a:hover{

color:var(--blue);

}

nav a:hover::after,

nav a.active::after{

width:100%;

}

nav a.active{

color:var(--blue);

}

/*==========================
HEADER BUTTON
==========================*/

.header-buttons{

display:flex;

align-items:center;

gap:15px;

}

.btn-header{

padding:14px 32px;

border-radius:50px;

background:linear-gradient(
90deg,
var(--blue),
var(--purple)
);

color:#fff;

font-weight:700;

box-shadow:0 0 20px rgba(0,212,255,.25);

transition:.35s;

}

.btn-header:hover{

transform:translateY(-4px);

box-shadow:0 0 35px rgba(0,212,255,.45);

}

/*==========================
MENU BUTTON
==========================*/

#menuBtn{

display:none;

width:48px;

height:48px;

border:none;

background:rgba(255,255,255,.08);

border-radius:12px;

color:white;

font-size:26px;

cursor:pointer;

transition:.35s;

}

#menuBtn:hover{

background:var(--blue);

color:#000;

}

/*==========================
MOBILE MENU
==========================*/

.mobile-menu{

position:fixed;

top:127px;

right:-330px;

width:320px;

height:calc(100vh - 127px);

background:#0b1023;

backdrop-filter:blur(20px);

padding:35px;

display:flex;

flex-direction:column;

gap:18px;

transition:.4s;

z-index:99998;

border-left:1px solid rgba(255,255,255,.08);

}

.mobile-menu.active{

right:0;

}

.mobile-menu a{

padding:15px;

border-radius:15px;

background:rgba(255,255,255,.05);

font-weight:700;

transition:.35s;

}

.mobile-menu a:hover{

background:linear-gradient(
90deg,
var(--blue),
var(--purple)
);

}

/*==========================
BODY SPACE
==========================*/

body{

padding-top:127px;

}

/*==========================
RESPONSIVE
==========================*/

@media(max-width:1100px){

nav{

gap:22px;

}

nav a{

font-size:15px;

}

}

@media(max-width:900px){

nav{

display:none;

}

#menuBtn{

display:flex;

justify-content:center;

align-items:center;

}

.btn-header{

display:none;

}

.logo-area img{

height:52px;

}

header{

height:78px;

padding:0 20px;

}

body{

padding-top:120px;

}

.mobile-menu{

top:120px;

height:calc(100vh - 120px);

}

}

@media(max-width:480px){

.logo-area img{

height:45px;

}

.top-news{

height:38px;

}

.news-track{

font-size:13px;

}

header{

height:72px;

}

body{

padding-top:110px;

}

.mobile-menu{

top:110px;

height:calc(100vh - 110px);

width:100%;

right:-100%;

}

.mobile-menu.active{

right:0;

}

}

/*==================================================
HERO
==================================================*/

.hero{

position:relative;

min-height:calc(100vh - 127px);

display:flex;

align-items:center;

overflow:hidden;

padding:80px 5%;

}

.hero-bg{

position:absolute;

inset:0;

width:100%;

height:100%;

object-fit:cover;

}

.hero-overlay{

position:absolute;

inset:0;

background:linear-gradient(
90deg,
rgba(5,8,22,.88),
rgba(5,8,22,.72)
);

}

.hero-wrapper{

position:relative;

z-index:5;

display:grid;

grid-template-columns:55% 45%;

align-items:center;

gap:70px;

}

.hero-content{

display:flex;

flex-direction:column;

align-items:flex-end;

text-align:right;

}

.hero-logo{

display:flex;

justify-content:flex-start;

align-items:center;

}

.hero-logo img{

width:100%;

max-width:500px;

animation:floating 5s ease-in-out infinite;

filter:drop-shadow(0 0 35px rgba(0,212,255,.35));

}

.hero h1{

font-size:72px;

line-height:1.2;

margin-bottom:25px;

font-weight:900;

}

.hero h1 span{

color:var(--blue);

}

.hero p{

font-size:22px;

max-width:650px;

line-height:2;

margin-bottom:35px;

}

.hero-buttons{

display:flex;

gap:20px;

margin-bottom:45px;

flex-wrap:wrap;

}

.hero-downloads{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:20px;

width:100%;

}

.download-card{

display:flex;

align-items:center;

gap:15px;

padding:20px;

border-radius:20px;

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

backdrop-filter:blur(18px);

transition:.35s;

}

.download-card:hover{

transform:translateY(-8px);

border-color:var(--blue);

box-shadow:0 0 35px rgba(0,212,255,.20);

}

.download-card strong{

display:block;

font-size:18px;

}

.download-card small{

display:block;

color:#bfbfbf;

font-size:14px;

}

@media(max-width:992px){

.hero-wrapper{

grid-template-columns:1fr;

}

.hero-content{

align-items:center;

text-align:center;

}

.hero-logo{

justify-content:center;

margin-top:40px;

}

.hero-downloads{

grid-template-columns:1fr;

}

.hero-buttons{

flex-wrap:wrap;

justify-content:center;

}

.hero h1{

font-size:48px;

}

.hero p{

font-size:18px;

}

}

/*==================================================
APP PREVIEW
==================================================*/

.app-preview{

padding:120px 5%;

}

.preview-wrapper{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(240px,1fr));

gap:35px;

max-width:1300px;

margin:auto;

}

.phone-frame{

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

border-radius:35px;

padding:12px;

overflow:hidden;

backdrop-filter:blur(18px);

transition:.4s;

box-shadow:0 0 30px rgba(0,212,255,.08);

}

.phone-frame:hover{

transform:translateY(-12px);

box-shadow:0 0 45px rgba(0,212,255,.25);

}

.preview-screen{

width:100%;

border-radius:24px;

display:block;

}

/*==================================================
LIVE FEATURES
==================================================*/

.live-features{

padding:90px 5%;

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

gap:25px;

}

.live-box{

display:flex;

align-items:center;

gap:20px;

padding:28px;

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

border-radius:22px;

backdrop-filter:blur(15px);

transition:.35s;

}

.live-box:hover{

transform:translateY(-10px);

border-color:var(--blue);

box-shadow:0 0 35px rgba(0,212,255,.18);

}

.live-icon{

width:70px;

height:70px;

display:flex;

align-items:center;

justify-content:center;

border-radius:18px;

background:linear-gradient(
135deg,
var(--blue),
var(--purple)
);

font-size:34px;

flex-shrink:0;

}

.live-box h3{

font-size:22px;

margin-bottom:8px;

}

.live-box p{

font-size:16px;

line-height:1.8;

color:#bbbbbb;

}

/*==================================================
STATS
==================================================*/

.stats{

padding:120px 5%;

}

.stats-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

gap:30px;

}

.stat-card{

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

border-radius:25px;

padding:45px 30px;

text-align:center;

transition:.4s;

backdrop-filter:blur(18px);

}

.stat-card:hover{

transform:translateY(-12px);

border-color:var(--blue);

box-shadow:0 0 40px rgba(0,212,255,.20);

}

.stat-icon{

width:90px;

height:90px;

margin:auto;

margin-bottom:25px;

display:flex;

justify-content:center;

align-items:center;

border-radius:50%;

background:linear-gradient(
135deg,
var(--blue),
var(--purple)
);

font-size:42px;

}

.stat-card h2{

font-size:58px;

margin-bottom:12px;

color:var(--blue);

font-weight:800;

}

.stat-card span{

font-size:22px;

font-weight:700;

}

/*==================================================
FEATURES
==================================================*/

.features{

padding:120px 5%;

}

.features-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(320px,1fr));

gap:30px;

}

.feature-box{

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

border-radius:25px;

padding:40px;

backdrop-filter:blur(18px);

transition:.35s;

position:relative;

overflow:hidden;

}

.feature-box::before{

content:"";

position:absolute;

top:0;

left:-100%;

width:100%;

height:4px;

background:linear-gradient(
90deg,
var(--blue),
var(--purple),
var(--pink)
);

transition:.4s;

}

.feature-box:hover::before{

left:0;

}

.feature-box:hover{

transform:translateY(-12px);

box-shadow:0 0 35px rgba(0,212,255,.20);

border-color:var(--blue);

}

.feature-icon{

width:90px;

height:90px;

border-radius:20px;

display:flex;

align-items:center;

justify-content:center;

background:linear-gradient(
135deg,
var(--blue),
var(--purple)
);

margin-bottom:30px;

}

.feature-icon img{

width:55px;

height:55px;

object-fit:contain;

}

.feature-box h3{

margin-bottom:15px;

font-size:28px;

}

.feature-box p{

color:#cfcfcf;

line-height:1.9;

}

/*==================================================
DEVICES
==================================================*/

.devices{

padding:120px 5%;

}

.devices-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

gap:30px;

}

.device-card{

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

border-radius:25px;

padding:40px 30px;

text-align:center;

transition:.35s;

backdrop-filter:blur(18px);

}

.device-card:hover{

transform:translateY(-10px);

border-color:var(--blue);

box-shadow:0 0 40px rgba(0,212,255,.18);

}

.device-image{

width:120px;

height:120px;

margin:auto;

margin-bottom:25px;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:linear-gradient(
135deg,
var(--blue),
var(--purple)
);

}

.device-image img{

width:70px;

}

.device-card h3{

font-size:28px;

margin-bottom:15px;

}

.device-card p{

color:#cfcfcf;

margin-bottom:30px;

min-height:55px;

}

.device-btn{

display:inline-flex;

justify-content:center;

align-items:center;

padding:15px 35px;

border-radius:50px;

background:linear-gradient(
90deg,
var(--blue),
var(--purple)
);

color:#fff;

font-weight:700;

transition:.35s;

}

.device-btn:hover{

transform:translateY(-5px);

box-shadow:0 0 30px rgba(0,212,255,.35);

}

/*==================================================
CHANNELS
==================================================*/

.channels{

padding:120px 0;

overflow:hidden;

}

.logos-slider{

width:100%;

overflow:hidden;

position:relative;

margin-top:60px;

}

.logos-track{

display:flex;

align-items:center;

gap:80px;

width:max-content;

animation:logosMove 35s linear infinite;

}

.logos-slider:hover .logos-track{

animation-play-state:paused;

}

.logos-track img{

height:75px;

opacity:.65;

filter:grayscale(100%);

transition:.35s;

}

.logos-track img:hover{

opacity:1;

filter:none;

transform:scale(1.12);

}

@keyframes logosMove{

0%{

transform:translateX(0);

}

100%{

transform:translateX(-50%);

}

}

/*==================================================
SERVER STATUS
==================================================*/

.server-status{

padding:120px 5%;

background:

linear-gradient(

180deg,

rgba(255,255,255,.02),

rgba(0,212,255,.04)

);

}

.status-grid{

display:grid;

grid-template-columns:

repeat(auto-fit,minmax(280px,1fr));

gap:30px;

}

.status-card{

background:rgba(255,255,255,.05);

border:1px solid rgba(255,255,255,.08);

border-radius:25px;

padding:40px;

text-align:center;

backdrop-filter:blur(18px);

transition:.35s;

}

.status-card:hover{

transform:translateY(-10px);

border-color:var(--blue);

box-shadow:0 0 35px rgba(0,212,255,.20);

}

.status-card h2{

font-size:48px;

margin:18px 0;

color:var(--blue);

}

.status-card h3{

font-size:22px;

color:#cccccc;

}

.status-card p{

font-size:17px;

line-height:1.8;

}

.status-circle{

width:18px;

height:18px;

margin:auto;

border-radius:50%;

background:#00ff66;

box-shadow:

0 0 15px #00ff66,

0 0 30px #00ff66;

animation:onlinePulse 1.5s infinite;

}

@keyframes onlinePulse{

50%{

transform:scale(1.4);

}

}

/*==================================================
CTA
==================================================*/

.cta{

padding:140px 20px;

text-align:center;

background:

linear-gradient(

135deg,

rgba(0,212,255,.08),

rgba(123,61,255,.08)

);

}

.cta-container{

max-width:950px;

margin:auto;

}

.cta-logo{

width:180px;

margin:auto;

margin-bottom:30px;

animation:floating 5s infinite;

}

.cta h2{

font-size:clamp(40px,5vw,60px);

margin-bottom:25px;

}

.cta p{

font-size:22px;

color:#d0d0d0;

line-height:2;

margin-bottom:45px;

}

.cta-buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

/*==================================================
FOOTER
==================================================*/

footer{

background:#03050f;

padding:90px 5% 35px;

border-top:1px solid rgba(255,255,255,.08);

}

.footer-container{

max-width:1400px;

margin:auto;

display:grid;

grid-template-columns:2fr 1fr 1fr 1fr;

gap:45px;

}

.footer-col{

display:flex;

flex-direction:column;

}

.footer-logo{

width:180px;

margin-bottom:25px;

}

.footer-col h3{

font-size:24px;

margin-bottom:25px;

color:var(--blue);

}

.footer-col p{

font-size:16px;

line-height:2;

color:#bbbbbb;

}

.footer-col ul{

list-style:none;

padding:0;

margin:0;

}

.footer-col ul li{

margin-bottom:15px;

}

.footer-col ul li a{

color:#cccccc;

font-size:17px;

transition:.3s;

display:inline-block;

}

.footer-col ul li a:hover{

color:var(--blue);

transform:translateX(-8px);

}

/*==================================================
WHATSAPP
==================================================*/

.whatsapp{

position:fixed;

right:25px;

bottom:25px;

width:65px;

height:65px;

display:flex;

align-items:center;

justify-content:center;

border-radius:50%;

background:#25D366;

box-shadow:

0 0 20px rgba(37,211,102,.45);

z-index:99999;

animation:whatsFloat 2s infinite;

}

.whatsapp img{

width:38px;

height:38px;

}

@keyframes whatsFloat{

0%{

transform:scale(1);

}

50%{

transform:scale(1.12);

}

100%{

transform:scale(1);

}

}

/*==================================================
BACK TO TOP
==================================================*/

#backTop{

position:fixed;

left:25px;

bottom:25px;

width:60px;

height:60px;

border:none;

border-radius:50%;

background:linear-gradient(

135deg,

var(--blue),

var(--purple)

);

color:white;

font-size:26px;

cursor:pointer;

display:none;

align-items:center;

justify-content:center;

box-shadow:0 0 25px rgba(0,212,255,.35);

transition:.35s;

z-index:99998;

}

#backTop:hover{

transform:translateY(-6px);

}

/*==================================================
PRICING SECTION
==================================================*/

.pricing-section {
    padding: 120px 5%;
    background: linear-gradient(180deg, rgba(255,255,255,.02), rgba(0,212,255,.04));
}

.pricing-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
    gap: 35px;
    max-width: 1300px;
    margin: auto;
}

.pricing-card {
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 28px;
    padding: 50px 35px 40px;
    text-align: center;
    backdrop-filter: blur(18px);
    transition: .4s;
    position: relative;
    overflow: hidden;
}

.pricing-card:hover {
    transform: translateY(-15px);
    border-color: var(--blue);
    box-shadow: 0 0 50px rgba(0,212,255,.20);
}

.pricing-card.featured {
    border-color: var(--blue);
    background: rgba(0,212,255,.08);
    box-shadow: 0 0 40px rgba(0,212,255,.15);
}

.pricing-card.featured::before {
    content: "🔥 الأكثر مبيعاً";
    position: absolute;
    top: 20px;
    right: -40px;
    background: linear-gradient(90deg, var(--blue), var(--purple));
    color: #fff;
    font-weight: 700;
    padding: 6px 50px;
    transform: rotate(45deg);
    font-size: 14px;
}

.pricing-badge {
    display: inline-block;
    padding: 8px 25px;
    border-radius: 30px;
    background: linear-gradient(90deg, var(--blue), var(--purple));
    font-weight: 700;
    font-size: 15px;
    margin-bottom: 25px;
}

.pricing-price {
    margin-bottom: 30px;
}

.pricing-price .currency {
    font-size: 28px;
    font-weight: 700;
    vertical-align: top;
}

.pricing-price .amount {
    font-size: 55px;
    font-weight: 900;
    color: var(--blue);
}

.pricing-price .period {
    font-size: 18px;
    color: #aaa;
}

.pricing-features {
    list-style: none;
    padding: 0;
    margin: 0 0 35px 0;
    text-align: right;
}

.pricing-features li {
    padding: 12px 0;
    border-bottom: 1px solid rgba(255,255,255,.06);
    font-size: 17px;
    color: #ddd;
}

.pricing-features li:last-child {
    border-bottom: none;
}

.pricing-btn {
    width: 100%;
    justify-content: center;
}

/*==================================================
DOWNLOADS SECTION
==================================================*/

.downloads-section {
    padding: 120px 5%;
}

.downloads-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    max-width: 1300px;
    margin: auto;
}

.download-item {
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 25px;
    padding: 40px 30px;
    text-align: center;
    backdrop-filter: blur(18px);
    transition: .4s;
}

.download-item:hover {
    transform: translateY(-10px);
    border-color: var(--blue);
    box-shadow: 0 0 35px rgba(0,212,255,.18);
}

.download-icon {
    font-size: 55px;
    margin-bottom: 20px;
}

.download-item h3 {
    font-size: 26px;
    margin-bottom: 15px;
}

.download-item p {
    color: #ccc;
    margin-bottom: 25px;
    min-height: 50px;
}

/*==================================================
FAQ SECTION
==================================================*/

.faq-section {
    padding: 120px 5%;
    background: linear-gradient(180deg, rgba(255,255,255,.02), rgba(123,61,255,.04));
}

.faq-container {
    max-width: 900px;
    margin: auto;
}

.faq-item {
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 18px;
    margin-bottom: 18px;
    overflow: hidden;
    transition: .3s;
}

.faq-item:hover {
    border-color: rgba(0,212,255,.3);
}

.faq-question {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 22px 30px;
    cursor: pointer;
    gap: 20px;
}

.faq-question span {
    font-size: 20px;
    font-weight: 700;
}

.faq-toggle {
    width: 40px;
    height: 40px;
    border: none;
    border-radius: 50%;
    background: linear-gradient(90deg, var(--blue), var(--purple));
    color: #fff;
    font-size: 22px;
    cursor: pointer;
    transition: .3s;
    flex-shrink: 0;
}

.faq-item.open .faq-toggle {
    transform: rotate(45deg);
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height .5s ease;
    padding: 0 30px;
}

.faq-answer p {
    padding: 0 0 25px 0;
    color: #ccc;
    font-size: 17px;
    line-height: 1.8;
}

/*==================================================
CONTACT SECTION
==================================================*/

.contact-section {
    padding: 120px 5%;
}

.contact-container {
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 50px;
    max-width: 1200px;
    margin: auto;
}

.contact-info {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.contact-item {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 25px;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 18px;
    transition: .3s;
}

.contact-item:hover {
    transform: translateX(-8px);
    border-color: var(--blue);
}

.contact-icon {
    font-size: 32px;
    width: 55px;
    text-align: center;
}

.contact-item h4 {
    font-size: 18px;
    font-weight: 700;
}

.contact-item p {
    color: #bbb;
    font-size: 16px;
}

.contact-form {
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 25px;
    padding: 45px;
    backdrop-filter: blur(18px);
}

.form-group {
    margin-bottom: 22px;
}

.form-group label {
    display: block;
    font-weight: 700;
    margin-bottom: 8px;
    font-size: 16px;
}

.form-group input,
.form-group select,
.form-group textarea {
    width: 100%;
    padding: 14px 18px;
    border-radius: 14px;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.1);
    color: #fff;
    font-size: 16px;
    transition: .3s;
    font-family: 'Cairo', sans-serif;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    border-color: var(--blue);
    outline: none;
    box-shadow: 0 0 20px rgba(0,212,255,.15);
}

.form-group select option {
    background: #050816;
    color: #fff;
}

.contact-form .btn-primary {
    width: 100%;
    justify-content: center;
}

/*==================================================
ACTIVE STATE FOR SCROLL REVEAL
==================================================*/

.feature-box.active,
.device-card.active,
.stat-card.active,
.cta.active,
.pricing-card.active,
.download-item.active,
.contact-item.active {
    opacity: 1 !important;
    transform: translateY(0) !important;
}

/*==================================================
RESPONSIVE
==================================================*/

@media(max-width:992px){
    .contact-container {
        grid-template-columns: 1fr;
    }

    .pricing-grid {
        grid-template-columns: 1fr 1fr;
    }

    section{
        padding:90px 25px;
    }

    h1{
        font-size:52px;
    }

    h2{
        font-size:42px;
    }
}

@media(max-width:768px){
    .pricing-grid {
        grid-template-columns: 1fr;
    }

    .pricing-card.featured::before {
        top: 15px;
        right: -30px;
        font-size: 12px;
        padding: 5px 40px;
    }

    .pricing-price .amount {
        font-size: 42px;
    }

    .faq-question {
        padding: 18px 20px;
    }

    .faq-question span {
        font-size: 17px;
    }

    .faq-answer {
        padding: 0 20px;
    }

    .contact-form {
        padding: 30px 20px;
    }

    .downloads-grid {
        grid-template-columns: 1fr;
    }

    .contact-item {
        padding: 18px;
    }

    .footer-container{
        grid-template-columns:1fr;
        text-align:center;
    }

    .footer-logo{
        margin:auto;
        margin-bottom:25px;
    }

    section{
        padding:70px 20px;
    }

    h1{
        font-size:38px;
    }

    h2{
        font-size:30px;
    }

    h3{
        font-size:24px;
    }

    p{
        font-size:16px;
        line-height:1.8;
    }

    .whatsapp{
        width:58px;
        height:58px;
        right:18px;
        bottom:18px;
    }

    #backTop{
        width:55px;
        height:55px;
        left:18px;
        bottom:18px;
    }
}

@media(max-width:480px){
    .pricing-card {
        padding: 30px 20px;
    }

    .pricing-features li {
        font-size: 15px;
        padding: 10px 0;
    }

    .download-item {
        padding: 30px 20px;
    }

    .faq-question span {
        font-size: 15px;
    }

    section{
        padding:60px 16px;
    }

    .btn-primary,
    .btn-secondary{
        width:100%;
    }
}

@media(max-width:360px){
    h1{
        font-size:30px;
    }

    h2{
        font-size:26px;
    }

    p{
        font-size:15px;
    }
}

@media(min-width:1600px){
    .container{
        max-width:1550px;
    }

    .hero h1{
        font-size:90px;
    }

    .hero p{
        font-size:26px;
    }

    .section-title h2{
        font-size:62px;
    }
}

@media(min-width:2200px){
    body{
        font-size:18px;
    }

    .container{
        max-width:1900px;
    }

    .hero{
        min-height:1000px;
    }
}

/*==========================
PRINT
==========================*/

@media print{
    header,
    footer,
    .whatsapp,
    #backTop{
        display:none!important;
    }

    body{
        background:#fff;
        color:#000;
    }
}

/*==========================
EXTRA FIXES
==========================*/

.hero-grid{
    display:grid;
    grid-template-columns:55% 45%;
    align-items:center;
    gap:80px;
    min-height:calc(100vh - 127px);
}

.hero-text{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    text-align:right;
}

.hero-image{
    display:flex;
    justify-content:flex-start;
    align-items:center;
}

.hero-image img{
    width:100%;
    max-width:520px;
    height:auto;
}

.download-row{
    display:flex;
    gap:20px;
    flex-wrap:wrap;
    margin-top:40px;
}

.download-card{
    display:flex;
    align-items:center;
    gap:15px;
    width:220px;
    padding:18px;
    border-radius:18px;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.08);
}

.download-card img{
    width:42px;
    height:42px;
}

.download-card strong{
    display:block;
    font-size:18px;
}

.download-card small{
    display:block;
    color:#aaa;
}

@media(max-width:900px){
    .hero-grid{
        grid-template-columns:1fr;
    }

    .hero-text{
        align-items:center;
        text-align:center;
    }

    .hero-image{
        justify-content:center;
        margin-top:40px;
    }

    .download-row{
        justify-content:center;
    }
}

/*==========================
END
==========================*/