body.fws-slab-preview-body {
	background: #090a0a;
	color: var(--fws-paper);
}

body.fws-slab-no-scroll { overflow: hidden; }

.fws-slab-preview,
.fws-slab-preview button,
.fws-slab-preview input,
.fws-slab-preview select { font-family: var(--fws-ui); }

.fws-slab-preview a { color: inherit; text-decoration: none; }

.fws-slab-header {
	align-items: stretch;
	backdrop-filter: blur(18px);
	background: rgba(8, 9, 9, .94);
	border-bottom: 1px solid rgba(255,255,255,.13);
	display: grid;
	grid-template-columns: minmax(170px,1fr) auto minmax(230px,1fr);
	height: 78px;
	padding: 0 clamp(22px,3vw,52px);
}

.fws-slab-header .fws-preview-header__brand { align-items:center; display:inline-flex; justify-self:start; }
.fws-slab-header .fws-preview-header__brand img { width: clamp(148px,12vw,178px); }

.fws-slab-header__nav.fws-preview-header__nav {
	align-items: stretch;
	display:flex;
	gap:clamp(24px,3vw,46px);
	left:auto;
	position:static;
	transform:none;
}
.fws-slab-header__nav.fws-preview-header__nav a {
	align-items:center;
	color:rgba(255,255,255,.58);
	display:flex;
	font-size:9px;
	height:78px;
	letter-spacing:.13em;
	position:relative;
	text-transform:uppercase;
}
.fws-slab-header__nav.fws-preview-header__nav a::after { display:none; }
.fws-slab-header__nav.fws-preview-header__nav a:hover,
.fws-slab-header__nav.fws-preview-header__nav a:focus-visible,
.fws-slab-header__nav.fws-preview-header__nav a.is-active { color:var(--fws-gold); }
.fws-slab-header__nav.fws-preview-header__nav a.is-active::after {
	background:var(--fws-gold);
	bottom:17px;
	content:"";
	display:block;
	height:1px;
	left:0;
	position:absolute;
	right:0;
}

.fws-slab-header__actions { align-items:stretch; display:flex; justify-self:end; }
.fws-slab-header__selection,
.fws-slab-header__external {
	align-items:center;
	border-left:1px solid rgba(255,255,255,.13);
	display:flex;
	font-size:8px;
	letter-spacing:.13em;
	text-transform:uppercase;
}
.fws-slab-header__selection { gap:13px; padding:0 20px; }
.fws-slab-header__selection strong {
	align-items:center;
	border:1px solid rgba(255,255,255,.28);
	border-radius:50%;
	display:flex;
	font-size:8px;
	height:24px;
	justify-content:center;
	width:24px;
}
.fws-slab-header__selection:hover strong { border-color:var(--fws-gold); color:var(--fws-gold); }
.fws-slab-header__external { color:rgba(255,255,255,.64); gap:20px; padding:0 0 0 20px; }
.fws-slab-header__external span { color:var(--fws-gold); }

.fws-slab-hero {
	display:grid;
	grid-template-columns:minmax(0,68%) minmax(350px,32%);
	min-height:calc(100svh - 78px);
	padding-top:78px;
}

