/* #b1b1b1 */
/* dc4d28 */
/* 272727 */
/* 3d5c9c */

/* Split container styles */
.split-container {
  display: flex;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  padding: 0; /* Ensure no padding */
  margin: 0; /* Ensure no margin */
  margin-top: -14px;
  min-height: 1200px;
}

.white-section {
  width: 30%;
  background-color: white;
  display: flex;
  /* justify-content: center; */
  /* align-items: center; */
  flex-direction: column;
}
.logo-container {
  margin-top: 100px;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 40px;
}
.blue-section {
  width: 94%;
  background-color: #1a73e8; /* Google blue color */
  position: relative;
  overflow: hidden;
}
.background-image-container {
  position: absolute;
  width: 90%;
  height: 90%;
  right: 0;
  bottom: 0;
  right: -22px;
  min-width: 800px;
}

/* .background-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
} */
/* Logo styles */

.logo {
  margin-bottom: 1rem;
}

/*color containers */
.color-blocks-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
  width: 100%;
}

.color-blocks-container-online {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
  width: 100%;
  margin-top: 15pvh;
  cursor: pointer;
}
.color-block {
  width: 90%;
  height: 45px;
  border-radius: 4px;
}

/* Color block variants */
.block-gray {
  background-color: #efefef;
  height: clamp(45px, 5vh, 60px);
  display: flex;
  align-items: center;
  position: relative;
  border-radius: 4px;
  cursor: pointer;
}

.block-icon-container {
  width: 45px;
  height: 100%;
  background-color: #cfc7c7;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px 0 0 4px;
  position: absolute;
  left: 0;
  top: 0;
}

.block-text-content {
  width: 100%;
  /* padding-left: 45px; */
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  box-sizing: border-box;
  /* margin-bottom:4px */
}
.block-text-content1 {
  width: 100%;
  padding-left: 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  box-sizing: border-box;
  margin-bottom: 4px;
}

.primary-text {
  font-size: clamp(9px, 0.9vw, 18px);
  color: #000000;
  font-family: "Acumin Pro Medium";
  line-height: 0.8;
  margin-top: 4px;
}

.secondary-text {
  font-size: clamp(9px, 0.9vw, 19px);
  color: #000000;
  font-family: "Acumin Pro Medium";
  line-height: 0.8;
  margin-top: 2px;
}

.block-white {
  background-color: white;
  height: 220px;
  display: flex;
  align-items: center;
  position: relative;
  border-radius: 4px;
  cursor: pointer;
}

.block-icon-white-register-container {
  width: 16px;
  height: 100%;
  background-color: #cfc7c7;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px 0 0 4px;
  position: absolute;
  left: 0;
  top: 3px;
}

.block-white-text-content-register {
  width: 100%;
  padding-left: 45px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  box-sizing: border-box;
  gap: 20px; /* Space between lines */
  margin-bottom: -5px;
  border: 1px solid #ebe8e8;
}

.input-line {
  width: 90%;
  padding: 8px 0;
  margin: 0 auto;
  border: none;
  border-bottom: 1px solid #cfc7c7;
  background-color: transparent;
  outline: none;
  font-family: "Acumin Pro Medium";
  font-size: 12px;
}

.input-line:focus {
  border-bottom-color: #006eff; /* Change color when focused */
}
.forget-pass-other {
  font-size: 12px;
  /* font-family: "Acumin Pro Condensed Light Italic"; */
  cursor: pointer;
  margin-top: -10px; /* Space above the forget password */
  display: flex;
  align-self: flex-end;
  color: #006eff;
}
.login-button {
  width: 38%;
  margin: 15px auto 0;
  padding: 8px 16px;
  background-color: #efefef; /* Blue color matching your theme */
  color: black;
  border: none;
  border-radius: 2px;
  font-family: "Acumin Pro Semi Bold";
  font-size: 12px;
  cursor: pointer;
  transition: background-color 0.3s;
}

