body.page-template-page-tf-shop-preview #header,
body.page-template-page-tf-shop-preview .tf-footer-columns-wrap,
body.page-template-page-tf-shop-preview #footer { display: none !important; }
body.page-template-page-tf-shop-preview #main-container { background: #f3efe8; }
.tf-shop-preview,
.tf-shop-preview * { box-sizing: border-box; }
.tf-shop-preview {
	position: relative; left: 50%; width: 100vw !important; max-width: 100vw !important; margin-left: -50vw !important;
	padding: 0 0 clamp(52px, 7vw, 88px); background: #f3efe8; color: #30291f;
}
.tf-shop-slideshow { width: min(1160px, calc(100% - 48px)); margin: 0 auto; padding: clamp(24px, 3.5vw, 42px) 0 20px; }
.tf-shop-slideshow__stage { --shop-gap: 14px; --shop-columns: 5; position: relative; display: flex; min-height: 320px; align-items: center; padding-bottom: 28px; }
.tf-shop-slideshow__viewport { width: calc(100% - 108px); height: 258px; margin: 0 auto; overflow: hidden; }
.tf-shop-track { position: relative; display: flex; width: 100%; height: 100%; gap: var(--shop-gap); transition: transform 1.15s cubic-bezier(.35,.05,.2,1); will-change: transform; }
.tf-shop-slide { display: grid; flex: 0 0 calc((100% - 56px) / 5); height: 100%; place-items: center; margin: 0; padding: 0; }
.tf-shop-slide img { display: block; width: 100%; height: 100%; object-fit: contain; }
.tf-shop-arrow { position: absolute; top: 50%; z-index: 2; display: grid; width: 44px; height: 44px; place-items: center; border: 1px solid rgba(102,82,56,.35); border-radius: 50%; background: rgba(255,253,249,.82); color: #433726; cursor: pointer; transform: translateY(-50%); transition: background-color .2s ease, transform .2s ease; }
.tf-shop-arrow:hover { background: #fff; transform: translateY(-50%) scale(1.05); }
.tf-shop-arrow:focus-visible { outline: 2px solid #745c3e; outline-offset: 3px; }
.tf-shop-arrow span { margin-top: -4px; font: 300 34px/1 Georgia,serif; }
.tf-shop-arrow--previous { left: 0; }
.tf-shop-arrow--next { right: 0; }
.tf-shop-count { position: absolute; bottom: 1px; left: 50%; color: #766c5d; font: 500 11px/1.4 system-ui,sans-serif; letter-spacing: .04em; transform: translateX(-50%); }
.tf-shop-slideshow__empty { color: #655b4e; font: 400 17px/1.6 Georgia,serif; text-align: center; }
.tf-shop-sections { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); width: min(1050px, calc(100% - 48px)); margin: clamp(16px,3vw,34px) auto 0; border-top: 1px solid rgba(135,108,72,.3); border-bottom: 1px solid rgba(135,108,72,.3); }
.tf-shop-card { display: flex; flex-direction: column; align-items: flex-start; padding: clamp(28px,4vw,48px) clamp(24px,4.4vw,58px); }
.tf-shop-card + .tf-shop-card { border-left: 1px solid rgba(135,108,72,.3); }
.tf-shop-card__eyebrow { margin: 0 0 12px; color: #86683e; font: 600 10px/1.4 system-ui,sans-serif; letter-spacing: .13em; text-transform: uppercase; }
.tf-shop-card h1, .tf-shop-card h2 { margin: 0 0 14px; color: #30291f; font: 400 clamp(27px,3vw,38px)/1.12 Georgia,"Times New Roman",serif; }
.tf-shop-card p:not(.tf-shop-card__eyebrow) { margin: 0 0 25px; color: #51483c; font-size: 15px; line-height: 1.7; }
.tf-shop-button { display: inline-flex; min-height: 50px; align-items: center; justify-content: space-between; gap: 18px; margin-top: auto; padding: 13px 18px; border: 1px solid #725738; background: #725738; color: #fff; font: 600 12px/1.35 system-ui,sans-serif; text-decoration: none; transition: background-color .2s ease, transform .2s ease; }
.tf-shop-button:hover, .tf-shop-button:focus-visible { background: #544127; color: #fff; transform: translateY(-2px); }
.tf-shop-button:focus-visible { outline: 2px solid #745c3e; outline-offset: 4px; }
.tf-shop-button span { font-size: 16px; }
.tf-shop-button--disabled { border-color: #b8aa96; background: transparent; color: #777066; cursor: not-allowed; }
[data-theme="dark"] .tf-shop-preview { background: #1b1a20; color: #f4efe7; }
[data-theme="dark"] .tf-shop-slide figcaption, [data-theme="dark"] .tf-shop-slideshow__empty { color: #d3cabb; }
[data-theme="dark"] .tf-shop-arrow { border-color: rgba(222,202,173,.35); background: rgba(36,35,43,.86); color: #f4efe7; }
[data-theme="dark"] .tf-shop-dots button { background: #655e55; }
[data-theme="dark"] .tf-shop-dots button[aria-current="true"] { background: #dec29a; }
[data-theme="dark"] .tf-shop-sections, [data-theme="dark"] .tf-shop-card + .tf-shop-card { border-color: rgba(222,202,173,.25); }
[data-theme="dark"] .tf-shop-card__eyebrow { color: #d1b78f; }
[data-theme="dark"] .tf-shop-card h1, [data-theme="dark"] .tf-shop-card h2 { color: #f4efe7; }
[data-theme="dark"] .tf-shop-card p:not(.tf-shop-card__eyebrow) { color: #ded6c9; }
[data-theme="dark"] .tf-shop-button--disabled { border-color: #71695f; color: #bdb5aa; }
@media (max-width: 700px) {
	.tf-shop-slideshow { width: calc(100% - 24px); padding: 18px 0 14px; }
	.tf-shop-slideshow__stage { --shop-gap: 10px; --shop-columns: 2; min-height: 290px; padding-bottom: 25px; }
	.tf-shop-slideshow__viewport { width: calc(100% - 80px); height: 238px; }
	.tf-shop-slide { flex-basis: calc((100% - 10px) / 2); }
	.tf-shop-arrow { width: 36px; height: 36px; }
	.tf-shop-arrow span { font-size: 27px; }
	.tf-shop-sections { grid-template-columns: 1fr; width: calc(100% - 28px); margin-top: 12px; }
	.tf-shop-card { padding: 27px 20px 30px; }
	.tf-shop-card + .tf-shop-card { border-top: 1px solid rgba(135,108,72,.3); border-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
	.tf-shop-track { transition: none; }
	.tf-shop-arrow, .tf-shop-button { transition: none; }
}
