@font-face {
    font-family: "Scrubber-Regular";
    src: url("../font/UPS.woff2") format("woff2");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}


@font-face {
    font-family: "Scrubber-Bold";
    src: url("../font/UPS.woff2") format("woff2");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Poppins-Medium";
    src: url("/font/Poppins-Medium.ttf") format("truetype");
    font-style: normal;
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: "Poppins-Medium", sans-serif;
    color: #333; /* Modern neutral text color */
}

.d-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between; /* Added for better spacing between items */
    gap: 1rem; /* Added gap for cleaner spacing */
    flex: 1 1 auto;
    padding: 10px; /* Padding for a consistent look */
    border: 1px solid #ffffff; /* Subtle border for distinction */
    border-radius: 8px; /* Rounded corners for a modern touch */
    background-color: #ffffff; /* Light background for visibility */
    box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
}

.d-col {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.8rem; /* Added gap for spacing between column items */
    padding: 10px; /* Consistent padding */
    background-color: #ffffff; /* Clean white background */
    border-radius: 8px; /* Rounded corners for aesthetic appeal */
    border: 2px solid #e0e0e0; /* Light border for structure */
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1); /* Subtle shadow for elegance */
}
/* .d-col {
    display: flex;
    flex-direction: column; /* Arrange items vertically */
/*    align-items: center; /* Horizontally center items */
 /*   justify-content: flex-start; /* Align items at the start of the container */
 /*   gap: 15px; /* Add space between items */
 /*   flex-wrap: wrap; /* Allow items to wrap if there's not enough space */
/*}*/
  

.align-stretch {
    align-items: stretch;
    width: 100%; /* Ensures full-width alignment for children */
    margin: 0; /* Reset margins for uniformity */
    padding: 0; /* Reset padding for clean stretch */
}



body {
    font-family: "Scrubber-Regular", sans-serif;
    background-color: hsl(206, 26%, 95%); /* Softer and more modern background color */
    background-image: url("../icon/magnifying-glass-solid.svg");
    background-position: calc(50% + 35px) 0vh; /* Centered for better alignment */
    background-attachment: fixed; /* Keeps the image fixed for a modern scrolling effect */
    background-size: 430px; /* Adjusted size for better visual balance */
    background-repeat: no-repeat;
    background-clip: content-box;
    height: 100vh; /* Full viewport height */
    margin: 0; /* Removes default body margin for a cleaner layout */
  /*  display: flex; /* Use flex for consistent centering and responsiveness */
   /* justify-content: center; /* Centers content horizontally */
   /* align-items: center; /* Centers content vertically */
    box-sizing: border-box; /* Ensures consistent box model sizing */
    color: #333; /* Neutral text color for readability */
    flex: 1 1 auto;

}




header {
    padding-bottom: 10px;
    max-width: 1140px;
    margin: 0 auto;
    border-bottom: 2px solid #ffffff;
    background: linear-gradient(to bottom, #ffffff, #ffffff);
    border-radius: 8px;
    box-shadow: 0px 4px 6px #ffffff;
}

h1, h2{

    font-family: inherit;

    text-align: center;
    margin: 0 auto;

}

h1 {
    font-size: 36px;
    font-weight: 700;
    color: #2c3e50;
    margin-top: 0;
    margin-bottom: 5px;
    margin-left: 121px;
}

h2 {
    font-family: "Scrubber-Bold";
    font-size: 16px; /* Increased font size for better visibility */
    font-weight: 600;
    background: linear-gradient(to right, #1e90ff, #00bfff); /* Vibrant gradient for attention */
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
    margin: 5px auto;
    letter-spacing: 1px; /* Slight spacing for a refined look */
}


.title {
    background: linear-gradient(to right, #ff5733, #c70039); /* Warm and bold gradient */
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
    font-size: 24px; /* Enhanced size for prominence */
    text-transform: uppercase; /* Uniform and striking appearance */
}


.features {
    display: flex;
    align-items: center;
    justify-content: center; /* Center alignment for uniformity */
    gap: 1rem; /* Added spacing between feature items */
}


#f1 {
    font-weight: bold;
    line-height: 1.5;
    max-height: none; /* Removed restriction for better text flow */
    position: relative;
    color: #2c3e50; /* Consistent deep color for readability */
}


h2#f1 span {
    font-family: "Scrubber-Regular";
    color: #6c757d; /* Subtle text color for emphasis */
    font-size: 28px; /* Adjusted size for proportionality */
    font-weight: bold;
    line-height: 1.5;
    background: linear-gradient(to right, #1e90ff, #00bfff); /* Matching gradient for consistency */
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
    margin: 2px auto;
    justify-self: flex-start;
    position: relative;
}

header h5 {
    color: #507ead;
    font-family: "Scrubber-Regular", sans-serif;
    font-size: 0.5em;
    font-weight: 400;
    text-align: center;
    margin: -132px;
    font-size: 30px;
    font-weight: bold;

}



#loader {
    display: none;
    font-family: 'Lucida Sans', Geneva, Verdana, sans-serif;
    color: #555; /* Neutral gray for better text readability */
    padding: 15px 40px; /* More balanced padding for a cleaner look */
    border: 1px solid #ccc; /* Solid border for simplicity */
    border-radius: 8px; /* Rounded corners for a modern touch */
    background-color: #fdfdfd; /* Light background for a clean feel */
    min-width: 330px;
    width: 90vw;
    max-width: 860px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2); /* Softer, natural shadow */
    margin: 40px auto;
    position: relative;
    overflow: hidden;
    height: auto;
    opacity: 1;
    transition: height 0.3s ease-out, opacity 0.5s ease-out; /* Smoother transitions */
}