.login-button:hover {
  background-color: #cfc7c7; /* Darker blue on hover */
}
.block-red {
  background-color: #dc4d28;
  height: clamp(45px, 5vh, 60px);
  display: flex;
  align-items: center;
  position: relative;
  border-radius: 4px;
  cursor: pointer;
}
.forget-pass {
  font-size: 12px;
  margin-top: -18px;
  margin-bottom: -14px;
  font-family: "Acumin Pro Condensed Light Italic";
  display: flex;
  align-self: end;
  margin-right: 24px;
  cursor: pointer;
}
.block-red-icon-container {
  width: 45px;
  height: 100%;
  background-color: #c03c20;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px 0 0 4px;
}

.block-red-text-content {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 0 10px;
  padding-right: 55px;
  margin-top: -4px;
}

.primary-red-text {
  /* font-size: 12px; */
  font-size: clamp(9px, 0.9vw, 19px);
  color: white;
  font-family: "Acumin Pro Medium";
  margin-top: 4px;
  /* line-height: 1.2; */
}

.block-black {
  background-color: #4c4949;
  height: clamp(45px, 5vh, 60px);
  display: flex;
  align-items: center;
  position: relative;
  border-radius: 4px;
  cursor: pointer;
}

.block-black-icon-container {
  width: 45px;
  height: 100%;
  background-color: #272727;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px 0 0 4px;
}

.block-black-text-content {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 0 10px;
  padding-right: 55px;
  margin-top: -4px;
}

.primary-black-text {
  /* font-size: 12px; */
  font-size: clamp(9px, 0.9vw, 19px);
  color: white;
  font-family: "Acumin Pro Medium";
  margin-top: 4px;
  /* line-height: 1.2; */
}
.block-blue {
  background-color: #3d5c9c;
  height: clamp(45px, 5vh, 60px);
  display: flex;
  align-items: center;
  position: relative;
  border-radius: 4px;
  cursor: pointer;
}

.block-blue-icon-container {
  width: 45px;
  height: 100%;
  background-color: #10244e;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px 0 0 4px;
}

.block-blue-text-content {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 0 10px;
  padding-right: 55px;
  margin-top: -4px;
}

.primary-blue-text {
  font-size: clamp(9px, 0.9vw, 19px);
  color: white;
  font-family: "Acumin Pro Medium";
  margin-top: 4px;
  /* line-height: 1.2; */
}
.block-blue-text-content-online {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  padding: 0 10px;
  /* padding-right: 55px; */
  margin-top: -4px;
}

.primary-blue-text-online {
  font-size: clamp(9px, 0.9vw, 19px);
  color: white;
  font-family: "Acumin Pro Medium";
  /* line-height: 1.2; */
}
.block-blue-online {
  background-color: #0071c9;
  height: 45px;
  display: flex;
  align-items: center;
  position: relative;
  border-radius: 4px;
  cursor: pointer;
  margin-top: 60%;
}
.top-right-text {
  position: absolute;
  top: 65px; /* Increased from 20px for better spacing */
  left: 40px; /* Changed from negative to positive value */
  color: white;
  padding: 10px 15px;
  z-index: 10;
}
.top-line {
  font-size: 1.9vw;
  white-space: nowrap;
  font-family: "Greycliff Bold";
}

.top-line-bottom {
  font-size: 1.9vw;
  text-align: center; /* Centers under the top line */
  margin-top: -8px; /* Space between lines */
  white-space: nowrap;
  font-family: "Greycliff Bold";
}
.top-middle-line {
  font-size: 1.2vw;
  white-space: nowrap;
  margin-top: 24px; /* Space between lines */
  font-family: "Greycliff Medium";
}
.top-middle-line-other {
  font-size: 1.2vw;
  margin-top: 10px; /* Space between lines */
  font-family: "Greycliff Medium";
}
.top-middle-line-other1 {
  font-size: 1.2vw;
  margin-top: -7px;
  font-family: "Greycliff Medium";
}
.top-bottom {
  font-size: 1.3vw;
  margin-top: 28px; /* Space between lines */
  font-family: "Greycliff Extra Bold";
}
.conti-guest {
  display: flex;
  justify-content: center;
  align-items: center;
}
.guest-text {
  margin-top: 48px;
  color: #000000; /* Pure black */
  font-size: 1.1vw;
  text-decoration: underline;
  text-decoration-color: #e5dcdc; /* Makes the underline gray */
  text-underline-offset: 4px; /* Moves underline a bit lower */
  cursor: pointer; /* Changes cursor to indicate clickable */
  font-family: "Acumin Pro Bold"; /* Matching your other text styles */
}

