
.media-home,.media-list-page{position:relative;min-height:100vh;padding:clamp(22px,5vw,72px);color:#2c2926}
.media-hero,.media-list-header{width:min(100%,980px);margin:0 auto clamp(24px,4vw,42px);text-align:center}
.media-hero h1,.media-list-header h1{margin:0;font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(3rem,7vw,6rem);font-weight:600;line-height:.92;letter-spacing:-.045em}
.media-hero p:not(.home__eyebrow),.media-list-header p:not(.home__eyebrow){max-width:650px;margin:22px auto 0;color:#756f68;font-size:clamp(1rem,1.8vw,1.14rem);line-height:1.75}
.media-choices{width:min(100%,1080px);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,24px);margin:0 auto}
.media-choice{position:relative;min-height:330px;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(20px,3vw,32px);border:1px solid rgba(44,41,38,.14);border-radius:30px;background:rgba(255,255,255,.72);box-shadow:0 14px 44px rgba(44,41,38,.07);overflow:hidden;transition:transform .55s cubic-bezier(.16,1,.3,1),box-shadow .55s cubic-bezier(.16,1,.3,1),background .55s}
.media-choice:hover,.media-choice:focus-visible{transform:translateY(-8px);background:rgba(255,255,255,.88);box-shadow:0 26px 70px rgba(44,41,38,.13);outline:none}
.media-choice:hover .media-choice__arrow,.media-choice:focus-visible .media-choice__arrow{transform:translateX(6px);opacity:1}
.media-choice__visual{height:145px;border-radius:24px;background:radial-gradient(circle at 28% 24%,rgba(255,255,255,.85),transparent 30%),linear-gradient(135deg,rgba(184,163,138,.30),rgba(44,41,38,.08))}
.media-choice__visual--videos{background:radial-gradient(circle at center,rgba(255,255,255,.74),transparent 18%),linear-gradient(135deg,rgba(44,41,38,.13),rgba(184,163,138,.25))}
.media-choice__visual--docs{background:repeating-linear-gradient(0deg,rgba(44,41,38,.08) 0 1px,transparent 1px 18px),linear-gradient(135deg,rgba(255,255,255,.72),rgba(184,163,138,.20))}
.media-choice__label{display:block;margin-top:26px;font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(2.2rem,4vw,3.4rem);font-weight:600;line-height:1;letter-spacing:-.035em}
.media-choice__text{display:block;margin-top:12px;color:#756f68;line-height:1.65}
.media-choice__arrow{position:absolute;right:28px;bottom:24px;font-size:1.55rem;opacity:.48;transition:transform .45s cubic-bezier(.16,1,.3,1),opacity .45s}
.media-list-panel{width:min(100%,1160px);margin:0 auto;padding:clamp(20px,4vw,38px);border:1px solid rgba(255,255,255,.65);border-radius:clamp(28px,4vw,44px);background:rgba(255,252,247,.58);box-shadow:0 24px 80px rgba(44,41,38,.10);backdrop-filter:blur(22px)}
.media-toolbar{display:flex;justify-content:space-between;margin-bottom:22px;color:#756f68}.media-toolbar p{margin:0}
.media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.media-card{min-width:0}.media-card__button{width:100%;min-height:100%;padding:12px;border:1px solid rgba(44,41,38,.14);border-radius:26px;background:rgba(255,255,255,.66);color:#2c2926;text-align:left;cursor:pointer;transition:transform .35s ease,background .35s ease,box-shadow .35s ease;font:inherit}
.media-card__button:hover,.media-card__button:focus-visible{transform:translateY(-4px);background:rgba(255,255,255,.88);box-shadow:0 18px 46px rgba(44,41,38,.10);outline:none}
.media-card__thumb{height:230px;display:block;border-radius:20px;overflow:hidden;background:rgba(44,41,38,.06)}
.media-card__thumb img,.media-card__thumb video{width:100%;height:100%;object-fit:cover;display:block}
.media-card__title{display:block;margin-top:14px;font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.media-card__meta{display:block;margin-top:6px;color:#756f68;font-size:.88rem}
.media-card__doc-icon{height:170px;display:grid;place-items:center;border-radius:20px;background:repeating-linear-gradient(0deg,rgba(44,41,38,.08) 0 1px,transparent 1px 18px),rgba(255,255,255,.42);color:rgba(44,41,38,.55);font-weight:700;letter-spacing:.12em}
.empty-medias{grid-column:1/-1;margin:0;padding:26px;border:1px solid rgba(44,41,38,.14);border-radius:24px;color:#756f68;background:rgba(255,255,255,.52);text-align:center}
.media-viewer{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:clamp(18px,4vw,42px);background:rgba(44,41,38,.58);backdrop-filter:blur(12px);opacity:0;visibility:hidden;transition:opacity .35s ease,visibility .35s ease}
.media-viewer.is-open{opacity:1;visibility:visible}
.media-viewer__close{position:fixed;right:clamp(18px,4vw,36px);top:clamp(18px,4vw,36px);z-index:2;width:48px;height:48px;display:grid;place-items:center;border:0;border-radius:50%;background:rgba(255,255,255,.88);color:#2c2926;font-size:2rem;line-height:1;cursor:pointer}
.media-viewer__content{width:min(100%,1080px);max-height:88vh}
.viewer-figure,.viewer-video,.viewer-document{margin:0;padding:clamp(14px,2vw,22px);border-radius:28px;background:rgba(255,255,255,.92);box-shadow:0 24px 80px rgba(44,41,38,.10)}
.viewer-figure img{width:100%;max-height:76vh;display:block;object-fit:contain;border-radius:18px}.viewer-figure figcaption{margin-top:12px;color:#756f68;text-align:center}
.viewer-video video{width:100%;max-height:76vh;display:block;border-radius:18px;background:#000}.viewer-video p{margin:12px 0 0;color:#756f68;text-align:center}
.viewer-document{display:grid;gap:14px}.viewer-document iframe{width:100%;height:min(76vh,760px);border:0;border-radius:18px;background:#fff}.viewer-document .secondary-button{justify-self:center}
body.has-viewer-open{overflow:hidden}
@media (max-width:920px){.media-choices,.media-grid{grid-template-columns:1fr}.media-choice{min-height:260px}}
.media-choice__visual--images {

    overflow: hidden;

}

.media-choice__visual--images img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

}

.media-viewer__nav {
  position: fixed;
  top: 50%;
  z-index: 2;
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: rgba(255,255,255,.88);
  color: #2c2926;
  font-size: 1.8rem;
  cursor: pointer;
  transform: translateY(-50%);
}

.media-viewer__nav--prev {
  left: clamp(14px, 4vw, 42px);
}

.media-viewer__nav--next {
  right: clamp(14px, 4vw, 42px);
}

.media-viewer__nav:disabled {
  opacity: .25;
  cursor: not-allowed;
}

@media (max-width: 720px) {
  .media-viewer__nav {
    top: auto;
    bottom: 18px;
    transform: none;
  }
}