#loader h3 {
    font-size: 16px; /* Slightly larger for emphasis */
    font-weight: bold;
    color: #333; /* Deep gray for contrast */
    margin-bottom: 10px; /* Space below heading */
    text-align: center; /* Centered for symmetry */
}


#loader .outer {
    font-size: 16px; /* Balanced font size */
    font-weight: 400;
    padding-left: 10px; /* Improved spacing */
    list-style-position: inside;
    margin-top: 10px; /* More spacing above */
}

.outer > li {
    margin: 8px 0; /* Better spacing between list items */
    color: #2c3e50; /* Deep color for better focus */
}

.outer ul {
    list-style-type: circle; /* Circular bullets for variety */
}
.close {
    color: #e55a5a; /* Vibrant red for the close button */
    text-transform: uppercase;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    font-weight: bold;
    padding: 8px 12px; /* Adjusted padding for a compact design */
    background-color: #f8d7da; /* Light red background for better visibility */
    border-radius: 5px; /* Rounded button for a smoother appearance */
    position: absolute;
    top: 10px;
    right: 10px;
    transition: color 0.2s ease-in, background-color 0.2s ease-in; /* Smooth hover effects */
}

.close:hover {
    color: #ff0000; /* Intense red for hover state */
    background-color: #f5c6cb; /* Softer hover background */
    cursor: pointer;
}

#main {
    position: relative;
    margin-top: -1823px;
    padding-top: 20px;
    margin-bottom: 221px;
}

.input-form {
    background-color: rgb(209, 209, 209);
    max-width: 1000px;
    margin: 17px auto;
    padding: 1px;
    border-radius: 68px;
    box-shadow: 0 0px 0px #ffffff;
    position: relative;
    margin-top: 69px;
}

.nav-wrap {
    width: 100%; /* Simplified min/max width */
    max-width: 1000px;
    position: absolute;
    top: -26px;
    left: 0; /* Ensures consistent alignment */
}

ul.navbar {
    font-family: 'Lucida Sans', Geneva, Verdana, sans-serif;
    font-size: 14px;
    font-weight: bold;
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex
;
    align-items: center;
    justify-content: space-evenly;
    background-color: #ffffff;
    border-radius: 42px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    align-content: space-around;
    flex-direction: column;
    flex-wrap: nowrap;
    margin-top: -92px;
    margin-left: 360px;
    margin-right: 360px;
}
ul.navbar1 {
    font-family: 'Lucida Sans', Geneva, Verdana, sans-serif;
    font-size: 14px;
    font-weight: bold;
    list-style-type: none;
    padding: 0;
    margin: 0;
    display: flex
;
    align-items: center;
    justify-content: space-evenly;
    background-color: #ffffff;
    border-radius: 42px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    align-content: space-around;
    flex-direction: column;
    flex-wrap: nowrap;
    margin-top: 2px;
    margin-left: 360px;
    margin-right: 360px;
}

ul.navbar li {
    text-align: center;
    flex: 1; /* Equal spacing for all items */
    padding: 8px 15px; /* Adjusted padding for better click areas */
    transition: background-color 0.3s ease;
}

ul.navbar li:hover {
    background-color: rgba(233, 90, 90, 0.1); /* Subtle hover effect */
}

ul.navbar .navigator {
    font-family: "Scrubber-Regular", sans-serif;
    position: absolute;
    right: 0;
    top: -20px;
    text-decoration: none;
    color: #333; /* Neutral color for better readability */
}

ul.navbar .navigator-icon {
    font-size: 18px;
    padding-left: 5px; /* Increased padding for spacing */
}

a.nav-link {
    text-decoration: none;
    padding: 6px 12px; /* Comfortable padding for better clickability */
    width: 100%;
    display: inline-block;
    color: #333; /* Neutral text color */
    transition: color 0.2s ease, border-top 0.2s ease;
}

a.nav-link:hover {
    color: #e95a5a; /* Highlighted text on hover */
}

li:first-of-type .nav-link {
    border-top: 2px solid rgb(209, 209, 209);
    cursor: default;
}

li:last-of-type a.nav-link {
    border-top: 2px solid transparent;
    cursor: pointer;
}

li:last-of-type a.nav-link:hover {
    border-top: 2px dashed rgb(209, 209, 209);
}

