/* ==========================================================================
   Briciul Drept – frizerie de cartier
   Beton, negru și cobalt; o dungă de stâlp de frizerie; litere condensate de firmă
   luminoasă; panoul „cine e liber acum” și lista de prețuri pe pâslă.
   ========================================================================== */

:root {
	--bd-black: #121212;
	--bd-text: #33343A;
	--bd-muted: #6B6C73;
	--bd-cobalt: #2340C8;
	--bd-cobalt-dark: #1A2F96;
	--bd-red: #E0352B;
	--bd-concrete: #E7E7E4;
	--bd-white: #FFFFFF;
	--bd-felt: #1A1A1A;
	--bd-line: #CFCFCB;
	--bd-green: #2BB673;

	--bd-sign: "Big Shoulders Display", Impact, sans-serif;
	--bd-sans: "Archivo", system-ui, sans-serif;
	--bd-pole: repeating-linear-gradient(-45deg, var(--bd-red) 0 10px, var(--bd-white) 10px 20px, var(--bd-cobalt) 20px 30px, var(--bd-white) 30px 40px);
}

body {
	background: var(--bd-concrete);
	color: var(--bd-text);
	font-family: var(--bd-sans);
	font-size: 1.0625rem;
	line-height: 1.6;
}

h1, h2, h3, h4 {
	font-family: var(--bd-sign);
	font-weight: 800;
	color: var(--bd-black);
	line-height: 0.95;
	letter-spacing: 0;
	text-wrap: balance;
}
h1 { font-size: clamp(3.6rem, 2rem + 7vw, 8rem); font-weight: 900; }
h2 { font-size: clamp(2.6rem, 1.8rem + 3vw, 4.2rem); }
h3 { font-size: 1.9rem; }

p { max-width: 60ch; }
a { color: var(--bd-cobalt); }
a:hover { color: var(--bd-cobalt-dark); }
:focus-visible { outline: 3px solid var(--bd-cobalt); outline-offset: 3px; }

.elementor-button { border-radius: 0; font-weight: 700; }
.bd-btn-line .elementor-button { background: transparent; color: var(--bd-black); box-shadow: inset 0 0 0 2px var(--bd-black); }
.bd-btn-line .elementor-button:hover { background: var(--bd-black); color: var(--bd-white); }

/* Dunga de stâlp de frizerie: clasa „bd-pole” pe un container (ex. sub header) */
.bd-pole { height: 8px; background: var(--bd-pole); }

/* ---------- Logo ---------- */

.bd-logo {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	color: var(--bd-black);
	font-family: var(--bd-sign);
	font-size: 2rem;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
}
.bd-logo:hover { color: var(--bd-black); }
.bd-logo__pole { width: 12px; height: 34px; border-radius: 6px; background: var(--bd-pole); }
.bd-dark .bd-logo, .bd-dark .bd-logo:hover { color: var(--bd-white); }

/* ---------- Panoul „Cine e liber acum”: [bd_board] ---------- */

