/*#webform-submission-contact-node-16-add-form .form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag label:after
 {
    color: #112337;
    bottom: 4px;
    position: absolute;
    top: auto;
}*/
/* 1. Reduce the width for Territory and Specialty */
#webform-submission-contact-node-16-add-form legend.captcha__title.js-form-required.form-required {
  display: none;
}
#webform-submission-contact-node-16-add-form .form-item-specialty {
width: 30%; /* reduced from ~48% */
display: inline-block;
vertical-align: top;
margin-right: 2%;
}

/* 2. Increase the box height for the top error message */
#webform-submission-contact-node-16-add-form .form-error-message {
min-height: 50px; /* taller box */
line-height: 3.0;
border-radius: 0; /* 4. remove border radius */
}

/* 3. Decrease the box height for inline field error messages */
#webform-submission-contact-node-16-add-form .error {
min-height: 24px; /* smaller height */
line-height: 0.3;
}

#webform-confirmation a {
text-decoration: none;
color: #0cafc9;
transition: color 0.3s ease;
}
#webform-confirmation a:hover {
color: #cdce00;
}
#webform-submission-contact-node-16-add-form .exclamation-icon {
position: relative;
display: inline-block;
width: 17px;/* Smaller size */
height: 17px;
vertical-align: middle;
border-radius: 50%; /* Makes it circular */
background-color: rgba(100, 0, 0, 0.2); /* Translucent red fill */
border: 1px solid #cc0000; /* Red border */
margin-right:5px;
}

#webform-submission-contact-node-16-add-form .exclamation-icon::before {
content: "!";
font-size: 0.6em; /* Smaller font size */
font-weight: bold;
line-height: 1;
display: flex;
align-items: center;
justify-content: center;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
width: 15px;
height: 15px;
margin: auto;
color: #cc0000;
}
#webform-submission-contact-node-16-add-form a {
text-decoration: none;
color: #0cafc9;
transition: color 0.3s ease;
}

#webform-submission-contact-node-16-add-form a:hover {
color: #cdce00;
}

#webform-submission-contact-node-16-add-form .error {
color: #0cafc9;
border: 1px solid #0cafc9;
margin-top: 8px;
text-align: center;
background-color: rgba(12, 177, 202, 0.1);
padding: 8px 12px;
font-size: 0.9rem;
display : block;
}
#webform-submission-contact-node-16-add-form .form-error-message{
color: #0cafc9;
border: 1px solid #0cafc9;
margin-top: 8px;
text-align: center;
background-color: rgba(12, 177, 202, 0.1);
padding: 8px 12px;
font-size: 0.9rem;
display : block;
}
#webform-submission-contact-node-16-add-form {
max-width: 942px;
margin: 3rem auto 0;
padding: 0 40px;
}
#webform-submission-contact-node-16-add-form input,
#webform-submission-contact-node-16-add-form textarea,
#webform-submission-contact-node-16-add-form select {
border-radius: 8px;
background-color : #fff;
}

#webform-submission-contact-node-16-add-form input[type="text"],
#webform-submission-contact-node-16-add-form input[type="email"],
#webform-submission-contact-node-16-add-form textarea,
#webform-submission-contact-node-16-add-form select {
background-color : #fff;
border-radius: 8px;
border: 1px solid #000;
padding: 14px 15px;
/* Added for text consistency */
font-family: Arial, sans-serif;
font-size: inherit;
line-height: inherit;
color: inherit;
font-weight: inherit;
}

#webform-submission-contact-node-16-add-form textarea {
min-height: 12rem;
}

#webform-submission-contact-node-16-add-form label,
#webform-submission-contact-node-16-add-form .form-required {
font-weight: normal !important;
}

#webform-submission-contact-node-16-add-form .form-required::after {
color: #000 !important;
}

/* Phone Number and Territory side-by-side */
#webform-submission-contact-node-16-add-form .form-item-phone-number,
#webform-submission-contact-node-16-add-form .form-item-territory {
width: 48%;
display: inline-block;
vertical-align: top;
margin-right: 2%;
}

#webform-submission-contact-node-16-add-form .form-item-territory {
margin-right: 0;
}

/* Override to make phone number full width */
#webform-submission-contact-node-16-add-form .form-item-phone-number {
width: 100%;
display: block;
margin-right: 0;
}

/* Specialty and If Others side-by-side with space */
#webform-submission-contact-node-16-add-form .form-item-specialty {
width: 30%;              /* Keep Specialty at 30% */
display: inline-block;
vertical-align: top;
margin-right: 20%;      /* Increased margin for more space between them */
box-sizing: border-box;
}

#webform-submission-contact-node-16-add-form .form-item-specialty .error {
display: block;
width: 100%;              /* error message matches Specialty width */
box-sizing: border-box;
}

#webform-submission-contact-node-16-add-form .form-item-if-other-please-specify {
width: 48%;               /* Keep at 48% */
display: inline-block;
vertical-align: top;
margin-right: 0;
box-sizing: border-box;
margin-top: 7px;
}

#webform-submission-contact-node-16-add-form .form-item-specialty select {
width: 100%;
}

