@import url('/css/Fonts/WEB/css/supreme.css');
@import url('https://googleapis.com');


:root {
    --primary-color: #080808;
    font-family: Supreme-Italic;
    font-family: 'Noto Sans', sans-serif;
     --font-size: 16px;
    --spacing: 1rem;
    --white:         #f5f5f5fa;
    --white-dim:     #c1bebee4; 
    --orange:         #ff762c;
    --moving-orange:  #FF7900;
    --blue:           #2a5ca8;
    --pink:          #FF2D8B;
    --pink-light:    #FF6BB3;
    --pink-dark:     #352a2a; 
  }

    html, body  {
    /* font: inherit; */
    background: var(--white);
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 100vh;
    width: 100%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 0;          /* no padding so navbar can touch edges */
    overflow-x: hidden;
    }
h1, label {
    color: #2a5ca8;
    font-style: italic;
    align-items: center;
  }
  .form-label{
  color: #2a5ca8;
  }
  h1#big-ox{
    font-size: 48px;
    font-weight: 800;
    margin-top: 10px;
  }
.heading {
  font-size: 3em;
  padding: 10px 5px;
  margin-bottom: 25px;
}
.badge-container {
  position: relative;
  display: inline-block;
}

.hover-badge {
  position: absolute;
  top: -8px;
  right: -8px;
  background-color: #007bff;
  color: white;
  font-size: 10px;
  font-weight: 600;
  padding: 2px 6px;
  border-radius: 10px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.2s ease, transform 0.2s ease;
  transform: scale(0.9);
}

.badge-container:hover .hover-badge {
  opacity: 1;
  visibility: visible;
  transform: scale(1);
}

#wrapper {
  width: 100%;
  height: 100%;
  color: white;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
}

#wrapper * {
  margin: 5px;
}
.animatable {
  position: relative;
  clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%);
  animation: .75s cubic-bezier(1,-0.01,.12,.8) 1s 1 reveal forwards;
  justify-content: center;
}
@keyframes fadeInText {
  to { opacity: 1; }
}
.animatable::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #20262b;
  padding: inherit;
  animation: .75s cubic-bezier(1,-0.01,.12,.8) 1.75s 1 hideBlack forwards;
}
dotlottie-wc {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;     /* sits centered over the wrapper */
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  opacity: 1;
  /* starts fading out at 1s (when text reveal begins) 
     fully gone by 1.75s (when black wipe exits) */
  animation: lottieFade 0.5s ease-out 1.5s 1 forwards;
}
@keyframes lottieFade {
  from { opacity: 1; }
  to   { opacity: 0; pointer-events: none; }
}

  h1#form-title {
    color: #2a5ca8;
    font-weight: 700;
    align-items: center;
    margin-top: -5px;
  }
  h1#section-title{

    font-size: 42px;
  }
  h3#big-ox-lo  {
    margin-top: -10px;  
}
@keyframes reveal {
  from { clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%); }
  to { clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }
}

@keyframes hideBlack {
  from { clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }
  to { clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%); }
}
a, p {
  color: var(--white);
  text-decoration: none;
}
h3#card-title {
  color: var(--white);
  font-weight: 800;
  font-style: normal;
  font-size: 20px;
  justify-content: center;
}

h4, h2, footer p{
    color: var(--white);
    margin-left: 15%;
}
footer {
 display: flex;
  flex-direction: column;
  align-items: center;        /* left-align like the reference */
  width: 100%;
  /* width: 100vw; */
  background-color: #0d2b0d;     /* dark green matching reference */
  padding: 32px 40px;
  box-sizing: border-box;
  gap: 12px;
  width: 100%;
  /* height: 100%; */
  background-color: #2a5ca8 ;
}
.footer-title {
  margin-right: 45%;
}
.footer-top {
  display: flex;
  flex-direction: column;         /* stack phone then email vertically */
  align-items: flex-start;
  gap: 4px;
}
footer h2 {
  margin: 0 0 8px 0;
  font-family: 'Noto Sans', sans-serif;
  font-size: 28px;
  color: rgba(0, 0, 0, 0.659); 
  opacity: 0.85;
  font-weight: 700;
  font-style: italic;
}

.footer-top h3.phone-email {
  margin: 0;
  font-size: 18px;
  font-weight: 400;
  font-style: normal;
  color: #e8e8e8;
}
footer p {
  margin: 0;
  color: white;
  font-size: 14px;
  font-weight: 550;
}