#hr {
    border-bottom: 2px solid rgb(233, 90, 90); /* Vibrant line for emphasis */
    width: 100%;
    position: relative;
    top: 56px;
    z-index: -1;
}

form {
    /* Consider re-enabling gradient if needed for better visuals */
    /* background-image: linear-gradient(to right, #eaf2f8, #f0ecec, rgb(241, 225, 225)); */
    padding: 20px 0;
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.scrub-input form {
    box-shadow: 0 0 0px #ffffff;
}

input::placeholder {
    color: rgba(148, 148, 148, 0.35); /* Reduced opacity for subtler placeholder text */
}

input::-webkit-inner-spin-button,
input::-webkit-outer-spin-button {
    appearance: none; /* Hides the spinner on number inputs */
    margin: 0;
}

label#num_wrap {
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 500;
    letter-spacing: 1px;
    padding: 20px 20px 8px 20px; /* Adjusted for better spacing */
    background-color: white;
    cursor: text;
    border: none;
    outline: none;
    min-width: 300px;
    max-width: 320px;
    max-height: 111px;
    border-radius: 4px; /* Added rounded corners for a modern look */
    transition: box-shadow 0.3s ease; /* Smooth transition for focus state */
}

label#num_wrap:focus-within {
    box-shadow: 0 0 4px 2px #849bb4; /* Enhanced shadow for focus feedback */
}

.alert {
    color: rgb(233, 90, 90); /* Retains strong alert emphasis */
    font-weight: bold; /* Added emphasis for alert text */
}

.safe {
    color: #01A826; /* Vibrant green for a "safe" indicator */
    font-weight: bold; /* Matches alert for consistency */
}

.category {
    color: rgb(138, 138, 138); /* Neutral category color */
    margin-bottom: 2px;
    font-size: 14px; /* Standardized text size */
}

label p {
    color: rgb(233, 90, 90); /* Matches alert color scheme */
    font-family: "Scrubber-Regular";
    font-size: 12px;
    line-height: 1.2; /* Adjusted line height for better readability */
    font-weight: bold;
    margin: 0;
}

.hidden {
    visibility: hidden;
}

.visible {
    visibility: visible;
}

.invalid {
    box-shadow: 0 0 4px inset rgb(255, 0, 0) !important;
    border: none !important;
}

input[type="text"] {
    color: #587797;
    font-family: inherit;
    font-size: 26px;
    letter-spacing: 0.5px;
    line-height: 26px;
    caret-color: rgb(253, 48, 48);
    padding: 0;
    border: none;
    outline: none;
    max-width: 280px;
    -moz-appearance: textfield; /* Removes spinner on number fields in Firefox */
}

input[type="text"]:focus {
    border: none;
    outline: none;
}

.disabled-btn {
    filter: grayscale(0.6) !important; /* Makes disabled buttons visually distinct */
    cursor: not-allowed !important;
    z-index: 10 !important;
}

#submit {
    color: white;
    font-size: 30px;
    cursor: pointer;
    background-color: #d1d1d1;
    border: none;
    min-width: 50px;
    width: 80px;
    min-height: 71px;
    max-height: 71px;
    transition: filter 0.3s;
}

#submit:hover {
    filter: grayscale(0.5) !important;
}

.report-container {
    margin: 10px auto 0 auto !important;
}

.report-toggle {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}

.report-toggle button {
    color: #dc0007;
    font-family: "Scrubber-Bold", sans-serif;
    font-size: 18px;
    font-weight: 600;
    background-color: transparent;
    box-shadow: 0 0 5px rgba(206, 90, 94, 0.78);
    outline: none;
    border: none;
    padding: 8px 20px 8px 40px;
    max-width: 140px;
    position: relative;
    cursor: pointer;
    transition: background-color 0.3s, box-shadow 0.3s;
}

.report-toggle button::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%); /* Centers the arrow vertically */
    width: 20px;
    height: 12px; /* Matches background-size height */
    background-image: url(/icon/drop-down-arrow.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 16px 12px;
}
form.report {
    padding: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    row-gap: 10px;
    column-gap: 10px;
    flex-wrap: wrap; /* Ensures responsiveness */
}

form.report > * {
    flex: 1 1 auto; /* Distributes space evenly among children */
}

/* Empty block can be removed unless additional styles are added */
form.report input[type="text"] {
    /* Add any specific styles here if needed */
}
/* Input and Select Styling */
form.report input[type="text"], form.report select {
    font-family: "Poppins-Medium", sans-serif;
    font-size: 16px;
    line-height: 18px;
    background-color: rgb(255, 255, 255);
    padding: 5px 12px;
    width: 200px;
    min-height: 40px;
    border: 1px solid #00bfff;
    box-shadow: 0px 1px 2px #ffffff inset;
    transition: all 0.15s ease-in-out;
    margin-left: 17px;
}

/* Select Dropdown Styling */
form.report select {
    -webkit-appearance: none;
    appearance: none;
    user-select: none;
    background-image: url(/icon/drop-down-arrow.svg);
    background-repeat: no-repeat;
    background-position: right 18px center;
    background-size: 16px 12px;
    background-color: #F3F6F8;
    position: relative;
}

