:root {
  --primary-color: #4e95d9;
  --light-bg: #f4f4f9;
  --dark-text: #333;
  --danger-color: red;
  --white: #fff;
  --orange: #FFA500;
  --trans-orange: #FFA50020;
  --box-shadow-color: rgba(0, 0, 0, 0.1); /* Same as #0000001a */
  --box-shadow: 0 4px 8px var(--box-shadow-color);
}

/* Full-page background image */
body {
    font-family: sans-serif;
    margin: 0;
    padding: 0;
    background: url('../images/landing-background.jpg') no-repeat center center fixed;
    background-size: cover;
}

/* Overlay container for centered content */
#contentContainer {
    width: 80%;
    max-width: 800px;
    margin: 3em auto;
    background: rgba(255, 255, 255, 0.95); /* semi-transparent white for readability */
    padding: 2em;
    border-radius: 10px;
    box-shadow: 0 0 30px rgba(0,0,0,0.2);
}

/* Headings */
h1 {
    font-size: 2em;
    margin-bottom: 0.5em;
}

.button {
background:#4e95d9;
color:#fff;
padding:5px 10px;
border:2px solid #4e95d9;
border-radius:5px;
cursor:pointer;
text-decoration:none;
transition:background .3s;
font-size:14px;
font-weight:500;
}

.button.large {
font-size:1.5em;
padding:20px 50px
}

.cta.button.large {
    text-decoration: none!important;
    margin:1em auto;
}

.cta.button.large:hover {
    background-color: white;
    border-color: #4e95d9;
    color:#4e95d9;
}

/* Upload form and button */
#submitBtn {
    margin-top: 1em;
    cursor: pointer;
}

#submitBtn:hover {
    background-color: white;
    color:#4e95d9;
    border-color: #4e95d9;
}

/* Results section */
.results {
    margin-top: 2em;
}

#result_status {
    text-align: center;
}


/* Center alignment utility */
.centerAlign {
    text-align: center;
}

/* File upload field */
.file-upload-wrapper {
    text-align: center;
    margin: 1.5em 0;
}

#ecpFile {
    display: none;
}

.custom-upload-button,.cta {
    display: inline-block;
    background-color: #4e95d9;
    color: white;
    padding: 0.6em 1.2em;
    font-size: 1em;
    cursor: pointer;
    border-radius: 4px;
    transition: background 0.3s;
}

.custom-upload-button:hover {
    background-color: white;
    color:#4e95d9;
}

#fileLabel {
    margin-top: 0.5em;
    font-size: 0.95em;
    color: #333;
}

.smallContent {
    font-size:0.7em;
    text-align: center;
    font-style: italic;
}

.halfCols {
    float:left;
    width:50%;
}

.thirdCols {
    float:left;
    width:33.33%;
}

.clearFloats {
    clear:both;
}

.formInput {
    width:90%;
    padding:5%;
}

select.formInput {
    width:100%;
    padding:5%;
}
