:root {
  --ink: #10233f;
  --cream: #f8f3e9;
  --paper: #fffdf8;
  --coral: #f3a779;
  --sky: #c8dce3;
  --muted: #677182;
  --line: rgba(16, 35, 63, .16);
  --serif: Georgia, 'Times New Roman', serif;
  --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--cream); font-family: var(--sans); font-size: 16px; }
button, input, select { font: inherit; color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }

.site-header { height: 76px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 24px; padding: 0 4.2vw; border-bottom: 1px solid var(--line); background: rgba(248,243,233,.94); position: sticky; top: 0; z-index: 20; backdrop-filter: blur(14px); }
.brand { display: inline-flex; align-items: center; gap: 11px; width: max-content; font-family: var(--serif); font-weight: 700; letter-spacing: -.02em; }
.brand-mark { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50% 50% 48% 52%; background: var(--ink); color: var(--coral); font-size: 1.15rem; font-style: italic; }
nav { display: flex; gap: 32px; font-size: .9rem; font-weight: 650; }
nav a { padding: 8px 0; border-bottom: 1px solid transparent; }
nav a:hover { border-color: var(--ink); }
.basket-button { justify-self: end; border: 0; background: transparent; font-weight: 700; cursor: pointer; }
.basket-button span { display: inline-grid; place-items: center; min-width: 24px; height: 24px; margin-left: 7px; border-radius: 99px; background: var(--ink); color: white; font-size: .72rem; }

