/*
Theme Name: Esports Bureau
Theme URI: https://esportsbureau.com
Description: Revista profesional de esports — habillage editorial B2B. Tema hijo de Twenty Twenty-Five.
Author: Esports Bureau
Template: twentytwentyfive
Version: 1.0.0
Requires at least: 6.7
Tested up to: 7.0
Requires PHP: 7.4
Text Domain: esportsbureau
*/

/* ------------------------------------------------------------------ *
 * Trade-press conventions this file encodes
 *
 * The readers are sponsorship and legal people at agencies, brands and
 * public bodies, not fans. Two devices carry that: a monospaced label on
 * every piece of metadata (date, beat, byline), and "El expediente" — the
 * deals ledger in the right rail, which is the thing this audience
 * actually scans for.
 * ------------------------------------------------------------------ */

/* ---- Masthead --------------------------------------------------- */

/* The Esports Bureau wordmark is white artwork, so the masthead carries the
   dark ground it was drawn for. The magenta rule under it is the brand's own
   colour, lifted from the previous theme's stylesheet (#921257). */
.eb-masthead {
	border-bottom: 4px solid var(--wp--preset--color--signal);
}

.eb-masthead .wp-block-site-title a {
	color: var(--wp--preset--color--paper);
	font-family: var(--wp--preset--font-family--source-serif);
	font-weight: 800;
	letter-spacing: -.03em;
	text-decoration: none;
}

/* The search field inherits a light-ground treatment from the parent theme. */
.eb-masthead .wp-block-search__input {
	background: transparent;
	border: 1px solid var(--wp--preset--color--muted);
	color: var(--wp--preset--color--paper);
	border-radius: 0;
}

.eb-masthead .wp-block-search__input::placeholder {
	color: var(--wp--preset--color--muted);
}

.eb-masthead .wp-block-search__button {
	background: var(--wp--preset--color--signal);
	color: var(--wp--preset--color--paper);
	border: 0;
}

.eb-masthead .wp-block-site-logo img {
	height: 46px;
	width: auto;
}

/* Beat navigation. Uppercase and tightly tracked so eight Spanish beat
   names fit one line at 1240px without wrapping into two rows. */
.eb-beats {
	border-bottom: 1px solid var(--wp--preset--color--rule);
}

.eb-beats a:where(:not(.wp-element-button)) {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: var(--wp--preset--font-size--x-small);
	font-weight: 500;
	letter-spacing: .07em;
	text-transform: uppercase;
	text-decoration: none;
	padding-block: .1em;
	border-bottom: 2px solid transparent;
}

.eb-beats a:where(:not(.wp-element-button)):hover,
.eb-beats .current-menu-item > a {
	border-bottom-color: var(--wp--preset--color--signal);
	color: var(--wp--preset--color--ink);
}

/* ---- Section eyebrows ------------------------------------------ */

/* The label sits on a rule that runs the full width of the section, which
   is what tells the reader a new beat has started. */
.eb-eyebrow {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: var(--wp--preset--font-size--x-small);
	font-weight: 600;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--signal);
	border-top: 2px solid var(--wp--preset--color--ink);
	padding-top: .5rem;
	margin-bottom: var(--wp--preset--spacing--30);
}

/* ---- Beat chip -------------------------------------------------- */

.eb-beat a {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: var(--wp--preset--font-size--x-small);
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--signal);
	text-decoration: none;
}

.eb-beat a:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* ---- Stories ---------------------------------------------------- */

.eb-lead .wp-block-post-title {
	letter-spacing: -.022em;
}

.eb-lead .wp-block-post-title a,
.eb-card .wp-block-post-title a {
	text-decoration: none;
}

.eb-lead .wp-block-post-title a:hover,
.eb-card .wp-block-post-title a:hover {
	color: var(--wp--preset--color--azul);
}

.eb-card .wp-block-post-featured-image img,
.eb-lead .wp-block-post-featured-image img {
	aspect-ratio: 16 / 9;
	object-fit: cover;
	width: 100%;
}

.eb-card {
	height: 100%;
}

.eb-meta {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: var(--wp--preset--font-size--x-small);
	letter-spacing: .03em;
	color: var(--wp--preset--color--muted);
}

/* ---- El expediente (the deals ledger) --------------------------- */

