.holiday-memories{background:var(--mist);border-top:1px solid var(--line)}
.holiday-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem}
.holiday-heading>div{min-width:0}.holiday-heading h2{max-width:20ch;margin:0}.holiday-heading .eyebrow{margin-bottom:.8rem}
.holiday-heading>p{max-width:42ch;margin:0;color:var(--muted)}
.holiday-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:1.5rem;align-items:start}
.holiday-feature{min-width:0;margin:0;background:var(--paper);border:1px solid var(--line)}
.holiday-preview{position:relative;background:var(--deep)}
.holiday-preview img{width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.holiday-year{position:absolute;left:1rem;top:1rem;background:var(--deep);color:white;padding:.3rem .75rem;font-size:.85rem;font-weight:700}
.holiday-feature-copy{padding:1.5rem}.holiday-feature-copy>p:not(.holiday-source){font-size:.95rem}.holiday-source{font-size:.8rem;color:var(--muted);margin-bottom:.75rem}
.holiday-feature-copy h3{font-size:1.9rem}.holiday-feature-copy cite{font-style:normal}
.holiday-video-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem 1.25rem;margin-top:1.1rem}
.holiday-video-actions .button{border:1px solid var(--forest);max-width:100%;white-space:normal;text-align:center;font-size:.95rem}
.holiday-video-actions .text-link{font-size:.9rem;min-height:48px;display:inline-flex;align-items:center}
.holiday-feature-copy .holiday-player-note{color:var(--muted);font-size:.8rem;margin:.8rem 0 0}
.holiday-player-region{background:var(--deep);aspect-ratio:16/9;min-height:220px}
.holiday-player-region iframe{display:block;width:100%;height:100%;min-height:220px;border:0}
.holiday-sources{display:grid;gap:1.25rem;min-width:0}.holiday-source-card{background:var(--paper);border:1px solid var(--line);padding:1.5rem;min-width:0}
.holiday-source-card .eyebrow{letter-spacing:.1em;font-size:.75rem;margin-bottom:.75rem}.holiday-source-card h3{font-size:1.6rem}.holiday-source-card p{font-size:.95rem}
.holiday-source-card .text-link{font-size:.9rem;min-height:48px;display:flex;align-items:center;overflow-wrap:anywhere}
.holiday-organizer-link{font-size:.8rem;display:inline-flex;align-items:center;min-height:48px}
.holiday-archive-note{font-size:.85rem;color:var(--muted);margin:1.5rem 0 0;max-width:90ch}
.holiday-memories-compact{padding-top:3rem;padding-bottom:3rem}
html[data-reading="contrast"] .holiday-year{background:#000;color:#fff;border:1px solid #fff}
@media(max-width:800px){.holiday-heading{display:block}.holiday-heading>p{margin-top:1rem;max-width:65ch}.holiday-layout{grid-template-columns:minmax(0,1fr)}.holiday-sources{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.holiday-sources{grid-template-columns:minmax(0,1fr)}.holiday-feature-copy,.holiday-source-card{padding:1.1rem}.holiday-feature-copy h3{font-size:1.7rem}.holiday-year{left:.75rem;top:.75rem}.holiday-player-region,.holiday-player-region iframe{min-height:200px}}
@media(forced-colors:active){.holiday-year{background:Canvas;color:CanvasText;border:1px solid CanvasText}.holiday-feature,.holiday-source-card,.holiday-video-actions .button{border:1px solid CanvasText}}
@media print{.holiday-video-actions button,.holiday-player-region{display:none!important}.holiday-preview{display:block!important}.holiday-layout{display:block}.holiday-feature,.holiday-source-card{break-inside:avoid}.holiday-sources{margin-top:1rem}.holiday-memories{background:white}}
