.cl-scroll-nav-shell {
	display: none !important;
}

@media (max-width:780px) {
	.cl-scroll-nav-shell {
		display: block !important;
	}
}

.cl-responsive-bg-mobile {
	display: none !important;
}

.cl-responsive-bg-desktop {
	display: block !important;
}

@media (max-width:780px) {
	.cl-responsive-bg-desktop {
		display: none !important;
	}
	
	.cl-responsive-bg-mobile {
		display: block !important;
	}
}

.cl-side-cover {
	min-height: 100vh !important;
	height: 100vh !important;
	overflow: hidden !important;
}

.admin-bar .cl-side-cover {
	min-height: calc(100vh - 32px) !important;
	height: calc(100vh - 32px) !important;
}

.cl-side-cover .wp-block-cover__image-background {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center center !important;
	transform: scale(1.01);
}

.cl-side-cover .cl-side-bg-media {
	position: absolute !important;
	width: 100% !important;
	height: 100% !important;
	z-index: 0;
}

.cl-side-cover .cl-side-bg-media img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center center !important;
	transform: scale(1.01);
}

.cl-side-cover .wp-block-cover__inner-container {
	height: 100% !important;
	width: 100% !important;
}

.cl-side-ui {
	min-height: 100vh !important;
	box-sizing: border-box !important;
}

.cl-side-nav-custom .cl-side-nav-link {
	position: relative !important;
	display: inline-flex !important;
	overflow: visible !important;
	text-decoration: none !important;
	transition: transform .42s cubic-bezier(.16,1,.3,1), opacity .28s ease, color .28s ease, letter-spacing .28s ease !important;
}

.cl-side-nav-custom .cl-side-nav-link:before,.cl-side-nav-custom .cl-side-nav-link:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -.06em;
	height: 2px;
	pointer-events: none;
	transform-origin: left center;
}

.cl-side-nav-custom .cl-side-nav-link:before {
	width: calc(100% - .08em);
	background: rgba(244,240,232,.78);
	opacity: .2;
	transform: scaleX(.08);
	transition: transform .52s cubic-bezier(.16,1,.3,1), opacity .32s ease;
}

.cl-side-nav-custom .cl-side-nav-link:after {
	width: 44%;
	background: linear-gradient(90deg,rgba(244,240,232,0),rgba(244,240,232,.96),rgba(214,206,194,0));
	opacity: 0;
	transform: translateX(-34%) scaleX(0);
}

.cl-side-nav-custom .cl-side-nav-link:hover,.cl-side-nav-custom .cl-side-nav-link:focus-visible {
	opacity: 1 !important;
	color: #f4f0e8 !important;
	transform: translateX(.18em);
	letter-spacing: .01em !important;
}

.cl-side-nav-custom .cl-side-nav-link:hover:before,.cl-side-nav-custom .cl-side-nav-link:focus-visible:before {
	opacity: .86;
	transform: scaleX(1);
}

.cl-side-nav-custom .cl-side-nav-link:hover:after,.cl-side-nav-custom .cl-side-nav-link:focus-visible:after {
	animation: clSideNavTrace .72s cubic-bezier(.16,1,.3,1) both;
}

@keyframes clSideNavTrace {
	0% {
		opacity: 0;
		transform: translateX(-34%) scaleX(0);
	}
	
	22% {
		opacity: .95;
		transform: translateX(0) scaleX(.58);
	}
	
	100% {
		opacity: 0;
		transform: translateX(132%) scaleX(.18);
	}
}

@media (prefers-reduced-motion:reduce) {
	.cl-side-nav-custom .cl-side-nav-link,.cl-side-nav-custom .cl-side-nav-link:before,.cl-side-nav-custom .cl-side-nav-link:after {
		transition: none !important;
		animation: none !important;
	}
}

@media (max-width:780px) {
	.cl-side-cover,.admin-bar .cl-side-cover {
		position: relative !important;
		height: auto !important;
		min-height: 64svh !important;
	}
	
	.cl-side-ui {
		min-height: 64svh !important;
		padding-top: 24px !important;
		padding-bottom: 36px !important;
	}
	
	.cl-side-nav-custom .cl-side-nav-link {
		font-size: clamp(29px,10vw,43px) !important;
		line-height: .94 !important;
	}
}

.cl-mobile-nav {
	display: none !important;
}

