/*
Theme Name: Salient Child Theme
Theme URI: https://themeforest.net/item/salient-responsive-multipurpose-theme/4363266
Description: Elise Toublanc development child theme.
Author: Elise Toublanc
Template: salient
Version: 1.4.101
*/

:root {
  --elise-ink: #1e2d32;
  --elise-muted: #667277;
  --elise-ivory: #f5f1ea;
  --elise-sand: #e7dfd2;
  --elise-coral: #d66f69;
  --elise-button-hover: #d66f69;
  --elise-blue: #5a7593;
  --elise-max: 1320px;
}

.elise-shell {
  width: min(var(--elise-max), calc(100% - 48px));
  margin-inline: auto;
}

.elise-narrow { max-width: 880px; }
.elise-section { padding: clamp(64px, 7vw, 104px) 0; }
.elise-section--intro { background: var(--elise-ivory); }

.elise-eyebrow {
  margin: 0 0 14px;
  color: var(--elise-coral);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
}

/* Home: editorial split hero with the transparent navigation laid over it. */
body.home #ajax-content-wrap { margin-top: -78px; }
body.home .container-wrap { padding-top: 0 !important; }
body.home .main-content > .row > .wpb_row:first-child { margin-bottom: 0 !important; }
body.home #header-outer:not(.small-nav) { background-color: transparent !important; box-shadow: none !important; }
body.home #header-outer:not(.small-nav) #logo { color: var(--elise-ink) !important; }
body.home #header-outer:not(.small-nav) #top nav > ul > li > a,
body.home #header-outer:not(.small-nav) .slide-out-widget-area-toggle a { color: var(--elise-ink) !important; }
body.home #header-outer:not(.small-nav) #top nav > ul > li > a .menu-title-text::after { border-color: rgba(30,45,50,.48) !important; }
body.home #header-outer:not(.small-nav) .slide-out-widget-area-toggle .lines::before,
body.home #header-outer:not(.small-nav) .slide-out-widget-area-toggle .lines::after,
body.home #header-outer:not(.small-nav) .slide-out-widget-area-toggle .lines-button::after { background-color: var(--elise-ink) !important; }

/* Keep Salient's off-canvas trigger for small screens only. */
@media (min-width: 1000px) {
  #header-outer #top li.slide-out-widget-area-toggle { display: none !important; }
  body.home #header-outer:not(.small-nav) #top nav > ul > li > a { color: var(--elise-ink) !important; }
  body.home #header-outer:not(.small-nav) #top nav > ul > li > a .menu-title-text::after { border-color: rgba(30,45,50,.48) !important; }
}

/* Home: separate manifesto and horizontal artwork banners above the preserved hero. */
.elise-home-manifesto {
  width: 100vw;
  margin-inline: calc(50% - 50vw);
  padding: clamp(116px, 10vw, 154px) 0 clamp(34px, 4vw, 58px);
  color: var(--elise-muted);
  background: #fff;
}

.elise-home-manifesto__inner p {
  margin: 0;
  color: var(--elise-muted);
  font-size: clamp(25px, 2.8vw, 44px);
  font-weight: 400;
  letter-spacing: -.025em;
  line-height: 1.12;
}

.elise-home-manifesto__inner p + p { margin-top: .12em; }

.elise-home-banner {
  width: 100vw;
  margin-inline: calc(50% - 50vw);
  overflow: hidden;
  background: var(--elise-sand);
}

.elise-home-banner__slides {
  width: 100%;
  position: relative;
  aspect-ratio: 711 / 355;
  overflow: hidden;
}

.elise-home-banner__slides .elise-hero__slide {
  object-fit: cover;
  object-position: center;
}

.elise-hero {
  width: 100vw;
  height: calc(100svh - var(--wp-admin--admin-bar--height, 0px));
  min-height: 620px;
  margin-inline: calc(50% - 50vw);
  overflow: hidden;
  color: #fff;
  background: #fff;
}

.elise-hero__layout {
  height: 100%;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(0, 37.25%) minmax(0, 62.75%);
}

.elise-hero__panel {
  height: 80%;
  position: relative;
  z-index: 2;
  align-self: center;
  display: flex;
  align-items: center;
  background: #607b98;
}

.elise-hero__content {
  width: calc(100% + clamp(110px, 13vw, 190px));
  position: relative;
  z-index: 2;
  padding: clamp(40px, 6vw, 92px);
  animation: elise-hero-copy-in .85s cubic-bezier(.22,.8,.2,1) both;
}

.elise-hero h1 {
  margin: 0;
  color: #fff;
  font-size: clamp(64px, 7vw, 104px);
  font-weight: 500;
  letter-spacing: -.045em;
  line-height: .96;
  white-space: normal;
}

.elise-hero__lead {
  max-width: 520px;
  margin: 28px 0 0;
  color: rgba(255,255,255,.94);
  font-size: clamp(23px, 2.6vw, 31px);
  font-weight: 400;
  line-height: 1.25;
}

.elise-hero__cta {
  margin-top: clamp(28px, 3vw, 38px);
  padding-inline: 30px;
  font-size: 14px;
}

.elise-hero__artwork {
  min-width: 0;
  min-height: 0;
  position: relative;
  isolation: isolate;
  margin: 0;
  overflow: hidden;
  background: var(--elise-sand);
}

.elise-hero__feature {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  display: block;
  object-fit: cover;
  object-position: center;
}

.elise-hero__slides {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.elise-hero__slide {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  object-fit: cover;
  object-position: center;
  opacity: 0;
  transform: scale(1.025);
  transition: opacity .9s ease-in-out, transform 6s ease-out;
}

.elise-hero__slide.is-active {
  z-index: 1;
  opacity: 1;
  transform: scale(1);
}

@keyframes elise-hero-image-in {
  from { opacity: .72; transform: scale(1.035); }
  to { opacity: 1; transform: scale(1); }
}

@keyframes elise-hero-copy-in {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 900px) {
  body.home #header-outer:not(.small-nav) #logo { color: var(--elise-ink) !important; }
  .elise-hero { height: auto; min-height: 0; }
  .elise-hero__layout { min-height: 0; grid-template-columns: 1fr; }
  .elise-hero__artwork { order: 1; width: 100%; aspect-ratio: 1 / 1; }
  .elise-hero__panel { order: 2; height: auto; min-height: 330px; align-self: stretch; }
  .elise-hero__content { width: 100%; padding: clamp(44px, 9vw, 70px) max(24px, 6vw); }
  .elise-hero h1 { font-size: clamp(48px, 12vw, 72px); white-space: normal; }
  .elise-hero__lead { max-width: 20em; font-size: clamp(20px, 5vw, 26px); }
}

/* Home choice: two edge-to-edge visual routes, equal height on desktop. */
.elise-home-split {
  width: 100vw;
  height: 600px;
  margin-inline: calc(50% - 50vw);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  overflow: hidden;
  background: var(--elise-ink);
}

.elise-home-split__panel {
  min-width: 0;
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  color: #fff;
  text-decoration: none;
}

.elise-home-split__panel::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: linear-gradient(180deg, rgba(14,23,27,.03) 22%, rgba(14,23,27,.78) 100%);
  transition: background-color .45s ease;
}

