@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; 
  }
/* .antic-regular {
  font-family: "Antic", sans-serif;
  font-weight: 400;
  font-style: normal;
} */

    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;
  }
  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;
}

h4, h2, footer p{
    color: var(--white);
    margin-left: 15%;
}
footer {
  display: flex;
  flex-direction: row;
  align-items: center;
  /* justify-content: space-around; */
  gap: 40px;
  /* width: 150%; */
  /* margin-left: 25%; */
  flex-grow: 1;
  width: 100%;
  /* height: 100%; */
  background-color: #2a5ca8 ;
}
/* 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 */
  /* font-size: 3rem; */
  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;
}
  /* .nav-links {
    display: flex;
    flex-direction: row;
    gap: 100px;
  } */
/* .PortfolioDiv {
display: block;
width: 500px;
height: 250px;
} */
 .PortfolioDiv {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  gap: 1.5rem; /* Space between cards */
  /* background-color: pink; */
  /* overflow: auto; */
  padding: 1.5rem;
  /* background-color: pink; */
  border-radius: 12px;
  margin-bottom: 2rem;
  margin-left: 75px;
  /* overflow-x: hidden; */
 }
 .portfolio-title {

  margin-top: -100px;
 }
 /* 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);
    /* Lifts the hovered card slightly upward out of the deck */
    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;
}
  .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: 387.5px;
  height: auto;
  overflow: hidden;
  margin-top: 50px;
  /* margin: 50px auto; */
  /* position: relative; */
  }


#Moving-form fieldset {
  display: flex;
  flex-direction: column;
  gap: 10px;
  border: 0 none;
  /* background: white; */
  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: 325px;
  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;
  justify-content: center;
  gap: 15px;
}
.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;
  /* justify-content: flex-end;  */
  width: 50%;
  top: 47%;
  left: 88.25%;
  z-index: 2;
  /* margin-left: 75%; */
}
/* 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 {
  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 */
}
  #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: 16px;
    color:var(--white); 
  }
/* Standard   Mobile Portrait View */
@media screen and (max-width: 480px) {
    /* #Moving-Homepg {
    min-height: 420px;
  } */
  #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;
}


} 