/* LSB Hall da Fama */
.lsbhf {
	--lsbhf-bg: #0b0b0c;
	--lsbhf-bg2: #141416;
	--lsbhf-orange: #fe5900;
	--lsbhf-text: #e9eaec;
	--lsbhf-muted: #a9adb3;
	--lsbhf-font: 'Oswald', 'Bebas Neue', 'Arial Narrow', sans-serif;
	position: relative;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	background: var(--lsbhf-bg);
	color: var(--lsbhf-text);
	overflow: hidden;
}
.lsbhf *, .lsbhf *::before, .lsbhf *::after { box-sizing: border-box; }
.lsbhf a, .lsbhf a:hover, .lsbhf a:focus, .lsbhf a:visited { text-decoration: none !important; box-shadow: none !important; }

/* Esconde o título padrão do tema e o respiro acima, nessas páginas */
body.lsbhf-page .content_box.my-0 > h1 { display: none; }
body.lsbhf-page .content_box.my-0 > .feature-box { display: none; }
body.lsbhf-page .main-wrapper { padding-top: 0 !important; padding-bottom: 0 !important; }

.lsbhf-wrap { max-width: 1200px; margin: 0 auto; padding: 0 24px; }

.lsbhf-eyebrow {
	margin: 0 0 10px !important;
	font-family: var(--lsbhf-font);
	font-size: 14px !important;
	font-weight: 500;
	letter-spacing: .22em;
	text-transform: uppercase;
	color: var(--lsbhf-orange) !important;
}
.lsbhf-rule { display: block; width: 72px; height: 5px; background: var(--lsbhf-orange); margin: 22px 0 26px; }

/* ---------- Abertura ---------- */
.lsbhf-hero {
	position: relative;
	padding: 96px 0 56px;
	background:
		radial-gradient(ellipse 55% 70% at 88% 10%, rgba(254, 89, 0, .22), transparent 70%),
		linear-gradient(180deg, #121214 0%, var(--lsbhf-bg) 100%);
}
.lsbhf-hero::before {
	content: "";
	position: absolute; inset: 0;
	opacity: .07;
	pointer-events: none;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 940 500' fill='none' stroke='%23fff' stroke-width='3'%3E%3Crect x='10' y='10' width='920' height='480'/%3E%3Cline x1='470' y1='10' x2='470' y2='490'/%3E%3Ccircle cx='470' cy='250' r='60'/%3E%3Crect x='740' y='170' width='190' height='160'/%3E%3Ccircle cx='740' cy='250' r='60'/%3E%3Cpath d='M930 40 H850 A230 230 0 0 0 850 460 H930'/%3E%3C/svg%3E") right -10% center / auto 120% no-repeat;
}
.lsbhf-hero .lsbhf-wrap { position: relative; }
.lsbhf-hero__title {
	margin: 0 !important;
	font-family: var(--lsbhf-font) !important;
	font-weight: 700 !important;
	font-size: clamp(56px, 9vw, 128px) !important;
	line-height: .95 !important;
	letter-spacing: -.005em;
	text-transform: uppercase;
	color: #fff !important;
}
.lsbhf-hero__intro { max-width: 760px; }
.lsbhf-hero__intro p {
	margin: 0 0 14px !important;
	font-size: 18px !important;
	line-height: 1.65 !important;
	color: #cfd2d6 !important;
	text-align: left !important;
}

/* ---------- Grade de homenageados ---------- */
.lsbhf-section { padding: 16px 0 96px; }
.lsbhf-count {
	margin: 0 0 18px !important;
	font-family: var(--lsbhf-font);
	font-size: 14px !important;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--lsbhf-muted) !important;
}
.lsbhf-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 22px;
}
.lsbhf-grid--small { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 18px; }