/* Focus State for Input and Select */
form.report input[type="text"]:focus, 
form.report select:focus {
    border: 1px solid #849bb4db !important;
    outline: none;
    box-shadow: 0 0 3px 0 #849bb4c8 inset !important;
}

/* Submit Button Styling */
form.report .submit-label {
    user-select: none;
    padding: 5px 30px;
    border: 1px solid transparent;
    background: #fa2121c9;
    min-width: 130px;
    width: 20%;
    max-width: 130px;
    height: 40px;
    margin-left: auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    position: relative;
    cursor: pointer;
    z-index: 1;
    transition: all 0.15s ease-in-out;
}

/* Gradient Animations for Submit Button */
form.report .submit-label::before,
form.report .submit-label::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: all 0.15s ease-in-out;
    z-index: -1;
}

form.report .submit-label::before {
    background-image: linear-gradient(to right, #487aabf3, #487aabc7, #487aaba2);
    opacity: 1;
}

form.report .submit-label::after {
    background-image: linear-gradient(to left, #487aabf3, #487aabc7, #487aaba2);
    opacity: 0;
}

/* Hover Effects for Submit Button */
form.report .submit-label:hover::before {
    opacity: 0;
}

form.report .submit-label:hover::after {
    opacity: 1;
}

/* Submit Button Icon Styling */
form.report .submit-label .report-icon,
form.report .submit-label .loader-icon {
    padding: 5px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    align-self: center;
    transition: all 0.5s ease-in-out;
}

form.report .submit-label .report-icon {
    width: 35px;
    height: 35px;
    left: 0;
}

form.report .submit-label .loader-icon {
    opacity: 0;
    width: 30px;
    height: 30px;
    right: 0;
}

/* Submit Button Text */
form.report input[type="submit"] {
    color: whitesmoke;
    font-family: "Poppins-Medium", sans-serif;
    font-size: 15px;
    line-height: 18px;
    font-weight: bold;
    border: none;
    background-color: transparent;
    cursor: pointer;
}
/* General Table Styling */
table {
    font-family: "Scrubber-Regular";
    border: 1px solid transparent;
    border-radius: 0.8em 0.8em 0.4em 0.4em;
    border-collapse: collapse;
    background-color: rgba(245, 245, 245, 0.3);
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
    margin: auto;
    margin-bottom: 20px;
    overflow: hidden;
}

/* Header Styling */
th {
    text-align: left;
    padding: 15px 25px;
}

/* Data Cell Styling */
td {
    text-align: left;
    padding: 15px 25px;
    min-width: fit-content;
}

/* Header Row Styling */
tr.header {
    color: white;
    font-size: 1.4em;
    letter-spacing: 1px;
    background-image: linear-gradient(to right, #436280, #849bb4, #506b88, #436280); /* Gradient for header */
}

/* Row Styling */
tr.row-style {
    color: #587797;
    font-family: Helvetica, sans-serif;
    font-size: 26px;
    letter-spacing: 1px;
}

/* Last Row Styling */
tr.row-style:last-of-type {
    /* border-bottom: 4px solid rgb(233, 95, 95); */
}

/* Padding Class */
.padding {
    padding: 0.5em;
}

/* Warning Row Styling */
.warn {
    background-color: rgba(223, 130, 130, 0.200);
}

/* Border Styling */
.border {
    border: 4px solid blue;
}

/* Special Background for IE Class */
.ie {
    background-color: rgba(255, 255, 31, 0.4);
}

/* Table Specific Styling for #info */
table#info {
    margin: auto;
}

table#info td {
    color: rgb(124, 124, 124);
    font-size: larger;
    font-weight: 600;
    text-align: center;
    padding: 30px;
}

/* Last Row Styling for Table #info */
table#info > tbody tr:last-of-type {
    border-bottom: 4px solid #436280;
}

/* Classes for Special Information Blocks */
.tcpa-status, .cx-info {
    font-family: "Scrubber-Bold";
    min-width: 380px;
    max-width: 1000px;
    margin: 10px auto;
}

/* Heading Styling */
.heading {
    font-family: "Scrubber-Bold";
    font-size: 22px;
    text-align: center;
    padding: 2px 0;
    border-width: 1px;
    border-style: dashed;
    margin: 3px auto;
}

/* General Styling for TCPA Status Heading */
.tcpa-status .heading {
    background-image: linear-gradient(to right, rgba(216, 216, 216, 0.65), rgba(224, 223, 223, 0.5), rgb(216, 216, 216, 0.65));
    color: rgb(85, 85, 85);
    border-color: grey;
    border-radius: 20px;
}

/* General TCPA Styling */
.tcpa {
    color: rgb(100, 100, 100);
    font-size: 20px;
    padding: 5px;
    align-items: flex-start;
    align-items: stretch;
    border-radius: 15px;
}

