/* Living Salon Wall; page-specific presentation for preview page 1267. */
body.page-id-1267 #main-container { background: #f3efe8; }
body.page-id-1267 .tf-header-text,
body.page-id-1267 .ct-footer { color-scheme: light; }

.tf-salon-preview {
	position: relative;
	left: 50%;
	width: 100vw !important;
	max-width: 100vw !important;
	margin-left: -50vw !important;
	padding: 0;
	background: #f3efe8;
	color: #29251f;
}
.tf-salon-preview,
.tf-salon-preview * { box-sizing: border-box; }
.tf-salon-preview a { text-decoration: none; }
.tf-salon { padding: 0; }
.tf-salon-room {
	position: relative;
	width: 100%;
	height: clamp(580px, 64vw, 980px);
	min-height: 580px;
	overflow: hidden;
	background: #d7cbbb;
	isolation: isolate;
}
.tf-salon-room__setting {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	transition: opacity .5s ease;
}
.tf-salon-room__setting--light { opacity: 1; }
.tf-salon-room__setting--dark { opacity: 0; }
[data-theme="dark"] .tf-salon-room__setting--light { opacity: 0; }
[data-theme="dark"] .tf-salon-room__setting--dark { opacity: 1; }
.tf-salon-wall {
	position: absolute;
	z-index: 2;
	top: 106px;
	left: 7%;
	width: 86%;
	height: 42%;
	contain: layout;
}
.tf-salon-artwork[hidden] { display: none !important; }
.tf-salon-artwork {
	position: absolute;
	display: block;
	padding: 0;
	border: 0;
	background: transparent;
	box-shadow: 0 4px 11px rgba(24, 20, 15, .24);
	transition: left .62s cubic-bezier(.2,.78,.25,1), top .62s cubic-bezier(.2,.78,.25,1), width .4s ease, height .4s ease, transform .35s ease, box-shadow .3s ease;
	-webkit-tap-highlight-color: transparent;
}
.tf-salon-artwork__image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	background: transparent;
}
.tf-salon-artwork:hover,
.tf-salon-artwork:focus-visible {
	z-index: 4 !important;
	box-shadow: 0 7px 16px rgba(20, 17, 13, .28);
	transform: scale(1.015);
}
.tf-salon-artwork:focus-visible { outline: 2px solid #745c3e; outline-offset: 5px; }
.tf-salon-controls {
	position: absolute;
	z-index: 5;
	bottom: 24px;
	left: 50%;
	display: flex;
	align-items: center;
	gap: 4px;
	margin: 0;
	padding: 6px 8px;
	border: 1px solid rgba(255,255,255,.55);
	border-radius: 999px;
	background: rgba(24, 22, 20, .56);
	color: #fff;
	font: 500 12px/1.2 system-ui, sans-serif;
	transform: translateX(-50%);
	backdrop-filter: blur(8px);
}
.tf-salon-controls legend {
	float: left;
	width: auto;
	margin: 0 4px 0 0;
	padding: 0 4px;
	color: rgba(255,255,255,.82);
	font-size: 11px;
}
.tf-salon-controls button {
	min-width: 34px;
	min-height: 32px;
	padding: 5px 8px;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: #fff;
	cursor: pointer;
	font: inherit;
}
.tf-salon-controls button[aria-pressed="true"] { background: #f2e8d8; color: #28231d; }
.tf-salon-controls button:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }
.tf-salon-shop {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
	width: min(900px, calc(100% - 32px));
	margin: 32px auto clamp(52px, 8vw, 96px);
}
.tf-salon-shop a,
.tf-salon-shop__disabled {
	display: flex;
	min-height: 72px;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 18px 23px;
	border: 1px solid rgba(135, 108, 72, .5);
	background: rgba(255, 253, 249, .78);
	color: #30291f;
	font: 500 14px/1.4 Georgia, "Times New Roman", serif;
	text-decoration: none;
	transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}
.tf-salon-shop a span { color: #9a6d37; font: 500 17px/1 system-ui,sans-serif; }
.tf-salon-shop a:hover,
.tf-salon-shop a:focus-visible { border-color: #937148; background: #fffdfa; transform: translateY(-2px); }
.tf-salon-shop a:focus-visible { outline: 2px solid #876a40; outline-offset: 4px; }
.tf-salon-shop__disabled { border-style: dashed; color: #6e675f; opacity: .7; }
[data-theme="dark"] .tf-salon-shop a,
[data-theme="dark"] .tf-salon-shop__disabled { border-color: rgba(222, 202, 173, .5); background: #24232b; color: #f4efe7; }
[data-theme="dark"] .tf-salon-shop a span { color: #ddbd89; }
.tf-salon-empty { margin: 0; padding: 70px 20px; text-align: center; }
@media (max-width: 760px) {
	.tf-salon-room { height: 580px; min-height: 580px; }
	.tf-salon-room__setting { object-position: center 44%; }
	.tf-salon-wall { top: 78px; left: 4%; width: 92%; height: 39%; }
	.tf-salon-controls { bottom: 18px; }
	.tf-salon-controls legend { font-size: 10px; }
	.tf-salon-shop { grid-template-columns: 1fr; width: calc(100% - 28px); gap: 10px; margin-top: 20px; }
	.tf-salon-shop a,
	.tf-salon-shop__disabled { min-height: 60px; padding: 15px 18px; }
}
@media (prefers-reduced-motion: reduce) {
	.tf-salon-room__setting,
	.tf-salon-artwork { transition: none !important; }
}

.tf-wallpaper-signup {
	display: grid;
	grid-template-columns: minmax(190px, .9fr) minmax(270px, 1.15fr) minmax(260px, .95fr);
	align-items: center;
	gap: clamp(22px, 4vw, 54px);
	width: min(1180px, calc(100% - 48px));
	margin: 0 auto clamp(64px, 9vw, 112px);
	padding: clamp(28px, 4vw, 52px);
	border: 1px solid rgba(135, 108, 72, .26);
	background: #f5f0e7;
	color: #30291f;
}
.tf-wallpaper-signup__intro h2 {
	margin: 0 0 14px;
	color: #30291f;
	font: 400 clamp(26px, 3vw, 38px)/1.12 Georgia, "Times New Roman", serif;
}
.tf-wallpaper-signup__intro p { margin: 0 0 13px; color: #51483c; font-size: 15px; line-height: 1.6; }
.tf-wallpaper-signup__intro .tf-wallpaper-signup__eyebrow {
	margin: 0 0 10px;
	color: #86683e;
	font: 600 10px/1.4 system-ui, sans-serif;
	letter-spacing: .13em;
	text-transform: uppercase;
}
.tf-wallpaper-signup__intro .tf-wallpaper-signup__offer { margin-bottom: 12px; color: #30291f; font-size: 16px; line-height: 1.5; }
.tf-wallpaper-previews {
	display: flex;
	align-items: end;
	justify-content: center;
	gap: clamp(12px, 2vw, 25px);
	min-width: 0;
}
.tf-wallpaper-preview { margin: 0; text-align: center; }
.tf-wallpaper-preview__device { padding: 7px; border: 1px solid #b5a990; background: #25242a; box-shadow: 0 12px 28px rgba(36, 29, 20, .17); }
.tf-wallpaper-preview__screen { overflow: hidden; background: #111; }
.tf-wallpaper-preview__screen img { display: block; width: 100%; height: 100%; object-fit: cover; }
.tf-wallpaper-preview--phone .tf-wallpaper-preview__device { width: 108px; padding: 7px; border-radius: 20px; }
.tf-wallpaper-preview--phone .tf-wallpaper-preview__screen { aspect-ratio: 9 / 16; border-radius: 13px; }
.tf-wallpaper-preview--desktop { width: min(100%, 310px); }
.tf-wallpaper-preview--desktop .tf-wallpaper-preview__device { padding: 7px 7px 11px; border-radius: 7px; }
.tf-wallpaper-preview--desktop .tf-wallpaper-preview__screen { aspect-ratio: 16 / 10; }
.tf-wallpaper-preview--desktop .tf-wallpaper-preview__screen img { object-fit: contain; }
.tf-wallpaper-preview figcaption { margin-top: 9px; color: #62594e; font: 500 11px/1.3 system-ui, sans-serif; }
.tf-wallpaper-signup__form { min-width: 0; }
.tf-wallpaper-signup__form .fluentform { margin: 0; }
.tf-wallpaper-signup__form .ff-el-group { margin-bottom: 15px; }
.tf-wallpaper-signup__form .ff-el-form-control { min-height: 48px; border-color: #b8aa96; background: #fffdfa; color: #30291f; }
.tf-wallpaper-signup__form .ff-el-form-check { display: flex; align-items: start; gap: 10px; }
.tf-wallpaper-signup__form .ff-el-form-check input { flex: 0 0 auto; margin-top: 5px; }
.tf-wallpaper-signup__form .ff-el-form-check-label { color: #51483c; font-size: 12px; line-height: 1.5; }
.tf-wallpaper-signup__form .ff-btn-submit { min-height: 48px; padding: 12px 20px; border: 0; background: #6f5435; color: #fff; font: 600 13px/1.4 system-ui, sans-serif; }
.tf-wallpaper-signup__form .ff-btn-submit:hover,
.tf-wallpaper-signup__form .ff-btn-submit:focus-visible { background: #493722; }
.tf-wallpaper-signup__form .ff-btn-submit:focus-visible { outline: 2px solid #6f5435; outline-offset: 3px; }
.tf-wallpaper-signup__privacy { margin: 13px 0 0; color: #6a6257; font-size: 11px; line-height: 1.5; }
[data-theme="dark"] .tf-wallpaper-signup { border-color: rgba(222, 202, 173, .25); background: #24232b; color: #f4efe7; }
[data-theme="dark"] .tf-wallpaper-signup__intro h2,
[data-theme="dark"] .tf-wallpaper-signup__intro .tf-wallpaper-signup__offer { color: #f4efe7; }
[data-theme="dark"] .tf-wallpaper-signup__intro p,
[data-theme="dark"] .tf-wallpaper-signup__form .ff-el-form-check-label { color: #ded6c9; }
[data-theme="dark"] .tf-wallpaper-signup__intro .tf-wallpaper-signup__eyebrow,
[data-theme="dark"] .tf-wallpaper-preview figcaption { color: #d1b78f; }
[data-theme="dark"] .tf-wallpaper-signup__privacy { color: #c3bbaf; }
@media (max-width: 900px) {
	.tf-wallpaper-signup { grid-template-columns: minmax(0, 1fr) minmax(230px, .9fr); gap: 26px; }
	.tf-wallpaper-signup__intro { grid-column: 1 / -1; max-width: 660px; }
	.tf-wallpaper-previews { justify-content: start; }
}
@media (max-width: 600px) {
	.tf-wallpaper-signup { grid-template-columns: 1fr; width: calc(100% - 28px); gap: 24px; margin-bottom: 52px; padding: 24px 19px; }
	.tf-wallpaper-signup__intro { grid-column: auto; }
	.tf-wallpaper-previews { justify-content: center; }
	.tf-wallpaper-preview--phone .tf-wallpaper-preview__device { width: 88px; }
	.tf-wallpaper-preview--desktop { width: min(62vw, 260px); }
}


/* Collector navigation and support footer are scoped to the unapproved preview page. */
body.page-id-1267 #header,
body.page-id-1267 .tf-footer-columns-wrap,
body.page-id-1267 #footer,
body.tf-collector-preview #header,
body.tf-collector-preview .tf-footer-columns-wrap,
body.tf-collector-preview #footer { display: none !important; }
.tf-preview-header {
	position: relative;
	z-index: 20;
	display: flex;
	min-height: 74px;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 10px clamp(18px, 5vw, 68px);
	background: #181722;
	color: #fff;
}
.tf-preview-header__brand { display: flex; flex: 0 0 auto; align-items: center; }
.tf-preview-header__logo { display: block; width: clamp(112px, 12vw, 158px); height: auto; }
.tf-preview-header__wordmark { color: #f7e9f3; font: italic 25px/1 Georgia,serif; }
.tf-preview-primary-nav { display: flex; align-items: center; gap: clamp(16px, 2.6vw, 38px); }
.tf-preview-primary-nav a {
	color: #f8f3f7;
	font: 500 12px/1.4 system-ui,sans-serif;
	letter-spacing: .05em;
	text-decoration: none;
}
.tf-preview-primary-nav a:hover,
.tf-preview-primary-nav a:focus-visible { color: #e4b0da; text-decoration: underline; text-underline-offset: 5px; }
.tf-preview-primary-nav a:focus-visible,
.tf-preview-mobile-menu summary:focus-visible { outline: 2px solid #fff; outline-offset: 5px; }
.tf-preview-primary-nav .tf-theme-toggle { list-style: none; }
.tf-preview-primary-nav .tf-theme-toggle a { font-size: 17px; }
.tf-preview-mobile-menu { display: none; position: relative; }
.tf-preview-mobile-menu summary {
	min-width: 48px;
	min-height: 44px;
	padding: 12px 10px;
	border: 1px solid rgba(255,255,255,.35);
	border-radius: 3px;
	color: #fff;
	cursor: pointer;
	font: 600 12px/1.4 system-ui,sans-serif;
	list-style: none;
	text-align: center;
}
.tf-preview-mobile-menu summary::-webkit-details-marker { display: none; }
.tf-preview-primary-nav--mobile {
	position: absolute;
	top: calc(100% + 10px);
	right: 0;
	z-index: 30;
	display: grid;
	min-width: 190px;
	gap: 0;
	padding: 8px;
	border: 1px solid rgba(255,255,255,.18);
	background: #181722;
	box-shadow: 0 12px 28px rgba(0,0,0,.25);
}
.tf-preview-primary-nav--mobile a { padding: 12px 10px; }
.tf-preview-primary-nav--mobile .tf-theme-toggle { padding: 6px 10px; }
.tf-preview-footer {
	display: grid;
	grid-template-columns: 1.2fr 1fr .8fr;
	gap: clamp(24px, 5vw, 72px);
	padding: 42px clamp(24px, 6vw, 82px);
	background: #181722;
	color: #e8e3e9;
}
.tf-preview-footer p { margin: 0 0 12px; color: #e8e3e9; font-size: 13px; line-height: 1.65; }
.tf-preview-footer__eyebrow { color: #c88723 !important; font: 600 11px/1.4 system-ui,sans-serif !important; letter-spacing: .12em; text-transform: uppercase; }
.tf-preview-footer__links,
.tf-preview-footer__members { display: flex; flex-wrap: wrap; align-content: start; gap: 10px 18px; }
.tf-preview-footer__links a,
.tf-preview-footer__members a { color: #f4edf4; font-size: 13px; text-decoration: none; }
.tf-preview-footer__links a:hover,
.tf-preview-footer__members a:hover { color: #e4b0da; text-decoration: underline; text-underline-offset: 4px; }
.tf-preview-footer__members p { width: 100%; color: #c88723; font: 600 11px/1.4 system-ui,sans-serif; letter-spacing: .1em; text-transform: uppercase; }
[data-theme="dark"] .tf-preview-footer { background: #111016; }
@media (max-width: 760px) {
	.tf-preview-header { min-height: 64px; padding: 8px 16px; }
	.tf-preview-primary-nav--desktop { display: none; }
	.tf-preview-mobile-menu { display: block; }
	.tf-preview-footer { grid-template-columns: 1fr 1fr; gap: 22px; padding: 32px 22px; }
	.tf-preview-footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 420px) {
	.tf-preview-footer { grid-template-columns: 1fr; }
	.tf-preview-footer__brand { grid-column: auto; }
}
