.framer-er1NG {
  --portal-home-gutter: clamp(20px, 4vw, 64px);
  --portal-home-space: clamp(2rem, 5.5vw, 4rem);
}

.portal-featured-work {
  --v6-inset: clamp(14px, 2vw, 30px);
  --v6-logo-scale: .9;
  box-sizing: border-box;
  width: min(100%, 1440px);
  margin: 0 auto;
  padding: clamp(1.5rem, 3vw, 2.5rem) var(--portal-home-gutter) clamp(2.5rem, 6vw, 6rem);
  color: #111;
  font-family: "Rethink Sans", Arial, sans-serif;
}

.portal-featured-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: .75rem 1.5rem;
  margin-bottom: clamp(1.125rem, 3vw, 2.5rem);
}

.portal-featured-head h2 {
  margin: 0;
  font: 400 clamp(1.5rem, 3vw, 2.5rem)/1.1 "Nyght Serif Light Italic", Georgia, serif;
}

.portal-featured-head a {
  display: inline-flex;
  gap: .35rem;
  color: inherit;
  font-size: .9375rem;
  text-underline-offset: .2em;
}

.portal-featured-list {
  display: grid;
  gap: clamp(3rem, 8vw, 7rem);
  margin: 0;
  padding: 0;
  list-style: none;
}

.portal-featured-stage {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.portal-featured-stage:first-child .v6-plate { grid-column: 3 / 7; }
.portal-featured-stage:last-child .v6-plate { grid-column: 7 / 11; }

@media (prefers-reduced-motion: no-preference) {
  .portal-featured-list.is-scroll-ready .portal-featured-stage {
    transition: opacity .55s ease, transform .65s cubic-bezier(.22, 1, .36, 1);
  }

  .portal-featured-list.is-scroll-ready .portal-featured-stage:not(.is-revealed):not(:focus-within) {
    opacity: 0;
    transform: translate3d(var(--portal-stage-entry, -24px), 32px, 0);
  }

  .portal-featured-stage:last-child { --portal-stage-entry: 24px; }
}

.portal-featured-work .v6-plate {
  display: block;
  position: relative;
  color: inherit;
  text-decoration: none;
}

.portal-featured-work .v6-plate.is-orbiting { z-index: 3; }
.portal-featured-work .v6-plate:focus-visible {
  outline: 2px solid #111;
  outline-offset: 6px;
}

.portal-featured-work .v6-plate-inner {
  display: block;
  position: relative;
  margin-bottom: var(--v6-inset);
}

.portal-featured-work .v6-field {
  position: relative;
  display: block;
  isolation: isolate;
}

.portal-featured-work .v6-face {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: var(--ar, 16 / 9);
  border-radius: 2px;
}

.portal-featured-work .v6-plate-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 48px;
}

.portal-featured-work .v6-logo-mark {
  display: block;
  position: relative;
  overflow: hidden;
  flex: 0 0 auto;
}

.portal-featured-work .v6-logo-mark img {
  position: absolute;
  display: block;
  max-width: none;
}

.portal-featured-work .v6-plate-logo.is-white img { filter: invert(1); }

.portal-featured-work .v6-plate-meta {
  display: block;
  color: #666;
  font: 400 .75rem/1.35 "Fragment Mono", ui-monospace, monospace;
  letter-spacing: .05em;
  text-transform: uppercase;
  text-align: center;
}

.portal-featured-work .v6-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.portal-featured-work .v6-orbit,
body:not(.v6) .v6-cursor-label { display: none; }

@media (min-width: 581px) and (hover: hover) and (prefers-reduced-motion: no-preference) {
  .portal-featured-work .v6-plate-inner {
    transform: translate(var(--mx, 0px), var(--my, 0px));
    transition: transform .6s cubic-bezier(.22, 1, .36, 1);
  }

  .portal-featured-work .v6-field[data-corner="tl"] { --fx: calc(-1 * var(--v6-inset)); --fy: calc(-1 * var(--v6-inset)); }
  .portal-featured-work .v6-field[data-corner="br"] { --fx: var(--v6-inset); --fy: var(--v6-inset); }
  .portal-featured-work .v6-field[data-corner="tr"] { --fx: var(--v6-inset); --fy: calc(-1 * var(--v6-inset)); }
  .portal-featured-work .v6-field[data-corner="bl"] { --fx: calc(-1 * var(--v6-inset)); --fy: var(--v6-inset); }
  .portal-featured-work .v6-field::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: 2px;
    transform: translate(var(--fx, 0), var(--fy, 0));
    background: linear-gradient(180deg, var(--g1), var(--g2));
    opacity: 0;
    transition: opacity .45s ease;
  }

  .portal-featured-work .v6-plate.is-orbiting .v6-plate-inner {
    transform: translate(var(--mx, 0px), var(--my, 0px)) scale(1.06);
  }

  .portal-featured-work .v6-plate.is-orbiting .v6-field::before { opacity: 1; }

  .portal-featured-work .v6-orbit {
    display: block;
    position: absolute;
    inset: 0 0 auto;
    aspect-ratio: 16 / 9;
    clip-path: inset(-32px -100vw -8px);
    pointer-events: none;
    z-index: 3;
    visibility: hidden;
  }

  .portal-featured-work .v6-orbit.is-live { visibility: visible; }

  .portal-featured-work .v6-orbit__card {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    opacity: 0;
    border-radius: 2px;
    overflow: hidden;
    will-change: transform, opacity;
    box-shadow: 0 0 0 1px #0000001a, 0 14px 34px -18px #0007;
  }

  .portal-featured-work .v6-orbit__card img { display: block; width: 100%; height: auto; }


}