/* TCPA Row Styling */
.tcpa-row {
    height: 32px;
    border-bottom: 1px dotted #292727;
    justify-content: space-between;
}

/* Label Styling */
.tcpa-label {
    font-weight: bold;
}

/* CX Info Heading Styling */
.cx-info .heading {
    color: #425b74;
    border-color: #436280;
    background-image: linear-gradient(to right, #ffffff, rgba(149, 163, 177, 0.2), #ffffff);    border-radius: 50px;
}

/* CX Cards Styling */
.cx-cards {
    color: #587797;
    text-align: center;
    font-size: 20px;
    min-width: 100%;
    max-width: 100%;
    min-height: 100px;
    margin: auto;
    position: relative;
    justify-content: center;
    align-items: stretch;
}

/* CX Prompt Styling */
.cx-prompt {
    line-height: 20px;
    margin: 20px auto;
    margin-bottom: 150px;
    position: relative;
    column-gap: 12px;
}

/* Not Found & IE Classes Styling */
#cx-not-found, #cx-ie {
    font-family: "Scrubber-Regular";
    font-size: 20px;
    justify-content: center;
    align-items: center;
    column-gap: 5px;
}

/* Loader Styling */
.cx-loader {
    padding-top: 15px;
    column-gap: 12px;
    justify-content: center;
    align-items: center;
}


@keyframes slide {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(2);
    }
    100% {
        transform: scale(1);
    }
}

/* Vendor-specific slide keyframes */
@-moz-keyframes slide {
    0% { transform: scale(1); }
    50% { transform: scale(2); }
    100% { transform: scale(1); }
}

@-webkit-keyframes slide {
    0% { transform: scale(1); }
    50% { transform: scale(2); }
    100% { transform: scale(1); }
}

@-o-keyframes slide {
    0% { transform: scale(1); }
    50% { transform: scale(2); }
    100% { transform: scale(1); }
}

.dot {
    border-radius: 50%;
    width: 10px;
    height: 10px;
    display: inline-block;
    animation: slide 0.8s infinite ease-in-out;
}

.dot:nth-child(1) {
    animation-delay: 0.1s;
    background: #f44336; /* Updated red */
}

.dot:nth-child(2) {
    animation-delay: 0.2s;
    background: #3498db; /* Updated blue */
}

.dot:nth-child(3) {
    animation-delay: 0.3s;
    background: #e74c3c; /* Updated red-orange */
}

.dot:nth-child(4) {
    animation-delay: 0.4s;
    background: #2c3e50; /* Updated dark blue */
}

.dot:nth-child(5) {
    animation-delay: 0.5s;
    background: #f39c12; /* Updated yellow */
}

@keyframes slide {
    0% {
        transform: scale(1);
        opacity: 1;
    }
    50% {
        transform: scale(1.5);
        opacity: 0.7;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}
.cx-card {
    width: 100%;
    min-height: 120px;
    margin: 15px auto;
    background: linear-gradient(to top, rgba(255, 255, 255, 0.15), rgba(235, 235, 235, 0.45));
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.15);
    border-radius: 8px;
    transition: all 0.4s ease;
    padding: 15px;
}

.cx-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}

.cx-basic {
    text-transform: capitalize;
    color: #ffffff;
    background-color: #35502c3d;
    display: flex;
    justify-content: space-between;
    padding: 10px;
    border-radius: 5px;
}

.cx-name, .cx-age {
    padding: 0 10px;
    align-self: flex-start;
}

.cx-name {
    min-width: 45%;
    max-width: 85%;
    text-align: left;
    display: flex;
    align-items: center;
}