footer h2,
footer h3.phone-email {
  margin: 0;
  color: #000000;
}
hr.line-divider {
  border: none;
  height: 1px;
  width: 100%;
  background-color: #ccc;
  margin: 20px 0;
}
/* Background image fills the container */
#bkgrnd {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  top: 0;
  left: 0;
  z-index: 0;
}

#Moving-Homepg {
  align-items: center;
  margin-top: -8%;
}


#Moving-overlay {
  position: relative; /* sits above the absolute image */
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 500px;
  padding: 2rem 1rem;
  gap: 1.5rem;
  left: 7.5%;
}
.slogan {
  letter-spacing: 0.25em; /* Adjust this value to spread out the letters */
  color: #e8821a;
  text-align: center;
  margin-bottom: 200px;
}

  img#bkgrnd {
    opacity: 0.1;
    align-items: center;
  }
  #big-ox-logo {
    display: flex;
    justify-content: center;
  }
  .logo-btn {
    position: absolute;
    cursor: pointer;
    border: none;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); /* Centers the button */
    padding: 10px 20px;
    width: 100%;
    height: 100%;
    background-color: transparent;
}
.navBar {
    display: flex;
    position: sticky;
    top: 0; 
    left: 0;
    width: 100vw;
    z-index: 100;
    box-sizing: border-box;
    /* justify-content: space-between; */
    align-items: center;
    font-weight: 450;
   /* padding: 0 2rem; */
    background-color: #2a5ca8 ;
}

nav ul{
    list-style-type: none;
}
.nav-links {
    display: flex;
    margin-left: 0%;
    /* margin-right: auto; */
    align-items: left;
    /* background-color: red; */
    gap: 25px;
    z-index: 10;
}

 .PortfolioDiv {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  gap: 1.5rem; /* Space between cards */
  padding: 1.5rem;
  /* background-color: pink; */
  border-radius: 12px;
  margin-bottom: 2rem;
  margin-left: 75px;
  /* overflow-x: hidden; */
 }
 /* .portfolio-title {
  margin-top: 15px;
 } */
 /* Initial hidden state — below and invisible */
.service-card {
  opacity: 0;
  transform: translateY(125px);
  transition: opacity 1.25s ease, transform 1.25s ease;
}

/* Triggered state — when JS adds this class */
.service-card.visible {
  opacity: 1;
  transform: translateY(0);
}
.service-card:nth-child(1) { transition-delay: 0s; }
.service-card:nth-child(2) { transition-delay: 0.15s; }
.service-card:nth-child(3) { transition-delay: 0.3s; }
.service-card:nth-child(4) { transition-delay: 0.45s; }
.service-card:nth-child(5) { transition-delay: 0.6s; }
.service-card:nth-child(6) { transition-delay: 0.75s; }

 .card {
   display: flex;
   flex: 1 1 auto; /* Grow, shrink, base width */
   /* max-width: 300px;
   max-height: 100px; */
   flex-direction: column;
   align-items: center;
   gap: 8px;
   background: #FF7900;
   border-radius: 10px;
   padding: 12px;
   box-shadow: 0 2px 8px rgba(0,0,0,0.1);
   max-width: 225px;

   transition: transform 0.2s ease, z-index 0.3s ease;
  }
  .cards:hover {
    z-index: 10;
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.35);
    transform: 
      rotate(calc(var(--card-index) * 12deg)) 
      translateX(calc(var(--card-index) * 55px)) 
      translateY(calc((abs(var(--card-index)) * 8px) - 25px)) !important;
  }
  .card-1 {
  top: -25px;
  left: 50px;
  transform: rotate(-12.5deg);
  z-index: 1;
}

.card-2 {
  top: 40px;
  left: 120px;
  transform: rotate(-7.5deg);
  z-index: 2;
}

.card-3 {
  top: 0px;
  left: 200px;
  transform: rotate(0deg);
  z-index: 1;
}
.card-4 {
  top: 40px;
  left: 200px;
  transform: rotate(7.5deg);
  z-index: 1;
}
.card-5 {
  top: -25px;
  left: 200px;
  transform: rotate(15deg);
  z-index: 1;
}
 .card-6 {
  top: -25px;
  left: 50px;
  transform: rotate(10deg);
  z-index: 1;
}
  .Moving-Pics{
  position: relative;
  display: inline-block;
  }
  .Moving-Pics img {
    display: block;
    width: 100%;
    height: auto;    
  }


 #Moving-form {
  top: 45%;
  left: 50%;
  transform: translate(6.5%, -50%);
  display: flex;
  text-align: center;
  align-items: center;
  flex-direction: column;
  /* gap: 8px; */
  background: rgba(255, 252, 252, 0.713);  /* semi-transparent backdrop */
  padding: 24px 32px;
  border-radius: 12px;
  width: 400px;
  height: auto;
  overflow: visible;
  margin-top: 50px;

}


