.sef-page {
  background: var(--color-graphite-950);
  overflow: hidden;
}

.sef-page .eyebrow,
.sef-page .meta {
  margin-block-end: 0;
}

.sef-page .eyebrow::after {
  flex: 0 0 auto;
}

.sef-page a:focus-visible,
.sef-page button:focus-visible {
  outline: 2px solid var(--color-copper-300);
  outline-offset: 3px;
}

.sef-text-link {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  min-height: 3rem;
  color: var(--color-pearl-050);
  font-size: var(--font-size-14);
  font-weight: var(--weight-medium);
  line-height: var(--leading-caption);
  text-decoration: none;
}

.sef-text-link::after {
  width: 100%;
  height: 1px;
  position: absolute;
  bottom: 0.35rem;
  left: 0;
  transform: scaleX(0);
  transform-origin: left;
  background: var(--color-copper-500);
  content: "";
  transition: transform var(--transition-base);
}

.sef-text-link {
  position: relative;
}

.sef-text-link:hover::after,
.sef-text-link:focus-visible::after {
  transform: scaleX(1);
}

.sef-text-link span {
  color: var(--color-copper-300);
  font-size: 1.1em;
}

.sef-hero {
  min-height: 48rem;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: end;
  isolation: isolate;
  background: var(--color-graphite-950);
}

.sef-hero__image,
.sef-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: -2;
}

.sef-hero__image {
  overflow: hidden;
}

.sef-hero__image img {
  width: 100%;
  max-width: none;
  height: 100%;
  object-fit: cover;
  object-position: 65% center;
  transform: scale(1.01);
}

.sef-image-drift {
  animation: sef-ambient-drift 8s ease-in-out infinite alternate;
}

.sef-hero__overlay {
  z-index: -1;
  background: linear-gradient(90deg, rgba(7, 9, 11, 0.88) 0%, rgba(7, 9, 11, 0.72) 35%, rgba(7, 9, 11, 0.28) 62%, rgba(7, 9, 11, 0.04) 100%);
}

.sef-hero__content {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: var(--space-6);
  align-items: end;
  min-height: 100%;
  padding-top: 9rem;
  padding-bottom: 7rem;
}

.sef-breadcrumb {
  grid-column: 1 / span 5;
  min-width: 0;
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  align-items: center;
  margin-bottom: 5rem;
  color: var(--color-pearl-200);
  font-size: var(--font-size-14);
}

.sef-breadcrumb a {
  color: var(--color-pearl-050);
}

.sef-hero__titleblock {
  grid-column: 1 / span 5;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.sef-hero__titleblock h1 {
  max-width: 38rem;
  margin: 0;
  font-size: clamp(4.5rem, 7vw, 5.5rem);
}

.sef-hero__mobile-copy {
  position: absolute;
  left: 0;
  bottom: 0;
  grid-column: 1 / -1;
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
  width: 100%;
  padding-bottom: 0;
  transform: translateY(calc(100% - 0px));
  visibility: hidden;
}

.sef-hero__lead,
.sef-hero__mobile-copy .sef-hero__actions {
  display: none;
}

.sef-philosophy__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 1fr) minmax(0, 4fr);
  gap: var(--space-6);
  align-items: start;
}

.sef-philosophy__copy {
  grid-column: 1 / span 1;
  min-width: 0;
  max-width: 46rem;
}

.sef-philosophy__copy .eyebrow {
  margin-bottom: var(--space-4);
}

.sef-philosophy__callout {
  max-width: 44rem;
  margin-bottom: 0;
  padding-left: var(--space-6);
  border-left: 1px solid var(--color-copper-500);
  color: var(--color-pearl-050);
  font-size: var(--font-size-20);
  line-height: 1.35;
}

.sef-compass {
  grid-column: 3 / span 1;
  min-width: 0;
  padding-top: 0.5rem;
  border-top: 1px solid var(--color-copper-500);
}

.sef-compass > .meta {
  margin-top: var(--space-3);
  margin-bottom: var(--space-4);
}

