/* Approved transparent promotion presentation. Hidden until server integration is ready. */
.promotion-design { position: absolute; right: 4%; bottom: 44px; width: 32%; color: var(--deco-beige, #E8D8C2); text-align: center; text-shadow: 0 1px 3px var(--deco-brown, #493126), 0 2px 10px var(--deco-brown, #493126); }
.promotion-design[hidden] { display: none; }
.promotion-kicker { font-size: 12px; letter-spacing: .18em; margin: 0 0 12px; }
.promotion-design h2 { font: 400 clamp(37px, 4.7vw, 73px)/1.1 var(--font-serif); margin: 0 0 22px; color: inherit; }
.promotion-clock { display: flex; justify-content: center; gap: clamp(16px, 1.5vw, 24px); margin: 20px 0 24px; }
.promotion-clock > div { flex: 0 0 auto; min-width: 66px; }
.promotion-clock strong { display: grid; place-items: center; width: clamp(62px, 6vw, 94px); aspect-ratio: 1; margin-inline: auto; border: 1.5px solid currentColor; border-radius: 50%; font: 400 clamp(26px, 3vw, 46px)/1 var(--font-serif); box-shadow: 0 0 3px var(--deco-brown, #493126); }
.promotion-clock span { display: block; font-size: 12px; line-height: 1.5; margin-top: 9px; white-space: nowrap; }
.promotion-design .editorial-shop { min-height: 46px; padding: 12px 24px; font-size: 13px; gap: 22px; text-shadow: none; }
.promotion-design small { display: block; margin: 14px auto 0; max-width: 100%; font-size: 10px; line-height: 1.5; letter-spacing: .02em; }
@media (min-width: 601px) and (max-width: 1100px) { .has-promotion-design .editorial-copy { margin-left: 0; width: 60%; padding-inline: 28px; } .has-promotion-design .editorial-copy h1 { font-size: 58px; } .promotion-design { right: 2%; width: 36%; } }
@media (max-width: 600px) {
  .has-promotion-design .editorial-image { height: 410px; }
  .promotion-design { bottom: 38px; right: 4%; width: 92%; }
  .promotion-design h2 { font-size: 49px; margin-bottom: 18px; }
  .promotion-clock { margin: 14px 0 18px; gap: 20px; }
  .promotion-clock strong { width: 65px; font-size: 30px; }
  .promotion-kicker { font-size: 10px; }
  .promotion-design .editorial-shop { max-width: calc(100% - 96px); min-height: 48px; padding-inline: 20px; }
}

.deco-frame-selector{border:0;padding:0;margin:18px 0;color:var(--deco-brown)}
.deco-frame-selector legend{font:600 24px var(--font-serif);margin-bottom:16px}
.deco-frame-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.deco-frame-option{padding:0;background:none;border:0;color:inherit;cursor:pointer;min-width:0}
/* Original uploaded close-up stays uncropped inside a circular swatch surround. */
.deco-frame-photo{display:grid;place-items:center;position:relative;aspect-ratio:1;width:68px;max-width:100%;margin-inline:auto;background:var(--deco-beige);border:2px solid transparent;border-radius:50%;overflow:hidden}
.deco-frame-photo[hidden]{display:none}
.deco-frame-option[aria-pressed="true"] .deco-frame-photo{border-color:var(--deco-brown)}
.deco-frame-check{position:absolute;right:6px;top:6px;width:20px;height:20px;border-radius:50%;background:var(--deco-brown);color:#fff;display:none}
.deco-frame-option[aria-pressed="true"] .deco-frame-check{display:block}
.deco-frame-label{display:block;background:var(--deco-beige,#e8d8c2);border-radius:24px;padding:8px 3px;margin-top:8px;font:12px var(--font-sans)}
.deco-frame-option[aria-pressed="true"] .deco-frame-label{background:var(--deco-brown);color:var(--deco-beige)}
.deco-frame-option:hover .deco-frame-photo{box-shadow:0 3px 10px #49312630}
.deco-frame-option:focus-visible{outline:2px solid var(--deco-brown);outline-offset:4px;border-radius:13px}
.deco-frame-large{width:100%;border-radius:0}
.deco-frame-photo img{display:block;width:68%;height:68%;object-fit:contain}
.deco-frame-grid[hidden]{display:none}
.deco-frame-swatch{display:none}
.deco-frame-swatch[data-finish="black"]{background:#252320}
.deco-frame-swatch[data-finish="natural-wood"]{background:repeating-linear-gradient(95deg,#c49b69 0 3px,#d5b38a 3px 7px,#b88b57 7px 8px)}
.deco-frame-swatch[data-finish="white"]{background:#faf8f2}
.deco-frame-swatch[data-finish="dark-brown"]{background:#493126}
.deco-frame-swatch[data-finish="custom"]{background:transparent;box-shadow:none;border:0}
.deco-frame-option{min-height:44px;text-align:center;transition:opacity .15s ease}
.deco-frame-option:disabled{cursor:not-allowed;opacity:.5}
.deco-frame-option:disabled:hover .deco-frame-photo{box-shadow:none}
.deco-frame-availability{display:block;margin-top:4px;font:11px var(--font-sans);color:var(--deco-brown,#493126)}
.deco-frame-check{align-items:center;justify-content:center;font-size:12px;line-height:20px}
.deco-frame-option[aria-pressed="true"] .deco-frame-check{display:flex}
.deco-frame-selector[hidden]{display:none}
.frame-selector[hidden],.frame-selector-current[hidden]{display:none}
#frame-color-note{min-height:1.5em;font-size:13px;line-height:1.6}
@media(max-width:600px){.deco-frame-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.deco-frame-label{font-size:13px}}
.product-image-caption{margin:0;color:var(--deco-brown,#493126);font-size:.875rem;text-align:center;line-height:1.5}
.product-card-finishes{position:relative;z-index:3;display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.product-card-finishes .deco-frame-photo{width:42px}
.product-card-finishes .deco-frame-label{font-size:10px;padding:4px}
.product-card-finish-note{position:relative;z-index:3;font-size:12px;color:#493126;min-height:1.3em}
.product-finish-editor{display:grid;gap:10px;margin:14px 0}.product-finish-editor>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.product-finish-editor input{flex:1;min-width:120px}
#modal-price .commerce-selling-price{font:inherit;font-weight:600}
#modal-price .commerce-original-price{display:inline-block;font-size:.65em;font-weight:400;color:#8d7768;margin-inline:10px}
#modal-price .commerce-price-badge{display:inline-block;vertical-align:middle;background:#eee1cf;color:#704329;padding:5px 9px;border-radius:7px;font-size:12px;font-weight:600;line-height:1.4;white-space:nowrap}