#Moving-form fieldset {
  display: flex;
  flex-direction: column;
  gap: 10px;
  border: 0 none;
  border-radius: 3px;
  /* box-shadow: 0 0 15px 1px rgba(0, 0, 0, 0.4); */
  /* padding: 20px 30px; */
  box-sizing: border-box;
  margin: 0 10%;
  position: relative;
  width: 350px;
  height: 400px;
  overflow-y: auto; 
}
#Moving-form input, #Moving-form text, #Moving-form select {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 5px;
  border: 1px solid #ccc;
  border-radius: 3px;
  margin-bottom: 10px;
  box-sizing: border-box;
  font-family: 'Lato', sans-serif;
  color: #2C3E50;
  font-size: 13px;
  width: 100%;
}
.switch {
  font-size: 17px;
  position: relative;
  display: inline-block;
  width: 2.625em;
  height: 1.5em;
}

/* Hide default HTML checkbox */
.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

/* The slider */
.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #fff;
  border: 1px solid #adb5bd;
  transition: .35s;
  border-radius: 30px;
}
#form-sliders {
  display: flex;
  font-size: 14px;
  justify-content: center;
  gap: 15px;
}
#whitegl-div {
display: flex;
flex-direction: column;
justify-content: center;
margin-bottom: -10px;
}
#whitegl-div h3{
margin-bottom: -10px;
justify-content: center; 
/* margin-bottom: -62.5px; */
}
#whitegl-div p{
font-style: italic;
font-size: 11.5px;
justify-content: center;
margin-left: -10px;
/* margin-bottom: -62.5px; */
}
.slider:before {
  position: absolute;
  content: "";
  height: 1.05em;
  width: 1.05em;
  border-radius: 20px;
  left: 0.2em;
  bottom: 0.18em;
  background-color: #adb5bd;
  transition: .35s;
}

input:checked + .slider {
  background-color: #007bff;
  border: 1px solid #007bff;
}

input:focus + .slider {
  box-shadow: 0 0 1px #007bff;
}

input:checked + .slider:before {
  transform: translateX(1.1em);
  background-color: #fff;
}
label {
  font-style: normal;
}

#progressbar {
  margin-bottom: 25px;
  overflow: hidden;
  counter-reset: step;
  align-items: center;
  margin-top: -1px;
  margin-right: 12.5%;
  width: 100%;
  /* flex-direction: row; */

}
#progressbar ul {
    align-items: center;
}
#progressbar li {
  list-style-type: none;
  color: var(--blue);
  text-transform: uppercase;
  font-size: 9px;
  width: 33.33%;
  float: left;
  position: relative;
  
}

#progressbar li:before {
  content: counter(step);
  counter-increment: step;
  width: 20px;
  line-height: 20px;
  display: block;
  font-size: 10px;
  color: #333;
  background: white;
  border-radius: 3px;
  margin: 0 auto 5px auto;
}
/*progressbar connectors*/
#progressbar li:after {
  content: '';
  width: 100%;
  height: 2px;
  background: white;
  position: absolute;
  left: -50%;
  top: 9px;
  z-index: -1; /*put it behind the numbers*/
}
#progressbar li:first-child:after {
  /*connector not needed before the first step*/
  content: none; 
}
/*marking active/completed steps green*/
/*The number of the step and the connector before it = green*/
#progressbar li.active:before,  #progressbar li.active:after{
  background: var(--moving-orange);
  color: white;
}
/* Style the form container */
#myForm {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}
.forward-arrow {
  display: flex;
  position: absolute;
  width: 50%;
  top: 50.5%;
  left: 88.25%;
  z-index: 2;
  /* margin-left: 75%; */
}
.previous-arrow {
  display: flex;
  position: absolute;
  width: 50%;
  top: 50%;
  left: 3.5%;
  z-index: 2;

}
.address-line-from, .address-line-to {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-left: 15px;
  max-width: 350px !important;
}
.black-text {
  color: black;
  opacity: 0.85;
  min-width: 51.5px;
  /* background-color: red; */
}
#state-options, #city-input, #zipcode {
  min-width: 55px;
}

