/* =========================================================
   INICIO · Base 2026 · 0.1.7
   Reconstrucción sin Elementor.
   ========================================================= */

/* Local body fonts: this stylesheet is enqueued only on the public Home.
 * Keep the existing family name to cover header/footer and editorial slots.
 */
@font-face {
	font-family: "Roboto";
	src: url("../fonts/roboto-300.ttf") format("truetype");
	font-style: normal;
	font-weight: 300;
	font-display: swap;
}
@font-face {
	font-family: "Roboto";
	src: url("../fonts/roboto-400.ttf") format("truetype");
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}
@font-face {
	font-family: "Roboto";
	src: url("../fonts/roboto-500.ttf") format("truetype");
	font-style: normal;
	font-weight: 500;
	font-display: swap;
}

.itkya-v017-full-page { margin: 0; }
.itkya-v017-home { background: var(--itkya-base-navy); color: #fff; overflow: hidden; }
.itkya-v017-home em { color: var(--itkya-base-gold); font-style: italic; }
.itkya-v017-home p { color: rgba(255,255,255,.84); }

.itkya-v017-ambient-video {
	position: absolute;
	inset: -2px;
	width: calc(100% + 4px);
	height: calc(100% + 4px);
	object-fit: cover;
	z-index: 0;
}

.itkya-v017-eyebrow,
.itkya-v017-heading .itkya-v017-eyebrow {
	display: block;
	margin: 0 0 15px;
	color: var(--itkya-base-gold-light);
	font: 300 15px/1.2 var(--itkya-base-body);
	letter-spacing: .04em;
	text-transform: uppercase;
}
.itkya-v017-heading h2 {
	margin: 0;
	font-size: clamp(42px, 4.7vw, 70px);
	line-height: 1.05;
	letter-spacing: -.025em;
}
.itkya-v017-heading p {
	max-width: 660px;
	margin: 24px 0 0;
	font-size: 18px;
	line-height: 1.62;
}
.itkya-v017-heading.is-center { text-align: center; }
.itkya-v017-heading.is-center p { margin-inline: auto; }

/* Header sobre el hero, más cercano al Base. */
.itkya-v017-full-page ~ * { box-sizing: border-box; }
body.home.itakya-theme-active .itakya-theme-header { top: 24px; }
body.home.admin-bar.itakya-theme-active .itakya-theme-header { top: 56px; }
body.home.itakya-theme-active .itakya-theme-header-inner {
	width: min(calc(100% - 60px), 1220px);
	min-height: 64px;
	border-color: rgba(255,255,255,.13);
	background: rgba(2,16,29,.42);
	backdrop-filter: blur(16px);
}

/* Hero · 0.1.40 · traducido directamente de elementor-4933-2026-08-17.json. */
.itkya-v017-hero {
	position: relative;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	padding: 150px 0 60px;
	isolation: isolate;
	overflow: hidden;
	background: #02101d center/cover no-repeat;
}

/* Elementor: background_overlay_image + repeat-x + contain + opacity 1. */
.itkya-v017-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
	background-image: var(--itkya-base-mask);
	background-position: center center;
	background-repeat: repeat-x;
	background-size: contain;
	opacity: 1;
	pointer-events: none;
}

/* Elementor: background_overlay_color #1A364E26. */
.itkya-v017-hero-shade {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: #1A364E26;
	pointer-events: none;
}

.itkya-v017-hero-inner {
	position: relative;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: min(100%, 1000px);
	max-width: 1000px;
	padding: 0;
	margin: 0;
	text-align: center;
	gap: 30px;
	animation: itkya-v012-hero-in .75s ease both;
}

.itkya-v017-hero-mark {
	display: block;
	width: 160px;
	max-width: 35vw;
	height: auto;
	margin: 0;
}

.itkya-v017-hero h1 {
	width: 100%;
	margin: 0;
	font-size: 80px;
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: 0;
	text-wrap: balance;
}
.itkya-v017-hero h1 em,
.itkya-v017-hero h1 span {
	color: #c99a56;
	font-style: italic;
}

.itkya-v017-hero > .itkya-v017-ambient-video {
	object-position: center center;
}

