/* ===== MRT Totem – front-end (1080x1920) ===== */
@font-face {
    font-family: 'Butler';
    src: url('../fonts/Butler_Light.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

:root{
	--gold:#b29667;
	--gold-deep:#B89A63;
	--tan:#b29667;
	--tan-light:#CDB68B;
	--black:#000;
	--dark:#151515;
	--dark-soft:#2e2c29;
	--light:#ECEAE5;
	--green:#6FA72C;
	--red:#C8392F;
	--ink:#1b1b1b;
	
	--font-serif:"Butler", Georgia, "Times New Roman", serif;
	--font-sans:"Roboto Condensed", Arial, sans-serif;
}

*{box-sizing:border-box;margin:0;padding:0;}

/* Corsivo per il testo dopo la "/" nelle etichette */
.mrt-em-after-slash{font-style:italic;}

html,body{width:100%;height:100%;}
.mrt-body{
	background:#151515;
	font-family:var(--font-sans);
	overflow:hidden;
	color:#fff;
}

/* Scaling stage: fixed 1080x1920, scaled to fit the screen by JS */
.mrt-viewport{
	position:fixed;
	inset:0;
	background:#000;
	display:flex;
	align-items:center;
	justify-content:center;
	overflow:hidden;
}
.mrt-stage{
	width:1080px;
	height:1920px;
	transform-origin:center center;
	position:relative;
	background:#000;
	display:flex;
	flex-direction:column;
}
.mrt-stage::before{
	content:'';
	position:absolute;
	top:180px;
	bottom:569px;
	left:0;
	width:120px;
	background:var(--tan);
	z-index:2;
}
.mrt-stage > *{
	position:relative;
	z-index:1;
}
/* Hide the left gold bar while the active slide is a full-screen image */
.mrt-stage:has(.mrt-slide.is-active.mrt-slide--full)::before{display:none;}

/* ---------- ZONA 1: slider ---------- */
.mrt-slider{
	position:relative;
	height:1350px;
	flex:0 0 1350px;
}
.mrt-slide{
	position:absolute;
	inset:0;
	display:flex;
	flex-direction:column;
	opacity:0;
	visibility:hidden;
	transition:opacity .8s ease;
}
.mrt-slide.is-active{opacity:1;visibility:visible;}
.mrt-bg-dark .mrt-body-zone{background:var(--dark);}
.mrt-bg-light .mrt-body-zone{background:var(--light);}

.mrt-empty{
	display:flex;align-items:center;justify-content:center;height:100%;
	color:var(--gold);font-size:34px;text-align:center;padding:80px;background:var(--dark);
}

/* Header */
.mrt-header{
	height:180px;
	flex:0 0 180px;
	background:#000;
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:20px 48px 0 48px;
}
.mrt-logo{display:flex;flex-direction:column;justify-content:center;line-height:1;}
.mrt-logo img{max-height:140px;width:auto;display:block; margin-bottom:50px;}
.mrt-logo-mark{
	font-family:var(--font-serif);
	font-weight:700;
	font-size:74px;
	color:#fff;
	letter-spacing:-2px;
}
.mrt-logo-r{color:var(--gold);}
.mrt-logo-sub{
	font-family:var(--font-sans);
	font-size:18px;
	letter-spacing:1px;
	color:#fff;
	margin-top:4px;
}
.mrt-slide-title{
	font-family:var(--font-serif);
	font-weight:300;
	font-size:78px;
	color:var(--gold);
	line-height:1;
	text-align:right;
}
.mrt-header-rule{height:4px;background:var(--tan);flex:0 0 4px;}

/* Fullscreen slide: single image fills the body, header stays on top */
.mrt-fullimg{
	flex:1 1 auto;
	min-height:0;
	overflow:hidden;
	background:#000;
}
.mrt-fullimg img{
	width:100%;
	height:100%;
	object-fit:cover;
	display:block;
}

/* Body zone: images + table */
.mrt-body-zone{
	flex:1 1 auto;
	display:flex;
	gap:0px;
	padding: 68px 40px 79px 160px;
	min-height:0;
}

/* Images column */
.mrt-images{
	flex:0 0 273px;
	display:flex;
	flex-direction:column;
	gap:26px;
	padding-top: 50px;
}
.mrt-img{
	position:relative;
	width:230px;
	height:300px;
	overflow:hidden;
	background:#000;
	margin-bottom: 22px;
	
}
.mrt-img img{width:100%;height:100%;object-fit:cover;display:block;}
.mrt-img figcaption{
	position:absolute;
	left:0;right:0;bottom:0;
	background:var(--gold);
	color:#fff;
	font-size:21px;
	line-height:1.2;
	padding:12px 16px;
	height: 74px;
}

/* Table column */
.mrt-table{flex:1 1 auto;display:flex;flex-direction:column;min-width:0;}
.mrt-bg-light .mrt-table{color:var(--ink);}
.mrt-table-head{
	display:flex;
	align-items:center;
	color:white;
	font-size:20px;
}
.mrt-bg-light .mrt-table-head{color:#555;}
.mrt-th-icons{display:inline-flex;gap:10px;color:#eceae5;margin-right:16px;}
.mrt-ic{width:34px;height:34px;display:block;}
.mrt-th-title{flex:1 1 auto; color:#eceae5;}
.mrt-th-floor{color: #eceae5;}
.mrt-bg-light .mrt-th-floor{color:#555;}
.mrt-table-rule{height:3px;background:var(--gold-deep);margin:12px 0 22px;}

.mrt-rows{list-style:none;}
.mrt-row{
    display: flex;
    gap: 20px;
    padding: 4px 0 0 7px;
    font-size: 26px;
    color: #f0efed;
    align-items: flex-start;
}
.mrt-bg-light .mrt-row{color:var(--ink);}
.mrt-dot{
	width:22px;height:22px;border-radius:50%;flex:0 0 22px;display:inline-block; margin: 4px 0;
}
.mrt-dot-open{background:var(--green);}
.mrt-dot-closed{background:var(--red);}
.mrt-room{flex:1 1 auto;line-height:1.15;}
.mrt-floor{color:var(--gold);font-size:30px;min-width:60px;text-align:right;}

.mrt-phrase{
	margin-top:40px;
	font-size:26px;
	line-height:1.35;
	color:#e7e6e3;
	margin-left: 91px;
	width: 80%;
}
.mrt-bg-light .mrt-phrase{color:#333;}
.mrt-phrase p{margin:0 0 6px;}

/* ---------- ZONA 2: info statica ---------- */
.mrt-info{
	flex:0 0 465px;
	height:465px;
	background:#000000;
	color:var(--light);
	display:flex;
	padding:40px 53px;
	gap:30px;
}
.mrt-info-col{flex:1 1 0;min-width:0;}
.mrt-info-title{
	font-family:var(--font-sans);
	font-weight:700;
	font-size:23px;
	letter-spacing:.3px;
	line-height:1.25;
	margin-bottom:14px;
	text-transform:uppercase;
	color:var(--tan);
}


.mrt-info-title-sub{font-style:italic; font-weight:400;}
.mrt-info-body{font-size:21px;line-height:1.50;}
.mrt-info-body p{margin:0 0 18px;}
.mrt-info-body p:last-child{margin-bottom:0;}
.mrt-info-body .mrt-sub{display:block;line-height:1.1;}
.mrt-info-body em{font-style:italic;}
.mrt-info-body strong{font-weight:700;font-size:24px;color:var(--tan);}

.mrt-info-visit{flex:1 1 0;}
.mrt-info-ticket{flex:1 1 0;}
.mrt-info-side{
	flex:1 1 0;
	display:flex;
	flex-direction:column;
	align-items:flex-end;
	justify-content:flex-start;
	gap:28px;
}
.mrt-info-legend{width:65%;}
.mrt-info-qr{display:flex;gap:100px;justify-content:flex-end;padding-top: 53px;}

.mrt-info-legend ul{list-style:none;display:flex;flex-direction:column;gap:8px;align-items:flex-start;}
.mrt-info-legend li{display:flex;align-items:center;gap:12px;font-size:19px;    font-weight: 200;}
.mrt-info-legend .mrt-ic{width:34px;height:34px;}
.mrt-info-legend .mrt-dot{width:22px;height:22px;flex:0 0 22px;margin-left: 7px;
    margin-right: 7px;}

.mrt-qr{display:flex;flex-direction:column;align-items:center;gap:8px;}
.mrt-qr img{width:130px;height:130px;display:block;background:#fff;}
.mrt-qr figcaption{font-family:var(--font-serif);font-size:17px;color:var(--tan);text-align:center;}

/* ---------- ZONA 3: ticker ---------- */
.mrt-ticker{
	flex:0 0 100px;
	height:100px;
	background:var(--tan);
	display:flex;
	align-items:center;
	position:relative;
	color:#3a342a;
	    padding: 0 54px;
}
.mrt-ticker-arrow{
	font-size:46px;
	color:#4a4334;
	padding:0 40px;
	flex:0 0 auto;
	z-index:2;
	display:none
}
.mrt-ticker-label{
	position:absolute;
	left:50%;
	transform:translateX(-50%);
	font-size:40px;
	color:#3a342a;
	pointer-events:none;
	opacity:.0; /* label is shown only if there is no ticker text; see JS */
}
.mrt-ticker-window{
	flex:1 1 auto;
	overflow:hidden;
	height:100%;
	display:flex;
	align-items:center;
	position:relative;
}
.mrt-ticker-track{
	display:inline-flex;
	white-space:nowrap;
	will-change:transform;
	padding-left:100%;
	animation:mrt-ticker-scroll linear infinite;
}
.mrt-ticker-item{
	font-size:38px;
	color:#33302a;
	padding-right:120px;
	padding: 0 20px;
}
.mrt-ticker-item p{display:inline;margin:0;}
@keyframes mrt-ticker-scroll{
	from{transform:translateX(0);}
	to{transform:translateX(-100%);}
}



/* Full-bleed image slide: header stays, image fills the rest of zona 1 */
.mrt-slide-full{background:#000;}
.mrt-full-media{flex:1 1 auto;min-height:0;background:#000;overflow:hidden;}
.mrt-full-img{width:100%;height:100%;object-fit:cover;display:block;}