.lsbhf-card {
	position: relative;
	display: block;
	aspect-ratio: 4 / 5;
	overflow: hidden;
	border-radius: 4px;
	background: var(--lsbhf-bg2);
	color: #fff !important;
	isolation: isolate;
}
.lsbhf-card__media, .lsbhf-card__img {
	position: absolute; inset: 0;
	width: 100% !important; height: 100% !important; max-width: none !important;
}
.lsbhf-card__img {
	object-fit: cover;
	filter: grayscale(100%) contrast(1.05) brightness(.92);
	transform: scale(1.001);
	transition: filter .5s ease, transform .6s ease;
}
.lsbhf-card::before {
	content: "";
	position: absolute; inset: 0; z-index: 1;
	background: linear-gradient(0deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,.55) 32%, rgba(0,0,0,0) 60%);
}
.lsbhf-card::after {
	content: "";
	position: absolute; left: 0; right: 0; bottom: 0; z-index: 2;
	height: 5px;
	background: var(--lsbhf-orange);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .4s ease;
}
.lsbhf-card__body {
	position: absolute; left: 0; right: 0; bottom: 0; z-index: 2;
	display: flex; flex-direction: column; gap: 6px;
	padding: 22px 20px 24px;
}
.lsbhf-card__legado {
	font-family: var(--lsbhf-font);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--lsbhf-orange);
	line-height: 1.3;
}
.lsbhf-card__name {
	font-family: var(--lsbhf-font);
	font-size: 26px;
	font-weight: 700;
	line-height: 1.05;
	text-transform: uppercase;
	color: #fff;
}
.lsbhf-grid--small .lsbhf-card__name { font-size: 21px; }
.lsbhf-card__more {
	margin-top: 6px;
	font-size: 13px;
	font-weight: 600;
	color: #d9dbde;
	opacity: 0;
	transform: translateY(6px);
	transition: opacity .3s ease, transform .3s ease;
}
.lsbhf-card:hover .lsbhf-card__img, .lsbhf-card:focus-visible .lsbhf-card__img { filter: none; transform: scale(1.05); }
.lsbhf-card:hover::after, .lsbhf-card:focus-visible::after { transform: scaleX(1); }
.lsbhf-card:hover .lsbhf-card__more, .lsbhf-card:focus-visible .lsbhf-card__more { opacity: 1; transform: none; }
.lsbhf-card:focus-visible { outline: 3px solid var(--lsbhf-orange); outline-offset: 3px; }