.fws-slab-hero__visual {
	background:radial-gradient(circle at 40% 30%, #181a1a 0, #0e0f0f 48%, #090a0a 100%);
	border-right:1px solid rgba(255,255,255,.12);
	display:grid;
	grid-template-rows:auto minmax(0,1fr) auto;
	min-height:720px;
	padding:24px clamp(26px,3vw,52px) 22px;
}

.fws-slab-hero__visual-head { align-items:center; display:flex; justify-content:space-between; min-height:42px; }
.fws-slab-back {
	align-items:center;
	color:rgba(255,255,255,.66);
	display:flex;
	font-size:9px;
	gap:12px;
	letter-spacing:.13em;
	text-transform:uppercase;
	transition:color .25s ease;
}
.fws-slab-back span { color:var(--fws-gold); font-size:15px; }
.fws-slab-back:hover { color:#fff; }
.fws-slab-hero__position { align-items:baseline; display:flex; gap:10px; text-transform:uppercase; }
.fws-slab-hero__position span { color:rgba(255,255,255,.44); font-size:8px; letter-spacing:.14em; }
.fws-slab-hero__position strong { color:var(--fws-gold); font-family:var(--fws-display); font-size:20px; font-weight:500; }

.fws-slab-image {
	align-items:center;
	display:flex;
	justify-content:center;
	margin:0;
	min-height:0;
	overflow:hidden;
	position:relative;
}
.fws-slab-image::before {
	border:1px solid rgba(185,154,98,.2);
	content:"";
	inset:5% 4%;
	pointer-events:none;
	position:absolute;
}
.fws-slab-image img {
	filter:saturate(.96) contrast(1.02);
	max-height:calc(100svh - 230px);
	max-width:94%;
	object-fit:contain;
	transition:opacity .3s ease, transform .7s cubic-bezier(.16,1,.3,1);
}
.fws-slab-image img.is-switching { opacity:.18; transform:scale(.992); }
.fws-slab-image__zoom {
	background:rgba(9,10,10,.82);
	border:1px solid rgba(185,154,98,.52);
	bottom:22px;
	color:#fff;
	cursor:pointer;
	font-size:8px;
	letter-spacing:.12em;
	padding:11px 13px;
	position:absolute;
	right:4%;
	text-transform:uppercase;
}
.fws-slab-image__zoom span { color:var(--fws-gold); margin-left:13px; }

.fws-slab-gallery {
	align-items:center;
	border-top:1px solid rgba(255,255,255,.1);
	display:flex;
	gap:10px;
	min-height:92px;
	padding-top:14px;
}
.fws-slab-gallery__thumb {
	background:#111212;
	border:1px solid rgba(255,255,255,.13);
	cursor:pointer;
	height:68px;
	overflow:hidden;
	padding:0;
	position:relative;
	width:94px;
}
.fws-slab-gallery__thumb img { height:100%; object-fit:cover; opacity:.62; transition:opacity .25s ease, transform .4s ease; width:100%; }
.fws-slab-gallery__thumb span { background:rgba(9,10,10,.7); bottom:0; color:rgba(255,255,255,.72); font-size:6px; left:0; letter-spacing:.12em; padding:5px 7px; position:absolute; text-transform:uppercase; }
.fws-slab-gallery__thumb:hover img,
.fws-slab-gallery__thumb.is-active img { opacity:1; transform:scale(1.035); }
.fws-slab-gallery__thumb.is-active { border-color:var(--fws-gold); }

.fws-slab-panel {
	background:linear-gradient(145deg,#151616 0,#101111 64%,#0d0e0e 100%);
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding:clamp(38px,4vw,66px) clamp(34px,3.4vw,62px);
}
.fws-slab-panel__heading .fws-eyebrow { color:var(--fws-gold); font-size:8px; letter-spacing:.18em; margin:0 0 14px; text-transform:uppercase; }
.fws-slab-panel__heading h1 {
	font-family:var(--fws-display);
	font-size:clamp(42px,4.5vw,70px);
	font-weight:500;
	letter-spacing:-.045em;
	line-height:.95;
	margin:0;
	text-transform:uppercase;
}
.fws-slab-panel__code { color:rgba(255,255,255,.58); font-size:10px; letter-spacing:.1em; margin:16px 0 0; text-transform:uppercase; }
.fws-slab-panel__rule { background:var(--fws-gold); display:block; height:1px; margin:26px 0 18px; width:46px; }
.fws-slab-availability { align-items:center; display:flex; font-size:9px; gap:9px; letter-spacing:.11em; text-transform:uppercase; }
.fws-slab-availability i { background:#777; border-radius:50%; height:6px; width:6px; }
.fws-slab-availability.is-available i { background:#78955f; box-shadow:0 0 0 4px rgba(120,149,95,.08); }
.fws-slab-availability.is-unavailable { color:rgba(255,255,255,.42); }

.fws-slab-primary-size {
	border-bottom:1px solid rgba(255,255,255,.12);
	border-top:1px solid rgba(255,255,255,.12);
	margin-top:28px;
	padding:22px 0;
}
.fws-slab-primary-size span,
.fws-slab-material span { color:rgba(255,255,255,.42); display:block; font-size:7px; letter-spacing:.15em; margin-bottom:8px; text-transform:uppercase; }
.fws-slab-primary-size strong { font-family:var(--fws-display); font-size:clamp(27px,2.4vw,38px); font-weight:500; letter-spacing:-.025em; }
.fws-slab-primary-size small { color:var(--fws-gold); font-family:var(--fws-ui); font-size:9px; font-weight:500; letter-spacing:.1em; text-transform:uppercase; }

.fws-slab-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin:0; }
.fws-slab-facts div { border-bottom:1px solid rgba(255,255,255,.1); min-width:0; padding:16px 12px 15px 0; }
.fws-slab-facts div:nth-child(even) { border-left:1px solid rgba(255,255,255,.1); padding-left:16px; }
.fws-slab-facts dt { color:rgba(255,255,255,.38); font-size:7px; letter-spacing:.13em; margin-bottom:7px; text-transform:uppercase; }
.fws-slab-facts dd { color:#fff; font-family:var(--fws-display); font-size:14px; margin:0; overflow-wrap:anywhere; }

.fws-slab-material { padding:18px 0 20px; }
.fws-slab-material strong { display:block; font-family:var(--fws-display); font-size:18px; font-weight:500; }
.fws-slab-material small { color:rgba(255,255,255,.48); display:block; font-size:8px; letter-spacing:.1em; margin-top:5px; text-transform:uppercase; }

.fws-slab-actions { display:grid; gap:8px; margin-top:4px; }
.fws-slab-action {
	align-items:center;
	background:transparent;
	border:1px solid rgba(255,255,255,.18);
	color:#fff;
	cursor:pointer;
	display:flex;
	font-size:8px;
	justify-content:space-between;
	letter-spacing:.13em;
	min-height:48px;
	padding:0 17px;
	text-transform:uppercase;
	transition:border-color .25s ease, background .25s ease, color .25s ease;
}
.fws-slab-action i { color:var(--fws-gold); font-size:15px; font-style:normal; }
.fws-slab-action:hover { border-color:var(--fws-gold); }
.fws-slab-action--primary { border-color:var(--fws-gold); }
.fws-slab-action--primary.is-selected { background:var(--fws-gold); color:#0b0c0c; }
.fws-slab-action--primary.is-selected i { color:#0b0c0c; }
.fws-slab-action--primary:disabled { border-color:rgba(255,255,255,.12); color:rgba(255,255,255,.34); cursor:not-allowed; }
.fws-slab-action--quiet { color:rgba(255,255,255,.6); }

.fws-slab-neighbours {
	background:#0d0e0e;
	border-top:1px solid rgba(255,255,255,.12);
	display:grid;
	grid-template-columns:1fr auto 1fr;
	min-height:126px;
	padding:0 clamp(26px,4vw,70px);
}
.fws-slab-neighbours > a,
.fws-slab-neighbours > div { align-items:flex-start; display:flex; flex-direction:column; justify-content:center; padding:24px 0; }
.fws-slab-neighbours > div { align-items:center; border-left:1px solid rgba(255,255,255,.1); border-right:1px solid rgba(255,255,255,.1); min-width:150px; padding-left:28px; padding-right:28px; }
.fws-slab-neighbours a.is-next { align-items:flex-end; text-align:right; }
.fws-slab-neighbours small { color:var(--fws-gold); font-size:7px; letter-spacing:.15em; margin-bottom:7px; text-transform:uppercase; }
.fws-slab-neighbours strong { font-family:var(--fws-display); font-size:17px; font-weight:500; }
.fws-slab-neighbours span { color:rgba(255,255,255,.4); font-size:7px; letter-spacing:.09em; margin-top:5px; text-transform:uppercase; }
.fws-slab-neighbours a:hover strong { color:var(--fws-gold); }

.fws-slab-footer { background:#080909; border-top-color:rgba(255,255,255,.12); }

.fws-slab-lightbox {
	align-items:center;
	background:rgba(4,4,4,.95);
	display:flex;
	inset:0;
	justify-content:center;
	padding:5vw;
	position:fixed;
	z-index:99999;
}
.fws-slab-lightbox[hidden] { display:none; }
.fws-slab-lightbox img { max-height:90vh; max-width:92vw; object-fit:contain; }
.fws-slab-lightbox button { background:#111; border:1px solid rgba(255,255,255,.22); color:#fff; cursor:pointer; font-size:25px; height:46px; position:absolute; right:28px; top:24px; width:46px; }
.fws-slab-lightbox button:hover { border-color:var(--fws-gold); color:var(--fws-gold); }

@media (max-width: 1050px) {
	.fws-slab-header { grid-template-columns:1fr auto; }
	.fws-slab-header__nav { display:none !important; }
	.fws-slab-hero { grid-template-columns:1fr; }
	.fws-slab-hero__visual { border-right:0; min-height:680px; padding-top:18px; }
	.fws-slab-image img { max-height:560px; }
	.fws-slab-panel { border-top:1px solid rgba(255,255,255,.12); padding:46px clamp(24px,6vw,64px); }
}

@media (max-width: 680px) {
	.fws-slab-header { height:66px; padding:0 16px; }
	.fws-slab-header .fws-preview-header__brand img { width:126px; }
	.fws-slab-header__external { display:none; }
	.fws-slab-header__selection { border-right:0; padding:0 0 0 14px; }
	.fws-slab-hero { padding-top:66px; }
	.fws-slab-hero__visual { min-height:auto; padding:16px; }
	.fws-slab-hero__visual-head { margin-bottom:10px; }
	.fws-slab-image { min-height:340px; }
	.fws-slab-image::before { inset:2%; }
	.fws-slab-image img { max-height:400px; max-width:100%; }
	.fws-slab-image__zoom { bottom:10px; right:2%; }
	.fws-slab-gallery { overflow-x:auto; }
	.fws-slab-panel { padding:34px 20px 38px; }
	.fws-slab-panel__heading h1 { font-size:42px; }
	.fws-slab-primary-size strong { font-size:28px; }
	.fws-slab-facts { grid-template-columns:1fr; }
	.fws-slab-facts div:nth-child(even) { border-left:0; padding-left:0; }
	.fws-slab-neighbours { grid-template-columns:1fr 1fr; padding:0 20px; }
	.fws-slab-neighbours > div { display:none; }
	.fws-slab-neighbours > a { min-width:0; }
	.fws-slab-footer { display:none; }
}

/* 0.16.0 — polish responsive scheda lastra */
@media (max-width: 1050px) {
	.fws-slab-panel { padding-top: 42px; }
	.fws-slab-actions { grid-template-columns: repeat(3,minmax(0,1fr)); }
	.fws-slab-action { min-height: 46px; }
}

@media (max-width: 680px) {
	.fws-slab-hero { padding-top: 106px; }
	.fws-slab-hero__visual { padding: 18px 16px 16px; }
	.fws-slab-image { min-height: 330px; }
	.fws-slab-panel { padding: 36px 18px 40px; }
	.fws-slab-panel__heading .fws-eyebrow { font-size: 9px; }
	.fws-slab-panel__heading h1 { font-size: clamp(40px, 12vw, 52px); line-height: .93; }
	.fws-slab-panel__code { font-size: 10px; line-height: 1.5; }
	.fws-slab-availability { font-size: 9px; }
	.fws-slab-primary-size strong { font-size: 30px; }
	.fws-slab-facts dt { font-size: 8.5px; }
	.fws-slab-facts dd { font-size: 11px; }
	.fws-slab-actions { grid-template-columns: 1fr; }
	.fws-slab-action { font-size: 9px; min-height: 48px; }
	.fws-slab-gallery__thumb { min-width: 82px; }
	.fws-slab-neighbours { min-height: 112px; padding: 0 18px; }
	.fws-slab-neighbours strong { font-size: 16px; }
}

@media (max-width: 390px) {
	.fws-slab-image { min-height: 290px; }
	.fws-slab-panel { padding-inline: 16px; }
	.fws-slab-neighbours { padding-inline: 14px; }
	.fws-slab-neighbours strong { font-size: 14px; }
}
