@font-face {
	font-family: Poppins;
	src: url(/fonts/Poppins-Regular.ttf);
}

@font-face {
	font-family: ArchitectsDaughter;
	src: url(/fonts/ArchitectsDaughter-Regular.ttf);
}

:root {
	--color-text: #4d4e4e;
	--color-blue: #68c9da;
	--color-yellow: #fdcd07;
	--color-gray: #999999;
	--color-light-gray: #e5e5e5;
	--color-error: #ad4141;
}

.link {
	font-size: 1.3rem;
	font-family: ArchitectsDaughter;
	color: var(--color-text);
	text-decoration: underline;
}

.link:hover {
	color: var(--color-blue);
}

body {
	font-family: 'Poppins', system-ui, -apple-system, 'Segoe UI', 'Helvetica Neue',
		Arial, 'Noto Sans', 'Liberation Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji',
		'Segoe UI Symbol', 'Noto Color Emoji';
	overflow-x: hidden;
	width: 100%;
}

html {
	overflow-x: hidden;
	width: 100%;
}

button,
.btn,
input[type="button"],
input[type="submit"],
input[type="reset"] {
	font-family: 'ArchitectsDaughter';
	cursor: pointer;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0.1);
	-webkit-touch-callout: none;
	touch-action: manipulation;
	-webkit-user-select: none;
	user-select: none;
}

/* Safari-specific button fixes */
button:not(:disabled),
.btn:not(:disabled),
input[type="button"]:not(:disabled),
input[type="submit"]:not(:disabled),
input[type="reset"]:not(:disabled) {
	cursor: pointer;
}

button:disabled,
.btn:disabled,
input[type="button"]:disabled,
input[type="submit"]:disabled,
input[type="reset"]:disabled {
	cursor: not-allowed;
	opacity: 0.65;
}

.heading {
	color: var(--color-text);
	font-size: 25px;
}

/* MOBILE */
.table-heading {
	color: var(--color-gray);
	font-size: 14px;
	font-weight: 100;
}

.table-content {
	font-size: 15px;
}

.page-heading {
	text-align: start;
	color: var(--color-text);
	font-family: 'ArchitectsDaughter';
	font-weight: 900;
	font-size: 36px;
	line-height: 52px;
}

@media screen and (min-width: 0px) and (max-width: 1180px) {
	.table-content {
		font-size: 12px;
		color: var(--color-text);
	}

	.table-heading {
		font-size: 12px;
	}

	.heading {
		color: var(--color-text);
		font-size: 20px;
	}
}

.mobile-heading {
	font-weight: 900;
	color: #ec695a;
}

a {
	text-decoration: none !important;
}
/* END */

.form-heading {
	font-style: normal;
	font-weight: 900;
	font-size: 36px;
	line-height: 52px;
	text-align: center;
	color: var(--color-blue);
}

.form-textarea,
textarea.form-control {
	background: var(--color-light-gray);
	border-radius: 8px !important;
	color: var(--color-text);
	border: 0px;
	text-align: center;
}

.form-textarea::placeholder,
.form-textarea::-webkit-input-placeholder,
.form-textarea::-moz-placeholder,
.form-textarea:-ms-input-placeholder,
.form-textarea::-ms-input-placeholder {
	color: #a7a8a8;
}

.form-control {
	background: var(--color-light-gray);
	border-radius: 88px;
	padding: 11px;
	font-style: normal;
	font-weight: 500;
	font-size: 20px;
	line-height: 28px;
	color: var(--color-text);
	border: 0px;
	text-align: center;
	max-width: 100%;
}

@media screen and (max-width: 576px) {
	.form-control {
		font-size: 16px;
		padding: 8px;
		line-height: 24px;
	}
}

.form-control:hover,
.form-textarea:hover,
.form-select:hover {
	background-color: #dcdcdc;
}

.form-control::placeholder {
	font-weight: 300;
	color: #a7a8a8;
}

