/**
 * Drumul Dunării — stilurile de bază ale blocurilor din plugin.
 * Folosesc culorile și fonturile temei (theme.json), cu valori de rezervă dacă tema se schimbă.
 */

:root {
	--ddc-blue-dark: var(--wp--preset--color--blue-dark, #264c69);
	--ddc-blue: var(--wp--preset--color--blue, #6493ac);
	--ddc-sunset: var(--wp--preset--color--sunset, #e3a078);
	--ddc-ochre: var(--wp--preset--color--ochre, #bf854a);
	--ddc-ochre-text: var(--wp--preset--color--ochre-text, #8a5a26);
	--ddc-gold: var(--wp--preset--color--gold, #d7bc68);
	--ddc-cream: var(--wp--preset--color--cream, #f8f1bf);
	--ddc-mist: var(--wp--preset--color--mist, #eaf1f5);
	--ddc-ink: var(--wp--preset--color--ink, #1b2e3d);
	--ddc-muted: var(--wp--preset--color--muted, #4a5d6b);
	--ddc-white: #fff;
	--ddc-serif: var(--wp--preset--font-family--serif, Georgia, "Times New Roman", serif);
	--ddc-sans: var(--wp--preset--font-family--sans, "Segoe UI", system-ui, sans-serif);
	--ddc-small: 0.9375rem;
	--ddc-card-text: 1.125rem;
	--ddc-radius: 4px;
}

.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.dd-editor-hint {
	display: block;
	margin: 0.5em 0;
	padding: 0.6em 0.9em;
	border: 1px dashed currentColor;
	border-radius: var(--ddc-radius);
	font-size: var(--ddc-small);
	font-style: italic;
	opacity: 0.85;
}

.dd-editor-placeholder {
	display: grid;
	gap: 0.25rem;
	padding: 1.25rem;
	border: 1px dashed var(--ddc-blue);
	border-radius: var(--ddc-radius);
	background: var(--ddc-mist);
	color: var(--ddc-blue-dark);
	font-family: var(--ddc-sans);
}

/* Placeholder-e foto, clar identificabile */
.dd-ph-tag {
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 2;
	padding: 5px 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.94);
	color: var(--ddc-blue-dark);
	font: 600 var(--ddc-small)/1.2 var(--ddc-sans);
	pointer-events: none;
}

/* Etichete de context deasupra titlurilor */
.dd-card__eyebrow,
.dd-featured__label,
.dd-guide__meta,
.dd-route-box__eyebrow,
.dd-map__list-title,
.dd-filters__label,
.dd-route-nav__label,
.dd-route-label,
.dd-popup__eyebrow {
	margin: 0;
	font-family: var(--ddc-sans);
	font-size: var(--ddc-small);
	font-weight: 600;
	letter-spacing: 0.1em;
	line-height: 1.4;
	text-transform: uppercase;
}

/* ---------- Card articol ---------- */
.dd-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.dd-card__media,
.dd-route__media,
.dd-featured__media {
	position: relative;
	display: block;
	overflow: hidden;
	aspect-ratio: 3 / 2;
	border-radius: 2px;
	background: var(--ddc-mist);
}

.dd-card__media img,
.dd-route__media img,
.dd-featured__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.dd-card:hover .dd-card__media img,
.dd-route:hover .dd-route__media img,
.dd-featured:hover .dd-featured__media img {
	transform: scale(1.02);
}

.dd-card__number {
	position: absolute;
	right: 14px;
	bottom: 14px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border: 2px solid var(--ddc-white);
	border-radius: 50%;
	background: var(--ddc-blue-dark);
	color: var(--ddc-white);
	font: 700 1.0625rem/1 var(--ddc-sans);
}

.dd-card__body {
	padding-top: 1.25rem;
}

.dd-card__eyebrow {
	color: var(--ddc-ochre-text);
}

.dd-card__title {
	margin: 0.5rem 0 0;
	font-family: var(--ddc-serif);
	font-size: clamp(1.375rem, 1.25rem + 0.4vw, 1.5rem);
	font-weight: 500;
	line-height: 1.25;
	color: var(--ddc-blue-dark);
}

.dd-card__title a {
	color: inherit;
	text-decoration: none;
}

.dd-card__title a:hover,
.dd-card__title a:focus-visible {
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 5px;
}

.dd-card__excerpt {
	margin: 0.625rem 0 0;
	font-size: var(--ddc-card-text);
	line-height: 1.6;
}

.dd-card__more {
	margin: 0.75rem 0 0;
	font-size: 1.0625rem;
	font-weight: 700;
}

.dd-card__more a {
	display: inline-flex;
	gap: 0.35em;
	align-items: center;
	min-height: 44px;
}

.dd-card--compact {
	flex-direction: row;
	gap: 1.25rem;
	align-items: flex-start;
}

.dd-card--compact .dd-card__media {
	flex: 0 0 clamp(96px, 28%, 140px);
	aspect-ratio: 1 / 1;
}

.dd-card--compact .dd-card__body {
	padding-top: 0;
}

.dd-card--compact .dd-card__title {
	font-size: 1.3125rem;
	line-height: 1.3;
}

.dd-card--compact .dd-ph-tag {
	display: none;
}

/* ---------- Obiective ---------- */
.dd-objectives__grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr));
	gap: 3rem 2.5rem;
}

.dd-objectives--compact .dd-objectives__grid {
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 360px), 1fr));
	gap: 2rem;
}

.dd-objectives__empty {
	font-size: var(--ddc-card-text);
}

/* ---------- Trasee ---------- */
.dd-routes--grila {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
	gap: 2.5rem 2rem;
}

.dd-routes--grila .dd-route__media {
	aspect-ratio: 16 / 10;
}

.dd-route__body {
	padding-top: 1.125rem;
}

.dd-route__head {
	display: flex;
	gap: 0.875rem;
	align-items: baseline;
}

.dd-route__number {
	font-family: var(--ddc-serif);
	font-size: 2rem;
	line-height: 1;
	color: var(--ddc-ochre-text);
}

.dd-route__title {
	margin: 0;
	font-family: var(--ddc-serif);
	font-size: clamp(1.375rem, 1.2rem + 0.6vw, 1.625rem);
	font-weight: 500;
	line-height: 1.2;
	color: var(--ddc-blue-dark);
}

.dd-route__title a {
	color: inherit;
	text-decoration: none;
}

.dd-route__title a:hover {
	text-decoration: underline;
	text-underline-offset: 6px;
}

.dd-route__desc {
	margin: 0.625rem 0 0;
	font-size: var(--ddc-card-text);
	line-height: 1.6;
}

.dd-route__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1.5rem;
	align-items: center;
	margin: 0.75rem 0 0;
	font-size: 1.0625rem;
	font-weight: 700;
}

.dd-route__actions a {
	display: inline-flex;
	gap: 0.35em;
	align-items: center;
	min-height: 44px;
}

.dd-routes--mare {
	display: grid;
	gap: clamp(3rem, 6vw, 6rem);
}

.dd-routes--mare .dd-route {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.5rem;
	align-items: center;
}

.dd-routes--mare .dd-route__media {
	aspect-ratio: 4 / 3;
}

.dd-routes--mare .dd-route__number {
	font-size: clamp(2.5rem, 2rem + 2vw, 4rem);
}

.dd-routes--mare .dd-route__title {
	font-size: clamp(1.75rem, 1.3rem + 1.6vw, 2.5rem);
}

.dd-routes--mare .dd-route__cta {
	padding: 0 1.5rem;
	min-height: 54px;
	border-radius: var(--ddc-radius);
	background: var(--ddc-blue-dark);
	color: var(--ddc-white);
	text-decoration: none;
}

.dd-routes--mare .dd-route__cta:hover,
.dd-routes--mare .dd-route__cta:focus-visible {
	background: var(--ddc-ink);
	color: var(--ddc-white);
}

@media (min-width: 900px) {
	.dd-routes--mare .dd-route {
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
		gap: clamp(2.5rem, 5vw, 5rem);
	}

	.dd-routes--mare .dd-route:nth-child(even) .dd-route__media {
		order: 2;
	}
}

/* ---------- Hărți ---------- */
.dd-map {
	display: grid;
	gap: 2rem;
	align-items: start;
	font-family: var(--ddc-sans);
}

@media (min-width: 960px) {
	.dd-map.has-list {
		grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
	}

	.dd-map--articol.has-list {
		grid-template-columns: minmax(0, 3fr) minmax(240px, 2fr);
	}
}

.dd-map__canvas-wrap {
	position: relative;
	min-width: 0;
}

.dd-map__canvas {
	position: relative;
	z-index: 0;
	height: min(var(--dd-map-height, 560px), 75vh);
	min-height: 280px;
	overflow: hidden;
	border: 1px solid rgba(38, 76, 105, 0.25);
	border-radius: var(--ddc-radius);
	background: #fcfaf0;
	font-family: var(--ddc-sans);
}

.dd-map--articol .dd-map__canvas {
	height: min(var(--dd-map-height, 360px), 60vh);
}

.dd-map__placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	margin: 0;
	padding: 1.5rem;
	text-align: center;
	font-size: 1.0625rem;
	color: var(--ddc-blue-dark);
}

.dd-map__canvas.is-loaded .dd-map__placeholder {
	display: none;
}

.dd-map__list-title {
	color: var(--ddc-blue-dark);
}

.dd-map__list-title--article {
	font-family: var(--ddc-serif);
	font-size: clamp(1.5rem, 1.3rem + 0.8vw, 1.875rem);
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
}

.dd-map__routes,
.dd-map__points {
	display: grid;
	gap: 0.25rem;
	margin: 1rem 0 0;
	padding: 0;
	list-style: none;
}

.dd-map__routes li {
	display: grid;
	gap: 0.25rem;
	padding: 0.5rem 0 0.75rem;
	border-bottom: 1px solid rgba(38, 76, 105, 0.15);
}

.dd-map__route {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 0.125rem 0.875rem;
	align-items: center;
	width: 100%;
	min-height: 48px;
	padding: 0.5rem 0.75rem;
	border: 2px solid transparent;
	border-radius: var(--ddc-radius);
	background: none;
	color: var(--ddc-blue-dark);
	font: 600 1.125rem/1.3 var(--ddc-sans);
	text-align: left;
	cursor: pointer;
}

.dd-map__route:hover {
	background: rgba(255, 255, 255, 0.6);
}

.dd-map__route[aria-pressed="true"] {
	border-color: var(--ddc-blue-dark);
	background: var(--ddc-white);
}

.dd-map__route .dd-map__count {
	grid-column: 2;
	font-size: var(--ddc-small);
	font-weight: 400;
	color: var(--ddc-muted);
}

.dd-map__route .dd-map__num {
	grid-row: span 2;
}

.dd-map__route-link {
	padding-left: 0.75rem;
	font-size: 1.0625rem;
	font-weight: 700;
}

.dd-map__points li {
	display: flex;
	gap: 0.875rem;
	align-items: baseline;
	padding: 0.75rem 0;
	border-bottom: 1px solid rgba(38, 76, 105, 0.15);
}

.dd-map__points li:last-child {
	border-bottom: 0;
}

.dd-map__num {
	display: inline-flex;
	flex: none;
	align-items: center;
	justify-content: center;
	min-width: 2rem;
	min-height: 2rem;
	border-radius: 50%;
	background: var(--ddc-blue-dark);
	color: var(--ddc-white);
	font-size: 1rem;
	font-weight: 700;
}

.is-unmapped .dd-map__num {
	background: transparent;
	color: var(--ddc-muted);
}

.dd-map__point {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem 0.75rem;
	align-items: baseline;
	font-size: 1.125rem;
}

.dd-map__point a {
	font-weight: 600;
}

.dd-map__show {
	min-height: 44px;
	padding: 0 0.25rem;
	border: 0;
	background: none;
	color: var(--ddc-blue-dark);
	font: 600 var(--ddc-small)/1 var(--ddc-sans);
	text-decoration: underline;
	text-underline-offset: 4px;
	cursor: pointer;
}

.dd-map__muted,
.dd-map__note,
.dd-map__coords {
	color: var(--ddc-muted);
	font-size: 1.0625rem;
}

.dd-map__place {
	margin: 0.75rem 0 0;
	font-family: var(--ddc-serif);
	font-size: 1.375rem;
	color: var(--ddc-blue-dark);
}

/* Culorile traseelor (markerii și numerele), cu contrast verificat pentru text */
.dd-color-0 { --dd-marker-bg: #264c69; --dd-marker-fg: #fff; }
.dd-color-1 { --dd-marker-bg: #8a5a26; --dd-marker-fg: #fff; }
.dd-color-2 { --dd-marker-bg: #d7bc68; --dd-marker-fg: #1b2e3d; }
.dd-color-3 { --dd-marker-bg: #e3a078; --dd-marker-fg: #1b2e3d; }

.dd-map__num[class*="dd-color-"] {
	background: var(--dd-marker-bg);
	color: var(--dd-marker-fg);
}

.dd-marker {
	background: none;
	border: 0;
}

.dd-marker span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border: 3px solid #fff;
	border-radius: 50%;
	background: var(--dd-marker-bg, #264c69);
	color: var(--dd-marker-fg, #fff);
	font: 700 1.0625rem/1 var(--ddc-sans);
	box-shadow: 0 4px 10px rgba(16, 32, 45, 0.3);
}

.dd-marker--dot span {
	width: 28px;
	height: 28px;
	margin: 8px;
}

.dd-marker:focus-visible {
	outline: none;
}

.dd-marker:focus-visible span {
	outline: 3px solid var(--ddc-ink);
	outline-offset: 2px;
}

.dd-map .leaflet-container {
	font-family: var(--ddc-sans);
	font-size: 1rem;
}

.dd-map .leaflet-control-attribution {
	font-size: 0.875rem;
	color: var(--ddc-blue-dark);
}

.dd-map .leaflet-bar a {
	width: 44px;
	height: 44px;
	line-height: 44px;
	color: var(--ddc-blue-dark);
	font-size: 1.5rem;
}

.dd-map .leaflet-popup-content-wrapper {
	padding: 0;
	overflow: hidden;
	border-radius: 6px;
}

.dd-map .leaflet-popup-content {
	margin: 0;
	width: 300px !important;
	max-width: calc(100vw - 80px);
}

.dd-popup__img {
	display: block;
	width: 100%;
	height: 130px;
	object-fit: cover;
}

.dd-popup__body {
	padding: 1rem 1.125rem 1.125rem;
}

.dd-popup__body p {
	margin: 0;
}

.dd-popup__eyebrow {
	color: var(--ddc-ochre-text);
}

.dd-popup__title {
	margin-top: 0.375rem !important;
	font-family: var(--ddc-serif);
	font-size: 1.3125rem;
	line-height: 1.2;
	color: var(--ddc-blue-dark);
}

.dd-popup__excerpt {
	margin-top: 0.5rem !important;
	font-size: 1.0625rem;
	line-height: 1.5;
	color: var(--ddc-ink);
}

.dd-popup__more {
	margin-top: 0.625rem !important;
	font-size: 1.0625rem;
	font-weight: 700;
}

.dd-map .dd-popup__more a {
	color: var(--ddc-ochre-text);
}

.dd-map .leaflet-popup-close-button {
	width: 32px;
	height: 32px;
	font-size: 1.5rem;
	line-height: 32px;
}

/* ---------- Caseta traseului (articol) ---------- */
.dd-route-box {
	padding: clamp(1.5rem, 3vw, 2.25rem);
	border-radius: var(--ddc-radius);
	background: var(--ddc-blue-dark);
	color: var(--ddc-white);
}

.dd-route-box p {
	margin: 0;
}

.dd-route-box__eyebrow {
	color: var(--ddc-gold);
}

.dd-route-box__name {
	display: flex;
	gap: 0.75rem;
	align-items: baseline;
	margin-top: 0.5rem !important;
	font-family: var(--ddc-serif);
	font-size: clamp(1.5rem, 1.3rem + 0.8vw, 1.875rem);
	line-height: 1.2;
	color: var(--ddc-cream);
}

.dd-route-box__number {
	color: var(--ddc-sunset);
}

.dd-route-box__cta {
	display: inline-flex;
	align-items: center;
	min-height: 54px;
	margin-top: 1.25rem;
	padding: 0 1.5rem;
	border-radius: var(--ddc-radius);
	background: var(--ddc-cream);
	color: var(--ddc-blue-dark) !important;
	font-weight: 700;
	text-decoration: none;
}

.dd-route-box__cta:hover {
	background: var(--ddc-white);
}

.dd-route-box__nav {
	display: grid;
	gap: 0.5rem;
	margin-top: 1.5rem;
	padding-top: 1.25rem;
	border-top: 1px solid rgba(248, 241, 191, 0.3);
	font-size: 1.0625rem;
}

.dd-route-box__nav a {
	display: inline-flex;
	gap: 0.35em;
	align-items: center;
	min-height: 44px;
	color: var(--ddc-gold);
}

.dd-route-box__nav a:hover {
	color: var(--ddc-cream);
}

/* ---------- Informații practice (articol) ---------- */
.dd-practical__title {
	margin: 0 0 1rem;
	font-family: var(--ddc-serif);
	font-size: clamp(1.5rem, 1.3rem + 0.8vw, 1.875rem);
	font-weight: 500;
	color: var(--ddc-blue-dark);
}

.dd-practical__list {
	display: grid;
	gap: 1rem;
	margin: 0;
}

.dd-practical__list > div {
	padding: 1rem 0;
	border-top: 1px solid rgba(38, 76, 105, 0.2);
}

.dd-practical__list dt {
	font-size: 1.0625rem;
	font-weight: 700;
	color: var(--ddc-blue-dark);
}

.dd-practical__list dd {
	margin: 0.375rem 0 0;
	font-size: var(--ddc-card-text);
	line-height: 1.6;
}

/* ---------- Ghiduri PDF ---------- */
.dd-guide {
	display: grid;
	gap: 1.5rem;
	align-items: center;
}

.dd-guide--card {
	grid-template-columns: minmax(110px, 160px) minmax(0, 1fr);
	align-items: start;
	padding: clamp(1.25rem, 3vw, 2rem);
	border-radius: var(--ddc-radius);
	background: var(--ddc-white);
}

.dd-guide--card .dd-guide__action {
	grid-column: 2;
}

.dd-guide--banda {
	grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 782px) {
	.dd-guide--banda {
		grid-template-columns: 160px minmax(0, 1fr) auto;
		gap: 2rem 3.5rem;
	}
}

@media (max-width: 520px) {
	.dd-guide--card {
		grid-template-columns: minmax(0, 1fr);
	}

	.dd-guide--card .dd-guide__cover {
		max-width: 160px;
	}

	.dd-guide--card .dd-guide__action {
		grid-column: 1;
	}
}

.dd-guide__cover img,
.dd-guide__cover-ph {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	box-shadow: 0 10px 24px rgba(16, 32, 45, 0.18);
}

.dd-guide__cover {
	max-width: 160px;
}

.dd-guide__cover-ph {
	box-sizing: border-box;
	padding: 1rem;
	background: var(--ddc-cream);
	color: var(--ddc-ochre);
}

.dd-guide__cover-title {
	font-family: var(--ddc-serif);
	font-size: 1.125rem;
	line-height: 1.15;
	color: var(--ddc-blue-dark);
}

.dd-guide__meta {
	color: var(--ddc-ochre-text);
}

.dd-guide__title {
	margin: 0.375rem 0 0;
	font-family: var(--ddc-serif);
	font-size: clamp(1.5rem, 1.3rem + 0.8vw, 1.875rem);
	font-weight: 500;
	line-height: 1.2;
	color: var(--ddc-blue-dark);
}

.dd-guide--banda .dd-guide__title {
	font-size: clamp(1.75rem, 1.3rem + 1.6vw, 2.5rem);
}

.dd-guide__desc {
	margin: 0.75rem 0 0;
	font-size: var(--ddc-card-text);
	line-height: 1.6;
}

.dd-guide__button {
	display: inline-flex;
	gap: 0.625rem;
	align-items: center;
	min-height: 54px;
	padding: 0 1.625rem;
	border-radius: var(--ddc-radius);
	background: var(--ddc-blue-dark);
	color: var(--ddc-white) !important;
	font-family: var(--ddc-sans);
	font-size: 1.0625rem;
	font-weight: 700;
	text-decoration: none;
}

.dd-guide__button:hover,
.dd-guide__button:focus-visible {
	background: var(--ddc-ink);
}

/* Pe fundal albastru închis */
.has-blue-dark-background-color .dd-guide__button,
.dd-dark .dd-guide__button {
	background: var(--ddc-cream);
	color: var(--ddc-blue-dark) !important;
}

.has-blue-dark-background-color .dd-guide__button:hover,
.dd-dark .dd-guide__button:hover {
	background: var(--ddc-white);
}

.has-blue-dark-background-color .dd-guide__title,
.dd-dark .dd-guide__title {
	color: var(--ddc-cream);
}

.has-blue-dark-background-color .dd-guide__meta,
.dd-dark .dd-guide__meta {
	color: var(--ddc-gold);
}

/* ---------- Breadcrumb ---------- */
.dd-breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem 0.625rem;
	margin: 0;
	padding: 0;
	list-style: none;
	font-family: var(--ddc-sans);
	font-size: var(--ddc-small);
	font-weight: 600;
}

.dd-breadcrumbs li {
	display: inline-flex;
	gap: 0.625rem;
	align-items: center;
}

.dd-breadcrumbs a {
	color: inherit;
	text-underline-offset: 4px;
}

.dd-breadcrumbs [aria-current="page"] {
	font-weight: 400;
}

/* ---------- Articol evidențiat ---------- */
.dd-featured {
	display: grid;
	gap: 2rem clamp(2rem, 4vw, 4rem);
	align-items: center;
}

@media (min-width: 900px) {
	.dd-featured {
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
	}
}

.dd-featured__media {
	aspect-ratio: 4 / 3;
}

.dd-featured__body > * {
	margin: 0;
}

.dd-featured__label {
	display: inline-block;
	margin-bottom: 1rem;
	padding: 0.375rem 0.875rem;
	border-radius: 999px;
	background: var(--ddc-cream);
	color: var(--ddc-blue-dark);
}

.dd-featured .dd-card__eyebrow {
	margin-bottom: 0.5rem;
}

.dd-featured__title {
	font-family: var(--ddc-serif);
	font-size: clamp(1.75rem, 1.3rem + 1.6vw, 2.5rem);
	font-weight: 500;
	line-height: 1.15;
	color: var(--ddc-blue-dark);
}

.dd-featured__title a {
	color: inherit;
	text-decoration: none;
}

.dd-featured__title a:hover {
	text-decoration: underline;
	text-underline-offset: 6px;
}

.dd-featured__excerpt {
	margin-top: 1rem !important;
	font-family: var(--ddc-serif);
	font-size: clamp(1.1875rem, 1.05rem + 0.5vw, 1.375rem);
	line-height: 1.55;
}

.dd-featured__meta {
	margin-top: 1rem !important;
	font-size: var(--ddc-small);
	color: var(--ddc-muted);
}

.dd-featured__cta {
	display: inline-flex;
	align-items: center;
	min-height: 54px;
	margin-top: 1.5rem;
	padding: 0 1.625rem;
	border-radius: var(--ddc-radius);
	background: var(--ddc-blue-dark);
	color: var(--ddc-white) !important;
	font-weight: 700;
	text-decoration: none;
}

.dd-featured__cta:hover {
	background: var(--ddc-ink);
}

/* ---------- Filtre blog ---------- */
.dd-filters {
	display: grid;
	gap: 1.5rem;
	font-family: var(--ddc-sans);
}

.dd-filters__search label {
	display: block;
	margin-bottom: 0.5rem;
	font-size: 1.0625rem;
	font-weight: 700;
	color: var(--ddc-blue-dark);
}

.dd-filters__row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.dd-filters__row input[type="search"] {
	flex: 1 1 260px;
	min-height: 54px;
	padding: 0 1rem;
	border: 2px solid var(--ddc-blue-dark);
	border-radius: var(--ddc-radius);
	background: var(--ddc-white);
	color: var(--ddc-ink);
	font: 400 1.125rem var(--ddc-sans);
}

.dd-filters__row button {
	min-height: 54px;
	padding: 0 1.625rem;
	border: 0;
	border-radius: var(--ddc-radius);
	background: var(--ddc-blue-dark);
	color: var(--ddc-white);
	font: 700 1.0625rem var(--ddc-sans);
	cursor: pointer;
}

.dd-filters__row button:hover {
	background: var(--ddc-ink);
}

.dd-filters__label {
	margin-bottom: 0.625rem;
	color: var(--ddc-blue-dark);
}

.dd-filters__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 0.625rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.dd-filters__chips a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 1rem;
	border: 1.5px solid var(--ddc-blue-dark);
	border-radius: 999px;
	color: var(--ddc-blue-dark);
	font-size: 1.0625rem;
	font-weight: 600;
	text-decoration: none;
}

.dd-filters__chips a:hover {
	background: var(--ddc-cream);
}

.dd-filters__chips a[aria-current="true"] {
	background: var(--ddc-blue-dark);
	color: var(--ddc-white);
}

.dd-filters__reset {
	margin: 0;
	font-size: 1.0625rem;
	font-weight: 700;
}

/* ---------- Navigare între trasee ---------- */
.dd-route-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 1.25rem;
	justify-content: space-between;
	align-items: center;
	font-size: 1.125rem;
	font-weight: 700;
}

.dd-route-nav a {
	display: inline-block;
	min-height: 44px;
	padding: 0.5rem 0;
}

.dd-route-nav__next {
	text-align: right;
}

.dd-route-nav__label {
	display: block;
	color: var(--ddc-muted);
}

/* ---------- Etichete și meta ---------- */
.dd-route-label {
	color: var(--ddc-cream);
}

.dd-post-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 1.5rem;
	font-family: var(--ddc-sans);
	font-size: 1rem;
}

@media (prefers-reduced-motion: reduce) {
	.dd-card__media img,
	.dd-route__media img,
	.dd-featured__media img {
		transition: none;
	}

	.dd-card:hover .dd-card__media img,
	.dd-route:hover .dd-route__media img,
	.dd-featured:hover .dd-featured__media img {
		transform: none;
	}
}