.sef-compass__list,
.sef-evening-path ol,
.sef-service-list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.sef-compass__list {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.sef-compass__list > li {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: var(--space-3);
  min-width: 0;
  padding: var(--space-4) 0;
  border-top: 1px solid var(--color-line-dark);
}

.sef-compass__list > li:last-child {
  border-bottom: 1px solid var(--color-line-dark);
}

.sef-compass__list span,
.sef-principles span,
.sef-evening-path li > span,
.sef-service-list li > span {
  color: var(--color-copper-300);
  font-size: var(--font-size-12);
  font-weight: var(--weight-semibold);
  letter-spacing: var(--tracking-wide);
}

.sef-compass__list div,
.sef-evening-path li > div,
.sef-service-list li > div {
  min-width: 0;
}

.sef-compass h4,
.sef-evening-path h3,
.sef-service-list h3 {
  margin-bottom: var(--space-2);
  font-family: var(--font-body);
  font-size: var(--font-size-16);
  font-weight: var(--weight-semibold);
}

.sef-compass p {
  margin: 0;
  font-size: var(--font-size-14);
  line-height: var(--leading-caption);
}

.sef-ingredients__grid {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 1fr) minmax(0, 7fr);
  gap: var(--space-6);
  align-items: start;
}

.sef-ingredients__intro {
  grid-column: 1 / span 1;
  min-width: 0;
  max-width: 27rem;
}

.sef-ingredients__intro .eyebrow {
  margin-bottom: var(--space-4);
}

.sef-ingredients__media {
  grid-column: 3 / span 1;
  min-width: 0;
  margin: 0;
}

.sef-media-link {
  overflow: hidden;
  width: 100%;
  background: var(--color-graphite-800);
}

.sef-media-link img,
.sef-plating__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-slow), filter var(--transition-slow);
}

.sef-media-link:hover img {
  transform: scale(1.03);
  filter: brightness(0.9);
}

.sef-ingredients__media .sef-media-link {
  aspect-ratio: 4 / 5;
}

.sef-ingredients__media img {
  object-position: 50% 50%;
}

.sef-ingredients__media figcaption,
.sef-team__media figcaption,
.sef-plating__media figcaption {
  max-width: 75%;
  margin-top: var(--space-3);
}

.sef-ingredients__focuses {
  grid-column: 3 / span 1;
  min-width: 0;
  width: min(100%, 30rem);
  margin-top: calc(var(--space-12) * -1);
  margin-left: calc(var(--space-16) * -1);
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: var(--space-6);
  background: var(--color-graphite-950);
}

.sef-focus {
  padding: var(--space-4) 0;
  border-top: 1px solid var(--color-line-dark);
}

.sef-focus:last-of-type {
  border-bottom: 1px solid var(--color-line-dark);
}

.sef-focus .meta {
  margin-bottom: var(--space-2);
}

.sef-focus p:last-child,
.sef-ingredients__menu-note {
  margin: 0;
}

.sef-ingredients__menu-note {
  margin-top: var(--space-4);
  font-size: var(--font-size-20);
  line-height: 1.35;
}

.sef-plating__intro {
  width: min(100%, 40.625rem);
  margin-inline: auto;
  text-align: center;
}

.sef-plating__intro .eyebrow {
  margin-bottom: var(--space-4);
}

.sef-plating__media {
  width: calc(100% - 10rem);
  min-width: 0;
  margin: var(--space-12) auto 0;
}

.sef-plating__media img {
  aspect-ratio: 3 / 2;
  object-position: left center;
}

.sef-principles {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-top: var(--space-12);
}

.sef-principles > article {
  min-width: 0;
  padding: 0 var(--space-6);
  border-left: 1px solid var(--color-line-dark);
}

.sef-principles > article:first-child {
  padding-left: 0;
  border-left: 0;
}

.sef-principles > article:last-child {
  padding-right: 0;
}

.sef-principles span {
  display: block;
  margin-bottom: var(--space-4);
}

.sef-principles h3 {
  font-size: var(--font-size-24);
}

.sef-principles p {
  margin-bottom: 0;
  max-width: 24rem;
}

.sef-plating__link {
  margin-top: var(--space-8);
}

.sef-casino {
  position: relative;
}

.sef-casino::before {
  position: absolute;
  top: 0;
  left: 50%;
  width: min(90rem, calc(100% - 8rem));
  height: 1px;
  transform: translateX(-50%);
  background: var(--color-copper-500);
  content: "";
}