.elise-home-split__panel + .elise-home-split__panel {
  border-left: 1px solid rgba(255,255,255,.24);
}

.elise-home-split__image {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  z-index: -1;
  object-fit: cover;
  transition: transform 1s cubic-bezier(.2,.72,.2,1), filter .55s ease;
}

.elise-home-split__content {
  width: 100%;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: clamp(34px,4.4vw,72px);
}

.elise-home-split__eyebrow {
  margin-bottom: 12px;
  color: rgba(255,255,255,.72);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
}

.elise-home-split__title {
  color: #fff;
  font-size: clamp(50px,6.4vw,96px);
  font-weight: 600;
  letter-spacing: -.045em;
  line-height: .95;
}

.elise-home-split__cta {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  margin-top: 22px;
  padding-bottom: 5px;
  border-bottom: 1px solid rgba(255,255,255,.62);
  color: #fff;
  font-size: 13px;
  font-weight: 700;
}

.elise-home-split__panel:hover .elise-home-split__image,
.elise-home-split__panel:focus-visible .elise-home-split__image {
  transform: scale(1.045);
  filter: saturate(.88);
}

.elise-home-split__panel:hover::after,
.elise-home-split__panel:focus-visible::after {
  background-color: rgba(14,23,27,.12);
}

.elise-home-split__panel:focus-visible {
  z-index: 2;
  outline: 3px solid #fff;
  outline-offset: -6px;
}

/* Home About: centered Salient-style editorial card with equal-height columns. */
.elise-home-about {
  width: 100vw;
  margin-inline: calc(50% - 50vw);
  padding: clamp(82px, 9vw, 148px) 0 clamp(74px, 8vw, 124px);
  overflow: hidden;
  background: #fff;
}

.elise-home-about__card {
  min-height: 556px;
  display: grid;
  grid-template-columns: minmax(0, 35fr) minmax(0, 65fr);
  overflow: hidden;
  background: var(--elise-ivory);
}

.elise-home-about__media {
  min-width: 0;
  min-height: 556px;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: var(--elise-sand);
}


.elise-home-about__media img,
.elise-home-about__media video {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  object-fit: cover;
}

.elise-home-about__media img {
  object-position: 26% center;
  filter: saturate(.72) contrast(.94);
  transform: scale(1.04);
  will-change: transform;
}

.elise-home-about__media video {
  object-position: center;
  background: var(--elise-sand);
}

.elise-home-about__content {
  min-width: 0;
  display: flex;
  align-items: center;
  padding: clamp(40px, 4.5vw, 72px);
}

.elise-home-about__copy { max-width: 700px; }

.elise-home-about h2 {
  max-width: 14ch;
  margin: 0;
  color: var(--elise-ink);
  font-size: clamp(43px, 4vw, 64px);
  line-height: 1.02;
  letter-spacing: -.035em;
  text-wrap: balance;
}

.elise-home-about__copy > p {
  max-width: 30em;
  margin: clamp(28px, 3vw, 40px) 0 38px;
  color: var(--elise-ink);
  font-size: clamp(19px, 1.55vw, 25px);
  line-height: 1.5;
}

.elise-home-about__statement {
  margin-top: clamp(36px, 4vw, 58px);
  margin-bottom: 0;
  padding-left: clamp(18px, 2.2vw, 34px);
  color: #b5adb1;
  font-size: clamp(29px, 3vw, 46px);
  font-weight: 400;
  letter-spacing: -.025em;
  line-height: 1.12;
}

@supports (animation-timeline: view()) {
  .elise-home-about__media img {
    animation: elise-about-drift linear both;
    animation-timeline: view();
    animation-range: entry -15% exit 115%;
  }

  @keyframes elise-about-drift {
    from { transform: scale(1.08) translate3d(0,-2.5%,0); }
    to { transform: scale(1.08) translate3d(0,2.5%,0); }
  }
}

@media (max-width: 900px) {
  .elise-home-about { padding-block: 64px 76px; }
  .elise-home-about__card { min-height: 0; grid-template-columns: 1fr; }
  .elise-home-about__media { min-height: 0; aspect-ratio: 4 / 3; }
  .elise-home-about__content { padding: 46px max(24px, 6vw) 54px; }
  .elise-home-about h2 { font-size: clamp(40px, 9vw, 58px); }
  .elise-home-about__copy > p { font-size: clamp(18px, 4.5vw, 22px); }
  .elise-home-about__statement { padding-left: 0; font-size: clamp(28px, 7vw, 40px); }
}

.elise-large-copy { font-size: clamp(22px, 2.5vw, 34px); line-height: 1.48; color: var(--elise-ink); }