.bd-board {
	padding: 1.4rem 1.6rem 1rem;
	background: var(--bd-black);
	color: var(--bd-white);
	border-radius: 4px;
	box-shadow: 0 0 0 6px var(--bd-white), 0 0 0 7px var(--bd-line);
}
.bd-board__title {
	display: flex;
	justify-content: space-between;
	margin: 0 0 0.8rem;
	max-width: none;
	font-size: 0.875rem;
	color: #A9AAB2;
}
.bd-board__title span { font-variant-numeric: tabular-nums; color: var(--bd-white); }
.bd-board ul { margin: 0; padding: 0; list-style: none; }
.bd-board__row {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 1rem;
	padding: 0.7rem 0;
	border-top: 1px solid #2C2C2E;
}
.bd-board__name { font-family: var(--bd-sign); font-size: 2rem; font-weight: 800; line-height: 1; }
.bd-board__status { font-variant-numeric: tabular-nums; color: #FFB4AE; text-align: right; }
.bd-board__status::before {
	content: "";
	display: inline-block;
	width: 0.6em;
	height: 0.6em;
	margin-right: 0.5em;
	border-radius: 50%;
	background: var(--bd-red);
}
.is-free .bd-board__status { color: #8EF0BE; }
.is-free .bd-board__status::before { background: var(--bd-green); box-shadow: 0 0 0 4px rgba(43, 182, 115, 0.25); }

/* ---------- Lista de prețuri pe pâslă: [bd_prices] ---------- */

.bd-felt {
	padding: 2rem 2.2rem;
	background-color: var(--bd-felt);
	background-image: repeating-linear-gradient(to bottom, transparent 0 38px, rgba(255, 255, 255, 0.06) 38px 40px);
	border: 10px solid #3A2A1E;
	color: #F4F4F0;
	font-family: var(--bd-sign);
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.bd-felt ul { margin: 0; padding: 0; list-style: none; }
.bd-felt li { display: flex; align-items: baseline; gap: 0.6rem; padding: 0.35rem 0; font-size: 1.45rem; }
.bd-felt__dots { flex: 1; border-bottom: 2px dotted rgba(255, 255, 255, 0.3); transform: translateY(-0.3em); }
.bd-felt__price { font-weight: 800; }
.bd-felt__time { width: 4.5em; text-align: right; color: #9C9CA3; font-size: 1rem; }

/* ---------- Programarea: [bd_booking] ---------- */

.bd-booking { display: grid; gap: 2rem; }
.bd-booking__step[hidden], .bd-confirm[hidden] { display: none; }
.bd-booking h3 { display: flex; align-items: center; gap: 0.6rem; margin: 0 0 0.9rem; font-size: 2rem; }
.bd-booking h3 span {
	display: inline-grid;
	place-items: center;
	width: 1.4em;
	height: 1.4em;
	background: var(--bd-cobalt);
	color: var(--bd-white);
	font-size: 0.7em;
}
.bd-options, .bd-days, .bd-slots { display: grid; gap: 0.6rem; }
.bd-options { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); }
.bd-days { grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); margin-bottom: 1rem; }
.bd-slots { grid-template-columns: repeat(auto-fill, minmax(78px, 1fr)); }

.bd-option {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	padding: 0.8rem 1rem;
	border: 2px solid var(--bd-line);
	border-radius: 0;
	background: var(--bd-white);
	color: var(--bd-black);
	font: inherit;
	text-align: left;
	cursor: pointer;
	transition: border-color 0.12s, background-color 0.12s;
}
.bd-option strong { font-weight: 700; }
.bd-days .bd-option strong::first-letter { text-transform: uppercase; }
.bd-option span { font-size: 0.875rem; color: var(--bd-muted); }
.bd-option:hover:not(:disabled) { border-color: var(--bd-black); }
.bd-option[aria-pressed="true"] { border-color: var(--bd-cobalt); background: var(--bd-cobalt); color: var(--bd-white); }
.bd-option[aria-pressed="true"] span { color: #D3DAFF; }
.bd-option:disabled { opacity: 0.4; cursor: not-allowed; text-decoration: line-through; }
.bd-slots .bd-option { align-items: center; padding: 0.6rem; font-variant-numeric: tabular-nums; }
.bd-empty { grid-column: 1 / -1; color: var(--bd-muted); }

.bd-contact { display: grid; grid-template-columns: 1fr 1fr auto; gap: 0.8rem; align-items: end; }
.bd-contact label { display: grid; gap: 0.3rem; font-weight: 600; color: var(--bd-black); }
.bd-contact input { padding: 0.75rem 0.9rem; border: 2px solid var(--bd-line); border-radius: 0; background: #fff; font: inherit; }
.bd-contact input:focus { border-color: var(--bd-cobalt); outline: none; }
.bd-contact button {
	padding: 0.85rem 1.4rem;
	border: 0;
	border-radius: 0;
	background: var(--bd-black);
	color: var(--bd-white);
	font: 700 1rem var(--bd-sans);
	cursor: pointer;
}
.bd-contact button:hover { background: var(--bd-cobalt); }

.bd-confirm { padding: 2rem; background: var(--bd-white); border-top: 8px solid transparent; border-image: var(--bd-pole) 8; }
.bd-confirm h3 { font-size: 3rem; }
.bd-confirm p { font-size: 1.15rem; color: var(--bd-black); }
.bd-confirm__cal { display: inline-block; margin: 0.4rem 0 1rem; padding: 0.75rem 1.2rem; background: var(--bd-cobalt); color: #fff; font-weight: 700; text-decoration: none; }
.bd-confirm__cal:hover { background: var(--bd-cobalt-dark); color: #fff; }
.bd-confirm__note { font-size: 0.9rem !important; color: var(--bd-muted) !important; }

@media (max-width: 767px) {
	.bd-contact { grid-template-columns: 1fr; }
	.bd-felt { padding: 1.2rem; border-width: 6px; }
	.bd-felt li { font-size: 1.1rem; flex-wrap: wrap; }
	.bd-felt__time { display: none; }
}

/* ---------- Secțiunea neagră: „bd-dark” ---------- */

.bd-dark { color: #C8C9CF; }
.bd-dark h1, .bd-dark h2, .bd-dark h3, .bd-dark h4, .bd-dark .elementor-heading-title { color: var(--bd-white); }
.bd-dark .elementor-widget-text-editor { color: #C8C9CF; }
.bd-dark a:not(.elementor-button) { color: var(--bd-white); }
.bd-footer p { margin-bottom: 0.3em; }

/* ---------- Echipa ---------- */

.bd-chair {
	display: inline-grid;
	place-items: center;
	width: 88px;
	height: 88px;
	background: var(--bd-black);
	color: var(--bd-white);
	font-family: var(--bd-sign);
	font-size: 2.6rem;
	font-weight: 900;
}