/* A ledger, not a card list: fixed-width monospaced dates in the left
   column so the eye can run down them, hairline rules between rows.
   This is the one place the design spends any weight. */
.eb-ledger {
	background: var(--wp--preset--color--newsprint);
	border-top: 3px solid var(--wp--preset--color--signal);
}

.eb-ledger .wp-block-post-template {
	list-style: none;
	margin: 0;
	padding: 0;
}

.eb-ledger .wp-block-post-template > li {
	border-bottom: 1px solid var(--wp--preset--color--rule);
	padding-block: .7rem;
	margin: 0;
}

.eb-ledger .wp-block-post-template > li:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.eb-ledger .wp-block-post-date {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: var(--wp--preset--font-size--x-small);
	color: var(--wp--preset--color--signal);
	letter-spacing: .04em;
	margin-bottom: .2rem;
}

.eb-ledger .wp-block-post-title {
	font-family: var(--wp--preset--font-family--source-sans);
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: 0;
	margin: 0;
}

.eb-ledger .wp-block-post-title a {
	text-decoration: none;
}

.eb-ledger .wp-block-post-title a:hover {
	color: var(--wp--preset--color--signal);
}

/* The rail follows the reader down the long left column. */
@media (min-width: 1024px) {
	.eb-rail {
		position: sticky;
		top: var(--wp--preset--spacing--40);
	}
}

/* ---- Article ---------------------------------------------------- */

.eb-entry :where(p) {
	line-height: 1.72;
}

.eb-entry h2 {
	margin-top: 2em;
	margin-bottom: .55em;
	font-size: var(--wp--preset--font-size--x-large);
}

.eb-entry h3 {
	margin-top: 1.7em;
	margin-bottom: .45em;
}

.eb-entry blockquote {
	border-left: 3px solid var(--wp--preset--color--signal);
	padding-left: 1.15em;
	margin-inline: 0;
	font-style: normal;
}

.eb-entry blockquote p {
	font-family: var(--wp--preset--font-family--source-serif);
	font-size: var(--wp--preset--font-size--large);
	line-height: 1.5;
}

.eb-entry .wp-block-image img {
	height: auto;
	max-width: 100%;
}

.eb-entry .wp-block-image figcaption,
.eb-entry .wp-block-embed figcaption {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: var(--wp--preset--font-size--x-small);
	color: var(--wp--preset--color--muted);
	text-align: left;
	border-left: 2px solid var(--wp--preset--color--rule);
	padding-left: .6em;
}

/* Imported archive tables (audience figures, prize pools) have no styling
   of their own and are wide enough to push the page sideways on a phone. */
.eb-entry .wp-block-table,
.eb-entry figure.wp-block-table {
	overflow-x: auto;
}

.eb-entry table {
	font-family: var(--wp--preset--font-family--plex-mono);
	font-size: var(--wp--preset--font-size--small);
	border-collapse: collapse;
}

.eb-entry table th,
.eb-entry table td {
	border: 1px solid var(--wp--preset--color--rule);
	padding: .45em .7em;
}

.eb-entry table th {
	background: var(--wp--preset--color--newsprint);
	text-align: left;
}

/* ---- Footer ----------------------------------------------------- */

:root .eb-footer a:where(:not(.wp-element-button)) {
	color: var(--wp--preset--color--paper);
	text-decoration: none;
}

:root .eb-footer a:where(:not(.wp-element-button)):hover {
	color: var(--wp--preset--color--signal);
}

.eb-footer .wp-block-categories,
.eb-footer .wp-block-categories ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.eb-footer .wp-block-categories li {
	margin: 0 0 .35em;
}

/* ---- Small screens ---------------------------------------------- */

@media (max-width: 781px) {
	.eb-masthead .wp-block-site-logo img { height: 34px; }
	.eb-beats { overflow-x: auto; }
	.eb-beats .wp-block-navigation { flex-wrap: nowrap; }
}

/* ---- Quality floor ---------------------------------------------- */

:where(a, button, input, summary):focus-visible {
	outline: 2px solid var(--wp--preset--color--signal);
	outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}

/* Wordmark present: the site name is redundant in the masthead, but stays in
   the document for assistive tech and for installs with no logo set. */
.com-has-logo .eb-masthead .wp-block-site-title {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}