.cx-age {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.cx-basic .label {
    font-family: 'Roboto', sans-serif;
    font-size: 14px;
    color: #000000;
    padding-top: 6px;
}

.cx-basic .value {
    font-size: 28px;
    font-weight: bold;
    line-height: 28px;
    color: #f39c12;
    margin: 0;
}

.cx-name .label {
    text-transform: uppercase;
}

.cx-age .label {
    text-align: right;
}

.cx-addresses {
    text-transform: uppercase;
    width: 100%;
    display: flex;
    flex-direction: column;
    padding-top: 10px;
}

.cx-address {
    color: #34495e;
    min-width: 100%;
    min-height: 50px;
    margin-bottom: 15px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    border-bottom: 1px dashed #bdc3c7;
    padding: 10px;
}

.cx-address:last-of-type {
    border-bottom: none;
}

.cx-address-col {
    min-height: 45px;
    align-items: flex-start;
}

.home, .city, .state, .zip {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-size: 14px;
    color: #2c3e50;
}

.home {
    padding: 8px 12px 0 15px;
    min-width: 25%;
    max-width: 35%;
    background-color: #f7f7f7; /* Soft background color */
    border-radius: 6px; /* Rounded corners */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Light shadow */
    transition: all 0.3s ease-in-out;
}

.home:hover {
    transform: scale(1.02); /* Slight zoom on hover */
}

/* City, state, and zip fields */
.city, .state, .zip {
    padding: 5px 10px;
    font-size: 14px;
    border: 1px solid #dcdcdc;
    border-radius: 5px;
    transition: all 0.3s ease;
}

.city {
    min-width: 25%;
    max-width: 25%;
}

.state {
    min-width: 20%;
    max-width: 20%;
}

.zip {
    min-width: 15%;
    max-width: 15%;
}

.city:hover, .state:hover, .zip:hover {
    border-color: #007bff;
}

/* Label and value styling for addresses */
.cx-addresses .label {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 13px;
    color: #555;
    text-transform: uppercase;
    padding: 2px 0;
}

.cx-addresses .value {
    font-size: 18px;
    font-weight: 600;
    color: #333;
    line-height: 25px;
    padding-bottom: 4px;
}

.deliverable {
    font-size: 22px;
    font-weight: bold;
    color: #28a745;
    text-align: right;
    margin-right: 5px;
    padding: 10px;
    min-height: 45px;
    background-color: #e7f5e7; /* Light green background */
    border-radius: 5px;
}
/* Miscellaneous container styling */
.cx-misc {
    color: #666;
    padding: 15px;
    background-color: #fafafa;
    border: 1px solid #ddd;
    border-radius: 8px;
    min-width: 100%;
    margin-top: 10px;
}

.cx-misc-col {
    padding: 10px;
    min-height: 40px;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
}

.cx-misc-col-rel {
    padding: 10px;
    min-height: 40px;
    position: relative;
    width: 100%;
}

.cx-emails, .cx-relatives {
    min-width: 50%;
    max-width: 75%;
}

/* Styling for miscellaneous values */
.cx-misc-col .value {
    font-size: 18px;
    text-transform: capitalize;
    line-height: 18px;
    padding-bottom: 2px;
    margin: 0;
}

.cx-misc-col .label {
    font-size: 12px;
    text-transform: uppercase;
    line-height: 14px;
    margin: 0;
}

/* Relation styling */
.relation {
    font-family: 'Lucida Sans', sans-serif;
    font-size: 16px;
    text-transform: capitalize;
    overflow: hidden;
    cursor: default;
}

/* Value container flexbox design */
.value-container {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    width: 100%;
}

.value-container .value {
    font-size: 16px;
    font-family: 'Helvetica', sans-serif;
    text-align: left;
    text-transform: capitalize;
    line-height: 16px;
    padding-bottom: 2px;
}

/* Styling for email and relative fields */
.cx-emails .value, .cx-relatives .value {
    font-family: 'Lucida Sans', sans-serif;
    text-transform: lowercase;
    padding: 0;
}

/* Premium tag styling */
.premium {
    background-color: #e83e8c; /* Pink background */
    color: white;
    font-weight: bold;
    padding: 5px 10px;
    border-radius: 5px;
}

/* Purchase order tag */
.po {
    color: #a33c7d;
}

/* Deceased person styling */
.deceased {
    filter: grayscale(80%) opacity(80%);
}

/* Date of birth styling */
.cx-dob {
    min-width: 70px;
    max-width: 70px;
    font-size: 14px;
    text-align: center;
}

/* Footer design */
footer {
    position: static;
    padding-top: 20px;
    background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0.25), rgba(235, 235, 235, 0.5), rgba(224, 223, 223, 0.75));
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    margin-top: auto;
    align-self: flex-end;
}

.footer {
    max-width: 1000px;
    margin: 0 auto;
    padding: 20px;
    background-color: #fff;
    border-radius: 8px;
}

.footer-tagline {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.footer-logo {
    font-family: 'Scrubber-Regular', sans-serif;
    font-size: 1.5em;
    font-weight: 600;
    color: #007bff;
}

.footer-logo:hover {
    cursor: pointer;
    text-decoration: underline;
}

.footer-tagline h2 {
    margin: 15px 0;
}

.footer-tagline button {
    background-color: #007bff;
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    font-size: 16px;
    cursor: pointer;
    transition: background-color 0.3s;
}

.footer-tagline button:hover {
    background-color: #0056b3;
}
/* General Button Styles */
.contact-us {
    font-size: 18px;
    color: #ffffff;
    background-color: #4A6C76; /* Softer blue-gray */
    padding: 14px 22px;
    border: none;
    border-radius: 8px; /* Smoother corners */
    outline: none;
    transition: all 0.3s ease;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.2); /* Subtle shadow for depth */
    text-align: center;
    font-weight: 500;
    letter-spacing: 1px;
}

.contact-us:hover {
    background-color: #3A5865; /* Darker hover shade */
    cursor: pointer;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.3); /* Stronger shadow on hover */
}

/* Footer Links Styling */
.footer-links {
    margin: 30px auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
}

.footer-links a {
    color: #4A6C76;
    font-size: 16px;
    text-decoration: none;
    padding: 8px 12px;
    transition: color 0.3s ease, text-decoration 0.3s ease;
    border-radius: 5px;
    font-weight: 400;
    text-transform: capitalize;
}