.sef-casino__grid {
  display: grid;
  grid-template-columns: minmax(0, 6fr) minmax(0, 2fr) minmax(0, 4fr);
  gap: var(--space-6);
  align-items: end;
}

.sef-casino__copy {
  grid-column: 1 / span 1;
  min-width: 0;
  max-width: 40rem;
}

.sef-casino__copy .eyebrow {
  margin-bottom: var(--space-4);
}

.sef-casino__copy .sef-text-link {
  margin-top: var(--space-2);
}

.sef-evening-path {
  grid-column: 3 / span 1;
  min-width: 0;
}

.sef-evening-path > .meta {
  display: block;
  margin-bottom: var(--space-4);
}

.sef-evening-path ol {
  display: flex;
  flex-direction: column;
}

.sef-evening-path li,
.sef-service-list li {
  display: grid;
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: var(--space-3);
  min-width: 0;
  padding: var(--space-4) 0;
  border-top: 1px solid var(--color-line-dark);
}

.sef-evening-path li:last-child,
.sef-service-list li:last-child {
  border-bottom: 1px solid var(--color-line-dark);
}

.sef-evening-path h3,
.sef-service-list h3 {
  color: var(--color-pearl-050);
}

.sef-evening-path p,
.sef-service-list p {
  margin: 0;
  font-size: var(--font-size-14);
  line-height: var(--leading-caption);
}

.sef-team__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 1fr) minmax(0, 4fr);
  gap: var(--space-6);
  align-items: start;
}

.sef-team__media {
  grid-column: 1 / span 1;
  min-width: 0;
  margin: 0;
}

.sef-team__media .sef-media-link {
  aspect-ratio: 4 / 3;
}

.sef-team__media img {
  object-position: 50% 45%;
}

.sef-team__copy {
  grid-column: 3 / span 1;
  min-width: 0;
  max-width: 25rem;
}

.sef-team__copy .eyebrow {
  margin-bottom: var(--space-4);
}

.sef-service-list {
  display: flex;
  flex-direction: column;
  margin-top: var(--space-8);
}

.sef-team__link {
  margin-top: var(--space-6);
}

.sef-planning__intro {
  width: min(100%, 47.5rem);
  margin-inline: auto;
  text-align: center;
}

.sef-planning__intro .eyebrow {
  margin-bottom: var(--space-4);
}

.sef-planning__lead {
  margin-bottom: var(--space-4);
  color: var(--color-pearl-050);
  font-size: var(--font-size-20);
  line-height: 1.35;
}

.sef-decision {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(12rem, 14rem);
  gap: var(--space-8);
  align-items: end;
  width: 66.666%;
  min-width: 0;
  margin-top: var(--space-8);
  padding: var(--space-12);
}

.sef-decision > div {
  min-width: 0;
}

.sef-decision--restaurant {
  margin-right: auto;
  background: var(--color-walnut-900);
}

.sef-decision--casino {
  margin-left: auto;
  background: var(--color-sapphire-900);
}

.sef-decision .eyebrow {
  margin-bottom: var(--space-3);
}

.sef-decision h3 {
  margin-bottom: var(--space-4);
}

.sef-decision p:last-child {
  margin-bottom: 0;
}

.sef-decision__actions {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  align-items: stretch;
}

.sef-decision__actions .button {
  width: 100%;
}

.sef-decision__actions .sef-text-link {
  justify-content: flex-start;
}

.sef-closing {
  padding-top: 6rem;
  padding-bottom: 6rem;
}

.sef-closing__panel {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 3fr);
  gap: var(--space-8);
  align-items: end;
  width: min(100%, 75rem);
  border-top: 1px solid var(--color-copper-500);
  padding-top: var(--space-8);
}

.sef-closing__copy,
.sef-closing__actions {
  min-width: 0;
}

.sef-closing__copy {
  max-width: 38rem;
}

.sef-closing__copy .eyebrow {
  margin-bottom: var(--space-4);
}

.sef-closing__copy p:last-child {
  margin-bottom: 0;
}

.sef-closing__actions {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  align-items: stretch;
}

.sef-closing__actions .button {
  width: 100%;
}

.sef-closing__actions .sef-text-link {
  justify-content: flex-start;
}

