/* Personal content layer: only the three navigation links remain visible. */
.section_nav.patrick-site-header {
  position: fixed !important;
  z-index: 2147483647;
  inset: 1.25rem auto auto 1.25rem;
  display: block !important;
  width: auto;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  color: #17221d;
  background: transparent;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
  visibility: visible !important;
  translate: none !important;
  transform: none !important;
}

.section_nav.patrick-site-header .container,
.section_nav.patrick-site-header .grid,
.section_nav.patrick-site-header .nav_menu-wrap {
  display: flex;
  align-items: center;
  width: auto;
  min-height: 3rem;
  max-width: none;
  margin: 0;
  overflow: visible !important;
}

.section_nav.patrick-site-header .nav_logo-wrap,
.section_nav.patrick-site-header .nav_infos-wrap {
  display: none;
}

.section_nav.patrick-site-header .nav_list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: .6rem 1.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.section_nav.patrick-site-header .nav_list-item {
  margin: 0;
  overflow: visible;
}

.section_nav.patrick-site-header .nav_list-item:not(:last-child) .nav_item-menu::after {
  content: none;
}

.section_nav.patrick-site-header .nav_item-menu {
  position: relative;
  display: inline-block;
  padding: .55rem 0;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  text-shadow: none !important;
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: .8rem;
  font-weight: 650;
  letter-spacing: -.025em;
  line-height: 1;
  text-decoration: none;
  opacity: 1 !important;
  visibility: visible !important;
  translate: none !important;
  transform: none !important;
  animation: none !important;
}

