/* ============================================================
   CHEF DANIE
   PRESS & FEATURES
============================================================ */


/* ============================================================
   PAGE
============================================================ */

.press-page {
  background: var(--cream-light);
  color: var(--ink);
}


/* ============================================================
   HEADER
============================================================ */

.press-page .site-header {
  color: var(--cream);

  background: rgba(7, 16, 12, 0.97);

  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}


.press-page .site-header.scrolled {
  background: rgba(7, 16, 12, 0.97);
}


.press-page .brand {
  color: var(--cream);
}


.press-page .main-nav a {
  color: rgba(248, 245, 239, 0.78);
}


.press-page .main-nav a:hover {
  color: var(--cream);
}


.press-page .main-nav .nav-active {
  color: var(--gold-light);
}


.press-page .main-nav .nav-active::after {
  width: 100%;
}


.press-page .header-cta {
  color: var(--cream);

  border-color: rgba(213, 192, 150, 0.7);
}


.press-page .header-cta:hover {
  background: var(--gold-light);

  color: var(--green-deep);
}


/* ============================================================
   HERO
============================================================ */

.press-hero {
  padding:
    205px
    var(--page-padding)
    110px;

  background: var(--cream-light);
}


.press-hero-inner {
  width: min(1360px, 100%);

  margin: 0 auto;
}


.press-kicker {
  margin: 0 0 28px;

  color: #707a67;

  font-size: 8px;
  font-weight: 600;

  text-transform: uppercase;

  letter-spacing: 0.25em;
}


.press-hero h1 {
  margin: 0;

  max-width: 900px;

  font-family: var(--serif);

  font-size: clamp(76px, 8vw, 135px);
  font-weight: 400;

  line-height: 0.9;

  letter-spacing: -0.025em;
}


.press-intro {
  max-width: 510px;

  margin: 42px 0 0 auto;

  color: rgba(17, 19, 15, 0.59);

  font-size: 12px;
  font-weight: 300;

  line-height: 1.85;
}


/* ============================================================
   SHARED PRESS SECTION
============================================================ */

.press-section {
  padding-left: var(--page-padding);
  padding-right: var(--page-padding);
}


.press-section-heading {
  width: min(1360px, 100%);

  margin: 0 auto 48px;

  padding-top: 30px;

  border-top: 1px solid rgba(17, 19, 15, 0.18);
}


.press-section-heading p {
  margin: 0 0 15px;

  color: #6e775f;

  font-size: 8px;
  font-weight: 600;

  text-transform: uppercase;

  letter-spacing: 0.23em;
}


.press-section-heading h2 {
  margin: 0;

  font-family: var(--serif);

  font-size: clamp(40px, 4vw, 65px);
  font-weight: 400;

  line-height: 1;

  letter-spacing: -0.035em;
}


/* ============================================================
   PUBLICATIONS
============================================================ */

.publications-section {
  padding-top: 25px;
  padding-bottom: 130px;

  background: var(--cream-light);
}


/* ============================================================
   GRID
============================================================ */

.press-grid {
  width: min(1360px, 100%);

  margin: 0 auto;

  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));

  gap:
    70px
    32px;
}


/* ============================================================
   PRESS ITEM
============================================================ */

.press-item {
  display: block;

  min-width: 0;
}


.press-item-static {
  cursor: default;
}


/* ============================================================
   IMAGE
============================================================ */

.press-image {
  position: relative;

  aspect-ratio: 4 / 5;

  overflow: hidden;

  background: #ddd8cd;
}


.press-image img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;

  filter: saturate(0.86);

  transition:
    transform 0.7s cubic-bezier(0.2, 0.7, 0.3, 1),
    filter 0.4s ease;
}


/* ONLY PUBLICATION LINKS MOVE */

.press-item-link:hover .press-image img {
  transform: scale(1.035);

  filter: saturate(1);
}


/* ============================================================
   META
============================================================ */

.press-meta {
  position: relative;

  min-height: 92px;

  padding:
    21px
    42px
    19px
    0;

  display: flex;
  align-items: flex-start;
  justify-content: space-between;

  gap: 25px;

  border-bottom: 1px solid rgba(17, 19, 15, 0.18);
}


.press-outlet {
  display: block;

  margin-bottom: 9px;

  color: #6e775f;

  font-size: 7px;
  font-weight: 600;

  text-transform: uppercase;

  letter-spacing: 0.19em;
}


