
:root {
    --primary: #001d51;
    --secondary: #efbf04;
    --errorColor: red;
    --stepNumber: 6;
    --border-radius:8px;
    --containerWidth: 80%;
    --bgColor: #333;
    --inputBorderColor: lightgray;
    --bg:#0b0d12;          /* page background */
      --light-bg:#eef1f8;        /* cards */
      --muted:#9aa4b2;       /* muted text */
      --text:#0b0d12;        /* primary text */
      --brand:#607293;       /* brand color */
      --brand-2:#50e3c2;     /* accent */
      --line:#1b2028;        /* dividers */
      --yellow:#ffd166;
      --red:#ff6b6b;
      --green:#2fd27a;
      --radius:20px;
      --shadow:0 10px 30px rgba(0,0,0,.35);
      --shadow-sm:0 3px 11px rgba(0,0,0,0.15);
      --max:1200px;
}
.w-50{
    width:50%!important;
 
}
.w-100 {
    width: 100%;
}
.h-100{
    height: 100%;
}
.mx-auto{
    margin: 0 auto!important;
}
.mx-2{
    margin-right:8px!important;
    margin-left:8px!important;
}
.mx-3 {
    margin-right: 12px !important;
    margin-left: 12px !important;
}
.my-2 {
    margin: 8px unset!important;
}
.my-4 {
    margin: 16px 0px !important;
}
.pa-2{
    padding: 16px!important;
}
.pa-1{
    padding: 8px!important;
}

.pr-2{
    padding-right: 16px!important;
}
.pl-2 {
    padding-left: 16px !important;
}
.color-brand{color: var(--brand)!important;}
.color-primary{color: var(--primary)!important;}
.color-secondary{color: var(--secondary)!important;}

.bg-color-brand{background-color: var(--brand)!important;}
.bg-color-primary{background-color: var(--primary)!important;}
.bg-color-secondary{background-color: var(--secondary)!important;}
.info-text{
    position: relative;
    border-radius: var(--border-radius);
    padding: 8px;
    padding-right: 40px;
    background-color: #eee;
    color: #333;
    font-size: 14px;
    font-weight: 400;
    margin: 8px 4px;

}

.info-text::before {
    content: '';
    position: absolute;
    top:10%;
    right:8px;
    aspect-ratio: 1;
    height: 80%;
    background-image: url(../img/info-icon.svg);
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: contain;
    margin-left: 8px;

}
.info-text.info{
    color : rgba(51, 51, 51, 1)!important;
    background-color: rgba(51, 51, 51, 0.1)!important;
}




