/* ==========================================================================
   Página Locação de Equipamentos
   ========================================================================== */

.locacao h2 { color: var(--rd-primaria); }

/* -------- hero -------- */
.loc-hero {
	position: relative; color: #fff; text-align: center;
	padding: 72px 0;
	background-image: linear-gradient(94deg, #13213F 0%, #2A4681 100%);
}
.loc-hero h1 { color: #fff; max-width: 950px; margin: 0 auto 18px; }
.loc-hero p { max-width: 780px; margin: 0 auto 8px; color: rgba(255, 255, 255, .9); font-size: 1.08rem; }
.loc-hero .rd-cta-buttons { justify-content: center; }
.loc-hero .rd-btn--ghost { color: #fff; border-color: rgba(255, 255, 255, .55); }
.loc-hero .rd-btn--ghost:hover { background: rgba(255, 255, 255, .12); color: #fff; }

/* -------- diferenciais -------- */
.loc-dif { padding: 64px 0; }
.loc-dif__grid {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 24px;
}
.loc-dif__card {
	background: #fff; border: 1px solid var(--rd-borda); border-radius: var(--rd-radius);
	padding: 30px 28px; box-shadow: var(--rd-sombra);
}
.loc-dif__icon {
	display: inline-flex; align-items: center; justify-content: center;
	width: 56px; height: 56px; border-radius: 14px; margin-bottom: 16px;
	background: rgba(236, 108, 86, .12); color: var(--rd-secundaria);
}
.loc-dif__card h3 { margin: 0 0 8px; font-size: 1.15rem; }
.loc-dif__card p { margin: 0; color: var(--rd-texto); }

/* -------- categorias de equipamentos -------- */
.loc-cat { padding: 64px 0; }
.loc-cat--alt { background: var(--rd-cinza-claro); }
.loc-cat__titulo { text-align: center; max-width: 900px; margin: 0 auto 36px; }
.loc-cat__top {
	display: grid; grid-template-columns: 1fr 1fr; gap: 44px; align-items: center;
}
.loc-cat__top--solo { grid-template-columns: 1fr; }
.loc-cat__intro p { margin: 0 0 20px; font-size: 1.05rem; }
.loc-cat__media img { width: 100%; border-radius: var(--rd-radius); box-shadow: var(--rd-sombra); }

.loc-features { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.loc-cat__top--solo .loc-features { grid-template-columns: 1fr 1fr; gap: 12px 32px; }
.loc-features li { position: relative; padding-left: 30px; }
.loc-features li::before {
	content: ""; position: absolute; left: 0; top: 3px;
	width: 18px; height: 18px; border-radius: 50%;
	background: var(--rd-secundaria);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center / 12px no-repeat;
	        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center / 12px no-repeat;
}

/* -------- cards de produto -------- */
.loc-prod__grid {
	display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 22px;
	margin-top: 40px;
}
.loc-prod {
	display: flex; flex-direction: column;
	background: #fff; border: 1px solid var(--rd-borda); border-radius: var(--rd-radius);
	padding: 18px; transition: transform .15s ease, box-shadow .15s ease;
}
.loc-cat--alt .loc-prod { background: #fff; }
.loc-prod:hover { transform: translateY(-3px); box-shadow: var(--rd-sombra); }
.loc-prod__img {
	height: 150px; display: flex; align-items: center; justify-content: center;
	margin-bottom: 14px;
}
.loc-prod__img img { max-height: 150px; width: auto; max-width: 100%; }
.loc-prod h3 { margin: 0 0 10px; color: var(--rd-secundaria); font-size: 1.15rem; text-align: center; }
.loc-prod ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 7px; }
.loc-prod li { position: relative; padding-left: 16px; font-size: .9rem; color: var(--rd-texto); }
.loc-prod li::before { content: "•"; position: absolute; left: 2px; color: var(--rd-secundaria); }

/* -------- pedido -------- */
.loc-pedido { background: var(--rd-cinza-claro); padding: 64px 0; text-align: center; }
.loc-pedido > .container > p { max-width: 620px; margin: 0 auto 8px; }
.loc-pedido .rd-form { margin-left: auto; margin-right: auto; }

/* -------- sobre -------- */
.loc-sobre { padding: 64px 0; }
.loc-sobre__inner { max-width: 820px; text-align: center; }
.loc-sobre__inner h2 { margin-bottom: 18px; }
.loc-sobre__inner p { margin: 0 auto 14px; }

/* -------- responsivo -------- */
@media (max-width: 860px) {
	.loc-cat__top { grid-template-columns: 1fr; gap: 28px; }
	.loc-cat__top--solo .loc-features { grid-template-columns: 1fr; }
}