@keyframes sef-ambient-drift {
  from { transform: scale(1.01) translate3d(0, 0, 0); }
  to { transform: scale(1.03) translate3d(-0.6%, -0.4%, 0); }
}

@media (max-width: 1180px) {
  .sef-hero {
    min-height: 43rem;
  }

  .sef-hero__content {
    padding-bottom: 5rem;
  }

  .sef-breadcrumb {
    margin-bottom: 3rem;
  }

  .sef-plating__media {
    width: calc(100% - 4rem);
  }

  .sef-decision {
    width: 75%;
  }
}

@media (max-width: 1080px) {
  .sef-philosophy__grid,
  .sef-ingredients__grid,
  .sef-team__grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .sef-philosophy__copy,
  .sef-ingredients__intro,
  .sef-team__media {
    grid-column: 1 / -1;
  }

  .sef-philosophy__copy {
    max-width: 46rem;
  }

  .sef-compass {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0;
    margin-top: var(--space-8);
  }

  .sef-compass > .meta {
    grid-column: 1 / -1;
  }

  .sef-compass__list {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-6);
  }

  .sef-compass__list > li {
    grid-template-columns: 1.5rem minmax(0, 1fr);
    border-bottom: 1px solid var(--color-line-dark);
  }

  .sef-ingredients__intro {
    max-width: 38rem;
  }

  .sef-ingredients__media {
    grid-column: 1 / span 5;
  }

  .sef-ingredients__focuses {
    grid-column: 6 / span 3;
    width: 100%;
    margin: 0;
    align-self: end;
    padding: var(--space-4);
  }

  .sef-team__copy {
    grid-column: 1 / span 6;
    margin-top: var(--space-8);
    max-width: 38rem;
  }
}

@media (max-width: 1020px) {
  .sef-casino__grid {
    grid-template-columns: repeat(8, minmax(0, 1fr));
  }

  .sef-casino__copy {
    grid-column: 1 / span 6;
  }

  .sef-evening-path {
    grid-column: 1 / -1;
    margin-top: var(--space-8);
  }

  .sef-evening-path ol {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: var(--space-6);
  }

  .sef-evening-path li:last-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 980px) {
  .sef-decision {
    width: 75%;
    margin-right: auto;
    margin-left: 0;
  }
}

@media (max-width: 960px) {
  .sef-principles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sef-principles > article:nth-child(3) {
    grid-column: 1 / -1;
    margin-top: var(--space-6);
    padding-left: 0;
    border-left: 0;
  }
}

@media (max-width: 900px) {
  .sef-closing__panel {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-6);
  }

  .sef-closing__actions {
    width: min(100%, 20rem);
  }
}

@media (max-width: 820px) {
  .sef-hero {
    display: block;
    min-height: 0;
    padding-top: 0;
    background: var(--color-graphite-950);
  }

  .sef-hero__image {
    position: relative;
    z-index: 0;
    height: min(92vw, 38rem);
    aspect-ratio: 4 / 5;
  }

  .sef-hero__image img {
    object-position: 50% 35%;
  }

  .sef-hero__overlay {
    position: absolute;
    z-index: 1;
    inset: auto 0 0;
    height: 42%;
    background: linear-gradient(0deg, rgba(7, 9, 11, 0.76) 0%, rgba(7, 9, 11, 0) 100%);
  }

  .sef-hero__content {
    position: absolute;
    z-index: 2;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: var(--space-4);
    min-height: 0;
    padding-top: var(--space-6);
    padding-bottom: var(--space-6);
  }

  .sef-breadcrumb {
    width: 100%;
    margin: 0 auto auto;
  }

  .sef-hero__titleblock {
    width: 100%;
    gap: var(--space-3);
  }

  .sef-hero__titleblock h1 {
    max-width: 34rem;
    font-size: clamp(2.125rem, 9vw, 2.75rem);
  }

  .sef-hero__mobile-copy {
    position: static;
    display: flex;
    visibility: visible;
    transform: none;
    padding-top: var(--space-6);
    padding-bottom: var(--space-12);
  }

  .sef-hero__lead,
  .sef-hero__mobile-copy .sef-hero__actions {
    display: flex;
  }

  .sef-hero__lead {
    max-width: none;
    margin: 0;
  }

  .sef-hero__actions {
    flex-direction: column;
    gap: var(--space-3);
    align-items: stretch;
  }

  .sef-hero__actions .button,
  .sef-hero__actions .sef-text-link {
    width: 100%;
  }

  .sef-hero__actions .sef-text-link {
    justify-content: flex-start;
  }

  .sef-plating__media {
    width: 100%;
  }

  .sef-plating__media img {
    aspect-ratio: 5 / 4;
  }
}

