/*
Theme Name: Orbita Theme
Theme URI: https://example.com/orbita-theme
Author: Codex
Author URI: https://openai.com
Description: Native block theme shell for the Orbita Noticias migration.
Version: 0.1.0
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: orbita-theme
*/

/* ─────────────────────────────────────────── */
/* LOCAL FONT FACES                            */
/* ─────────────────────────────────────────── */

/* Inter – 400 Regular */
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('./assets/fonts/Inter-Regular.woff2') format('woff2'),
	     url('./assets/fonts/Inter-Regular.woff') format('woff');
}

/* Inter – 500 Medium */
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('./assets/fonts/Inter-Medium.woff2') format('woff2'),
	     url('./assets/fonts/Inter-Medium.woff') format('woff');
}

/* Inter – 600 SemiBold */
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('./assets/fonts/Inter-SemiBold.woff2') format('woff2'),
	     url('./assets/fonts/Inter-SemiBold.woff') format('woff');
}

/* Inter – 700 Bold */
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url('./assets/fonts/Inter-Bold.woff2') format('woff2'),
	     url('./assets/fonts/Inter-Bold.woff') format('woff');
}

/* Inter – 800 ExtraBold */
@font-face {
	font-family: 'Inter';
	font-style: normal;
	font-weight: 800;
	font-display: swap;
	src: url('./assets/fonts/Inter-ExtraBold.woff2') format('woff2'),
	     url('./assets/fonts/Inter-ExtraBold.woff') format('woff');
}

