/*
 * The Barber Pub — Global Base
 */

:root {
	--tbp-black: #050505;
	--tbp-black-soft: #0b0b0b;
	--tbp-charcoal: #111111;
	--tbp-graphite: #1a1a1a;
	--tbp-graphite-2: #242424;
	--tbp-gold: #c79a3b;
	--tbp-gold-soft: #e0bd73;
	--tbp-gold-dark: #8f6826;
	--tbp-wood: #6b3f24;
	--tbp-cream: #f4efe6;
	--tbp-cream-2: #ded4c3;
	--tbp-white: #ffffff;
	--tbp-muted: #a7a7a7;
	--tbp-border: rgba(199, 154, 59, 0.22);
	--tbp-border-soft: rgba(255, 255, 255, 0.08);
	--tbp-shadow: 0 24px 80px rgba(0, 0, 0, 0.38);
	--tbp-radius: 24px;
	--tbp-radius-lg: 36px;
	--tbp-container: 1180px;
}

html { scroll-behavior: smooth; }

body {
	background: var(--tbp-black) !important;
	color: var(--tbp-cream);
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

body.tbp-lock-scroll { overflow: hidden; }
a { transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease; }

/* Reset agressivo do Kadence nas páginas TBP */
body.page,
body.page #wrapper,
body.page #inner-wrap,
body.page #primary,
body.page #main,
body.page .site,
body.page .site-main,
body.page .content-area,
body.page .content-container,
body.page .site-container,
body.page .content-bg,
body.page .entry,
body.page .entry.single-entry,
body.page article.entry,
body.page .post.entry,
body.page .entry-content-wrap,
body.page .entry-content,
body.page .wp-site-blocks {
	background: var(--tbp-black) !important;
	box-shadow: none !important;
	border: 0 !important;
}

body.page .entry-header,
body.page .entry-title,
body.page h1.entry-title,
body.page .page-title,
body.page h1.page-title,
body.page .page-header,
body.page .post-thumbnail,
body.page .kadence-breadcrumbs,
body.page .entry-meta,
body.page .content-title-style-above .entry-header,
body.page .content-title-style-normal .entry-header,
body.page .hero-section,
body.page .entry-hero,
body.page .entry-hero-container-inner,
body.page .page-hero-section,
body.page .kadence-title-bar,
body.page .kadence-title-bar-wrap {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	overflow: hidden !important;
}

body.page #primary,
body.page #main,
body.page .site-main,
body.page .content-area,
body.page .content-container,
body.page .site-container,
body.page .content-bg,
body.page .entry.single-entry,
body.page .entry-content-wrap,
body.page .entry-content {
	max-width: none !important;
	width: 100% !important;
	padding: 0 !important;
	margin: 0 !important;
}

body.page .entry-content > * {
	margin-block-start: 0 !important;
	margin-block-end: 0 !important;
}

body.page .entry-content > .tbp-site,
body.page .entry-content > .tbp-page-shell {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

.tbp-site {
	background:
		radial-gradient(circle at 20% 0%, rgba(199,154,59,.12), transparent 28%),
		linear-gradient(180deg,#060606 0%,#0b0b0b 45%,#050505 100%);
	color: var(--tbp-cream);
	overflow: hidden;
	width: 100%;
}

.tbp-container {
	width: min(var(--tbp-container), calc(100% - 40px));
	margin-inline: auto;
}

.tbp-section {
	padding: clamp(72px, 8vw, 124px) 0;
	position: relative;
}

.tbp-section + .tbp-section { border-top: 1px solid var(--tbp-border-soft); }

.tbp-eyebrow {
	color: var(--tbp-gold);
	text-transform: uppercase;
	letter-spacing: .18em;
	font-size: .76rem;
	font-weight: 800;
	line-height: 1.4;
	margin: 0 0 14px;
}

.tbp-site h1,
.tbp-site h2,
.tbp-site h3,
.tbp-site p { margin-top: 0; }

.tbp-site h1,
.tbp-site h2,
.tbp-site h3 {
	color: var(--tbp-cream);
	letter-spacing: -.045em;
	line-height: .95;
}

.tbp-site h1 { font-size: clamp(3.2rem, 7vw, 7.8rem); max-width: 980px; margin-bottom: 24px; }
.tbp-site h2 { font-size: clamp(2.4rem, 4.7vw, 5.2rem); margin-bottom: 20px; }
.tbp-site h3 { font-size: clamp(1.35rem, 2vw, 1.9rem); margin-bottom: 12px; }

.tbp-site p {
	color: var(--tbp-cream-2);
	font-size: clamp(1rem, 1.4vw, 1.125rem);
	line-height: 1.75;
}

.tbp-lead {
	max-width: 720px;
	font-size: clamp(1.12rem, 1.8vw, 1.35rem) !important;
	color: rgba(244,239,230,.88) !important;
	margin-bottom: 34px;
}

.tbp-actions { display: flex; gap: 14px; flex-wrap: wrap; align-items: center; }

.tbp-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 0 26px;
	border-radius: 999px;
	font-weight: 800;
	font-size: .96rem;
	text-decoration: none !important;
	line-height: 1;
	border: 1px solid transparent;
	white-space: nowrap;
}

.tbp-btn:hover { transform: translateY(-2px); }
.tbp-btn-primary { background: linear-gradient(135deg, var(--tbp-gold), var(--tbp-gold-soft)); color: var(--tbp-black) !important; box-shadow: 0 14px 34px rgba(199,154,59,.22); }
.tbp-btn-secondary { background: rgba(255,255,255,.03); border-color: var(--tbp-border); color: var(--tbp-cream) !important; }
.tbp-btn-secondary:hover { border-color: var(--tbp-gold); color: var(--tbp-gold-soft) !important; }

.tbp-two-col { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(32px,6vw,92px); align-items: start; }
.tbp-section-head { max-width: 760px; margin-bottom: 42px; }
.tbp-card-grid { display: grid; gap: 18px; }
.tbp-card-grid-3 { grid-template-columns: repeat(3,minmax(0,1fr)); }

.tbp-card,
.tbp-profile-card,
.tbp-feature-box,
.tbp-quote {
	border: 1px solid var(--tbp-border-soft);
	background: linear-gradient(145deg, rgba(255,255,255,.065), rgba(255,255,255,.025));
	border-radius: var(--tbp-radius);
	padding: clamp(24px,3vw,34px);
	box-shadow: 0 18px 54px rgba(0,0,0,.22);
}

.tbp-card:hover,
.tbp-profile-card:hover { border-color: var(--tbp-border); transform: translateY(-3px); }

.tbp-feature-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
	background: linear-gradient(135deg, rgba(199,154,59,.14), rgba(255,255,255,.035)), #0e0e0e;
}

.tbp-profile-card a { color: var(--tbp-gold-soft); font-weight: 800; text-decoration: none; }

.tbp-avatar-placeholder,
.tbp-image-placeholder,
.tbp-map-placeholder,
.tbp-gallery-item {
	border: 1px solid var(--tbp-border);
	background: linear-gradient(135deg, rgba(255,255,255,.06), rgba(255,255,255,.02)), linear-gradient(145deg,#191919,#080808);
	box-shadow: var(--tbp-shadow);
}

.tbp-avatar-placeholder {
	width: 100%;
	aspect-ratio: 1;
	border-radius: 22px;
	display: grid;
	place-items: center;
	color: var(--tbp-muted);
	margin-bottom: 22px;
}

.tbp-map-placeholder {
	min-height: 420px;
	border-radius: var(--tbp-radius);
	display: grid;
	place-items: center;
	color: var(--tbp-muted);
	text-align: center;
	padding: 24px;
}

@media (max-width: 1024px) {
	.tbp-two-col,
	.tbp-hero-grid { grid-template-columns: 1fr; }
	.tbp-card-grid-3,
	.tbp-gallery-grid,
	.tbp-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 767px) {
	.tbp-container { width: min(100% - 28px, var(--tbp-container)); }
	.tbp-site h1 { font-size: clamp(3rem,16vw,4.4rem); }
	.tbp-actions,
	.tbp-feature-box { align-items: stretch; flex-direction: column; }
	.tbp-btn { width: 100%; }
	.tbp-card-grid-3,
	.tbp-gallery-grid,
	.tbp-footer-grid { grid-template-columns: 1fr; }
}