/* ---------- Página do homenageado ---------- */
.lsbhf-member {
	position: relative;
	padding: 72px 0 80px;
	background: radial-gradient(ellipse 50% 60% at 15% 20%, rgba(254, 89, 0, .16), transparent 70%);
}
.lsbhf-member__grid {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	gap: 72px;
	align-items: start;
}
.lsbhf-member__photo {
	position: sticky; top: 110px;
	margin: 0;
	aspect-ratio: 4 / 5;
}
.lsbhf-member__photo::before {
	content: "";
	position: absolute; inset: 0;
	transform: translate(18px, 18px);
	border: 3px solid var(--lsbhf-orange);
	border-radius: 4px;
}
.lsbhf-member__photo img {
	position: relative;
	width: 100% !important; height: 100% !important; max-width: none !important;
	object-fit: cover;
	border-radius: 4px;
	display: block;
}
.lsbhf-back {
	display: inline-flex; gap: 8px; align-items: center;
	margin-bottom: 28px;
	font-family: var(--lsbhf-font);
	font-size: 14px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--lsbhf-muted) !important;
	transition: color .2s ease;
}
.lsbhf-back:hover { color: #fff !important; }
.lsbhf-member__name {
	margin: 0 !important;
	font-family: var(--lsbhf-font) !important;
	font-weight: 700 !important;
	font-size: clamp(40px, 5vw, 72px) !important;
	line-height: 1 !important;
	text-transform: uppercase;
	color: #fff !important;
}
.lsbhf-member__legado {
	margin: 14px 0 0 !important;
	font-family: var(--lsbhf-font);
	font-size: 18px !important;
	font-weight: 500;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--lsbhf-orange) !important;
}
.lsbhf-text p, .lsbhf-text li {
	margin: 0 0 18px !important;
	font-size: 18px !important;
	line-height: 1.75 !important;
	color: var(--lsbhf-text) !important;
	text-align: left !important;
}
.lsbhf-text strong, .lsbhf-text b { color: #fff; }
.lsbhf-text p:last-child { margin-bottom: 0 !important; }

.lsbhf-section--others { padding-top: 64px; border-top: 1px solid rgba(255,255,255,.08); }
.lsbhf-section__title {
	margin: 0 0 24px !important;
	font-family: var(--lsbhf-font) !important;
	font-size: 28px !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	color: #fff !important;
}
.lsbhf-all { margin: 36px 0 0 !important; }
.lsbhf-btn {
	display: inline-flex; align-items: center; justify-content: center;
	min-height: 46px; padding: 0 28px;
	border: 1.5px solid #fff; border-radius: 999px;
	font-size: 14px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase;
	color: #fff !important;
	transition: background .2s ease, color .2s ease;
}
.lsbhf-btn:hover, .lsbhf-btn:focus-visible { background: #fff; color: #000 !important; }

/* ---------- Hall da Fama: Em breve ---------- */
.lsbhf-soon {
	min-height: 78vh;
	display: flex; align-items: center;
	padding: 120px 0;
	background:
		radial-gradient(ellipse 60% 75% at 80% 40%, rgba(254, 89, 0, .26), transparent 70%),
		radial-gradient(ellipse 40% 50% at 10% 90%, rgba(254, 89, 0, .10), transparent 70%),
		linear-gradient(180deg, #121214 0%, var(--lsbhf-bg) 100%);
}
.lsbhf-soon .lsbhf-wrap { width: 100%; }
.lsbhf-soon .lsbhf-hero__title { font-size: clamp(64px, 12vw, 168px) !important; }
.lsbhf-soon__badge {
	display: inline-flex; align-items: center; gap: 12px;
	margin: 28px 0 30px !important;
	padding: 10px 22px;
	border: 2px solid var(--lsbhf-orange);
	border-radius: 999px;
	font-family: var(--lsbhf-font);
	font-size: 20px !important;
	font-weight: 700;
	letter-spacing: .2em;
	text-transform: uppercase;
	color: #fff !important;
}
.lsbhf-soon__dot {
	width: 10px; height: 10px; border-radius: 50%;
	background: var(--lsbhf-orange);
	box-shadow: 0 0 0 0 rgba(254, 89, 0, .7);
	animation: lsbhf-pulse 1.8s infinite;
}
@keyframes lsbhf-pulse { 70% { box-shadow: 0 0 0 12px rgba(254, 89, 0, 0); } 100% { box-shadow: 0 0 0 0 rgba(254, 89, 0, 0); } }
.lsbhf-soon .lsbhf-hero__intro p { font-size: 20px !important; color: #e3e5e8 !important; }
.lsbhf-soon__link {
	display: inline-flex; flex-direction: column; gap: 4px;
	margin-top: 36px;
	padding: 18px 24px;
	border-left: 4px solid var(--lsbhf-orange);
	background: rgba(255, 255, 255, .04);
	color: #fff !important;
	transition: background .2s ease;
}
.lsbhf-soon__link:hover { background: rgba(255, 255, 255, .09); }
.lsbhf-soon__link-eyebrow { font-family: var(--lsbhf-font); font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--lsbhf-muted); }
.lsbhf-soon__link-title { font-family: var(--lsbhf-font); font-size: 22px; font-weight: 700; text-transform: uppercase; }

/* ---------- Tablet e celular ---------- */
@media (max-width: 900px) {
	.lsbhf-member__grid { grid-template-columns: 1fr; gap: 48px; }
	.lsbhf-member__photo { position: relative; top: 0; max-width: 420px; width: calc(100% - 18px); }
}
@media (max-width: 600px) {
	.lsbhf-wrap { padding: 0 16px; }
	.lsbhf-hero { padding: 64px 0 40px; }
	.lsbhf-hero__intro p, .lsbhf-text p { font-size: 17px !important; }
	.lsbhf-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
	.lsbhf-card__body { padding: 14px 12px 16px; }
	.lsbhf-card__name { font-size: 18px; }
	.lsbhf-grid--small .lsbhf-card__name { font-size: 16px; }
	.lsbhf-card__legado { font-size: 10px; letter-spacing: .1em; }
	.lsbhf-card__more { display: none; }
	.lsbhf-member { padding: 48px 0 56px; }
	.lsbhf-soon { min-height: 0; padding: 72px 0; }
	.lsbhf-soon__badge { font-size: 16px !important; }
	.lsbhf-soon .lsbhf-hero__intro p { font-size: 17px !important; }
}
@media (hover: none) {
	.lsbhf-card__img { filter: none; }
}
@media (prefers-reduced-motion: reduce) {
	.lsbhf-card__img, .lsbhf-card::after, .lsbhf-card__more { transition: none; }
	.lsbhf-soon__dot { animation: none; }
}