/* Newsreader – 400 Regular (latin + latin-ext for Spanish) */
@font-face {
	font-family: 'Newsreader';
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url('./assets/fonts/Newsreader-Regular-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: 'Newsreader';
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url('./assets/fonts/Newsreader-Regular.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Newsreader – Italic 400 (latin + latin-ext) */
@font-face {
	font-family: 'Newsreader';
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url('./assets/fonts/Newsreader-Italic-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: 'Newsreader';
	font-style: italic;
	font-weight: 400;
	font-display: swap;
	src: url('./assets/fonts/Newsreader-Italic.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* ─────────────────────────────────────────── */
/* RESET & BASE                                */
/* ─────────────────────────────────────────── */

*,
*::before,
*::after {
	box-sizing: border-box;
}

:root {
	--orbita-white: #ffffff;
	--orbita-light-grey: #f5f5f5;
	--orbita-dark: #0d0d0d;
	--orbita-muted: #737373;
	--orbita-accent: #104075;
	--orbita-border: #e6e6e6;
	--orbita-border-soft: #f0f0f0;
	--orbita-font-sans: 'Inter', system-ui, -apple-system, sans-serif;
	--orbita-font-serif: 'Newsreader', Georgia, serif;
	--orbita-font-mono: 'Geist Mono', 'SF Mono', 'Menlo', monospace;
}

body {
	margin: 0;
	background: var(--orbita-white);
	color: var(--orbita-dark);
	font-family: var(--orbita-font-sans);
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

a {
	color: inherit;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

h1, h2, h3, h4, h5, h6 {
	margin: 0;
	line-height: 1.1;
}

p {
	margin: 0;
}

ul, ol {
	margin: 0;
	padding: 0;
}

/* ─────────────────────────────────────────── */
/* WORDPRESS LAYOUT OVERRIDES                  */
/* ─────────────────────────────────────────── */

.wp-site-blocks {
	padding-top: 0;
}

/* Prevent WordPress constrained/flex layout CSS from interfering */
.wp-site-blocks > *,
.wp-block-group > *,
.wp-block-template-part > *,
.is-layout-constrained > *,
.is-layout-flow > * {
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Kill ALL WordPress block spacing in the header/footer template parts */
.wp-site-blocks > * + * {
	margin-top: 0 !important;
}

.wp-block-template-part > * + *,
.wp-block-group > * + * {
	margin-top: 0 !important;
}

/* Reset WordPress default block spacing */
.wp-block-shortcode {
	display: contents;
}

/* Container utility - matches React's container mx-auto px-4 */
.orbita-container {
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 1rem;
}

/* ─────────────────────────────────────────── */
/* AD BANNER                                   */
/* ─────────────────────────────────────────── */

.orbita-ad-banner {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	font-family: var(--orbita-font-mono);
	font-size: 0.75rem;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: var(--orbita-muted);
	background: var(--orbita-light-grey);
	border: 1px solid var(--orbita-border);
	position: relative;
	z-index: 0;
	pointer-events: none;
}

.orbita-ad-banner--leaderboard {
	height: 6rem;
}

.orbita-ad-banner--inline {
	height: 5rem;
	margin: 1rem 0;
}

/* ─────────────────────────────────────────── */
/* HEADER: INFO BAR                            */
/* ─────────────────────────────────────────── */

.orbita-info-bar {
	border-bottom: 1px solid var(--orbita-border);
	background: rgba(245, 245, 245, 0.3);
}

.orbita-meta-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0.375rem 1rem;
	font-family: var(--orbita-font-mono);
	font-size: 10px;
	color: var(--orbita-accent);
}

.orbita-meta-row__date,
.orbita-meta-row__weather {
	display: flex;
	align-items: center;
	gap: 0.45rem;
}

.orbita-meta-row__sun {
	color: #eab308;
	font-size: 14px;
}

.orbita-meta-row__location {
	display: none;
}

@media (min-width: 640px) {
	.orbita-meta-row {
		font-size: 11px;
	}

	.orbita-meta-row__location {
		display: inline;
	}
}

/* ─────────────────────────────────────────── */
/* HEADER: MAIN BAR                            */
/* ─────────────────────────────────────────── */

.orbita-main-header {
	border-bottom: 1px solid var(--orbita-border);
	overflow: visible;
}

.orbita-header__center,
.orbita-brand {
	overflow: visible;
}

.orbita-main-header__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0.25rem 1rem;
}

@media (min-width: 1024px) {
	.orbita-main-header__inner {
		display: grid;
		grid-template-columns: 1fr auto 1fr;
	}
}

.orbita-header__left {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	justify-content: flex-start;
}

.orbita-header__center {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.orbita-header__center a {
	text-decoration: none;
}

.orbita-header__right {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.85rem;
}

@media (max-width: 639px) {
	.orbita-header__right {
		display: none;
	}
}

/* Menu & search buttons – min 45px touch target, aligned with social icons */
.orbita-menu-toggle,
.orbita-search-toggle {
	background: none;
	border: none;
	box-shadow: none;
	padding: 0;
	cursor: pointer;
	color: var(--orbita-muted);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	flex-shrink: 0;
}

.orbita-menu-toggle:hover,
.orbita-search-toggle:hover {
	color: var(--orbita-accent);
}

.orbita-menu-icon {
	display: block;
	width: 22px;
	height: 2px;
	background: currentColor;
	position: relative;
}

.orbita-menu-icon::before,
.orbita-menu-icon::after {
	content: '';
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background: currentColor;
}

.orbita-menu-icon::before {
	top: -7px;
}

.orbita-menu-icon::after {
	bottom: -7px;
}

.orbita-search-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0;
	line-height: 1;
}

/* SVG search icon injected via PHP; unicode fallback */
.orbita-search-icon svg {
	width: 18px;
	height: 18px;
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.orbita-search-box {
	display: none;
	align-items: center;
	gap: 0;
}

.orbita-search-box[style*="display: flex"] {
	display: flex !important;
}

.orbita-search-input {
	width: 220px;
	height: 38px;
	padding: 0 0.75rem;
	font-size: 0.875rem;
	font-family: var(--orbita-font-sans);
	border: 1px solid var(--orbita-border);
	border-right: 0;
	border-radius: 0;
	background: var(--orbita-white);
	color: var(--orbita-dark);
	outline: none;
}

.orbita-search-input:focus {
	border-color: var(--orbita-accent);
}

.orbita-search-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	flex-shrink: 0;
	border: 1px solid var(--orbita-accent);
	background: var(--orbita-accent);
	color: #fff;
	cursor: pointer;
	border-radius: 0;
	padding: 0;
	transition: background 0.2s;
}

.orbita-search-submit:hover {
	background: #0c3260;
	border-color: #0c3260;
}

.orbita-search-submit svg {
	width: 16px;
	height: 16px;
}

@media (max-width: 639px) {
	.orbita-search-input {
		width: 160px;
	}
}

/* Brand / Logo */
.orbita-brand {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
}

.orbita-brand img {
	display: block;
	width: auto;
	height: 184px;
	object-fit: contain;
	margin-top: -4rem;
	margin-bottom: -4rem;
}

@media (min-width: 768px) {
	.orbita-brand img {
		height: 196px;
	}
}

@media (min-width: 1024px) {
	.orbita-brand img {
		height: 180px;
	}
}

/* Social links – aligned with menu/search icons */
.orbita-social-links {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	flex-wrap: nowrap;
}

.orbita-social-links__item {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--orbita-accent);
	text-decoration: none;
	border: 0;
	padding: 0;
	width: 28px;
	height: 28px;
	flex-shrink: 0;
}

.orbita-social-links__item svg {
	width: 18px;
	height: 18px;
	display: block;
	fill: currentColor;
}

.orbita-social-links__item:hover {
	color: rgba(16, 64, 117, 0.7);
	transition: color 0.2s;
}

/* ─────────────────────────────────────────── */
/* HEADER: NAVIGATION BAR                      */
/* ─────────────────────────────────────────── */

.orbita-nav-bar {
	background: var(--orbita-accent);
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

.orbita-nav-bar::-webkit-scrollbar {
	display: none;
}

.orbita-primary-nav {
	max-width: 1400px;
	margin: 0 auto;
}

.orbita-primary-nav__list {
	display: flex;
	align-items: center;
	gap: 0;
	margin: 0;
	padding: 0 0.5rem;
	list-style: none;
	min-width: max-content;
}

@media (min-width: 1024px) {
	.orbita-primary-nav__list {
		justify-content: center;
		padding: 0;
	}
}

.orbita-primary-nav__item {
	margin: 0;
}

.orbita-primary-nav__link {
	display: block;
	padding: 0.75rem 0.875rem;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	color: rgba(255, 255, 255, 0.75);
	border-bottom: 2px solid transparent;
	white-space: nowrap;
	transition: all 0.2s;
}

@media (min-width: 768px) {
	.orbita-primary-nav__link {
		font-size: 13px;
		padding: 0.75rem 1.25rem;
	}
}

@media (min-width: 1024px) {
	.orbita-primary-nav__link {
		font-size: 0.75rem;
		padding: 0.75rem 1rem;
	}
}

.orbita-primary-nav__item:hover {
	background: rgba(0, 0, 0, 0.15);
}

.orbita-primary-nav__link:hover {
	color: #fff;
	border-bottom-color: rgba(255, 255, 255, 0.5);
}

.orbita-primary-nav__link.is-current {
	color: #fff;
	border-bottom-color: #fff;
}

/* ─────────────────────────────────────────── */
/* HEADER: BREAKING TICKER                     */
/* ─────────────────────────────────────────── */

.orbita-breaking-container {
	border-top: 1px solid rgba(16, 64, 117, 0.2);
	background: rgba(16, 64, 117, 0.1);
	overflow: hidden;
	box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
}

.orbita-breaking-ticker {
	display: flex;
	align-items: center;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 1rem;
	height: 2rem;
}

.orbita-breaking-ticker__label {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	flex: 0 0 auto;
	padding-right: 1rem;
	margin-right: 1rem;
	border-right: 1px solid var(--orbita-border);
	font-family: var(--orbita-font-mono);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--orbita-accent);
	white-space: nowrap;
}

.orbita-breaking-ticker__label::before {
	content: '';
	width: 6px;
	height: 6px;
	border-radius: 999px;
	background: var(--orbita-accent);
	animation: orbita-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes orbita-pulse {
	0%, 100% { opacity: 1; }
	50% { opacity: 0.5; }
}

.orbita-breaking-ticker__track {
	position: relative;
	flex: 1;
	overflow: hidden;
}

.orbita-breaking-ticker__list {
	display: flex;
	align-items: center;
	gap: 2rem;
	white-space: nowrap;
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 0.75rem;
	color: var(--orbita-muted);
	animation: orbita-ticker 30s linear infinite;
}

.orbita-breaking-ticker__list li {
	flex-shrink: 0;
}

.orbita-breaking-ticker__list a {
	color: inherit;
	text-decoration: none;
	transition: color 0.2s;
}

.orbita-breaking-ticker__list a:hover {
	color: var(--orbita-dark);
}

@keyframes orbita-ticker {
	0% { transform: translateX(0); }
	100% { transform: translateX(-50%); }
}

/* ─────────────────────────────────────────── */
/* SIDE DRAWER                                 */
/* ─────────────────────────────────────────── */

.orbita-side-drawer {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 50;
	width: 100%;
	height: 100%;
	display: none;
}

.orbita-side-drawer.active {
	display: flex;
}

.orbita-side-drawer__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.4);
	z-index: 40;
}

.orbita-side-drawer__panel {
	position: relative;
	z-index: 50;
	width: 280px;
	height: 100%;
	background: var(--orbita-white);
	box-shadow: 2px 0 8px rgba(0, 0, 0, 0.15);
	display: flex;
	flex-direction: column;
	transform: translateX(-100%);
	transition: transform 0.3s;
}

.orbita-side-drawer.active .orbita-side-drawer__panel {
	transform: translateX(0);
}

.orbita-side-drawer__header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 1rem;
	border-bottom: 1px solid var(--orbita-border);
	font-weight: 600;
}

.orbita-side-drawer__close {
	background: none;
	border: none;
	font-size: 1.5rem;
	cursor: pointer;
	color: var(--orbita-dark);
	padding: 0;
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.orbita-side-drawer__list {
	list-style: none;
	margin: 0;
	padding: 0;
	overflow-y: auto;
	flex: 1;
}

.orbita-side-drawer__list li {
	border-bottom: 1px solid var(--orbita-border);
}

.orbita-side-drawer__list a {
	display: block;
	padding: 1rem;
	color: var(--orbita-dark);
	text-decoration: none;
	font-size: 0.875rem;
	transition: background-color 0.2s;
}

.orbita-side-drawer__list a:hover {
	background-color: var(--orbita-light-grey);
}

/* ─────────────────────────────────────────── */
/* HOMEPAGE MAIN CONTENT                       */
/* ─────────────────────────────────────────── */

.orbita-home-main {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 1rem;
}

/* ─────────────────────────────────────────── */
/* HERO SECTION (12-COL GRID)                  */
/* ─────────────────────────────────────────── */

.orbita-hero-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.75rem;
	padding: 1.5rem 0 1.5rem;
}

@media (min-width: 1024px) {
	.orbita-hero-grid {
		grid-template-columns: repeat(12, minmax(0, 1fr));
		min-height: 520px;
		height: auto;
		align-items: stretch;
	}
}

.orbita-hero-grid__left {
	grid-column: span 1;
}

.orbita-hero-grid__center {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	grid-template-rows: repeat(2, minmax(0, 1fr));
	gap: 0.75rem;
}

.orbita-hero-grid__right {
	grid-column: span 1;
}

@media (min-width: 1024px) {
	.orbita-hero-grid__left {
		grid-column: span 5;
	}

	.orbita-hero-grid__center {
		grid-column: span 5;
	}

	.orbita-hero-grid__right {
		grid-column: span 2;
	}
}

/* Hero cards */
.orbita-hero-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: var(--orbita-white);
	overflow: hidden;
}

.orbita-hero-card--lead {
	height: 100%;
}

.orbita-hero-slider__main {
	position: relative;
	flex: 1;
	min-height: 0;
}

.orbita-hero-slider__media {
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	background: var(--orbita-border-soft);
	cursor: pointer;
}

.orbita-hero-slider__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1);
}

.orbita-hero-slider__media:hover img {
	transform: scale(1.05);
}

.orbita-hero-slider__dots {
	position: absolute;
	bottom: 0.75rem;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	gap: 0.5rem;
	z-index: 10;
}

.orbita-hero-slider__dot {
	display: block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	border: none;
	background: rgba(255, 255, 255, 0.4);
	cursor: pointer;
	padding: 0;
	transition: all 0.3s;
}

.orbita-hero-slider__dot.active {
	width: 12px;
	height: 12px;
	background: rgba(255, 255, 255, 0.9);
}

.orbita-hero-card__media {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: var(--orbita-border-soft);
}

.orbita-hero-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.7s cubic-bezier(0.19, 1, 0.22, 1);
}

