/* Edition two and the first-event photo archive. The original invite is unchanged. */
.event-two { background: var(--paper); color: var(--ink); }
.event-nav { position: relative; z-index: 3; display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; width: min(1240px, 100%); margin: auto; padding: 1.5rem 2rem; }
.event-nav__brand img { width: 158px; height: auto; }
.event-nav__links { display: flex; gap: 1.6rem; align-items: center; }
.event-nav__links a { font: 700 .68rem var(--mono); letter-spacing: .08em; text-transform: uppercase; color: inherit; text-underline-offset: .35rem; text-decoration: none; }
.event-nav__links a:hover { text-decoration: underline; }
.event-cover { position: relative; overflow: hidden; color: white; background: var(--green-dark); }
.event-cover__background { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(3,31,18,.85),rgba(3,31,18,.15)),url('../img/evento-2/background-1600.webp') center/cover; }
.event-cover__grid { position: relative; display: grid; grid-template-columns: 1fr 1.08fr; align-items: center; gap: 2rem; width: min(1240px,100%); margin: auto; padding: 3rem 2rem 0; }
.event-cover__copy { padding: 0 0 4rem; }
.event-eyebrow { font: 700 .72rem var(--mono); letter-spacing: .22em; text-transform: uppercase; line-height: 1.7; }
.event-cover h1 { margin: 1.2rem 0 1.5rem; font-size: clamp(3.2rem,4.6vw,4.6rem); font-weight: 900; line-height: .98; letter-spacing: -.055em; text-transform: uppercase; }
.event-cover__lineup { margin-top: 1.2rem; font: 700 1.15rem var(--mono); letter-spacing: .02em; }
.event-cover__intro { font-size: 1.1rem; line-height: 1.65; color: #e4f0e8; max-width: 39ch; }
.event-cover__date { margin: 1.8rem 0 .7rem; font: 700 1.15rem var(--mono); line-height: 1.6; }
.event-cover__place { font-size: .98rem; line-height: 1.6; color: #d6e8da; }
.event-cover__action { margin-top: 1.7rem; }
.event-cover__artists { align-self: end; margin: 0 -2rem 0 0; }
.event-cover__artists img { width: 100%; height: auto; }
.event-cover .countdown { width: fit-content; margin-top: 1.8rem; border-radius: 0; background: rgba(3,31,18,.28); box-shadow: none; }
.event-cover .countdown__lbl { color: #e4f0e8; }
.event-intro { padding: 5.5rem 2rem; }
.event-container { width: min(1180px,100%); margin: auto; }
.event-intro__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; align-items: start; }
.event-heading { font-size: clamp(2.4rem,4.6vw,4.7rem); letter-spacing: -.045em; line-height: 1; font-weight: 900; text-transform: uppercase; margin-top: 1rem; }
.event-prose { font-size: 1.05rem; line-height: 1.85; color: #344237; max-width: 52ch; }
.event-prose p+p { margin-top: 1rem; }
.event-lineup { display: flex; flex-wrap: wrap; gap: 1rem 2rem; margin-top: 1.6rem; font: 700 1.6rem var(--mono); color: var(--green); }
.event-memories { background: #ece8dd; padding: 5rem 2rem; }
.event-section-top { display: flex; justify-content: space-between; align-items: end; gap: 3rem; margin-bottom: 2.5rem; }
.event-section-top p { max-width: 37ch; line-height: 1.75; color: #344237; }
.event-highlights { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; align-items: start; }
.event-highlights figure:nth-child(even) { padding-top: 3rem; }
.event-highlights img { width: 100%; height: auto; }
.event-highlights figcaption { margin-top: .7rem; font: .68rem var(--mono); letter-spacing: .08em; line-height: 1.6; text-transform: uppercase; }
.event-memories__link { margin-top: 2.5rem; }
.event-outro { padding: 4.5rem 2rem; text-align: center; background: var(--green-dark); color: white; }
.event-outro p { margin-top: 1rem; line-height: 1.7; }
.event-footer-link { color: #d8eadc; text-underline-offset: .25em; font-size: .9rem; }
.event-two .footer__legal p { color: #abc4b2; }
.private-details { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.5rem; margin: 2.5rem 0; border-block: 1px solid #c9d4c7; padding: 1.5rem 0; }
.private-details dt { font: .7rem var(--mono); text-transform: uppercase; letter-spacing: .12em; color: #42654b; margin-bottom: .6rem; }
.private-details dd { font-size: 1.1rem; font-weight: 700; line-height: 1.6; }
.registration-note { font-size: .95rem; line-height: 1.75; max-width: 50ch; color: #344237; }
.event-two #rsvp { scroll-margin-top: 1rem; }
.event-two .form { max-width: 560px; margin: 2rem auto 0; text-align: left; }
.event-two .form[hidden] { display: none; }
.event-two .form__note { color: #425a47; }
.event-two .field input { font-size: 16px; }
.event-two .rsvp-age { line-height: 1.6; }
.event-two .rsvp-age input { flex: none; }
.event-two .cf-turnstile { min-height: 65px; }
.gallery-cover { padding: 2.5rem 2rem 3.5rem; background: var(--green-dark); color: white; }
.gallery-cover .event-heading { max-width: 16ch; }
.gallery-cover p:last-child { margin-top: 1.5rem; line-height: 1.7; max-width: 50ch; color: #d6e8da; }
.gallery-section { padding: 3rem 2rem 5rem; }
.photo-gallery { columns: 4; column-gap: 1rem; }
.photo-gallery a { display: block; break-inside: avoid; margin: 0 0 1rem; overflow: hidden; background: #e1e7dd; }
.photo-gallery a:focus-visible { outline: 3px solid var(--green); outline-offset: 3px; }
.photo-gallery img { width: 100%; height: auto; transition: filter .2s; }
.photo-gallery a:hover img { filter: brightness(1.07); }
.photo-viewer { border: 0; padding: 0; max-width: none; max-height: none; width: 100%; height: 100%; background: rgba(3,18,11,.98); color: white; }
.photo-viewer::backdrop { background: #03120b; }
.photo-viewer__frame { height: 100%; display: grid; grid-template-rows: auto minmax(0,1fr) auto; padding: max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)); }
.photo-viewer__top { display: flex; align-items: center; justify-content: space-between; gap: 1rem; font: .7rem var(--mono); letter-spacing: .05em; }
.photo-viewer__image { width: 100%; height: 100%; min-height: 0; object-fit: contain; padding: 1rem 0; }
.photo-viewer__controls { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.photo-viewer button { border: 1px solid #789b82; background: transparent; color: white; font: .85rem var(--mono); padding: .8rem 1.1rem; min-height: 46px; cursor: pointer; }
.photo-viewer button:focus-visible { outline: 3px solid white; outline-offset: 3px; }
.photo-viewer__count { font: .8rem var(--mono); }
@media(min-width:961px) {
 .event-cover__artists { transform: translateX(clamp(24px,4vw,64px)) scale(1.5); transform-origin: bottom right; pointer-events: none; }
}
@media(min-width:961px) and (max-width:1199px) {
 .event-cover__artists { transform: translate(16px,40px) scale(1.5); }
}
@media(max-width:960px) {
 .event-cover__grid { grid-template-columns: 1fr 1fr; gap: .8rem; }
 .event-cover h1 { font-size: clamp(2.3rem,4.9vw,3rem); }
 .event-intro__grid { gap: 2rem; }
 .event-highlights { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.5rem; }
 .photo-gallery { columns: 3; }
}
@media(max-width:640px) {
 .event-nav { padding: 1.2rem 1.25rem; gap: 1rem; }
 .event-nav__brand img { width: 133px; }
 .event-nav__links { gap: .9rem; }
 .event-nav__links a { font-size: .6rem; letter-spacing: .025em; }
 .event-cover__background { background-image: linear-gradient(180deg,rgba(3,31,18,.74),rgba(3,31,18,.18)),url('../img/evento-2/background-840.webp'); }
 .event-cover__grid { grid-template-columns: 1fr; padding: 2rem 1.25rem 0; gap: 0; }
 .event-cover__copy { padding-bottom: 1.5rem; }
 .event-cover h1 { font-size: clamp(2rem,10.7vw,3.8rem); margin: 1rem 0 1.2rem; }
 .event-cover__intro { font-size: 1rem; line-height: 1.7; }
 .event-cover__date { font-size: 1rem; margin-top: 1.3rem; }
 .event-cover__artists { margin: 0 -1.25rem; }
 .event-cover__action { margin-top: 1.3rem; }
 .event-cover .btn { padding: 1rem 1.4rem; font-size: .85rem; }
 .event-cover .countdown { margin-top: 1.3rem; }
 .event-intro, .event-memories { padding: 3.5rem 1.25rem; }
 .event-intro__grid { grid-template-columns: 1fr; gap: 1.6rem; }
 .event-heading { font-size: clamp(2.2rem,9.5vw,3rem); }
 .event-section-top { display: block; margin-bottom: 1.8rem; }
 .event-section-top p { margin-top: 1.4rem; }
 .event-highlights { gap: 1rem; }
 .event-highlights figure:nth-child(even) { padding-top: 2rem; }
 .event-highlights figcaption { font-size: .57rem; letter-spacing: .02em; }
 .event-highlights figure { min-width: 0; }
 .event-lineup { font-size: 1.3rem; }
 .private-details { grid-template-columns: 1fr; gap: 1.1rem; }
 .private-details dt { margin-bottom: .3rem; }
 .gallery-cover { padding: 1.8rem 1.25rem 2.5rem; }
 .gallery-section { padding: 1rem .75rem 3rem; }
 .photo-gallery { columns: 2; column-gap: .65rem; }
 .photo-gallery a { margin-bottom: .65rem; }
 .photo-viewer__top { font-size: .6rem; }
 .photo-viewer button { padding: .75rem; font-size: .72rem; }
}