.elise-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 36px; }
.elise-button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; padding: 13px 25px; border: 1px solid currentColor; border-radius: 999px; font-weight: 700; text-decoration: none; transition: transform .25s ease, background .25s ease, color .25s ease; }
.elise-button:hover { transform: translateY(-2px); }
.elise-button--light { color: var(--elise-ink); background: #fff; border-color: #fff; }
.elise-button--outline { color: #fff; background: transparent; }
.elise-text-link { display: inline-flex; gap: 8px; align-items: center; color: var(--elise-ink); font-weight: 700; text-decoration: none; }
.elise-text-link:hover { color: var(--elise-coral); }

.elise-section-heading,
.elise-series__heading,
.elise-prefooter__inner { display: flex; align-items: end; justify-content: space-between; gap: 36px; }
.elise-prefooter__inner { width: calc(100% - clamp(56px,7vw,128px)); max-width: none; }
@media (min-width: 700px) {
  .elise-prefooter__inner > div:first-child { min-width: 0; flex: 1 1 auto; }
  .elise-prefooter .elise-actions { flex: 0 0 auto; flex-wrap: nowrap; }
}
.elise-section-heading { margin-bottom: 36px; }
.elise-section-heading h2,
.elise-series__heading h2,
.elise-prefooter h2 { margin: 0; color: var(--elise-ink); font-size: clamp(38px, 5vw, 68px); line-height: 1; }

.elise-page-heading { padding-block: clamp(58px, 7vw, 96px) clamp(34px, 4vw, 54px); }
.elise-page-heading h1 { margin: 0; color: var(--elise-ink); font-size: clamp(52px, 7.5vw, 102px); letter-spacing: -.045em; line-height: .95; }
.elise-page-heading p:last-child { max-width: 760px; margin-top: 25px; color: var(--elise-muted); font-size: 21px; }

.elise-post-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: clamp(22px,3vw,42px); }
.elise-post-card { background: #fff; overflow: hidden; }
.elise-post-card__image { display: block; position: relative; aspect-ratio: 4/3; overflow: hidden; background: var(--elise-sand); }
.elise-post-card__image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(135deg, transparent 25%, rgba(255,255,255,.42)); opacity: 0; transform: translate3d(-16px,16px,0); transition: .45s ease; }
.elise-post-card:hover .elise-post-card__image::after { opacity: 1; transform: none; }
.elise-post-card__image img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s cubic-bezier(.2,.8,.2,1), filter .5s ease; }
.elise-post-card:hover .elise-post-card__image img { transform: scale(1.035); filter: saturate(.86); }
.elise-post-card__body { padding: 24px 2px 12px; }
.elise-post-card__body time { color: var(--elise-muted); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
.elise-post-card__body h2,.elise-post-card__body h3 { margin: 10px 0; line-height: 1.15; }
.elise-post-card__body a { color: var(--elise-ink); text-decoration: none; }
.elise-post-card__body p { color: var(--elise-muted); }

/* Home news: a light, text-first list with one image appearing on hover. */
.elise-section--expos { overflow: hidden; background: #fff; }
.elise-post-grid--ghost { gap: 0; border-top: 1px solid rgba(30,45,50,.18); }
.elise-post-grid--ghost .elise-post-card { position: relative; overflow: visible; border-right: 1px solid rgba(30,45,50,.18); border-bottom: 1px solid rgba(30,45,50,.18); }
.elise-post-grid--ghost .elise-post-card:last-child { border-right: 0; }
.elise-post-card__link { display: block; position: relative; min-height: clamp(220px,25vw,330px); padding: clamp(26px,3.4vw,52px); color: var(--elise-ink); text-decoration: none; }
.elise-post-grid--ghost .elise-post-card__body { position: relative; z-index: 3; padding: 0; }
.elise-post-grid--ghost .elise-post-card__body time { color: var(--elise-coral); }
.elise-post-grid--ghost .elise-post-card__body h3 { max-width: 12ch; margin: 18px 0; font-size: clamp(27px,3vw,46px); letter-spacing: -.025em; line-height: 1.02; transition: color .25s ease; }
.elise-post-grid--ghost .elise-post-card__read { display: inline-flex; gap: 8px; align-items: center; margin-top: 28px; color: var(--elise-muted); font-size: 13px; font-weight: 700; opacity: .72; transition: color .25s ease, opacity .25s ease; }
.elise-post-grid--ghost .elise-post-card__image { display: block; position: absolute; top: 56%; left: 100%; z-index: 2; width: clamp(160px,16vw,230px); aspect-ratio: 4/3; overflow: hidden; border: 6px solid #fff; box-shadow: 0 24px 60px rgba(20,31,36,.22); opacity: 0; pointer-events: none; transform: translate(-50%,-50%) translate3d(var(--ghost-x,0),var(--ghost-y,12px),0) rotate(-2deg) scale(.92); transition: opacity .28s ease, transform .45s cubic-bezier(.2,.8,.2,1); }
.elise-post-grid--ghost .elise-post-card:last-child .elise-post-card__image { left: 0; }
.elise-post-grid--ghost .elise-post-card__image img { width: 100%; height: 100%; object-fit: cover; }
.elise-post-grid--ghost .elise-post-card:hover .elise-post-card__image,
.elise-post-grid--ghost .elise-post-card:focus-within .elise-post-card__image { opacity: .94; transform: translate(-50%,-50%) translate3d(var(--ghost-x,0),var(--ghost-y,0),0) rotate(-2deg) scale(1); }
.elise-post-grid--ghost .elise-post-card:hover h3,
.elise-post-grid--ghost .elise-post-card:focus-within h3 { color: var(--elise-coral); }
.elise-post-grid--ghost .elise-post-card:hover .elise-post-card__read,
.elise-post-grid--ghost .elise-post-card:focus-within .elise-post-card__read { color: var(--elise-ink); opacity: 1; }

.elise-prefooter { position: relative; left: 50%; width: 100vw; max-width: none; margin-left: -50vw; margin-bottom: 0; padding: clamp(64px,7vw,88px) 0; color: #fff; background: var(--elise-blue); }
.wpb_row.vc_row:has(.elise-prefooter) { margin-bottom: 0 !important; background: var(--elise-blue); }
.container-wrap:has(.elise-prefooter) { padding-bottom: 0 !important; }
.elise-prefooter .elise-eyebrow { color: #fff; opacity: .72; }
.elise-prefooter h2 { color: #fff; max-width: 850px; }

.elise-series { padding: clamp(48px,5vw,76px) 0; overflow: hidden; border-top: 1px solid rgba(30,45,50,.14); }
.page-id-4163 .elise-series--native-salient { position: relative; left: 50%; width: 100vw; max-width: none; margin-left: -50vw; overflow: visible; }
.page-id-4163 .elise-series--native-salient .wpb_gallery { margin-bottom: 0; }
@media (min-width: 1001px) {
  .page-id-4163 .elise-series--native-salient .carousel-dynamic-wrapper > .normal-container.container { width: 94%; max-width: 1600px; margin-inline: auto; padding-inline: 70px; }
}
.elise-series:nth-of-type(even) { background: var(--elise-ivory); }
.elise-series__heading { margin-bottom: 12px; }
.elise-series__heading > div { max-width: 750px; }
.elise-series__heading p:last-child { color: var(--elise-muted); font-size: 18px; }
.elise-carousel { --elise-carousel-height: 500px; position: relative; }
.elise-carousel__track { display: flex; align-items: flex-start; gap: 10px; padding: 0 max(24px,calc((100vw - var(--elise-max))/2)); overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: inline mandatory; scrollbar-width: none; }
.elise-carousel__track::-webkit-scrollbar { display: none; }
.elise-carousel__track.flickity-enabled { display: block; overflow: hidden; scroll-snap-type: none; cursor: grab; }
.elise-carousel__track.flickity-enabled .flickity-viewport { overflow: hidden; }
.elise-carousel__track.flickity-enabled .elise-carousel-card { margin-right: 10px; scroll-snap-align: none; }
.elise-carousel__track.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down { cursor: grabbing; }
.elise-carousel-card { flex: 0 0 auto; width: auto; min-width: 0; scroll-snap-align: start; }
.elise-carousel-card__image { display: block; position: relative; width: auto; height: var(--elise-carousel-height); min-height: 0; overflow: hidden; background: #e9e5de; }
.elise-carousel-card__image img { display: block; width: auto !important; height: var(--elise-carousel-height) !important; max-width: none !important; max-height: none !important; margin: 0; object-fit: contain; transition: transform .28s ease-out; }
.elise-carousel-card__caption { position: absolute; inset: auto 0 0; z-index: 2; display: flex; flex-direction: column; gap: 4px; padding: 54px 20px 18px; color: #fff; background: linear-gradient(transparent,rgba(20,31,36,.82)); opacity: 0; transform: translateY(8px); transition: .25s ease; }
.elise-carousel-card__caption strong { color: #fff; font-size: 18px; line-height: 1.15; }
.elise-carousel-card__caption span { max-width: 34ch; color: rgba(255,255,255,.78); font-size: 13px; line-height: 1.35; }
.elise-carousel-card__image:hover .elise-carousel-card__caption,
.elise-carousel-card__image:focus .elise-carousel-card__caption { opacity: 1; transform: none; }
.elise-carousel-card__meta { display: flex; width: 100%; min-width: 0; align-items: baseline; justify-content: space-between; gap: 18px; }
.elise-carousel-card h3 { margin: 15px 0 4px; font-size: 18px; }
.elise-carousel-card h3 a { color: var(--elise-ink); text-decoration: none; }
.elise-project-seo-link { flex: 0 0 auto; color: var(--elise-coral); font-size: 12px; font-weight: 700; text-decoration: none; }
.elise-carousel__button { position: absolute; top: calc(var(--elise-carousel-height) / 2); z-index: 4; width: 50px; height: 50px; border: 0; border-radius: 50%; color: var(--elise-ink); background: rgba(255,255,255,.92); box-shadow: 0 10px 30px rgba(20,31,36,.15); cursor: pointer; transform: translateY(-50%); }
.elise-carousel__button:disabled { opacity: .28; cursor: default; }
.elise-carousel__button--prev { left: 18px; }
.elise-carousel__button--next { right: 18px; }

@media (max-width: 1300px) {
  .elise-carousel { --elise-carousel-height: 400px; }
}

@media (max-width: 1000px) {
  .elise-carousel { --elise-carousel-height: 350px; }
}

@media (max-width: 690px) {
  .elise-carousel { --elise-carousel-height: 300px; }
}

.elise-portfolio { width: 100%; margin-inline: auto; }
.elise-portfolio .portfolio-filters-inline { min-height: 0; padding: 10px 24px; }
.page-id-4163 .elise-page-heading { padding-block: 36px 24px; }
.page-id-4163 .elise-series:first-of-type { padding-top: 36px; }
.page-id-830 .elise-page-heading { padding-bottom: 26px; }
.page-id-830 .portfolio-filters-inline { margin-bottom: 10px; }
.elise-portfolio .work-info .elise-project-seo-link { position: relative; z-index: 30; display: inline-block; margin-top: 8px; padding: 6px 10px; color: #fff; border: 1px solid rgba(255,255,255,.7); border-radius: 999px; }

.elise-about-section { padding: 32px 0; border-top: 1px solid rgba(30,45,50,.16); }
.elise-about-section h2 { color: var(--elise-coral); }
.elise-about-section p,.elise-about-section blockquote { font-size: 19px; line-height: 1.8; }
.elise-contact-layout { padding-bottom: 110px; }
.elise-contact-layout h2 { margin-top: 28px; font-size: 21px; }
.elise-support { padding-top: 70px; }
.elise-pagination { margin-top: 55px; text-align: center; }
.elise-pagination .page-numbers { display: inline-grid; width: 42px; height: 42px; margin: 3px; place-items: center; border-radius: 50%; color: var(--elise-ink); background: var(--elise-ivory); text-decoration: none; }
.elise-pagination .current { color: #fff; background: var(--elise-ink); }

/* Contact: warmer, clearer and closer to the selected Salient reference. */
.page-id-109 .elise-page-heading { padding-top: clamp(68px,8vw,110px); }
.page-id-109 .elise-page-heading .elise-eyebrow { color: var(--elise-coral); }
.page-id-109 .elise-page-heading h1 { color: var(--elise-coral); font-size: clamp(52px,7vw,92px); }
.page-id-109 #ajax-content-wrap .top-level + .wpb_row { padding-block: clamp(54px,7vw,92px); background: var(--elise-ivory); }
.page-id-109 #ajax-content-wrap .top-level + .wpb_row .vc_col-sm-4 { padding-right: clamp(20px,4vw,62px); }
.page-id-109 #ajax-content-wrap .top-level + .wpb_row .vc_col-sm-8 > .vc_column-inner { padding: clamp(28px,4vw,54px); border-radius: 3px; background: #fff; box-shadow: 0 24px 60px rgba(30,45,50,.08); }
.page-id-109 .wpcf7 form { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.page-id-109 .wpcf7 form > p { margin: 0; }
.page-id-109 .wpcf7 form > p:nth-of-type(4),
.page-id-109 .wpcf7 form > p:nth-of-type(5),
.page-id-109 .wpcf7 .wpcf7-response-output { grid-column: 1/-1; }
.page-id-109 .wpcf7 label { color: var(--elise-ink); font-size: 13px; font-weight: 700; }
.page-id-109 .wpcf7 input:not([type="submit"]),
.page-id-109 .wpcf7 textarea { width: 100%; margin-top: 8px; border: 1px solid rgba(30,45,50,.18); background: #fbfaf8; }
.page-id-109 .wpcf7 textarea { min-height: 190px; }
.page-id-109 .wpcf7 input[type="submit"] { min-width: 150px; border-radius: 999px; }

#footer-outer { display: none !important; }
.elise-global-footer { margin: 0; padding: 64px 0 24px; color: #fff; background: var(--elise-blue); }
.elise-global-footer > .elise-shell { width: calc(100% - clamp(56px,7vw,128px)); max-width: none; }
.elise-global-footer__grid { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 36px; }
.elise-global-footer strong { font-size: 24px; }
.elise-global-footer p { margin-top: 8px; color: rgba(255,255,255,.72); }
.elise-global-footer nav { display: flex; flex-direction: column; gap: 10px; }
.elise-global-footer a,.elise-global-footer strong { color: #fff; text-decoration: none; }
.elise-global-footer a:hover { color: #f2b5ae; }
.elise-global-footer__bottom { margin-top: 48px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.24); color: rgba(255,255,255,.68); font-size: 12px; }

.elise-lightbox { position: fixed; inset: 0; z-index: 100000; display: none; align-items: center; justify-content: center; padding: 70px; color: #fff; background: rgba(11,17,20,.96); }
.elise-lightbox.is-open { display: flex; }
.elise-lightbox__figure { display: grid; max-width: min(92vw,1500px); max-height: 88vh; margin: 0; place-items: center; }
.elise-lightbox__image { max-width: 100%; max-height: 80vh; object-fit: contain; }
.elise-lightbox__caption { margin-top: 14px; color: rgba(255,255,255,.8); text-align: center; }
.elise-lightbox__close,.elise-lightbox__previous,.elise-lightbox__next { position: absolute; z-index: 2; width: 48px; height: 48px; border: 0; border-radius: 50%; color: #fff; background: rgba(255,255,255,.12); cursor: pointer; }
.elise-lightbox__close { top: 18px; right: 18px; font-size: 28px; }
.elise-lightbox__previous { left: 18px; top: 50%; }
.elise-lightbox__next { right: 18px; top: 50%; }

@media (max-width: 900px) {
  .elise-post-grid { grid-template-columns: 1fr 1fr; }
  .elise-post-grid--ghost .elise-post-card:nth-child(2) { border-right: 0; }
  .elise-section-heading,.elise-series__heading,.elise-prefooter__inner { align-items: flex-start; flex-direction: column; }
  .elise-global-footer__grid { grid-template-columns: 1fr 1fr; }
  .elise-global-footer__grid > div:first-child { grid-column: 1/-1; }
  .page-id-109 .wpcf7 form { grid-template-columns: 1fr; }
  .page-id-109 .wpcf7 form > p { grid-column: 1/-1; }
}

@media (max-width: 600px) {
  .elise-shell { width: min(100% - 30px,var(--elise-max)); }
  .elise-home-split { height: auto; grid-template-columns: 1fr; }
  .elise-home-split__panel { min-height: min(440px,62svh); }
  .elise-home-split__panel + .elise-home-split__panel { border-top: 1px solid rgba(255,255,255,.24); border-left: 0; }
  .elise-home-split__content { padding: 32px 24px; }
  .elise-home-split__title { font-size: clamp(48px,15vw,68px); }
  .elise-post-grid { grid-template-columns: 1fr; }
  .elise-post-grid--ghost .elise-post-card { border-right: 0; }
  .elise-post-card__link { min-height: auto; padding: 28px 0; }
  .elise-post-grid--ghost .elise-post-card__body h3 { max-width: none; font-size: 30px; }
  .elise-post-grid--ghost .elise-post-card__image { position: relative; inset: auto; width: 100%; margin-top: 22px; border: 0; box-shadow: none; opacity: 1; transform: none; }
  .elise-post-grid--ghost .elise-post-card:hover .elise-post-card__image,
  .elise-post-grid--ghost .elise-post-card:focus-within .elise-post-card__image { transform: none; }
  .elise-carousel__track { padding-inline: 15px; }
  .elise-carousel__button { display: none; }
  .elise-carousel-card__caption { opacity: 1; transform: none; }
  .elise-carousel-card__meta { align-items: flex-start; flex-direction: column; gap: 2px; }
  .elise-global-footer__grid { grid-template-columns: 1fr; }
  .elise-global-footer__grid > div:first-child { grid-column: auto; }
  .elise-lightbox { padding: 62px 16px; }
  .elise-lightbox__previous { left: 8px; }
  .elise-lightbox__next { right: 8px; }
}

@media (prefers-reduced-motion: reduce) {
  .elise-hero__artwork img,.elise-hero__content { animation: none; }
  .elise-hero__slide { transition: none; transform: none; }
  .elise-carousel-card__image img,.elise-post-card__image img,.elise-button,.elise-home-split__image { transition: none; }
  .elise-home-about__media img { animation: none; transform: scale(1.04); }
  .elise-post-grid--ghost .elise-post-card__image { transform: translate(-50%,-50%); transition: opacity .2s ease; }
}


/* Galerie: remove separators between series. */
.page-id-4163 .elise-series { border-top: 0; }

/* Header and Galerie: share Salient's native content axis. */
#header-outer .mobile-search,
#header-outer #search-btn {
  display: none !important;
}

.page-id-4163 .elise-page-heading.elise-shell {
  width: 100%;
  max-width: none;
  margin-inline: 0;
}


/* Mobile navigation: restrained full-screen presentation. */
@media (max-width: 999px) {
  #slide-out-widget-area.slide-out-from-right {
    width: 100vw !important;
    max-width: none !important;
    padding: max(28px, env(safe-area-inset-top)) 28px 36px !important;
    color: var(--elise-ink) !important;
    background: #fff !important;
    box-shadow: none !important;
  }
  #slide-out-widget-area .inner-wrap,
  #slide-out-widget-area .inner { width: 100% !important; color: var(--elise-ink) !important; }
  #slide-out-widget-area.slide-out-from-right .off-canvas-menu-container { margin-top: 52px !important; }
  #slide-out-widget-area .off-canvas-menu-container .menu { margin: 0; }
  #slide-out-widget-area .off-canvas-menu-container .menu > li { margin: 0 !important; }
  #slide-out-widget-area .off-canvas-menu-container .menu > li > a {
    display: inline-block;
    padding: 9px 0 !important;
    color: var(--elise-ink) !important;
    font-size: clamp(26px, 7vw, 34px) !important;
    font-weight: 500 !important;
    line-height: 1.12 !important;
    letter-spacing: -.025em;
    opacity: 1 !important;
  }
  #slide-out-widget-area .off-canvas-menu-container .menu > li.current-menu-item > a {
    color: var(--elise-ink) !important;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 6px;
  }
  #slide-out-widget-area .slide_out_area_close,
  #slide-out-widget-area .slide_out_area_close .icon-salient-x::before {
    color: var(--elise-ink) !important;
    border-color: var(--elise-ink) !important;
  }
  #slide-out-widget-area-bg { background-color: transparent !important; }
}


/* Mobile navigation: match Salient's transform to the full-width panel. */
@media (max-width: 999px) {
  #slide-out-widget-area.slide-out-from-right:not(.open) { transform: translateX(100%) !important; }
  #slide-out-widget-area.slide-out-from-right.open { transform: translateX(0) !important; }
}


/* Off-canvas Instagram icon: visual icon, accessible link text retained. */
#slide-out-widget-area .off-canvas-menu-container .menu > li.menu-item-4182 > a {
  width: 44px !important;
  height: 44px !important;
  padding: 7px !important;
  overflow: hidden;
  font-size: 0 !important;
  line-height: 1 !important;
  white-space: nowrap;
}
#slide-out-widget-area .off-canvas-menu-container .menu > li.menu-item-4182 > a::after {
  display: block;
  width: 30px;
  height: 30px;
  background-color: currentColor;
  content: "";
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M7%202h10a5%205%200%200%201%205%205v10a5%205%200%200%201-5%205H7a5%205%200%200%201-5-5V7a5%205%200%200%201%205-5Zm5%205a5%205%200%201%200%200%2010%205%205%200%200%200%200-10Zm0%202a3%203%200%201%201%200%206%203%203%200%200%201%200-6Zm5.5-3.5a1.25%201.25%200%201%201%200%202.5%201.25%201.25%200%200%201%200-2.5Z'/%3E%3C/svg%3E") center / contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M7%202h10a5%205%200%200%201%205%205v10a5%205%200%200%201-5%205H7a5%205%200%200%201-5-5V7a5%205%200%200%201%205-5Zm5%205a5%205%200%201%200%200%2010%205%205%200%200%200%200-10Zm0%202a3%203%200%201%201%200%206%203%203%200%200%201%200-6Zm5.5-3.5a1.25%201.25%200%201%201%200%202.5%201.25%201.25%200%200%201%200-2.5Z'/%3E%3C/svg%3E") center / contain no-repeat;
}


/* Galerie: permanent artwork title and details below each image. */
.page-id-4163 .elise-series--native-salient .nectar-flickity .cell {
  overflow: visible;
}
.page-id-4163 .elise-native-carousel-caption {
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  z-index: 8;
  display: flex;
  box-sizing: border-box;
  flex-direction: column;
  gap: 4px;
  padding: 12px 0 0;
  color: var(--elise-ink);
  background: transparent;
  opacity: 1;
  transform: none;
  transition: none;
  pointer-events: auto;
}
.page-id-4163 .elise-native-carousel-caption strong {
  color: var(--elise-ink);
  font-size: clamp(13.6px, 1.08vw, 16.8px);
  font-weight: 600;
  line-height: 1.2;
}
.page-id-4163 .elise-native-carousel-caption span {
  max-width: 38ch;
  color: var(--elise-muted);
  font-size: 10.4px;
  line-height: 1.45;
}


/* Homepage exhibitions: native Salient Post Loop Builder layout */
.elise-expos-loop .nectar-post-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 25px;
	margin: 0 !important;
}

.elise-expos-loop .nectar-post-grid-item {
	width: auto !important;
	margin: 0 !important;
}

.elise-expos-loop .nectar-post-grid-item-bg-wrap {
	position: relative;
	height: auto !important;
	aspect-ratio: 4 / 3;
	overflow: hidden;
}

.elise-expos-loop .nectar-post-grid-item-bg-wrap-inner,
.elise-expos-loop .nectar-post-grid-item-bg {
	width: 100%;
	height: 100% !important;
}

.elise-expos-loop .nectar-post-grid-item-bg img {
	position: absolute !important;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	object-fit: cover;
}

.elise-expos-loop .nectar-post-grid-item .content {
	padding: 20px 0 0 !important;
}

.elise-expos-loop .nectar-post-grid-item .post-heading {
	margin-bottom: 10px;
}

@media (max-width: 999px) {
	.elise-expos-loop .nectar-post-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 690px) {
	.elise-expos-loop .nectar-post-grid {
		grid-template-columns: minmax(0, 1fr);
	}
}


/* Latest exhibitions: clean editorial hierarchy based on Elise's reference. */
.elise-section--expos .elise-section-heading h2 {
  font-size: clamp(36px, 4vw, 56px);
}

.elise-post-grid--ghost .elise-post-card__body h3 {
  max-width: 15ch;
  margin: 0;
  font-size: clamp(22px, 2.2vw, 34px);
  font-weight: 400;
  line-height: 1.1;
}

.elise-post-grid--ghost .elise-post-card__body time {
  display: block;
  margin-top: 18px;
  color: var(--elise-coral);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.elise-post-grid--ghost .elise-post-card__image {
  z-index: 4;
  border: 0;
  box-shadow: none;
  transform: translate(-50%, -50%) translate3d(var(--ghost-x, 0), var(--ghost-y, 12px), 0) scale(.96);
}

.elise-post-grid--ghost .elise-post-card__image::after {
  display: none;
}

.elise-post-grid--ghost .elise-post-card:hover .elise-post-card__image,
.elise-post-grid--ghost .elise-post-card:focus-within .elise-post-card__image {
  opacity: 1;
  transform: translate(-50%, -50%) translate3d(var(--ghost-x, 0), var(--ghost-y, 0), 0) scale(1);
}

.elise-post-grid--ghost .elise-post-card:hover h3,
.elise-post-grid--ghost .elise-post-card:focus-within h3 {
  color: var(--elise-ink);
}

@media (max-width: 600px) {
  .elise-section--expos .elise-section-heading h2 {
    font-size: clamp(32px, 10vw, 40px);
  }

  .elise-post-grid--ghost .elise-post-card__body h3 {
    font-size: 24px;
    line-height: 1.15;
  }

  .elise-post-grid--ghost .elise-post-card__body time {
    margin-top: 12px;
    font-size: 10px;
  }

  .elise-post-grid--ghost .elise-post-card__image {
    z-index: 2;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elise-post-grid--ghost .elise-post-card__image {
    transition: opacity .2s ease;
  }
}


/* Galerie: align the latest exhibitions heading and first card on one axis. */
.page-id-4163 .elise-section--expos .elise-post-card:first-child .elise-post-card__link {
  padding-left: 0;
}

.page-id-4163 .elise-section--expos .elise-post-card__body time {
  color: var(--elise-ink);
  font-size: clamp(14px, 1vw, 16px);
  line-height: 1.35;
  letter-spacing: .03em;
  text-transform: none;
}

@media (min-width: 901px) {
  .page-id-4163 .elise-section--expos .elise-section-heading {
    align-items: center;
  }
}


/* Artwork pages: hide the public keyword checklist without removing its taxonomy data. */
body.single-portfolio #sidebar-inner > ul.project-attrs.checks {
  display: none !important;
}


/* Navigation and footer: compact accessible Contact and Instagram pictograms. */
#header-outer #top nav > ul > li.menu-item-4180 > a,
#header-outer #top nav > ul > li.menu-item-4182 > a {
  width: 36px;
  min-width: 36px;
  height: 36px;
  padding-inline: 0 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  font-size: 0 !important;
  line-height: 1 !important;
}

#header-outer #top nav > ul > li.menu-item-4180 > a::after,
#header-outer #top nav > ul > li.menu-item-4182 > a::after,
#slide-out-widget-area .off-canvas-menu-container .menu > li.menu-item-4180 > a::after,
#slide-out-widget-area .off-canvas-menu-container .menu > li.menu-item-4182 > a::after {
  width: 22px;
  height: 22px;
  display: block;
  flex: 0 0 auto;
  content: "";
  background-color: currentColor;
  -webkit-mask: var(--elise-menu-icon) center / contain no-repeat;
  mask: var(--elise-menu-icon) center / contain no-repeat;
}

#header-outer #top nav > ul > li.menu-item-4180 > a,
#slide-out-widget-area .off-canvas-menu-container .menu > li.menu-item-4180 > a {
  --elise-menu-icon: url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M3%205h18v14H3V5Zm2%202v.2l7%205.3%207-5.3V7H5Zm14%2010V9.7l-7%205.3-7-5.3V17h14Z'/%3E%3C/svg%3E");
}

#header-outer #top nav > ul > li.menu-item-4182 > a,
#slide-out-widget-area .off-canvas-menu-container .menu > li.menu-item-4182 > a {
  --elise-menu-icon: url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M7%202h10a5%205%200%200%201%205%205v10a5%205%200%200%201-5%205H7a5%205%200%200%201-5-5V7a5%205%200%200%201%205-5Zm5%205a5%205%200%201%200%200%2010%205%205%200%200%200%200-10Zm0%202a3%203%200%201%201%200%206%203%203%200%200%201%200-6Zm5.5-3.5a1.25%201.25%200%201%201%200%202.5%201.25%201.25%200%200%201%200-2.5Z'/%3E%3C/svg%3E");
}

@media (max-width: 999px) {
  #slide-out-widget-area .off-canvas-menu-container .menu > li.menu-item-4180 > a,
  #slide-out-widget-area .off-canvas-menu-container .menu > li.menu-item-4182 > a {
    width: 44px !important;
    min-width: 44px;
    height: 44px !important;
    padding: 7px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    font-size: 0 !important;
    line-height: 1 !important;
  }

  #slide-out-widget-area .off-canvas-menu-container .menu > li.menu-item-4180 > a::after,
  #slide-out-widget-area .off-canvas-menu-container .menu > li.menu-item-4182 > a::after {
    width: 30px;
    height: 30px;
  }
}

.elise-global-footer__icons {
  flex-direction: row !important;
  align-items: flex-start;
  gap: 12px !important;
}

.elise-footer-icon {
  --elise-footer-icon: none;
  width: 44px;
  height: 44px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.48);
  border-radius: 50%;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.elise-footer-icon::before {
  width: 20px;
  height: 20px;
  display: block;
  content: "";
  background-color: currentColor;
  -webkit-mask: var(--elise-footer-icon) center / contain no-repeat;
  mask: var(--elise-footer-icon) center / contain no-repeat;
}

.elise-footer-icon--contact {
  --elise-footer-icon: url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M3%205h18v14H3V5Zm2%202v.2l7%205.3%207-5.3V7H5Zm14%2010V9.7l-7%205.3-7-5.3V17h14Z'/%3E%3C/svg%3E");
}

.elise-footer-icon--instagram {
  --elise-footer-icon: url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%3E%3Cpath%20d='M7%202h10a5%205%200%200%201%205%205v10a5%205%200%200%201-5%205H7a5%205%200%200%201-5-5V7a5%205%200%200%201%205-5Zm5%205a5%205%200%201%200%200%2010%205%205%200%200%200%200-10Zm0%202a3%203%200%201%201%200%206%203%203%200%200%201%200-6Zm5.5-3.5a1.25%201.25%200%201%201%200%202.5%201.25%201.25%200%200%201%200-2.5Z'/%3E%3C/svg%3E");
}

.elise-footer-icon:hover,
.elise-footer-icon:focus-visible {
  color: var(--elise-blue) !important;
  background-color: #fff;
  transform: translateY(-2px);
}


/* Navigation refinement 1.4.48: Contact text, lighter Instagram, unframed footer. */
#header-outer #top nav > ul > li.menu-item-4180 > a {
  width: auto;
  min-width: 0;
  height: auto;
  padding-inline: 12px !important;
  overflow: visible;
  font-size: inherit !important;
  line-height: inherit !important;
}

#header-outer #top nav > ul > li.menu-item-4180 > a::after,
#slide-out-widget-area .off-canvas-menu-container .menu > li.menu-item-4180 > a::after {
  display: none;
  content: none;
}

#header-outer #top nav > ul > li.menu-item-4182 > a,
#slide-out-widget-area .off-canvas-menu-container .menu > li.menu-item-4182 > a {
  --elise-menu-icon: url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%20fill='none'%20stroke='black'%20stroke-width='1.45'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='3.25'%20y='3.25'%20width='17.5'%20height='17.5'%20rx='4.8'/%3E%3Ccircle%20cx='12'%20cy='12'%20r='4.15'/%3E%3Ccircle%20cx='17.45'%20cy='6.55'%20r='.65'%20fill='black'%20stroke='none'/%3E%3C/svg%3E");
}

.elise-footer-icon--instagram {
  --elise-footer-icon: url("data:image/svg+xml,%3Csvg%20viewBox='0%200%2024%2024'%20xmlns='http://www.w3.org/2000/svg'%20fill='none'%20stroke='black'%20stroke-width='1.45'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='3.25'%20y='3.25'%20width='17.5'%20height='17.5'%20rx='4.8'/%3E%3Ccircle%20cx='12'%20cy='12'%20r='4.15'/%3E%3Ccircle%20cx='17.45'%20cy='6.55'%20r='.65'%20fill='black'%20stroke='none'/%3E%3C/svg%3E");
}

.elise-footer-icon {
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 0;
}

.elise-footer-icon::before {
  width: 22px;
  height: 22px;
}

.elise-footer-icon:hover,
.elise-footer-icon:focus-visible {
  color: #f2b5ae !important;
  background-color: transparent;
}

@media (max-width: 999px) {
  #slide-out-widget-area .off-canvas-menu-container .menu > li.menu-item-4180 > a {
    width: auto !important;
    min-width: 0;
    height: auto !important;
    padding: 9px 0 !important;
    display: inline-block !important;
    overflow: visible;
    font-size: clamp(26px, 7vw, 34px) !important;
    line-height: 1.12 !important;
  }
}


