.hero-rex{
    height:100vh;
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    text-align:center;
    color:white;
}

.hero-video{
    position:absolute;
    width:100%;
    height:100%;
    object-fit:cover;
    z-index:-2;
}

.hero-overlay{
    position:absolute;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.45);
    z-index:-1;
}

.hero-content h1{
    font-size:64px;
    font-weight:700;
}

.hero-content p{
    font-size:20px;
}
/* SEARCH WRAPPER */
.rex-search-wrapper{
margin-top:-130px;
position:relative;
width:100%;
display:flex;
justify-content:center;
z-index:5;
}


.rex-search-box{
  position:relative;
  width:50%;
  max-width:1100px;
  border-radius:60px;
  display:flex;
  align-items:center;
  padding:15px 25px;
  gap:25px;
  overflow:hidden;
}

/* layer background blur */
.rex-search-box::before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(255,255,255,0.75);
  backdrop-filter:blur(8px);
  z-index:0;
}

.rex-search-box > *{
  position:relative;
  z-index:1;
}

.rex-search-item{
  display:flex;
  flex-direction:column;
  flex:1;
}

.rex-search-item:first-child{
  border-right:2px solid #e5e5e5;
}

.rex-search-item.small{
  max-width:90px;
}

.rex-search-item label{
  color:#005a4c;
  padding: 0 55px;
}

.rex-search-item input{
  border:none;
  outline:none;
  background:transparent;
  font-size:15px;
  color:#333;
  padding:10px 15px;
}

.rex-icon{
  width:35px;
  height:35px;
  object-fit:contain;
  margin-top: -45px;
}

.rex-search-item input::placeholder{
  color:#999;
  font-family: Arial, Helvetica, sans-serif;
  font-style: bold;
}

.rex-search-btn{
  width:50px;
  height:50px;
  border:none;
  border-radius:50%;
  background:#0c524a;
  cursor:pointer;
}

.rex-search-btn:hover{
background:gray;
}
.rex-action-icon{
  margin-left: 60px;
  font-size:16px;
  color:#005a4c;
  cursor:pointer;
  transition:0.3s;
}

.rex-action-icon:hover{
  color: #ff4800;
  transform:scale(1.2);
}

/* overlay */
.rex-rates-modal{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.45);
  backdrop-filter:blur(6px);
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  visibility:hidden;
  transition:0.35s ease;
  z-index:9999;
}

.rex-rates-modal.active{
  opacity:1;
  visibility:visible;
}

/* card */
.rex-rates-card{
  width:520px;
  max-width:92%;
  background:white;
  border-radius:30px;
  padding:35px;
  box-shadow:0 25px 70px rgba(0,0,0,0.2);
  transform:translateY(40px);
  transition:.35s ease;
}

.rex-rates-modal.active .rex-rates-card{
  transform:translateY(0);
}

/* header */
.rex-rates-header{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:20px;
}

.rex-rates-header h3{
  font-weight:700;
  color:#0c524a;
}

.rex-rates-close{
  font-size:24px;
  cursor:pointer;
  color:#777;
}

/* form */
.rex-field{
  margin-bottom:18px;
}

.rex-field label{
  font-size:13px;
  font-weight:600;
  color:#0c524a;
  margin-bottom:6px;
  display:block;
}

.rex-field input{
  width:100%;
  padding:13px 16px;
  border-radius:40px;
  border:1px solid #e5e5e5;
  font-size:14px;
  font-family: Arial, Helvetica, sans-serif;
  font-style: normal !important;
  transition:.2s;
}

.rex-field input:focus{
  outline:none;
  border-color:#0c524a;
  box-shadow:0 0 0 3px rgba(12,82,74,0.08);
}

/* grid */
.rex-grid{
  display:flex;
  gap:15px;
}

/* dimensi */
.rex-dimension{
  display:flex;
  gap:8px;
}

.rex-dimension input{
  text-align:center;
}

/* button */
.rex-check-btn{
  width:100%;
  padding:14px;
  border:none;
  border-radius:40px;
  background:#0c524a;
  color:white;
  font-weight:600;
  margin-top:10px;
  cursor:pointer;
  transition:.25s;
}

.rex-check-btn:hover{
  background:#083c36;
}

a {
  text-decoration: none;
}

.btn-secondary {
  border-radius: 25px;
  border: none;
  font-weight: 600;
}

.btn:hover {
  background: #EFE10F;
  color: #0c524a;
}

.service-header{
background:#f7f7f7;
padding:70px 0;
text-align:center;
}

.service-header h1{
font-weight:700;
font-size:32px;
color:#0c524a;
}
.service-detail h2{
font-weight:700;
font-size:32px;
color:#0c524a;
}

.service-header p{
color:#666;
max-width:650px;
margin:auto;
font-size:15px;
}


/* SERVICE CARDS */

.service-overview{
padding:60px 0;
}

.service-card{
background:#fff;
border-radius:10px;
padding:30px;
text-align:center;
border:1px solid #eee;
transition:.3s;
height:100%;
}

.service-card:hover{
transform:translateY(-6px);
box-shadow:0 10px 25px rgba(0,0,0,0.08);
}

.service-icon{
font-size:40px;
color:#ff4800;
margin-bottom:15px;
}

.service-card h4{
font-weight:700;
font-size:20px;
color:#0c524a;
}

.service-card p{
font-size:14px;
color:#666;
}


.tracking-card{
    background:white;
    border-radius:18px;
    padding:25px;
    width:80%;
    box-shadow:0 10px 25px rgba(0,0,0,0.08);
}

.tracking-header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:20px;
}

.tracking-title{
    font-weight:600;
    font-size:16px;
}

.tracking-awb{
    font-size:13px;
    color:#777;
}

.tracking-status{
    margin-bottom:10px;
}

.status-badge{
    padding:7px 16px;
    border-radius:20px;
    font-size:13px;
    font-weight:600;
}

.process{
    background:#fff4d6;
    color:#b78103;
}

.delivered{
    background:#e6f7ed;
    color:#1a7f37;
}

.tracking-time{
    font-size:13px;
    color:#666;
}

.tracking-history {
    position: relative;
    padding: 20px;
}

.timeline {
    position: relative;
    padding: 10px 0;
    margin: 0;
}

.timeline-date {
    margin-bottom: 20px;
}

.timeline-date h6 {
    margin: 0;
    font-size: 1.1em;
    font-weight: bold;
}

.timeline ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.timeline-entry {
    position: relative;
    padding: 10px 0;
    margin-left: 30px;
}

.timeline-icon {
    position: absolute;
    margin-top: 50px;
    left: -20px;
    width: 15px;
    height: 15px;
    background: #0c524a;
    border-radius: 50%;
}

.timeline-content {
    background: #f4f4f4;
    border-radius: 5px;
    padding: 10px;
    border: 1px solid #ddd;
}

@media (max-width:768px){

  .rex-search-box{
    flex-direction:column;
    gap:12px;
  }

  .rex-input-group{
    padding:12px 14px;
  }

  .rex-input-group input{
    font-size:15px;
  }

}

@media (max-width:768px){

  .modal-dialog{
    margin:10px;
  }

  .modal-body{
    padding:16px;
  }
}

@media (max-width:480px){

.container{
  padding-left:12px;
  padding-right:12px;
}

h1{
  font-size:26px;
}

h2{
  font-size:22px;
}

p{
  font-size:14px;
}

}