.white-center-container {
  width: 54%;
  height: auto;
  background-color: white;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  padding: 30px;
  box-sizing: border-box;
  /* Remove overflow-y: auto to prevent scrolling on desktop */
  max-height: none; /* Remove max-height constraint */
}
.register-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  width: 100%;
}

.register-image {
  display: flex;
  gap: 0px;
  margin-top: 14px;
  margin-bottom: -8px;
}

.register-title {
  /* font-size: 24px; */
  font-size: 2vw;
  font-family: "Acumin Pro Condensed SemiBold";
  color: #000000;
  /* margin-bottom: 20px; */
}

.register-text {
  font-size: 1vw;
  font-family: "Acumin Pro Condensed Medium";
  color: #000000;
  line-height: 0.5;
  width: 100%; /* Ensure it takes full width of container */
  text-align: center; /* Center the text horizontally */
  display: flex;
  flex-direction: column;
  align-items: center; /* Center children horizontally */
  justify-content: center; /* Center children vertically if needed */
  margin-left: 30px;
}

.register-text p {
  margin: 5px 0;
  width: 100%; /* Ensure paragraphs take full width */
}
/* Added styles for email input */
.personal-input-container {
  width: 70%;
  margin-top: 20px;
  /* margin-left: 38px; */
  margin-right: 80px;
}
.contact-input-container {
  width: 70%;
  margin-top: 30px;
  /* margin-left: 38px; */
  margin-right: 80px;
}
.connection-input-container {
  width: 70%;
  margin-top: 30px;
  /* margin-left: 38px; */
  margin-right: 80px;
}
.text-label-main {
  display: block;
  text-align: left;
  font-size: 1.3vw;
  font-family: "Acumin Pro Condensed Bold";
  color: #000000;
  margin-bottom: 8px;
}

.text-label {
  display: block;
  text-align: left;
  font-size: 1vw;
  font-family: "Acumin Pro Condensed Bold";
  color: #000000;
  margin-bottom: 4px;
}
.text-label-other {
  display: block;
  text-align: left;
  font-size: 1vw;
  font-family: "Acumin Pro Condensed Bold";
  color: #000000;
  margin-bottom: 4px;
  margin-top: 5px;
}
.text-label-other::after {
  content: "*";
  color: #dc4d28; /* Red color */
  margin-left: 4px;
}

.text-label::after {
  content: "*";
  color: #dc4d28; /* Red color */
  margin-left: 4px;
}

.text-input {
  width: 115%;
  padding: 6px 15px;
  border: 1px solid #b1b1b1;
  border-radius: 4px;
  font-size: 14px;
  box-sizing: border-box;
}

.text-input:focus {
  outline: none;
  border: 2px solid #0071c9;
  /* box-shadow: 0 0 0 3px rgba(0, 113, 201, 0.2); */
}
.retrieve-password-button {
  width: 34%;
  margin-top: 20px;
  max-width: 280px;
  min-width: 130px;
  margin-left: 40%;
}
.terms-text {
  font-size: clamp(10px, 0.9vw, 19px);
  font-family: "Acumin Pro Condensed Light";
  color: #000; /* normal text */
  margin-bottom: 10px;
  white-space: nowrap;
}

.terms-link {
  color: #4272d1; /* blue */
  cursor: pointer;
}
.blue-button {
  width: 100%;
  padding: 10px 15px;
  background-color: #4272d1;
  color: white;
  border: none;
  border-radius: 45px;
  /* font-size: 14px; */
  font-size: clamp(9px, 0.9vw, 19px);
  font-family: "Acumin Pro Condensed Bold";
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  cursor: pointer;
  transition: background-color 0.3s ease;
  white-space: nowrap;
  margin-left: 60px;
}