@media (max-width:780px) {
	body {
		padding-top: calc(54px + env(safe-area-inset-top)) !important;
	}
	
	.cl-mobile-nav {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		right: 0 !important;
		z-index: 99999 !important;
		display: flex !important;
		align-items: center !important;
		gap: 0 !important;
		min-height: calc(54px + env(safe-area-inset-top)) !important;
		padding: env(safe-area-inset-top) 8px 0 !important;
		box-sizing: border-box !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
		background: rgba(246,243,237,.94) !important;
		border-bottom: 1px solid rgba(31,29,26,.16) !important;
		box-shadow: 0 14px 38px rgba(31,29,26,.10) !important;
	}
	
	.cl-mobile-nav::-webkit-scrollbar {
		display: none !important;
	}
	
	.cl-mobile-nav .wp-block-navigation__container {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		gap: 0 !important;
		width: 100% !important;
		overflow-x: auto !important;
		overflow-y: hidden !important;
	}
	
	.cl-mobile-nav .wp-block-navigation__container::-webkit-scrollbar {
		display: none !important;
	}
	
	.cl-mobile-nav .wp-block-navigation-item {
		flex: 0 0 auto !important;
		margin: 0 !important;
	}
	
	.cl-mobile-nav a,
	.cl-mobile-nav .wp-block-navigation-item__content {
		flex: 0 0 auto !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		min-height: 44px !important;
		padding: 0 10px !important;
		color: #2f2923 !important;
		font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
		font-size: 11px !important;
		line-height: 1 !important;
		font-weight: 520 !important;
		letter-spacing: .02em !important;
		text-transform: uppercase !important;
		text-decoration: none !important;
		white-space: nowrap !important;
		border-left: 1px solid transparent !important;
		transition: color .18s ease, background-color .18s ease, transform .18s ease !important;
	}
	
	.cl-mobile-nav .wp-block-navigation-item:first-child a,
	.cl-mobile-nav .wp-block-navigation-item:first-child .wp-block-navigation-item__content {
		font-weight: 650 !important;
		padding-left: 12px !important;
	}
	
	.cl-mobile-nav .wp-block-navigation-item+.wp-block-navigation-item a,
	.cl-mobile-nav .wp-block-navigation-item+.wp-block-navigation-item .wp-block-navigation-item__content {
		border-left-color: rgba(31,29,26,.12) !important;
	}
	
	.cl-mobile-nav a:hover,
	.cl-mobile-nav a:focus-visible,
	.cl-mobile-nav a:active,
	.cl-mobile-nav .wp-block-navigation-item__content:hover,
	.cl-mobile-nav .wp-block-navigation-item__content:focus-visible,
	.cl-mobile-nav .wp-block-navigation-item__content:active {
		color: #1f1d1a !important;
		background: rgba(31,29,26,.07) !important;
		transform: translateY(1px) !important;
		outline: none !important;
	}
}

/* Casa Lloseta: fondo animado responsive */
@media (min-width: 781px) {
	.cl-side-cover::before {
		content: "";
		position: absolute !important;
		top: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: 100% !important;
		z-index: 0 !important;
		background-image: url('https://casalloseta.com/wp-content/uploads/2026/07/casa-lloseta-left-background-loop-1280-24fps.webp');
		background-size: cover !important;
		background-position: center center !important;
		background-repeat: no-repeat !important;
		transform: scale(1.08) !important;
		transform-origin: center center !important;
		pointer-events: none !important;
	}
	
	.cl-side-cover .cl-side-bg-media {
		opacity: 0 !important;
	}
	
	.cl-side-cover .wp-block-cover__background {
		position: absolute !important;
		top: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		left: 0 !important;
		z-index: 1 !important;
	}
	
	.cl-side-cover .wp-block-cover__inner-container {
		position: relative !important;
		z-index: 2 !important;
	}
}

@media (min-width: 1600px) {
	.cl-side-cover::before {
		background-image: url('https://casalloseta.com/wp-content/uploads/2026/07/casa-lloseta-left-background-loop-hq.webp');
	}
}

@media (max-width: 780px) {
	.cl-side-cover::before {
		content: none !important;
		display: none !important;
	}
	
	.cl-side-cover .cl-side-bg-media {
		opacity: 1 !important;
		transform: scale(1.08) !important;
		transform-origin: center center !important;
	}
}

/* Casa Lloseta: eliminar huecos del marco */
body .wp-site-blocks {
	padding-top: 0 !important;
}

body .wp-site-blocks > .wp-block-columns:first-of-type,
body .wp-site-blocks > .cl-scroll-nav-shell + .wp-block-columns {
	margin-top: 0 !important;
	margin-block-start: 0 !important;
}

@media (min-width: 781px) {
	body .wp-site-blocks > .cl-scroll-nav-shell {
		display: none !important;
		height: 0 !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow: hidden !important;
		background: transparent !important;
		border: 0 !important;
		box-shadow: none !important;
	}
	
	.cl-side-cover {
		height: 100vh !important;
		min-height: 100vh !important;
		height: 100dvh !important;
		min-height: 100dvh !important;
	}
	
	.admin-bar .cl-side-cover {
		height: calc(100vh - 32px) !important;
		min-height: calc(100vh - 32px) !important;
		height: calc(100dvh - 32px) !important;
		min-height: calc(100dvh - 32px) !important;
	}
}

/* Casa Lloseta: quitar franja inferior izquierda */
.cl-side-cover {
	background: #1f1d1a !important;
}

.cl-side-cover::before {
	transform: scale(1.08) !important;
	transform-origin: center center !important;
}

.cl-side-cover .cl-side-bg-media {
	transform: scale(1.08) !important;
	transform-origin: center center !important;
}

@media (min-width: 781px) {
	.admin-bar .cl-side-cover {
		height: 100vh !important;
		min-height: 100vh !important;
		height: 100dvh !important;
		min-height: 100dvh !important;
	}
	
	.admin-bar .cl-side-ui {
		min-height: 100vh !important;
		min-height: 100dvh !important;
	}
}