.orbita-hero-card:hover .orbita-hero-card__media img {
	transform: scale(1.05);
}

.orbita-hero-card__body {
	padding: 0.75rem 0.75rem 0;
	margin: 0;
}

.orbita-hero-card__body--lead {
	padding: 0.75rem 0 0;
}

@media (min-width: 1024px) {
	.orbita-hero-card__body {
		padding: 1rem 1rem 0;
	}
}

.orbita-hero-card__title {
	margin: 0.25rem 0 0;
	font-family: var(--orbita-font-sans);
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: -0.01em;
}

.orbita-hero-card__title--lead {
	font-size: clamp(1.25rem, 2vw, 1.5rem);
}

.orbita-hero-card__title a {
	color: var(--orbita-dark);
	text-decoration: none;
	transition: color 0.2s;
}

.orbita-hero-card__title a:hover {
	color: var(--orbita-accent);
}

.orbita-hero-card__subtitle {
	margin: 0.25rem 0 0;
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--orbita-muted);
}

.orbita-hero-card__excerpt {
	margin: 0.25rem 0 0;
	font-size: 0.75rem;
	line-height: 1.5;
	color: var(--orbita-muted);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.orbita-hero-card__excerpt--lead {
	font-size: 0.875rem;
}

.orbita-hero-card__meta {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	margin-top: 0.375rem;
	font-family: var(--orbita-font-mono);
	font-size: 10px;
	color: var(--orbita-muted);
}

/* En Orbita sidebar card */
.orbita-en-orbita-card {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.orbita-en-orbita-card__label {
	margin-bottom: 0.5rem;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.15em;
	text-transform: uppercase;
}

.orbita-en-orbita-card__label a {
	color: var(--orbita-dark);
	text-decoration: none;
}

.orbita-en-orbita-card__panel {
	display: flex;
	flex: 1;
	flex-direction: column;
	border: 1px solid var(--orbita-border);
	background: var(--orbita-white);
	overflow: hidden;
}

.orbita-en-orbita-card__media {
	display: block;
	height: 8rem;
	overflow: hidden;
}

.orbita-en-orbita-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.orbita-en-orbita-card__list {
	list-style: none;
	margin: 0;
	padding: 0.85rem;
	display: flex;
	flex-direction: column;
	gap: 0.7rem;
}

.orbita-en-orbita-card__item {
	padding-bottom: 0.7rem;
	border-bottom: 1px solid var(--orbita-border);
}

.orbita-en-orbita-card__item:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.orbita-en-orbita-card__item a,
.orbita-en-orbita-card__item span {
	display: block;
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1.3;
	color: var(--orbita-dark);
	text-decoration: none;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.orbita-en-orbita-card__item a:hover {
	color: var(--orbita-accent);
}

.orbita-en-orbita-card__more {
	display: block;
	margin-top: auto;
	padding: 0.72rem;
	border-top: 1px solid var(--orbita-border);
	text-align: center;
	font-family: var(--orbita-font-mono);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--orbita-accent);
}

/* ─────────────────────────────────────────── */
/* MÁS RECIENTE                                */
/* ─────────────────────────────────────────── */

.orbita-mas-reciente {
	margin-top: 2rem;
	padding: 2rem 0 0;
	border-top: 1px solid var(--orbita-border);
}

.orbita-mas-reciente__header {
	margin-bottom: 1rem;
}

.orbita-mas-reciente__title {
	margin: 0;
	font-family: var(--orbita-font-sans);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--orbita-dark);
}

.orbita-mas-reciente__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	padding-top: 1rem;
	border-top: 1px solid var(--orbita-border);
}