/* El JSON conserva _element_custom_width:636, pero no activa ancho custom
   en este widget. Elementor lo representa al ancho disponible del contenedor. */
.itkya-v017-hero-inner > p {
	width: min(100%, 636px);
	max-width: 636px;
	margin: 0;
	color: #fff;
	font-size: 22px;
	font-weight: 300;
	line-height: 1.2;
}
.itkya-v017-hero-inner > p strong {
	font-weight: 300;
	color: #fff;
}

.itkya-v017-actions {
	display: inline-flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	gap: 20px;
	width: max-content;
	max-width: 100%;
	margin: 0;
	padding: 0;
	font-size: 18px;
}

.itkya-v017-hero .itkya-v017-actions .itkya-v017-button {
	min-height: 46px;
	padding: 13px 20px;
}
.itkya-v017-hero .itkya-v017-actions .itkya-v017-button.is-primary {
	background: linear-gradient(90deg, #dfb983 0%, #c99a56 100%);
	border-color: transparent;
}

.itkya-v017-community-proof {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin: 20px 0 0;
	padding: 0;
}
.itkya-v017-community-badge {
	display: block;
	position: relative;
	z-index: 4;
	width: 214px;
	max-width: min(214px, 70vw);
	min-height: 46px;
	height: auto;
	object-fit: contain;
}
.itkya-v017-community-note {
	display: block;
	width: auto;
	max-width: 636px;
	margin: 0;
	color: #fff;
	font: 300 18px/1.5 var(--itkya-base-body);
}
.itkya-v017-community-note > span {
	color: #c99a56;
}

/* Published Home content: retain editor slots without showing the retired CTA/badge. */
.itkya-v017-home .itkya-v017-actions [data-itkya-runtime-key="home.hero.secondary"],
.itkya-v017-home .itkya-v017-community-badge {
	display: none;
}

@keyframes itkya-v012-hero-in {
	from { opacity: 0; transform: translateY(10px); }
	to { opacity: 1; transform: translateY(0); }
}

/* Home · mapa existente de ITAKYA MAP. Theme solo reserva su sección. */
.itkya-home-map-section {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
	background: #02101d;
	overflow: hidden;
}

.itkya-home-map-section > .itkya-map {
	width: min(1200px, calc(100% - 60px));
	max-width: 1200px;
	margin-inline: auto;
}

/* Home · destinos destacados. Los datos proceden de CORE + Viajes. */
.itkya-home-featured-destinations {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 100%;
	padding: 88px 0 104px;
	background: #02101d;
	overflow: hidden;
}

.itkya-home-featured-head {
	width: min(1400px, calc(100% - 60px));
	margin: 0 auto 34px;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 24px;
}

.itkya-home-featured-head h2 {
	margin: 0;
	color: #fff;
	font-family: var(--itkya-base-heading);
	font-size: clamp(42px, 4vw, 64px);
	font-weight: 400;
	line-height: 1.05;
}

.itkya-home-featured-empty {
	width: min(1400px, calc(100% - 60px));
	margin: 0 auto;
	padding: 28px 30px;
	border: 1px solid rgba(223,185,131,.2);
	border-radius: 12px;
	background: rgba(255,255,255,.025);
	text-align: center;
}

.itkya-home-featured-empty strong,
.itkya-home-featured-empty span {
	display: block;
}

.itkya-home-featured-empty strong {
	color: #fff;
	font-family: var(--itkya-base-heading);
	font-size: 24px;
	font-weight: 400;
}

.itkya-home-featured-empty span {
	margin-top: 6px;
	color: rgba(255,255,255,.65);
	font: 300 14px/1.5 var(--itkya-base-body);
}

.itkya-home-featured-controls {
	display: flex;
	align-items: center;
	gap: 10px;
	flex: 0 0 auto;
}

.itkya-home-featured-controls button {
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid rgba(223,185,131,.48);
	border-radius: 50%;
	background: rgba(2,16,29,.72);
	color: #dfb983;
	font: 400 20px/1 var(--itkya-base-body);
	cursor: pointer;
	transition: background-color .2s ease, border-color .2s ease, color .2s ease, opacity .2s ease;
}

.itkya-home-featured-controls button:hover,
.itkya-home-featured-controls button:focus-visible {
	border-color: #dfb983;
	background: rgba(201,154,86,.12);
	color: #fff;
}

.itkya-home-featured-controls button:disabled {
	opacity: .32;
	cursor: default;
}

.itkya-home-featured-track {
	display: flex;
	gap: 18px;
	width: 100%;
	overflow-x: auto;
	overflow-y: hidden;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	overscroll-behavior-inline: contain;
	padding: 0 max(30px, calc((100vw - 1400px) / 2));
	scroll-padding-inline: max(30px, calc((100vw - 1400px) / 2));
	-ms-overflow-style: none;
	scrollbar-width: none;
}

.itkya-home-featured-track::-webkit-scrollbar {
	display: none;
}

.itkya-home-featured-card {
	position: relative;
	flex: 0 0 clamp(300px, 27vw, 390px);
	min-height: 390px;
	border: 0;
	border-radius: 14px;
	background-color: #0b2234;
	background-image: var(--itkya-featured-image, none);
	background-position: center;
	background-size: cover;
	overflow: hidden;
	scroll-snap-align: start;
}

.itkya-home-featured-card-body {
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	min-height: 390px;
	padding: 18px;
	color: #fff;
	text-decoration: none;
}

.itkya-home-featured-card-shade {
	position: absolute;
	inset: 0;
	z-index: 0;
	background: linear-gradient(180deg, rgba(2,16,29,.15) 0%, rgba(2,16,29,.22) 42%, rgba(2,16,29,.95) 100%);
	pointer-events: none;
}

.itkya-home-featured-card-top,
.itkya-home-featured-card-copy {
	position: relative;
	z-index: 1;
}

.itkya-home-featured-card-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.itkya-home-featured-island,
.itkya-home-featured-status {
	display: inline-flex;
	align-items: center;
	min-height: 35px;
	border: 1px solid rgba(255,255,255,.16);
	border-radius: 999px;
	background: rgba(3,17,29,.62);
	backdrop-filter: blur(8px);
	color: #fff;
	font: 400 10px/1 var(--itkya-base-body);
}

.itkya-home-featured-island {
	gap: 8px;
	padding: 5px 10px 5px 6px;
	min-width: 0;
}

.itkya-home-featured-island img {
	width: 25px;
	height: 25px;
	flex: 0 0 25px;
	object-fit: contain;
}

.itkya-home-featured-island-identity {
	display: inline-flex;
	align-items: baseline;
	min-width: 0;
	white-space: nowrap;
}

.itkya-home-featured-island-identity strong {
	font-weight: 500;
}

.itkya-home-featured-island-identity > span {
	font-weight: 400;
	opacity: .86;
}

.itkya-home-featured-status {
	min-height: 29px;
	padding: 0 10px;
	font-size: 9px;
	font-weight: 500;
	letter-spacing: .04em;
}

.itkya-home-featured-status.is-available {
	border-color: rgba(201,154,86,.55);
	background: rgba(201,154,86,.88);
	color: #122c3d;
}

.itkya-home-featured-card-copy h3 {
	margin: 0 0 8px;
	color: #fff;
	font-family: var(--itkya-base-heading);
	font-size: clamp(29px, 2.4vw, 38px);
	font-weight: 400;
	line-height: 1.04;
	letter-spacing: .01em;
}

.itkya-home-featured-card-copy p {
	max-width: 48ch;
	margin: 0;
	color: rgba(255,255,255,.88);
	font: 300 13px/1.52 var(--itkya-base-body);
}

.itkya-home-featured-action {
	margin-top: 18px;
	padding-top: 16px;
	border-top: 1px solid rgba(255,255,255,.16);
}

.itkya-home-featured-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	color: #dfb983;
	font: 400 13px/1.2 var(--itkya-base-body);
}