/* Unified Salient content axis 1.4.49. */
:root {
  --elise-layout-axis: 6vw;
}

@media (min-width: 1000px) {
  :root {
    /* Mirrors Salient's 1425px container with 90px internal gutters. */
    --elise-layout-axis: max(90px, calc((100vw - 1245px) / 2));
  }
}

/* Standard rows already live inside Salient's native content container. */
.elise-shell {
  width: 100%;
  margin-inline: 0;
}

/* Full-bleed components need the same viewport-relative axis explicitly. */
.elise-home-manifesto__inner.elise-shell,
.elise-home-about__card.elise-shell,
.elise-prefooter__inner.elise-shell,
.elise-global-footer > .elise-shell {
  width: auto;
  margin-inline: var(--elise-layout-axis);
}

.elise-hero__content {
  padding-left: var(--elise-layout-axis);
}

/* Gallery headings use Salient's axis; carousels begin there and remain open to the right. */
.page-id-4163 .elise-series__heading.container {
  width: auto !important;
  max-width: none !important;
  margin-left: var(--elise-layout-axis) !important;
  margin-right: var(--elise-layout-axis) !important;
  padding-inline: 0 !important;
}

.page-id-4163 .elise-series--native-salient .carousel-dynamic-wrapper > .normal-container.container {
  box-sizing: border-box;
  width: calc(100% - var(--elise-layout-axis)) !important;
  max-width: none !important;
  margin-left: var(--elise-layout-axis) !important;
  margin-right: 0 !important;
  padding-inline: 0 !important;
}