@media (min-width: 768px) {
	.orbita-mas-reciente__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 0 1.5rem;
	}
}

@media (min-width: 1024px) {
	.orbita-mas-reciente__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 0 1.5rem;
	}
}

.orbita-mas-reciente__item {
	padding: 0.75rem 0;
	border-bottom: 1px solid var(--orbita-border);
}

@media (min-width: 1024px) {
	.orbita-mas-reciente__item {
		border-bottom: none;
	}
}

.orbita-mas-reciente__item-title {
	margin: 0;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.3;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.orbita-mas-reciente__item-title a {
	color: var(--orbita-dark);
	text-decoration: none;
}

.orbita-mas-reciente__item-title a:hover {
	color: var(--orbita-accent);
}

.orbita-mas-reciente__item-meta {
	display: block;
	margin-top: 0.125rem;
	font-family: var(--orbita-font-mono);
	font-size: 11px;
	color: var(--orbita-muted);
}

/* ─────────────────────────────────────────── */
/* SHORTS ROW                                  */
/* ─────────────────────────────────────────── */

.orbita-shorts {
	padding: 1.5rem 0 0.5rem;
}

.orbita-shorts__controls {
	display: flex;
	justify-content: flex-end;
	gap: 0.35rem;
	margin-bottom: 0.75rem;
}

.orbita-carousel-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2rem;
	height: 2rem;
	border: 1px solid var(--orbita-border);
	border-radius: 999px;
	background: var(--orbita-white);
	color: var(--orbita-muted);
	font-size: 1rem;
	line-height: 1;
	cursor: pointer;
	transition: background 0.2s, color 0.2s, border-color 0.2s;
}