.itkya-home-featured-card:hover .itkya-home-featured-link,
.itkya-home-featured-card:focus-within .itkya-home-featured-link {
	color: #fff;
}

@media (max-width: 1024px) {
	.itkya-home-map-section > .itkya-map {
		width: calc(100% - 60px);
	}

	.itkya-home-featured-destinations {
		padding: 72px 0 86px;
	}

	.itkya-home-featured-head {
		width: calc(100% - 60px);
	}

	.itkya-home-featured-track {
		padding-inline: 30px;
		scroll-padding-inline: 30px;
	}

	.itkya-home-featured-card {
		flex-basis: min(390px, 68vw);
	}
}

@media (max-width: 390px) {
	.itkya-home-map-section > .itkya-map {
		width: calc(100% - 30px);
	}

	.itkya-home-featured-empty {
		width: calc(100% - 30px);
		padding: 22px 18px;
	}

	.itkya-home-featured-destinations {
		padding: 56px 0 68px;
	}

	.itkya-home-featured-head {
		width: calc(100% - 30px);
		margin-bottom: 24px;
		align-items: center;
	}

	.itkya-home-featured-head h2 {
		font-size: 38px;
	}

	.itkya-home-featured-controls button {
		width: 40px;
		height: 40px;
	}

	.itkya-home-featured-track {
		gap: 12px;
		padding-inline: 15px;
		scroll-padding-inline: 15px;
	}

	.itkya-home-featured-card,
	.itkya-home-featured-card-body {
		min-height: 330px;
	}

	.itkya-home-featured-card {
		flex-basis: calc(100vw - 45px);
	}

	.itkya-home-featured-card-body {
		padding: 16px;
	}
}