.elise-carousel__track {
  padding-left: var(--elise-layout-axis);
  padding-right: 0;
}

/* The first exhibition card shares the heading's exact starting point. */
.elise-section--expos .elise-post-card:first-child .elise-post-card__link {
  padding-left: 0;
}


/* Mobile About card shares the viewport edge while its copy follows the Salient axis. */
@media (max-width: 900px) {
  .elise-home-about__card.elise-shell {
    margin-inline: 0;
  }
}


/* Active navigation underline 1.4.50. */
#header-outer #top nav > ul > li.current-menu-item > a .menu-title-text::after,
#header-outer #top nav > ul > li.current_page_item > a .menu-title-text::after,
#header-outer #top nav > ul > li.current-menu-ancestor > a .menu-title-text::after {
  border-top: 1px solid var(--elise-blue) !important;
}


/* Transparent home header underline priority 1.4.51. */
body.home #header-outer:not(.small-nav) #top nav > ul > li.current-menu-item > a .menu-title-text::after,
body.home #header-outer:not(.small-nav) #top nav > ul > li.current_page_item > a .menu-title-text::after,
body.home #header-outer:not(.small-nav) #top nav > ul > li.current-menu-ancestor > a .menu-title-text::after {
  border-top: 1px solid var(--elise-blue) !important;
}


