/* 
Theme Name: Biam Interiors (Hello Elementor Child)
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/


/* ════════════════════════════════════════════════════════════════
 *  Shortcode [biam_proyectos] — Llistat de projectes
 *  Alineat amb el llenguatge visual del Home (Elementor).
 * ════════════════════════════════════════════════════════════════ */

.biam-proyectos {
	--biam-cream: #F3F1EF;
	--biam-maroon: #57252B;
	--biam-maroon-soft: rgba(87, 37, 43, 0.15);

	background: var(--biam-cream);
	color: var(--biam-maroon);
	font-family: 'Instrument Sans', sans-serif;
	font-weight: 400;
}
.biam-proyectos *,
.biam-proyectos *::before,
.biam-proyectos *::after { box-sizing: border-box; }
.biam-proyectos a { color: inherit; text-decoration: none; display: block; }

/* ─── Filtres ─── */
.biam-filters {
	display: flex;
	gap: 12px;
	align-items: center;
	padding: 0 0 28px;
	flex-wrap: wrap;
}
.biam-filter-meta {
	margin-left: auto;
	font-size: 11px;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--biam-maroon);
	opacity: 0.55;
}
.biam-chip {
	font-family: 'Instrument Sans', sans-serif;
	font-size: 15px;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
	padding: 0 0 3px;
	border: none;
	background: transparent !important;
	color: var(--biam-maroon);
	cursor: pointer;
	text-decoration: none;
	position: relative;
	outline: none;
	-webkit-appearance: none;
	appearance: none;
}
.biam-chip::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 1.5px;
	background: var(--biam-maroon);
	transition: width .35s ease;
}
.biam-chip:hover,
.biam-chip.is-active {
	color: var(--biam-maroon) !important;
}
.biam-chip:hover::after,
.biam-chip.is-active::after {
	width: 100%;
}

/* ─── Graella (home i proyectos): 2 columnes ─── */
.biam-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 24px;
}
.biam-card {
	display: flex;
	flex-direction: column;
	transition: opacity .28s ease, transform .28s ease;
}
@media (max-width: 767px) {
	.biam-card-excerpt { font-size: 16px; }
}


/* ─── Estats d'animació del filtre ─── */
.biam-card.is-hidden  { display: none; }
.biam-card.is-exiting {
	opacity: 0 !important;
	transform: translateY(8px) scale(0.97) !important;
	pointer-events: none;
}
.biam-card.is-entering {
	opacity: 0;
	transform: translateY(8px) scale(0.97);
}

.biam-image-wrap {
	position: relative;
	width: 100%;
	aspect-ratio: 3 / 2;
	overflow: hidden;
	background: #d8d2c8;
	margin-bottom: 0;
}
/* Imatge quadrada pel slider [biam_slider_proyectos] */
.biam-image-wrap--square { aspect-ratio: 1 / 1; }

/* Slider [biam_slider_proyectos] */
.biam-slider-wrap .swiper { overflow: hidden; width: 100%; }
.biam-slide { display: flex; flex-direction: column; height: auto; }
.biam-slide a { display: block; color: inherit; text-decoration: none; }
.biam-slide:hover .biam-image { transform: scale(1.18); }
.biam-card-excerpt {
	font-family: var(--e-global-typography-text-font-family, 'Instrument Sans'), sans-serif;
	font-size: var(--e-global-typography-text-font-size, 18px);
	font-weight: var(--e-global-typography-text-font-weight, 400);
	line-height: var(--e-global-typography-text-line-height, 1.4em);
	color: var(--biam-maroon);
	opacity: 0.65;
	margin: 8px 0 0;
}
.biam-image {
	position: absolute;
	inset: 0;
	background-size: cover;
	background-position: center;
	transition: transform 3s cubic-bezier(0.2, 0.6, 0.2, 1);
}
.biam-card:hover .biam-image { transform: scale(1.18); }

/* Badge "En construcción" — overlay sobre la imatge */
.biam-card-status {
	position: absolute;
	top: 14px;
	right: 14px;
	z-index: 2;
	background: rgba(242, 236, 223, 0.92);
	color: var(--biam-maroon);
	font-size: 9.5px;
	font-weight: 700;
	letter-spacing: 1.8px;
	text-transform: uppercase;
	padding: 5px 11px;
	backdrop-filter: blur(4px);
}

/* Overlay rollover — colors corporatius en rotació */
.biam-card-overlay {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	opacity: 0;
	transition: opacity .4s ease;
}
.biam-card:hover .biam-card-overlay { opacity: 1; }

.biam-card:nth-child(4n+1) .biam-card-overlay { background: rgba(153, 113, 111, 0.85); }
.biam-card:nth-child(4n+2) .biam-card-overlay { background: rgba(104,  97,  68, 0.85); }
.biam-card:nth-child(4n+3) .biam-card-overlay { background: rgba(152, 122,  96, 0.85); }
.biam-card:nth-child(4n+4) .biam-card-overlay { background: rgba(170, 117,  86, 0.85); }

/* Title 3 - post (Elementor global typography _id: c001d08) — dins l'overlay */
.biam-card-title {
	display: block;
	font-family: var(--e-global-typography-c001d08-font-family, 'Instrument Sans'), sans-serif;
	font-size: var(--e-global-typography-c001d08-font-size, 25px);
	font-weight: var(--e-global-typography-c001d08-font-weight, 400);
	line-height: var(--e-global-typography-c001d08-line-height, 1.1em);
	color: #fff;
	margin: 0;
	letter-spacing: 0;
	text-align: center;
}
@media (max-width: 1024px) {
	.biam-card-title { font-size: 22px; }
}
@media (max-width: 767px) {
	.biam-card-title { font-size: 18px; }
}

.biam-empty,
.biam-no-results {
	padding: 60px 0;
	text-align: center;
	color: var(--biam-maroon);
	opacity: 0.6;
	font-size: 14px;
	letter-spacing: 0.5px;
}

@media (max-width: 900px) {
	.biam-filters { padding-bottom: 20px; }
	.biam-filter-meta { display: none; }
	.biam-grid { grid-template-columns: 1fr !important; gap: 40px; }
}

/* ════════════════════════════════════════════════════════════════
 *  Fix Elementor — alçada contenidor shortcode
 * ════════════════════════════════════════════════════════════════ */
.e-con > .elementor-widget-shortcode > .elementor-widget-container {
	height: auto !important;
	overflow: visible !important;
}
.e-con > .elementor-widget-shortcode {
	height: auto !important;
	align-self: flex-start !important;
	flex-grow: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
}

/* ════════════════════════════════════════════════════════════════
 *  Cursor personalitzat — SVG follower
 * ════════════════════════════════════════════════════════════════ */
body.biam-custom-cursor,
body.biam-custom-cursor * {
	cursor: none !important;
}
#biam-cursor {
	position: fixed;
	top: 0;
	left: 0;
	width: 40px;
	height: 40px;
	pointer-events: none;
	z-index: 99999;
	will-change: transform;
	transition: opacity .2s ease;
	opacity: 0;
}
#biam-cursor.is-visible {
	opacity: 1;
}
#biam-cursor svg {
	transition: transform .2s ease;
}
#biam-cursor.is-hovering svg {
	transform: scale(1.3);
}
@media (hover: none) {
	#biam-cursor { display: none; }
	body.biam-custom-cursor,
	body.biam-custom-cursor * { cursor: auto !important; }
}