.studio { min-height: calc(100vh - 76px); display: grid; grid-template-columns: minmax(380px, .9fr) minmax(520px, 1.1fr); }
.studio-copy { padding: clamp(52px, 6vw, 96px) clamp(34px, 6vw, 88px); }
.eyebrow { margin: 0 0 18px; color: #a14e38; font-size: .74rem; font-weight: 800; text-transform: uppercase; letter-spacing: .18em; }
h1, h2, h3, p { text-wrap: pretty; }
h1 { margin: 0; max-width: 650px; font-family: var(--serif); font-size: clamp(3.15rem, 5vw, 6.5rem); line-height: .91; letter-spacing: -.058em; font-weight: 500; }
h1 em { color: #bd6049; font-weight: 400; }
.intro { max-width: 600px; margin: 28px 0 34px; color: var(--muted); line-height: 1.65; font-size: 1.03rem; }

.personalise-panel { max-width: 610px; padding-top: 8px; }
.personalise-panel label, .format-picker legend { display: block; margin-bottom: 9px; font-size: .85rem; font-weight: 750; }
.field-row { display: flex; align-items: end; justify-content: space-between; margin-top: 19px; }
.field-row label { margin-bottom: 9px; }
.char-count, .hint { color: var(--muted); font-size: .75rem; margin-bottom: 9px; }
input, select { width: 100%; height: 50px; padding: 0 15px; border: 1px solid var(--line); border-radius: 8px; background: var(--paper); outline: none; transition: border-color .2s, box-shadow .2s; }
input:focus, select:focus { border-color: var(--ink); box-shadow: 0 0 0 3px rgba(16,35,63,.08); }
.field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 19px; }
.field-grid label { margin-bottom: 9px; }
.format-picker { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 24px 0 14px; padding: 0; border: 0; }
.format-picker legend { grid-column: 1 / -1; }
.format-picker label { position: relative; display: flex; min-height: 95px; margin: 0; padding: 14px; flex-direction: column; justify-content: space-between; border: 1px solid var(--line); border-radius: 10px; background: rgba(255,255,255,.42); cursor: pointer; }
.format-picker label.selected { border-color: var(--ink); box-shadow: inset 0 0 0 1px var(--ink); background: var(--paper); }
.format-picker input { position: absolute; opacity: 0; pointer-events: none; }
.format-picker b { display: block; font-size: .86rem; }
.format-picker small { display: block; color: var(--muted); font-size: .68rem; font-weight: 500; line-height: 1.35; margin-top: 4px; }
.format-picker strong { font-size: .82rem; }
.primary-button { width: 100%; min-height: 56px; padding: 0 20px; display: flex; align-items: center; justify-content: space-between; border: 0; border-radius: 8px; background: var(--ink); color: white; font-weight: 780; cursor: pointer; box-shadow: 0 10px 25px rgba(16,35,63,.18); transition: transform .18s, background .18s; }
.primary-button:hover { background: #1c365b; transform: translateY(-1px); }
.primary-button:active { transform: translateY(1px); }
.small-print { text-align: center; margin: 10px 0 0; color: var(--muted); font-size: .73rem; }

.preview-area { min-height: 750px; display: flex; flex-direction: column; padding: 30px clamp(24px, 4vw, 70px) 46px; background: var(--sky); border-left: 1px solid rgba(16,35,63,.08); }
.preview-topline { display: flex; justify-content: space-between; align-items: center; padding-bottom: 18px; font-size: .76rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.fit-badge { padding: 8px 10px; border-radius: 99px; background: rgba(255,255,255,.56); letter-spacing: .04em; text-transform: none; }
.fit-badge i { display: inline-block; width: 7px; height: 7px; margin-right: 6px; border-radius: 50%; background: #2c7c58; }
.wall-scene { flex: 1; display: grid; align-content: center; justify-items: center; border-radius: 2px; background: linear-gradient(150deg, rgba(255,255,255,.18), transparent 42%), repeating-linear-gradient(90deg, rgba(255,255,255,.035) 0 1px, transparent 1px 18px); }
.frame-shadow { width: min(64%, 470px); padding: 14px; background: #172234; box-shadow: 0 33px 55px rgba(16,35,63,.28), 0 3px 8px rgba(16,35,63,.3); transform: rotate(.35deg); }
.print { width: 100%; aspect-ratio: 7 / 8.8; background: var(--paper); overflow: hidden; box-shadow: inset 0 0 0 1px rgba(255,255,255,.5); }
.preview-marked { position: relative; overflow: hidden; }
.preview-marked::after { content: "HERE’S A GIFT • PREVIEW"; position: absolute; left: 50%; top: 50%; z-index: 3; transform: translate(-50%, -50%) rotate(-27deg); color: #10233f; opacity: .075; font-size: clamp(10px, 1.4vw, 17px); font-weight: 800; letter-spacing: .18em; line-height: 1; white-space: nowrap; pointer-events: none; user-select: none; }
.print svg { width: 100%; height: 100%; display: block; }
.print-kicker, .print-sub { fill: var(--ink); font-family: Arial, sans-serif; font-weight: 700; letter-spacing: 8px; font-size: 21px; }
.print-sub { font-size: 15px; letter-spacing: 5px; }
.ampersand { fill: #f3a779; font-family: Georgia, serif; font-style: italic; font-size: 90px; }
.preview-note { max-width: 440px; margin: 24px auto 0; text-align: center; color: rgba(16,35,63,.68); font-size: .78rem; line-height: 1.5; }

.trust-strip { display: grid; grid-template-columns: repeat(3, 1fr); padding: 25px 5vw; background: var(--ink); color: white; }
.trust-strip p { display: flex; align-items: center; justify-content: center; gap: 14px; margin: 0; font-family: var(--serif); font-size: 1.03rem; }
.trust-strip p + p { border-left: 1px solid rgba(255,255,255,.18); }
.trust-strip span { color: var(--coral); font-family: var(--sans); font-size: .72rem; }

.collection { padding: clamp(70px, 9vw, 135px) 5vw; background: var(--paper); }
.section-heading { display: grid; grid-template-columns: 1.2fr .65fr; align-items: end; gap: 50px; margin-bottom: 48px; }
h2 { margin: 0; font-family: var(--serif); font-size: clamp(2.6rem, 4.4vw, 5rem); line-height: .98; letter-spacing: -.045em; font-weight: 500; }
.section-heading > p { margin: 0; color: var(--muted); line-height: 1.6; }
.product-grid { display: grid; grid-template-columns: 1.08fr .92fr .92fr; gap: 16px; }
.product-card { min-width: 0; }
.mini-print, .image-wrap, .story-visual { height: min(55vw, 520px); max-height: 520px; min-height: 380px; }
.mini-print { padding: 9%; display: flex; flex-direction: column; align-items: center; justify-content: center; background: #ecd7c9; color: var(--ink); }
.wordart-mini small { letter-spacing: .5em; font-size: clamp(.75rem, 1.4vw, 1rem); }
.wordart-mini strong { width: 100%; margin: 8px 0; overflow: hidden; font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif; font-size: clamp(2.7rem, 5vw, 6rem); letter-spacing: -.06em; text-align: center; transform: scaleX(1.05); }
.wordart-mini em { font-family: var(--serif); font-size: clamp(2.1rem, 4vw, 4.8rem); }
.wordart-mini span { margin-top: 34px; padding-top: 17px; border-top: 1px solid currentColor; font-size: clamp(.55rem, .8vw, .78rem); letter-spacing: .12em; }
.image-wrap { overflow: hidden; background: #c9dbdf; }
.image-wrap img { width: 100%; height: 100%; object-fit: cover; display: block; }
.story-visual { position: relative; padding: 11%; display: flex; align-items: center; justify-content: center; gap: 8px; background: #b8c9c2; overflow: hidden; }
.story-visual::before { content: ''; position: absolute; inset: 13%; border: 1px solid rgba(16,35,63,.28); border-radius: 50% 50% 45% 55%; transform: rotate(-9deg); }
.story-visual span { position: relative; z-index: 1; font-family: var(--serif); font-size: clamp(1.3rem, 2.4vw, 2.4rem); }
.story-visual i { width: 25px; height: 1px; background: var(--ink); opacity: .35; }
.story-visual p { position: absolute; bottom: 12%; left: 0; right: 0; text-align: center; font-family: var(--serif); font-style: italic; font-size: 1.2rem; }
.card-copy { display: grid; grid-template-columns: auto 1fr auto; gap: 13px; align-items: start; padding: 18px 4px 8px; }
.card-copy > span { padding-top: 5px; color: #a14e38; font-size: .7rem; font-weight: 800; }
.card-copy h3 { margin: 0 0 6px; font-family: var(--serif); font-size: 1.35rem; }
.card-copy p { margin: 0; color: var(--muted); font-size: .8rem; line-height: 1.45; }
.card-copy > b { font-size: .76rem; white-space: nowrap; padding-top: 5px; }

.how { padding: clamp(76px, 9vw, 140px) 8vw; color: white; background: var(--ink); text-align: center; }
.how .eyebrow { color: var(--coral); }
.how h2 { max-width: 800px; margin: auto; }
.how ol { max-width: 1120px; margin: 70px auto 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); list-style: none; text-align: left; }
.how li { display: grid; grid-template-columns: auto 1fr; gap: 18px; padding: 0 35px; }
.how li + li { border-left: 1px solid rgba(255,255,255,.18); }
.how li > span { width: 34px; height: 34px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; color: var(--coral); font-size: .8rem; }
.how h3 { margin: 4px 0 10px; font-family: var(--serif); font-size: 1.25rem; }
.how li p { margin: 0; color: rgba(255,255,255,.65); line-height: 1.6; font-size: .85rem; }

footer { padding: 34px 4.2vw; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 20px; background: var(--cream); font-size: .77rem; }
footer p { margin: 0; }
footer p:last-child { justify-self: end; color: var(--muted); }

.basket-drawer { position: fixed; top: 0; right: 0; z-index: 50; width: min(440px, 94vw); height: 100vh; padding: 28px; background: var(--paper); box-shadow: -22px 0 70px rgba(16,35,63,.2); transform: translateX(110%); transition: transform .3s ease; }
.basket-drawer.open { transform: translateX(0); }
.drawer-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.drawer-head h2 { font-size: 2rem; }
.drawer-head button { width: 40px; height: 40px; border: 0; background: transparent; font-size: 2rem; cursor: pointer; }
.basket-empty { display: grid; min-height: 60vh; place-content: center; text-align: center; color: var(--muted); }
.text-button { border: 0; border-bottom: 1px solid var(--ink); padding: 8px 0; margin: 10px auto; background: transparent; font-weight: 750; cursor: pointer; }
.basket-item { display: grid; grid-template-columns: 68px 1fr auto; gap: 14px; align-items: center; padding: 24px 0; border-bottom: 1px solid var(--line); }
.basket-thumb { width: 68px; height: 82px; display: grid; place-items: center; background: #ecd7c9; font: italic 2rem var(--serif); }
.basket-item p { margin: 5px 0 0; color: var(--muted); font-size: .78rem; }
.basket-item b { font-size: .85rem; }
.basket-total { display: flex; justify-content: space-between; padding: 24px 0; }
.checkout-button { margin-top: 8px; }
.scrim { position: fixed; inset: 0; z-index: 40; background: rgba(16,35,63,.4); backdrop-filter: blur(2px); }
.toast { position: fixed; left: 50%; bottom: 26px; z-index: 60; min-width: 280px; padding: 14px 18px; border-radius: 8px; color: white; background: var(--ink); text-align: center; font-size: .85rem; font-weight: 700; opacity: 0; transform: translate(-50%, 20px); pointer-events: none; transition: .25s; }
.toast.show { opacity: 1; transform: translate(-50%, 0); }

@media (max-width: 980px) {
  .site-header { grid-template-columns: 1fr auto; }
  nav { display: none; }
  .studio { grid-template-columns: 1fr; }
  .preview-area { min-height: 720px; border-left: 0; border-top: 1px solid var(--line); }
  .frame-shadow { width: min(70%, 450px); }
  .product-grid { grid-template-columns: 1fr 1fr; }
  .product-card:first-child { grid-column: 1 / -1; }
  .product-card:first-child .mini-print { min-height: 460px; }
  .section-heading { grid-template-columns: 1fr; }
}

@media (max-width: 680px) {
  .site-header { height: 66px; padding: 0 18px; }
  .brand { font-size: .9rem; }
  .brand-mark { width: 30px; height: 30px; }
  .basket-button { font-size: 0; }
  .basket-button span { font-size: .72rem; }
  .studio { min-height: 0; }
  .studio-copy { padding: 42px 20px 36px; }
  h1 { font-size: clamp(3rem, 15vw, 4.4rem); }
  .intro { margin-top: 23px; }
  .field-grid { grid-template-columns: 1fr; }
  .format-picker { grid-template-columns: 1fr; }
  .format-picker label { min-height: 72px; display: grid; grid-template-columns: 1fr auto; align-items: center; }
  .format-picker strong { grid-column: 2; grid-row: 1; }
  .preview-area { min-height: 610px; padding: 22px 16px 30px; }
  .frame-shadow { width: min(82%, 380px); padding: 9px; }
  .preview-note { font-size: .72rem; }
  .trust-strip { grid-template-columns: 1fr; gap: 14px; padding: 22px; }
  .trust-strip p { justify-content: flex-start; }
  .trust-strip p + p { border-left: 0; }
  .collection { padding: 70px 20px; }
  .product-grid { grid-template-columns: 1fr; }
  .product-card:first-child { grid-column: auto; }
  .mini-print, .image-wrap, .story-visual, .product-card:first-child .mini-print { min-height: 420px; height: 112vw; }
  .how { padding: 72px 20px; }
  .how ol { grid-template-columns: 1fr; margin-top: 45px; }
  .how li { padding: 24px 0; }
  .how li + li { border-left: 0; border-top: 1px solid rgba(255,255,255,.18); }
  footer { grid-template-columns: 1fr; text-align: center; }
  .footer-brand, footer p:last-child { justify-self: center; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* Here’s a Gift shared identity */
:root{--ink:#301b2c;--cream:#fffafb;--paper:#fff;--coral:#ed478b;--line:rgba(83,26,54,.15)}
.site-header{background:rgba(255,255,255,.97)}
.brand{font-family:var(--sans);font-size:23px;font-weight:800;letter-spacing:-.06em;color:#831b49;gap:9px}
.brand-mark{background:none;color:#ed478b;font-style:normal;font-size:35px;border-radius:0}
.brand img{width:190px;height:64px;object-fit:contain;display:block}
@media(max-width:700px){.site-header{height:auto;min-height:76px;padding:10px 20px;display:flex;flex-wrap:wrap;gap:10px 20px}.site-header nav{gap:18px;font-size:13px}.brand img{width:160px;height:50px}}

#fontChoices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:4px 0 12px;max-height:220px;overflow:auto;padding:2px}
#fontChoices .font-choice{display:block;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--paper);text-align:left;cursor:pointer}
#fontChoices .font-choice:hover,#fontChoices .font-choice[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:#fff}
#fontChoices .font-choice-label{display:block;color:var(--muted);font-size:12px;line-height:1.2;margin-bottom:6px}
#fontChoices .font-choice-sample{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:20px;line-height:1.25}
.font-card-actions{display:flex;justify-content:flex-end;margin-top:12px}
@media(max-width:560px){#fontChoices{grid-template-columns:1fr}}

.product-frame{--frame:#272624;box-sizing:border-box;border:14px solid var(--frame);padding:6%;background:#fffdf9;box-shadow:2px 3px 1px #0003,8px 12px 22px #10233f25,inset 0 0 3px #0003;max-width:550px;width:100%;margin:0 auto}.product-frame[data-frame=white]{--frame:#f5f3ed}.product-frame[data-frame=oak],.product-frame[data-frame=natural]{--frame:#ba9266}.product-frame[data-frame=none]{border:0;padding:0;box-shadow:none;background:transparent}.product-frame canvas,#botanicalCanvas.product-framed{display:block;width:100%;height:auto;box-shadow:none}.product-frame #art,.product-frame #botanicalCanvas{width:100%;height:auto;max-width:100%;box-shadow:none}
.product-frame[data-frame=canvas]{border:0;border-right:12px solid #d4d0c8;border-bottom:7px solid #bcb8b0;padding:0;background:#faf9f5;box-shadow:10px 15px 22px #10233f30;transform:perspective(1500px) rotateY(-3deg);transform-origin:center}.product-frame[data-frame=canvas] canvas{box-shadow:inset 0 0 1px #0002}
.product-frame[data-frame=cushion],.star-stage .product-frame[data-frame=cushion]{position:relative;aspect-ratio:871/772;border:0;padding:0;background:url('natural-cushion-template.webp') center/contain no-repeat;box-shadow:none;max-width:720px;width:100%;transform:none;display:block}
.product-frame[data-frame=cushion] canvas,.product-frame[data-frame=cushion] #botanicalCanvas{position:absolute;left:12%;top:9%;width:76%;height:auto;background:transparent;mix-blend-mode:multiply}
.star-stage .product-frame[data-frame=cushion]{height:auto;width:100%;max-width:100%;max-height:none}.star-stage .product-frame[data-frame=cushion] canvas{width:76%;max-width:76%;max-height:none}

/* Artwork fills the frame opening. The border above is the physical frame,
   not a simulated mount around the print. */
.product-frame,.category-art.product-frame,.star-stage .product-frame{padding:0}
.product-frame.customer-preview::after{display:none}
.customer-preview-watermark{position:absolute;inset:0;z-index:3;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));align-items:center;justify-items:center;overflow:hidden;pointer-events:none;user-select:none}
.customer-preview-watermark span{display:block;max-width:100%;color:#10233f;opacity:.065;font-family:var(--sans);font-size:clamp(8px,1.05vw,14px);font-weight:800;letter-spacing:.14em;line-height:1;white-space:nowrap;transform:rotate(-27deg)}
.customer-preview-watermark span:nth-child(5){grid-column:1/-1}

.site-header .mobile-menu{display:none}
@media(max-width:980px){
 .site-header:has(.mobile-menu){display:flex;flex-wrap:nowrap;justify-content:space-between;height:76px;min-height:76px;gap:12px;padding:0 20px}
 .site-header:has(.mobile-menu)>nav,.site-header:has(.mobile-menu)>.preview-label,.site-header:has(.mobile-menu)>.draft-label,.site-header:has(.mobile-menu)>.basket-button{display:none}
 .site-header .brand img{width:160px;height:54px}
 .site-header .mobile-menu{display:block;position:static;margin:0;padding:0;border:0;color:#831b49;font-size:16px}
 .site-header .mobile-menu summary{display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:0 14px;border:1px solid #e8bdcf;border-radius:24px;background:#fff4f8;font-size:16px;font-weight:700;list-style:none;cursor:pointer}
 .site-header .mobile-menu summary::-webkit-details-marker{display:none}
 .site-header .mobile-menu summary:focus-visible{outline:3px solid #831b49;outline-offset:3px}
 .site-header .menu-icon{font-size:21px;line-height:1}
 .site-header .mobile-menu[open] summary{background:#831b49;color:white;border-color:#831b49}
 .site-header .mobile-menu:not([open]) nav{display:none}
 .site-header .mobile-menu[open] nav{display:flex;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;padding:12px 20px 20px;background:white;border-bottom:1px solid #eadde3;box-shadow:0 14px 20px #301b2c12;max-height:calc(100dvh - 90px);overflow:auto;font-size:16px}
 .site-header .mobile-menu nav a,.site-header .mobile-menu nav button{display:block;text-align:left;background:transparent;font:inherit;color:inherit;cursor:pointer;padding:15px 12px;min-height:48px;border:0;border-radius:8px}
 .site-header .mobile-menu nav a:hover,.site-header .mobile-menu nav a:focus-visible{background:#fff0f6;outline-offset:-3px}
}
@media(max-width:350px){.site-header:has(.mobile-menu){padding:0 12px}.site-header .brand img{width:140px}}

footer.legal-footer{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px;padding:34px 5vw;background:#fff;color:#301b2c;border-top:1px solid #eadde3;font-size:14px}
footer.home-footer{flex-wrap:wrap}
footer .footer-details{margin:0;line-height:1.55}
footer .footer-details:nth-child(2){text-align:right;color:#775c6b}
footer .legal-links{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:8px;font-size:14px}
footer .legal-links a{padding:5px 0;border-bottom:1px solid transparent;color:#831b49}
footer .legal-links a:hover,footer .legal-links a:focus-visible{border-color:#831b49}
footer.home-footer .footer-details{color:#f1cddd}
footer.home-footer .footer-details:nth-child(2){color:#f1cddd}
footer.home-footer .legal-links{justify-content:flex-end}
footer.home-footer .footer-details{flex:1 1 100%}
footer.home-footer .legal-links a{color:#fff;border-color:transparent}
footer.home-footer .legal-links a:hover,footer.home-footer .legal-links a:focus-visible{border-color:#fff}
@media(max-width:650px){footer.legal-footer{grid-template-columns:1fr;text-align:center}footer .footer-details:nth-child(2){text-align:center}footer .legal-links{justify-content:center}footer.home-footer .legal-links{justify-content:center}}

/* Editorial storefront homepage. Scoped so design editors and product pages stay unchanged. */
.storefront{--home-wine:#741b43;--home-wine-dark:#54112f;--home-ink:#262127;--home-muted:#6f676d;--home-line:#e8e0e3;--home-cream:#fbf8f4;--home-warm:#f1ebe5;--home-rose:#f8eef2;background:#fff;color:var(--home-ink)}
.storefront [hidden]{display:none!important}
.storefront .skip-link{position:absolute;top:8px;left:16px;z-index:100;padding:12px 20px;background:#fff;color:var(--home-wine);transform:translateY(-160%)}
.storefront .skip-link:focus{transform:none}
.storefront a:focus-visible,.storefront button:focus-visible,.storefront summary:focus-visible{outline:3px solid var(--home-wine);outline-offset:4px}
.storefront .collection-banner{padding:9px 24px;background:var(--home-wine);color:#fff;text-align:center;font-size:12px;line-height:1.5;letter-spacing:.01em}
.storefront .site-header{position:relative;top:auto;z-index:30;display:flex;justify-content:space-between;align-items:center;gap:32px;height:88px;min-height:88px;width:100%;padding:0 max(32px,calc((100vw - 1240px)/2));border-bottom:1px solid var(--home-line);background:#fff;backdrop-filter:none}
.storefront .brand img{width:200px;height:69px}
.storefront .site-header>nav{align-items:center;gap:34px;font-size:14px;font-weight:500;letter-spacing:.01em}
.storefront .site-header>nav>a{padding:10px 0}
.storefront .site-header>nav .account-link{border-left:1px solid var(--home-line);padding-left:30px}
.storefront .occasion-nav{position:relative;margin:0;padding:0;border:0}
.storefront .occasion-nav>summary{display:flex;align-items:center;gap:8px;padding:12px 0;list-style:none;cursor:pointer;font-size:14px;font-weight:500}
.storefront .occasion-nav>summary::-webkit-details-marker{display:none}
.storefront .occasion-nav>summary::after{content:'⌄';font-size:15px;line-height:1;transform:translateY(-2px)}
.storefront .occasion-nav[open]>summary{color:var(--home-wine)}
.storefront .occasion-nav-panel{position:absolute;top:calc(100% + 19px);left:-24px;width:560px;display:grid;grid-template-columns:1fr 1fr;padding:20px;background:#fff;border:1px solid var(--home-line);box-shadow:0 20px 48px #3e223020;z-index:40}
.storefront .occasion-nav-panel button{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:50px;padding:12px 14px;border:0;border-bottom:1px solid #f0eaed;background:#fff;color:var(--home-ink);font:500 14px/1.35 var(--sans);text-align:left;cursor:pointer}
.storefront .occasion-nav-panel button:hover{background:var(--home-rose);color:var(--home-wine)}
.storefront .occasion-nav-panel button:disabled{cursor:default;color:#8d858a;background:#faf8f9}
.storefront .occasion-nav-panel small{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--home-wine)}
.storefront .occasion-nav-panel button:disabled small{color:#9b9398}
.storefront .storefront-main{max-width:1304px;margin:0 auto;padding:0 32px}
.storefront .home-intro{display:grid;grid-template-columns:1.05fr 1.15fr;gap:0;align-items:stretch;margin-top:44px;background:var(--home-cream);border:1px solid #ede6e0;min-height:520px;overflow:hidden}
.storefront .hero-copy{display:flex;flex-direction:column;justify-content:center;padding:54px 54px 50px}
.storefront .eyebrow{margin:0 0 15px;color:var(--home-wine);font:600 11px/1.5 var(--sans);letter-spacing:.17em;text-transform:uppercase}
.storefront .home-intro h1{font:400 clamp(45px,4.3vw,62px)/1.03 Georgia,'Times New Roman',serif;letter-spacing:-.047em;max-width:540px}
.storefront .home-intro h1 em{color:var(--home-wine);font-weight:400}
.storefront .hero-description{max-width:440px;margin:24px 0 27px;font-size:16px;line-height:1.75;color:var(--home-muted)}
.storefront .hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.storefront .shop-button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:14px 27px;background:var(--home-wine);color:#fff;border:1px solid var(--home-wine);border-radius:3px;font-size:14px;font-weight:600;transition:background .18s,transform .18s}
.storefront .shop-button::after{content:'→';margin-left:14px;font-size:18px;font-weight:400}
.storefront .shop-button:hover{background:var(--home-wine-dark);transform:translateY(-1px)}
.storefront .text-link{font-size:14px;padding:10px 0;border-bottom:1px solid #c9b9c1}
.storefront .text-link:hover{border-color:var(--home-wine);color:var(--home-wine)}
.storefront .hero-note{margin:21px 0 0;font-size:12px;line-height:1.6;color:var(--home-muted)}
.storefront .hero-showcase{display:grid;grid-template-rows:minmax(0,1fr) auto;min-width:0;background:#e8ded3;overflow:hidden}
.storefront .hero-artwork{position:relative;min-height:454px;height:100%;overflow:hidden;background:#e8ded3}
.storefront .hero-artwork::after{content:'';position:absolute;inset:0 auto 0 0;width:28%;background:linear-gradient(90deg,#f3e9df 0%,#f3e9dfd9 30%,#f3e9df00 100%);pointer-events:none}
.storefront .hero-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .4s ease}
.storefront .hero-showcase:hover .hero-photo{transform:scale(1.015)}
.storefront .hero-caption{position:relative;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:19px 25px;background:#fff;border-top:1px solid #e4dbd3}
.storefront .hero-caption small{display:block;color:var(--home-muted);font-size:11px;line-height:1.5;margin-bottom:4px}
.storefront .hero-caption strong{display:block;font:400 21px/1.2 Georgia,serif}
.storefront .hero-caption-action{display:flex;gap:11px;align-items:center;white-space:nowrap;color:var(--home-wine);font-size:13px;font-weight:600}
.storefront .hero-caption-action>span{font-size:18px}
.storefront .trust-strip{display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:20px 22px;border:1px solid var(--home-line);border-top:0;background:#fff}
.storefront .trust-strip>div{display:flex;align-items:center;gap:13px;min-width:0;padding:0 21px;border-right:1px solid var(--home-line)}
.storefront .trust-strip>div:last-child{border-right:0}
.storefront .trust-icon{display:grid;place-items:center;flex:0 0 37px;width:37px;height:37px;border-radius:50%;background:var(--home-rose);color:var(--home-wine);font:400 21px/1 Georgia,serif}
.storefront .trust-strip strong,.storefront .trust-strip small{display:block}
.storefront .trust-strip strong{font:500 13px/1.4 Georgia,serif}
.storefront .trust-strip small{margin-top:3px;color:var(--home-muted);font-size:10px;line-height:1.35}
.storefront .collection-section{padding:64px 0 48px;scroll-margin-top:24px}
.storefront .section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:28px}
.storefront .section-heading .eyebrow{margin-bottom:9px}
.storefront h2{margin:0;font:400 clamp(30px,2.7vw,39px)/1.16 Georgia,'Times New Roman',serif;letter-spacing:-.035em}
.storefront .section-heading>p{margin:0 0 3px;color:var(--home-muted);font-size:13px;line-height:1.6}
.storefront .category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.storefront .collection-card{position:relative;display:grid;grid-template-columns:1fr 1fr;min-width:0;height:255px;padding:0;border:1px solid #eadfd9;border-radius:3px;background:var(--home-cream);text-align:left;overflow:hidden;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s}
.storefront .collection-card:nth-child(2){background:#f3ece5}
.storefront .collection-card:nth-child(3){background:#f8f0ed}
.storefront .collection-card:hover,.storefront .collection-card[aria-pressed=true]{border-color:#cfb6bf;box-shadow:0 12px 28px #47233314;transform:translateY(-2px)}
.storefront .collection-copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:27px 8px 25px 28px}
.storefront .collection-copy>small{min-height:34px;color:var(--home-wine);font-size:9px;font-weight:600;line-height:1.45;letter-spacing:.13em;text-transform:uppercase}
.storefront .collection-copy>strong{margin:8px 0 27px;font:400 clamp(21px,2vw,28px)/1.08 Georgia,serif;letter-spacing:-.03em}
.storefront .collection-copy>span{margin-top:auto;border-bottom:1px solid #b991a2;color:var(--home-wine);font-size:12px;font-weight:600;line-height:1.8}
.storefront .collection-copy b{margin-left:8px;font-size:16px;font-weight:400}
.storefront .collection-visual{height:100%;display:flex;align-items:center;justify-content:center;padding:0;background:#eee4dc;border:0;border-radius:0;overflow:hidden}
.storefront .collection-card:nth-child(2) .collection-visual{background:linear-gradient(105deg,#e6ddd4,#f3eee8)}
.storefront .collection-card:nth-child(3) .collection-visual{background:linear-gradient(105deg,#efe3df,#faf5f2)}
.storefront .collection-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%;transition:transform .35s ease}
.storefront .collection-card:nth-child(2) .collection-visual img{object-position:center 50%}
.storefront .collection-card:nth-child(3) .collection-visual img{object-position:center 42%}
.storefront .collection-card:hover .collection-visual img{transform:scale(1.025)}
.storefront .all-occasions{margin:18px 0 0;padding:0;border:1px solid var(--home-line);background:#fff}
.storefront .all-occasions>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:61px;padding:15px 20px;list-style:none;cursor:pointer;font:500 15px/1.4 var(--sans)}
.storefront .all-occasions>summary::-webkit-details-marker{display:none}
.storefront .all-occasions-summary{display:flex;align-items:center;gap:13px;color:var(--home-wine);font-size:12px}
.storefront .all-occasions-summary b{font-size:18px;font-weight:400;transition:transform .2s}
.storefront .all-occasions[open] .all-occasions-summary b{transform:rotate(45deg)}
.storefront .all-occasion-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--home-line)}
.storefront .all-occasion-grid button{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:62px;padding:14px 18px;border:0;border-right:1px solid var(--home-line);border-bottom:1px solid var(--home-line);background:#fff;color:var(--home-ink);font:500 13px/1.35 var(--sans);text-align:left;cursor:pointer}
.storefront .all-occasion-grid button:nth-child(4n){border-right:0}
.storefront .all-occasion-grid button:nth-last-child(-n+4){border-bottom:0}
.storefront .all-occasion-grid button:hover,.storefront .all-occasion-grid button[aria-pressed=true]{background:var(--home-rose);color:var(--home-wine)}
.storefront .all-occasion-grid button:disabled{cursor:default;background:#faf8f9;color:#8d858a}
.storefront .all-occasion-grid small{font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--home-wine)}
.storefront .all-occasion-grid button:disabled small{color:#9b9398}
.storefront .featured-section{padding:32px 0 67px;scroll-margin-top:24px}
.storefront .product-heading-actions{display:flex;align-items:center;gap:14px}
.storefront .outline-button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:15px;padding:9px 15px;background:#fff;border:1px solid #d3c7cd;border-radius:3px;font-size:12px;cursor:pointer}
.storefront .outline-button:hover{background:var(--home-rose);border-color:var(--home-wine)}
.storefront #productMessage{font-size:15px;color:var(--home-muted);line-height:1.7}
.storefront #productMessage:empty{display:none}
.storefront .star-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;min-height:250px}
.storefront .star-grid article{min-width:0}
.storefront .star-grid article>a{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:1fr auto;min-height:292px;border:1px solid #eee6e2;background:#fff;overflow:hidden;transition:border-color .2s,box-shadow .2s,transform .2s}
.storefront .star-grid article>a:hover{border-color:#cfb6bf;box-shadow:0 12px 28px #47233314;transform:translateY(-2px)}
.storefront .star-stage{grid-row:1/3;display:flex;align-items:center;justify-content:center;height:auto;min-height:292px;padding:24px;background:var(--home-cream);border:0;border-radius:0;overflow:hidden}
.storefront .star-stage.has-lifestyle-photo{padding:0}
.storefront .lifestyle-product-photo{display:block;width:100%;height:100%;min-height:292px;object-fit:cover;object-position:center;transition:transform .35s ease}
.storefront .star-grid a:hover .lifestyle-product-photo{transform:scale(1.025)}
.storefront .star-stage .product-frame{width:auto;max-width:100%;border-width:6px;margin:0;box-shadow:2px 3px 2px #3f2a2714,7px 11px 15px #3f2a2721;transition:transform .2s}
.storefront .star-stage .preview-artwork{display:block;max-height:192px;max-width:100%;width:auto;height:auto}
.storefront .star-stage .product-frame[data-frame=cushion]{width:100%;max-width:190px;border:0;box-shadow:none;aspect-ratio:871/772}
.storefront .star-stage .product-frame[data-frame=cushion] .preview-artwork{position:absolute;left:12%;top:9%;width:76%;max-width:76%;height:auto;max-height:none;mix-blend-mode:multiply}
.storefront .star-grid a:hover .product-frame{transform:translateY(-3px)}
.storefront .star-grid h3{align-self:end;padding:27px 18px 9px;margin:0;font:400 19px/1.25 Georgia,serif;letter-spacing:-.02em}
.storefront .star-grid a>span{align-self:start;padding:3px 18px 25px;font-size:12px;font-weight:600;color:var(--home-wine)}
.storefront .star-grid a>span::after{content:' →';margin-left:6px}
.storefront .frame-disclaimer{margin:20px 0 0;font-size:12px;line-height:1.6;color:var(--home-muted)}
.storefront .home-info{display:grid;grid-template-columns:.78fr 1.22fr;gap:64px;align-items:start;margin:0 0 68px;padding:46px 48px;background:var(--home-rose);border:1px solid #eddfe5;border-radius:3px}
.storefront .how-intro h2{font-size:35px;line-height:1.22}
.storefront .how-steps{list-style:none;display:grid;gap:22px;margin:0;padding:0}
.storefront .how-steps li{display:flex;align-items:start;gap:18px}
.storefront .how-steps li>span{font:400 21px/1.3 Georgia,serif;color:#a37b8d}
.storefront .how-steps h3{font-size:14px;font-weight:600;margin:0 0 5px}
.storefront .how-steps p{font-size:13px;line-height:1.6;margin:0;color:var(--home-muted)}
.storefront .seo-discovery{max-width:none;margin:0 0 66px;padding:31px 36px;border-radius:3px;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);gap:23px 48px;background:#fcf7f9}
.storefront .seo-discovery-copy h2{font-size:clamp(27px,2.5vw,36px);line-height:1.08}
.storefront .seo-discovery-copy>p:last-child{margin:12px 0 0;font-size:13px;line-height:1.55}
.storefront .seo-collection-links{grid-template-columns:1fr 1fr;column-gap:26px}
.storefront .seo-collection-links a{padding:10px 0;font-size:12px}
.storefront .seo-product-index{padding-top:12px}
.storefront .seo-product-index summary{font-size:12px}
.storefront footer.home-footer{display:grid;grid-template-columns:1fr 1fr;gap:14px 40px;align-items:start;background:#fff;color:var(--home-ink);border-top:1px solid var(--home-line);padding:40px max(32px,calc((100vw - 1240px)/2)) 28px;font-size:13px;text-align:left}
.storefront .footer-name{font:600 26px/1.3 Georgia,serif;letter-spacing:-.03em;color:var(--home-wine)}
.storefront .footer-brand-block>p{font-size:13px;line-height:1.6;margin:8px 0 18px;color:var(--home-muted);justify-self:start}
.storefront #footerContact{display:flex;align-items:center;justify-content:end;gap:24px;flex-wrap:wrap;padding-top:9px;font-size:14px}
.storefront footer.home-footer .footer-details{color:var(--home-muted);font-size:12px;line-height:1.7;margin:0;max-width:none}
.storefront footer.home-footer .footer-details:nth-child(2){text-align:left}
.storefront footer.home-footer .footer-details:nth-of-type(2){text-align:right}
.storefront footer.home-footer .legal-links{grid-column:1/-1;justify-content:start;gap:10px 25px;margin:14px 0 0;padding-top:18px;border-top:1px solid var(--home-line);font-size:12px;font-weight:400}
.storefront footer.home-footer .legal-links a{color:var(--home-muted);padding:4px 0}
.storefront footer.home-footer .legal-links a:hover{color:var(--home-wine);border-color:var(--home-wine)}
@media(max-width:1100px){
 .storefront .home-intro{grid-template-columns:1fr 1.08fr}
 .storefront .hero-copy{padding:44px 38px}
 .storefront .trust-strip{padding-left:10px;padding-right:10px}
 .storefront .trust-strip>div{padding:0 11px}
 .storefront .collection-card{height:232px}
 .storefront .collection-copy{padding-left:21px}
 .storefront .collection-visual{padding:0}
 .storefront .star-grid article>a{grid-template-columns:1fr}
 .storefront .star-stage{grid-row:auto;min-height:210px}
 .storefront .lifestyle-product-photo{min-height:210px}
 .storefront .star-grid h3{padding:16px 18px 7px}
 .storefront .star-grid a>span{padding:2px 18px 18px}
}
@media(max-width:980px){
 .storefront .site-header:has(.mobile-menu){height:82px;min-height:82px;padding:0 28px}
 .storefront .site-header .brand img{width:180px;height:62px}
 .storefront .site-header .mobile-menu summary{border-color:#ddd1d7;border-radius:4px;background:#fff;font-weight:500;font-size:14px;min-height:42px}
 .storefront .site-header .mobile-menu[open]>summary{background:var(--home-wine);color:#fff}
 .storefront .site-header .mobile-menu[open]>nav{font-size:15px}
 .storefront .mobile-occasion-menu{margin:0;padding:0;border:0}
 .storefront .mobile-occasion-menu>summary{display:flex!important;justify-content:space-between!important;min-height:48px!important;padding:13px 12px!important;border:0!important;border-radius:8px!important;background:transparent!important;color:var(--home-ink)!important;list-style:none!important;font-size:15px!important}
 .storefront .mobile-occasion-menu>summary::after{content:'＋';color:var(--home-wine)}
 .storefront .mobile-occasion-menu[open]>summary::after{content:'−'}
 .storefront .mobile-occasion-menu>div{display:grid;grid-template-columns:1fr 1fr;padding:5px 0 12px 13px}
 .storefront .mobile-occasion-menu button{display:flex!important;justify-content:space-between;gap:10px;min-height:45px!important;padding:11px 12px!important;border-bottom:1px solid var(--home-line)!important;font-size:13px!important}
 .storefront .mobile-occasion-menu button:disabled{color:#8d858a;cursor:default}
 .storefront .mobile-occasion-menu small{font-size:9px;text-transform:uppercase;color:var(--home-wine)}
 .storefront .home-intro{min-height:470px}
 .storefront .hero-description{font-size:15px}
 .storefront .hero-artwork{min-height:430px;padding:0}
 .storefront .trust-strip{grid-template-columns:1fr 1fr;gap:0;padding:0}
 .storefront .trust-strip>div{padding:16px 20px;border-bottom:1px solid var(--home-line)}
 .storefront .trust-strip>div:nth-child(2){border-right:0}
 .storefront .trust-strip>div:nth-last-child(-n+2){border-bottom:0}
 .storefront .collection-card{grid-template-columns:1fr;height:330px}
 .storefront .collection-copy{grid-row:2;padding:19px 21px}
 .storefront .collection-copy>small{display:none}
 .storefront .collection-copy>strong{margin:0 0 10px;font-size:22px}
 .storefront .collection-copy>strong br{display:none}
 .storefront .collection-copy>span{margin:0}
 .storefront .collection-visual{grid-row:1;height:220px}
 .storefront .all-occasion-grid{grid-template-columns:repeat(2,1fr)}
 .storefront .all-occasion-grid button:nth-child(2n){border-right:0}
 .storefront .all-occasion-grid button:nth-child(4n){border-right:0}
 .storefront .all-occasion-grid button:nth-last-child(-n+4){border-bottom:1px solid var(--home-line)}
 .storefront .all-occasion-grid button:nth-last-child(-n+2){border-bottom:0}
 .storefront .home-info{gap:35px;padding:37px}
 .storefront .seo-discovery{grid-template-columns:1fr;gap:22px;padding:30px}
}
@media(max-width:760px){
 .storefront .storefront-main{padding:0 22px}
 .storefront .home-intro{grid-template-columns:1fr;margin-top:24px;min-height:0}
 .storefront .hero-copy{padding:40px 30px 38px}
 .storefront .home-intro h1{font-size:51px}
 .storefront .hero-description{max-width:500px;margin:19px 0 23px}
 .storefront .hero-note{margin-top:18px}
 .storefront .hero-artwork{min-height:370px;height:auto;padding:0}
 .storefront .hero-artwork::after{display:none}
 .storefront .hero-caption{padding:16px 20px}
 .storefront .collection-section{padding:48px 0 38px}
 .storefront .section-heading{gap:20px;margin-bottom:22px;align-items:start}
 .storefront .section-heading>p{display:none}
 .storefront h2{font-size:31px}
 .storefront .category-grid{grid-template-columns:1fr;gap:13px}
 .storefront .collection-card{grid-template-columns:1fr 1fr;height:230px}
 .storefront .collection-copy{grid-row:1;padding:24px}
 .storefront .collection-copy>small{display:block;min-height:28px}
 .storefront .collection-copy>strong{margin:8px 0 20px;font-size:25px}
 .storefront .collection-copy>span{margin-top:auto}
 .storefront .collection-visual{grid-row:1;height:100%}
 .storefront .all-occasions-summary{font-size:11px}
 .storefront .featured-section{padding:24px 0 48px}
 .storefront .product-heading{align-items:start}
 .storefront .product-heading-actions{gap:9px;align-items:end;flex-shrink:0}
 .storefront .outline-button{font-size:11px;padding:8px 11px;gap:9px}
 .storefront .star-grid{grid-template-columns:1fr;gap:13px;min-height:0}
 .storefront .star-grid article>a{grid-template-columns:1.05fr .95fr;grid-template-rows:1fr auto;min-height:220px}
 .storefront .star-stage{grid-row:1/3;min-height:220px}
 .storefront .lifestyle-product-photo{min-height:220px}
 .storefront .star-grid h3{padding:26px 18px 8px}
 .storefront .star-grid a>span{padding:2px 18px 24px}
 .storefront .home-info{grid-template-columns:1fr;gap:27px;padding:31px 27px;margin-bottom:45px}
 .storefront .how-intro h2{font-size:31px}
 .storefront .how-intro h2 br{display:none}
 .storefront .seo-discovery{margin-bottom:45px;padding:27px 24px}
 .storefront .seo-collection-links{grid-template-columns:1fr 1fr;column-gap:20px}
 .storefront footer.home-footer{grid-template-columns:1fr;padding:32px 24px 24px;gap:13px}
 .storefront #footerContact{justify-content:start;padding:0 0 13px;gap:22px}
 .storefront footer.home-footer .footer-details:nth-of-type(2){text-align:left}
 .storefront footer.home-footer .legal-links{justify-content:start;gap:8px 20px}
}
@media(max-width:500px){
 .storefront .collection-banner{font-size:11px;padding:8px 14px}
 .storefront .site-header:has(.mobile-menu){padding:0 18px;height:74px;min-height:74px}
 .storefront .site-header .brand img{width:165px;height:57px}
 .storefront .mobile-occasion-menu>div{grid-template-columns:1fr}
 .storefront .storefront-main{padding:0 17px}
 .storefront .home-intro{margin-top:17px}
 .storefront .hero-copy{padding:33px 24px 31px}
 .storefront .home-intro h1{font-size:43px}
 .storefront .home-intro .eyebrow{font-size:10px}
 .storefront .hero-actions{gap:15px}
 .storefront .shop-button{padding:12px 20px;min-height:46px}
 .storefront .text-link{font-size:12px}
 .storefront .hero-note{font-size:11px}
 .storefront .hero-artwork{min-height:330px;padding:0}
 .storefront .hero-caption{padding:14px 16px;gap:10px}
 .storefront .hero-caption small{font-size:10px}
 .storefront .hero-caption strong{font-size:18px}
 .storefront .hero-caption-action{font-size:11px}
 .storefront .trust-strip{grid-template-columns:1fr}
 .storefront .trust-strip>div{border-right:0;border-bottom:1px solid var(--home-line)!important;padding:14px 17px}
 .storefront .trust-strip>div:last-child{border-bottom:0!important}
 .storefront .collection-section{padding-top:40px}
 .storefront h2{font-size:29px}
 .storefront .collection-card{height:214px}
 .storefront .collection-copy{padding:19px}
 .storefront .collection-copy>strong{font-size:22px}
 .storefront .collection-visual{padding:0}
 .storefront .all-occasions>summary{min-height:58px;padding:14px 16px}
 .storefront .all-occasions-summary{font-size:0}
 .storefront .all-occasions-summary b{font-size:18px}
 .storefront .all-occasion-grid{grid-template-columns:1fr}
 .storefront .all-occasion-grid button,.storefront .all-occasion-grid button:nth-child(n){border-right:0;border-bottom:1px solid var(--home-line)}
 .storefront .all-occasion-grid button:last-child{border-bottom:0}
 .storefront .product-heading{flex-wrap:wrap;gap:14px}
 .storefront .product-heading-actions{width:100%;justify-content:end}
 .storefront .star-grid article>a{grid-template-columns:1fr;grid-template-rows:auto}
 .storefront .star-stage{grid-row:auto;min-height:238px}
 .storefront .lifestyle-product-photo{min-height:238px}
 .storefront .star-stage .preview-artwork{max-height:190px}
 .storefront .star-grid h3{padding:16px 18px 7px}
 .storefront .star-grid a>span{padding:2px 18px 18px}
 .storefront .seo-discovery{margin-left:0;margin-right:0;padding:25px 20px}
 .storefront .seo-collection-links{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.storefront *{scroll-behavior:auto!important;transition:none!important}.storefront .hero-photo,.storefront .hero-showcase:hover .hero-photo,.storefront .lifestyle-product-photo,.storefront .star-grid a:hover .lifestyle-product-photo{transform:none}}