/* Balanced manifesto spacing 1.4.52. */
.elise-home-manifesto {
  padding-block: clamp(34px, 4vw, 58px);
}


/* Shadowless Salient header 1.4.53. */
#header-outer,
#header-outer::before,
#header-outer::after {
  box-shadow: none !important;
  -webkit-box-shadow: none !important;
}


/* Navigation typography repair 1.4.54: restore Contact to the standard Salient text link metrics. */
@media (min-width: 1000px) {
  #header-outer #top nav > ul > li.menu-item-4180 > a {
    font-size: 14px !important;
    line-height: 20px !important;
  }
}

@media (min-width: 691px) {
  .elise-home-banner__slides { aspect-ratio: 3 / 1; }
}

/* Exposition cards: match the restrained typography of the home cards (1.4.57). */
.page-id-3390 .elise-post-card__body h2,
.page-id-3390 .elise-post-card__body h2 a {
  font-family: "Open Sans", Helvetica, sans-serif !important;
  font-size: clamp(28px, 2.4vw, 34px) !important;
  font-weight: 400 !important;
  font-style: normal !important;
  line-height: 1.1 !important;
  letter-spacing: -0.025em !important;
}

.page-id-3390 .elise-post-card__body time {
  font-family: "Open Sans", Helvetica, sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}


