/* =========================================================
   CAMEL 21 — abstract submission / registration form
   Visual restyle only. Bootstrap markup, field names and the
   form action are untouched.
   ========================================================= */

body {
	margin: 0;
	font-family: "Raleway", "Segoe UI", Arial, Helvetica, sans-serif;
	font-optical-sizing: auto;
	color: #243540;
	min-height: 100vh;
	background:
		linear-gradient(180deg, rgba(12,58,85,.80) 0%, rgba(17,80,111,.84) 100%),
		url("images/img03.jpg") center / cover fixed no-repeat;
}

/* Title banner above the card */
.page-title {
	text-align: center;
	color: #fff;
	padding: 2.4rem 1rem .6rem;
}
.page-title h1 {
	margin: 0;
	font-weight: 800;
	letter-spacing: .12em;
	font-size: clamp(2rem, 1.4rem + 2.4vw, 3rem);
	text-shadow: 0 4px 22px rgba(0,0,0,.45);
}
.page-title p {
	margin: .35rem 0 0;
	font-weight: 500;
	letter-spacing: .04em;
	opacity: .92;
}

/* Card — override the inline 60% width so it is responsive */
.container {
	width: auto !important;
	max-width: 900px !important;
	margin: 0 auto 3rem !important;
	padding: 0 1rem;
}

.jumbotron {
	font-family: "Raleway", sans-serif;
	font-optical-sizing: auto;
	font-weight: normal;
	font-style: normal;
	background: rgba(255, 255, 255, 0.97) !important;
	border-radius: 18px;
	box-shadow: 0 22px 60px rgba(8, 32, 48, 0.35);
	padding: clamp(1.4rem, 3vw, 2.4rem) clamp(1.2rem, 3vw, 2.6rem);
}

/* Labels & inputs */
.jumbotron label {
	font-weight: 600;
	color: #0c3a55;
	margin-bottom: .35rem;
}
.form-control {
	border-radius: 9px;
	border: 1px solid #cdd9e1;
	box-shadow: none;
	transition: border-color .18s ease, box-shadow .18s ease;
}
.form-control:focus {
	border-color: #1b7bb0;
	box-shadow: 0 0 0 3px rgba(27, 123, 176, .15);
}
.input-group-addon {
	background: #f1f6f9;
	border-color: #cdd9e1;
	border-radius: 0 9px 9px 0;
}

/* Required-field asterisks */
.glyphicon {
	color: #d12c2c;
	font-size: 10px;
}

/* Submit button — match the site's gradient pills */
.btn-success {
	background: linear-gradient(135deg, #1b7bb0 0%, #14a4a0 100%) !important;
	border: none !important;
	border-radius: 999px !important;
	padding: .6rem 2.2rem !important;
	font-weight: 700 !important;
	letter-spacing: .02em;
	margin: 0 !important;
	box-shadow: 0 8px 20px rgba(20, 124, 160, .3);
	transition: transform .12s ease, box-shadow .18s ease;
}
.btn-success:hover,
.btn-success:focus {
	background: linear-gradient(135deg, #2a93cf 0%, #16b3ae 100%) !important;
	transform: translateY(-1px);
	box-shadow: 0 10px 24px rgba(20, 124, 160, .38);
	color: #fff;
}

/* The "mandatory fields" notice row */
.btn-success { vertical-align: middle; }
