/* L’INÉDIT signature pink: sampled from an opaque pixel of the official logo apostrophe. */
:root{--brand-accent:#f30071}

/* Navigation: a fine active rule; the menu typography stays black. */
.jlv-desktop-nav>a::after{background:var(--brand-accent)}
.jlv-mobile-accordion.is-current,.jlv-mobile-contact.is-current{text-decoration:none;position:relative}
.jlv-mobile-accordion.is-current::after,.jlv-mobile-contact.is-current::after{content:"";position:absolute;left:0;bottom:10px;width:29px;height:2px;background:var(--brand-accent)}
.jlv-mobile-sub a:hover,.jlv-mobile-sub a:focus-visible{color:var(--brand-accent)}

/* Black primary buttons retain their fill. Only their arrow changes on interaction. */
:is(.jlv-header-cta,.jlv-mobile-cta,.pill-button,.lp-header-cta,.lp-pill,.ep-dark-pill,.cp-submit,.form-submit-row button):is(:hover,:focus-visible)>span:last-child{color:var(--brand-accent)}

/* Editorial links, including the shared footer. */
:is(.brio-cta,.case-bottom a,.work-intro-top a,.cp-coordinate-list a,.footer-social a,.footer-right a,.lp-footer a):is(:hover,:focus-visible){text-decoration-color:var(--brand-accent)}
:is(.brio-cta,.case-bottom a,.cp-coordinate-list a):is(:hover,:focus-visible) :is(span,b){color:var(--brand-accent)}
.work-intro-top a span,.case-bottom a span,#film-project-link span,.ep-future span,.lp-secondary-link span{color:var(--brand-accent)}
.site-footer a:is(:hover,:focus-visible),.lp-footer a:is(:hover,:focus-visible){color:var(--brand-accent)}

/* Section markers: one short stroke or number, never a full pink heading. */
.hero-index .index-line,.lp-kicker span,.contact-page .cp-kicker i{background:var(--brand-accent);opacity:1}
.section-label>span:first-child{color:var(--brand-accent)}
:is(.expertise-kicker,.work-section-label,.project-index,.ep-eyebrow,.ag-index)::before{content:"";display:inline-block;width:19px;height:2px;margin-right:10px;background:var(--brand-accent);vertical-align:middle}
.ag-index-light::before{background:var(--brand-accent)}
.ep-chapter-meta>span:first-child,.dg-crumb>span:first-child,.ma-crumb>span:first-child{color:var(--brand-accent)}
.contact-page .cp-kicker i{flex:none}

/* Progress, selected slides, process chapters and current filters. */
.journey-progress{top:72px;z-index:3;gap:2px}
@media(max-width:1230px){.journey-progress{top:68px}}
.journey-progress span,.journey-progress span.active,.journey-progress span:first-child{position:relative;height:2px;overflow:hidden;background:#c8c9c6}
.journey-progress span::before{content:"";position:absolute;inset:0;background:#151718;transform:scaleX(var(--journey-fill,0));transform-origin:left;transition:transform .1s linear}
.journey-rail span.active::before{content:"";display:inline-block;width:5px;height:5px;margin-right:6px;border-radius:50%;background:var(--brand-accent);vertical-align:middle}
.film-choice.is-active{position:relative}
.film-choice.is-active::after{content:"";position:absolute;right:12px;top:12px;width:6px;height:6px;border-radius:50%;background:var(--brand-accent)}
.reel-film-list button.is-active{border-bottom:2px solid var(--brand-accent)}
.ag-chapter.is-active .ag-chapter-progress i,.ag-showreel-mobile-progress i{background:var(--brand-accent)}
.ep-rail a.is-active span,.ep-rail a:hover span{color:var(--brand-accent)}
.rp-filter-list button.is-active{position:relative}
.rp-filter-list button.is-active::before{content:"";display:inline-block;width:5px;height:5px;margin-right:6px;border-radius:50%;background:var(--brand-accent);vertical-align:middle}
.contact-page .cp-need[aria-pressed="true"]{position:relative}
.contact-page .cp-need[aria-pressed="true"]::after{content:"";position:absolute;top:13px;right:13px;width:6px;height:6px;border-radius:50%;background:var(--brand-accent)}

/* One editorial underline on the agency page and a single connector in the loop. */
.brand-accent-underline{background:linear-gradient(var(--brand-accent),var(--brand-accent)) no-repeat 0 88%/100% 3px;text-decoration:none}
.culture-loop-track i:nth-of-type(2){background:var(--brand-accent)}

/* Form fields remain neutral until focus; success states retain their own meaning. */
:is(.contact-form-wrap,.contact-page .cp-form-column,.lp-form-wrap) :is(input:not([type="checkbox"]),select,textarea):focus{border-color:var(--brand-accent);outline-color:var(--brand-accent)}
:is(.contact-form-wrap,.contact-page .cp-form-column,.lp-form-wrap) input[type="checkbox"]{accent-color:var(--brand-accent)}

/* The dedicated Paris landing page follows the same restrained language. */
.lp-nav a:is(:hover,:focus-visible){text-decoration-color:var(--brand-accent)}
.lp-secondary-link:is(:hover,:focus-visible){border-bottom-color:var(--brand-accent)}
.lp-secondary-link:is(:hover,:focus-visible) span{color:var(--brand-accent)}

@media(max-width:600px){
  .jlv-mobile-accordion.is-current::after,.jlv-mobile-contact.is-current::after{bottom:9px}
  .film-choice.is-active::after{right:8px;top:8px}
}
/* Final supplied logo: its original artwork is arranged on tight SVG canvases.
   Keep the navigation geometry and header height unchanged. */
.jlv-header-bar .jlv-brand,
.jlv-mobile-top .agency-mobile-logo,
.lp-header .lp-brand {
  display: flex;
  align-items: center;
  flex: none;
  width: 246px;
  height: 68px;
  overflow: visible;
}
.jlv-brand picture,
.agency-mobile-logo picture,
.lp-header .lp-brand picture {
  display: block;
  width: 100%;
  line-height: 0;
}
.jlv-header-bar .jlv-brand img,
.jlv-mobile-top .agency-mobile-logo img,
.lp-header .lp-brand img {
  position: static;
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  transform: none;
}
.site-footer .footer-brand .brand-logo-link,
.lp-footer .lp-footer-brand {
  display: flex;
  align-items: center;
  width: 246px;
  height: 62px;
  overflow: visible;
}
.site-footer .footer-brand .brand-logo-link img,
.lp-footer .lp-footer-brand img {
  position: static;
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  transform: none;
}
@media (max-width: 1230px) {
  .jlv-header-bar .jlv-brand,
  .jlv-mobile-top .agency-mobile-logo,
  .lp-header .lp-brand { width: 224px; }
}
@media (max-width: 600px) {
  .jlv-header-bar .jlv-brand,
  .jlv-mobile-top .agency-mobile-logo,
  .lp-header .lp-brand { width: 178px; height: 64px; }
  .site-footer .footer-brand .brand-logo-link,
  .lp-footer .lp-footer-brand { width: 232px; }
}
@media (max-width: 340px) {
  .jlv-header-bar .jlv-brand,
  .jlv-mobile-top .agency-mobile-logo,
  .lp-header .lp-brand { width: 48px; }
}

/* Shared smart header: one quiet movement for the complete navigation block. */
.site-header.jlv-header,
.site-header.jlv-header.is-scrolled {
  transform: translateY(0);
  transition: transform 280ms cubic-bezier(.22,1,.36,1), background-color 220ms ease, backdrop-filter 220ms ease;
}
.site-header.jlv-header.header--top {
  background: #f8f7f3;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.site-header.jlv-header.header--scrolled {
  background: rgba(248,247,243,.95);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.site-header.jlv-header[data-mega-open] { background: #faf9f6; backdrop-filter: none; -webkit-backdrop-filter: none; }
.site-header.jlv-header.header--hidden {
  transform: translateY(-100%);
  pointer-events: none;
}
.lp-header {
  transform: translateY(0);
  transition: transform 280ms cubic-bezier(.22,1,.36,1), background-color 220ms ease, backdrop-filter 220ms ease;
}
.lp-header.header--top { background: #fdfcf9; backdrop-filter: none; -webkit-backdrop-filter: none; }
.lp-header.header--scrolled { background: rgba(253,252,249,.95); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.lp-header.header--hidden { transform: translateY(-100%); pointer-events: none; }
[id]:target { scroll-margin-top: 88px; }
@media (max-width: 1230px) { [id]:target { scroll-margin-top: 80px; } }
@media (prefers-reduced-motion: reduce) {
  .site-header.jlv-header,
  .site-header.jlv-header.is-scrolled,
  .lp-header { transition: none; }
}

/* Gloria references sit below the social links, clear of the floating contact button. */
.footer-gloria { display: flex; flex-wrap: wrap; gap: 5px 18px; margin-top: 18px; color: #656965; font-size: 12px; line-height: 1.4; }
.lp-footer-social .footer-gloria { flex-basis: 100%; margin-top: 2px; }
