html, body{
margin:0;
height:100%;
}

body{
display:flex;
flex-direction:column;
min-height:100vh;
background: linear-gradient(
180deg,
#cfd5dd 0%,
#cfd5dd 100%
);
}


.top-bar{
position:relative;
width:100%;
height:120px;
background:#0b1623;
display:flex;
align-items:center;
justify-content:center;
border-bottom:1px solid rgba(255,255,255,0.08);
box-shadow:0 10px 30px rgba(0,0,0,0.25);
}

/* logo */

.logo-wrap{
text-align:center;
position:relative;
z-index:2;
}

.logo-main{
font-size:34px;
font-weight:700;
color:#ffffff;
letter-spacing:2px;
text-shadow:
0 2px 6px rgba(0,0,0,0.6),
0 0 10px rgba(0,0,0,0.4);
}

.logo-dotcom{
font-size:0.6em;
margin-left:2px;
opacity:0.9;
}

.logo-sub{
margin-top:4px;
font-size:14px;
color:#a9b4c2;
letter-spacing:2px;
text-transform:uppercase;
}

/* wave */

.wave-bg{
position:absolute;
bottom:-10px;
left:0;
width:100%;
height:120px;
z-index:1;
overflow:hidden;
}

.wave-bg svg{
width:200%;
height:120px;
animation:waveMove 10s linear infinite;
}

.wave1{
fill:#162536;
opacity:0.8;
}

.wave2{
fill:#1c2c40;
opacity:0.9;
animation-duration:18s;
}

@keyframes waveMove{
0%{transform:translateX(0);}
100%{transform:translateX(-50%);}
}

/* hero section */

.scroll-section{
text-align:center;
margin-top:50px;
padding:20px;
max-width:900px;
margin-left:auto;
margin-right:auto;
}

.hero-title{
font-family:serif;
font-size:clamp(26px,4vw,44px);
font-weight:800;
color:#1c2c40;
max-width:720px;
margin:0 auto;
line-height:1.25;
letter-spacing:1px;
}

.hero-sub{
font-family:serif;
font-size:clamp(14px,1.5vw,18px);
color:#2f4057;
letter-spacing:2px;
margin-top:6px;
}

/* scroll button */

.scroll-btn{
display:inline-block;
font-family:serif;
font-size:18px;
background:linear-gradient(145deg,#ffffff,#e6e6e6);
padding:10px 26px;
border-radius:14px;
box-shadow:
0 6px 18px rgba(0,0,0,0.18),
inset 0 1px 0 rgba(255,255,255,0.8);
transition:all 0.25s ease;
cursor:pointer;
margin-top:15px;
}

.scroll-btn:hover{
transform:translateY(-3px);
box-shadow:
0 12px 28px rgba(0,0,0,0.25);
}

/* scroll arrows */

.scroll-arrows{
margin-top:14px;
display:flex;
flex-direction:column;
align-items:center;
}

.scroll-arrows span{
width:14px;
height:14px;
border-right:2px solid #1c2c40;
border-bottom:2px solid #1c2c40;
transform:rotate(45deg);
margin:4px;
animation:scrollArrow 1.8s infinite ease-in-out;
opacity:0.7;
}

.scroll-arrows span:nth-child(2){
animation-delay:0.2s;
}

.scroll-arrows span:nth-child(3){
animation-delay:0.4s;
}

@keyframes scrollArrow{
0%{
opacity:0;
transform:rotate(45deg) translate(-4px,-4px);
}
50%{
opacity:1;
}
100%{
opacity:0;
transform:rotate(45deg) translate(4px,4px);
}
}

/* upload box */

.video-box{

width:680px;
min-height:220px;
margin:30px auto;
background:#ffffff;
border-radius:20px;
padding:40px;
box-shadow:0 15px 40px rgba(0,0,0,0.2);
animation:premiumGlow 2.2s ease-in-out infinite;
transition:all 0.3s ease;

}

/* hover */

.video-box:hover{

transform:translateY(-6px);

box-shadow:
0 35px 90px rgba(0,0,0,0.35),
0 0 120px rgba(255,255,255,0.25);

}

/* glow animation */

@keyframes premiumGlow{

0%{
box-shadow:
0 10px 25px rgba(0,0,0,0.2),
0 0 0 rgba(0,0,0,0.15);
}

50%{
box-shadow:
0 25px 70px rgba(0,0,0,0.35),
0 0 120px rgba(0,0,0,0.25);
}

100%{
box-shadow:
0 10px 25px rgba(0,0,0,0.2),
0 0 0 rgba(0,0,0,0.15);
}

}

/* upload ui */

.upload-ui{
text-align:center;
}

.upload-title{
font-size:28px;
font-weight:700;
color:#1c2c40;
margin-bottom:4px;
}

.upload-sub{
font-size:15px;
font-weight:500;
color:#243a55;
letter-spacing:0.4px;
margin-bottom:14px;
}

/* tombol file */

.upload-file-btn{
display:inline-block;
margin-top:6px;
padding:16px 42px;
border:2px dashed #3f8cff;
border-radius:14px;
font-size:20px;
font-weight:700;
letter-spacing:0.6px;
color:#12263d;
background:#ffffff;
cursor:pointer;
transition:all 0.25s ease;
box-shadow:
0 6px 18px rgba(0,0,0,0.12),
inset 0 1px 0 rgba(255,255,255,0.9);
}

.upload-file-btn:hover{
background:#f2f7ff;
}

.upload-file-btn input{
display:none;
}

.upload-info{
margin-top:14px;
font-size:14px;
color:#6b7c93;
}

/* progress container */

.progress{
width:100%;
box-sizing:border-box;
height:10px;
background:#2b3a4a;
border-radius:20px;
overflow:hidden;
margin-top:18px;
display:none;
}

.progress-bar{
height:100%;
width:0%;
background:linear-gradient(90deg,#42b3ff,#2ee6b6);
border-radius:20px;
font-size:13px;
font-weight:700;
color:#ffffff;
text-align:center;
line-height:10px;
text-shadow:0 1px 2px rgba(0,0,0,0.4);
transition:width 0.25s ease;
}

#copyBtn{
margin-top:14px;
padding:12px 26px;
border:none;
border-radius:12px;
background:linear-gradient(135deg,#4aa3ff,#2c7cff);
color:#fff;
font-size:15px;
font-weight:700;
cursor:pointer;
box-shadow:0 6px 16px rgba(0,0,0,0.25);
transition:all 0.2s ease;
}

#copyBtn:hover{
transform:translateY(-2px);
box-shadow:0 8px 20px rgba(0,0,0,0.3);
}

#videoLink{
width:100%;
box-sizing:border-box;
margin-top:14px;
padding:12px 14px;
border-radius:10px;
border:none;
font-size:14px;
background:#e6eaef;
color:#333;
box-shadow:inset 0 2px 4px rgba(0,0,0,0.15);
}