.blue-button:hover {
  background-color: #2c4a8c;
}

.blue-button:active {
  background-color: #1a3a7c;
}

.button-icon {
  filter: brightness(0) invert(1);
}
@media (min-width: 2001px) {
  .color-blocks-container-online {
    margin-top: 110px;
  }
}

@media (min-width: 1600px) and (max-width: 1800px) {
  .dynamic-image {
    width: 75px;
    height: 70px;
  }
}
@media (min-width: 1800px) and (max-width: 2200px) {
  .dynamic-image {
    width: 85px;
    height: 90px;
  }
  .split-container {
    min-height: 1350px;
  }
}

@media (min-width: 2200px) {
  .dynamic-image {
    width: 95px;
    height: 100px;
  }
  .split-container {
    min-height: 1600px;
  }
}
@media (min-width: 767px) and (max-width: 1024px) {
  /* Adjust white section layout */
  .white-section {
    width: 40%; /* Increase width for better form visibility */
    padding: 0 20px; /* Add side padding */
    box-sizing: border-box;
  }
  .retrieve-password-button {
    margin-top: 0px;
    max-width: 0px;
    margin-left: 0px;
  }
  /* Logo container adjustments */
  .logo-container {
    margin-top: 60px; /* Reduce top margin */
    margin-bottom: 60px; /* Reduce bottom margin */
  }

  /* Color blocks adjustments */
  .color-blocks-container {
    gap: 15px; /* Reduce gap between buttons */
  }

  .color-block {
    width: 100%; /* Full width of white section */
    height: 50px; /* Slightly taller for touch targets */
  }

  /* Text content adjustments */
  .block-red-text-content,
  .block-black-text-content,
  .block-blue-text-content {
    padding-right: 10px; /* Reduce right padding */
    margin-top: 0; /* Remove negative margins */
  }

  /* Font size adjustments */
  .primary-red-text,
  .primary-black-text,
  .primary-blue-text {
    font-size: 14px; /* Slightly larger text */
  }

  /* Guest text adjustments */
  .guest-text {
    margin-top: 30px; /* Reduce top margin */
    font-size: 14px; /* Fixed size instead of vw */
    text-decoration: none; /* Remove underline by default */
  }

  .guest-text:hover {
    text-decoration: underline; /* Add underline on hover */
  }

  /* Make sure icon containers stay properly sized */
  .block-red-icon-container,
  .block-black-icon-container,
  .block-blue-icon-container {
    width: 50px; /* Slightly larger for touch */
  }
  .block-text-content {
    padding-left: 55px; /* Increased padding to account for larger icon */
    padding-right: 15px; /* Add right padding for balance */
    text-align: center;
    margin-left: 0; /* Reset any negative margins */
  }
  .block-text-content1 {
    padding-left: 55px; /* Increased padding to account for larger icon */
    padding-right: 15px; /* Add right padding for balance */
    text-align: center;
    margin-left: 0; /* Reset any negative margins */
  }

  .block-icon-container {
    z-index: 1; /* Ensure icon stays above other elements */
  }

  .primary-text,
  .secondary-text {
    white-space: nowrap; /* Prevent text wrapping */
    overflow: hidden;
    text-overflow: ellipsis; /* Add ellipsis if text is too long */
    width: 100%; /* Constrain to container */
    padding: 0 5px; /* Small side padding */
  }

  /* Specific adjustment for two-line text blocks */
  .block-gray .block-text-content {
    justify-content: center;
    padding-top: 2px;
    padding-bottom: 2px;
  }
}
/* Mobile-first responsive design */
@media (max-width: 767px) {
  /* Hide the white section completely on mobile */
  .white-section {
    display: none;
  }

  /* Reset split container for mobile */
  .split-container {
    display: block;
    width: 100%;
    min-height: 100vh;
    height: 1550px;
    overflow: visible;
    margin-top: -30px;
    padding: 0;
  }

  /* Make blue section take full screen with proper scrolling */
  .blue-section {
    width: 100%;
    height: auto;
    min-height: 100vh;
    overflow: visible;
    background-color: white;
    display: block;
    padding: 20px 0;
  }

  /* Adjust the form container for mobile */
  .white-center-container {
    width: 90%;
    max-width: 500px;
    height: auto;
    padding: 25px 20px;
    position: relative;
    top: 0;
    left: 0;
    transform: none;
    margin: 0 auto;
    border-radius: 12px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    /* overflow: visible; */
    overflow-y: auto;
  }

  /* Adjust form elements for mobile */
  .forgot-password-title {
    font-size: 22px;
    text-align: center;
    margin-bottom: 15px;
  }

  .register-text {
    font-size: 14px;
    margin-left: 0;
    text-align: center;
    line-height: 1.4;
  }

  .register-text p {
    margin: 8px 0;
  }

  .personal-input-container,
  .contact-input-container,
  .connection-input-container {
    width: 100%;
    margin: 25px 0 0 0;
  }

  .text-label-main {
    font-size: 18px;
    margin-bottom: 12px;
  }

  .text-label,
  .text-label-other {
    font-size: 14px;
    margin-bottom: 6px;
  }

  .text-input {
    width: 100%;
    padding: 12px 15px;
    margin-bottom: 15px;
    font-size: 16px; /* Better for mobile touch */
  }

  .newsletter-container {
    width: 100%;
    margin: 25px 0;
  }

  .newsletter-label {
    font-size: 14px;
  }

  .retrieve-password-button {
    width: 100%;
    margin: 25px 0 0 0;
  }

  .terms-text {
    font-size: 14px;
    text-align: center;
    white-space: normal;
    line-height: 1.4;
    margin-bottom: 15px;
  }

  .blue-button {
    margin-left: 0;
    font-size: 16px;
    padding: 14px;
    width: 100%;
  }

  /* Adjust the logo in the form */
  .register-image {
    justify-content: center;
    margin-bottom: 15px;
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }

  .dynamic-image {
    width: 70px;
    height: 65px;
  }

  /* Remove absolute positioning from desktop styles */
  .background-image-container {
    display: none;
  }

  .top-right-text {
    display: none;
  }

  /* Improve touch targets for mobile */
  .newsletter-checkbox {
    width: 22px;
    height: 22px;
  }
  .newsletter-label {
    font-size: 15px;
  }
  /* Fix for mobile scrolling */
  body,
  html {
    overflow-x: hidden;
    height: 100%;
  }
}