.orbita-carousel-button:hover {
	background: var(--orbita-light-grey);
	color: var(--orbita-dark);
	border-color: var(--orbita-muted);
}

.orbita-shorts__track {
	display: flex;
	gap: 0.75rem;
	overflow-x: auto;
	padding-bottom: 0.5rem;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
}

.orbita-shorts__track::-webkit-scrollbar {
	display: none;
}

.orbita-short-card {
	flex: 0 0 calc((100% - 3.75rem) / 6);
	min-width: 9.5rem;
	scroll-snap-align: start;
}

.orbita-short-card__media {
	position: relative;
	aspect-ratio: 9 / 16;
	overflow: hidden;
	background: var(--orbita-light-grey);
}

.orbita-short-card__media iframe,
.orbita-short-card__media img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
	object-fit: cover;
}

.orbita-short-card__placeholder {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.75rem;
	color: var(--orbita-muted);
}

.orbita-short-card__overlay {
	position: absolute;
	inset: 0;
	z-index: 2;
}

.orbita-platform-pill {
	position: absolute;
	left: 0.75rem;
	top: 0.75rem;
	margin: 0;
	padding: 0.35rem 0.55rem;
	border-radius: 999px;
	background: rgba(7, 12, 27, 0.78);
	color: #fff;
	font-size: 0.65rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	z-index: 3;
}

.orbita-short-card__body {
	margin-top: 0.6rem;
	padding: 0 0.125rem;
}

.orbita-short-card__title {
	margin: 0;
	font-family: var(--orbita-font-sans);
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.22;
}

.orbita-short-card__title a {
	color: var(--orbita-dark);
	text-decoration: none;
}

.orbita-short-card__summary {
	margin: 0.35rem 0 0;
	font-size: 0.78rem;
	line-height: 1.5;
	color: var(--orbita-muted);
}

@media (max-width: 1200px) {
	.orbita-short-card {
		flex-basis: calc((100% - 3rem) / 5);
	}
}

