/* Single semantic timeline; the drawing is decorative. */
.luma-history{max-width:1536px;margin:auto;padding:0 48px}
.luma-timeline{position:relative;margin-top:48px}
.luma-timeline__list{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-height:570px;margin:0;padding:0;list-style:none}
.luma-timeline__item{position:relative;min-width:0}
.luma-timeline__snake{position:absolute;top:185px;left:0;width:100%;height:120px;overflow:visible}
.luma-timeline__number{position:absolute;top:230px;left:50%;transform:translateX(-50%);width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#111;color:white;font:500 14px/1 Inter,sans-serif;box-shadow:0 0 0 5px white}
.luma-timeline__content{position:absolute;top:300px;left:50%;transform:translateX(-50%);width:clamp(230px,19vw,280px);color:#5a5a5a;font:400 15px/1.65 Inter,sans-serif}
.luma-timeline__item:nth-child(even) .luma-timeline__content{top:auto;bottom:calc(100% - 185px)}
.luma-timeline__item:first-child .luma-timeline__content{left:0;transform:none}
.luma-timeline__item:last-child .luma-timeline__content{left:auto;right:0;transform:none}
.luma-timeline__content h3{font:700 18px/1.4 Poppins,sans-serif;letter-spacing:-.025em;color:#111;margin:0 0 8px}
.luma-timeline__content p{margin:0}
.luma-timeline__content .luma-timeline__date{font:600 11px/1.5 Inter,sans-serif;text-transform:uppercase;letter-spacing:.09em;color:#666;margin-bottom:12px}
.luma-timeline__content .luma-timeline__people{margin-top:7px;color:#111;font-size:14px}
@media(max-width:1099px){
 .luma-timeline{margin-top:48px}
 .luma-timeline__snake{display:none}
 .luma-timeline__list{display:block;min-height:0;margin-left:4px;border-left:3px solid #111}
 .luma-timeline__item{padding:0 0 44px 38px}
 .luma-timeline__item:last-child{padding-bottom:0}
 .luma-timeline__number{top:0;left:-2px;width:28px;height:28px;font-size:12px}
 .luma-timeline__content,.luma-timeline__item:nth-child(even) .luma-timeline__content,.luma-timeline__item:first-child .luma-timeline__content,.luma-timeline__item:last-child .luma-timeline__content{position:static;transform:none;width:auto;max-width:580px}
 .luma-timeline__content h3{font-size:20px}
}
@media(max-width:767px){.luma-history{padding:0 24px}}

/* Photo memories: the existing timeline stays in place. */
.luma-timeline__number{border:0;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s}
.luma-timeline__number:hover,.luma-timeline__number[aria-expanded="true"]{background:#9cc178;color:#111;box-shadow:0 0 0 5px white,0 0 0 7px #9cc178}
.luma-timeline__number:focus-visible{outline:3px solid #4a6b3a;outline-offset:8px}
.luma-photo{position:fixed;inset:auto;margin:0;width:min(320px,calc(100vw - 44px));max-width:none;padding:0;border:0;background:transparent;color:#111;overflow:visible}
.luma-photo::backdrop{background:transparent}
.luma-photo__card{position:relative;padding:5px;border:3px solid #9cc178;border-radius:18px;background:white;box-shadow:0 18px 48px #1113;transform:rotate(-3deg);animation:luma-photo-float 5s ease-in-out infinite}
.luma-photo__image{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:10px}
.luma-photo__image[hidden],.luma-photo__empty[hidden]{display:none}
.luma-photo__caption{margin:0;padding:12px 9px 8px;font:600 13px/1.5 Inter,sans-serif}
.luma-photo__close{position:absolute;right:-13px;top:-13px;z-index:1;width:32px;height:32px;border:2px solid #9cc178;border-radius:50%;background:#fff;color:#111;cursor:pointer;font:24px/1 Inter,sans-serif;box-shadow:0 2px 8px #1112}
.luma-photo__close:focus-visible{outline:3px solid #4a6b3a;outline-offset:3px}
.luma-photo__empty{display:grid;place-items:center;min-height:120px;background:#f5f8f2;border-radius:10px;color:#4a6b3a;font:500 14px/1.5 Inter,sans-serif}
@keyframes luma-photo-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-8px) rotate(2deg)}}
@media(prefers-reduced-motion:reduce){.luma-photo__card{animation:none;transform:none}.luma-timeline__number{transition:none}}

/* A gentle staggered invitation to explore, with generous touch targets. */
.luma-timeline__number{animation:luma-hito-pulse 4s ease-in-out infinite;touch-action:manipulation}
.luma-timeline__number::after{content:"";position:absolute;inset:-8px;border-radius:50%}
.luma-timeline__item:nth-child(2) .luma-timeline__number{animation-delay:.25s}
.luma-timeline__item:nth-child(3) .luma-timeline__number{animation-delay:.5s}
.luma-timeline__item:nth-child(4) .luma-timeline__number{animation-delay:.75s}
.luma-timeline__item:nth-child(5) .luma-timeline__number{animation-delay:1s}
.luma-timeline__item:nth-child(6) .luma-timeline__number{animation-delay:1.25s}
.luma-timeline__item:nth-child(7) .luma-timeline__number{animation-delay:1.5s}
.luma-timeline__number:hover,.luma-timeline__number[aria-expanded="true"]{animation:none;background:#9cc178;color:#111}
@keyframes luma-hito-pulse{0%,65%,100%{background:#111;color:#fff}30%{background:#9cc178;color:#111}}
@media(prefers-reduced-motion:reduce){.luma-timeline__number{animation:none}}