/* Exposition card heading box: exact home title metrics at each breakpoint. */
body.page-id-3390 .elise-post-card__body h2 {
  font-size: 34px !important;
}
@media (max-width: 690px) {
  body.page-id-3390 .elise-post-card__body h2,
  body.page-id-3390 .elise-post-card__body h2 a {
    font-size: 28px !important;
  }
}


/* Ensure the Exposition heading box itself uses the home card title metrics. */
body.page-id-3390 #ajax-content-wrap .elise-post-card__body h2 {
  font-size: 34px !important;
  line-height: 1.1 !important;
}
@media (max-width: 690px) {
  body.page-id-3390 #ajax-content-wrap .elise-post-card__body h2 {
    font-size: 28px !important;
  }
}



/* Galerie : sections en pleine largeur. */
.page-id-4163 .elise-series--salient-carousel { position: relative; left: 50%; width: 100vw; max-width: none; margin-left: -50vw; }


/* Galerie native : conserver les légendes dans la hauteur du carrousel. */
.page-id-4163 .elise-series--salient-carousel .nectar-flickity .inner-wrap,
.page-id-4163 .elise-series--salient-carousel .nectar-flickity .inner-wrap-outer,
.page-id-4163 .elise-series--salient-carousel .nectar-flickity .cell {
  height: auto !important;
}