/* Additional improvements for very small devices */
@media (max-width: 380px) {
  .white-center-container {
    width: 95%;
    padding: 20px 15px;
  }
  .newsletter-label {
    font-size: 15px;
  }
  .register-title {
    font-size: 20px;
  }

  .text-label-main {
    font-size: 16px;
  }
}

/* Newsletter section styles - mobile adjustment */
@media (max-width: 767px) {
  .newsletter-container {
    margin-right: 0;
    width: 100%;
  }

  .newsletter-checkbox-container {
    align-items: flex-start;
  }

  .newsletter-label {
    font-size: 14px;
    line-height: 1.4;
    margin-bottom: 0;
  }
}

/* Newsletter section styles */
.newsletter-container {
  width: 70%;
  margin-top: 20px;
  margin-right: 130px;
}

.newsletter-checkbox-container {
  display: flex;
  align-items: center;
  gap: 10px;
}

.newsletter-checkbox {
  width: 18px;
  height: 18px;
  accent-color: #0071c9; /* Fills the checkbox when checked */
  cursor: pointer;
}

/* For better browser compatibility */
.newsletter-checkbox:checked {
  border: 2px solid #0071c9; /* Adds blue border */
}

.newsletter-label {
  font-size: clamp(12px, 1vw, 19px);
  font-family: "Acumin Pro Condensed Medium";
  color: #000000;
  cursor: pointer;
  margin-bottom: -7px;
  white-space: nowrap;
}

.block-icon-white-container-register-right {
  position: absolute;
  left: 25px;
  top: 25px;
  width: 45px;
  height: 45px;
  border-radius: 50%; /* round icon container */
  cursor: pointer;
}
