@charset "UTF-8";

[hidden]{display:none!important}
.moments-page{max-width:1500px;margin:auto}
.moments-kicker{margin:0;color:#5b8490;font-size:10px;letter-spacing:.25em;line-height:1.8}
.moments-kicker span{display:inline-block;width:6px;height:6px;margin-right:10px;vertical-align:middle;border-radius:50%;background:#69a2ad}

.moments-hero{position:relative;aspect-ratio:2200/1234;margin:38px 5vw 0;background:#08151e;overflow:hidden;isolation:isolate}
.moments-hero__copy{position:absolute;z-index:2;inset:0 2.5% 0 74%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;width:auto;padding:0}
.moments-hero__copy .moments-kicker{color:#c0dadd}
.moments-hero__copy .moments-kicker span{background:#9bcbd3}
.moments-hero h1{margin:35px 0 22px;color:#f3f7f4;font:400 clamp(48px,4.5vw,66px)/1.22 var(--serif);letter-spacing:-.055em;text-shadow:0 2px 20px rgba(2,13,19,.55)}
.moments-hero__statement{max-width:480px;margin:0;color:#e5f0ef;font:400 clamp(17px,1.4vw,20px)/1.9 var(--serif);letter-spacing:.025em;text-shadow:0 2px 12px rgba(2,13,19,.7)}
.moments-statement-break{display:block}
.moments-hero__frame{position:absolute;inset:0;min-width:0;margin:0;background:#142c37}
.moments-hero__picture{display:block;width:100%;height:100%}
.moments-hero__frame::after{content:"";position:absolute;inset:0;background:linear-gradient(270deg,rgba(3,15,22,.78),rgba(3,15,22,.28) 37%,transparent 62%),linear-gradient(0deg,rgba(4,17,23,.5),transparent 24%);pointer-events:none}
.moments-hero__frame img{display:block;width:100%;height:100%;object-fit:contain}
.moments-hero__frame figcaption{position:absolute;z-index:1;right:28px;bottom:23px;left:28px;display:flex;justify-content:space-between;gap:18px;color:#ecf5f3;font:10px/1.6 Georgia,serif;letter-spacing:.12em;text-shadow:0 1px 4px #0a2028}

.moments-archive{margin:0 5vw;padding:76px 0 95px}
.moments-archive__intro h2{margin:20px 0 0;color:#234f5b;font:400 clamp(35px,4vw,56px)/1.34 var(--serif);letter-spacing:-.055em}
.moment-months{display:flex;gap:26px;margin:48px 0 0;padding:15px 0;border-top:1px solid #ccdedd;border-bottom:1px solid #ccdedd;overflow-x:auto;white-space:nowrap;scrollbar-width:thin}
.moment-months a{color:#557a83;font:12px Georgia,serif;letter-spacing:.12em}
.moment-months a:hover,.moment-months a:focus-visible{color:#176f88}
.moment-loading{padding:65px 0;color:#6b8387;font-size:14px}

.moment-month{padding-top:62px;scroll-margin-top:22px}
.moment-month__heading{margin:0 0 8px;padding-bottom:24px;border-bottom:1px solid #d3e1e0;color:rgba(71,147,165,.39);font:400 clamp(56px,8.5vw,110px)/1 Georgia,serif;letter-spacing:-.07em}
.moment-day{padding:40px 0 70px;border-bottom:1px solid #d8e4e2;scroll-margin-top:18px}
.moment-day__heading{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:24px;margin-bottom:20px;padding:20px 25px 20px 21px;border-left:4px solid var(--venue-accent);background:linear-gradient(105deg,color-mix(in srgb,var(--venue-accent) 12%,#eff6f3),#edf4f1 68%)}
.moment-day__symbol{display:grid;place-items:center;width:76px;height:76px;border:1px solid color-mix(in srgb,var(--venue-accent) 50%,transparent);border-radius:50%;color:var(--venue-accent);background:rgba(255,255,255,.55)}
.moment-day__symbol svg{display:block;width:50px;height:50px}
.moment-day__title{min-width:0}
.moment-day__title time{display:block;color:color-mix(in srgb,var(--venue-accent) 78%,#263f4a);font:13px/1.4 Georgia,serif;letter-spacing:.2em}
.moment-day__title h4{margin:8px 0 0;color:#214854;font:400 clamp(24px,2.5vw,38px)/1.35 var(--serif);letter-spacing:-.025em;overflow-wrap:anywhere}
.moment-day__folio{align-self:end;padding:0 0 5px;color:#6c8588;font:10px Georgia,serif;letter-spacing:.18em;white-space:nowrap}

.moment-storyboard{position:relative;display:flex;flex-direction:column;gap:14px;padding:clamp(12px,2vw,23px);background:#10252f;box-shadow:0 22px 55px rgba(24,66,73,.12)}
.moment-storyboard::before,.moment-storyboard::after{content:"";position:absolute;z-index:1;width:29px;height:29px;pointer-events:none}
.moment-storyboard::before{top:6px;left:6px;border-top:1px solid #92cbd3;border-left:1px solid #92cbd3}
.moment-storyboard::after{right:6px;bottom:6px;border-right:1px solid #92cbd3;border-bottom:1px solid #92cbd3}
.moment-row{display:grid;gap:14px;min-width:0}
.moment-row--feature{grid-template-columns:1fr}
.moment-row--feature .moment-photo{height:clamp(360px,49vw,630px)}
.moment-row--feature .moment-photo img{object-fit:contain}
.moment-row--duo{grid-template-columns:1fr 1fr;align-items:start}
.moment-row--duo .moment-photo{aspect-ratio:3/2}
.moment-row--duo.moment-row--offset{grid-template-columns:1.12fr .88fr}
.moment-row--duo.moment-row--offset .moment-photo:last-child{margin-top:clamp(12px,3vw,42px)}
.moment-row--trio{grid-template-columns:repeat(3,minmax(0,1fr))}
.moment-row--trio .moment-photo{aspect-ratio:3/2}
.moment-row--portraits{grid-template-columns:repeat(3,minmax(0,1fr))}
.moment-row--portraits .moment-photo{aspect-ratio:2/3}
.moment-row--portrait-duo{grid-template-columns:repeat(2,minmax(0,1fr));width:min(890px,100%);margin:0 auto;padding:8px 0}
.moment-row--portrait-duo .moment-photo{aspect-ratio:2/3}
.moment-row--mixed{grid-template-columns:.8fr 1.2fr;grid-template-rows:repeat(2,minmax(0,1fr));height:610px}
.moment-row--mixed .moment-photo:first-child{grid-row:span 2}
.moment-row--mixed .moment-photo:not(:first-child) img{object-fit:contain}
.moment-photo{position:relative;display:block;width:100%;min-width:0;margin:0;padding:0;border:0;background:#152d38;overflow:hidden;line-height:0;cursor:zoom-in}
.moment-photo img{display:block;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .25s ease,transform .35s ease,filter .35s ease}
.moment-photo img.is-loaded{opacity:1}
.moment-photo:hover img{transform:scale(1.018);filter:brightness(1.05)}
.moment-photo__index{position:absolute;right:0;bottom:0;display:block;padding:10px 13px;background:rgba(12,30,39,.74);color:#e4f4f4;font:11px/1 Georgia,serif;letter-spacing:.1em}
.moments-back-top{display:block;width:max-content;margin:68px auto 0;padding:8px 0;border-bottom:1px solid #9cbfc4;color:#456f77;font-size:12px}

.moment-viewer{width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:#09171e;color:#e8f2f1;overflow:hidden}
.moment-viewer::backdrop{background:#09171e}
.moment-viewer__inner{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0;padding:52px 62px 22px}
.moment-viewer figure{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-width:0;max-width:100%;max-height:100%;margin:0}
.moment-viewer figure img{display:block;max-width:100%;max-height:calc(100vh - 110px);width:auto;height:auto;object-fit:contain}
.moment-viewer figure figcaption{display:flex;justify-content:space-between;gap:18px;width:100%;min-width:min(420px,70vw);margin-top:14px;color:#a9c3c5;font:12px Georgia,serif;letter-spacing:.08em}
.moment-viewer button{display:grid;place-items:center;border:1px solid rgba(222,244,243,.35);border-radius:50%;background:rgba(12,39,49,.64);color:white}
.moment-viewer__close{position:absolute;z-index:2;top:15px;right:20px;width:38px;height:38px;font-size:26px;line-height:1}
.moment-viewer__arrow{position:absolute;z-index:2;top:50%;width:42px;height:42px;transform:translateY(-50%);font:36px/1 Georgia,serif}
.moment-viewer__arrow--prev{left:15px}.moment-viewer__arrow--next{right:15px}
.moment-viewer__arrow:disabled{opacity:.22;cursor:default}

@media(max-width:1100px){
  .moments-hero{display:flex;flex-direction:column;aspect-ratio:auto;background:#e6f0ef}
  .moments-hero__copy{position:relative;inset:auto;width:100%;padding:40px;background:radial-gradient(ellipse at 85% 18%,#f6faf7 0,transparent 54%),linear-gradient(145deg,#e7f3f2,#e8eeee)}
  .moments-hero__copy .moments-kicker{color:#5b8490}
  .moments-hero__copy .moments-kicker span{background:#69a2ad}
  .moments-hero h1{color:#214d59;text-shadow:none}
  .moments-hero__statement{color:#345d65;text-shadow:none}
  .moments-hero__frame{position:relative;inset:auto;aspect-ratio:2200/1234}
  .moments-hero__frame::after{background:linear-gradient(0deg,rgba(4,17,23,.5),transparent 28%)}
}
@media(max-width:950px){
  .moments-archive{padding-top:65px}
  .moment-day__title h4{font-size:clamp(22px,3vw,31px)}
}
@media(max-width:700px){
  .moments-hero{margin:20px 5vw 0}
  .moments-hero__copy{padding:32px 28px}
  .moments-hero h1{margin:30px 0 18px;font-size:clamp(43px,12vw,62px)}
  .moments-hero__statement{font-size:17px;line-height:1.85}
  .moments-statement-break{display:none}
  .moments-hero__frame figcaption{left:16px;right:16px;bottom:12px;font-size:9px;letter-spacing:.04em}
  .moments-archive{padding:52px 0 70px}
  .moments-archive__intro h2{font-size:36px}
  .moment-months{margin-top:30px;gap:22px}
  .moment-month{padding-top:38px}
  .moment-month__heading{padding-bottom:15px;font-size:64px}
  .moment-day{padding:26px 0 42px}
  .moment-day__heading{grid-template-columns:54px minmax(0,1fr);gap:14px;margin-bottom:11px;padding:13px 15px 13px 12px}
  .moment-day__symbol{width:54px;height:54px}
  .moment-day__symbol svg{width:38px;height:38px}
  .moment-day__title time{font-size:10px;letter-spacing:.16em}
  .moment-day__title h4{margin-top:4px;font-size:clamp(20px,5.5vw,27px)}
  .moment-day__folio{display:none}
  .moment-storyboard{gap:8px;padding:9px}
  .moment-row{gap:8px}
  .moment-row--feature .moment-photo{height:auto}
  .moment-row--feature .moment-photo img{height:auto;max-height:400px;object-fit:contain}
  .moment-row--duo.moment-row--offset{grid-template-columns:1fr 1fr}
  .moment-row--duo.moment-row--offset .moment-photo:last-child{margin-top:18px}
  .moment-row--trio{grid-template-columns:1fr 1fr}
  .moment-row--trio .moment-photo:first-child{grid-column:1/-1}
  .moment-row--portraits{gap:5px}
  .moment-row--portrait-duo{padding:3px 0}
  .moment-row--mixed{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;height:auto}
  .moment-row--mixed .moment-photo:first-child{grid-column:1/-1;grid-row:auto;width:55%;justify-self:center;aspect-ratio:2/3}
  .moment-row--mixed .moment-photo:not(:first-child){aspect-ratio:3/2}
  .moment-photo__index{padding:7px 8px;font-size:9px}
  .moment-viewer__inner{padding:52px 12px 50px}
  .moment-viewer figure img{max-height:calc(100vh - 130px)}
  .moment-viewer figure figcaption{min-width:0;font-size:11px;line-height:1.5}
  .moment-viewer__arrow{top:auto;bottom:2px;transform:none;width:38px;height:38px;font-size:31px}
  .moment-viewer__arrow--prev{left:calc(50% - 54px)}.moment-viewer__arrow--next{right:calc(50% - 54px)}
}
@media(max-width:390px){
  .moment-day__title h4{font-size:20px}
  .moment-day__symbol{width:48px;height:48px}
  .moment-day__heading{grid-template-columns:48px minmax(0,1fr)}
  .moment-viewer figure figcaption{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
  .moment-photo img{transition:none}
  .moment-photo:hover img{transform:none}
}