/* Cómo funciona · 0.1.41 · traducido del pegado directo de Elementor. */
.itkya-v041-how {
	position: relative;
	z-index: 1;
	width: 100%;
	max-width: 100%;
	margin: 40px 0 80px;
	padding: 0;
	background: #02101d;
	overflow: hidden;
}
.itkya-v041-how-layout {
	width: min(1920px, 100%);
	max-width: 100%;
	margin: 0 auto;
	padding: 0;
	display: flex;
	flex-direction: row;
	gap: 0;
	justify-content: center;
	align-items: center;
}
.itkya-v041-how-copy-shell {
	flex: 1 1 50%;
	min-width: 0;
	display: flex;
	justify-content: flex-end;
	padding: 0;
}
.itkya-v041-how-copy {
	width: 100%;
	max-width: 700px;
	padding: 0 0 0 15px;
	color: #fff;
	font: 300 18px/1.45 var(--itkya-base-body);
}
.itkya-v041-how-eyebrow {
	display: block;
	margin: 0;
	color: #dfb983;
	font: 400 16px/1.2 var(--itkya-base-body);
	letter-spacing: 1px;
	text-transform: uppercase;
}
.itkya-v041-how-copy h2 {
	margin: 0;
	color: #fff;
	font-family: var(--itkya-base-heading);
	font-size: 60px;
	font-weight: 300;
	line-height: 1.2;
}
.itkya-v041-how-copy > p {
	margin: 20px 0 40px;
	color: #fff;
	font: 300 18px/1.45 var(--itkya-base-body);
}
.itkya-v041-how-copy > .itkya-v017-button { margin: 0; }

