@charset "utf-8";
/* =========================
   FILM ESTIMATOR COMPONENT
   ========================= */

.film-estimator .tsCalcModern {
	background: #ffffff;
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 14px;
	box-shadow: 0 8px 24px rgba(0,0,0,.06);
	padding: 18px;
}

.film-estimator h3,
.film-estimator p {
	margin-bottom: .6rem;
}

.film-estimator .estimator-kicker {
	display: inline-block;
	background: rgba(13,110,253,.10);
	color: #0d6efd;
	border-radius: 999px;
	padding: 4px 10px;
	font-size: .85rem;
	font-weight: 600;
	margin-bottom: .75rem;
}

.film-estimator .estimator-intro {
	font-size: .98rem;
	line-height: 1.45;
	color: #444;
}

.film-estimator .quick-note {
	font-size: .92rem;
	color: #666;
	margin-bottom: 1rem;
}

.film-estimator .reel-guide {
	background: #f8fbff;
	border: 1px solid rgba(13,110,253,.12);
	border-radius: 12px;
	padding: 10px;
	margin-bottom: 1rem;
}

.film-estimator .reel-guide img {
	width: 100%;
	border-radius: 8px;
}

/* CARD SECTIONS */

.film-estimator .tsCalcCard {
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 12px;
	overflow: hidden;
	margin-bottom: 14px;
	background: #fff;
}

.film-estimator .tsCalcCardHeader {
	background: #0d6efd;
	color: #fff;
	padding: 10px 14px;
	font-weight: 700;
	font-size: 1rem;
}

.film-estimator .tsCalcCardSub {
	padding: 10px 14px;
	background: #f8f9fa;
	font-size: .92rem;
	color: #444;
	border-bottom: 1px solid rgba(0,0,0,.06);
}

/* TABLE */

.film-estimator .tsCompactTable {
	width: 100%;
}

.film-estimator .tsCompactTable th,
.film-estimator .tsCompactTable td {
	padding: 9px 10px;
	border-bottom: 1px solid #ececec;
	font-size: .95rem;
}

.film-estimator .tsCompactTable thead th {
	background: #f3f7fc;
	font-size: .84rem;
	text-transform: uppercase;
	font-weight: 700;
}

.film-estimator input[type="number"] {
	width: 70px;
	min-height: 40px;
	text-align: center;
	border: 1px solid #cfd8e3;
	border-radius: 8px;
}

/* OPTIONS */

.film-estimator .tsOptionsWrap {
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 12px;
	background: #fff;
	margin-bottom: 14px;
}

.film-estimator .tsOptionsHead {
	background: #f3f7fc;
	padding: 10px 14px;
	font-weight: 700;
}

.film-estimator .tsOptionsBody {
	padding: 14px;
}

.film-estimator select {
	width: 100%;
	max-width: 240px;
	min-height: 42px;
	border: 1px solid #cfd8e3;
	border-radius: 8px;
	padding: 8px;
}

.film-estimator .masterDesc {
	font-size: .92rem;
	color: #555;
	margin-top: 6px;
}

/* TOTAL */

.film-estimator .tsEstimateTotal {
	background: linear-gradient(135deg, #0d6efd, #0a58ca);
	color: #fff;
	border-radius: 12px;
	padding: 14px 16px;
	margin-bottom: 14px;
}

.film-estimator .tsEstimateTotal .amount {
	color: #fff;
	font-size: 1.5rem;
	font-weight: 800;
}

/* CTA */

.film-estimator .tsMiniCta a {
	display: inline-block;
	background: #198754;
	color: #fff;
	padding: 10px 14px;
	border-radius: 10px;
	font-weight: 700;
	text-decoration: none;
	margin-right: 8px;
}

.film-estimator .tsMiniCta a.secondary {
	background: #e9f2ff;
	color: #0d6efd;
}

/* MOBILE */

@media (max-width: 768px) {
	.film-estimator .tsCalcModern {
		padding: 14px;
	}

	.film-estimator input[type="number"] {
		width: 60px;
	}
}
.film-estimator .tsEstimateTotal,
.film-estimator .tsEstimateTotal .label,
.film-estimator .tsEstimateTotal .amount,
.film-estimator .tsEstimateTotal .subtext,
#totalAmount {
	color: #fff !important;
}