/**
 * Reference (/reference/) — izvedeni projekti
 * Prefix: lm-references-
 * Tags/chips: border-radius 6px (--lm-surface-tag-radius). Pill (999px) only for .laminam-btn / search / filter.
 */

/* ── 1. Tokens + page shell ───────────────────────────────────────────── */

body.lm-surface-references-page,
.lm-references-page {
	--lm-surface-tag-radius: 6px;
	--lm-content-max: 1440px;
	--lm-ref-bg: #faf9f7;
	--lm-ref-surface: #ffffff;
	--lm-ref-ink: #002a3a;
	--lm-ref-muted: #626b6d;
	--lm-ref-accent: #4a8394;
	--lm-ref-border: rgba(0, 42, 58, 0.1);
	--lm-ref-border-soft: rgba(0, 42, 58, 0.07);
	--lm-ref-panel: #eef4f6;
	--lm-ref-photo-w: 416px;
	--lm-ref-gallery-gap: 12px;
	--lm-ref-gallery-card: var(--lm-ref-photo-w);
}

body.lm-surface-references-page {
	--lm-page-padding-x: 40px;
	--lm-page-padding-y: 40px;
	background: var(--lm-ref-bg, #faf9f7);
	overflow-x: clip;
}

@media (max-width: 1120px) {
	body.lm-surface-references-page {
		--lm-page-padding-x: 20px;
		--lm-page-padding-y: 24px;
	}
}

@media (max-width: 767px) {
	body.lm-surface-references-page {
		--lm-page-padding-x: 16px;
		--lm-page-padding-y: 16px;
	}
}

body.lm-surface-references-page .site-content,
body.lm-surface-references-page #content,
body.lm-surface-references-page .content-area,
body.lm-surface-references-page #primary,
body.lm-surface-references-page .site-main,
body.lm-surface-references-page .page-content,
body.lm-surface-references-page .entry-content,
body.lm-surface-references-page article.page,
body.lm-surface-references-page .hentry {
	max-width: none !important;
	width: 100% !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	box-sizing: border-box;
}

/* Flatten Elementor shortcode chrome so shell padding matches mockup. */
body.lm-surface-references-page main .elementor,
body.lm-surface-references-page main .elementor-section,
body.lm-surface-references-page main .elementor-container,
body.lm-surface-references-page main .elementor-column,
body.lm-surface-references-page main .elementor-column-wrap,
body.lm-surface-references-page main .elementor-widget-wrap,
body.lm-surface-references-page main .e-con,
body.lm-surface-references-page main .e-con-inner,
body.lm-surface-references-page main .elementor-widget,
body.lm-surface-references-page main .elementor-widget-container,
body.lm-surface-references-page main .elementor-widget-shortcode {
	max-width: none !important;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	--padding-left: 0px !important;
	--padding-right: 0px !important;
	--padding-inline-start: 0px !important;
	--padding-inline-end: 0px !important;
	--container-default-padding-left: 0px !important;
	--container-default-padding-right: 0px !important;
}

body.lm-surface-references-page main .e-con,
body.lm-surface-references-page main .e-con-inner,
body.lm-surface-references-page main .elementor-widget,
body.lm-surface-references-page main .elementor-widget-container,
body.lm-surface-references-page main .elementor-widget-shortcode {
	display: flex !important;
	flex-direction: column !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	--padding-top: 0px !important;
	--padding-bottom: 0px !important;
	--padding-block-start: 0px !important;
	--padding-block-end: 0px !important;
	--container-default-padding-top: 0px !important;
	--container-default-padding-bottom: 0px !important;
	--widgets-spacing: 0px !important;
	--row-gap: 0px !important;
	gap: 0 !important;
}

body.lm-surface-references-page .page-header {
	display: none;
}

body.lm-surface-references-page .lm-surface-page-shell.lm-references-page,
body.lm-surface-references-page .lm-surface-page-shell {
	width: 100% !important;
	max-width: var(--lm-content-max, 1440px) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: var(--lm-page-padding-x, 40px) !important;
	padding-right: var(--lm-page-padding-x, 40px) !important;
	padding-top: var(--lm-page-padding-y, 40px) !important;
	padding-bottom: clamp(2.5rem, 5vw, 4.5rem) !important;
	box-sizing: border-box !important;
}

.lm-references-page {
	display: flex;
	flex-direction: column;
	gap: 44px;
	font-family: "Work Sans", Arial, sans-serif;
	font-size: 14px;
	line-height: 1.6;
	color: #2d3436;
}

/*
 * Kill Elementor kit chrome on this page:
 * - kit h1/h2/h3 = IBM Plex 64/48/28
 * - kit button = navy filled pill + 13px 24px padding
 * - kit p = margin-block-end 12px
 */
body.elementor-kit-6.lm-surface-references-page .lm-references-page :is(h1, h2, h3),
body.lm-surface-references-page .lm-references-page :is(h1, h2, h3),
.lm-references-page :is(h1, h2, h3) {
	margin: 0 !important;
	margin-block: 0 !important;
	font-family: "Bricolage Grotesque", "Work Sans", Arial, sans-serif !important;
	font-weight: 500 !important;
	color: var(--lm-ref-ink) !important;
	text-transform: none !important;
	letter-spacing: normal;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page p,
body.lm-surface-references-page .lm-references-page p,
.lm-references-page p {
	margin: 0 !important;
	margin-block: 0 !important;
}

.lm-references-page ul,
.lm-references-page ol { margin: 0; padding: 0; list-style: none; }
.lm-references-page dl,
.lm-references-page dd { margin: 0; }
.lm-references-page img { display: block; max-width: 100%; height: auto; }

/*
 * Stats is a <ul> — the reset above (0,1,1) beats bare .lm-references-stats (0,1,0)
 * and collapses padding-top against the border. Lock mockup spacing.
 */
body.elementor-kit-6.lm-surface-references-page .lm-references-page ul.lm-references-stats,
body.lm-surface-references-page .lm-references-page ul.lm-references-stats,
.lm-references-page ul.lm-references-stats {
	list-style: none !important;
	margin: 14px 0 0 !important;
	padding: 28px 0 0 !important;
	border-top: 1px solid var(--lm-ref-border) !important;
	display: flex !important;
	gap: 72px !important;
	max-width: 700px;
}

/* H1 / section titles — lock mockup sizes over kit */
body.elementor-kit-6.lm-surface-references-page .lm-references-hero__title,
.lm-references-page .lm-references-hero__title {
	font-size: 38px !important;
	line-height: 1.1 !important;
	letter-spacing: -0.02em !important;
}
body.elementor-kit-6.lm-surface-references-page .lm-references-project__title,
.lm-references-page .lm-references-project__title {
	font-size: 24px !important;
	line-height: 1.2 !important;
	letter-spacing: -0.015em !important;
}
/* Must beat `.lm-references-page :is(h1,h2,h3){ color: ink }` or title vanishes on navy CTA. */
body.elementor-kit-6.lm-surface-references-page .lm-references-page h2.lm-references-cta__title,
body.lm-surface-references-page .lm-references-page h2.lm-references-cta__title,
.lm-references-page h2.lm-references-cta__title {
	font-size: 26px !important;
	line-height: 1.2 !important;
	color: #fff !important;
}
body.elementor-kit-6.lm-surface-references-page .lm-references-claim-panel__title,
body.elementor-kit-6.lm-surface-references-page .lm-references-filters__title,
body.elementor-kit-6.lm-surface-references-page .lm-references-claim__title,
.lm-references-page .lm-references-claim-panel__title,
.lm-references-page .lm-references-filters__title,
.lm-references-page .lm-references-claim__title {
	font-size: 20px !important;
	line-height: 1.25 !important;
}
body.elementor-kit-6.lm-surface-references-page .lm-references-ledger__title,
.lm-references-page .lm-references-ledger__title {
	font-size: 16px !important;
	line-height: 1.3 !important;
}

/*
 * Reset every non-CTA button the kit paints navy.
 * Tabs / filter / arrows / ledger toggle / more / status chips.
 */
body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-tabs__tab,
body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-filter-btn,
body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-arrow,
body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-ledger__toggle,
body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-more,
body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-status__chip-remove,
body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-status__reset,
body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-ledger__gallery-link,
body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-filters-backdrop,
.lm-references-page button.lm-references-tabs__tab,
.lm-references-page button.lm-references-filter-btn,
.lm-references-page button.lm-references-arrow,
.lm-references-page button.lm-references-ledger__toggle,
.lm-references-page button.lm-references-more,
.lm-references-page button.lm-references-status__chip-remove,
.lm-references-page button.lm-references-status__reset,
.lm-references-page button.lm-references-ledger__gallery-link,
.lm-references-page button.lm-references-filters-backdrop {
	appearance: none !important;
	-webkit-appearance: none !important;
	background-image: none !important;
	box-shadow: none !important;
	text-transform: none !important;
	-webkit-text-fill-color: currentColor !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-tabs__tab,
.lm-references-page button.lm-references-tabs__tab {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	height: 36px !important;
	min-height: 36px !important;
	padding: 0 16px !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: transparent !important;
	background-color: transparent !important;
	font: 600 11px/1 "Work Sans", sans-serif !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	color: #4a5154 !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-tabs__tab[aria-selected="true"],
.lm-references-page button.lm-references-tabs__tab[aria-selected="true"] {
	background: #d8e5ea !important;
	background-color: #d8e5ea !important;
	color: #002a3a !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-filter-btn,
.lm-references-page button.lm-references-filter-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	height: 46px !important;
	min-height: 46px !important;
	min-width: 46px !important;
	padding: 0 18px !important;
	border: 1px solid rgba(0, 42, 58, 0.12) !important;
	border-radius: 999px !important;
	background: #fff !important;
	background-color: #fff !important;
	font: 600 13px/1 "Work Sans", sans-serif !important;
	letter-spacing: 0.035em !important;
	color: #002a3a !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-filter-btn[aria-expanded="true"],
.lm-references-page button.lm-references-filter-btn[aria-expanded="true"] {
	background: #002a3a !important;
	background-color: #002a3a !important;
	border-color: #002a3a !important;
	color: #fff !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-arrow,
.lm-references-page button.lm-references-arrow {
	width: 44px !important;
	height: 44px !important;
	min-width: 44px !important;
	min-height: 44px !important;
	padding: 0 !important;
	border: 1px solid rgba(0, 42, 58, 0.14) !important;
	border-radius: 999px !important;
	background: #fff !important;
	background-color: #fff !important;
	color: #002a3a !important;
	font-size: 20px !important;
	line-height: 1 !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-more:not([hidden]),
.lm-references-page button.lm-references-more:not([hidden]) {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 46px !important;
	height: auto !important;
	padding: 13px 1.1rem !important;
	border: 1px solid rgba(0, 42, 58, 0.16) !important;
	border-radius: 999px !important;
	background: #fff !important;
	background-color: #fff !important;
	font: 600 13px/1 "Work Sans", sans-serif !important;
	letter-spacing: 0.035em !important;
	color: #002a3a !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-more[hidden],
.lm-references-page button.lm-references-more[hidden],
.lm-references-more[hidden] {
	display: none !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-ledger__toggle,
.lm-references-page button.lm-references-ledger__toggle {
	background: transparent !important;
	background-color: transparent !important;
	border: 0 !important;
	border-top: 1px solid rgba(0, 42, 58, 0.07) !important;
	border-radius: 0 !important;
	padding: 14px 16px !important;
	min-height: 64px !important;
	height: auto !important;
	color: inherit !important;
	font: inherit !important;
	letter-spacing: normal !important;
	text-align: left !important;
	transition: background-color var(--lm-motion-duration-slow, 420ms) var(--lm-motion-ease-out, cubic-bezier(0.22, 1, 0.36, 1)) !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-ledger__toggle[aria-expanded="true"],
body.elementor-kit-6.lm-surface-references-page .lm-references-page .lm-references-ledger__item.is-open > button.lm-references-ledger__toggle,
.lm-references-page button.lm-references-ledger__toggle[aria-expanded="true"],
.lm-references-page .lm-references-ledger__item.is-open > button.lm-references-ledger__toggle {
	background: #eef4f6 !important;
	background-color: #eef4f6 !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-ledger__gallery-link,
body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-status__reset:not([hidden]),
.lm-references-page button.lm-references-ledger__gallery-link,
.lm-references-page button.lm-references-status__reset:not([hidden]) {
	display: inline !important;
	width: auto !important;
	height: auto !important;
	min-height: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: none !important;
	background-color: transparent !important;
	font: 600 12px/1.4 "Work Sans", sans-serif !important;
	letter-spacing: normal !important;
	color: #002a3a !important;
	text-decoration: underline !important;
	text-underline-offset: 5px !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-status__reset[hidden],
.lm-references-page button.lm-references-status__reset[hidden],
button.lm-references-status__reset[hidden] {
	display: none !important;
}

/* Active filter chips — match /materijali/ (.lm-surface-filters__chip). */
body.elementor-kit-6.lm-surface-references-page .lm-references-page .lm-references-status__chip,
body.lm-surface-references-page .lm-references-page .lm-references-status__chip,
.lm-references-page .lm-references-status__chip {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.45rem !important;
	min-height: 0 !important;
	height: auto !important;
	padding: 0.35rem 0.45rem 0.35rem 0.75rem !important;
	border: 1px solid #dbe3ee !important;
	border-radius: 999px !important;
	background: #eef3fb !important;
	background-color: #eef3fb !important;
	font: 500 0.8125rem/1.35 "Work Sans", Arial, sans-serif !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	color: #1f2a44 !important;
	box-shadow: none !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-status__chip-remove,
body.lm-surface-references-page .lm-references-page button.lm-references-status__chip-remove,
.lm-references-page button.lm-references-status__chip-remove {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-shrink: 0 !important;
	width: 1.15rem !important;
	height: 1.15rem !important;
	min-width: 1.15rem !important;
	min-height: 1.15rem !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: #d5deed !important;
	background-color: #d5deed !important;
	color: #172033 !important;
	font: 700 0.85rem/1 "Work Sans", Arial, sans-serif !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-decoration: none !important;
	box-shadow: none !important;
	cursor: pointer !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-status__chip-remove:hover,
body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-status__chip-remove:focus-visible,
.lm-references-page button.lm-references-status__chip-remove:hover,
.lm-references-page button.lm-references-status__chip-remove:focus-visible {
	background: #c4d0e4 !important;
	background-color: #c4d0e4 !important;
	color: #172033 !important;
}

/* Action buttons (CTA / claim / filter foot) */
body.elementor-kit-6.lm-surface-references-page .lm-references-page .laminam-btn,
body.lm-surface-references-page .lm-references-page .laminam-btn,
.lm-references-page .laminam-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 46px !important;
	height: auto !important;
	padding: 13px 1.1rem !important;
	border-radius: 999px !important;
	border: 1px solid transparent !important;
	font: 600 13px/1 "Work Sans", sans-serif !important;
	letter-spacing: 0.035em !important;
	text-decoration: none !important;
	box-shadow: none !important;
	white-space: nowrap !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page .laminam-btn--primary,
.lm-references-page .laminam-btn--primary {
	background: #002a3a !important;
	background-color: #002a3a !important;
	border-color: #002a3a !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page .laminam-btn--secondary,
.lm-references-page .laminam-btn--secondary {
	background: #fff !important;
	background-color: #fff !important;
	border-color: rgba(0, 42, 58, 0.16) !important;
	color: #002a3a !important;
	-webkit-text-fill-color: #002a3a !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-cta .laminam-btn--primary,
.lm-references-cta .laminam-btn--primary {
	background: #fff !important;
	background-color: #fff !important;
	border-color: #fff !important;
	color: #002a3a !important;
	-webkit-text-fill-color: #002a3a !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-cta .laminam-btn--secondary,
.lm-references-cta .laminam-btn--secondary {
	background: transparent !important;
	background-color: transparent !important;
	border-color: rgba(255, 255, 255, 0.32) !important;
	color: #fff !important;
	-webkit-text-fill-color: #fff !important;
}

/* Restore prose spacing only where intentional */
.lm-references-hero__lede { margin: 0 !important; }
.lm-references-place { margin: 4px 0 0 !important; }
.lm-references-cta__text,
.lm-references-claim-panel__text { margin: 8px 0 0 !important; }
/* Same inter-item gap as .lm-references-materials (label→first is via --lm-ref-specs-label-gap). */
.lm-references-specs__team-line + .lm-references-specs__team-line { margin-top: 0.55rem !important; }
.lm-references-ledger__sub { margin: 2px 0 0 !important; }
.lm-references-prose { gap: 10px; }
.lm-references-prose > p { margin: 0 !important; }

/* ── 2. Hero ──────────────────────────────────────────────────────────── */

.lm-references-hero {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.lm-references-hero__eyebrow {
	margin: 0;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--lm-ref-accent);
}

.lm-references-hero__title {
	font-size: 38px;
	line-height: 1.1;
	letter-spacing: -0.02em;
}

.lm-references-hero__lede {
	margin: 0;
	max-width: 58ch;
	font-size: 17px;
	line-height: 1.65;
	color: var(--lm-ref-muted);
}

.lm-references-stats {
	list-style: none;
	margin: 14px 0 0;
	padding: 28px 0 0;
	border-top: 1px solid var(--lm-ref-border);
	display: flex;
	gap: 72px;
	max-width: 700px;
}

.lm-references-stats__item {
	min-width: 0;
	white-space: nowrap;
	text-align: center;
}

.lm-references-stats__value {
	display: block;
	font-family: "Bricolage Grotesque", "Work Sans", Arial, sans-serif;
	font-weight: 500;
	font-size: 30px;
	line-height: 1.05;
	letter-spacing: -0.02em;
	color: var(--lm-ref-ink);
}

.lm-references-stats__label {
	display: block;
	margin-top: 4px;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--lm-ref-muted);
	text-align: center;
}

.lm-references-notice {
	padding: 16px 18px;
	border-radius: 12px;
	background: var(--lm-ref-panel);
	color: #4a5154;
}

.lm-references-notice--preview {
	border: 1px dashed rgba(0, 42, 58, 0.2);
}

/* ── 3. Toolbar ───────────────────────────────────────────────────────── */

.lm-references-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.lm-references-toolbar {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.lm-references-toolbar__row {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 8px;
	align-items: center;
}

.lm-references-tabs {
	display: inline-flex;
	padding: 4px;
	border-radius: 999px;
	border: 1px solid rgba(0, 42, 58, 0.12);
	background: #fff;
}

.lm-references-tabs__tab {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	height: 36px;
	padding: 0 16px;
	border-radius: 999px;
	border: 0;
	background: transparent;
	font: 600 11px/1 "Work Sans", sans-serif;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #4a5154;
	cursor: pointer;
	white-space: nowrap;
}

.lm-references-tabs__tab[aria-selected="true"] {
	background: #d8e5ea;
	color: var(--lm-ref-ink);
}

.lm-references-tabs__count {
	font-weight: 500;
	color: var(--lm-ref-muted);
}

.lm-references-search {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	height: 46px;
	padding: 0 18px;
	border-radius: 999px;
	border: 1px solid rgba(0, 42, 58, 0.12);
	background: #fff;
	min-width: 0;
	box-sizing: border-box;
	transition: border-color 180ms ease, box-shadow 180ms ease;
}

/* Focus on the pill shell — same pattern as /materijali/ search (not a boxy input outline). */
body.elementor-kit-6.lm-surface-references-page .lm-references-search:focus-within,
body.lm-surface-references-page .lm-references-search:focus-within,
.lm-references-search:focus-within {
	border-color: #9ca3af !important;
	box-shadow: 0 0 0 3px rgba(20, 34, 74, 0.12) !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-search input,
body.lm-surface-references-page .lm-references-search input,
.lm-references-search input {
	appearance: none !important;
	-webkit-appearance: none !important;
	border: 0 !important;
	outline: none !important;
	box-shadow: none !important;
	background: transparent !important;
	font: 400 14px "Work Sans", Arial, sans-serif !important;
	color: #2d3436 !important;
	width: 100%;
	min-width: 0;
	padding: 0 !important;
	margin: 0 !important;
	border-radius: 0 !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-search input:focus,
body.elementor-kit-6.lm-surface-references-page .lm-references-search input:focus-visible,
body.lm-surface-references-page .lm-references-search input:focus,
body.lm-surface-references-page .lm-references-search input:focus-visible,
.lm-references-search input:focus,
.lm-references-search input:focus-visible {
	outline: none !important;
	box-shadow: none !important;
	border: 0 !important;
	background: transparent !important;
}

.lm-references-search input::placeholder {
	color: #626b6d;
	opacity: 1;
}

.lm-references-search input::-webkit-search-cancel-button,
.lm-references-search input::-webkit-search-decoration,
.lm-references-search input::-ms-clear {
	-webkit-appearance: none;
	appearance: none;
	display: none;
}

.lm-references-filter-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	height: 46px;
	min-width: 46px;
	padding: 0 18px;
	border-radius: 999px;
	border: 1px solid rgba(0, 42, 58, 0.12);
	background: #fff;
	font: 600 13px/1 "Work Sans", sans-serif;
	letter-spacing: 0.035em;
	color: var(--lm-ref-ink);
	cursor: pointer;
	white-space: nowrap;
}

.lm-references-filter-btn[aria-expanded="true"] {
	background: var(--lm-ref-ink);
	border-color: var(--lm-ref-ink);
	color: #fff;
}

.lm-references-filter-btn__count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 20px;
	height: 20px;
	padding: 0 6px;
	border-radius: 999px;
	background: var(--lm-ref-ink);
	color: #fff;
	font-size: 11px;
}

.lm-references-filter-btn[aria-expanded="true"] .lm-references-filter-btn__count {
	background: #fff;
	color: var(--lm-ref-ink);
}

.lm-references-filter-btn__count[hidden] {
	display: none !important;
}

.lm-references-status {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
	min-height: 28px;
	font-size: 12px;
	color: var(--lm-ref-muted);
}

.lm-references-status__chips {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.45rem;
}

.lm-references-status__chip {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.35rem 0.45rem 0.35rem 0.75rem;
	border-radius: 999px;
	border: 1px solid #dbe3ee;
	background: #eef3fb;
	color: #1f2a44;
	font-family: "Work Sans", Arial, sans-serif;
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.35;
}

.lm-references-status__chip-text {
	display: inline-block;
}

.lm-references-status__chip-remove {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 1.15rem;
	height: 1.15rem;
	border: 0;
	border-radius: 999px;
	background: #d5deed;
	color: #172033;
	font-size: 0.85rem;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
}

.lm-references-status__chip-remove:hover,
.lm-references-status__chip-remove:focus-visible {
	background: #c4d0e4;
	color: #172033;
}

.lm-references-status__reset {
	appearance: none;
	border: 0;
	background: none;
	padding: 0;
	font: 600 12px/1.4 "Work Sans", sans-serif;
	color: var(--lm-ref-ink);
	text-decoration: underline;
	text-underline-offset: 3px;
	cursor: pointer;
}

.lm-references-status__reset[hidden] {
	display: none !important;
}

/* Filter panel */
.lm-references-filters {
	background: #fff;
	border: 1px solid var(--lm-ref-border);
	border-radius: 12px;
	padding: 20px;
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.lm-references-filters[hidden] {
	display: none !important;
}

.lm-references-filters__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.lm-references-filters__label {
	display: block;
	margin: 0 0 8px;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--lm-ref-accent);
}

.lm-references-filters__select {
	width: 100%;
	height: 46px;
	border-radius: 999px;
	border: 1px solid rgba(0, 42, 58, 0.12);
	background: #fff;
	padding: 0 42px 0 18px;
	font: 500 14px "Work Sans", Arial, sans-serif;
	color: var(--lm-ref-ink);
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	transition: border-color 180ms ease, box-shadow 180ms ease;
}

.lm-references-filters__select:focus,
.lm-references-filters__select:focus-visible {
	outline: none !important;
	border-color: #9ca3af !important;
	box-shadow: 0 0 0 3px rgba(20, 34, 74, 0.12) !important;
}

.lm-references-filters__title {
	font-size: 20px;
	line-height: 1.25;
}

.lm-references-filters__head,
.lm-references-filters__foot,
.lm-references-filters-backdrop {
	display: none;
}

.lm-references-filters__foot .laminam-btn {
	flex: 1;
}

/* ── 4. Gallery projects ──────────────────────────────────────────────── */

.lm-references-project {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 32px 0;
	border-top: 1px solid rgba(0, 42, 58, 0.08);
}

.lm-references-project[hidden] {
	display: none !important;
}

.lm-references-project__head {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 16px;
}

.lm-references-project__title {
	font-size: 24px;
	line-height: 1.2;
	letter-spacing: -0.015em;
}

.lm-references-place {
	margin: 4px 0 0;
	font-size: 13px;
	font-weight: 500;
	color: #073343;
}

.lm-references-project__arrows {
	display: flex;
	gap: 8px;
	flex: none;
}

.lm-references-arrow {
	width: 44px;
	height: 44px;
	border-radius: 999px;
	border: 1px solid rgba(0, 42, 58, 0.14);
	background: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	color: var(--lm-ref-ink);
	font-size: 20px;
	line-height: 1;
}

.lm-references-arrow[disabled] {
	opacity: 0.35;
	cursor: default;
}

.lm-references-arrow:focus-visible,
.lm-references-tabs__tab:focus-visible,
.lm-references-filter-btn:focus-visible,
.lm-references-ledger__toggle:focus-visible,
.lm-references-ledger__gallery-link:focus-visible,
.lm-references-more:focus-visible {
	outline: 2px solid #7fa9b6;
	outline-offset: 2px;
}

/* Existing rail — sized to --lm-ref-photo-w */
.lm-references-gallery {
	min-width: 0;
}

.lm-references-gallery .lm-surface-gallery-rail {
	width: 100%;
	min-width: 0;
}

.lm-references-gallery .lm-surface-gallery-rail__stage {
	min-width: 0;
}

.lm-references-gallery .lm-surface-gallery-rail__viewport {
	overflow-x: auto;
	overflow-y: hidden;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
	cursor: grab;
}

.lm-references-gallery .lm-surface-gallery-rail__viewport::-webkit-scrollbar {
	display: none;
}

.lm-references-gallery .lm-surface-gallery-rail__viewport.is-dragging {
	cursor: grabbing;
	user-select: none;
}

.lm-references-gallery .lm-surface-gallery--scroll {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	gap: var(--lm-ref-gallery-gap);
	width: max-content;
	margin: 0;
	padding-right: 0;
}

.lm-references-gallery__item {
	flex: 0 0 var(--lm-ref-photo-w);
	width: var(--lm-ref-photo-w);
	aspect-ratio: 3 / 2;
	margin: 0;
	overflow: hidden;
	border-radius: 10px;
	background: #e3dccc;
	scroll-snap-align: start;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-gallery__item .lm-surface-texture-zoom,
body.lm-surface-references-page .lm-references-gallery__item .lm-surface-texture-zoom,
.lm-references-gallery__item .lm-surface-texture-zoom {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	min-width: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	cursor: zoom-in;
	line-height: 0 !important;
	text-align: left !important;
	font: inherit !important;
	color: inherit !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	-webkit-text-fill-color: currentColor !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-gallery__item .lm-surface-texture-zoom:hover,
body.elementor-kit-6.lm-surface-references-page .lm-references-gallery__item .lm-surface-texture-zoom:focus,
body.elementor-kit-6.lm-surface-references-page .lm-references-gallery__item .lm-surface-texture-zoom:active,
body.elementor-kit-6.lm-surface-references-page .lm-references-gallery__item .lm-surface-texture-zoom:focus-visible,
.lm-references-gallery__item .lm-surface-texture-zoom:hover,
.lm-references-gallery__item .lm-surface-texture-zoom:focus,
.lm-references-gallery__item .lm-surface-texture-zoom:active,
.lm-references-gallery__item .lm-surface-texture-zoom:focus-visible {
	background: transparent !important;
	background-color: transparent !important;
	box-shadow: none !important;
	outline: none;
}

.lm-references-gallery__item .lm-surface-texture-zoom:focus-visible {
	outline: 2px solid #073343;
	outline-offset: -2px;
}

.lm-references-gallery__item img,
.lm-references-gallery__item .lm-surface-texture-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.lm-references-gallery__item--empty {
	display: flex;
	align-items: center;
	justify-content: center;
}

.lm-references-gallery__placeholder {
	font-size: 12px;
	color: #4c4542;
}

/* Mockup has no custom scroll track — hide rail chrome, keep native drag/swipe. */
.lm-references-gallery .lm-surface-gallery-rail__scroll {
	display: none !important;
}

/* Elementor [hidden] loses to kit button { display } — force hide (incl. body-portaled sheet). */
.lm-references-page [hidden]:not(.lm-surface-reveal.is-closing),
.lm-references-page button[hidden],
.lm-references-page .laminam-btn[hidden],
.lm-references-page .lm-references-filters[hidden],
.lm-references-page .lm-references-filters-backdrop[hidden],
.lm-references-page .lm-references-status__reset[hidden],
.lm-references-page .lm-references-filter-btn__count[hidden],
.lm-references-page .lm-references-project[hidden],
.lm-references-page .lm-references-panel[hidden],
.lm-references-filters[hidden],
.lm-references-filters-backdrop[hidden],
button.lm-references-filters-backdrop[hidden] {
	display: none !important;
}

/* Reveal accordion must stay display:grid while height animates. */
.lm-references-page .lm-references-ledger__detail.lm-surface-reveal.is-closing,
.lm-references-page .lm-references-ledger__detail.lm-surface-reveal.is-open,
.lm-references-page .lm-references-ledger__detail.lm-surface-reveal:not([hidden]) {
	display: grid !important;
}

.lm-references-page .lm-references-ledger__detail.lm-surface-reveal[hidden]:not(.is-closing) {
	display: none !important;
}

/*
 * Lightbox: Elementor kit navy pills.
 * Shared restore (dock / nav / reset / info) lives in lm-surface-engine.css
 * for body.lm-surface-references-page — do NOT force width/height:auto here
 * (that collapsed zoom/info buttons and left RESET as a kit pill).
 */
body.lm-surface-references-page .lm-surface-lightbox button:not(.lm-surface-lightbox__dock-btn--reset),
body.elementor-kit-6.lm-surface-references-page .lm-surface-lightbox button:not(.lm-surface-lightbox__dock-btn--reset) {
	appearance: none !important;
	-webkit-appearance: none !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	font-family: "Work Sans", Arial, sans-serif !important;
	font-weight: 500 !important;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	box-shadow: none !important;
	text-decoration: none !important;
	-webkit-text-fill-color: currentColor !important;
	color: #fff !important;
}

body.lm-surface-references-page .lm-surface-lightbox__backdrop,
body.elementor-kit-6.lm-surface-references-page .lm-surface-lightbox__backdrop,
body.lm-surface-references-page button.lm-surface-lightbox__backdrop {
	border: 0 !important;
	border-radius: 0 !important;
	background: rgba(0, 24, 34, 0.84) !important;
	background-color: rgba(0, 24, 34, 0.84) !important;
	min-height: 0 !important;
	width: 100% !important;
	height: 100% !important;
	padding: 0 !important;
}

body.lm-surface-references-page .lm-surface-lightbox__backdrop:hover,
body.lm-surface-references-page .lm-surface-lightbox__backdrop:focus,
body.lm-surface-references-page .lm-surface-lightbox__backdrop:active,
body.lm-surface-references-page .lm-surface-lightbox__backdrop:focus-visible {
	background: rgba(0, 24, 34, 0.84) !important;
	outline: none !important;
	box-shadow: none !important;
}

/* Kit-specificity backup for dock / info (mirrors engine restore). */
body.elementor-kit-6.lm-surface-references-page .lm-surface-lightbox__dock,
body.lm-surface-references-page .lm-surface-lightbox__dock {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 0.55rem !important;
	width: max-content !important;
	max-width: calc(100vw - 1.5rem) !important;
	margin-inline: auto !important;
	padding: 0.55rem 0.85rem !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, 0.1) !important;
	background-color: rgba(255, 255, 255, 0.1) !important;
	border: 1px solid rgba(255, 255, 255, 0.2) !important;
	box-shadow: 0 10px 40px rgba(0, 0, 0, 0.28) !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-surface-lightbox__dock-btn,
body.lm-surface-references-page .lm-surface-lightbox__dock-btn {
	width: 2.75rem !important;
	height: 2.75rem !important;
	min-width: 2.75rem !important;
	min-height: 2.75rem !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: transparent !important;
	background-color: transparent !important;
	color: #fff !important;
	box-shadow: none !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-surface-lightbox__dock-btn--reset,
body.lm-surface-references-page .lm-surface-lightbox__dock-btn--reset {
	width: auto !important;
	min-width: 7.25rem !important;
	height: auto !important;
	min-height: 2.5rem !important;
	padding: 0.55rem 1.65rem !important;
	border-radius: 999px !important;
	background: rgba(255, 255, 255, 0.1) !important;
	background-color: rgba(255, 255, 255, 0.1) !important;
	border: 1px solid rgba(255, 255, 255, 0.16) !important;
	font-weight: 600 !important;
	letter-spacing: 0.07em !important;
	text-transform: uppercase !important;
	color: #fff !important;
	box-shadow: none !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-surface-lightbox__info,
body.lm-surface-references-page .lm-surface-lightbox__info {
	width: min(420px, calc(100vw - 2rem)) !important;
	max-width: min(420px, calc(100vw - 2rem)) !important;
	padding: 0.75rem 1rem !important;
	background: rgba(0, 24, 34, 0.78) !important;
	border: 1px solid rgba(255, 255, 255, 0.14) !important;
	border-radius: 12px !important;
	box-shadow: 0 12px 36px rgba(0, 0, 0, 0.28) !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-surface-lightbox__info .lm-surface-lightbox__caption,
body.lm-surface-references-page .lm-surface-lightbox__info .lm-surface-lightbox__caption {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	color: rgba(255, 255, 255, 0.92) !important;
	font-size: 0.82rem !important;
	line-height: 1.5 !important;
	font-style: italic !important;
	font-weight: 400 !important;
	text-align: center !important;
	text-transform: none !important;
}

/* Phone filter sheet only — desktop inline filters must keep page scroll. */
html.lm-references-filter-open {
	overflow: hidden !important;
	height: 100%;
}

html.lm-references-filter-open body {
	overflow: hidden !important;
	/* position/top/width set in JS for iOS unlock; do not fight overflow-x:clip alone. */
	touch-action: none;
}

.lm-references-specs {
	--lm-ref-specs-label-gap: 12px;
	display: grid;
	grid-template-columns: var(--lm-ref-photo-w) var(--lm-ref-photo-w);
	gap: var(--lm-ref-gallery-gap);
	margin: 0;
	padding-top: 4px;
}

.lm-references-specs__label {
	margin: 0 0 var(--lm-ref-specs-label-gap);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--lm-ref-accent);
}

.lm-references-specs__value {
	margin: 0;
	padding: 0;
}

.lm-references-materials {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	/* Item gap must stay clearly larger than wrap line gap. */
	gap: 0.55rem;
}

.lm-references-materials > li {
	margin: 0;
	padding: 0;
}

.lm-references-materials__name {
	display: block;
	padding: 0;
	font-size: 13px;
	font-weight: 600;
	/* Tight wrap so a broken name still reads as one material. */
	line-height: 1.2;
	color: var(--lm-ref-ink);
	text-decoration: none;
}

a.lm-references-materials__name:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page .lm-references-specs__label,
body.lm-surface-references-page .lm-references-page .lm-references-specs__label {
	margin: 0 0 var(--lm-ref-specs-label-gap, 12px) !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page .lm-references-specs__value,
body.lm-surface-references-page .lm-references-page .lm-references-specs__value {
	margin: 0 !important;
	padding: 0 !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page .lm-references-specs__team-line,
body.lm-surface-references-page .lm-references-page .lm-references-specs__team-line {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 13px !important;
	line-height: 1.2 !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page .lm-references-materials,
body.lm-surface-references-page .lm-references-page .lm-references-materials {
	display: flex !important;
	flex-direction: column !important;
	gap: 0.55rem !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page .lm-references-materials > li,
body.lm-surface-references-page .lm-references-page .lm-references-materials > li {
	margin: 0 !important;
	padding: 0 !important;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page .lm-references-materials__name,
body.elementor-kit-6 .lm-references-page a.lm-references-materials__name,
body.lm-surface-references-page .lm-references-page .lm-references-materials__name {
	display: block !important;
	padding: 0 !important;
	margin: 0 !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	letter-spacing: normal !important;
	color: var(--lm-ref-ink) !important;
	text-decoration: none !important;
}

body.elementor-kit-6 .lm-references-page a.lm-references-materials__name:hover,
body.elementor-kit-6 .lm-references-page a.lm-references-materials__name:focus-visible {
	text-decoration: underline !important;
	text-underline-offset: 3px;
}

.lm-references-specs__team-line {
	margin: 0;
	padding: 0;
	font-size: 13px;
	font-weight: 400;
	/* Same rhythm as material names so label→first-line gap matches both columns. */
	line-height: 1.2;
	color: var(--lm-ref-ink);
}

.lm-references-specs__team-line--muted {
	color: var(--lm-ref-muted);
}

/* Contractor names always uppercase; architects stay as entered. */
.lm-references-contractor {
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.lm-references-project__toggle {
	align-self: flex-start;
	margin-top: 4px;
}

.lm-references-prose {
	display: flex;
	flex-direction: column;
	gap: 10px;
	max-width: 68ch;
	color: #4a5154;
}

.lm-references-empty {
	margin: 28px 0 8px;
	padding: 0;
	font-size: 15px;
	line-height: 1.5;
	color: var(--lm-ref-muted);
	text-align: center;
}

.lm-references-empty[hidden] {
	display: none !important;
}

/* ── 5. Ledger / accordion ────────────────────────────────────────────── */

.lm-references-ledger {
	background: #fff;
	border: 1px solid var(--lm-ref-border);
	border-radius: 12px;
	overflow: hidden;
	margin-top: 10px;
}

.lm-references-ledger.is-empty {
	display: none !important;
}

.lm-references-ledger__head,
.lm-references-ledger__row {
	display: grid;
	grid-template-columns: minmax(0, 2.1fr) minmax(0, 2.3fr) minmax(0, 1.9fr) 110px 70px;
	gap: 24px;
	padding: 18px 20px;
	align-items: start;
}

.lm-references-ledger__head {
	background: var(--lm-ref-panel);
	padding-top: 12px;
	padding-bottom: 12px;
	align-items: center;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #4a5154;
	font-family: "Work Sans", Arial, sans-serif;
}

.lm-references-ledger__head-cell {
	display: block;
	margin: 0;
	padding: 0;
	font: inherit !important;
	font-size: 10px !important;
	font-weight: 600 !important;
	font-family: "Work Sans", Arial, sans-serif !important;
	letter-spacing: 0.1em !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
	color: #4a5154 !important;
	text-align: left;
}

.lm-references-ledger__head-cell--end {
	text-align: right;
}

.lm-references-ledger__item {
	border-top: 1px solid rgba(0, 42, 58, 0.07);
}

.lm-references-ledger__item[hidden] {
	display: none !important;
}

.lm-references-ledger__item.is-collapsed-extra[hidden] {
	display: none !important;
}

.lm-references-ledger__title {
	font-family: "Bricolage Grotesque", "Work Sans", Arial, sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.3;
	color: var(--lm-ref-ink);
}

.lm-references-ledger__sub {
	margin: 2px 0 0;
	font-size: 12px;
	color: var(--lm-ref-muted);
}

.lm-references-ledger__gallery-link {
	display: inline-block;
	margin-top: 6px;
	background: none;
	border: 0;
	padding: 0;
	font: 600 12px/1.4 "Work Sans", sans-serif;
	color: var(--lm-ref-ink);
	text-decoration: underline;
	text-underline-offset: 5px;
	cursor: pointer;
}

.lm-references-ledger__num {
	text-align: right;
	font-size: 13px;
	font-variant-numeric: tabular-nums;
}

.lm-references-ledger__year {
	text-align: right;
	font-family: "Bricolage Grotesque", "Work Sans", Arial, sans-serif;
	font-weight: 500;
	font-size: 16px;
	color: var(--lm-ref-ink);
}

.lm-references-ledger__blank {
	color: var(--lm-ref-muted);
}

.lm-references-ledger__toggle,
.lm-references-ledger__detail {
	display: none;
}

.lm-references-more {
	align-self: center;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 18px auto 0;
	min-height: 46px;
	padding: 13px 1.1rem;
	border-radius: 999px;
	border: 1px solid rgba(0, 42, 58, 0.16);
	background: #fff;
	font: 600 13px/1 "Work Sans", sans-serif;
	letter-spacing: 0.035em;
	color: var(--lm-ref-ink);
	cursor: pointer;
}

.lm-references-more[hidden] {
	display: none !important;
}

/* ── 6. Closing ───────────────────────────────────────────────────────── */

.lm-references-end {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
	gap: 16px;
}

.lm-references-cta {
	background: var(--lm-ref-ink);
	border-radius: 12px;
	padding: 40px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 32px;
	flex-wrap: wrap;
}

.lm-references-cta__title {
	color: #fff;
	font-size: 26px;
	line-height: 1.2;
}

.lm-references-cta__text {
	margin: 8px 0 0;
	max-width: 56ch;
	color: #b3cdd6;
}

body.elementor-kit-6.lm-surface-references-page .lm-references-page .lm-references-cta__text,
body.lm-surface-references-page .lm-references-page .lm-references-cta__text {
	margin: 8px 0 0 !important;
	color: #b3cdd6 !important;
}

.lm-references-cta__actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

.lm-references-claim-panel {
	background: var(--lm-ref-panel);
	border-radius: 12px;
	padding: 40px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 20px;
}

.lm-references-claim-panel__title {
	font-size: 20px;
	line-height: 1.25;
}

.lm-references-claim-panel__text {
	margin: 8px 0 0;
	color: #4a5154;
}

body.lm-surface-references-page .lm-references-page a.laminam-btn,
body.lm-surface-references-page .lm-references-page a.laminam-btn:is(:link, :visited, :hover, :focus, :focus-visible, :active) {
	text-decoration: none !important;
}

.lm-references-cta .laminam-btn--primary {
	background: #fff !important;
	border-color: #fff !important;
	color: var(--lm-ref-ink) !important;
}

.lm-references-cta .laminam-btn--secondary {
	background: transparent !important;
	border-color: rgba(255, 255, 255, 0.32) !important;
	color: #fff !important;
}

.lm-references-claim-panel .laminam-btn {
	align-self: flex-start;
	background: #fff !important;
	border-color: rgba(0, 42, 58, 0.16) !important;
	color: var(--lm-ref-ink) !important;
}

/* Claim dialog (unchanged behavior) */
.lm-references-claim[hidden] {
	display: none !important;
}

.lm-references-claim {
	position: fixed;
	inset: 0;
	z-index: 1400;
	display: grid;
	place-items: center;
	padding: 24px;
}

.lm-references-claim__backdrop {
	position: absolute;
	inset: 0;
	background: rgba(0, 30, 42, 0.45);
	border: 0;
}

.lm-references-claim__panel {
	position: relative;
	z-index: 1;
	width: min(100%, 420px);
	background: #fff;
	border-radius: 12px;
	padding: 28px 24px 24px;
	box-shadow: 0 24px 64px rgba(0, 30, 42, 0.18);
}

.lm-references-claim__close {
	position: absolute;
	top: 12px;
	right: 12px;
	width: 36px;
	height: 36px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	color: var(--lm-ref-ink);
}

.lm-references-claim__title {
	font-size: 22px;
	margin: 0 28px 10px 0;
}

.lm-references-claim__text {
	margin: 0 0 18px;
	color: #4a5154;
}

.lm-references-claim__actions {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

html.lm-references-claim-open {
	overflow: hidden !important;
	height: 100%;
}

html.lm-references-claim-open body {
	overflow: hidden !important;
	touch-action: none;
}

/* H2/H3 must stay below H1 (38px) */
.lm-references-page .lm-references-hero__title { font-size: 38px; }
.lm-references-page .lm-references-cta__title { font-size: 26px; }
.lm-references-page .lm-references-claim-panel__title,
.lm-references-page .lm-references-filters__title,
.lm-references-page .lm-references-claim__title { font-size: 20px; }
.lm-references-page .lm-references-project__title { font-size: 24px; }
.lm-references-page .lm-references-ledger__title { font-size: 16px; }

/* ── 7. Tablet ≤900px ─────────────────────────────────────────────────── */

@media (max-width: 900px) {
	.lm-references-page {
		gap: 36px;
	}

	.lm-references-hero__title {
		font-size: 30px !important;
	}

	body.elementor-kit-6.lm-surface-references-page .lm-references-page ul.lm-references-stats,
	body.lm-surface-references-page .lm-references-page ul.lm-references-stats,
	.lm-references-page ul.lm-references-stats,
	.lm-references-stats {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0 !important;
		max-width: none;
		width: 100%;
		padding-top: 22px !important;
	}

	.lm-references-stats__item {
		white-space: normal;
		padding: 0 16px;
		border-left: 1px solid rgba(0, 42, 58, 0.1);
	}

	.lm-references-stats__item:first-child {
		padding-left: 0;
		border-left: 0;
	}

	.lm-references-stats__item:last-child {
		padding-right: 0;
	}

	.lm-references-stats__value {
		font-size: 24px;
	}

	.lm-references-stats__label {
		margin-top: 5px;
		font-size: 10px;
		letter-spacing: 0.08em;
		line-height: 1.3;
	}

	.lm-references-toolbar__row {
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.lm-references-tabs {
		grid-column: 1 / -1;
		grid-row: 1;
		justify-self: start;
	}

	.lm-references-search {
		grid-column: 1;
		grid-row: 2;
	}

	.lm-references-filter-btn {
		grid-column: 2;
		grid-row: 2;
	}

	.lm-references-filters__grid {
		grid-template-columns: minmax(0, 1fr);
		gap: 14px;
	}

	.lm-references-project {
		--lm-ref-photo-w: calc((100vw - 56px) / 2.25);
		padding: 24px 0;
	}

	.lm-references-ledger__head,
	.lm-references-ledger__row {
		display: none;
	}

	.lm-references-ledger__toggle {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto 32px;
		gap: 12px;
		align-items: center;
		width: 100%;
		min-height: 64px;
		padding: 14px 16px;
		background: none;
		border: 0;
		border-top: 1px solid rgba(0, 42, 58, 0.07);
		text-align: left;
		cursor: pointer;
	}

	/*
	 * Mobile: head is display:none but still first in DOM, so :first-child never
	 * matched the first project — card border + first-row border = double top line.
	 */
	.lm-references-ledger__item:first-child,
	.lm-references-ledger__head + .lm-references-ledger__item {
		border-top: 0 !important;
	}

	.lm-references-ledger__item:first-child .lm-references-ledger__toggle,
	.lm-references-ledger__head + .lm-references-ledger__item .lm-references-ledger__toggle,
	body.elementor-kit-6.lm-surface-references-page .lm-references-page .lm-references-ledger__head + .lm-references-ledger__item button.lm-references-ledger__toggle,
	body.elementor-kit-6.lm-surface-references-page .lm-references-page .lm-references-ledger__item:first-child button.lm-references-ledger__toggle {
		border-top: 0 !important;
	}

	.lm-references-ledger__toggle .lm-references-ledger__title {
		display: block;
	}

	.lm-references-ledger__toggle .lm-references-ledger__sub {
		display: block;
	}

	.lm-references-ledger__toggle-icon {
		width: 32px;
		height: 32px;
		border-radius: 999px;
		border: 1px solid rgba(0, 42, 58, 0.14);
		display: inline-flex;
		align-items: center;
		justify-content: center;
		transition:
			transform var(--lm-motion-duration-slow, 420ms) var(--lm-motion-ease-out, cubic-bezier(0.22, 1, 0.36, 1)),
			background-color var(--lm-motion-duration-slow, 420ms) var(--lm-motion-ease-out, cubic-bezier(0.22, 1, 0.36, 1)),
			border-color var(--lm-motion-duration-slow, 420ms) var(--lm-motion-ease-out, cubic-bezier(0.22, 1, 0.36, 1)),
			color var(--lm-motion-duration-slow, 420ms) var(--lm-motion-ease-out, cubic-bezier(0.22, 1, 0.36, 1));
	}

	.lm-references-ledger__toggle[aria-expanded="true"] {
		background: var(--lm-ref-panel);
	}

	.lm-references-ledger__toggle[aria-expanded="true"] .lm-references-ledger__toggle-icon {
		transform: rotate(180deg);
		background: var(--lm-ref-ink);
		border-color: var(--lm-ref-ink);
		color: #fff;
	}

	.lm-references-ledger__detail.lm-surface-reveal {
		display: grid;
		margin: 0;
		padding: 0;
		background: var(--lm-ref-panel);
		transition:
			grid-template-rows var(--lm-motion-duration-slow, 420ms) var(--lm-motion-ease-out, cubic-bezier(0.22, 1, 0.36, 1)),
			background-color var(--lm-motion-duration-slow, 420ms) var(--lm-motion-ease-out, cubic-bezier(0.22, 1, 0.36, 1));
	}

	.lm-references-ledger__detail.lm-surface-reveal[hidden]:not(.is-closing) {
		display: none !important;
	}

	.lm-references-ledger__detail .lm-surface-reveal__inner {
		padding: 0 16px 16px;
		background: var(--lm-ref-panel);
	}

	.lm-references-ledger__detail-list {
		margin: 0;
		padding: 0;
	}

	.lm-references-ledger__detail-list > div {
		display: grid;
		grid-template-columns: 92px minmax(0, 1fr);
		gap: 12px;
		padding: 10px 0;
		border-top: 1px solid rgba(0, 42, 58, 0.08);
	}

	.lm-references-ledger__detail-list > div:first-child {
		border-top: 0;
		padding-top: 4px;
	}

	.lm-references-ledger__detail-list dt {
		font-size: 10px;
		font-weight: 600;
		letter-spacing: 0.1em;
		text-transform: uppercase;
		color: #4a5154;
		padding-top: 3px;
	}

	.lm-references-ledger__detail-list dd {
		margin: 0;
		font-size: 13px;
	}

	.lm-references-end {
		grid-template-columns: minmax(0, 1fr);
	}

	.lm-references-cta,
	.lm-references-claim-panel {
		padding: 24px;
	}
}

/* ── 8. Phone ≤560px ──────────────────────────────────────────────────── */

@media (max-width: 560px) {
	body.elementor-kit-6.lm-surface-references-page .lm-references-page ul.lm-references-stats,
	body.lm-surface-references-page .lm-references-page ul.lm-references-stats,
	.lm-references-page ul.lm-references-stats,
	.lm-references-stats {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0 !important;
		padding-top: 20px !important;
		max-width: none;
		width: 100%;
	}

	.lm-references-stats__item {
		white-space: normal;
		padding: 0 10px;
		border-left: 1px solid rgba(0, 42, 58, 0.1);
	}

	.lm-references-stats__item:first-child {
		padding-left: 0;
		border-left: 0;
	}

	.lm-references-stats__item:last-child {
		padding-right: 0;
	}

	.lm-references-stats__value {
		font-size: clamp(18px, 5.2vw, 22px);
		line-height: 1.1;
		letter-spacing: -0.03em;
	}

	.lm-references-stats__label {
		margin-top: 4px;
		font-size: 9px;
		letter-spacing: 0.07em;
		line-height: 1.25;
	}

	/* Beat desktop kit !important padding on phone */
	body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-tabs__tab,
	body.lm-surface-references-page .lm-references-page button.lm-references-tabs__tab,
	.lm-references-page button.lm-references-tabs__tab,
	.lm-references-tabs__tab {
		padding: 0 10px !important;
		font-size: 10px !important;
		letter-spacing: 0.06em !important;
	}

	body.elementor-kit-6.lm-surface-references-page .lm-references-page button.lm-references-filter-btn,
	body.lm-surface-references-page .lm-references-page button.lm-references-filter-btn,
	.lm-references-page button.lm-references-filter-btn,
	.lm-references-filter-btn {
		width: 46px !important;
		min-width: 46px !important;
		padding: 0 !important;
		justify-content: center !important;
	}

	.lm-references-filter-btn__text {
		display: none !important;
	}

	.lm-references-project {
		--lm-ref-photo-w: 78vw;
	}

	.lm-references-project__arrows {
		display: none !important;
	}

	.lm-references-specs {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}

	.lm-references-cta__actions {
		width: 100%;
		flex-direction: column;
		align-items: stretch;
	}

	.lm-references-cta .laminam-btn,
	.lm-references-claim-panel .laminam-btn {
		width: 100%;
	}

	/*
	 * Bottom sheet + dimmer. JS portals these to <body> so position:fixed is not
	 * trapped by Elementor/overflow-x:clip containing blocks (grey “slash” over search).
	 */
	body.elementor-kit-6.lm-surface-references-page button.lm-references-filters-backdrop:not([hidden]),
	body.lm-surface-references-page button.lm-references-filters-backdrop:not([hidden]),
	.lm-references-filters-backdrop:not([hidden]),
	button.lm-references-filters-backdrop:not([hidden]) {
		display: block !important;
		position: fixed !important;
		inset: 0 !important;
		z-index: 10050 !important;
		width: auto !important;
		height: auto !important;
		min-width: 0 !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: rgba(0, 30, 42, 0.45) !important;
		background-color: rgba(0, 30, 42, 0.45) !important;
		box-shadow: none !important;
		appearance: none !important;
		-webkit-appearance: none !important;
		cursor: pointer;
	}

	.lm-references-filters:not([hidden]),
	body > .lm-references-filters:not([hidden]) {
		position: fixed !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		top: auto !important;
		z-index: 10051 !important;
		width: 100% !important;
		max-width: none !important;
		max-height: 86vh;
		overflow-y: auto;
		border: 0 !important;
		border-radius: 16px 16px 0 0 !important;
		padding: 8px 16px 16px !important;
		background: #fff !important;
		box-shadow: 0 -12px 40px rgba(0, 30, 42, 0.18);
	}

	.lm-references-filters__head {
		display: flex !important;
		justify-content: space-between;
		align-items: center;
		padding: 8px 0;
	}

	.lm-references-filters__foot {
		display: flex !important;
		gap: 8px;
		padding-top: 4px;
	}

	.lm-references-filters__foot .laminam-btn {
		flex: 1;
	}

	/* Close (X) in sheet head — keep circle, not kit navy fill when idle */
	body.elementor-kit-6.lm-surface-references-page .lm-references-filters__head button.lm-references-arrow,
	.lm-references-filters__head button.lm-references-arrow {
		width: 44px !important;
		height: 44px !important;
		min-width: 44px !important;
		min-height: 44px !important;
		padding: 0 !important;
		border: 1px solid rgba(0, 42, 58, 0.14) !important;
		border-radius: 999px !important;
		background: #fff !important;
		background-color: #fff !important;
		color: #002a3a !important;
		font-size: 18px !important;
		line-height: 1 !important;
	}

	.lm-references-toolbar__row {
		align-items: center;
	}

	.lm-references-search,
	.lm-references-filter-btn {
		align-self: center;
	}
}

@media (prefers-reduced-motion: reduce) {
	.lm-references-ledger__toggle-icon {
		transition: none;
	}
}
