@import url("https://p.typekit.net/p.css?s=1&k=wdg5nfi&ht=tk&f=39496.39497&a=95222337&app=typekit&e=css"); :root { --main-font: "neue-haas-grotesk-display", sans-serif; --font-size-S: 0.9rem; --font-size-L: 1.6rem; --font-size-XL: 11vw; --line-height-S: calc(var(--font-size-S) * 1.2); --text-color: black; --bg-color: white; --body-margin: 0.6rem; --nav-margin: 1rem; --apparition-duration: 0.3s; --disparition-duration: 0.3s; --indentation: 2rem; --low-opacity: 0.2; --half-screen: 50vw; --index-width: 40rem; --close-cursor: url(/assets/images/close-cursor.png), crosshair; --main-title-top: -0.7vw; --mix-blend-color: white; } button { border: none; padding: 0; margin: 0; text-align: inherit; font: inherit; cursor: pointer; background-color: transparent; color: inherit; } nav li { list-style: none; } h1, h3 { font-weight: normal; font-size: inherit; line-height: inherit; margin: 0; } @font-face { font-family: "neue-haas-grotesk-display"; src: url("https://use.typekit.net/af/174ae3/00000000000000007735bb5a/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3") format("woff2"), url("https://use.typekit.net/af/174ae3/00000000000000007735bb5a/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3") format("woff"), url("https://use.typekit.net/af/174ae3/00000000000000007735bb5a/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=n5&v=3") format("opentype"); font-display: auto; font-style: normal; font-weight: 500; font-stretch: normal; } @font-face { font-family: "neue-haas-grotesk-display"; src: url("https://use.typekit.net/af/db1ce7/00000000000000007735bb5e/31/l?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3") format("woff2"), url("https://use.typekit.net/af/db1ce7/00000000000000007735bb5e/31/d?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3") format("woff"), url("https://use.typekit.net/af/db1ce7/00000000000000007735bb5e/31/a?primer=7cdcb44be4a7db8877ffa5c0007b8dd865b3bbc383831fe2ea177f62257a9191&fvd=i5&v=3") format("opentype"); font-display: auto; font-style: italic; font-weight: 500; font-stretch: normal; } body { font-family: var(--main-font); font-size: var(--font-size-S); line-height: var(--line-height-S); margin: var(--body-margin); top: 0; position: absolute; left: 0; right: 0; bottom: 0; } a { color: var(--text-color); } p { box-sizing: border-box; margin: 0; width: -moz-fit-content; width: fit-content; max-width: 100%; } p + p { margin-top: calc(var(--line-height-S) / 2); } ul { list-style: none; margin: 0; padding: 0; margin: 0; } header { width: calc(100vw - var(--body-margin)); position: fixed; z-index: 3; height: auto; overflow: visible; } nav.main-menu { width: calc(100% - var(--body-margin) * 2); opacity: 0; transition-duration: var(--disparition-duration); transition-property: opacity; position: absolute; pointer-events: none; z-index: 2; /*! margin: var(--margin-XL); */ top: 0; font-size: var(--font-size-XL); padding-bottom: 4rem; } nav.main-menu ul { margin-top: var(--line-height-S); padding: 0; font-size: var(--font-size-L); z-index: 2; position: absolute; } nav.main-menu ul li { float: left; color: var(--text-color); } nav.main-menu ul li a { list-style: none; text-decoration: none; text-transform: initial; cursor: pointer; } .title-nav { font-size: var(--font-size-XL); line-break: strict; left: -0.65vw; position: relative; top: var(--main-title-top); margin-top: var(--body-margin); line-height: 0.75; } .title-nav a { text-decoration: none; padding-bottom: var(--nav-margin); } .title-nav-mobile { display: none; } .main-title { font-size: var(--font-size-S); top: var(--body-margin); cursor: pointer; width: -moz-fit-content; width: fit-content; position: fixed; } .main-title a { text-decoration: none; } .main-title:hover ~ nav { opacity: 1; transition-duration: var(--apparition-duration); transition-property: opacity; pointer-events: all; z-index: 1; } header:hover ~ main { opacity: var(--low-opacity); transition-duration: var(--apparition-duration); } main { transition-duration: var(--disparition-duration); transition-property: opacity; } .main-title:hover { opacity: 0; transition-duration: var(--apparition-duration); } .main-title:has(+ nav:hover) { opacity: 0; transition-duration: var(--apparition-duration); } nav.main-menu:hover { opacity: 1; position: absolute; pointer-events: all; z-index: 1; } [data-template=home] nav li .nav-item-home { text-decoration: underline; } [data-template=index] nav li .nav-item-projects { text-decoration: underline; } [data-template=infos] nav li .nav-item-about { text-decoration: underline; } /* SPECIFIC TO HOME */ [data-template=home] .main-title { font-size: var(--font-size-XL); line-break: strict; left: -0.65vw; position: relative; top: var(--main-title-top); margin-top: var(--body-margin); line-height: 0.75; } [data-template=home] .main-title a { color: transparent; } [data-template=home] header { mix-blend-mode: difference; } [data-template=home] .main-title span { color: var(--mix-blend-color); } @media (min-width: 1500px) { :root { --main-title-top: -0.4vw; } } /* MOBILE-MENU */ .toggle-mobile-menu { position: fixed; bottom: 0; width: 100%; left: 0; font-size: var(--font-size-XL); display: flex; justify-content: center; line-height: normal; } #mobile-menu { padding: 0; border: none; justify-content: center; align-items: center; overflow: visible; display: none; position: fixed; bottom: var(--body-margin); width: 100%; left: 0; box-sizing: border-box; justify-content: center; z-index: 3; } [data-template=home] .mobile-menu-toggle { color: var(--mix-blend-color); } #mobile-menu ul { margin-top: 0; display: flex; text-align: center; } #mobile-menu .title-nav { position: fixed; padding: var(--body-margin); } button#mobile-menu-toggle { display: none; } #mobile-menu-wrapper { display: none; } #home-slideshow { position: fixed; top: 0; left: 0; width: 100%; height: 100%; } #home-slideshow .slide { display: none; width: 100%; height: 100%; } #home-slideshow .slide.active { display: block; } #home-slideshow .slide.portrait-pair.active { display: flex; } #home-slideshow .slide > picture, #home-slideshow .slide > video { width: 100%; height: 100%; } #home-slideshow .slide.portrait-pair > picture, #home-slideshow .slide.portrait-pair > video { width: 50%; height: 100%; } #home-slideshow img, #home-slideshow video { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; } #home-slideshow button { position: absolute; width: 50%; height: 100%; } #home-slideshow button.prev { left: 0; cursor: w-resize; } #home-slideshow button.next { right: 0; cursor: e-resize; } body[data-template=index] main { grid-template-columns: 8; } body[data-template=index] a.nav-item-index { text-decoration: underline; } body[data-template=index] .filter-menu { font-size: var(--font-size-L); position: sticky; opacity: 1; line-height: normal; pointer-events: all; margin: 0 0 calc(var(--line-height-S) * 2) 0; width: calc(var(--index-width) - var(--body-margin)); top: var(--body-margin); padding-top: calc(var(--line-height-S) * 3); z-index: 2; max-width: 100%; } body[data-template=index] .filter-menu button.active { text-decoration: underline; } body[data-template=index] .filter-menu ul { display: flex; flex-wrap: wrap; -moz-column-gap: calc(2 * var(--body-margin)); column-gap: calc(2 * var(--body-margin)); } body[data-template=index] .projects-index li.filtered-out { display: none; } body[data-template=index] .projects-index li section.toggle .project-slideshow .slide:not(.active) { display: none; } body[data-template=index] .projects-index .project-description-mobile { display: none; } body[data-template=index] .projects-index button.next-project { display: none; } body[data-template=index] ul.projects-index { display: flex; flex-direction: column; gap: var(--line-height-S); } body[data-template=index] { /* PROJECT TOGGLE */ } body[data-template=index] .fix { width: 100%; z-index: 1; position: relative; /*! margin-top: var(--line-height-S); */ display: grid; grid-template-columns: var(--index-width) auto; pointer-events: none; mix-blend-mode: difference; } body[data-template=index] .toggle { display: none; } body[data-template=index] .toggle p { z-index: 1; position: relative; width: calc(0.75 * var(--index-width) - var(--body-margin)); display: none; padding-top: var(--line-height-S); } body[data-template=index] .fix:hover + .toggle { display: auto; } body[data-template=index] .fix .date { text-align: right; } body[data-template=index] .closer { cursor: var(--close-cursor); } body[data-template=index] .projects-index:has(.selected) .project:not(.selected) { opacity: var(--low-opacity); pointer-events: none; } body[data-template=index] .projects-index:has(.selected) .project:not(.selected) .fix:hover + .toggle .project-slideshow-container { display: none; } body[data-template=index] .toggle .project-slideshow-container { display: none; } body[data-template=index] .fix:hover + .toggle .project-slideshow-container { display: block; } body[data-template=index] .selected .toggle .project-slideshow-container { display: block; } body[data-template=index] .project:not(.selected):hover { opacity: 1; } body[data-template=index] .project:not(.selected):hover .toggle { display: block; } body[data-template=index] .project > .toggle > .close-button { display: none; } body[data-template=index] .selected { opacity: 1; } body[data-template=index] .selected .toggle { display: grid; grid-template-columns: calc(0.75 * var(--index-width) - var(--body-margin)) calc(0.25 * var(--index-width)); gap: var(--body-margin); } body[data-template=index] .selected .toggle p { display: block; } body[data-template=index] .selected .slide-number { display: block; } body[data-template=index] .selected .project-description { display: block; } body[data-template=index] .selected .toggle > .close-button { display: block; min-height: calc(var(--line-height-S) * 2); margin-bottom: calc(-1 * var(--line-height-S)); } body[data-template=index] .slide-number { text-align: right; display: none; padding-right: var(--body-margin); color: var(--mix-blend-color); } body[data-template=index] .project-toggler.grid { display: grid; grid-template-columns: calc(0.5 * var(--index-width) - var(--body-margin)) calc(0.3333333333 * var(--index-width) - var(--body-margin)) calc(0.1666666667 * var(--index-width) - var(--body-margin)); gap: var(--body-margin); pointer-events: all; cursor: inherit; } body[data-template=index] .project-toggler span { cursor: pointer; } body[data-template=index] .project-description { margin-bottom: var(--line-height-S); display: none; } body[data-template=index] { /* PROJECT SLIDESHOW */ } body[data-template=index] .project-slideshow { width: -moz-fit-content; width: fit-content; height: -moz-fit-content; height: fit-content; box-sizing: border-box; max-width: 100%; right: 0; position: absolute; } body[data-template=index] .project-slideshow picture img, body[data-template=index] .project-slideshow video.slide { max-width: 100%; max-height: calc(100vh - var(--body-margin) * 2); vertical-align: bottom; width: auto; height: auto; } body[data-template=index] picture { inset: 0; } body[data-template=index] .project-slideshow-container { display: block; position: fixed; height: 100%; background-color: white; top: var(--body-margin); right: var(--body-margin); bottom: var(--body-margin); left: calc(var(--index-width) + var(--body-margin)); } body[data-template=index] button.next { position: absolute; top: 0; height: 100%; border: none; cursor: e-resize; z-index: 1; width: 100%; padding: 0; } [data-template=infos] header { position: relative; } [data-template=infos] p { margin: 0; } [data-template=infos] .main-title { font-size: var(--font-size-XL); line-break: strict; left: -0.65vw; position: relative; top: var(--main-title-top); margin-top: var(--body-margin); line-height: 0.75; } [data-template=infos] .main-title:has(+ nav:hover) { opacity: 1; } [data-template=infos] .title-nav { opacity: 0; } [data-template=infos] a.nav-item-infos { text-decoration: underline; } [data-template=infos] main { position: relative; padding-top: calc(var(--line-height-S) + 0.35rem); inset: 0; padding-bottom: var(--font-size-XL); overflow: auto; padding-right: 0; padding-left: 0; } [data-template=infos] .info-grid { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: calc(var(--body-margin) * 2); margin-top: calc(var(--font-size-L) + var(--line-height-S)); max-width: 1700px; } [data-template=infos] .info-grid h3 { text-decoration: underline; } [data-template=infos] .info-grid .presentation, [data-template=infos] .info-grid .clients { margin-top: var(--line-height-S); } [data-template=infos] .info-grid .presentation { font-size: var(--font-size-L); line-height: 1.2; } @media screen and (max-width: 1000px) { :root { --slider-height: 66vh; --font-size-XL: 12.5vw; --font-size-L: calc(var(--font-size-S) * 2) ; --font-size-S: 1rem; } .main-title { font-size: var(--font-size-XL); line-break: strict; left: -0.65vw; position: relative; top: var(--main-title-top); margin-top: var(--body-margin); line-height: 0.75; } main { position: fixed; top: 0; bottom: 0; left: 0; width: 100%; padding: var(--font-size-XL) var(--body-margin) var(--body-margin) var(--body-margin); box-sizing: border-box; } main:has(nav li.selected) { top: var(--slider-height); padding-top: 0; } .main-menu { display: none; } #mobile-menu { justify-content: center; align-items: center; inset: 0; } #mobile-menu ul, #mobile-menu h1 { z-index: 4; } #mobile-menu .backdrop { inset: 0; background-color: white; opacity: calc(1 - var(--low-opacity)); position: absolute; z-index: 3; cursor: pointer; } #mobile-menu .title-nav { position: absolute; line-break: strict; left: -0.65vw; top: var(--main-title-top); margin-top: var(--body-margin); line-height: 0.75; } #mobile-menu ul { display: flex; font-size: var(--font-size-L); } #mobile-menu-wrapper { position: fixed; bottom: 0; width: calc(100vw - var(--body-margin) * 2); display: flex; justify-content: center; z-index: 4; } #mobile-menu.visible { display: flex; } button#mobile-menu-toggle { font-size: var(--font-size-XL); position: fixed; bottom: 0; height: var(--font-size-XL); line-height: var(--font-size-XL); display: block; margin: 0 auto; } header:hover ~ main { opacity: 1; transition-duration: 0; } .main-title:hover { opacity: 1; transition-duration: 0; } .main-title:has(+ nav:hover) { opacity: 1; transition-duration: 0; } #home-slideshow img:not(.slide.active img) { display: none; } #home-slideshow .slide.portrait-pair.active { display: block; } .mix-blend-bg { inset: 0; background-color: white; width: auto; z-index: -1; height: var(--slider-height); } nav ul li a { text-decoration: none; } body[data-template=home] .nav-item-home { text-decoration: underline; } body[data-template=home] #mobile-menu-wrapper { color: var(--mix-blend-color); mix-blend-mode: difference; } body[data-template=home] header:has(+ main > #mobile-menu.visible) { display: none; } body[data-template=index] .close-button.closer { position: fixed; top: var(--slider-height); margin-top: calc(-1 * var(--line-height-S) - var(--body-margin)); right: var(--body-margin); font-size: var(--font-size-S); cursor: pointer; mix-blend-mode: difference; color: var(--mix-blend-color); min-height: 0 !important; } body[data-template=index] .close-button.closer::before { content: "Fermer"; } body[data-template=index] .selected .toggle { display: block; } body[data-template=index] .project-toggler.grid { grid-template-columns: 3fr 2fr; width: 100%; } body[data-template=index] .fix { display: block; } body[data-template=index] .fix .date { display: none; } body[data-template=index] .fix:hover + .toggle .project-slideshow-container { display: none; } body[data-template=index] header:has(+ main > .projects-index > .selected) { display: none; } body[data-template=index] .project-slideshow-container { position: fixed; top: 0; width: 100vw; left: 0; margin: 0; height: var(--slider-height); } body[data-template=index] .project-slideshow-container button.all-projects-closer { display: none; } body[data-template=index] .project-slideshow { inset: 0; width: auto; height: auto; } body[data-template=index] .project-slideshow picture, body[data-template=index] .project-slideshow video.slide { inset: 0; position: absolute; } body[data-template=index] .project-slideshow picture img, body[data-template=index] .project-slideshow video.slide { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; } body[data-template=index] main { z-index: 2; } body[data-template=index] ul.projects-index { position: absolute; top: 0; box-sizing: border-box; width: 100vw; height: 100vh; overflow: auto; padding-right: 1.5rem; padding-top: calc(var(--font-size-XL) + var(--line-height-S) * 1); padding-bottom: calc(var(--font-size-XL)); } body[data-template=index] ul.projects-index:has(.selected) { top: var(--slider-height); height: calc(100vh - var(--slider-height)); padding-top: var(--body-margin); padding-bottom: calc(var(--font-size-XL)); } body[data-template=index] .selected .fix:hover + .toggle { display: block; } body[data-template=index] .fix:hover + .toggle { display: none; } body[data-template=index] .selected .fix:hover .slide-number { display: block; } body[data-template=index] .slide-number { position: fixed; top: var(--slider-height); margin-top: calc(-1 * var(--line-height-S) - var(--body-margin)); left: var(--body-margin); padding-right: 0; } body[data-template=index] .projects-index .project-description-mobile { display: block; } body[data-template=index] .projects-index .project-description { display: none; } body[data-template=index] .projects-index .filter-menu { padding-top: 0; } body[data-template=index] .projects-index:has(.project.selected) .filter-menu { display: none; } body[data-template=index] .projects-index:has(.project.selected) .project:not(.selected) { display: none; } body[data-template=index] .projects-index:has(.project.selected) button.next-project { display: block; width: 100%; text-transform: capitalize; text-decoration: underline; text-align: right; } body[data-template=infos] main { padding-top: var(--line-height-S); } body[data-template=infos] main .info-grid { display: block; margin-top: 0; } body[data-template=infos] main .info-grid .main-infos { max-width: 800px; } body[data-template=infos] main .info-grid .secondary-infos { margin-top: var(--line-height-S); max-width: 500px; } } @media (max-width: 687px) { [data-template=infos] div { padding-right: var(--body-margin); width: calc(100% - var(--body-margin)); } }/*# sourceMappingURL=style.css.map */