.footer-links a:hover {
    color: #1E3A47; /* Darker blue on hover */
    font-weight: 600;
    text-decoration: underline;
}

/* Copyright Text Styling */
.copyrights {
    color: #B0B0B0;
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 14px;
    text-align: center;
    padding: 20px 0;
    letter-spacing: 1px;
}

/* Animation Keyframes */
@keyframes drop {
    from {
        transform: translateY(-30px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* Responsive Design for Buttons and Footer */
@media (max-width: 768px) {
    .contact-us {
        font-size: 16px;
        padding: 12px 18px;
    }

    .footer-links {
        gap: 10px;
    }

    .footer-links a {
        font-size: 14px;
    }

    .copyrights {
        font-size: 13px;
    }
}
/* Keyframe Animation */
@keyframes drop {
    from {
        transform: translateY(-20px);
        opacity: 0;
    }
    to {
        transform: translateY(0px);
        opacity: 1;
    }
}

/* Alert Container Styling */
#alert-container {
    position: fixed;
    top: 10px; /* Adjusted for better spacing */
    right: 10px; /* Adjusted for better spacing */
    z-index: 99;
    display: flex;
    flex-direction: column;
    gap: 10px; /* Space between multiple alerts */
}

/* Alert Box Styles */
.alert-box {
    margin: 5px 0;
    padding: 12px 15px; /* Increased padding for better readability */
    max-width: 250px; /* Slightly larger max-width */
    width: 100%; /* Makes the alert box responsive */
    border-radius: 8px; /* Slightly rounded corners for a modern look */
    font-size: 14px; /* Adjusted for better readability */
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); /* Subtle shadow */
    transition: 0.3s all;
    word-wrap: break-word;
    animation: drop 0.5s ease-in-out forwards; /* Slightly slower animation */
}

/* Success Alert Box */
.alert-box.success {
    color: #2d6a4f; /* Darker green for text */
    background-color: #d1e7dd; /* Softer green background */
    border-left: 5px solid #2d6a4f; /* Added border for distinction */
}

/* Cancel/Failure Alert Box */
.alert-box.cancel {
    color: #9e2a2b; /* Darker red for text */
    background-color: #f8d7da; /* Softer red background */
    border-left: 5px solid #9e2a2b; /* Added border for distinction */
}

@media all and (max-width: 800px) {

    .nav-wrap,

    .input-form,

    .tcpa-status,

    .cx-info{

        max-width: 680px;

    }

    .footer-tagline{

        padding-left: 3vw;

        padding-right: 3vw;

    }

    .footer-links a{

        text-align: center;

        min-width: 130px;

        max-width: 130px;

    }

}



@media all and (max-width: 525px) {

    body{

        background-size: 90%;

    }

    /* header h1{

        font-size: 26px;

        line-height: 28px;

    }

    header h2{

        font-size: 16px;

        line-height: 16px;

    } */



    #loader {
        padding: 5px 15px;
        margin: 20px auto;
    }
    
    #loader h3 {
        font-size: 18px;
        margin: 0; /* Ensure no margin around the heading */
    }
    
    #loader .outer {
        font-size: 16px;
    }
    
    .outer ul {
        /* padding-left: 10px;    Uncomment if needed for spacing */
    }
    
    /* Input label styling */
    label#num_wrap {
        max-width: 200px;
        display: block; /* Ensure label occupies full width */
        margin: 5px 0;  /* Provide space around the label */
    }
    
    /* Input field styling */
    input[type="text"] {
        width: 100%;  /* Ensure input takes full available width */
        padding: 6px; /* Optional padding for better input appearance */
        box-sizing: border-box; /* Ensure padding is included in width calculation */
    }
    
    /* Heading styling */
    .heading {
        font-size: 18px;
        margin: 10px 0; /* Space around headings */
    }
    
    /* Tcp and cx info styling */
    .tcpa-status, .cx-info {
        min-width: 320px;
        margin: 10px 0;  /* Add margin for better separation */
    }
    
    /* Label and value styling for tcp and cx */
    .tcpa-label, .tcpa-value {
        font-size: 14px;
        line-height: 1.5; /* Improved line-height for better readability */
    }
    
    /* Basic cx styling */
    .cx-basic, .cx-name {
        min-height: 40px;
        display: flex;
        align-items: center; /* Vertically center content */
        margin: 5px 0; /* Space between fields */
    }
    
    .cx-basic .label {
        font-size: 8px;
        line-height: 1.2; /* Better line height for small text */
        padding-right: 5px; /* Small gap between label and value */
    }
    
    .cx-basic .value {
        font-size: 20px;
        line-height: 1.2;
    }
    
    /* Address and Miscellaneous Section Styling */
    .cx-address, .cx-address-col,
    .cx-misc, .cx-misc-col {
        min-height: 35px;
        font-size: 14px;
        display: flex;
        align-items: center; /* Vertically center content */
        margin: 5px 0; /* Add spacing between rows */
    }
    
    /* City, State, and Zip code Styling */
    .city, .state, .zip {
        padding: 2px 5px; /* Added horizontal padding for better spacing */
    }
    
    /* City Styling */
    .city {
        min-width: 27%;
        max-width: 27%;
    }
    
    /* State Styling */
    .state {
        min-width: 10%;
        max-width: 10%;
        margin-right: 3px;
    }
    
    /* Zip Code Styling */
    .zip {
        min-width: 40px;
        margin-right: 5px;
    }
    
