/* =========================
   GLOBAL
========================= */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{
font-family:'Segoe UI',sans-serif;
background:linear-gradient(135deg,#061a40,#0b3d91,#1565c0);
min-height:100vh;
color:white;
position:relative;
overflow-x:hidden;
}

/* =========================
   BACKGROUND CIRCLES
========================= */

.circle{
position:absolute;
border-radius:50%;
background:rgba(255,255,255,0.08);
animation:float 8s infinite ease-in-out;
z-index:1;
}

.circle1{
width:250px;
height:250px;
top:-60px;
left:-60px;
}

.circle2{
width:180px;
height:180px;
bottom:40px;
right:50px;
animation-delay:2s;
}

.circle3{
width:120px;
height:120px;
top:50%;
left:10%;
animation-delay:4s;
}

@keyframes float{
0%{
transform:translateY(0px);
}
50%{
transform:translateY(20px);
}
100%{
transform:translateY(0px);
}
}

/* =========================
   NAVBAR
========================= */

.navbar{
width:100%;
padding:22px 50px;
display:flex;
justify-content:space-between;
align-items:center;
position:relative;
z-index:100;
}

.logo{
font-size:28px;
font-weight:bold;
letter-spacing:1px;
text-decoration:none;
color:white;
}
.logo:hover{
opacity:0.9;
}

.logo span{
color:#ffb300;
}

/* =========================
   BUTTONS
========================= */

.buttons{
display:flex;
justify-content:center;
gap:20px;
flex-wrap:wrap;
}

.btn{
padding:14px 28px;
border:none;
border-radius:10px;
font-size:16px;
font-weight:600;
cursor:pointer;
transition:0.3s;
text-decoration:none;
}

.btn-primary{
background:#ffb300;
color:#111;
}

.btn-primary:hover{
transform:translateY(-3px);
box-shadow:0 8px 20px rgba(255,179,0,0.4);
}

.btn-secondary{
background:rgba(255,255,255,0.15);
color:white;
border:1px solid rgba(255,255,255,0.25);
}

.btn-secondary:hover{
background:rgba(255,255,255,0.25);
}

/* =========================
   MAIN CONTENT
========================= */

.main-content{
position:relative;
z-index:10;
padding:40px;
min-height:calc(100vh - 140px);
}

/* =========================
   FOOTER
========================= */

.footer{
padding:25px;
text-align:center;
font-size:14px;
color:rgba(255,255,255,0.8);
position:relative;
z-index:10;
}

/* =========================
   RESPONSIVE
========================= */

@media(max-width:768px){

.navbar{
padding:20px;
flex-direction:column;
gap:20px;
}

.main-content{
padding:20px;
}

}

/* =========================================
   NAVBAR RIGHT
========================================= */

.navbar-right{
display:flex;
align-items:center;
gap:20px;
}


/* =========================================
   GLOBAL SEARCH
========================================= */

.global-search-form{
display:flex;
align-items:center;
background:white;
border-radius:10px;
overflow:hidden;
width:320px;
}

.global-search-input{
border:none;
outline:none;
padding:12px 15px;
width:100%;
font-size:15px;
}

.global-search-btn{
border:none;
background:#ffb300;
padding:12px 18px;
cursor:pointer;
font-size:16px;
}


/* =========================================
   MOBILE
========================================= */

@media(max-width:768px){

.navbar{
flex-direction:column;
gap:20px;
}

.navbar-right{
width:100%;
flex-direction:column;
}

.global-search-form{
width:100%;
}

}

/* =========================================
   SEARCH PAGE
========================================= */

.search-page{
width:100%;
padding:40px;
}

.search-container{
max-width:1200px;
margin:auto;
}

.search-title{
font-size:42px;
margin-bottom:15px;
}

.search-info{
margin-bottom:40px;
font-size:18px;
color:#ddd;
}


/* =========================================
   SEARCH CARD
========================================= */

.search-card{
background:white;
color:#111;
padding:30px;
border-radius:18px;
margin-bottom:25px;
box-shadow:0 5px 20px rgba(0,0,0,0.15);
}

.search-document{
font-size:14px;
font-weight:700;
color:#0b3d91;
margin-bottom:10px;
}

.search-section-title{
font-size:28px;
margin-bottom:15px;
}

.search-content{
line-height:1.8;
color:#555;
margin-bottom:25px;
}

.open-result-btn{
display:inline-block;
background:#ffb300;
padding:12px 20px;
border-radius:10px;
text-decoration:none;
color:#111;
font-weight:700;
}


/* =========================================
   PAGINATION
========================================= */

.pagination-wrapper{
display:flex;
justify-content:center;
align-items:center;
gap:20px;
margin-top:40px;
}

.pagination-btn{
background:white;
color:#111;
padding:10px 20px;
border-radius:10px;
text-decoration:none;
font-weight:700;
}

.pagination-current{
font-weight:700;
}


/* =========================================
   NO RESULTS
========================================= */

.no-results{
text-align:center;
padding:80px 20px;
}

.no-results h2{
font-size:40px;
margin-bottom:20px;
}