.framer-er1NG section.framer-1hn420s {
  min-height: 0;
  padding: var(--portal-home-space) var(--portal-home-gutter);
}

.framer-er1NG .framer-1hn420s > .framer-14h8np0 {
  display: grid;
  flex: none;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 1.25rem clamp(1.5rem, 5vw, 3.75rem);
  width: 100%;
  max-width: 1312px;
  margin: 0 auto;
  padding: 0;
  overflow: visible;
}

.framer-er1NG .framer-14h8np0 > .framer-iqwtwu { display: none; }

.framer-er1NG .framer-14h8np0 > .framer-1ojdzzv {
  width: 100%;
  max-width: 38rem;
  gap: .85rem;
}

.framer-er1NG .framer-1ojdzzv :is(.framer-1eb25jn, .framer-1x1zh1g) {
  width: 100%;
  height: auto;
}

.framer-er1NG .framer-1ojdzzv .framer-1eb25jn > p {
  --framer-font-size: clamp(2rem, 5.2vw, 3.5rem) !important;
  --framer-line-height: 1.02em !important;
  text-wrap: balance;
}

.framer-er1NG .framer-1ojdzzv .framer-1x1zh1g > h2 {
  --framer-font-size: clamp(1.05rem, 2.5vw, 1.375rem) !important;
  --framer-line-height: 1.3em !important;
  text-wrap: pretty;
}

.framer-er1NG .framer-1x1zh1g br { display: none; }

.portal-booking-link {
  display: inline-flex;
  align-items: center;
  justify-self: start;
  min-height: 46px;
  padding: .65rem 1.15rem;
  border: 1px solid #111;
  border-radius: 999px;
  background: #111;
  color: #fff;
  font: 500 1rem/1.25 "Rethink Sans", Arial, sans-serif;
  text-decoration: none;
}

.portal-booking-link:hover { background: #fff; color: #111; }
.portal-booking-link:focus-visible { outline: 2px solid #111; outline-offset: 4px; }

@media (max-width: 1199px) {
  .framer-er1NG section:is(.framer-1m5heed, .framer-7bxuq1) {
    box-sizing: border-box;
    width: 100%;
    min-height: 0;
    padding: var(--portal-home-space) var(--portal-home-gutter);
  }

  .framer-er1NG .framer-bh5m7p .framer-k977k4 { max-width: 100%; }
}

@media (max-width: 809px) {
  .framer-er1NG section.portal-featured-work { order: 3; }
  .framer-er1NG section.framer-7bxuq1 { order: 4; }
  .framer-er1NG :is(.framer-z986bf, .framer-vw8tmz) { max-width: 100%; }
  .framer-er1NG :is(.framer-1m5heed, .framer-7bxuq1) :is(.framer-p9a8ut, .framer-bh5m7p) { gap: 1.25rem; }
}

@media (max-width: 619px) {
  .framer-er1NG .framer-1hn420s > .framer-14h8np0 {
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
  }

}

@media (max-width: 580px) {
  .portal-featured-list { gap: 2.5rem; }
  .portal-featured-stage { grid-template-columns: minmax(0, 1fr); }
  .portal-featured-stage:first-child .v6-plate,
  .portal-featured-stage:last-child .v6-plate { grid-column: 1; }
  .portal-featured-stage { --portal-stage-entry: 0px !important; }
}

@media (min-width: 581px) and (max-width: 950px) {
  .portal-featured-stage:first-child .v6-plate { grid-column: 2 / 8; }
  .portal-featured-stage:last-child .v6-plate { grid-column: 6 / 12; }
}

.framer-er1NG section.framer-1m5heed {
  box-sizing: border-box;
  min-height: 0;
  padding: clamp(3rem, 7vw, 7rem) var(--portal-home-gutter);
}

.framer-er1NG .framer-1m5heed > .framer-1tyn5ci {
  display: grid;
  flex: none;
  grid-template-columns: minmax(0, 1fr) minmax(0, 3fr);
  gap: 1rem clamp(1.5rem, 5vw, 4.5rem);
  width: 100%;
  max-width: 1312px;
  overflow: visible;
}

.framer-er1NG #after-intro :is(.framer-z986bf, .framer-p9a8ut) {
  width: 100%;
  min-width: 0;
  overflow: visible;
}

.framer-er1NG #after-intro .framer-p9a8ut > :not(.framer-1s9rr4l-container) {
  max-width: min(100%, 58rem);
}

.framer-er1NG #after-intro .framer-p9a8ut > :not(.framer-1s9rr4l-container) [data-framer-component-type="RichTextContainer"] {
  width: 100%;
  max-width: 100%;
}

.framer-er1NG #after-intro .framer-p9a8ut > :not(.framer-1s9rr4l-container) p.framer-text {
  text-wrap: pretty;
}

.framer-er1NG #after-intro .framer-1s9rr4l-container a {
  width: max-content;
}

.framer-er1NG #after-intro .framer-1s9rr4l-container .framer-text {
  white-space: nowrap;
}

@media (max-width: 809px) {
  .framer-er1NG .framer-1m5heed > .framer-1tyn5ci {
    grid-template-columns: minmax(0, 1fr);
  }
}