.press-meta h3 {
  margin: 0;

  font-family: var(--serif);

  font-size: 24px;
  font-weight: 400;

  line-height: 1.15;
}


/* ============================================================
   PUBLICATION ARROWS
============================================================ */

.press-arrow {
  flex: 0 0 auto;

  margin-top: 13px;

  font-size: 18px;

  transition: transform 0.3s ease;
}


.press-item-link:hover .press-arrow {
  transform: translate(4px, -4px);
}


.press-item-link {
  cursor: pointer;
}


.press-item-link .press-meta {
  transition: border-color 0.3s ease;
}


.press-item-link:hover .press-meta {
  border-bottom-color: var(--gold);
}


/* ============================================================
   MEDIA
============================================================ */

.media-section {
  padding-top: 110px;
  padding-bottom: 140px;

  background: #ebe6dc;
}


.media-section .press-section-heading {
  border-top-color: rgba(17, 19, 15, 0.2);
}


.media-section .press-image {
  background: #d5d0c5;
}


.media-section .press-item-static .press-image img {
  transform: none;
}


/* ============================================================
   PRESS CONTACT
============================================================ */

.press-contact {
  padding:
    90px
    var(--page-padding);

  background: var(--green-rich);

  color: var(--cream);
}


.press-contact-inner {
  width: min(1360px, 100%);

  margin: 0 auto;

  display: flex;
  align-items: flex-end;
  justify-content: space-between;

  gap: 80px;
}


.press-contact p {
  margin: 0 0 20px;

  color: var(--gold-light);

  font-size: 8px;
  font-weight: 500;

  text-transform: uppercase;

  letter-spacing: 0.22em;
}


.press-contact h2 {
  margin: 0;

  font-family: var(--serif);

  font-size: clamp(45px, 4.5vw, 75px);
  font-weight: 400;

  line-height: 0.98;

  letter-spacing: -0.04em;
}


.press-contact a {
  flex: 0 0 auto;

  min-width: 190px;

  padding: 18px 0;

  display: flex;
  align-items: center;
  justify-content: space-between;

  border-bottom: 1px solid var(--gold-light);

  font-size: 8px;
  font-weight: 600;

  text-transform: uppercase;

  letter-spacing: 0.18em;
}


.press-contact a span:last-child {
  color: var(--gold-light);

  font-size: 18px;

  transition: transform 0.3s ease;
}


.press-contact a:hover span:last-child {
  transform: translateX(5px);
}


/* ============================================================
   TABLET
============================================================ */

@media (max-width: 1000px) {

  .press-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

}


/* ============================================================
   MOBILE
============================================================ */

@media (max-width: 760px) {


  /* NAV */

  .press-page .main-nav {
    background: var(--green-deep);
  }


  /* HERO */

  .press-hero {
    padding:
      145px
      24px
      80px;
  }


  .press-hero h1 {
    font-size: 72px;

    line-height: 0.92;
  }


  .press-intro {
    max-width: 330px;

    margin: 32px 0 0;
  }


  /* SECTIONS */

  .press-section {
    padding-left: 24px;
    padding-right: 24px;
  }


  .press-section-heading {
    margin-bottom: 35px;
  }


  .press-section-heading h2 {
    font-size: 43px;
  }


  .publications-section {
    padding-top: 0;
    padding-bottom: 90px;
  }


  .media-section {
    padding-top: 75px;
    padding-bottom: 95px;
  }


  /* GRID */

  .press-grid {
    grid-template-columns: 1fr;

    gap: 50px;
  }


  .press-image {
    aspect-ratio: 4 / 4.6;
  }


  .press-meta {
    min-height: auto;
  }


  /* CONTACT */

  .press-contact {
    padding:
      70px
      24px;
  }


  .press-contact-inner {
    display: block;
  }


  .press-contact h2 {
    font-size: 45px;
  }


  .press-contact a {
    width: 100%;

    margin-top: 42px;
  }

}
/* ============================================================
   PRESS — MOBILE PUBLICATION IMAGES
   SHOW FULL IMAGE / NO CROPPING
============================================================ */

@media (max-width: 760px) {

  .press-item-link .press-image {
    aspect-ratio: auto;
    height: auto;
    overflow: visible;
  }

  .press-item-link .press-image img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: top center;
  }

}