/* Consent checkbox layout container */
#webform-submission-contact-node-16-add-form 
.form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag {
display: flex;
flex-direction: row;
align-items: flex-start; /* aligns checkbox with the top of the label text */
position: relative;
padding-bottom: 40px; /* preserve space for the error message */
gap: 12px; /* spacing between checkbox and label */
flex-wrap: wrap; /* allow the label to wrap on small screens */
margin-top: 30px; /* As you set to 30px */
}
/* Hide the default checkbox input */
#webform-submission-contact-node-16-add-form .form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag input[type="checkbox"] {
position: absolute;
opacity: 0;
cursor: pointer;
height: 0;
width: 0;
}
/* Style the label with padding for the custom checkbox box */
#webform-submission-contact-node-16-add-form .form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag label {
position: relative;
cursor: pointer;
padding-left: 35px; /* Space for the 20px box + 10px gap + 5px for check alignment */
display: inline-block;
line-height: 1.5;
margin: 0;
flex: 1 1 auto; /* Allow label to take remaining width in flex container */
}
/* Custom checkbox box (red border) - as you adjusted to top: 0.9em */
#webform-submission-contact-node-16-add-form .form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag label::before {
content: "";
position: absolute;
left: 0;
top: 0.9em; /* As you changed */
width: 22px;
height: 22px;
border: 1px solid red;
background: white;
border-radius: 2px; /* Optional: slight rounding for modern look */
}
/* Blue checkmark when checked - adjusted top to match the box position so it's inside */
#webform-submission-contact-node-16-add-form .form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag input[type="checkbox"]:checked + label::after {
content: "✓";
position: absolute;
left: -4px; /* Position inside the box */
top: 1.1em; /* Adjusted to match the box top so the checkmark is inside the 20px box */
color: #0000FF rgb(0, 0, 255);
font-size: 16px;
font-weight: bold;
}
/* Blue shadow on the box when checked */
#webform-submission-contact-node-16-add-form .form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag input[type="checkbox"]:checked + label::before {
box-shadow: 0 0 5px blue;
}
/* Ensure error message displays below, matching the width of checkbox + label */
#webform-submission-contact-node-16-add-form .form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag span.error {
bottom: 0;
left: 0;
right: 0;
margin: 0;
display: flex;
width: 100%;
justify-content: center;
align-items: center;
align-self: stretch;
box-sizing: border-box;
color: #0cafc9;
border: 1px solid #0cafc9;
background-color: rgba(12, 177, 202, 0.1);
border-radius: 0px;
font-size: 0.8rem;
text-align: center;
}
}
/* Row wrapper for checkbox + label */
#webform-submission-contact-node-16-add-form 
.form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag .checkbox-label-wrapper {
display: flex;
align-items: flex-start; /* align checkbox with top of text */
}

/* Checkbox styling */
#webform-submission-contact-node-16-add-form 
.form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag input[type="checkbox"] {
margin-right: 12px; /* gap between box and text */
margin-top: 4px;
cursor: pointer;
position:relative;
top:66px;
left:3px;
}

/* Label styling */
#webform-submission-contact-node-16-add-form 
.form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag label {
padding-left: 40px;
margin: 0;
flex: 1 1 auto;
line-height: 1.5;
cursor: pointer; /* take remaining width */
}

/* Error message positioned below, matching width of checkbox+label */
#webform-submission-contact-node-16-add-form 
.form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag .error {
margin-top: 8px;
color: #0cafc9;
border: 1px solid #0cafc9;
background-color: rgba(12, 177, 202, 0.1);
padding: 4px 10px;
border-radius: 4px;
font-size: 0.8rem;
text-align: center;
align-self: stretch; /* ensures it spans same width as checkbox+label row */
}
#webform-submission-contact-node-16-add-form .form-item-terms-confirm
{
margin-top: -10px;
  margin-bottom: -60px;
}
#webform-submission-contact-node-16-add-form .form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag label::before
{
background-color: #fff;
margin-top: 5px;
margin-left: 4px;
border-radius: 2px;
border-color: #000000;
}
/* Mobile-specific styles for iPhone and Android (screens up to 768px wide) */
@media (max-width: 639px) {
#webform-submission-contact-node-16-add-form {
  max-width: 100%; /* Allow form to take full width on mobile */
  padding: 0 20px; /* Reduce padding for better fit on small screens */
  margin: 1.5rem auto 0; /* Reduce top margin for mobile */
}
/* Stack side-by-side fields vertically on mobile */
#webform-submission-contact-node-16-add-form .form-item-phone-number,
#webform-submission-contact-node-16-add-form .form-item-territory,
#webform-submission-contact-node-16-add-form .form-item-specialty,
#webform-submission-contact-node-16-add-form .form-item-if-other-please-specify {
  width: 100%; /* Full width for each field */
  display: block; /* Change to block for stacking */
  margin-right: 0; /* Remove right margin */
  margin-bottom: 1rem; /* Add bottom margin for spacing between stacked fields */
}
/* Adjust input padding for mobile touch targets and prevent text overlap */
#webform-submission-contact-node-16-add-form input[type="text"],
#webform-submission-contact-node-16-add-form input[type="email"],
#webform-submission-contact-node-16-add-form textarea,
#webform-submission-contact-node-16-add-form select {
  padding: 14px 16px; /* Increased padding for better space */
  word-wrap: break-word; /* Force text to wrap instead of overlapping */
  overflow-wrap: break-word; /* Modern equivalent for better support */
}
/* Ensure error messages wrap properly in mobile */
#webform-submission-contact-node-16-add-form .error {
  word-wrap: break-word;
  overflow-wrap: break-word;
}
/* Ensure checkbox label wraps nicely on small screens */
#webform-submission-contact-node-16-add-form 
.form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag {
  gap: 8px; /* Reduce gap for tighter layout */
}
#webform-submission-contact-node-16-add-form 
.form-item-by-submitting-this-form-you-consent-to-the-processing-and-storag label {
  padding-left: -5; /* Remove left padding on mobile */
}
}
form.webform-submission-contact-rep-add-form .captcha__title {
display: none;
}