@media (max-width: 760px) {
  .sef-philosophy__grid,
  .sef-ingredients__grid,
  .sef-team__grid,
  .sef-casino__grid {
    display: flex;
    flex-direction: column;
    gap: var(--space-8);
  }

  .sef-philosophy__copy,
  .sef-compass,
  .sef-ingredients__intro,
  .sef-ingredients__media,
  .sef-ingredients__focuses,
  .sef-team__media,
  .sef-team__copy,
  .sef-casino__copy,
  .sef-evening-path {
    width: 100%;
    max-width: none;
    margin: 0;
  }

  .sef-compass {
    display: flex;
  }

  .sef-compass__list,
  .sef-evening-path ol {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .sef-compass__list > li {
    border-bottom: 0;
  }

  .sef-compass__list > li:last-child {
    border-bottom: 1px solid var(--color-line-dark);
  }

  .sef-ingredients__media .sef-media-link,
  .sef-team__media .sef-media-link {
    aspect-ratio: 5 / 4;
  }

  .sef-ingredients__media figcaption,
  .sef-team__media figcaption,
  .sef-plating__media figcaption {
    max-width: 100%;
  }

  .sef-ingredients__focuses {
    padding: 0;
  }

  .sef-principles {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .sef-principles > article,
  .sef-principles > article:first-child,
  .sef-principles > article:last-child,
  .sef-principles > article:nth-child(3) {
    width: 100%;
    margin: 0;
    padding: var(--space-6) 0;
    border-top: 1px solid var(--color-line-dark);
    border-left: 0;
  }

  .sef-principles > article:last-child {
    border-bottom: 1px solid var(--color-line-dark);
  }

  .sef-casino::before {
    width: calc(100% - 2.5rem);
  }

  .sef-casino__copy {
    order: 1;
  }

  .sef-evening-path {
    order: 2;
  }

  .sef-team__media {
    order: 1;
  }

  .sef-team__copy {
    order: 2;
  }

  .sef-planning__intro {
    width: 100%;
    text-align: left;
  }

  .sef-decision,
  .sef-decision--restaurant,
  .sef-decision--casino {
    display: flex;
    flex-direction: column;
    gap: var(--space-6);
    align-items: stretch;
    width: 100%;
    margin: var(--space-6) 0 0;
    padding: var(--space-6);
  }

  .sef-decision__actions .sef-text-link {
    min-height: 3rem;
  }

  .sef-closing {
    padding-top: var(--space-16);
    padding-bottom: var(--space-16);
  }

  .sef-closing__actions {
    width: 100%;
  }
}

@media (max-width: 479px) {
  .sef-page .section {
    padding-top: var(--space-16);
    padding-bottom: var(--space-16);
  }

  .sef-hero__content {
    padding-bottom: var(--space-4);
  }

  .sef-hero__mobile-copy {
    padding-bottom: var(--space-16);
  }

  .sef-philosophy__callout {
    padding-left: var(--space-4);
    font-size: 1.125rem;
  }

  .sef-plating__intro,
  .sef-planning__intro {
    margin-inline: 0;
  }

  .sef-plating__intro h2,
  .sef-planning__intro h2,
  .sef-team__copy h2,
  .sef-casino__copy h2,
  .sef-ingredients__intro h2,
  .sef-philosophy__copy h2,
  .sef-closing__copy h2 {
    font-size: var(--font-size-32);
  }

  .sef-plating__media {
    margin-top: var(--space-8);
  }

  .sef-decision {
    padding: var(--space-6);
  }
}

@media (prefers-reduced-motion: reduce) {
  .sef-image-drift {
    animation: none;
  }

  .sef-media-link img {
    transition: none;
  }

  .sef-media-link:hover img {
    transform: none;
  }
}