/* Address Labels Styling */
.cx-addresses .label {
    font-size: 10px;
    line-height: 1.2; /* Improved line-height for better readability */
    padding-bottom: 2px; /* Slight bottom padding for separation */
}

/* Address Value Styling */
.cx-addresses .value {
    font-size: 14px;
    line-height: 1.4; /* Slightly increased line height for better legibility */
    padding-bottom: 4px; /* Padding to separate the value */
}
/* Center-align content inside .deliverable */
.deliverable {
    text-align: center;
}

/* Miscellaneous Section Styling */
.cx-misc, .cx-misc-col {
    min-height: 20px; /* Ensures consistency in height */
}

/* Padding for .cx-misc-col */
.cx-misc-col {
    padding: 3px 3px 0 3px; /* Added bottom padding for spacing */
}

/* Label Styling for .cx-misc */
.cx-misc .label {
    font-size: 10px; /* Smaller font size for labels */
    line-height: 1.2; /* Slightly larger line-height for better spacing */
}

/* Value Styling for .cx-misc */
.cx-misc .value {
    font-size: 14px; /* Standard font size for values */
    line-height: 1.4; /* Adjusted line-height for clarity */
}

/* Date of Birth (DOB) Styling */
.cx-dob {
    min-width: 70px; /* Ensure a consistent minimum width */
    max-width: 120px; /* Prevent overly wide dates */
}
/* Footer Styling */
.footer {
    /* padding: 10px; */
}

/* Footer Logo */
.footer-logo {
    font-size: 1.3em;
    line-height: 1.4em; /* Ensures the text is properly spaced */
}

/* Contact Us Button */
.contact-us {
    font-size: 16px; /* Slightly smaller font for better readability */
    padding: 8px 12px; /* Adjusted padding for consistency */
}

/* Footer Links */
.footer-links a {
    font-size: 14px; /* Standardized font size for all links */
    min-width: 60px;
    max-width: 100px;
    margin: 10px auto; /* Centered and spaced links evenly */
}

/* Copyright Text */
.copyrights {
    font-size: 0.8em; /* Smaller font size for copyright text */
}



/* Footer Tagline for Smaller Screens */
@media all and (max-width: 440px) {
    .footer-tagline {
        justify-content: center; /* Center the tagline */
    }
}

/* Mobile View Adjustments for Screens Below 380px */
@media all and (max-width: 380px) {
    body {
        background-size: 350px; /* Adjust background size for small screens */
    }

    /* Features Section Font Size Adjustments */
    .features h2 {
        font-size: 12px;
        line-height: 14px; /* Adjusted line height for clarity */
    }

    .features h5 {
        font-size: 0.5em; /* Much smaller font for tighter spaces */
    }

    /* TCPA Status and CX Info Heading Font Size */
    .tcpa-status .heading,
    .cx-info .heading {
        font-size: 14px; /* Reduced font size for better mobile layout */
    }
}
/* Number Wrap Styling */
label#num_wrap {
    padding: 18px 0px 6px 8px;
    min-width: 180px;
    max-width: 200px;
}

label#num_wrap input {
    font-size: 20px; /* Larger font size for input */
    line-height: 20px;
}

/* Submit Button Styling */
#submit {
    font-family: "Scrubber-Regular"; /* Ensure this font is loaded correctly */
    font-size: 25px;
    width: 65px;
    min-height: 61px;
}

/* TCPA and CX Info Styling */
.tcpa-status, .cx-info {
    min-width: 280px; /* Unified minimum width */
}

/* Basic and Name Styling */
.cx-basic, .cx-name {
    min-height: 35px; /* Ensure consistent height for these elements */
}

/* Label and Value Styling for CX Basic */
.cx-basic .label {
    font-size: 10px;
    line-height: 10px; /* Adjusted for readability */
}

.cx-basic .value {
    font-size: 16px;
    line-height: 16px; /* Ensure better readability */
}

/* Address Label and Value Styling */
.cx-addresses .label {
    font-size: 8px;
    line-height: 8px;
    padding-bottom: 1px; /* Slight padding for separation */
}

.cx-addresses .value {
    font-size: 12px;
    line-height: 12px;
    padding-bottom: 2px; /* Space at the bottom */
}

/* Miscellaneous Label and Value Styling */
.cx-misc .label {
    font-size: 8px;
    line-height: 8px;
}

.cx-misc .value {
    font-size: 10px;
    line-height: 10px;
}

/* Date of Birth Field Styling */
.cx-dob {
    min-width: 70px; /* Set consistent width */
    max-width: 70px; /* Ensure it doesn't exceed this width */
}
