/* ITAKYA Theme · Catálogo público de destinos · /el-momento/
 * Alcance aislado. Hero y cierre siguen perteneciendo al blueprint momento.
 */

.itkya-momento-catalog{
	--catalog-bg:#02101d;
	--catalog-gold:#c99a56;
	--catalog-gold-light:#dfb983;
	position:relative;
	z-index:3;
	width:100%;
	padding:64px 0 0;
	background:transparent;
	color:#fff;
	overflow:hidden;
}

.itkya-momento-catalog-inner{
	width:min(1400px,calc(100% - 60px));
	margin:0 auto;
}

.itkya-momento-catalog-section + .itkya-momento-catalog-section{
	margin-top:72px;
}

.itkya-momento-catalog-heading{
	max-width:820px;
	margin:0 0 28px;
}

.itkya-momento-catalog-heading .eyebrow{
	display:block;
	margin:0 0 10px;
	color:var(--catalog-gold-light);
	font:400 13px/1.2 var(--itkya-base-body);
	letter-spacing:.08em;
	text-transform:uppercase;
}

body.itakya-theme-active .itkya-momento-catalog-heading h2{
	margin:0;
	color:#fff;
	font-family:var(--itkya-base-heading);
	font-size:clamp(30px,3vw,44px);
	font-weight:400;
	line-height:1.18;
	letter-spacing:-.02em;
}

.itkya-momento-catalog-heading h2 em,
.itkya-momento-catalog-heading h2 span{
	color:var(--catalog-gold);
	font-style:italic;
}

/* Fondos y capas canónicos, sin superficie propia al iniciar. */
.itkya-momento-catalog-section{
	position:relative;
	background:transparent;
}

body:not(.itkya-editor-active) .itkya-momento-catalog [data-itkya-editor-only]{
	display:none;
}

body:not(.itkya-editor-active) .itkya-momento-catalog [data-itkya-editor-only] + .itkya-momento-catalog-section{
	margin-top:0;
}

.itkya-momento-catalog-section > .itkya-bp-node,
.itkya-momento-catalog-section > .itkya-momento-empty,
.itkya-momento-catalog-section > .itkya-momento-catalog-no-data,
.itkya-momento-catalog-section > .itkya-momento-editor-empty{
	position:relative;
	z-index:8;
}

/* El enlace del cierre debe dejar el título visible bajo la cabecera fija. */
.itkya-momento-catalog #itkya-momento-all-title{
	scroll-margin-top:110px;
}

.itkya-momento-catalog-heading p{
	max-width:700px;
	margin:16px 0 0;
	color:rgba(255,255,255,.78);
	font:300 16px/1.55 var(--itkya-base-body);
}

/* Destacados: mismo lenguaje de las tarjetas públicas de Home. */
.itkya-momento-featured-track{
	display:flex;
	gap:18px;
	width:100%;
	overflow-x:auto;
	overflow-y:hidden;
	padding:0 0 8px;
	scroll-snap-type:x proximity;
	scrollbar-width:none;
}

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

.itkya-destination-card{
	position:relative;
	isolation:isolate;
	min-height:390px;
	overflow:hidden;
	border:0;
	border-radius:14px;
	background:#0b2234 var(--destination-image,none) center/cover no-repeat;
	color:#fff;
}

.itkya-momento-featured-track .itkya-destination-card{
	flex:0 0 clamp(300px,27vw,390px);
	scroll-snap-align:start;
}

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

.itkya-destination-card::after{
	content:"";
	position:absolute;
	inset:0;
	z-index:0;
	background:linear-gradient(180deg,rgba(2,16,29,.12) 0%,rgba(2,16,29,.18) 38%,rgba(2,16,29,.96) 100%);
	pointer-events:none;
}

.itkya-destination-card-top,
.itkya-destination-card-copy{
	position:relative;
	z-index:2;
}

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

.itkya-destination-island{
	display:inline-flex;
	align-items:center;
	gap:8px;
	min-width:0;
	min-height:35px;
	padding:5px 10px 5px 6px;
	border:1px solid rgba(255,255,255,.16);
	border-radius:999px;
	background:rgba(3,17,29,.68);
	backdrop-filter:blur(8px);
	color:#fff;
	font:400 10px/1 var(--itkya-base-body);
}

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

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

.itkya-destination-island-label strong{
	font-weight:500;
	text-transform:uppercase;
}

.itkya-destination-island-label span{
	font-weight:400;
	opacity:.86;
}