.page-id-4163 .elise-series--salient-carousel .nectar-flickity .flickity-viewport {
  margin-top: 0 !important;
}

.page-id-4163 .elise-series--salient-carousel .nectar-fancy-box .text {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: var(--elise-ink) !important;
}

/* Galerie: réduire de moitié les 35 px d'espacement entre les rangées. */
body.page-id-4163 .main-content > .row > .wpb_row {
  margin-bottom: 17.5px !important;
}

/* Galerie: mêmes écarts inter-rangées, divisés par deux, sur tous les formats. */
body.page-id-4163 .elise-series {
  padding-top: clamp(24px, 2.5vw, 38px) !important;
  padding-bottom: clamp(24px, 2.5vw, 38px) !important;
}
body.page-id-4163 .elise-series:first-of-type {
  padding-top: 18px !important;
}

/* Galerie: demi-marges des carrousels et des ancres, cohérentes avec les rangées. */
body.page-id-4163 .elise-series--salient-carousel .nectar-flickity .flickity-viewport {
  margin-bottom: 30px !important;
}
body.page-id-4163 .wpb_text_column > p:has(> .elise-gallery-anchor) {
  height: 14px;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 14px;
  overflow: hidden;
}

/* Galerie: retirer au moins 30 px entre les rangées gérées. */
body.page-id-4163 .elise-gallery-managed-sections .elise-series {
  padding-bottom: clamp(10px, 1.5vw, 24px) !important;
}
body.page-id-4163 .elise-gallery-managed-sections .elise-series + .elise-series {
  margin-top: 0 !important;
}

/* Galerie: inclure les légendes dans la hauteur réelle du carrousel. */
body.page-id-4163 .elise-series--salient-carousel .nectar-flickity .flickity-slider > .cell {
  height: auto !important;
  min-height: 0 !important;
}

/* Galerie: compacter l’espace après les légendes. */
body.page-id-4163 .elise-series--salient-carousel .nectar-flickity .flickity-viewport {
  margin-bottom: 0 !important;
}
body.page-id-4163 .elise-series--salient-carousel .nectar-fancy-box .text p {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Galerie: neutraliser le paragraphe technique sous chaque légende. */
body.page-id-4163 .elise-series--salient-carousel .nectar-fancy-box > p {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
}

/* Galerie: rythme compact entre légendes et section suivante. */
body.page-id-4163 .elise-gallery-managed-sections .elise-series {
  padding-bottom: 0 !important;
}
body.page-id-4163 .elise-gallery-managed-sections .elise-series + .elise-series {
  margin-top: 0 !important;
  padding-top: 14px !important;
}

/* Galerie: fond uniforme blanc pour toutes les sections. */
body.page-id-4163 .elise-gallery-managed-sections > .elise-series {
  background: #fff !important;
}

/* Galerie: aligner tous les titres de sections à gauche. */
body.page-id-4163 .elise-gallery-managed-sections .elise-series__heading {
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  row-gap: 0 !important;
  column-gap: 0 !important;
  text-align: left !important;
}
body.page-id-4163 .elise-gallery-managed-sections .elise-series__heading h2 {
  margin-left: 0 !important;
  text-align: left !important;
}

/* Footer global: supprimer définitivement la bande blanche avant le footer. */
body .main-content > .row > .wpb_row:has(.elise-prefooter) {
  margin-bottom: 0 !important;
}

/* Galerie: en-tête de page identique à À propos. */
body.page-id-4163 .elise-gallery-managed > .elise-page-heading {
  padding-top: clamp(58px, 7vw, 110px) !important;
  padding-bottom: clamp(34px, 4vw, 54px) !important;
  text-align: center !important;
}
body.page-id-4163 .elise-gallery-managed > .elise-page-heading h1 {
  color: var(--elise-coral) !important;
  text-align: center !important;
}
body.page-id-4163 .elise-gallery-managed > .elise-page-heading p {
  margin-inline: auto !important;
  padding-bottom: 0 !important;
  text-align: center !important;
}

/* Home: rapprochement du bouton Galerie. */
@media (min-width: 1001px) and (hover: hover) and (pointer: fine) {
  body.home .elise-hero__cta {
    border-radius: var(--elise-home-gallery-radius, 5px);
    transition: border-radius .2s ease, transform .25s ease, background .25s ease, color .25s ease, border-color .25s ease !important;
    will-change: border-radius;
  }
  body.home .elise-hero__cta:hover,
  body.home .elise-hero__cta:focus-visible {
    border-radius: 999px;
  }
}

/* Home: priorité de la transition du bouton Galerie. */
@media (min-width: 1001px) and (hover: hover) and (pointer: fine) {
  body.home.page-id-804 .elise-hero.elise-hero--editorial .elise-hero__cta {
    transition: border-radius .2s ease, transform .25s ease, background .25s ease, color .25s ease, border-color .25s ease !important;
  }
}

/* Home hero artwork: align its left edge with the video's right edge. */
@media (min-width: 1001px) {
  body.home .elise-hero__layout {
    grid-template-columns:
      calc(35vw + max(27px, calc(15vw - 186.75px)))
      minmax(0, 1fr);
  }
}

/* Portfolio: match the carousel indicator to the footer. */
body.page-id-4163 .nectar-drag-indicator .color-circle { background-color: #607b98 !important; }

/* Unified CTA hover state: match the newsletter "S’inscrire" button. */
html body :is(
  .elise-button,
  .nectar-cta .link_wrap,
  input.wpcf7-submit,
  input.sib-default-btn,
  input[type="submit"],
  button[type="submit"],
  a.nectar-button,
  a.wpb_button,
  .wp-block-button__link
):is(:hover, :focus-visible):not(:disabled) {
  background: var(--elise-button-hover) !important;
  background-color: var(--elise-button-hover) !important;
  border-color: var(--elise-button-hover) !important;
  color: #fff !important;
  transform: none !important;
}

html body :is(
  .elise-button,
  .nectar-cta .link_wrap,
  input.wpcf7-submit,
  input.sib-default-btn,
  input[type="submit"],
  button[type="submit"],
  a.nectar-button,
  a.wpb_button,
  .wp-block-button__link
):is(:hover, :focus-visible):not(:disabled) * {
  color: #fff !important;
}