@media (max-width: 1024px) {
	.orbita-short-card {
		flex-basis: calc((100% - 2.25rem) / 4);
	}
}

@media (max-width: 780px) {
	.orbita-carousel-button {
		display: none;
	}

	.orbita-short-card {
		flex-basis: calc((100% - 0.75rem) / 2);
		min-width: 10rem;
	}
}

/* ─────────────────────────────────────────── */
/* CATEGORY SECTIONS                           */
/* ─────────────────────────────────────────── */

.orbita-category-sections {
	display: grid;
	gap: 0;
	padding: 0;
}

.orbita-category-section {
	padding: 1.5rem 0;
	border-top: 1px solid var(--orbita-border);
}

.orbita-section-heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 1rem;
}

.orbita-section-heading h2 {
	margin: 0;
	font-family: var(--orbita-font-sans);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--orbita-dark);
}

.orbita-section-heading__more {
	font-family: var(--orbita-font-mono);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--orbita-accent);
	text-decoration: none;
}

.orbita-section-heading__more:hover {
	opacity: 0.8;
}

.orbita-story-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1rem;
}

@media (min-width: 640px) {
	.orbita-story-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.orbita-story-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.orbita-story-card {
	display: block;
}

.orbita-story-card__media {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: var(--orbita-border-soft);
}

.orbita-story-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s;
}

.orbita-story-card:hover .orbita-story-card__media img {
	transform: scale(1.05);
}

.orbita-story-card__body {
	padding-top: 0.5rem;
}