.itkya-destination-status{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:29px;
	padding:0 10px;
	border:1px solid rgba(255,255,255,.18);
	border-radius:999px;
	background:rgba(3,17,29,.68);
	color:#fff;
	font:500 9px/1 var(--itkya-base-body);
	letter-spacing:.04em;
	white-space:nowrap;
	backdrop-filter:blur(8px);
}

.itkya-destination-status.is-available{
	border-color:#DFB983;
	background:#DFB983;
	color:#122c3d;
}

.itkya-destination-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;
	text-transform:uppercase;
}

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

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

.itkya-destination-card-cta{
	display:inline-flex;
	align-items:center;
	gap:8px;
	color:var(--catalog-gold-light);
	font:400 13px/1.2 var(--itkya-base-body);
}

.itkya-destination-card:hover .itkya-destination-card-cta,
.itkya-destination-card:focus-within .itkya-destination-card-cta{
	color:#fff;
}

/* Filtros: misma lógica UX que Explorar islas de Experience. */
.itkya-momento-filter-strip{
	display:flex;
	align-items:center;
	gap:10px;
	overflow-x:auto;
	margin:0 0 28px;
	padding:4px 3px 12px;
	scrollbar-width:thin;
	scrollbar-color:rgba(223,185,131,.45) transparent;
	scroll-padding-inline:3px;
}

/* Acabado de los botones compartido con Biblioteca en filters-premium-v001.css. */

.itkya-momento-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:18px;
}

.itkya-momento-grid .itkya-destination-card{
	width:100%;
}

.itkya-momento-empty{
	display:none;
	margin:32px 0 0;
	padding:30px;
	border:1px solid rgba(223,185,131,.18);
	border-radius:12px;
	background:rgba(255,255,255,.025);
	text-align:center;
	color:rgba(255,255,255,.78);
	font:300 15px/1.5 var(--itkya-base-body);
}

.itkya-momento-empty.is-visible{display:block}

.itkya-momento-catalog-no-data{
	padding:42px 30px;
	border:1px solid rgba(223,185,131,.18);
	border-radius:12px;
	background:rgba(255,255,255,.025);
	text-align:center;
}

.itkya-momento-catalog-no-data strong{
	display:block;
	margin-bottom:8px;
	color:#fff;
	font-family:var(--itkya-base-heading);
	font-size:26px;
	font-weight:400;
}

.itkya-momento-catalog-no-data span{
	color:rgba(255,255,255,.68);
	font:300 14px/1.5 var(--itkya-base-body);
}

/* El cierre conserva su blueprint y sus campos. El catálogo aporta un solo
 * espacio de transición, sin sumar su padding al margen editorial antiguo. */
body.itakya-theme-active .itkya-bp-page--momento .itkya-momento-catalog + [data-itkya-section="momento-cierre"]{
	margin-top:64px!important;
	padding-bottom:72px!important;
}

@media (max-width:1024px){
	.itkya-momento-catalog{
		padding:56px 0 0;
	}
	.itkya-momento-catalog-inner{
		width:calc(100% - 60px);
	}
	.itkya-momento-catalog-section + .itkya-momento-catalog-section{
		margin-top:56px;
	}
	.itkya-momento-grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
	.itkya-momento-featured-track .itkya-destination-card{
		flex-basis:min(390px,68vw);
	}
	body.itakya-theme-active .itkya-bp-page--momento .itkya-momento-catalog + [data-itkya-section="momento-cierre"]{
		margin-top:56px!important;
		padding-bottom:56px!important;
	}
}

@media (max-width:767px){
	.itkya-momento-catalog{
		padding:32px 0 0;
	}
	.itkya-momento-catalog-inner{
		width:calc(100% - 30px);
	}
	.itkya-momento-catalog-heading{
		margin-bottom:24px;
	}
	body.itakya-theme-active .itkya-momento-catalog-heading h2{
		font-size:30px;
	}
	.itkya-momento-catalog-heading p{
		font-size:15px;
	}
	.itkya-momento-catalog-section + .itkya-momento-catalog-section{
		margin-top:48px;
	}
	.itkya-momento-grid{
		grid-template-columns:1fr;
		gap:14px;
	}
	body.itakya-theme-active .itkya-bp-page--momento .itkya-momento-catalog + [data-itkya-section="momento-cierre"]{
		margin-top:48px!important;
		padding-bottom:48px!important;
	}
}

@media (max-width:390px){
	.itkya-momento-featured-track{
		gap:12px;
	}
	.itkya-momento-featured-track .itkya-destination-card{
		flex-basis:calc(100vw - 45px);
	}
	.itkya-destination-card,
	.itkya-destination-card-body{
		min-height:350px;
	}
	.itkya-destination-card-body{
		padding:16px;
	}
}
