/* Internal Christmas collection page: product archive first, editorial styling second. */
.mc-page.page-christmas .christmas-intro { background: #f2eee7; }
.mc-page.page-christmas .christmas-intro .hero-grid { grid-template-columns: 1fr 1.05fr; }
.mc-page.page-christmas .christmas-intro img { aspect-ratio: 3 / 2; object-fit: cover; border-radius: 2px; }
.mc-page.page-christmas .christmas-season-note { font-size: .9rem; color: var(--muted); border-left: 2px solid var(--gold); padding-left: 1rem; max-width: 58ch; }
.mc-page.page-christmas .layout-gallery { background: #fbfaf8; }
.mc-page.page-christmas .layout-gallery:nth-of-type(odd) { background: #f3f4f3; }
.mc-page.page-christmas .collection-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 3rem; }
.mc-page.page-christmas .gallery-piece { display: grid; grid-template-columns: minmax(190px, .9fr) 1.1fr; gap: 1.25rem; align-items: start; border-top: 1px solid var(--line); padding-top: 1.25rem; }
.mc-page.page-christmas .gallery-piece img { aspect-ratio: 8 / 5; object-fit: cover; background: #f7f5ef; }
.mc-page.page-christmas .gallery-piece figcaption { font-size: .78rem; padding: .5rem 0; }
.mc-page.page-christmas .gallery-caption .reference { color: var(--gold); text-transform: uppercase; letter-spacing: .08em; font-size: .75rem; }
.mc-page.page-christmas .gallery-caption h3 { margin: .3rem 0 .55rem; font-size: 1.35rem; }
.mc-page.page-christmas .gallery-caption p { font-size: .9rem; line-height: 1.65; color: #39485a; }
.mc-page.page-christmas .christmas-scope { padding: 3rem 0; background: #fff; }
.mc-page.page-christmas .christmas-scope .mc-wrap { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
@media (max-width: 850px) {
  .mc-page.page-christmas .christmas-intro .hero-grid { grid-template-columns: 1fr; }
  .mc-page.page-christmas .collection-gallery { grid-template-columns: 1fr; }
  .mc-page.page-christmas .gallery-piece { grid-template-columns: minmax(160px, .85fr) 1.15fr; }
}
@media (max-width: 560px) {
  .mc-page.page-christmas .gallery-piece { grid-template-columns: 1fr; }
  .mc-page.page-christmas .christmas-scope .mc-wrap { grid-template-columns: 1fr; }
}

/* Shirley 25Q internal series: preserve full generated scene and unchanged source-photo proportions. */
.mc-page.page-christmas .christmas-intro img { object-fit: contain; background: #f7f5ef; }
.mc-page.page-christmas section[id^="shirly-series-"] { scroll-margin-top: 6rem; }
.mc-page.page-christmas section[id^="shirly-series-"] .collection-gallery { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.25rem; }
.mc-page.page-christmas section[id^="shirly-series-"] .gallery-piece { display: block; min-width: 0; padding-top: .8rem; }
.mc-page.page-christmas section[id^="shirly-series-"] .gallery-piece:first-child { grid-column: 1 / -1; }
.mc-page.page-christmas section[id^="shirly-series-"] .gallery-piece:first-child img { aspect-ratio: 16 / 9; object-fit: contain; background: #f7f5ef; }
.mc-page.page-christmas section[id^="shirly-series-"] .gallery-piece:not(:first-child) img { aspect-ratio: 4 / 3; object-fit: contain; background: #f7f5ef; }
.mc-page.page-christmas section[id^="shirly-series-"] .gallery-piece:not(:first-child) .gallery-caption h3 { font-size: .9rem; overflow-wrap: anywhere; }
.mc-page.page-christmas section[id^="shirly-series-"] .gallery-piece:not(:first-child) .gallery-caption p { font-size: .76rem; line-height: 1.45; }
.mc-page.page-christmas section[id^="shirly-series-"] .gallery-piece:not(:first-child) .reference { font-size: .65rem; }
@media (max-width: 850px) {
  .mc-page.page-christmas section[id^="shirly-series-"] .collection-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
  .mc-page.page-christmas section[id^="shirly-series-"] .collection-gallery { grid-template-columns: 1fr; }
  .mc-page.page-christmas section[id^="shirly-series-"] .gallery-piece:first-child { grid-column: auto; }
}
.mc-page.page-christmas .collection-quicklinks { display:grid; grid-template-columns:repeat(auto-fit,minmax(155px,1fr)); gap:.55rem; margin:1rem auto 2rem; padding:1rem 0 1.5rem; border-bottom:1px solid var(--line); }
.mc-page.page-christmas .collection-quicklinks a { display:flex; align-items:center; min-height:44px; padding:.65rem .8rem; background:#faf8f4; color:#174d8e; line-height:1.4; text-underline-offset:.2rem; }
.mc-page.page-christmas .collection-quicklinks a:hover { background:#edf2f7; color:#102f55; }
.mc-page.page-christmas .collection-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); }
.mc-page.page-christmas .linked-gallery-piece { color:inherit; text-decoration:none; border-top:1px solid var(--line); padding:1rem 0; min-width:0; transition:background-color .18s ease, transform .18s ease; }
.mc-page.page-christmas .linked-gallery-piece:hover { background:#f6f7f5; transform:translateY(-2px); }
.mc-page.page-christmas .linked-gallery-piece:focus-visible { outline:3px solid #174d8e; outline-offset:4px; }
.mc-page.page-christmas .linked-gallery-piece figure { margin:0; }
.mc-page.page-christmas .linked-gallery-piece img { aspect-ratio:3/2; object-fit:contain; background:#f7f5ef; }
.mc-page.page-christmas .linked-gallery-piece .reference { display:block; margin:.8rem 0 .25rem; color:#805c27; font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; }
.mc-page.page-christmas .linked-gallery-piece h3 { margin:.25rem 0 .45rem; font-size:1.25rem; }
.mc-page.page-christmas .linked-gallery-piece p { margin:.35rem 0; max-width:60ch; line-height:1.55; color:#39485a; }
.mc-page.page-christmas .new-tab-note { display:inline-block; margin-top:.4rem; font-size:.76rem; color:#4d6275; text-decoration:underline; text-underline-offset:.18rem; }
.mc-page.page-christmas .christmas-detail-hero { background:#f3f1eb; padding:clamp(2rem,5vw,4rem) 0; }
.mc-page.page-christmas .christmas-detail-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,.8fr); align-items:center; gap:2rem; }
.mc-page.page-christmas .christmas-detail-hero .hero-lede { max-width:62ch; }
.mc-page.page-christmas .archive-condition { margin:1.2rem 0; padding-left:1rem; border-left:2px solid var(--gold); color:#4e5b67; font-size:.92rem; }
.mc-page.page-christmas .christmas-detail-scene img { aspect-ratio:4/3; object-fit:contain; background:#fff; }
.mc-page.page-christmas .christmas-detail-scene > p:last-child { color:#586878; font-size:.82rem; }
.mc-page.page-christmas .christmas-product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.5rem; }
.mc-page.page-christmas .christmas-product-card { min-width:0; border-top:1px solid var(--line); padding-top:1rem; }
.mc-page.page-christmas .christmas-product-card figure { margin:0 0 .7rem; }
.mc-page.page-christmas .christmas-product-card img { aspect-ratio:4/3; object-fit:contain; background:#fbfaf8; }
.mc-page.page-christmas .christmas-product-card h2,.mc-page.page-christmas .christmas-product-card h3 { margin:.45rem 0; font-size:.98rem; overflow-wrap:anywhere; }
.mc-page.page-christmas .christmas-product-card p { margin:.35rem 0 .8rem; color:#4e5b67; font-size:.86rem; line-height:1.45; }
.mc-page.page-christmas .christmas-detail-return { display:flex; align-items:center; gap:1rem; padding:1.2rem 0; flex-wrap:wrap; }
.mc-page.page-christmas .christmas-related-series { display:flex; gap:1rem; padding:0 0 2rem; flex-wrap:wrap; }
@media(max-width:900px) { .mc-page.page-christmas .christmas-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:650px) { .mc-page.page-christmas .collection-gallery { grid-template-columns:1fr; } .mc-page.page-christmas .christmas-detail-hero-grid { grid-template-columns:1fr; } .mc-page.page-christmas .christmas-product-grid { grid-template-columns:1fr; } .mc-page.page-christmas .christmas-product-card { display:grid; grid-template-columns:minmax(120px,.75fr) minmax(0,1fr); gap:.35rem .8rem; align-items:start; } .mc-page.page-christmas .christmas-product-card figure { grid-row:span 2; margin:0; } }
@media(prefers-reduced-motion:reduce) { .mc-page.page-christmas .linked-gallery-piece { transition:none; } .mc-page.page-christmas .linked-gallery-piece:hover { transform:none; } }

/* MX33/MX35: editorial series overview; retain complete native source images. */
.mc-page.page-christmas .christmas-intro .hero-lede { max-width:48ch; }
.mc-page.page-christmas .collection-gallery { grid-template-columns:1fr; gap:3.5rem; }
.mc-page.page-christmas .linked-gallery-piece { display:grid; grid-template-columns:minmax(0,2.5fr) minmax(240px,1fr); gap:0 2rem; align-content:center; align-items:start; padding:2rem 0; }
.mc-page.page-christmas .linked-gallery-piece figure { grid-column:1; grid-row:1 / span 5; }
.mc-page.page-christmas .linked-gallery-piece img { width:100%; height:auto; aspect-ratio:auto; object-fit:contain; background:#fff; }
.mc-page.page-christmas .linked-gallery-piece .reference { grid-column:2; margin:1.5rem 0 .6rem; }
.mc-page.page-christmas .linked-gallery-piece h3 { grid-column:2; font-size:clamp(1.5rem,2.3vw,2.1rem); line-height:1.15; }
.mc-page.page-christmas .linked-gallery-piece > p,.mc-page.page-christmas .linked-gallery-piece > .new-tab-note { grid-column:2; }
.mc-page.page-christmas .linked-gallery-piece figcaption { color:#586574; line-height:1.5; }
.mc-page.page-christmas .christmas-detail-hero h1 { font-size:clamp(2.3rem,4.5vw,4rem); }
.mc-page.page-christmas .christmas-detail-hero-grid:has(>div:only-child) { grid-template-columns:1fr; }
.mc-page.page-christmas .christmas-detail-scene { max-width:430px; justify-self:end; }
.mc-page.page-christmas .christmas-detail-scene img { width:100%; height:auto; aspect-ratio:auto; }
.mc-page.page-christmas .christmas-product-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:2.5rem 1.5rem; align-items:start; }
.mc-page.page-christmas .christmas-product-card { display:block; }
.mc-page.page-christmas .christmas-product-card figure { margin:0 0 .75rem; }
.mc-page.page-christmas .christmas-product-card img { width:100%; max-width:var(--product-image-width,260px); max-height:260px; height:auto; aspect-ratio:auto; object-fit:contain; margin:0 auto; display:block; }
.mc-page.page-christmas .christmas-product-card figcaption { font-size:.75rem; line-height:1.5; padding:.65rem 0 0; }
.mc-page.page-christmas .christmas-product-card h3 { margin:.5rem 0; font-size:1rem; overflow-wrap:anywhere; }
@media(max-width:1000px) {
 .mc-page.page-christmas .linked-gallery-piece { grid-template-columns:minmax(0,2fr) minmax(200px,1fr); gap:0 1.5rem; }
 .mc-page.page-christmas .christmas-product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:700px) {
 .mc-page.page-christmas .linked-gallery-piece { display:block; padding:1.5rem 0; }
 .mc-page.page-christmas .linked-gallery-piece .reference { margin:1rem 0 .5rem; }
 .mc-page.page-christmas .christmas-detail-hero-grid { grid-template-columns:1fr; }
 .mc-page.page-christmas .christmas-detail-scene { max-width:360px; justify-self:start; }
 .mc-page.page-christmas .christmas-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem 1rem; }
 .mc-page.page-christmas .christmas-product-card { display:block; }
}

/* Three-part seasonal story, kept readable beside the collection scene. */
.mc-page.page-christmas .christmas-collection-story { max-width:66ch; color:#39485a; }
.mc-page.page-christmas .christmas-collection-story p { margin:1rem 0; font-size:1rem; line-height:1.8; }
.mc-page.page-christmas .christmas-detail-hero-grid { align-items:start; }
.mc-page.page-christmas .christmas-detail-scene { position:sticky; top:8rem; }
@media(max-width:700px) { .mc-page.page-christmas .christmas-detail-scene { position:static; } }

.christmas-original-photo-link{display:inline-block;margin:.55rem 0 .2rem;color:var(--ink,#25364a);font-size:.9rem;font-weight:650;text-underline-offset:.18em}