#copyBtn:hover{
background:#1f64d6;
transform:translateY(-1px);
}

/* feature buttons */

.features-box{
display:flex;
justify-content:center;
align-items:center;
gap:30px;
margin-top:18px;
}

.feature-item{
background:rgba(255,255,255,0.6);
padding:16px 28px;
border-radius:12px;

font-family:serif;
font-size:18px;
font-weight:600;
color:#1c2c40;

box-shadow:0 8px 25px rgba(0,0,0,0.12);

display:flex;
align-items:center;

transition:all .2s ease;
}

.feature-item:hover{
transform:translateY(-3px);
box-shadow:0 12px 28px rgba(0,0,0,0.2);
}

.feature-icon{
font-size:20px;
margin-right:10px;
}

/* TEARMS POLICY*/
.site-footer{
margin-top:70px;
padding:12px 0 14px;
text-align:center;
background:linear-gradient(180deg,#081a2b,#061322);
width:100%;
position:relative;
left:0;
}

.footer-inner{
max-width:900px;
margin:auto;
}

.footer-copy{
color:#8fa2b5;
font-size:14px;
margin-bottom:14px;
}

.footer-links{
display:flex;
justify-content:center;
gap:12px;
margin-top:10px;
}

.footer-links a{
padding:8px 16px;
border:1px solid rgba(255,255,255,0.25);
border-radius:8px;
text-decoration:none;
color:#d5dee8;
font-size:14px;
background:rgba(255,255,255,0.03);
transition:all 0.2s ease;
}

.footer-links a:hover{
background:rgba(255,255,255,0.08);
}


/* UNTUK HP MEDIA */
@media (max-width:768px){

.logo-main{
font-size:26px;
}

.logo-dotcom{
font-size:0.65em;
}

.logo-sub{
font-size:12px;
letter-spacing:1px;
}

.top-bar{
height:100px;
}

.scroll-btn{
font-size:16px;
padding:8px 20px;
}

.hero-title{
font-size:clamp(22px,6vw,30px);
}

.hero-sub{
font-size:13px;
}

.scroll-section{
margin-top:30px;
padding:15px;
}

.video-box{
width:99%;
min-height:230px;
padding:25px 20px;
margin:30px auto;
box-sizing:border-box;
}

.upload-title{
font-size:24px;
}

.upload-sub{
font-size:14px;
}

.upload-file-btn{
padding:12px 26px;
font-size:16px;
}

.progress{
width:100%;
box-sizing:border-box;
height:12px;
}

.progress-bar{
font-size:12px;
line-height:12px;
}

#videoLink{
width:100%;
box-sizing:border-box;
margin-top:12px;
padding:10px 12px;
font-size:13px;
border-radius:10px;
}

#copyBtn{
margin-top:12px;
padding:10px 22px;
font-size:14px;
border-radius:10px;
}

.features-box{
display:flex;
justify-content:center;
align-items:center;
gap:10px;
flex-wrap:nowrap;
}

.feature-item{
width:110px;
display:flex;
align-items:center;
justify-content:center;
font-size:12px;
padding:8px 12px;
}

.feature-icon{
font-size:14px;
margin-right:6px;
}

}