.section_nav.patrick-site-header .nav_item-menu::before { position: absolute; right: 0; bottom: .3rem; left: 0; height: .18rem; background: #b6ff39; content: ""; transform: scaleX(0); transform-origin: right; transition: transform .25s ease; }
.section_nav.patrick-site-header .nav_item-menu:hover::before,
.section_nav.patrick-site-header .nav_item-menu:focus-visible::before { transform: scaleX(1); transform-origin: left; }
.section_nav.patrick-site-header .nav_item-menu:focus-visible { outline: 2px solid #17221d; outline-offset: .35rem; }

.section.section_hero.patrick-hero {
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 100svh;
  margin: 0;
  padding: 0;
  overflow: hidden;
  color: #17221d;
  background: #f4f3ed;
}

.patrick-hero__content {
  display: flex;
  flex: 0 1 auto;
  flex-direction: column;
  justify-content: space-between;
  min-height: 42rem;
  padding: 6.7rem 1.5rem 2rem;
}

.patrick-hero__brand {
  display: flex;
  align-items: center;
  gap: .85rem;
  opacity: 0;
  animation: patrick-rise .75s .22s cubic-bezier(.16, 1, .3, 1) forwards;
}

.patrick-hero__logo { width: 2.25rem; height: 3.9rem; object-fit: contain; }
.patrick-hero__brand p { margin: 0; }
.patrick-hero__name { color: #17221d; font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 1rem; font-weight: 750; letter-spacing: -.045em; }
.patrick-hero__slogan { margin-top: .15rem !important; color: #55615b; font-size: .7rem; font-weight: 500; letter-spacing: .07em; text-transform: uppercase; }

.patrick-hero__copy { max-width: 46rem; margin: auto 0 2rem; }
.patrick-hero__kicker { margin: 0 0 1.1rem; color: #17221d; font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: .74rem; font-weight: 700; letter-spacing: .075em; text-transform: uppercase; opacity: 0; animation: patrick-rise .75s .38s cubic-bezier(.16, 1, .3, 1) forwards; }
.patrick-hero__title { margin: 0; color: #17221d; font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: clamp(3rem, 12.5vw, 5rem); font-weight: 750; letter-spacing: -.078em; line-height: .9; opacity: 0; animation: patrick-rise .85s .48s cubic-bezier(.16, 1, .3, 1) forwards; }
.patrick-hero__accent { width: 5rem; height: .25rem; margin: clamp(1.25rem, 2vw, 2rem) 0; background: #b6ff39; opacity: 0; animation: patrick-rise .7s .61s cubic-bezier(.16, 1, .3, 1) forwards; }
.patrick-hero__intro { max-width: 34rem; margin: 0; color: #55615b; font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: clamp(1rem, 1.2vw, 1.18rem); letter-spacing: -.015em; line-height: 1.5; opacity: 0; animation: patrick-rise .75s .68s cubic-bezier(.16, 1, .3, 1) forwards; }
.patrick-hero__cta { display: inline-flex; gap: .6rem; margin-top: 2rem; color: #17221d; font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 1rem; font-weight: 750; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; opacity: 0; animation: patrick-rise .75s .78s cubic-bezier(.16, 1, .3, 1) forwards; }
.patrick-hero__cta span { font-size: 1.2em; transition: transform .2s ease; }
.patrick-hero__cta:hover span { transform: translate(.2rem, .2rem); }
.patrick-hero__cta:focus-visible { outline: 2px solid #17221d; outline-offset: .4rem; }

.patrick-hero__contact { display: grid; grid-template-columns: 1fr; gap: .55rem; color: #55615b; font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: .72rem; opacity: 0; animation: patrick-rise .75s .88s cubic-bezier(.16, 1, .3, 1) forwards; }
.patrick-hero__contact > * { display: flex; align-items: center; gap: .55rem; min-width: 0; color: inherit; text-decoration: none; }
.patrick-hero__contact a:hover { color: #17221d; }
.patrick-hero__contact svg { flex: 0 0 auto; width: 1.2rem; height: 1.2rem; color: #17221d; stroke-linecap: round; stroke-linejoin: round; }

.patrick-hero__image-wrap { position: relative; flex: 0 1 auto; min-height: 25rem; background: #d9ddd7; clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); animation: patrick-image-reveal-mobile 1.2s .1s cubic-bezier(.16, 1, .3, 1) forwards; }
.patrick-hero__image { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 58% center; transform: scale(1.07); animation: patrick-image-settle 1.45s .1s cubic-bezier(.16, 1, .3, 1) both; }
.patrick-hero__image-wrap::after { position: absolute; inset: 0; background: linear-gradient(180deg, rgb(23 34 29 / .12), rgb(23 34 29 / .03) 45%, rgb(23 34 29 / .26)); content: ""; pointer-events: none; }

@keyframes patrick-rise { from { opacity: 0; transform: translateY(1.25rem); } to { opacity: 1; transform: translateY(0); } }
@keyframes patrick-image-reveal { to { clip-path: polygon(25% 0, 100% 0, 100% 100%, 0 100%); } }
@keyframes patrick-image-settle { from { transform: scale(1.18); } to { transform: scale(1.07); } }

@media (min-width: 48rem) {
  .section_nav.patrick-site-header {
    inset: clamp(1rem, 2.5vw, 2.25rem) auto auto clamp(1.25rem, 4vw, 4.5rem);
  }

  .section_nav.patrick-site-header .nav_list {
    gap: clamp(1.1rem, 2.5vw, 3rem);
  }

  .section_nav.patrick-site-header .nav_item-menu {
    font-size: clamp(.82rem, 1vw, 1rem);
  }

  .section.section_hero.patrick-hero {
    flex-direction: row;
  }

  .patrick-hero__content {
    flex: 0 0 60%;
    min-height: 100svh;
    padding: clamp(7.8rem, 12vw, 11rem) clamp(2rem, 6.25vw, 8rem) clamp(2rem, 4vw, 4.25rem);
  }

  .patrick-hero__copy {
    margin: auto 0;
  }

  .patrick-hero__title {
    font-size: clamp(3.1rem, 5.9vw, 7.2rem);
  }

  .patrick-hero__contact {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
  }

  .patrick-hero__image-wrap {
    flex: 0 0 40%;
    min-height: 100svh;
    clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
    animation-name: patrick-image-reveal;
  }
}

@keyframes patrick-image-reveal-mobile { to { clip-path: polygon(0 12%, 100% 0, 100% 100%, 0 100%); } }

@media (prefers-reduced-motion: reduce) {
  .section_nav.patrick-site-header .nav_item-menu,
  .patrick-hero__brand,
  .patrick-hero__kicker,
  .patrick-hero__title,
  .patrick-hero__accent,
  .patrick-hero__intro,
  .patrick-hero__cta,
  .patrick-hero__contact,
  .patrick-hero__image-wrap,
  .patrick-hero__image { animation: none; opacity: 1; transform: none; }
  .patrick-hero__image-wrap { clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }
}

@media (prefers-reduced-motion: reduce) and (min-width: 48rem) {
  .patrick-hero__image-wrap {
    clip-path: polygon(25% 0, 100% 0, 100% 100%, 0 100%);
  }
}

#awwwards { display: none !important; }
.preloader { display: none !important; pointer-events: none !important; }

/* Local Webflow export fallback: keep content usable when the hosted runtime is absent. */
.local-preloader-bypass .preloader {
  display: none !important;
  pointer-events: none !important;
}

html.local-animation-fallback :is(
  .list-projets_item,
  .section_title,
  .services_item,
  .brands_title,
  .brands_dote,
  .play-marquee_item,
  .play-marquee_title,
  .footer_text,
  .footer_contact-mail,
  .footer_video-wrap,
  .works_text,
  .about-gallery_slider,
  [reveal-media="true"],
  .list-projets_wrap,
  .list-projets_infos_wrap,
  .awards_item,
  .hero_title,
  .section_nav,
  .hero_video-wrap
) {
  visibility: visible !important;
  opacity: 1 !important;
  translate: none !important;
  transform: none !important;
}

/* Lime System: dark green leads, lime directs attention, off-white keeps the page open. */
:root {
  --lime-paper: #f4f3ed;
  --lime-ink: #17221d;
  --lime-accent: #b6ff39;
  --lime-surface: #d9ddd7;
  --lime-muted: #55615b;
}

html,
body,
.page_main,
.section.section_list-projets,
.section.section_services,
.section.section_brands {
  color: var(--lime-ink) !important;
  background: var(--lime-paper) !important;
}

.section.section_services,
.section.section_brands {
  border-color: color-mix(in srgb, var(--lime-accent) 24%, transparent) !important;
}

.section_services .services_number,
.section_brands .brands_title,
.section_services .services_item_title {
  color: var(--lime-ink) !important;
  background: transparent !important;
}

.section_brands .brands_dote,
.section_services .service_dote {
  color: var(--lime-accent) !important;
  background-color: var(--lime-accent) !important;
}

.section.section_play-marquee,
.footer {
  color: var(--lime-ink) !important;
  background: var(--lime-paper) !important;
}

.footer .footer_contact-mail,
.footer .footer_link:hover {
  color: var(--lime-accent) !important;
}

.section_play-marquee .play-marquee_title {
  color: var(--lime-ink) !important;
}

.footer .service_dote,
.footer .link-arrow {
  color: var(--lime-accent) !important;
}

.footer .footer_link,
.footer .footer_link_text,
.footer .services_number,
.footer .services_list_item,
.footer .footer_item {
  color: var(--lime-ink) !important;
}

.footer .footer_link:hover,
.footer .footer_link:focus-visible {
  color: var(--lime-accent) !important;
}

.section_brands .brands_title {
  font-size: clamp(2rem, 4vw, 4.5rem) !important;
  line-height: .94 !important;
}

.section_brands .brands_img-wrap {
  width: min(34vw, 26rem) !important;
  height: auto !important;
  overflow: visible !important;
  background: var(--lime-paper);
}

.section_brands .brands_img,
.section_play-marquee .play-marquee_img {
  width: 100% !important;
  height: auto !important;
  max-height: 68svh;
  aspect-ratio: auto !important;
  object-fit: contain !important;
}

.section_play-marquee .play-marquee_container {
  animation-duration: 42s !important;
}

.section_play-marquee .play-marquee_img {
  border-color: rgb(23 34 29 / 22%);
}

/* Selected client work carousel, adapted from the supplied three-image layout. */
.patrick-work-showcase {
  width: 100%;
  padding: clamp(4.5rem, 9vw, 10rem) 1.25rem;
  color: var(--lime-ink);
  background: #f4f3ed;
}

.patrick-work-showcase__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: clamp(2.25rem, 5vw, 5rem);
  color: var(--lime-ink);
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.patrick-work-showcase__head h2,
.patrick-work-showcase__head span,
.patrick-work-showcase__content p,
.patrick-work-showcase__content h3 {
  margin: 0;
}

.patrick-work-showcase__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 2rem;
  max-width: 90rem;
  margin: 0 auto;
}

.patrick-work-showcase__stage {
  position: relative;
  min-height: 21rem;
  perspective: 1000px;
}

.patrick-work-showcase__image {
  position: absolute;
  top: 50%;
  left: 50%;
  width: min(77%, 20rem);
  height: 100%;
  object-fit: contain;
  border-radius: 1.15rem;
  background: var(--lime-surface);
  box-shadow: 0 1.25rem 3.5rem rgb(23 34 29 / 20%);
  opacity: 0;
  pointer-events: none;
  transition: transform .8s cubic-bezier(.4, 2, .3, 1), opacity .55s ease;
}

.patrick-work-showcase__image[data-position="active"] {
  z-index: 3;
  opacity: 1;
  transform: translate(-50%, -50%) scale(1) rotateY(0deg);
}

.patrick-work-showcase__image[data-position="previous"] {
  z-index: 2;
  opacity: .55;
  transform: translate(calc(-50% - clamp(3.5rem, 7vw, 6.8rem)), calc(-50% - clamp(2.5rem, 4vw, 4.5rem))) scale(.85) rotateY(15deg);
}

.patrick-work-showcase__image[data-position="next"] {
  z-index: 2;
  opacity: .55;
  transform: translate(calc(-50% + clamp(3.5rem, 7vw, 6.8rem)), calc(-50% - clamp(2.5rem, 4vw, 4.5rem))) scale(.85) rotateY(-15deg);
}

.patrick-work-showcase__image[data-position="hidden"] {
  z-index: 1;
  opacity: 0;
}

.patrick-work-showcase__content {
  display: grid;
  grid-template-rows: auto minmax(4.5rem, auto) minmax(1.6rem, auto) minmax(5.2rem, 1fr) auto;
  min-height: 24rem;
}

.patrick-work-showcase__count {
  margin-bottom: 1.15rem !important;
  color: var(--lime-ink);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
}

.patrick-work-showcase__title {
  min-height: 1.76em;
  color: var(--lime-ink);
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: clamp(2.5rem, 4.3vw, 5.4rem);
  font-weight: 750;
  letter-spacing: -.075em;
  line-height: .88;
}

.patrick-work-showcase__category {
  margin-top: .85rem !important;
  color: var(--lime-ink);
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: -.02em;
}

.patrick-work-showcase__description {
  max-width: 28rem;
  margin-top: 1.5rem !important;
  color: var(--lime-muted);
  font-size: clamp(1rem, 1.2vw, 1.15rem);
  line-height: 1.55;
}

.patrick-work-showcase__controls {
  display: flex;
  align-self: end;
  gap: 1rem;
  margin-top: 2.5rem;
}

.patrick-work-showcase__button {
  display: grid;
  width: 2.8rem;
  height: 2.8rem;
  place-items: center;
  border: 0;
  border-radius: 50%;
  color: var(--lime-paper);
  background: var(--lime-ink);
  font-size: 1.3rem;
  cursor: pointer;
  transition: color .2s ease, background .2s ease, transform .2s ease;
}

.patrick-work-showcase__button:hover,
.patrick-work-showcase__button:focus-visible {
  color: var(--lime-ink);
  background: var(--lime-accent);
  transform: translateY(-.15rem);
}

.patrick-work-showcase__button:focus-visible {
  outline: .18rem solid var(--lime-ink);
  outline-offset: .2rem;
  box-shadow: 0 0 0 .22rem var(--lime-surface);
}

@media (min-width: 48rem) {
  .patrick-work-showcase {
    padding-inline: clamp(1.5rem, 6vw, 7rem);
  }

  .patrick-work-showcase__grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(18rem, .85fr);
    gap: clamp(2.5rem, 7vw, 9rem);
  }

  .patrick-work-showcase__stage {
    min-height: clamp(21rem, 35vw, 32rem);
  }

  .patrick-work-showcase__image {
    width: min(74%, 29rem);
    border-radius: 1.5rem;
  }

  .patrick-work-showcase__image[data-position="previous"],
  .patrick-work-showcase__image[data-position="next"] {
    opacity: 1;
  }

  .patrick-work-showcase__content {
    max-width: 28rem;
    min-height: clamp(24rem, 29vw, 29rem);
  }
}

@media (prefers-reduced-motion: reduce) {
  .patrick-work-showcase__image,
  .patrick-work-showcase__button {
    transition: none;
  }
}

.patrick-certificates__item:focus-visible,
.patrick-footer-legal__link:focus-visible {
  outline: .18rem solid var(--lime-accent);
  outline-offset: .32rem;
}

.patrick-certificates {
  padding: clamp(4.5rem, 9vw, 10rem) clamp(1.25rem, 5vw, 6rem);
  color: var(--lime-ink);
  background: var(--lime-paper);
}

.patrick-certificates__heading {
  max-width: 16ch;
  margin: 0;
  color: inherit;
  font-family: var(--_typography---suisse-intl), Suisseintl, Arial, sans-serif;
  font-size: clamp(2.6rem, 5vw, 6rem);
  font-weight: 500;
  letter-spacing: -.07em;
  line-height: .88;
}

.patrick-certificates__intro {
  max-width: 38rem;
  margin: 1.25rem 0 2.5rem;
  color: var(--lime-muted);
  font-size: 1rem;
  line-height: 1.55;
}

.patrick-certificates__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
}

.patrick-certificates__item {
  display: grid;
  grid-template-rows: minmax(10rem, 1fr) auto;
  gap: .75rem;
  min-width: 0;
  color: inherit;
  text-decoration: none;
}

.patrick-certificates__image {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 10rem;
  border: 0;
  background: #f4f3ed;
  object-fit: contain;
  transition: transform .35s ease;
}

.patrick-certificates__item:hover .patrick-certificates__image {
  transform: translateY(-.3rem);
}

.patrick-certificates__label {
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .03em;
}

.footer .footer_video-wrap {
  display: block !important;
  height: clamp(10rem, 20vw, 18rem) !important;
  overflow: hidden;
  transform: none !important;
  background: transparent;
}

.patrick-footer-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

.footer {
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

.footer .footer_wrap {
  height: auto !important;
}

.footer .footer_top_infos {
  height: auto !important;
  min-height: clamp(22rem, 48svh, 34rem);
}

.footer .patrick-footer-list--compact {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 0 !important;
}

.footer .patrick-footer-list--compact .footer_item {
  width: auto !important;
  min-height: 12rem;
  border: 1px solid rgb(23 34 29 / 28%) !important;
}

.footer .patrick-footer-list--compact .footer_item + .footer_item {
  border-left: 0 !important;
}

.w-background-video--control,
#detach-button-host,
#qr-host {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.patrick-footer-legal {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem 1.25rem;
  margin-top: clamp(2.5rem, 5vw, 5rem);
}

.patrick-footer-legal__link {
  color: inherit;
  font-size: .78rem;
  font-weight: 700;
  text-decoration: none;
}

.patrick-footer-legal__link:hover {
  color: var(--lime-accent);
}

@media (min-width: 48rem) {
  .patrick-work-showcase__gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .patrick-certificates__grid {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

}

@media (max-width: 61.9375rem) {
  .section_play-marquee .play-marquee_container {
    animation-duration: 48s !important;
  }
}

@media (max-width: 47.9375rem) {
  .section_play-marquee .play-marquee_container {
    animation-duration: 44s !important;
  }

  .footer .patrick-footer-list--compact {
    grid-template-columns: 1fr;
  }

  .footer .patrick-footer-list--compact .footer_item + .footer_item {
    border-top: 0 !important;
    border-left: 1px solid rgb(23 34 29 / 28%) !important;
  }
}

@media (max-width: 29.9375rem) {
  .section_play-marquee .play-marquee_container {
    animation-duration: 40s !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .patrick-work-showcase__image,
  .patrick-certificates__image {
    transition: none;
  }
}

/* Mobile-only refinements. Desktop remains intentionally untouched. */
.patrick-mobile-photo-carousel {
  display: none;
}

@media (max-width: 47.9375rem) {
  .patrick-hero__content {
    flex: 0 0 auto;
    min-height: 0;
    padding: 6.25rem 1.25rem 1.5rem;
    gap: 1.75rem;
  }

  .patrick-hero__copy {
    margin: 2.25rem 0 0;
  }

  .patrick-hero__contact {
    margin-top: .25rem;
  }

  .patrick-hero__image-wrap {
    min-height: clamp(21rem, 62svh, 30rem);
  }

  .patrick-hero__copy > .patrick-hero__image-wrap {
    width: calc(100% + 2.5rem);
    min-height: clamp(19rem, 86vw, 24rem);
    margin: -.5rem -1.25rem 1.5rem;
  }

  .patrick-hero__image {
    object-position: 58% 32%;
  }

  .section_list-projets {
    padding-top: 10rem;
  }

  .section_list-projets .container {
    max-width: none;
    padding-inline: 0;
  }

  .section_list-projets .list-projets_list {
    display: grid;
    grid-template-columns: none !important;
    grid-auto-flow: column;
    grid-auto-columns: min(82vw, 20rem);
    gap: 1rem;
    padding-inline: 1.25rem;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-padding-inline: 1.25rem;
    scroll-snap-type: inline mandatory;
    scrollbar-width: none;
  }

  .section_list-projets .list-projets_list::-webkit-scrollbar {
    display: none;
  }

  .section_list-projets .list-projets_item {
    min-width: 0;
    scroll-snap-align: start;
  }

  .section_list-projets .list-projets_img_wrap {
    aspect-ratio: 4 / 5 !important;
  }

  .section_list-projets .list-projets_video {
    aspect-ratio: auto !important;
    object-fit: cover !important;
  }

  .patrick-work-showcase {
    padding: 4.5rem 1.25rem;
  }

  .patrick-work-showcase__head {
    margin-bottom: 1.5rem;
  }

  .patrick-work-showcase__grid {
    position: relative;
    gap: 1.25rem;
  }

  .patrick-work-showcase__stage {
    min-height: clamp(20rem, 105vw, 25rem);
    touch-action: pan-y;
    user-select: none;
  }

  .patrick-work-showcase__image {
    width: min(82%, 19rem);
  }

  .patrick-work-showcase__content {
    display: block;
    min-height: 0;
  }

  .patrick-work-showcase__title {
    min-height: 0;
    font-size: clamp(2.35rem, 11vw, 3.35rem);
  }

  .patrick-work-showcase__description {
    min-height: 0;
  }

  .patrick-work-showcase__stage > .patrick-work-showcase__controls {
    position: absolute;
    z-index: 6;
    right: auto;
    bottom: .25rem;
    left: 50%;
    margin: 0;
    transform: translateX(-50%);
  }

  .patrick-work-showcase__button {
    width: 3rem;
    height: 3rem;
  }

  .section_brands .brands_collection {
    display: none;
  }

  .section_brands .section_title {
    max-width: 18ch;
    font-size: clamp(2.1rem, 10vw, 3.1rem) !important;
    line-height: .96 !important;
    white-space: normal !important;
  }

  .patrick-mobile-photo-carousel {
    display: grid;
    justify-items: center;
    gap: 1rem;
    padding-top: 2rem;
    overflow: hidden;
  }

  .patrick-mobile-photo-carousel__stage {
    width: min(78vw, 19rem);
    aspect-ratio: 1;
    overflow: hidden;
    background: var(--lime-surface);
    touch-action: pan-y;
  }

  .patrick-mobile-photo-carousel__image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    user-select: none;
  }

  .patrick-mobile-photo-carousel__label {
    min-height: 1.5em;
    margin: 0;
    color: var(--lime-ink);
    font-size: 1rem;
    font-weight: 650;
    line-height: 1.35;
    text-align: center;
  }

  .patrick-mobile-photo-carousel__buttons {
    position: relative;
    width: 100%;
    height: 8rem;
    overflow: hidden;
  }

  .patrick-mobile-photo-carousel__button {
    position: absolute;
    top: .6rem;
    left: 50%;
    width: 3rem;
    height: 3rem;
    margin: 0;
    padding: 0;
    overflow: hidden;
    border: 0;
    border-radius: 50%;
    background: var(--lime-surface);
    box-shadow: 0 .45rem 1.25rem rgb(23 34 29 / 18%);
    cursor: pointer;
    opacity: var(--carousel-opacity, 0);
    transform: translate(calc(-50% + var(--carousel-x, 0px)), var(--carousel-y, 0px)) rotate(var(--carousel-rotate, 0deg)) scale(var(--carousel-scale, .65));
    transition: transform .32s cubic-bezier(.22, 1, .36, 1), opacity .24s ease, box-shadow .24s ease;
    -webkit-tap-highlight-color: transparent;
  }

  .patrick-mobile-photo-carousel__button[aria-current="true"] {
    z-index: 3;
    box-shadow: 0 0 0 .2rem var(--lime-accent), 0 .55rem 1.4rem rgb(23 34 29 / 24%);
  }

  .patrick-mobile-photo-carousel__button:focus-visible {
    outline: .18rem solid var(--lime-ink);
    outline-offset: .22rem;
  }

  .patrick-mobile-photo-carousel__thumbnail {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
  }

  .section_play-marquee .play-marquee_collection {
    padding-inline: 1.25rem !important;
  }

  .section_play-marquee .play-marquee_list {
    gap: 1.25rem !important;
  }

  .section_play-marquee .play-marquee_item {
    width: min(72vw, 17rem);
    max-width: none !important;
  }

  .section_play-marquee .play-marquee_wrap {
    gap: .75rem;
  }
}

@media (prefers-reduced-motion: reduce) and (max-width: 47.9375rem) {
  .patrick-mobile-photo-carousel__button {
    transition: none;
  }
}