.orbita-story-card__title {
	margin: 0;
	font-family: var(--orbita-font-sans);
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1.25;
	letter-spacing: -0.01em;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.orbita-story-card__title a {
	color: var(--orbita-dark);
	text-decoration: none;
	transition: color 0.2s;
}

.orbita-story-card__title a:hover {
	color: var(--orbita-accent);
}

.orbita-story-card__excerpt {
	margin: 0.25rem 0 0;
	font-size: 0.875rem;
	line-height: 1.6;
	color: var(--orbita-muted);
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.orbita-story-card__meta {
	display: block;
	margin-top: 0.25rem;
	font-family: var(--orbita-font-mono);
	font-size: 10px;
	color: var(--orbita-muted);
}

/* ─────────────────────────────────────────── */
/* NEWSLETTER                                  */
/* ─────────────────────────────────────────── */

.orbita-newsletter {
	padding: 2rem 0;
}

.orbita-newsletter__inner {
	padding: 2rem;
	border: 1px solid var(--orbita-border);
	background: var(--orbita-white);
	text-align: center;
	max-width: 42rem;
	margin: 0 auto;
}

.orbita-newsletter__inner h2 {
	margin: 0 0 0.5rem;
	font-family: var(--orbita-font-sans);
	font-size: 1.5rem;
	font-weight: 700;
}

.orbita-newsletter__inner p {
	margin: 0 0 1.5rem;
	font-family: var(--orbita-font-serif);
	font-size: 1rem;
	line-height: 1.6;
	color: var(--orbita-muted);
	text-align: center;
}

.orbita-newsletter__form {
	display: flex;
	gap: 0;
	max-width: 28rem;
	margin: 0 auto;
}

.orbita-newsletter__input {
	flex: 1;
	min-width: 0;
	border: 1px solid var(--orbita-border);
	border-right: 0;
	padding: 0.625rem 1rem;
	font-size: 0.875rem;
	font-family: var(--orbita-font-sans);
	background: var(--orbita-white);
	border-radius: 0;
}

.orbita-newsletter__input:focus {
	outline: none;
	border-color: var(--orbita-dark);
}

.orbita-newsletter__button {
	border: 0;
	padding: 0.625rem 1.5rem;
	background: var(--orbita-dark);
	color: #fff;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	cursor: pointer;
	font-family: var(--orbita-font-sans);
	transition: opacity 0.2s;
}

.orbita-newsletter__button:hover {
	opacity: 0.9;
}

/* ─────────────────────────────────────────── */
/* FOOTER                                      */
/* ─────────────────────────────────────────── */

.orbita-site-footer {
	margin-top: 4rem;
	padding: 3rem 1rem;
	max-width: 1400px;
	margin-left: auto;
	margin-right: auto;
	border-top: 1px solid var(--orbita-border);
	color: var(--orbita-muted);
	background: var(--orbita-white);
}

.orbita-footer-grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 1.5rem;
	margin-bottom: 3rem;
	padding-bottom: 3rem;
	border-bottom: 1px solid var(--orbita-border);
}

.orbita-footer-col:first-child {
	grid-column: span 3;
}

.orbita-footer-col:nth-child(2),
.orbita-footer-col:nth-child(3),
.orbita-footer-col:nth-child(4) {
	grid-column: span 3;
}

.orbita-footer-col {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.orbita-footer-col p {
	margin: 0;
	font-size: 0.875rem;
	line-height: 1.6;
	color: var(--orbita-muted);
}

.orbita-footer-brand {
	margin: 0 0 0.5rem;
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: -0.025em;
	color: var(--orbita-dark);
	line-height: 1.2;
}

.orbita-footer-col__title {
	margin: 0 0 1rem;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--orbita-muted);
}

.orbita-footer-col__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.orbita-footer-col__list a {
	color: var(--orbita-muted);
	text-decoration: none;
	font-size: 0.875rem;
	transition: color 0.2s;
}

.orbita-footer-col__list a:hover {
	color: var(--orbita-accent);
}

.orbita-footer-bottom {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	flex-wrap: wrap;
}

.orbita-footer-bottom__copyright {
	margin: 0;
	font-family: var(--orbita-font-mono);
	font-size: 0.75rem;
	color: var(--orbita-muted);
}

.orbita-footer-bottom__right {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 1.5rem;
	flex-wrap: wrap;
}

.orbita-footer-bottom__contact {
	margin: 0;
	font-family: var(--orbita-font-mono);
	font-size: 0.75rem;
	color: var(--orbita-muted);
}

@media (max-width: 1024px) {
	.orbita-footer-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.orbita-footer-col:first-child,
	.orbita-footer-col:nth-child(2),
	.orbita-footer-col:nth-child(3),
	.orbita-footer-col:nth-child(4) {
		grid-column: span 1;
	}
}

@media (max-width: 768px) {
	.orbita-footer-grid {
		grid-template-columns: 1fr;
	}

	.orbita-footer-col:first-child,
	.orbita-footer-col:nth-child(2),
	.orbita-footer-col:nth-child(3),
	.orbita-footer-col:nth-child(4) {
		grid-column: span 1;
	}

	.orbita-footer-bottom {
		flex-direction: column;
		align-items: flex-start;
		gap: 1rem;
	}

	.orbita-footer-bottom__right {
		justify-content: flex-start;
	}
}

/* ─────────────────────────────────────────── */
/* SINGLE POST LAYOUT                          */
/* ─────────────────────────────────────────── */

.orbita-single-main {
	max-width: 1400px;
	margin: 0 auto;
	padding: 2rem 1rem;
}

.orbita-single-layout {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 1024px) {
	.orbita-single-layout {
		grid-template-columns: 1fr 20rem;
	}
}

.orbita-single-layout__content {
	min-width: 0;
}

.orbita-single-layout__content h1 {
	font-family: var(--orbita-font-sans);
	font-size: clamp(1.6rem, 3vw, 2.5rem);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.02em;
	margin: 0 0 1rem;
}

.orbita-single-layout__content .wp-block-post-content .wp-block-image {
	margin-bottom: 1.5rem;
}

.orbita-single-layout__content .wp-block-post-content .wp-block-image img {
	width: 100%;
	height: auto;
}

.orbita-single-layout__sidebar {
	min-width: 0;
}

/* Article body content */
.orbita-single-layout__content .wp-block-post-content p {
	margin: 0 0 1.25rem;
	font-size: 1.05rem;
	line-height: 1.75;
	color: var(--orbita-dark);
}

.orbita-single-layout__content .wp-block-post-content h2 {
	font-size: 1.5rem;
	font-weight: 700;
	margin: 2rem 0 1rem;
}

.orbita-single-layout__content .wp-block-post-content h3 {
	font-size: 1.25rem;
	font-weight: 700;
	margin: 1.5rem 0 0.75rem;
}

.orbita-single-layout__content .wp-block-post-content blockquote {
	border-left: 3px solid var(--orbita-accent);
	margin: 1.5rem 0;
	padding: 0.5rem 0 0.5rem 1.25rem;
	font-family: var(--orbita-font-serif);
	font-style: italic;
	color: var(--orbita-muted);
}

.orbita-single-layout__content .wp-block-post-content img {
	max-width: 100%;
	height: auto;
}

/* Post title from wp:post-title block */
.orbita-single-layout__content .wp-block-post-title {
	font-family: var(--orbita-font-sans);
	font-size: clamp(1.6rem, 3vw, 2.5rem);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.02em;
	margin: 0 0 0.75rem;
}

/* ─────────────────────────────────────────── */
/* CATEGORY KICKER BADGE                       */
/* ─────────────────────────────────────────── */

.orbita-kicker {
	display: inline-block;
	padding: 0.2rem 0.5rem;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	border: 1px solid var(--orbita-dark);
	color: var(--orbita-dark);
	text-decoration: none;
	margin-bottom: 0.75rem;
}

.orbita-kicker--link:hover {
	background: var(--orbita-dark);
	color: var(--orbita-white);
}

/* ─────────────────────────────────────────── */
/* SINGLE POST & ARCHIVE META                  */
/* ─────────────────────────────────────────── */

.orbita-post-meta {
	margin-bottom: 1.5rem;
}

.orbita-post-meta__subtitle {
	margin: 0 0 0.75rem;
	font-size: 1.05rem;
	line-height: 1.55;
	color: var(--orbita-muted);
}

.orbita-post-meta__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.5rem;
	font-size: 0.8rem;
	color: var(--orbita-muted);
	margin-bottom: 0.75rem;
}