.form-select {
	background-color: var(--color-light-gray);
	background: var(--color-light-gray);
	border-radius: 88px;
	padding: 11px;
	font-style: normal;
	font-weight: 500;
	font-size: 20px;
	line-height: 28px;
	color: var(--color-text);
	border: 0px;
	padding-right: 15px;
	background-image: url('img/arrow-down.svg');
	background-repeat: no-repeat;
	background-position: calc(100% - 10px) center;
	background-size: 30px;
	text-align: center;
	max-width: 100%;
}

@media screen and (max-width: 576px) {
	.form-select {
		font-size: 16px;
		padding: 8px;
		padding-right: 15px;
		line-height: 24px;
		background-size: 25px;
	}
}

.form-check-input {
	width: 23px;
	height: 23px;
	background-color: var(--color-text);
	border-radius: 6px;
}

.form-check-label {
	font-style: normal;
	font-weight: 500;
	font-size: 20px;
	line-height: 28px;
	color: var(--color-text);
	margin-left: 8px;
}

.form-check-input {
	background-color: white;
}

.form-check-input:checked {
	background-color: var(--color-gray);
	border: 1px solid var(--color-gray);
}

.form-input-error {
	color: var(--color-error);
	border: 1px solid var(--color-error);
}

.form-label-error {
	color: var(--color-error);
}

/* NEW */
.bg-info{
	background-color: #68c9da !important;
}

.btn-info{
	background-color: #68c9da !important;
	border-color: #68c9da !important;
	color: #4d4e4e !important; /* Bootstrap default text color for light buttons */
	border-radius: 50rem !important;
}

.btn-info:hover,
.btn-info:focus,
.btn-info:active {
	background-color: #5ab8c8 !important;
	border-color: #5ab8c8 !important;
	color: #4d4e4e !important; /* keep dark text on hover/active */
}

.btn-outline-info {
	color: #68c9da !important;
	border-color: #68c9da !important;
	border-radius: 50rem !important;
}

.btn-outline-info:hover,
.btn-outline-info:focus,
.btn-outline-info:active {
	background-color: #68c9da !important;
	border-color: #68c9da !important;
	color: #fff !important;
}

/* Secondary buttons should use btn-warning styling */
.btn-secondary {
	background-color: #fdcd07 !important;
	border-color: #fdcd07 !important;
	color: #4d4e4e !important;
	font-family: "ArchitectsDaughter" !important;
	border-radius: 50rem !important;
}

.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active {
	background-color: #e4b906 !important;
	border-color: #e4b906 !important;
	color: #4d4e4e !important;
}

/* Warning buttons styling */
.btn-warning {
	background-color: #fdcd07 !important;
	border-color: #fdcd07 !important;
	color: #4d4e4e !important;
	font-family: "ArchitectsDaughter" !important;
	border-radius: 50rem !important;
}

.btn-warning:hover,
.btn-warning:focus,
.btn-warning:active {
	background-color: #e4b906 !important;
	border-color: #e4b906 !important;
	color: #4d4e4e !important;
}

/* Ensure all buttons are rounded */
.btn,
button,
input[type="button"],
input[type="submit"],
input[type="reset"] {
	border-radius: 50rem !important;
}

/* Ensure all inputs are rounded */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="url"],
input[type="search"],
input[type="date"],
input[type="time"],
input[type="datetime-local"],
select,
.form-control,
.form-select {
	border-radius: 88px !important;
}

/* Textareas should have minimal border-radius */
textarea {
	border-radius: 8px !important;
}

.text-info{
	color: #68c9da !important;
}

.border-info {
	border-color: #68c9da !important;
}

.alert-info {
	background-color: rgba(104, 201, 218, 0.1) !important;
	border-color: #68c9da !important;
	color: #4d4e4e !important;
}

.font-architects-daughter {
	font-family: "ArchitectsDaughter" !important;
}

.font-poppins{
	font-family: "Poppins" !important;
}