.ctws-logo.secondload{display:none;}
.header{background:transparent !important;}
 .blend-text {
      font-size: 6vw;
      font-weight: bold;
      color: black;
      mix-blend-mode: difference;
      margin: 0;
    }

    .hero, .herocontact {
      overflow: hidden;
      opacity: 0;
      position: fixed;
      mix-blend-mode: difference;
      background-size: cover;
      display: flex;
      align-items: center;
      justify-content: center;
      writing-mode: vertical-lr;
      z-index: 9;
    }

    .hero {
      top: 0px;
      right: 30px;
    }

    .herocontact {
      bottom: 150px;
      right: 30px;
    }

    .blend-text {
      font-size: 2vw;
      font-weight: bold;
      color: white;
      mix-blend-mode: difference;
      text-align: center;
      line-height: 1.1;
      z-index: 1;
    }
    .bannerText{writing-mode: vertical-lr;font-size: 8vw;}
    #main-container{padding:0px;}
    .header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1030;
  background: transparent !important;
  z-index: 1;
  margin: 0px;
}
.logonew.ctws-new-head{display:none;}
.hero, .herocontact{  /* completely hidden until GSAP sets it */
  opacity: 0;
   /* same starting Y as your GSAP set */}
   
   
   /* Base form styles contact form */
 /* WRAPPER */
.custom-form {
  max-width: 1200px; /* keep full width if you prefer */
  margin: 0 auto;
  font-family: 'Arial', sans-serif;
  color: #000;
}

/* CF7 wraps should not constrain width */
.custom-form .wpcf7-form-control-wrap { display: block; width: 100%; }

/* ROWS: 2-col on desktop, 1-col on mobile */
.custom-form .form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  margin-bottom: 22px;
}
.custom-form .form-row.full { grid-template-columns: 1fr; }
.custom-form .form-row > * { min-width: 0; } /* prevents overflow in grid */

/* INPUTS */
.custom-form input,
.custom-form textarea,
.custom-form select,
.custom-form .dropdown-label {
  width: 100%;
  padding: 14px 16px;
  border: none;
  border-bottom: 1px solid #ccc;
  background: transparent;
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  color: #333;
  outline: none;
  box-sizing: border-box;
}

/* Placeholder */
.custom-form ::placeholder {
  color: #bbb;
  font-weight: 700;
  letter-spacing: 1px;
  font-style: italic;
}

/* Focus underline */
.custom-form input:focus,
.custom-form textarea:focus,
.custom-form select:focus,
.custom-form .custom-dropdown.active .dropdown-label {
  border-bottom-color: #000;
}

/* Textarea */
.custom-form textarea { resize: vertical; min-height: 120px; }

/* --- CUSTOM DROPDOWN --- */
.custom-dropdown { position: relative; width: 100%; }

/* Hide native select but keep it in DOM for submit/validation */
.custom-dropdown select {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  pointer-events: none; /* <-- important: do not intercept clicks */
}

/* Visual label (acts like input) */
.custom-dropdown .dropdown-label {
  display: block;
  color: #999;
  cursor: pointer;
  font-style: italic;
}

/* Options panel (animated) */
.custom-dropdown .options {
  position: absolute;
  left: 0;
  top: calc(100% + 8px);
  width: 100%;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 12px 30px rgba(0,0,0,.12);
  z-index: 999;
  overflow: auto;
  max-height: 0;
  opacity: 0;
  transform: translateY(-6px);
  transition: max-height .2s ease, opacity .2s ease, transform .2s ease;
  /* padding is added when open so borders don't flicker */
}
.custom-dropdown.active .options {
  max-height: 260px;
  opacity: 1;
  transform: translateY(0);
  padding: 6px 0;
}

/* Option items */
.custom-dropdown .options div {
  padding: 12px 16px;
  cursor: pointer;
  font-size: 14px;
  color: #333;
  text-transform: none; /* keep readable list */
}
.custom-dropdown .options div:hover { background: #f5f5f5; }
.custom-dropdown .options div[aria-selected="true"] { background: #efefef; }

/* Consent */
.custom-form .consent label {
  font-size: 12px;
  color: #666;
  text-transform: none;
  font-weight: normal;
  line-height: 1.4;
}

/* Submit button */
.custom-form .submit-btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: none;
  border: none;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  text-transform: uppercase;
  color: #222;
}
.custom-form .submit-btn .arrow { font-size: 28px; line-height: 1; }
/* Wrap the whole form in a grid/flex */
.wpcf7-form {
  display: flex;
  flex-wrap: wrap;
  gap: 20px; /* space between fields */
}

/* Make every input/select half width */
.wpcf7-form .wpcf7-form-control-wrap {
  flex: 1 1 calc(50% - 20px);
  min-width: 250px; /* keep it readable on small screens */
}

/* Full width for message/textarea and submit button */
.wpcf7-form textarea,
.wpcf7-form .wpcf7-submit {
  flex: 1 1 100%;
}
/* Responsive */
@media (max-width: 900px) {
  .custom-form .form-row { grid-template-columns: 1fr; }
  }