.orbita-post-meta__author {
	font-weight: 700;
	color: var(--orbita-dark);
}

.orbita-post-meta__date {
	font-weight: 400;
}

.orbita-post-meta__reading {
	font-weight: 400;
}

.orbita-post-meta__video {
	margin-top: 1rem;
}

/* ─────────────────────────────────────────── */
/* SHARE BAR                                   */
/* ─────────────────────────────────────────── */

.orbita-share-bar {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin-bottom: 1.25rem;
	padding: 0.5rem 0;
}

.orbita-share-bar__label {
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--orbita-muted);
	margin-right: 0.25rem;
}

.orbita-share-bar__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border: none;
	background: none;
	padding: 0;
	color: var(--orbita-muted);
	cursor: pointer;
	text-decoration: none;
	transition: color 0.2s;
}

.orbita-share-bar__btn:hover {
	color: var(--orbita-accent);
}

.orbita-share-bar__btn svg {
	width: 16px;
	height: 16px;
	fill: currentColor;
}

/* Link icon uses stroke instead of fill */
.orbita-share-bar__btn:last-child svg {
	fill: none;
	stroke: currentColor;
	stroke-width: 2;
	stroke-linecap: round;
	stroke-linejoin: round;
}

/* ─────────────────────────────────────────── */
/* SIDEBAR AD BANNER                           */
/* ─────────────────────────────────────────── */

.orbita-ad-banner--sidebar {
	height: 16rem;
	margin-bottom: 1.5rem;
}

/* ─────────────────────────────────────────── */
/* RELATED POSTS                               */
/* ─────────────────────────────────────────── */

.orbita-related-posts h2 {
	margin-top: 0;
	margin-bottom: 1rem;
	font-family: var(--orbita-font-sans);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--orbita-dark);
}

.orbita-related-posts__list {
	display: grid;
	gap: 1.25rem;
	align-content: start;
}

.orbita-archive-feed {
	padding: 0.5rem 0 2rem;
}

.orbita-archive-feed__header {
	margin-bottom: 1.75rem;
}

.orbita-archive-feed__title {
	margin: 0;
	font-family: var(--orbita-font-sans);
	font-size: clamp(1.8rem, 2.5vw, 2.4rem);
	font-weight: 800;
	line-height: 1.05;
}

.orbita-archive-feed__description {
	margin-top: 0.75rem;
	max-width: 48rem;
	font-size: 0.95rem;
	color: var(--orbita-muted);
}

.orbita-archive-feed__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.orbita-story-card--archive .orbita-story-card__title {
	font-size: 1.15rem;
}

.orbita-archive-feed__pagination {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	margin-top: 2rem;
	font-family: var(--orbita-font-mono);
	font-size: 0.78rem;
	text-transform: uppercase;
}

/* ─────────────────────────────────────────── */
/* RESPONSIVE: TABLET                          */
/* ─────────────────────────────────────────── */

@media (max-width: 1024px) {
	.orbita-hero-grid {
		grid-template-columns: repeat(6, minmax(0, 1fr));
		height: auto;
	}

	.orbita-hero-grid__left {
		grid-column: span 3;
	}

	.orbita-hero-grid__center {
		grid-column: span 3;
	}

	.orbita-hero-grid__right {
		grid-column: span 6;
	}

	.orbita-mas-reciente__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.orbita-archive-feed__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* ─────────────────────────────────────────── */
/* RESPONSIVE: MOBILE                          */
/* ─────────────────────────────────────────── */

@media (max-width: 768px) {
	.orbita-hero-grid {
		grid-template-columns: 1fr;
	}

	.orbita-hero-grid__left,
	.orbita-hero-grid__center,
	.orbita-hero-grid__right {
		grid-column: span 1;
	}

	.orbita-hero-grid__center {
		grid-template-columns: 1fr;
	}

	.orbita-footer-bottom {
		flex-direction: column;
		align-items: flex-start;
	}

	.orbita-main-header__inner {
		gap: 0.75rem;
	}

	.orbita-primary-nav__link {
		padding: 0.55rem 0.85rem;
		font-size: 11px;
	}

	.orbita-mas-reciente__grid {
		grid-template-columns: 1fr;
	}

	.orbita-archive-feed__grid {
		grid-template-columns: 1fr;
	}
}
