/* España branch (/espana/) + breve bloque home — R1B-MVP */
.dw-es {
	--es-ink: #3d4166;
	--es-dark: #292d49;
	--es-soft: #e9e8f0;
	--es-paper: #fbfbfa;
	--es-orange: #f28c28;
	--es-line: rgba(61, 65, 102, 0.17);
	background: var(--es-paper);
	color: #333;
	font-family: "Montserrat", Arial, sans-serif;
	overflow: hidden;
}
.dw-es * { box-sizing: border-box; }
.dw-es__shell { width: min(calc(100% - 80px), 1100px); margin-inline: auto; }
.dw-es__hero {
	padding: clamp(72px, 9vw, 128px) 0 clamp(64px, 7vw, 100px);
	background: linear-gradient(128deg, #3d4166 0%, #1f233c 78%);
	color: #fff;
}
.dw-es__eyebrow {
	margin: 0 0 18px;
	color: var(--es-orange);
	font-size: 11px;
	font-weight: 400;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}
.dw-es h1,
.dw-es h2,
.dw-es h3,
.dw-es p { margin-top: 0; }
.dw-es h1 {
	max-width: 920px;
	margin-bottom: 22px;
	font-size: clamp(40px, 5.2vw, 68px);
	font-weight: 300;
	letter-spacing: -0.045em;
	line-height: 1.05;
	color: #fff;
}
.dw-es h2 {
	margin-bottom: 20px;
	color: var(--es-ink);
	font-size: clamp(30px, 3.6vw, 48px);
	font-weight: 300;
	letter-spacing: -0.04em;
	line-height: 1.1;
}
.dw-es h3 {
	margin-bottom: 10px;
	color: var(--es-ink);
	font-size: 18px;
	font-weight: 500;
	line-height: 1.3;
}
.dw-es p {
	font-size: 16px;
	font-weight: 300;
	line-height: 1.75;
}
.dw-es__lead {
	max-width: 720px;
	font-size: 18px !important;
	line-height: 1.65 !important;
	color: rgba(255, 255, 255, 0.9);
}
.dw-es__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 32px;
}
.dw-es__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding: 12px 22px;
	border: 1px solid var(--es-orange);
	background: var(--es-orange);
	color: #27233a !important;
	font-size: 13px;
	text-decoration: none;
	transition: transform 0.2s ease, background 0.2s ease;
}
.dw-es__button:hover { background: #ff9e40; transform: translateY(-2px); }
.dw-es__button--quiet {
	border-color: rgba(255, 255, 255, 0.55);
	background: transparent;
	color: #fff !important;
}
.dw-es__button--quiet:hover { background: #fff; color: var(--es-dark) !important; }
.dw-es__button--solid {
	border-color: var(--es-orange);
	background: var(--es-orange);
	color: #27233a !important;
}
.dw-es__section { padding: clamp(64px, 8vw, 110px) 0; background: var(--es-paper); }
.dw-es__section--soft { background: var(--es-soft); }
.dw-es__intro { max-width: 720px; margin-bottom: 28px; }
.dw-es__grid {
	display: grid;
	gap: 0;
	border-top: 1px solid var(--es-line);
	border-left: 1px solid var(--es-line);
}
.dw-es__grid--2 { grid-template-columns: repeat(2, 1fr); }
.dw-es__grid--3 { grid-template-columns: repeat(3, 1fr); }
.dw-es__grid article {
	padding: 26px 24px;
	border-right: 1px solid var(--es-line);
	border-bottom: 1px solid var(--es-line);
	background: #fff;
}
.dw-es__grid article p:last-child { margin-bottom: 0; }
.dw-es__steps {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 16px;
}
.dw-es__steps li {
	padding: 0 0 16px 0;
	border-bottom: 1px solid var(--es-line);
	font-size: 16px;
	line-height: 1.65;
}
.dw-es__text-link {
	color: var(--es-ink);
	border-bottom: 1px solid var(--es-orange);
	text-decoration: none;
}
.dw-es__text-link:hover { color: var(--es-orange); }
.dw-es__crumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 36px;
	color: #dfdeeb;
	font-size: 12px;
}
.dw-es__crumbs a { color: #fff; text-decoration: none; }
.dw-es__faq details {
	padding: 18px 0;
	border-bottom: 1px solid var(--es-line);
}
.dw-es__faq summary {
	cursor: pointer;
	color: var(--es-ink);
	font-size: 17px;
	list-style: none;
}
.dw-es__faq summary::-webkit-details-marker { display: none; }
.dw-es__faq p { margin: 12px 0 0; max-width: 800px; }
.dw-es__note {
	padding: 18px 20px;
	border-left: 3px solid var(--es-orange);
	background: #fff;
	margin-bottom: 28px;
}
.dw-es__cta {
	padding: clamp(72px, 9vw, 120px) 0;
	background: var(--es-dark);
	color: #fff;
}
.dw-es__cta h2 { color: #fff; max-width: 720px; }
.dw-es__cta p { color: #e4e3eb; max-width: 640px; }
.dw-es__cta-note { font-size: 13px !important; opacity: 0.85; }
.dw-es__cta .dw-es__button { margin-top: 8px; }

/* Home brief block (outside first viewport) */
.dw-es-home {
	padding: clamp(56px, 7vw, 96px) 0;
}
.dw-es-home__inner {
	padding: clamp(28px, 4vw, 44px);
	background:
		linear-gradient(135deg, rgba(61, 65, 102, 0.06), rgba(242, 140, 40, 0.08)),
		#fff;
	border: 1px solid var(--es-line, rgba(61, 65, 102, 0.16));
}
.dw-es-home .eyebrow {
	margin: 0 0 12px;
	color: var(--es-orange, #f28c28);
	font-size: 11px;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}
.dw-es-home h2 {
	margin: 0 0 14px;
	color: var(--es-ink, #3d4166);
	font-size: clamp(28px, 3.2vw, 40px);
	font-weight: 300;
	letter-spacing: -0.035em;
	line-height: 1.12;
}
.dw-es-home p {
	max-width: 720px;
	margin: 0 0 22px;
	font-size: 16px;
	line-height: 1.7;
	font-weight: 300;
}
.dw-es-home__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

/* Servicios mega: featured Spain card */
.site-header .wp-block-navigation .dw-mega__featured {
	grid-column: 1 / -1;
	list-style: none;
	margin: 0 0 4px;
}
.site-header .wp-block-navigation .dw-mega__featured-link {
	display: flex !important;
	flex-direction: column;
	align-items: flex-start !important;
	gap: 4px;
	padding: 14px 16px !important;
	border: 1px solid rgba(242, 140, 40, 0.35) !important;
	background: linear-gradient(120deg, #fff8f0, #f7f7fa) !important;
	color: var(--violet, #3d4166) !important;
	white-space: normal !important;
}
.site-header .wp-block-navigation .dw-mega__featured-link:hover,
.site-header .wp-block-navigation .dw-mega__featured-link:focus {
	border-color: #f28c28 !important;
	background: #fff !important;
}
.site-header .wp-block-navigation .dw-mega__featured-label {
	font-size: 13px;
	font-weight: 500;
}
.site-header .wp-block-navigation .dw-mega__featured-hint {
	font-size: 12px;
	font-weight: 300;
	opacity: 0.8;
}

@media (max-width: 900px) {
	.dw-es__shell { width: min(calc(100% - 48px), 1100px); }
	.dw-es__grid--2,
	.dw-es__grid--3 { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
	.dw-es__shell { width: calc(100% - 32px); }
	.dw-es__grid--2,
	.dw-es__grid--3 { grid-template-columns: 1fr; }
	.dw-es__actions { display: grid; }
	.dw-es__button { width: 100%; }
	.dw-es-home__actions { display: grid; }
}
@media (prefers-reduced-motion: reduce) {
	.dw-es * { transition: none !important; }
}