*{box-sizing:border-box}
    html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;}
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    .pill.secondary{ background:unset; background-color: var(--secondary); color: var(--primary);}
    .pill.outline-primary{ background:unset; background-color: transparent; color: var(--primary); border-color: var(--primary);}
    .btn{display:inline-flex;align-items:center;gap:.6rem;padding:.9rem 1.1rem;border-radius:14px;font-weight:700;border:none;cursor:pointer;transition:.2s background,.2s transform;background:var(--brand);color:#041226;box-shadow:var(--shadow-sm)}
    .btn:hover{transform:translateY(-1px)}
    .btn.alt{background:#1a2030;color:var(--text);border:1px solid var(--line)}
    .btn.ghost{background:transparent;border:1px solid var(--line);color:var(--text)}
    .btn.small{padding:.6rem .8rem;border-radius:12px;font-weight:600}
    .nav{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0}
    .nav .logo{display:flex;align-items:center;gap:.7rem;font-weight:800;letter-spacing:.3px}
    .nav .logo .dot{width:12px;height:12px;border-radius:50%;background:linear-gradient(45deg,var(--brand),var(--brand-2))}
    .nav ul{list-style:none;display:flex;gap:1.2rem;margin:0;padding:0}
    .nav li a{color:var(--muted);font-weight:600}
    .nav li a:hover{color:var(--text)}
    .nav-cta{display:flex;align-items:center;gap:.6rem}

    /* Hero */
    
    /* .hero h1{color:var(--secondary) ;font-size: clamp(2.2rem, 4.2vw, 3.4rem);margin:.3rem 0 .8rem;line-height:1.1}
    .hero .lead{color:#ffffff;max-width:55ch; margin:1.2rem 0;}
    .hero-card{background: radial-gradient(120% 120% at 100% 0%, rgba(79, 140, 255, .15) 0%, rgba(80, 227, 194, .07) 40%, rgba(255, 255, 255, 0) 70%), #ffffff30 ;border:1px solid #fff;padding:1.25rem;border-radius:var(--radius);display:grid;grid-template-columns:1fr 1fr;gap:1rem;box-shadow:var(--shadow-sm); position: absolute;
    background: #fff;
    width: 80%;
    margin: auto 10%;}
    .hero-card label{font-size:.8rem;color:var(--primary)}
    .hero-card input, .hero-card select{width:100%;padding:.8rem .9rem;border:1px solid var(--line);background:var(--light-bg);color:var(--text)}
    .hero-card .full {display: flex;justify-content: flex-end;align-items: center;gap: 8px;}
    .hero-art{position:relative}
    .hero label{color:#fff}
    .hero-art .blob{position:absolute;inset:auto -8% -8% auto;width:70%;height:70%;background:radial-gradient(60% 60% at 50% 50%, rgba(79,140,255,.35), transparent 60%);filter:blur(40px);opacity:.55;pointer-events:none}
    .hero-car {
    position: absolute;
    width: 35%;
    left: 0;
    bottom: 0;
} */
    .glass-effect{
    background: linear-gradient(360deg, rgba(255, 255, 255, 0) 100%, rgba(255, 255, 255, 1) 70%);
    border-radius: var(--border-radius);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(3.6px);
    -webkit-backdrop-filter: blur(7.6px);
    border: 1px solid rgba(255, 255, 255, 0.61);
    }
    @keyframes in-road {
        0%{right: 100%; width: 320px; opacity: 1;}
        10%{ opacity: 1;}
        80%{ opacity: 1;}
        100%{right: 0%; width: 320px;  opacity: 1;}
    }
    @keyframes mask-move {
        0%{left: -320px; opacity: 1;}
        2%{ opacity: 1;}
        90%{ opacity: 1;}
        100%{left:calc(100% - 320px); opacity: 1;}
    }
    /* Section utilities */
    section{padding: clamp(4.6rem, 8vw, 6.5rem) 0;padding-top:3rem;overflow:hidden; background-position: center center; background-size: cover; background-repeat: no-repeat; padding-bottom:0;}
    section .head{padding:1.7rem}
    section .head.center{text-align:center;}
    section .head.center .lead {margin:0 auto;}
    section h2{font-size: 1.7rem; font-weight:700;margin:.3rem 0; color:var(--brand)}
    .super-title{position: relative;display:inline-block;letter-spacing:.12em;;color:var(--muted);font-weight:800;font-size:.8rem;}
  .super-title::before {
    content: '';
    position: absolute;
    width: 66px;
    height: 20px;
    background-image: url(../img/6-chevrones-alt.svg);
    top: 0px;
    margin-left: 4px;
    left: 100%;
    background-repeat: no-repeat;
}
  .head.center .super-title::after {
    content: '';
    position: absolute;
    width: 66px;
    height: 20px;
    background-image: url(../img/6-chevrones-alt.svg);
    top: 0px;
    margin-left: 4px;
    right: 100%;
    transform: rotate(180deg);
    background-repeat: no-repeat;
}

    /* About */
    #about{
        padding-top: 0;
    }
    .about{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;align-items:center;margin-top: 48px}
    .checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem; margin-top: 32px;}
    .check{position:relative;display:flex;gap:.7rem;align-items:flex-start;border-radius:16px; user-select: none; transition: all 0.3s ease-out}
    .check svg{flex:0 0 auto;max-width: 36px;
    margin-top: 9px;position: absolute;
    top: -3px}
    .check svg path{fill: var(--secondary);}
    .check h3{font-size:16px; font-weight:700;color:var(--brand);}
    .check p{color:var(--muted); font-size: 1rem;}
    .corner-squircle{
        @supports (corner-shape:squircle){
            border-radius:80px;
            corner-shape:squircle
        }
    }
    #car--window{max-height: 500px;}

    /* Services */
    .grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
    .card{border:1px solid var(--line);padding:1.1rem;box-shadow:var(--shadow-sm)}
    .card .title{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem}
    .card .more{margin-top:.7rem;display:inline-flex;gap:.4rem;align-items:center;color:var(--brand);font-weight:700}

    /* Cars */
    .filters{display:inline-flex;flex-wrap:wrap;margin:.8rem 0 1.3rem;border:1px solid #ddd;overflow: hidden;}
    .filters .pill{cursor:pointer}
    .cars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
    .car{position:relative;aspect-ratio:4/5;border-radius:2px;overflow:hidden;display:flex;flex-direction:column;justify-content: flex-start}
    .car .meta{display:flex;gap:.5rem;flex-wrap:wrap}
    .car .top{padding:1rem 1rem 0}
    .car .imgwrap{/*aspect-ratio:16/10*/width:100%;height:50%;background:#0a0e15;display:flex;align-items:center;justify-content:center}
    .car .imgwrap img{width:100%; height:100%; object-fit: cover;}
    .car .content{padding:0 1rem;display:grid;gap:.6rem;/* background-image:linear-gradient(355deg, var(--primary)10%, transparent 90%)*/; background-color: #fff;}
    .car .actions{display: flex;align-items: center;gap: .5rem;flex-wrap: wrap;justify-content: space-between;margin-top: 24px;padding-bottom: 8px;} 
.meta .chip {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .24rem;
    border: none;
    padding: .35rem .5rem;
    border-radius: 0;
    color:#888;
    font-weight: 600;
    font-size: .8rem;
    flex-direction: row;
    padding-left: 1rem;
}
.meta .chip::before {
    content: '';
    position: absolute;
    width: 1px;
    height: 50%;
    background-color: #ddd;
    top: 25%;
    left: 0px;
}
.meta .chip:last-child::before{
    display: none;
}
.chip.pet.allow .stv{
    fill: #777; 
}
.chip.pet.notallow .stv{
    fill: #ad4141; 
}
.chip.pet.notallow::after{
    content: '';
    position: absolute;
    height: 1px;
    width: 24px;
    transform: rotate(-45deg);
    background-color:#ad4141 ;
}
.car .card-cat{
    background: var(--primary);
    border-color: var(--primary);
    box-shadow: 0 0 0px 2px var(--primary);
}
.meta .chip svg{width:24px; height:24px}
    .price{display:flex;align-items:center;gap:1rem; color:var(--brand);justify-content: center;}
    .price b{font-size:1.1rem}
    .car .chip.class {position: absolute;display: inline-flex;width: fit-content;top: 16px;right: 16px;padding: 4px 10px;border: none;background-color: #fff;color: var(--brand);z-index: 5;font-size: 12px;}
    .car .car-title{font-size: 1.3rem;color: var(--primaryg);}
    .car .class-title{font-size: 0.8rem;color:var(--primaryg)}
    /* How it works */
    #how .container{background: var(--primary);margin: 0 auto;}
    .how-steps{display: flex;justify-content: space-around;;align-items: center;}
    .how-steps .stp-wrapper .stp, .how-steps .stp-wrapper{position:relative;display: flex;gap:16px;align-items: center;justify-content: center;flex-direction: column;}
    .how-steps .stp-wrapper .step-arrow{width:20%; aspect-ratio:1; margin-top:0}
.how-steps .stp-wrapper .stp::before {
    content: '';
    position: absolute;
    width: 120px;
    background-image: url(../img/curvy-arrow.svg);
    height: 60px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    right: 100%;
}
.how-steps .stp-wrapper.stp-2 .stp::before{transform: rotateX(180deg);}
.how-steps .stp-wrapper.stp-3 .stp::before{content:unset; display:none}
    .how-steps .stp-wrapper.stp-2 .step-arrow{transform:rotateY(180deg)}
    .how-steps .stp-wrapper .step-arrow svg{width:100%; height:100%; object-fit:cover}
    .how-steps .stp-wrapper .stp .media{width:80%;aspect-ratio:1;border-radius:24px;overflow:hidden;}
    .how-steps .stp-wrapper .stp .media img{width:100%; height:100%; object-fit:cover;}
    #how p{color:#eee}
    #how .lead{color:#dde2eb}
    #how h2, #how .text h3{color: var(--secondary);font-size: 1.2rem;font-weight: 700;}
    .stp .lead, .step-arrow{display:none;} 
    /* Why */
    #why {
        
    /* background-color: var(--brand);
   
    background-size: 25% auto;
    background-repeat: repeat;
    background-position: 0 0; */
    }
    #why .mn-container{
    overflow: visible;
    width: 100%;
    
    }
    #why .mn-container .mn-row {  /* display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0px 0px;
    grid-auto-flow: row; */
    }

.street{
  width: 75%;
   height: 430vh;
  margin-top: 20vh;
  overflow: hidden;
}
/* #wrapper, #content{
    height: 400vh;
} */
.street-line {
    width: 100%;
    position: relative;
    margin: 8rem 32px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
   
}
.street-line .car{
    background-color: #0073aa;
    width: 25%;
    max-width: 250px;
    height: 250PX;
}
.street-line .text{
    position: relative;
    z-index: 2;
    margin-right: 8px;
}
.street-line .text h3{
    color:var(--secondary)
}
.street-line .text p{
    color:#fff
}
.street-line .text-shadow {
    position: absolute;
    z-index: 1;
    top: 38%;
    right: 204px;
    opacity: 0.2;
    margin-right: 8px;
    filter: blur(1px);
    
}
.street-line .text-shadow h3, .street-line .text-shadow p{
    color:#364560!important
}

@media all and (-ms-high-contrast:none) {
  #why .mn-container .mn-row {
    display: -ms-grid;
    -ms-grid-columns: repeat(4, 1fr);
    
  }
}
    .features{height: 100vh; display: flex; flex-wrap: wrap;}
    .feat-container{width:50%; padding:8px}
    .feat{display:flex;align-items:center;justify-content:center;background-color:var(--light-bg);border:1px solid var(--line);padding:1.5rem; height:170px}

    /* Pricing */
    .pricing{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
    .plan{background:linear-gradient(180deg,#101620,#0b0f17);border:1px solid var(--line);padding:1.2rem;border-radius:18px;position:relative}
    .plan h3{margin:.2rem 0 .6rem}
    .plan .badge{position:absolute;top:12px;right:12px;background:#142036;border:1px solid #22304b;padding:.25rem .5rem;border-radius:999px;font-size:.75rem;color:var(--brand)}
    .plan ul{padding-left:1.1rem;color:var(--muted)}

    /* CTA */
    .cta{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem;align-items:center;background:radial-gradient(120% 120% at 100% 0%, var(--secondary) 0%, var(--secondary) 40%, var(--secondary) 70%), var(--secondary);border:1px solid var(--line);padding:1.2rem;border-radius:20px}

    /* Testimonials */
    .testi{display:grid;grid-template-columns:1fr .9fr;gap:1rem;align-items:center}
    .avatars{display:flex}
    .avatars img{width:42px;height:42px;border-radius:50%;border:2px solid #0b0f17;margin-right:-10px}
    .quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
    .customer-quoto{padding-top:64px; overflow: visible;}
    .customer-quoto .actions{display: flex;align-items: flex-end;justify-content: flex-start;}
    .customer-quoto .actions img{width: 24px;height: 24px;border-radius: 25px; border: 2px solid #0b0f17;}
    /* FAQ */
    .faq{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start}
    details{background:var(--light-bg);border:1px solid var(--line);padding:1rem;border-radius:14px}
    summary{cursor:pointer;font-weight:700}
    details p{color:var(--muted)}

    /* Blog */
    .blog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
    .post{background:var(--light-bg);border:1px solid var(--line);border-radius:16px;overflow:hidden}
    .post .body{padding:1rem}

    /* Responsive */
    @media (max-width: 1000px){
      .hero-grid,.about,.cta,.testi{grid-template-columns:1fr}
      .grid3,.cars,.steps,.features,.pricing,.quotes,.faq,.blog{grid-template-columns:1fr 1fr}
      .mn-row{flex-wrap: wrap;}
      .mn-col.col2{width:100%}
      .mn-col.xs-order-2{order: 2;}
      .mn-col.xs-order-1{order: 1;}
      #services .mn-row{align-content: flex-start;}
    }
    @media (max-width: 640px){
      .nav ul{display:none}
      .grid3,.cars,.steps,.features,.pricing,.quotes,.faq,.blog{grid-template-columns:1fr}
      .hero-card{grid-template-columns:1fr}
      .checklist{grid-template-columns:1fr}
    }

.faq-section {
  max-width: 800px;
  margin: 50px auto;
  padding: 20px;
  font-family: "Segoe UI", sans-serif;
}

.faq-title {
  text-align: center;
  font-size: 2rem;
  margin-bottom: 20px;
}

.faq-item {
    border: 2px solid var(--muted);
    padding: 10px 12px;
    border-radius: 16px;
    margin-bottom: 16px;
    background: #fff;
    box-shadow: 0px 4px 11px 0px #0000001F;
}

.faq-question {
    width: 100%;
    background: none;
    border: none;
    outline: none;
    text-align: right;
    font-size: 1.05rem;
    font-weight: 600;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
}
.faq-question .icon {
  transition: transform 0.3s ease;
  font-weight: bold;
  font-size: 1.2rem;
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, padding 0.3s ease;
  padding: 0 0;
}

.faq-answer p {
  margin: 10px 0;
}

.faq-item.active .faq-answer {
  max-height: 200px; /* enough for content */
  padding: 10px 0;
}

.faq-item.active .faq-question .icon {
    transform: rotate(180deg);
    transform-origin: center center;
}





.tab-wrap {
  width: 50%;
  margin-left: 20%;
  position: relative;
  display: flex;
  top: -106px;
}

input[type=radio][name=tabs] {
  position: absolute;
  z-index: -1;
}
input[type=radio][name=tabs]:checked + .tab-label-content label {
  color: white;
}
input[type=radio][name=tabs]:checked + .tab-label-content .tab-content {
  display: block;
}
input[type=radio][name=tabs]:nth-of-type(1):checked ~ .slide {
  left: calc((100% / 4) * 0);
}
input[type=radio][name=tabs]:nth-of-type(2):checked ~ .slide {
  left: calc((100% / 4) * 1);
}
input[type=radio][name=tabs]:nth-of-type(3):checked ~ .slide {
  left: calc((100% / 4) * 2);
}
input[type=radio][name=tabs]:nth-of-type(4):checked ~ .slide {
  left: calc((100% / 4) * 3);
}
input[type=radio][name=tabs]:first-of-type:checked ~ .slide {
  left: 0;
}

.label {
  cursor: pointer;
  color: rgba(255, 255, 255, 0.8);
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start
  text-align: center;
  height: 56px;
  transition: color 0.2s ease;
  width: 100%;
}
.search-sidebar .label{
    font-size: 0.8rem;
    font-weight: 400;
    

}

.slide {
  background: #ffeb3b;
  width: calc(100% / 4);
  height: 4px;
  position: absolute;
  left: 0;
  top: calc(100% - 4px);
  transition: left 0.3s ease-out;
}

.tab-label-content {
  width: 100%;
}
.tab-label-content .tab-content {
  position: absolute;
  top: 100px;
  left: 16px;
  line-height: 130%;
  display: none;
}

@media screen and (max-width: 800px) {
  h1 {
    padding: 40px 0 90px 10%;
  }

  .tab-wrap {
    width: 80%;
    margin-left: 10%;
    top: -106px;
  }
}
.follow {
  width: 42px;
  height: 42px;
  border-radius: 50px;
  background: #03A9F4;
  display: block;
  margin: 300px auto 0;
  white-space: nowrap;
  padding: 13px;
  box-sizing: border-box;
  color: white;
  transition: all 0.2s ease;
  font-family: Roboto, sans-serif;
  text-decoration: none;
  box-shadow: 0 5px 6px 0 rgba(0, 0, 0, 0.2);
}
.follow i {
  margin-right: 20px;
  transition: margin-right 0.2s ease;
}
.follow:hover {
  width: 134px;
}
.follow:hover i {
  margin-right: 10px;
}

@media screen and (max-width: 800px) {
  .follow {
    margin: 400px auto 0;
  }
}

.tab-wrapper {
width: 100%; /* عرض 100 درصد */
max-width: 900px; /* برای خوانایی روی نمایشگرهای بزرگ‌تر */
margin: 32px auto; padding: 0 16px;
}


.tab-card {
/*background: var(--panel);
border: 1px solid #1f2937; 
border-radius: 16px;
box-shadow: 0 10px 30px rgba(0,0,0,.25);*/
overflow: hidden;

}


/* سربرگ تب‌ها */


.tablist {
display: grid;
grid-template-columns: 1fr 1fr;
width: 100%;
border-bottom: 1px solid var(--brand);
position: relative;
}


.tab {
appearance: none;
border: 0; margin: 0; padding: 14px 18px;
background: transparent; color: var(--brand);
font: inherit; cursor: pointer; position: relative;
transition: color .2s ease;
}


.tab[aria-selected="true"] { color: var(--text); }
.tab:focus-visible {
outline: none; box-shadow: 0 0 0 3px var(--ring) inset;
}


.tab-indicator {
position: absolute;
bottom: 0; height: 3px;
background: linear-gradient(90deg,var(--primary),var(--brand));
border-radius: 999px;
transition: transform .3s ease, width .3s ease;
}


.panel { padding: 20px; }
.panel[hidden] { display: none; }


.lead { font-size: 18px; margin: 0 0 8px; }
.muted { color: var(--muted); margin: 0 0 16px; }


@media (min-width: 640px) {
.tab { padding: 16px 22px; }
.lead { font-size: 18px;max-width:50%; }
.lead-full-width{font-size: 18px;max-width:100%;}
}

#car--window path {
        stroke-linecap: round;
        stroke-linejoin: round;
        fill: none;
         stroke: #333;
      }
      .street-img {
        clip-path: url(#clippath-1);
      }
      .city-img {
        clip-path: url(#clippath);
      }

      .st2 {
        stroke-miterlimit: 10;
      }

#car--window .city-img image{
    transform:translate(400px, -70px) ;
   animation: window-move-effect 80s linear infinite
}
#car--window .street-img image{
    transform:translate(400px, -70px) scale(0.7);
   animation: window-move-effect 20s linear infinite
}


@keyframes window-move-effect{
    0%{
         transform:translate(400px, -70px) scale(0.7)
    }
    100%{
         transform:translate(0px, -7px) scale(0.7)
    }
}

.mn-container{
   margin: 0 auto;
   padding: 0 16px;
}
.mn-row{
    width:100%!important;display: flex;align-items: center;justify-content: center; padding:0 0.375vw;
}
.mn-col{
    flex-grow: 1;
    flex-basis: 0;
    flex-shrink: 1;
}
.mn-col .col2{
flex-basis: 50%;
}




.service-media-container {
    width: 100%;
    position: relative;
    overflow: hidden;
    height: 460px;
    background-color: var(--light-bg);
    background-size: auto 70%;
    background-position: 100% 100%;
    background-repeat: no-repeat;
    /* border: 5px solid #fff; */
    border-radius: 0;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}
.service-text{
    padding: 0 32px;
}
.service-media-container #taxi{
    position: absolute;
    bottom: -2px;
    right: 16px;
    width: 70%;
    
}
.servise-item{
    background-position: right center;
    background-repeat: no-repeat;
    background-size: contain;
}
.servise-item-2 {
    background-position: left center;
}
/*.servise-item-2 .service-media-container::before {*/
/*    content: '';*/
/*    top:0;*/
/*    right:0;*/
/*    position: absolute;*/
/*    width: 200px;*/
/*    height: 100%;*/
/*   background: linear-gradient(270deg, #001d51 10%, #001d5100 100%);*/
/*}*/
/*.servise-item-2 .service-media-container::after {*/
/*    content: '';*/
/*    top:0;*/
/*    left:0;*/
/*    position: absolute;*/
/*    width: 200px;*/
/*    height: 100%;*/
/*   background: linear-gradient(90deg, #001d51 20%, #001d5100 100%);*/
/*}*/

.service-media-container {
 
  background-color: #fff;
  border-radius: 1em;
}

.service-media-container {
	clip-path: path("M16,0H499A16,16 0,0,1 515,16V444A16,16 0,0,1 499,460H174A24,24 0,0,1 150,436V436A24,24 0,0,0 126,412H24A24,24 0,0,1 0,388V16A16,16 0,0,1 16,0Z");
	width: 515px;
	height: 460px;
	aspect-ratio: 103 / 92;
}
.service-read-more{
    position: absolute;
    width: 120px;
    height: 48px;
    background: var(--brand);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    bottom: 22px;
    left: 46px;
    color: #fff;
    box-shadow: 0 6px 18px rgb(0 0 0 / 25%);
}


.servise-item.active .service-media-container{
    animation: background-position 3s linear forwards;
}
.servise-item.active .service-media-container svg .wheel-container{
    animation: wspin 3s linear forwards;   
}

.service-media-container .asset{
    position: absolute
}
.service-media-container .asset{
    width:100%;
    height: 100%;
    object-fit: cover;
}
.servise-item.active .service-media-container .airplane{
   bottom: 0;
   width:320px;
   height: auto;
   left:-50%;
   transform:translate(-100%, 0);
   animation: fling 6s ease-out 0.5s;
}
.servise-item .title{position: relative;}
.servise-item .title::before {
    content: '';
    position: absolute;
    width: auto;
    height: 100%;
    background-image: url(../img/hash-chevrone.svg);
    top: 16px;
    right: -24px;
    aspect-ratio: 1;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

@keyframes background-position {
    0%{background-position: 100% 100%;}
    100%{background-position: 0% 100%;}
}
@keyframes wspin {
    0%{transform: rotate(0);}
    100%{transform: rotate(-3200deg);}
}

@keyframes fling {
    0%{transform:translate(-100%, 0)}
    100%{transform:translate(600px, -200px)}
}

#services .mn-row{
    margin-bottom: 64px;
}

#services .mn-col{
    padding:32px;
    position:relative;
}
.servise-item-2 .service-text, .servise-item-2 .service-title{
    color:var(--light-bg)!important;
}
.btn{
    position: relative;
    padding: 8px 24px;
    min-width: 120px;
    height: 48px;
    background: var(--primary);
    color: #eee;
    font-weight: 600;
    border-radius: var(--border-radius);
    border: 2px solid #fff;
    box-shadow: 0 0 0px 2px rgba(0 0 0 / 1);
    overflow: hidden;
    text-decoration: none!important;
    transition: all 250ms ease-out;
}
.btn-outline{
    background: unset;
    background-color: transparent;
}
.btn-outline.primary{
    color: var(--primary);
}
.btn.btn-primary{
    color: #eee;
    box-shadow: 0 0 0px 2px rgba(5, 5, 5, 1);
    background-color: rgba(5, 5, 5, 1);
}
.btn.btn-primary:hover {
    color: var(--primary);
    box-shadow: 0 0 0px 2px rgba(5, 5, 5, 1);
    background-color: rgba(5, 5, 5, 0.1);
}
.spacer{
    display: inline-block;
    flex-grow: 5;
    position:relative;

}
.spacer.dash::before{
    content:'';
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: #eee;
    top: 50%;
    right: 0;
}
.pill{
    padding:24px;
    position: relative;
    align-items: center;
    justify-content: center;
    border-right:1px solid #ddd;
    color:var(--brand);
    background-color:var(--light-bg);
    font-size: 0.9rem;
    white-space: nowrap;
    white-space: nowrap;
    font-weight: 400;
    display: flex;
    align-items: center;
    justify-content: center;
    
    transition: all 0.3s ease-out;
}
.pill::before{
    content:'';
    position: absolute;
    width:16px;
    height:16px;
    transform: rotate(45deg);
    background: #fff;
    top:100%;
    right: calc(50% - 10px);
    z-index: 5;
    display: none;
}
.pill.active{background:var(--secondary);color: #fff; border-color: #fff;}
.pill.active::before{display: block;}
.pill.outline{
    background-color: transparent!important;
}
.pill.outline:hover {
    background-color: #efefef !important;
}
.pill.primary ,.pill.primary * {
   border-color: var(--primary)!important;
   color: var(--primary)!important;
}
.pill .media{
    width: 64px;
    margin: 0 8px;
}
.header {
    text-align: center;
    margin: 20px 0;
    color: white;
    width: 100%;
    max-width: 800px;
}

.header h1 {
    font-size: 2.2rem;
    margin-bottom: 10px;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.header p {
    font-size: 1.1rem;
    line-height: 1.6;
    margin: 0 15px;
}

.flex-content .content {
    width: 100%;
    direction: rtl;
    border-radius: var(--border-radius);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
    margin-top: 20px;
    position: relative;
}
.justify-content-end{
    justify-content: flex-end;
}
.justify-content-start{
    justify-content: flex-start;
}
.flex-content.wrap{
    flex-wrap: wrap!important;
}
.flex-grow-3{
    flex-grow: 3;
}
.card-title {
    display: flex;
    align-items: center;
    margin-bottom: 25px;
    color: #2c3e50;
    gap: 12px;
}

.card-title i {
    font-size: 28px;
    color: #3498db;
}

.input-group {
    margin-bottom: 30px;
    position: absolute;
    z-index: 10000;
    display:none;
    background: #efefef;
    color: var(--primary);
    border-radius: var(--border-radius);
    background-color: #fff;
    color:var(--primary);
    overflow: hidden;
}
.input-group.show{
    display: block;
}

.input-group label {
    display: block;
    margin-bottom: 12px;
    font-weight: 600;
    color: #2c3e50;
    font-size: 16px;
}

.time-input {
    width: 100%;
    padding: 18px 20px;
    border: 2px solid #e0e0e0;
    border-radius: var(--border-radius);
    font-size: 20px;
    text-align: center;
    background: #f9f9f9;
    cursor: pointer;
    transition: all 0.3s ease;
    color: #2c3e50;
    font-weight: 500;
    box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.05);
}

.time-input:focus {
    outline: none;
    border-color: #3498db;
    box-shadow: 0 0 0 4px rgba(52, 152, 219, 0.2);
    background: #fff;
}

.time-input:hover {
    background: #f0f7ff;
    border-color: #a5d8ff;
}

.time-range-info {
    background: transparent;
    border-radius: var(--border-radius);
    padding: 8px;
    text-align: center;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    flex-wrap: wrap;
}

.time-range-info i {
    color: #3498db;
}

.time-picker-flex-content .content {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0);
    display: flex;
    justify-content: center;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s ease;
    transform: translateY(20px);
}

.time-picker-container.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    background-color: #fff;
}

.time-picker {
    background: transparent;
    width: 100%;
    max-width: 300px;
    padding: 0;
    position: relative;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
    overflow: hidden;
}

.picker-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px 25px;
    background: #f8f9fa;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom: 1px solid #eee;
}

.cancel-btn,
.done-btn {
    background: none;
    border: none;
    font-size: 17px;
    padding: 10px 20px;
    border-radius: var(--border-radius);
    cursor: pointer;
    font-weight: 500;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 8px;
}

.cancel-btn {
    color: #e74c3c;
}

.cancel-btn:hover {
    background: #feeceb;
}

.done-btn {
    color: #3498db;
    font-weight: 600;
}

.done-btn:hover {
    background: #ebf5fb;
}

.picker-title {
    font-size: 20px;
    font-weight: 700;
    color: #2c3e50;
}

.time-selector {
    display: flex;
    justify-content: center;
    height: 120px;
    position: relative;
    margin: 25px 0;
    padding: 0 20px;
    direction: ltr;
    overflow: hidden;
}

.selector-overlay {
    position: absolute;
    top: 50%;
    left: 20px;
    right: 20px;
    height: 50px;
    transform: translateY(-50%);
    border-top: 1px solid #3498db;
    border-bottom: 1px solid #3498db;
    pointer-events: none;
    border-radius: 0px;
}

.time-column {
    overflow-y: scroll;
    height: 100%;
    scrollbar-width: none;
    width: 100px;
    text-align: center;
    padding: 60px 0;
    cursor: grab;
}

.time-column:active {
    cursor: grabbing;
}

.time-column::-webkit-scrollbar {
    display: none;
}

.time-item {
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    color: #95a5a6;
    transition: all 0.2s ease;
    font-weight: 400;
    user-select: none;
    filter: blur(2px);
    transition: all 0.2s ease-out;
}

.time-item.selected {
    color: #2c3e50;
    font-weight: 700;
    font-size: 32px;
    filter: blur(0px);
}

.time-item.selected+.time-item {
    font-size: 24px;
    filter: blur(1px);
}

.separator {
    display: flex;
    align-items: center;
    font-size: 26px;
    font-weight: 700;
    padding: 0 10px;
    color: #3498db;
}

.instruction {
    text-align: center;
    color: #7f8c8d;
    font-size: 15px;
    margin: 0 25px 25px;
    padding: 15px;
    border-top: 1px solid #eee;
    line-height: 1.6;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.range-info {
    display: flex;
    justify-content: center;
    gap: 40px;
    margin: 10px 30px 0;
    color: #3498db;
    font-weight: 600;
    font-size: 15px;
    flex-wrap: wrap;
}

.range-info>div {
    display: flex;
    align-items: center;
    gap: 8px;
}

.footer {
    text-align: center;
    padding: 20px;
    color: rgba(255, 255, 255, 0.9);
    font-size: 15px;
    margin-top: 30px;
    width: 100%;
}

.features {
    display: flex;
    flex-wrap: wrap;
    margin-top: 25px;
    justify-content: center;
    align-content: flex-start;
    align-items: center;
}

.feature {
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(10px);
    border-radius: var(--border-radius);
    padding: 15px;
    flex: 1;
    min-width: 200px;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, 0.2);
    max-width: 280px;
}

.feature i {
    font-size: 28px;
    margin-bottom: 10px;
    color: white;
}

.feature h3 {
    color: white;
    margin-bottom: 8px;
}

.feature p {
    color: rgba(255, 255, 255, 0.85);
    font-size: 14px;
}


/* استایل آیتم‌های لیست */
.airline-option {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* لوگوی گرد */
.airline-logo {
    width: 28px;
    height: 28px;
    object-fit: cover;
    border-radius: 50%;
    border: 1px solid #ddd;
    padding: 2px;
    background: #fff;
}

/* متن */
.airline-title {
    font-size: 14px;
    color: #333;
    font-weight: 500;
}

/* ارتفاع هر آیتم در لیست */
.select2-results__option {
    padding: 6px 10px !important;
}

/* استایل گزینه انتخاب‌شده بالای دراپ‌دان */
.select2-selection__rendered .airline-option {
    gap: 6px;
}
.select2-container--default .select2-selection--single{
    border:none;
}
/* Responsive Design */
@media (max-width: 700px) {
    .header h1 {
        font-size: 1.8rem;
    }

    .header p {
        font-size: 1rem;
    }

    .card {
        padding: 20px;
    }

    .time-input {
        padding: 16px;
        font-size: 18px;
    }

    .time-range-info {
        font-size: 14px;
    }

    .feature {
        min-width: 100%;
        max-width: 100%;
    }

    .time-selector {
        height: 180px;
    }

    .time-item {
        font-size: 22px;
    }

    .time-item.selected {
        font-size: 28px;
    }

    .picker-header {
        padding: 15px 20px;
    }

    .cancel-btn,
    .done-btn {
        padding: 8px 15px;
        font-size: 16px;
    }

    .picker-title {
        font-size: 18px;
    }

    .range-info {
        gap: 20px;
        font-size: 14px;
    }

    .instruction {
        font-size: 14px;
        padding: 12px;
    }
}


::selection {
    color: #fff;
    background: var(--primary);
}
.fill-width{
    width: 100% !important;
}
.flex-content{
    display:flex;
   
}
.flex-content.content-center{
    align-items: center;
    justify-content: center;
}
.flex-content.row{
    flex-direction: row;
}
.flex-content.column {
    flex-direction: column;
    
}
.flex-content.align-items-center {
    align-items: center !important;
}
.flex-content.align-items-start{
    align-items: flex-start!important;
}
.flex-content.align-items-baseline {
    align-items: baseline !important;
}
.flex-content .content {
    width: var(--containerWidth);
    border-radius: var(--border-radius);
    padding: 24px 12px;
}

.flex-content .content header {
    font-size: 35px;
    font-weight: 600;
    margin: 0 0 30px 0;
}

.flex-content .content .form-outer {
    width: 100%;
    overflow: hidden;
}

.mn-price-value {
    font-size: 1.3rem;
    color: var(--primary);
}

.mn-price-unit {
    font-size: 0.9rem;
    color: #919191;
}
.form-outer .mn-step-form input[type="number"]::-webkit-inner-spin-button,
.form-outer .mn-step-form input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* برای فایرفاکس */
.form-outer .mn-step-form input[type="number"] {
  -moz-appearance: textfield;
}

.flex-content .content .form-outer .mn-step-form {
    display: flex;
    width: calc(100% * var(--stepNumber));
}

.form-outer .mn-step-form .forma-state {
    width: calc(100% / var(--stepNumber));
    transition: margin-right 0.3s ease-in-out;
   height: 320px;
    
}

.form-outer .mn-step-form .forma-state .title {
    text-align: right;
    font-size: 25px;
    font-weight: 500;
}
.form-outer .mn-step-form .forma-state .step-desc {
    text-align: right;
    font-size: 16px;
    font-weight: 200;
}

.form-outer .mn-step-form .forma-state .field {
    flex-grow: 1;
    padding: 16px;
    display: flex;
    font-size: 8px;
    align-items: center;
    position: relative;
    flex-direction: column;
    align-items: flex-start;
}
.form-outer .mn-step-form .forma-state .passenger-field{
    align-items: center;
    justify-content: center;
    width:30%;
}
.form-outer .mn-step-form .forma-state .passenger-field.field-3{
    padding-top:36px
}

.mn-step-form .forma-state .field .label {
    /* position: absolute;
    top: -30px; */
    font-weight: 500;
}

.mn-step-form .forma-state .field input, .mn-step-form .forma-state .field .select-selected {
    box-sizing: border-box;
    height: 64px;
    width: 100%;
    padding: 16px;
    font-size: 24px;
    border: none;
    outline: none;
    border-bottom: 1px solid #eee;
    border-radius: var(--border-radius);
    background: rgb(255 255 255 / 70%);
    transition: all 300ms ease;
}
.mn-step-form .forma-state .field input::placeholder{
    color:rgba(255, 255, 255, 0.3)
}
.mn-step-form .forma-state .field input:focus{
    background-color: #fff;
    color:var(--primary);
}
.mn-step-form .forma-state .field input.invalid-input {
    border-color: var(--errorColor);
}

.mn-step-form .forma-state .field select {
    width: 100%;
    padding-left: 10px;
    font-size: 17px;
    font-weight: 500;
}

.mn-step-form .forma-state .field button {
    width: 100%;
    height: calc(100% + 5px);
    border: none;
    background: var(--secondary);
    border-radius: var(--border-radius);
    color: #fff;
    cursor: pointer;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: 0.5s ease;
}

.mn-step-form .forma-state .field button:hover {
    background: #000;
}
.mn-step-form .forma-state .field .file-input-wrapper {
  width:100%;
}
.mn-step-form .forma-state .field .file-input-wrapper input[type=file]{
   background-color: transparent;
}
.mn-step-form .forma-state .field .file-input-wrapper input[type=submit]{
   max-width: 96px;
}

.mn-step-form .forma-state .btns button {
    margin-top: -20px !important;
}

.mn-step-form .forma-state .btns button.prev {
    margin-right: 3px;
    font-size: 17px;
}

.mn-step-form .forma-state button.next {
   height:64px;
   width: 100%;
   padding: 0;
   outline: none;
   border-radius: var(--border-radius);
   border:1px solid #fff;
   overflow: hidden;
   

}
button.next .next-btn-text{
    width: 200%;
    height: 100%;
    display: flex;
    background-color: transparent;
    align-items: center;
    justify-content: center;
    transform: translateX(50%);
    transition: transform 0.2s ease-out;
}
button.next:hover{
    background-color: transparent;
}
button.next:hover .next-btn-text {
     transform: translateX(0%);
    
}
.mn-step-form .forma-state button.next span {
display: flex;
    align-items: center;
    justify-content: center;
    width:100%;
    height: 100%;
    position: relative;
}
.mn-step-form .forma-state button.next span svg{
    width: 24px;
}
.icon-bar{
    width: 100%;
    height: 60px;
}

.flex-content .content .progress-bar {
    display: flex;
    margin: 40px 0;
    user-select: none;
    border-bottom: 1px solid #efefef;
    padding-bottom: 16px;
    overflow: auto;
}

.flex-content .content .progress-bar .step {
    text-align: center;
    position: relative;
    width: 100%;
    min-width: 88px;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-left: 24px;
    justify-content: center;
    height: 88px;
    padding: 8px;
    background-color: rgba(255, 255, 255, 0.1);
    border: 2px solid transparent;
    border-radius: var(--border-radius);
    transition: all 0.3s ease-out;
    user-select: none;
    cursor: pointer;
}
.flex-content .content .progress-bar .step.pass {
    background-color:var(--primary);
    color: #e0e0e0;
}
.flex-content .content .progress-bar .step .icon {
    width: 32px;
    height:32px
}
.flex-content .content .progress-bar .step .icon svg {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.step .icon svg path {
    fill: #ffffff;
}
.step.active .icon svg path {
     fill: var(--primary); 
}   
.progress-bar .step .text {
    width: 100%;
    transition: 0.2s;
    font-weight: 200;
    font-size: 17px;
    line-height: 25px;
}
.progress-bar .step .text .periority{
    height: 18px;
    width: 18px;
    border: 1px solid #000;
    border-radius: 50%;
    transition: 0.2s;
    font-size: 16px;
    line-height: 16px;
    display: none;
}

.progress-bar .step .text.active {
    border-color: var(--primary);
    background: var(--primary);
}



.progress-bar .step .text.active span {
    display: none;
}

.progress-bar .step::before, .progress-bar .step::after {
    position: absolute;
    content: "";
    bottom: 50%;
    right: 100%;
    height: 1px;
    width: 0px;
    background: var(--bgColor);
}
.progress-bar .step::after {
    background: var(--primary);
    width: 0px;
    transition: all 0.3s ease-out;
}
.progress-bar .step.pass::after {
    width:36px;
    transition: all 0.3s ease-out;
} 
 .progress-bar .step.pass::before {
    background: var(--primary);
}

.progress-bar .step .text.active:after {
    background: var(--primary);
    transform: scaleX(0);
    transform-origin: left;
    animation: animate 0.3s linear forwards;
}
.form-body{
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
}

.form-body .next-filed{
    width: fit-content;
    display: flex;
    align-items: center;
    justify-content: center;
    padding:8px;
    padding-top:36px;
}

.inde_number{
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    max-width: 200px;
    margin: 4px 0;
    padding:4px;
    border-radius: var(--border-radius);
    border: 1px solid #eee;
    padding: 4px;
}
.search-sidebar .inde_number{
    background-color: #fff!Important;
    color:var(--primary);
    border: 1px solid var(--primary);
}
.switch-inner{
    margin: 0 16px;
    padding: 4px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: cente
}
.switch-inner>span{
    font-size: 0.9rem;
}
.inde_number .value-button{
    display: inline-block;
    border: 1px solid #ddd;
    margin: 0px;
    border-radius: var(--border-radius);
    width: 40px;
    height: 40px;
    text-align: center;
    vertical-align: middle;
    padding: 6px 0;
    background: var(--light-bg);
    color:var(--primary);
    font-size: 1.1rem;
    ;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.inde_number #input-wrap {
    margin: 0px;
    padding: 0px;
}
.inde_number input{
    background: transparent!important;
}
#passengerNumberIcon {
    justify-content: end;
    flex-wrap: wrap;
    display: inline-flex;
    width: auto;
    float: left;
    padding:4px;
    background-color: rgba(0, 0, 0, 0.15);
}

.inde_number input[type=number] {
    text-align: center;
    border: none;
    margin: 0px;
    width: 80px!important;
    height: 40px!important;
    border:none!important;
}

.inde_number input[type=number]::-webkit-inner-spin-button,
.inde_number input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.img-wrapper, .pet-img-wrapper{
    width: 36px;
}
.img-wrapper img{
    width: 100%;
}


@keyframes animate {
    100% {
        transform: scaleX(1);
    }
}

.progress-bar .step:last-child::before,
.progress-bar .step:last-child::after {
    display: none;
}

.progress-bar .step p.active {
    color: var(--primary);
    transition: 0.2s linear;
}

.progress-bar .step .check {
    position: absolute;
    left: 50%;
    top: 70%;
    font-size: 15px;
    transform: translate(-50%, -50%);
    display: none;
}

.progress-bar .step .check.active {
    display: block;
    color: #fff;
}



.progress-bar .step.active {
    --border-angle: 0turn;
    --main-bg: conic-gradient(from var(--border-angle),
            #efefef,
            #efefef 5%,
            #efefef 60%,
            #efefef 95%);
    border: solid 2px transparent;
    --gradient-border: conic-gradient(from var(--border-angle), transparent 25%, var(--primary), #eee 99%, transparent);
    background: var(--main-bg) padding-box, var(--gradient-border) border-box, var(--main-bg) border-box;
    background-position: center center;
    -webkit-animation: bg-spin 3s linear infinite;
    animation: bg-spin 3s linear infinite;
}

.progress-bar .step.active .text {
    color:var(--primary);
    font-size: 16px;
    font-weight: 700;
}

@-webkit-keyframes bg-spin {
    to {
        --border-angle: 1turn;
    }
}

@keyframes bg-spin {
    to {
        --border-angle: 1turn;
    }
}

.box:hover {
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
}

@property --border-angle {
    syntax: "<angle>";
    inherits: true;
    initial-value: 0turn;
}

.mn-switch {
    position: relative;
    display: inline-block;
    width: 88px;
    height: 40px;
    margin-right: 4px;
    border-radius: var(--border-radius);
    border: 1px solid #f9f9f9;
    overflow: hidden;
    width: 120px;
    bottom: 12px;
}

.mn-switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.mn-switch .slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: transparent;
    -webkit-transition: .4s;
    transition: .4s;
     border-radius: var(--border-radius); 
}
.search-sidebar .mn-switch {
    border: 1px solid var(--primary);
}

.mn-switch .slider::before {
    position: absolute;
    content: "";
    height: 28px;
    width: 38px;
    left: 4px;
    bottom: 5px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
    border-radius: var(--border-radius);
}
.search-sidebar .mn-switch .slider::before {
    background-color: var(--primary);
}
input:checked+.slider {
    background-color: transparent;
    
}
.mn-switch .checked-text {
    opacity: 0
}

.mn-switch .unchecked-text {
    opacity: 1
}
input:checked~.checked-text {
    opacity:1
}
input:checked~.unchecked-text {
    opacity: 0
}

input:focus+.slider {
    box-shadow: 0 0 1px var(--primary);
}

input:checked+.slider:before {
    -webkit-transform: translateX(38px);
    -ms-transform: translateX(38px);
    transform: translateX(38px);
}
.mn-switch .checked-text, .mn-switch .unchecked-text{
    position: absolute;
    top: 12px;
    z-index: 1000;
    right: 12px;
    color: var(--primary);
    transition: opacity 0.3s ease-out;
}
.mn-switch .checked-text,
.mn-switch .unchecked-text{
    color:var(--light-bg);
    font-size: 0.9rem;
}
.mn-switch .checked-text{
    right: 14px;
}
.mn-switch .unchecked-text {
    right: 50px;
}

@media screen and (max-width: 760px) {
    .flex-content .content .progress-bar{
        margin: 24px 0;
    }
    .form-body .next-filed{
        width:100%;
    }
    .flex-content .content {
    padding: 36px 16px 8px 16px;
    }
}
@media screen and (max-width: 660px) {
    :root {
        --containerWidth: 400px;
    }

    .progress-bar .step p {
        display: none;
    }

    .progress-bar .step .text::after,
    .progress-bar .step .text::before {
        display: none;
    }

    .progress-bar .step .text {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .progress-bar .step .check {
        position: absolute;
        left: 50%;
        top: 50%;
        font-size: 15px;
        transform: translate(-50%, -50%);
        display: none;
    }

    .step {
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

@media screen and (max-width: 490px) {
    :root {
        --containerWidth: 100%;
    }

    .flex-content .content {
        box-sizing: border-box;
        border-radius: 0;
    }
}

@media (max-width: 480px) {
    .header h1 {
        font-size: 1.6rem;
    }

    .header p {
        font-size: 0.95rem;
    }

    .time-selector {
        height: 160px;
        padding: 0 10px;
    }

    .time-column {
        width: 80px;
        padding: 70px 0;
    }

    .separator {
        font-size: 22px;
    }

    .time-item {
        height: 45px;
        font-size: 20px;
    }

    .time-item.selected {
        font-size: 24px;
    }

    .selector-overlay {
        height: 45px;
    }

    .range-info {
        margin: 5px 15px 0;
        gap: 15px;
    }

    .picker-header {
        padding: 12px 15px;
    }

    .cancel-btn,
    .done-btn {
        padding: 6px 12px;
        font-size: 15px;
    }
}
.search-form-submit, .prev-btn{
    height: 64px;
    text-align: center;
    border: 1px solid #fff;
    background: rgba(255, 255, 255, 0.2);
    border-radius: var(--border-radius);
    color: #fff;
    margin: 0 auto;
    cursor: pointer;
    transition: all 0.3s ease-out;
}
.search-form-submit:hover,
.prev-btn:hover {
    background: rgba(255, 255, 255, 0.35);
    
}
.search-form-submit{
    flex-grow: 2;
    margin: 0 8px;
    font-size: 20px;
    font-weight: 700;
}
.prev-btn {
    display: flex;
    align-items: center;
    justify-content: center;
}
.prev-btn svg{
    width:24px;
    width: 30px;
    margin-top: 10px;
    transform: rotate(180deg);
}


.custom-select {
    position: relative;
    font-family: Arial;
}

.custom-select select {
    display: none;
    /*hide original SELECT element:*/
}



/*style the arrow inside the select element:*/
.select-selected:after {
    position: absolute;
    content: "";
    top: 40%;
    left: 16px;
    width: 0;
    height: 0;
    border: 12px solid transparent;
    border-color: #fff transparent transparent transparent;
}

/*point the arrow upwards when the select box is open (active):*/
.select-selected.select-arrow-active:after {
    border-color: transparent transparent #fff transparent;
    top: 7px;
}

/*style the items (options), including the selected item:*/
.select-items div,
.select-selected {
    padding: 20px 16px;
    cursor: pointer;
    height: 64px;
    user-select: none;
}

/*style items (options):*/
.select-items {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 99;
    max-height: 254px;
    overflow-x: hidden;
    overflow-y: auto;
    color: var(--primary );
    font-size: 18px;
    font-weight: 400;
}

/*hide the items when the select box is closed:*/
.select-hide {
    display: none;
}
.select-items div{
    border-bottom: 1px solid #555;
    background-color: #fff;
    /* background: linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.1) 50% ,  rgba(0, 0, 0, 0.4) 100%); */
    transition: all 0.3s ease-out;
}
.select-items div:hover,
.same-as-selected {
    color:#fff;
    background-color:var(--primary);
}

.search-sidebar{
    position: sticky;
    position: -webkit-sticky;
    top: 120px;
    right: 0;
    float:right;
    width: 33%;
    min-width: 370px;
    z-index: 5;
    height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    border-radius: 16px;
    background-color: var(--light-bg);
    
}
.loading-wrapper {
    display: none;
    width: 100%;
    height: 100%;
    align-items: flex-start;
    justify-content: center;
    position: absolute;
    top: 0;
    right: 0;
    opacity:1;
    z-index: 1000000;
    /* background-color: #e6e6e6; */

}
.loading-wrapper.loading{
    display:flex ;
}

.loading-wrapper img {
    width: 33%;
    object-fit: cover;
    margin-top: 40%;
}
.serach-content{
    position: relative;
    margin-right:min(33%, 370px);
    min-height: 70vh;
    padding-right: 24px;
}
.sidebar-widget{
    width:100%;
    padding:24px 16px
}
.filetrbar-submit {
    width: 80% !important;
    background: var(--primary);
    border: 1px solid var(--primary);
    color: #eee;
    border-radius: var(--border-radius);
    margin: 8px auto;
    padding: 16px;
    transition: all 0.3s ease-in-out;
}
.filetrbar-submit:hover {
    background: rgba(5, 5, 5, 0.1);
    color: var(--primary);
}
.sidebar-widget .field{
    padding:0 16px;
    display:flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}
.info-item.pet .info-icon{
    position: relative;
    display: inline-block;
}
.info-item{
    position: relative;
    margin-left: 16px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}
.info-item::before {
    position: absolute;
    content: '';
    width: 1px;
    height: 61%;
    background-color: var(--primary);
    opacity: 0.15;
    top: 29%;
    left: -8px;
}
.info-item:last-child:before {
    display: none;

}
.info-item.nopet .info-icon::before {
    content: '';
    position: absolute;
    width: 113%;
    height: 3px;
    transform: rotate(45deg);
    background-color: #be455d;
    top: 40%;
    right: -1px;
}
.info-item svg {
    width:32px
}
.info-item .info-title{
    font-size: 13px;
    font-weight: 100;
    color: #919191;
}
.info-item .info-value{
    font-size: 16px;
    color: var(--primary);
    font-weight: 700;
    margin: 0 4px;
}
.srs-path{
    fill:#919191;
}
.info-item.pet.nopet svg .srs-path {
    fill: #be455d;
}
.card{
    position: relative;
    overflow: hidden;
}
.card a{
    text-decoration: none!important;
}
.card .card-item{
    gap:8px;
}
.card .card-item .item{
    font-size: 16px;
    font-weight: 500;
}
.transfer-search-results{
    background-color: var(--light-bg);
    padding: 16px 24px;
    border-radius: 16px;
}
.transfer-card{
    border: 1px solid var(--light-bg);
    margin: 12px 4px;
    border-radius: var(--border-radius);
    box-shadow: 0px 0px 0px rgb(5 5 5 / 10%);
    background-color: #fff;
}
.transfer-card .card-media {
    aspect-ratio: 1;
}
.transfer-card .card-body{
    padding: 8px 16px;
    flex-grow: 3;
}
.fd-spacer{
    flex-grow: 3;
    position: relative;
   
}

.fd-spacer::before {
    content:'';
    position: absolute;
    width: 100%;
    height: 1px;
    background-color: var(--primary);
    opacity:0.15;
    top:50%;
    right: 0;
}
.item.fd-spacer::after {
    content: '';
    position: absolute;
    width: 64px;
    height: 24px;
    background-image: url(../img/sedan.svg);
    top: -22px;
    right: 0px;
}
.card-item .car-class{
    width:48px;
    transform: rotateY(180deg);
}
.transfer-card .card-price{
    padding:1rem;
    border-right: 1px solid #efefef;
}

.card-cat{
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 24px;
    min-width: 120px;
    height: 48px;
    background: var(--primary);
    color: #eee;
    font-weight: 600;
    border-radius: var(--border-radius);
    border: 2px solid #fff;
    box-shadow: 0 0 0px 2px rgba(0 0 0 / 1);
    overflow: hidden;
    transition: all 250ms ease-out;
}
.card-cat:hover {
    color: #fff;
    /* transform: scale(1.06); */
}
.card-cat::before {
    content: '';
    position: absolute;
    width: 1000%;
    height: 100%;
    opacity: 0;
    background: linear-gradient(70deg, var(--primary) 25%, #eee 25%, #eee 50%, var(--primary) 50%);
    background-size: 66px 66px;
    background-repeat: repeat;
    top: 0px;
    right: 0%;
    transition: right 0.1s linear 0.2s , opacity 0.3s linear;
 
}

.card-cat:hover::before {
    right: -100%;
    opacity: 0.2;
    transition: right 6s linear , opacity 0.1s linear;
}
.mn-section{
    position: relative;
    border-radius: var(--border-radius);
    border: 1px solid #eee;
    box-shadow: 1px 1px 7px rgba(5, 5, 5, 0.1);
    padding:8px;
    margin: 12px;
}
.svg-bg{
    display: inline-flex;
    position: relative;
    width: 24px;
    height: 24px;
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    vertical-align: middle;
} 
.svg-bg.home{
    background-image: url(../img/hom.svg);
    
}
.svg-bg.people {
    background-image: url(../img/people.svg);

}
.svg-bg.destination {
    background-image: url(../img/destination.svg);

}
.svg-bg.date {
    background-image: url(../img/calendar.svg);

}
.svg-bg.time {
    background-image: url(../img/time.svg);

}
.sel-search-info .info{
    margin: 0 8px;
}
.sel-search-info .info .title {
    font-size: 14px;
    font-weight: 200;
    color: #919191;
}
.sel-search-info .info .text{
    font-size: 15px;
    font-weight: 600;
    color: var(--primary);
}


.extra-cost-wrapper input[type="checkbox"] {
    visibility: hidden;
    display: none;
    transition: all 0.3s ease-out;
}

.extra-cost-wrapper label {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
    line-height: 1;
}

.extra-cost-wrapper *,
.extra-cost-wrapper ::after,
.extra-cost-wrapper ::before {
    box-sizing: border-box;
}
.extra-cost-wrapper{
    margin: 4px 8px;
    border: 1px solid var(--primary);
    border-radius: var(--border-radius);
    padding: 4px;
}
.extra-cost-wrapper .item .cbx {
    position: relative;
    top: 1px;
    display: inline-block;
    width: 14px;
    height: 14px;
    margin: 4px;
    border: 1px solid #c8ccd4;
    border-radius: var(--border-radius);
    cursor: pointer;
}

.extra-cost-wrapper .item .cbx svg {
    position: relative;
    top: -1px;
    transform: scale(0);
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.extra-cost-wrapper .item .cbx svg polyline {
    stroke-width: 2;
    stroke: #18cda6;
}

.extra-cost-wrapper .item .cbx:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -10px 0 0 -10px;
    width: 20px;
    height: 20px;
    border-radius: 100%;
    background: #18cda6;
    transform: scale(0);
}

.extra-cost-wrapper .item .cbx:after {
    content: '';
    position: absolute;
    top: 5px;
    left: 5px;
    width: 2px;
    height: 2px;
    border-radius: var(--border-radius);
    box-shadow: 0 -18px 0 #79eba5, 12px -12px 0 #79eba5, 18px 0 0 #79eba5, 12px 12px 0 #79eba5, 0 18px 0 #79eba5, -12px 12px 0 #79eba5, -18px 0 0 #79eba5, -12px -12px 0 #79eba5;
    transform: scale(0);
}

.extra-cost-wrapper .item .cbx-lbl {
    position: relative;
    cursor: pointer;
    transition: color 0.3s ease;
}

.extra-cost-wrapper .item .cbx-lbl:after {
    /* content: ''; */
    position: absolute;
    top: 50%;
    left: 0;
    width: 0;
    height: 1px;
    background: #9098a9;
}

.extra-cost-wrapper .item input {
    display: none;
}

.extra-cost-wrapper .item input:checked+.cbx {
    border-color: transparent;
}

.extra-cost-wrapper .item input:checked+.cbx svg {
    transform: scale(1);
    transition: all 0.4s ease;
    transition-delay: 0.1s;
}

.extra-cost-wrapper .item input:checked+.cbx:before {
    transform: scale(1);
    opacity: 0;
    transition: all 0.3s ease;
}

.extra-cost-wrapper .item input:checked+.cbx:after {
    transform: scale(1);
    opacity: 0;
    transition: all 0.6s ease;
}

.extra-cost-wrapper .item input:checked~.cbx-lbl {
    color: #79eba5;
}

.extra-cost-wrapper .item input:checked~.cbx-lbl:after {
    width: 100%;
    transition: all 0.4s ease;
}
.extra-cost-wrapper:has(.item input:checked){
    background-color: var(--primary);
}
.form-field-groupe  {
    border-radius: var(--border-radius);
    border: 1px solid var(--primary);
    padding: 4px;
    flex-grow: 2;
    margin: 8px 4px;
}
.form-field-groupe.f50{
    width:45%;

}
.form-field-groupe.f100{
    width:100%;

}
.form-field-groupe select{
    border: none;
    outline: none;
}
.form-field-groupe label{
    white-space: nowrap;
    margin: 0 8px 8px;
    color:gray;
    font-weight: bold;
}
.form-field-groupe input, .form-field-groupe textarea {
    outline:none!important;
    border:none!important;
}

.invoice-box {
    direction: rtl;
    font-family: sans-serif;
    background: #fff;
    padding: 2em;
    max-width: 100%;
    margin: 2em auto;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    border-radius: var(--border-radius);
}

.invoice-box table {
    width: 100%;
    margin-top: 1em;
}
table.mn-factor-table th,
table.mn-factor-table td{
    padding: 15px;
    line-height: 1.5;
    vertical-align: top;
    border: none;
}
.invoice-box td {
    padding: 0.5em 0;
}

.invoice-box button {
    margin-top: 2em;
    padding: 0.7em 1.5em;
    background: #444;
    color: #fff;
    border: none;
    border-radius: var(--border-radius);
    cursor: pointer;
}

#mn-profile-wrapper { padding: 20px; background: #f9f9f9; border-radius: var(--border-radius); }
#mn-profile-wrapper form label { display: block; margin: 10px 0 5px; }
.mn-tabs { margin-top: 20px; }
.mn-tab { margin-left: 10px; padding: 5px 10px; cursor: pointer; }
.mn-transfer { border: 1px solid #ccc; padding: 10px; margin-top: 10px; background: #fff; border-radius: var(--border-radius); }
.mn-transfer.paid{border: 1px solid #7ce872;background: #e5eed8;}
.mn-transfer.pending{border: 1px solid #d56790; background: #fdf7fa;}
.mn-transfer.deactive{display: none;}
.mn-tab.active { background: #0073aa; color: #fff; }
.mn-factor-table th, .mn-factor-table td {
    padding: 10px;
    border: 1px solid #ccc;
}




@media print {
    body * {
        visibility: hidden;
    }

    #invoice,
    #invoice * {
        visibility: visible;
    }

    #invoice {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
    }
}
#sidebar-filter-activator, .search-sidebar .close-btn{
    display: none;
}
#sidebar-filter-activator .media{
    width: 24px;
    height: 24px;
    display: inline-block;
}
#sidebar-filter-activator .media svg{
    width: 100%;
    height: 100%;
    object-fit: contain;
}
    #sidebar-filter-activator .text{
    display: inline;
}



@media (max-width: 992px) {
  .form-outer .mn-step-form .forma-state .passenger-field{
    width:50%;
    }
    .switch-inner>span{
    font-size: 1.1rem;
    }
    .toolbar{
        margin:16px;
    }
    #sidebar-filter-activator{
        display: flex;
    }
    .search-sidebar{
        position: fixed;
        top:90px;
        background-color: #eee;
        transform: translateX(120%);
        transition: all 0.3s ease-out;
    }
    .search-sidebar.active{
        transform: translateX(0%);
}
.search-sidebar .close-btn{
    position: absolute;
    top: 4px;
    left: 4px;
    margin-bottom: 16px;
    color: red;
    border: solid 1px red;
    outline: red;
    display: flex;
    padding: 4px 12px;
} 
.serach-content {
    margin: 0 16px;
}  

}
.fixe-col-wrapper {
    width:35%
}
.fixed-panel{position:sticky; top: 64px}
@media (max-width: 768px) {
    .flex-content .content {
    width: var(--containerWidth);
    border-radius: var(--border-radius);
    padding:16px;

}

.flex-content .content .progress-bar {
    margin: 20px 0;
    user-select: none;
    border-bottom: 1px solid #efefef;
    padding-bottom: 16px;
    overflow: auto;
    flex-wrap: nowrap;
}
.flex-content .content .progress-bar .step{
    min-width: 120px;
    border-radius: var(--border-radius);
}
.progress-bar .step::before, .progress-bar .step::after {
    right: 106%;
    width: 0px;
}
.progress-bar .step.pass::before{
    width: 24px;
}
.progress-bar .step.active {
    /* --border-angle: 0turn; */
    --main-bg: conic-gradient(from var(--border-angle), #c9c9c9, #c9c9c9 5%, #c9c9c9 60%, #c9c9c9 95%);
    border: solid 2px transparent;
    --gradient-border: conic-gradient(from var(--border-angle), transparent 25%, var(--primary), #c9c9c9 99%, transparent);
    background: var(--main-bg) padding-box, var(--gradient-border) border-box, var(--main-bg) border-box;
    background-position: center center;
    -webkit-animation: bg-spin 3s linear infinite;
    animation: bg-spin 3s linear infinite;
}
.form-outer .mn-step-form .forma-state{
    height: auto;
}
.form-outer .mn-step-form .forma-state .passenger-field{
    width:100%;
    flex-direction: row;
    gap: 8px;
    }
    .card-wrapper{
        flex-direction: column;
    }
    .transfer-card .card-media {
    width: 100%;
    height: 120px;
    }
    .transfer-card .card-media a, .transfer-card .card-media a img{
        width: 100%;
        height: 100%;
    }
    .transfer-card .card-media a{
        display: block;
    }
    .transfer-card .card-media a img{
        object-fit: cover;
    }
    .transfer-card .card-price{
        border-right: none;
        border-bottom: 1px solid #efefef;
    }
    .info-item .info-title{
        display: none;
    }
    .info-item.luggage>:nth-child(4){
        display: inline;
    }
    .transfer-card .card-footer{

        align-items: center;
        justify-content: center;
    }
    #sidebar-filter-activator{
        width:48px;
        min-width:48px;
        height:48px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    #sidebar-filter-activator .media{
        width: 24px;
        min-width: 24px;
    }
    #sidebar-filter-activator .text{
    display: none;
    }
    .transfer-details{
        flex-direction: column;
    }
.fixe-col-wrapper {
    width:100%
}
    
}