/* Style the button */
.forward-btn {
  background-color: #FF7900;
  border: none;
  border-radius: 50%;
  width: 45px;
  height: 45px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease;
}

.forward-btn:hover, #previous-btn:hover {
  background-color: #0056b3;
}

.forward-btn .arrow {
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 15px solid white; /* Points to the right */
  position: relative;
  right: -2px; /* Centers the arrow visually */
}
#previous-btn {
  background-color: #FF7900;
  border: none;
  border-radius: 50%;
  width: 45px;
  height: 45px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s ease;
}
#previous-btn .arrow {
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-right: 15px solid white; /* Points to the right */
  position: relative;
  right: 2px; /* Centers the arrow visually */
}
.submit-btn {
  background-color: #FF7900;
  color: var(--white); 
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 20px;
  border: none;
  height: 25px;
   width: 100%;
  padding: 12px 24px; 
}

#successBox {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
margin-top: 15%;
}
@keyframes popIn {
  from { transform: scale(0.85); opacity: 0; }
  to   { transform: scale(1);    opacity: 1; }
}

.modal-overlay {
  display: none;
  /* display: flex; */
  position: fixed;
  top: 0;
  left: 0;
  width: 110%;
  height: 100%;
  background: rgba(3, 3, 3, 0.945);
  border-radius: 10px;
  z-index: 999;
  justify-content: center;
  align-items: center;
}
.modal-close {
  position: absolute;
  top: 12px;
  right: 14px;
  background: none;
  border: none;
  font-size: 18px;
  cursor: pointer;
  color: #888;
  line-height: 1;
}

        #successBox h3, h2 {
          color: var(--moving-orange);
          font-family: Supreme-Italic;
          font-weight: 600;
        }
         #successBox h2 {
          margin-top: 20%;
          margin-left: -1%;
        }
        /* Success screen checkmark icon */
        .success-icon {
            font-size: 48px;
            color: #28a745;
            margin-bottom: 40px;
        }
        .success-sub {
          margin-left: -2.5%;
          font-family: 'Noto Sans', sans-serif !important;
          font-size: 28px;
        }
        #checkmark {
          animation: slide-in 1s ease-in-out forwards;
          transform: translate(-47.5%, -165%);
        }

#successDismiss {
  margin-top: 50px;
  padding: 10px 28px;
  background: #FF7900;
  color: white;
  border: none;
  border-radius: 8px;
  font-size: 15px;
  cursor: pointer;
  transition: background 0.2s ease;
}

#successDismiss:hover {
  background: #cc6000;
}
  #fade-left {
    color: red;
  }

  #reviews-panel {
    margin-bottom: 150px;
    /* background-color: red; */
    margin-left: auto;
    padding: 0 2rem;
    width: 110%;
    height: 100%;
  }
  .contact-div{
    display: flex;
    flex-direction: column;
    /* row-gap: -35px; */
    align-items: center;
    height: 325px;
  }
  h1.contact-div {
    align-items: center;
  }
  h3#big-ox-lo, p#p-contact{
    color: var(--moving-orange);
  }
  h3.phone-email {
    font-size: 20px;
    font-weight: 550;
    color:var(--white); 
  }

  #U-Haul {
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-left: 5%;
    width: 100%;
    gap: 15px;
  }
/* Standard   Mobile Portrait View */
@media screen and (max-width: 480px) {
    /* #Moving-Homepg {
    min-height: 420px;
  } */
  .forward-arrow {
  width: 50%;
  top: 55%;
  left: 95%;
  z-index: 2;
}
.previous-arrow {
  width: 50%;
  top: 54.5%;
  left: -5%;
  z-index: 2;
}
.card-1, .card-2, .card-3, .card-4, .card-5, .card-6 {
  top: -25px;
  left: 50px;
  transform: rotate(0deg);
  z-index: 1;
}

  #Moving-overlay {
    min-height: 420px;
    padding: 1.5rem 1rem;
    gap: 1rem;
    justify-content: flex-start; /* anchor to top on small screens */
    padding-top: 2rem;
    
  }

  #Moving-form {
    padding: 16px 20px;
    max-width: 100%; /* full width on phone */
  }
  /* Styles for tablets and mobiles */
  body { font-size: 16px; }
  .container { 
  flex-direction: column; 
  width: 75%;
  align-items: center;
  margin: 0 auto;
}
  html 
  {
    zoom: 62.5%;
  }

.popup-box-1, .popup-box-2 
{
  max-width: 325px;
}


} 