.itkya-v041-how-carousel-shell {
	position: relative;
	flex: 1 1 50%;
	min-width: 0;
	max-width: 100%;
	align-self: stretch;
	padding: 0;
	overflow: hidden;
}
.itakya-retorno-tres {
	position: relative;
	display: flex;
	flex-direction: row;
	gap: 10px;
	width: 100%;
	padding: 0;
	overflow: hidden !important;
	cursor: grab;
	user-select: none;
	-webkit-user-select: none;
	touch-action: pan-y;
}
.itakya-retorno-tres.is-dragging { cursor: grabbing; }
.itakya-retorno-tres-card {
	position: relative;
	flex: 0 0 auto;
	width: 530px;
	min-width: 530px;
	height: 600px;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	gap: 10px;
	justify-content: flex-end;
	align-items: flex-start;
	padding: 30px;
	border-radius: 12px;
	overflow: hidden;
	color: #fff;
	background-color: #0e1e2b;
	background-image: linear-gradient(180deg, rgba(14,30,43,0) 50%, #0e1e2b 83%), var(--itkya-step-image);
	background-size: cover, cover;
	background-position: center center, bottom center;
	background-repeat: no-repeat, no-repeat;
	transform-origin: center center;
	will-change: translate, scale;
}
.itakya-retorno-tres-card h2 {
	width: 334px;
	max-width: 100%;
	margin: 0;
	color: #fff;
	font-family: var(--itkya-base-heading);
	font-size: 60px;
	font-weight: 300;
	line-height: 1.2;
}
.itakya-retorno-tres-card hr {
	width: 40px;
	height: 1px;
	margin: 0;
	padding: 0;
	border: 0;
	background: #c99a56;
}
.itakya-retorno-tres-card p {
	width: 334px;
	max-width: 100%;
	margin: 0;
	color: #fff;
	font: 300 18px/1.45 var(--itkya-base-body);
}
.itakya-retorno-tres img { -webkit-user-drag: none; user-drag: none; }
.itkya-v041-carousel-fade {
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 4;
	pointer-events: none;
}
.itkya-v041-carousel-fade.is-left {
	left: 0;
	width: 140px;
	background: linear-gradient(90deg, #02101d 0%, rgba(2,15,28,0) 100%);
}
.itkya-v041-carousel-fade.is-right {
	right: 0;
	width: 300px;
	background: linear-gradient(90deg, rgba(2,15,28,0) 0%, #02101d 100%);
}

@media (prefers-reduced-motion: reduce) {
	.itakya-retorno-tres-card { will-change: auto; }
}

/* Archipiélago · 0.1.43 · misma sección 0.1.42, sin la línea dorada. */
.itkya-v042-archipelago {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	box-sizing: border-box;
	width: 100%;
	min-height: 600px;
	margin: 0;
	padding: 0 15px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background: #02101d;
}
.itkya-v042-archipelago::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background-image: var(--itkya-archipelago-overlay);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	opacity: .6;
	pointer-events: none;
}
.itkya-v042-archipelago > .itkya-v017-ambient-video {
	z-index: 0;
	object-position: center center;
}
.itkya-v042-archipelago-copy {
	position: relative;
	z-index: 2;
	width: 100%;
	min-width: 100%;
	margin: 120px 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: #fff;
	text-align: center;
}
.itkya-v042-archipelago-eyebrow {
	display: block;
	margin: 0;
	padding: 0;
	color: #dfb983;
	font: 400 16px/1.2 var(--itkya-base-body);
	letter-spacing: 1px;
	text-transform: uppercase;
}
.itkya-v042-archipelago-copy h2 {
	width: min(1100px, 100%);
	max-width: 100%;
	margin: 0;
	padding: 0;
	color: #fff;
	font-family: var(--itkya-base-heading);
	font-size: 60px;
	font-weight: 400;
	line-height: 1.2;
	text-align: center;
}
.itkya-v042-archipelago-copy p {
	width: min(1100px, 100%);
	max-width: 100%;
	margin: 40px 0 0;
	padding: 0;
	color: #fff;
	font: 300 18px/1.5 var(--itkya-base-body);
	text-align: center;
}
.itkya-v042-archipelago-copy > .itkya-v017-button { margin-top: 40px; }

/* Comunidad · pegado Elementor 2026-08-17. */
.itkya-v043-community {
	position: relative;
	z-index: 1;
	width: 100%;
	margin: 80px 0 0;
	padding: 0;
	background: #02101d;
}
.itkya-v043-community-layout {
	width: 100%;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: row;
	gap: 70px;
	justify-content: center;
	align-items: center;
}
.itkya-v043-community-copy {
	box-sizing: border-box;
	width: 600px;
	max-width: 100%;
	padding: 0 0 0 15px;
	display: flex;
	flex-direction: column;
	color: #fff;
	font-family: var(--itkya-base-body);
	font-size: 18px;
	font-weight: 300;
}
.itkya-v043-community-copy > .itkya-v017-eyebrow {
	margin: 0;
	padding: 0;
	color: #dfb983;
	font-family: var(--itkya-base-body);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.2;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.itkya-v043-community-copy h2 {
	margin: 0;
	padding: 0;
	color: #fff;
	font-family: var(--itkya-base-heading);
	font-size: 60px;
	font-weight: 400;
	line-height: 1.2;
}
.itkya-v043-community-copy h2 span,
.itkya-v043-community-copy h2 em {
	color: #c99a56;
	font-style: normal;
}
.itkya-v043-community-copy > p {
	margin: 40px 0;
	padding: 0;
	color: #fff;
	font: 300 18px/1.5 var(--itkya-base-body);
}
.itkya-v043-community-media {
	position: relative;
	box-sizing: border-box;
	width: 700px;
	max-width: 100%;
	height: 524px;
	min-height: 524px;
	max-height: 524px;
	margin: 0;
	padding: 0;
	display: flex;
	flex: 0 0 700px;
	flex-direction: column;
	overflow: hidden;
	border-radius: 12px;
}
.itkya-v043-community-media > .itkya-v017-ambient-video {
	display: block;
	inset: -12px;
	width: calc(100% + 24px);
	height: calc(100% + 24px);
	min-height: 0;
	max-width: none !important;
	max-height: none !important;
	object-fit: cover;
	border-radius: 12px;
}

/* CTA final · pegado Elementor 2026-08-17. */
.itkya-v043-closing {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	box-sizing: border-box;
	z-index: 0;
	width: 100%;
	min-height: 846px;
	margin: -80px 0 -240px;
	padding: 200px 0 0;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	background: #02101d;
}
.itkya-v043-closing > .itkya-v017-ambient-video { z-index: 0; }
.itkya-v043-closing-shade {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: #02101d99;
	pointer-events: none;
}
.itkya-v043-closing::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 2;
	background-image: var(--itkya-base-mask);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center center;
	opacity: 1;
	pointer-events: none;
}
.itkya-v043-closing-copy {
	position: relative;
	z-index: 3;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	gap: 20px;
	text-align: center;
}
.itkya-v043-closing-copy h2 {
	margin: 0;
	padding: 0;
	color: #fff;
	font-family: var(--itkya-base-heading);
	font-size: 60px;
	font-weight: 400;
	line-height: 1.1;
	text-align: center;
}
.itkya-v043-closing-copy h2 em { color: #c99a56; font-style: italic; }
.itkya-v043-closing-copy > p {
	margin: 0;
	padding: 0;
	color: #fff;
	font: 300 18px/1.1 var(--itkya-base-body);
	text-align: center;
}
.itkya-v043-closing-copy > .itkya-v017-button { margin: 0; }

/* Frase sobre imagen · pegado Elementor 2026-08-17. */
.itkya-v043-memory {
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	width: 100%;
	height: 638px;
	min-width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0 15px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	border-radius: 12px;
}
.itkya-v043-memory-inner {
	box-sizing: border-box;
	width: 1400px;
	height: 638px;
	max-width: 100%;
	margin: 0;
	padding: 50px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	border-radius: 12px;
	background: var(--itkya-memory-image) center center / cover no-repeat;
}
.itkya-v043-memory-card {
	box-sizing: border-box;
	width: 560px;
	max-width: 100%;
	margin: 0 0 100px;
	padding: 20px;
	border-radius: 12px;
	background: #02101db3;
}
.itkya-v043-memory-card h2 {
	margin: 0;
	padding: 0;
	color: #fff;
	font-family: var(--itkya-base-heading);
	font-size: 40px;
	font-weight: 400;
	line-height: 1.1;
	text-align: left;
}
.itkya-v043-memory-card h2 em { color: #c99a56; font-style: italic; }

/* Cierre mar: se mantiene, pero el logo ya no lleva opacidad artificial. */
.itkya-v017-closing,
.itkya-v017-sea { position: relative; isolation: isolate; overflow: hidden; }
.itkya-v017-sea { min-height: 80vh; margin: -120px 0 -120px; display: grid; place-items: center; }
.itkya-v017-sea::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background-image: var(--itkya-sea-overlay);
	background-size: contain;
	background-repeat: repeat-x;
	background-position: center;
	opacity: .9;
}
.itkya-v017-sea-shade { position: absolute; inset: 0; z-index: 1; background: rgba(26,54,78,.45); }
.itkya-v017-sea-inner { position: relative; z-index: 2; display: grid; place-items: center; padding: 260px 20px; }
.itkya-v017-sea-inner img { width: min(420px,65vw); opacity: 1; }

/* Footer acompasado con Base. */
body.home.itakya-theme-active .itakya-theme-footer { position: relative; z-index: 5; background: #02101d; }

@media (max-width: 1180px) {
}

@media (max-width: 1024px) and (min-width: 821px) {
	.itkya-v017-hero h1 { font-size: 60px; }
}

@media (max-width: 820px) {
	body.home.itakya-theme-active .itakya-theme-header-inner { width: min(calc(100% - 30px), 720px); }
	.itkya-v017-hero { padding: 80px 0 0; }
	.itkya-v017-hero-inner { width: 100%; max-width: 1000px; gap: 20px; margin: 50px 0 0; padding: 20px; box-sizing: border-box; }
	.itkya-v017-hero-mark { width: 35%; max-width: 160px; margin: 0 0 10px; }
	.itkya-v017-hero h1 { margin: 0; font-size: 2.7em; line-height: 1.1; }
	.itkya-v017-hero-inner > p { width: min(100%, 636px); max-width: 636px; margin: 0; font-size: 16px; line-height: 1.2; }
	/* Excepción aprobada ITAKYA: ambos CTA permanecen en una sola fila en móvil. */
	.itkya-v017-actions { flex-direction: row; flex-wrap: nowrap; align-items: center; justify-content: center; gap: 20px; width: 100%; margin: 0; }
	.itkya-v017-actions .itkya-v017-button { min-height: 46px; font-size: 16px; }
	.itkya-v017-community-proof { margin: 0; }
	.itkya-v017-community-note { font-size: 14px; }
	.itkya-v017-section { padding: 70px 0; }
	.itkya-v017-heading h2 { font-size: clamp(38px,9vw,52px); }
	.itkya-v017-heading p { font-size: 16px; }
	.itkya-v017-sea { min-height: 65vh; margin-top: -70px; }
	.itkya-v017-sea-inner { padding: 190px 10px; }
}



@media (max-width: 1024px) {
	.itkya-v042-archipelago-copy h2,
	.itkya-v042-archipelago-copy p {
		padding-left: 15px;
		padding-right: 15px;
		box-sizing: border-box;
	}
}

@media (max-width: 820px) {
	.itkya-v042-archipelago {
		min-height: 500px;
	}
	.itkya-v042-archipelago-copy {
		margin: 60px 0;
	}
	.itkya-v042-archipelago-eyebrow {
		font-size: 13px;
	}
	.itkya-v042-archipelago-copy h2 {
		font-size: 9vw;
		line-height: 1.2;
	}
	.itkya-v042-archipelago-copy p {
		font-size: 16px;
		font-weight: 300;
	}
}


@media (max-width: 1024px) {
	.itkya-v041-how-layout {
		flex-direction: column;
		gap: 40px;
		align-items: center;
	}
	.itkya-v041-how-copy-shell,
	.itkya-v041-how-carousel-shell {
		width: 100%;
		flex: 0 0 auto;
	}
	.itkya-v041-how-copy-shell { justify-content: center; }
	.itkya-v041-how-copy {
		width: 100%;
		max-width: 100%;
		padding: 0 15px;
		text-align: center;
	}
	.itkya-v041-how-carousel-shell { align-self: auto; }
	.itkya-v041-carousel-fade.is-left { width: 50px; }
	.itkya-v041-carousel-fade.is-right { width: 100px; }
}

@media (max-width: 820px) {
	.itkya-v041-how { margin: 40px 0 60px; }
	.itkya-v041-how-eyebrow { font-size: 13px; }
	.itkya-v041-how-copy h2 { font-size: 9vw; line-height: 1.2; }
	.itkya-v041-how-copy > p { margin-top: 20px; font-size: 18px; }
	.itakya-retorno-tres { gap: 0; }
	.itakya-retorno-tres-card {
		width: 320px;
		min-width: 320px;
		max-width: 350px;
		height: 380px;
		padding: 20px;
		margin-right: 10px;
		text-align: left;
	}
	.itakya-retorno-tres-card h2 { font-size: 8.5vw; }
	.itkya-v041-carousel-fade.is-left {
		width: 50px;
		background: linear-gradient(90deg, rgba(2,15,28,.30) 0%, rgba(2,15,28,0) 100%);
	}
	.itkya-v041-carousel-fade.is-right {
		width: 30px;
		background: linear-gradient(90deg, rgba(2,15,28,0) 0%, rgba(2,15,28,.20) 100%);
	}
}

@media (max-width: 520px) {
	/* Los dos CTA del Hero permanecen siempre en una sola fila. */
	.itkya-v017-hero .itkya-v017-actions { gap: 8px; padding-inline: 4px; }
	.itkya-v017-hero .itkya-v017-actions .itkya-v017-button {
		width: auto;
		max-width: none;
		min-width: 0;
		min-height: 42px;
		padding: 11px 12px;
		gap: 7px;
		font-size: clamp(11.5px, 3.35vw, 14px);
		white-space: nowrap;
	}
	.itkya-v017-hero .itkya-v017-actions .itkya-v017-button-icon {
		width: 14px;
		height: 14px;
		flex-basis: 14px;
	}
}

/* 0.1.30 · Fondos multimedia responsive del editor simplificado. */
.itkya-responsive-media--tablet,
.itkya-responsive-media--mobile {
	display: none !important;
}

@media (max-width: 1024px) {
	[data-itkya-media-tablet="1"] > .itkya-responsive-media--desktop {
		display: none !important;
	}
	[data-itkya-media-tablet="1"] > .itkya-responsive-media--tablet {
		display: block !important;
	}
}

@media (max-width: 767px) {
	[data-itkya-media-mobile="1"] > .itkya-responsive-media--desktop,
	[data-itkya-media-mobile="1"] > .itkya-responsive-media--tablet {
		display: none !important;
	}
	[data-itkya-media-mobile="1"] > .itkya-responsive-media--mobile {
		display: block !important;
	}
}




/* 0.1.41 · La imagen de comunidad debe poder seleccionarse directamente en Editar ITAKYA. */
body.itkya-editor-active .itkya-v017-community-badge[data-itkya-edit-key="home.hero.community_badge"] {
	pointer-events: auto !important;
	cursor: pointer !important;
}

/* Responsive de las tres secciones trasladadas desde Elementor. */
@media (max-width: 1024px) {
	.itkya-v043-community-layout { flex-direction: column; gap: 40px; }
	.itkya-v043-community-copy { width: 100%; max-width: 100%; padding: 0 15px; text-align: center; }
	.itkya-v043-community-media { height: 400px; min-height: 400px; max-height: 400px; flex-basis: 400px; }
	.itkya-v043-community-media > .itkya-v017-ambient-video { height: calc(100% + 24px); }
	.itkya-v043-closing { padding: 200px 15px 0; }
	.itkya-v043-closing-copy h2 { font-size: 60px; }
}

@media (max-width: 820px) {
	.itkya-v043-community { margin-top: 60px; }
	.itkya-v043-community-copy > .itkya-v017-eyebrow { font-size: 13px; }
	.itkya-v043-community-copy h2 { font-size: 9vw; line-height: 1.2; }
	.itkya-v043-community-copy > p { margin: 20px 0 0; font-size: 16px; font-weight: 300; }
	.itkya-v043-community-media { width: 100%; height: 300px; min-height: 300px; max-height: 300px; flex-basis: 300px; padding: 0 10px; border-radius: 12px; }
	.itkya-v043-community-media > .itkya-v017-ambient-video { height: calc(100% + 24px); }

	.itkya-v043-closing { min-height: 400px; margin: 0; padding: 0 15px; justify-content: center; }
	.itkya-v043-closing-copy h2 { font-size: 9vw; line-height: 1.1; }
	.itkya-v043-closing-copy > p { font-size: 18px; }

	.itkya-v043-memory { height: 420px; padding: 0 10px; }
	.itkya-v043-memory-inner { height: 420px; padding: 60px 80px 60px 10px; justify-content: flex-start; background: var(--itkya-memory-image) center center / cover no-repeat; }
	.itkya-v043-memory-card { width: min(509px, 100%); margin: 0; padding: 10px; }
	.itkya-v043-memory-card h2 { font-size: 2.6em; line-height: 1.1; }
}
