:root{--paper:#f4f2ed;--ink:#17213a;--muted:#626778;--line:#d8d7d3;--mist:#e1e6f5;--blue:#2349c4;--dark:#17213a;--gold:#a24b36;--light:#fcfbf8;color-scheme:light;--ease:cubic-bezier(.2,.7,.2,1)}:root[data-theme=dark]{--paper:#10182b;--ink:#f4f2ed;--muted:#b8bfd3;--line:#303b57;--mist:#202e52;--blue:#e1e6f5;--gold:#e49b84;--light:#1b2642;color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);transition:background .45s,color .45s;font-family:Lora,Georgia,serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,nav,.identity,.button,.text-link,.small,.email,.preview-top{font-family:Manrope,Arial,sans-serif}h1,h2,h3,p{margin:0}h1{font-size:clamp(48px,5.5vw,80px);font-weight:600;line-height:1.14;letter-spacing:-.045em}h2{font-size:clamp(32px,3.1vw,46px);font-weight:600;letter-spacing:-.04em;line-height:1.25}h3{font-size:24px;line-height:1.35;letter-spacing:-.025em;font-weight:600}p{font-size:16px;line-height:1.8;color:var(--muted)}.shell{width:min(1296px,calc(100% - 144px));margin-inline:auto}.section{padding-block:96px}.serif{font-family:Lora,Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.04em}.eyebrow,.micro,.footer-bottom{font-family:"IBM Plex Mono",monospace;font-size:10px;font-weight:400;letter-spacing:.035em;line-height:1.7}.eyebrow{color:var(--gold);text-transform:uppercase;margin-bottom:28px}.micro{font-size:10px}.small{font-size:12px;line-height:1.65;color:var(--muted)}.header{height:104px;display:flex;align-items:center;gap:36px;font-size:12px}.identity{font-size:12px;line-height:1.2;letter-spacing:-.04em;font-weight:800;flex:1}.header nav{display:flex;gap:28px;align-items:center}.header a{transition:opacity .2s}.header a:hover{opacity:.6}.nav-actions{display:flex;align-items:center;gap:24px;margin-left:auto}.theme-toggle{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;transition:transform .4s,border .3s}.theme-toggle:hover{transform:rotate(-15deg);border-color:var(--gold)}.theme-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.hero{padding-top:64px;padding-bottom:48px}.hero>.eyebrow{color:var(--muted);font-size:10px}.hero-main{display:flex;justify-content:space-between;align-items:center;gap:60px}.hero h1{font-size:clamp(56px,5.9vw,88px);line-height:1.16}.line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.04em}.line>span{display:block;animation:title-in 1.15s var(--ease) both}.line:nth-child(2)>span{animation-delay:.12s}.line:nth-child(3)>span{animation-delay:.24s}.hero .serif{font-size:1.1em;color:var(--blue)}.orbit{width:30%;max-width:410px;stroke:var(--blue);stroke-width:.85;transform:rotate(var(--scroll-turn,0deg));animation:orb-in 1.8s var(--ease) both;flex-shrink:0}.orbit-dot{fill:#b75d45;stroke:none}.hero-intro{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin-top:64px}.hero-intro p{max-width:700px;font-size:16px}.button{display:inline-flex;align-items:center;gap:32px;justify-self:start;background:var(--ink);color:var(--paper);padding:18px 22px;font-size:12px;transition:transform .3s,background .3s}.button:hover{transform:translateY(-4px)}.hero-bottom{border-top:1px solid var(--line);padding-top:28px;margin-top:56px;display:flex;justify-content:space-between;gap:30px;color:var(--muted)}.gold{color:var(--gold)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:56px}.section-heading p{font-size:14px}.section-heading .eyebrow{font-size:10px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.project-visual{position:relative;background:#17213a;color:#fcfbf8;overflow:hidden;isolation:isolate;height:clamp(480px,47vw,800px)}.project-visual.cover{height:540px}.project-image-link{display:block}.scene{position:absolute;left:0;top:16%;width:100%;height:64%;object-fit:cover;object-position:center;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent),linear-gradient(to bottom,transparent,#000 15%,#000 80%,transparent);mask-composite:intersect;transition:transform 1.1s var(--ease),filter .8s}.project-image-link:hover .scene{transform:scale(1.035)}.visual-top{position:absolute;inset:28px 28px auto;display:flex;justify-content:space-between;align-items:center;gap:16px}.brand{width:145px;height:auto;max-height:62px;object-fit:contain;object-position:left}.brand.hayatid{filter:brightness(0) invert(1)}.brand.enactus{filter:brightness(0) invert(1);width:130px}.visual-top .micro{font-size:9px;white-space:nowrap}.visual-bottom{position:absolute;left:28px;right:28px;bottom:30px}.visual-bottom h3{font-size:clamp(32px,3.2vw,50px);line-height:1.12;letter-spacing:-.045em;margin-bottom:20px}.visual-bottom .micro{color:#e49b84;font-size:9px}.card-heading{display:flex;gap:22px;margin-top:28px;align-items:start;min-height:70px}.card-heading>.micro{color:var(--gold);padding-top:8px}.card-heading .small{display:block;margin-top:8px}.title-logo{width:150px;height:auto}.project-card>p{font-size:14px;margin:16px 0 24px}.detail-link{border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;font-size:12px}.text-link{font-size:12px;display:inline-flex;gap:12px;align-items:center}.text-link span{display:inline-block;transition:transform .3s}.text-link:hover span{transform:translate(3px,-3px)}.secondary-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:76px}.secondary-grid h3{margin-top:26px}.secondary-grid p{font-size:14px;margin:14px 0 24px}.web-collage{display:block;position:relative;height:310px;background:var(--mist);overflow:hidden}.web-collage img{position:absolute;width:74%;height:auto;box-shadow:0 16px 40px #17213a35;transition:transform .8s var(--ease)}.web-collage img:first-child{top:28px;left:24px;transform:rotate(-6deg)}.web-collage img:last-child{bottom:24px;right:24px;transform:rotate(5deg)}.web-collage:hover img:first-child{transform:rotate(-3deg) translateY(-5px)}.web-collage:hover img:last-child{transform:rotate(2deg) translateY(5px)}.estate-art{display:flex;flex-direction:column;justify-content:space-between;gap:24px;background:#17213a;color:#fcfbf8;padding:32px;min-height:310px;overflow:hidden;position:relative}.estate-art:after{content:"";position:absolute;width:300px;height:300px;border:1px solid #b75d4540;border-radius:50%;right:-130px;bottom:-160px;transition:transform 1s}.estate-art:hover:after{transform:scale(1.4)}.estate-art .serif{font-size:38px;line-height:1.25}.estate-art .micro{font-size:9px;color:#cbd3ec}.about,.contribution{background:#17213a;color:#fcfbf8}.about .eyebrow,.contribution .eyebrow{color:#c3cceb}.about-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:100px;align-items:center}.about h2{font-size:clamp(32px,3vw,44px)}.about p{color:#d8def0}.about .small{color:#d8def0;margin-top:24px}.engagement-list{margin-top:36px}.engagement-list>div{padding:24px 0;border-bottom:1px solid var(--line)}.engagement-list h3{font-size:16px;font-weight:500}.engagement-list p{font-size:13px;margin-top:8px}.footer{padding-top:40px;padding-bottom:32px}.footer h2{font-size:clamp(38px,4.3vw,62px);line-height:1.2;margin-bottom:32px}.footer>p:not(.eyebrow){font-size:14px;max-width:700px}.email{display:inline-flex;align-items:center;gap:10px;font-size:clamp(12px,1.7vw,21px);margin-top:32px;word-break:break-word}.footer-bottom{border-top:1px solid var(--line);margin-top:76px;padding-top:28px;display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:9px}.project-intro{padding-top:48px;padding-bottom:72px}.project-intro h1{max-width:1100px}.detail-logo{width:310px;height:auto}.subtitle{font-size:clamp(24px,2.6vw,36px);color:var(--blue);margin-top:28px}.role{margin:28px 0;border-bottom:1px solid var(--line);padding-bottom:28px}.project-description{max-width:900px;margin-bottom:48px}.project-intro .estate-art{min-height:300px}.contribution-text{font-size:clamp(22px,2.1vw,31px);font-family:Manrope,sans-serif;line-height:1.6;color:#fcfbf8;max-width:1080px}.contribution .micro{color:#cbd3ec;margin-top:40px}.project-body h2{margin-bottom:40px}.milestones{margin:0}.milestones>div{display:grid;grid-template-columns:1fr 1.5fr;gap:48px;border-top:1px solid var(--line);padding:28px 0}.milestones dt{font-family:Manrope,sans-serif;font-size:20px;font-weight:600}.milestones dd{margin:0;color:var(--muted);font-size:15px;line-height:1.8}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:64px}.gallery figure{margin:0}.blended{width:100%;height:340px;object-fit:cover;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent),linear-gradient(0deg,transparent,#000 14%,#000 90%,transparent);mask-composite:intersect}.gallery figcaption{margin-top:12px;color:var(--muted)}.project-links{margin-top:40px}.site-previews{display:grid;gap:72px}.preview-top{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:24px}.preview-top .micro{color:var(--gold)}.browser-preview{display:block;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--mist);box-shadow:0 20px 60px #17213a12;transition:transform .7s var(--ease)}.browser-preview:hover{transform:translateY(-6px)}.browser-bar{display:flex;align-items:center;height:36px;gap:6px;padding:0 14px;font:10px "IBM Plex Mono",monospace;color:var(--muted)}.browser-bar i{display:block;width:7px;height:7px;background:var(--muted);opacity:.45;border-radius:50%}.browser-bar span{margin:auto}.browser-bar b{font-weight:400}.browser-preview img{width:100%;height:auto}.site-previews article>p{margin:24px 0 14px}.next-project{padding-block:24px 80px;display:flex;flex-direction:column;gap:20px;border-top:1px solid var(--line)}.next-project .micro{color:var(--gold)}.next-project>a{font:600 clamp(26px,3vw,40px) Manrope,sans-serif}.skip{position:fixed;top:12px;left:12px;background:var(--ink);color:var(--paper);padding:12px;z-index:99;transform:translateY(-200%)}.skip:focus{transform:none}:focus-visible{outline:2px solid var(--gold);outline-offset:5px}.motion-ready [data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .85s var(--ease),transform .85s var(--ease)}.motion-ready [data-reveal].is-visible{opacity:1;transform:none}:root[data-theme=dark] .title-logo,:root[data-theme=dark] .detail-logo{filter:brightness(0) invert(1)}@keyframes title-in{from{transform:translateY(110%);opacity:.2}to{transform:translateY(0);opacity:1}}@keyframes orb-in{from{opacity:0;clip-path:inset(100% 0 0)}to{opacity:1;clip-path:inset(0)}}@view-transition{navigation:auto}::view-transition-old(root){animation:exit .25s ease both}::view-transition-new(root){animation:enter .45s var(--ease) both}@keyframes exit{to{opacity:0;transform:translateY(-8px)}}@keyframes enter{from{opacity:0;transform:translateY(16px)}}@media(min-width:1600px){.hero{padding-block:90px 64px}}@media(max-width:1000px){.shell{width:calc(100% - 72px)}.header{gap:24px}.header nav{gap:20px}.hero-main{gap:30px}.hero h1{font-size:clamp(50px,6.3vw,68px)}.orbit{width:29%}.project-visual.cover{height:460px}.visual-top{inset:22px 20px auto}.visual-top .micro{font-size:8px}.brand{width:115px}.brand.enactus{width:100px}.visual-bottom{left:22px;right:22px}.visual-bottom h3{font-size:34px}.about-grid{gap:48px}.web-collage,.secondary-grid .estate-art{height:260px;min-height:260px}.estate-art .serif{font-size:32px}}@media(max-width:650px){.shell{width:calc(100% - 48px)}.header{height:88px;gap:16px}.header nav{gap:16px}.header:not(:has(nav a[href="/#projets"])) nav{display:none}.header nav a{font-size:11px}.identity{font-size:11px}.nav-actions{gap:16px}.talk{font-size:11px}.theme-toggle{width:42px;height:42px}.header:has(nav a[href="/#projets"]) .talk{display:none}.hero{padding-top:32px}.hero>.eyebrow{font-size:8px}.hero-main{display:block}.hero h1{font-size:clamp(42px,10vw,64px)}.orbit{width:68%;max-width:260px;display:block;margin:32px auto 20px}.hero-intro{grid-template-columns:1fr;gap:28px;margin-top:24px}.hero-intro p{font-size:14px}.button{font-size:11px;padding:16px 20px}.hero-bottom{flex-direction:column;gap:14px;margin-top:32px;padding-top:24px;font-size:8px}.section{padding-block:64px}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:24px;font-size:14px}.eyebrow{font-size:9px;margin-bottom:24px}.project-grid,.secondary-grid,.about-grid,.gallery{grid-template-columns:1fr}.project-grid{gap:56px}.project-visual.cover{height:380px}.project-visual{height:440px}.visual-top{inset:18px 18px auto}.brand{width:112px}.brand.enactus{width:98px;max-height:50px}.visual-top .micro{font-size:7px}.visual-bottom{left:18px;right:18px;bottom:24px}.visual-bottom h3{font-size:32px}.visual-bottom .micro{font-size:8px}.scene{top:16%;height:62%}.card-heading{margin-top:22px;min-height:62px;gap:16px}.card-heading h3{font-size:23px}.card-heading .small{font-size:11px}.project-card>p{font-size:14px}.secondary-grid{gap:48px;margin-top:56px}.web-collage{height:250px}.secondary-grid .estate-art{height:270px}.about-grid{gap:32px}.about h2{font-size:32px}.engagements h2{font-size:30px}.engagement-list h3{font-size:15px}.footer{padding-top:32px}.footer h2{font-size:36px}.footer-bottom{margin-top:48px;flex-wrap:wrap;font-size:8px;gap:20px}.footer-bottom span:first-child{width:100%}.email{font-size:12px}.project-intro{padding-top:32px}.project-intro h1{font-size:42px}.detail-logo{width:200px}.subtitle{font-size:24px;line-height:1.4}.role{font-size:11px}.project-description{font-size:15px}.contribution-text{font-size:21px;line-height:1.6}.contribution .micro{font-size:9px}.milestones>div{grid-template-columns:1fr;gap:12px;padding:24px 0}.milestones dt{font-size:20px}.milestones dd{font-size:14px}.gallery{gap:32px;margin-top:36px}.blended{height:auto;aspect-ratio:1.5}.preview-top{align-items:start;flex-direction:column;gap:8px}.site-previews{gap:48px}.site-previews article>p{font-size:14px}.browser-bar{font-size:8px;height:28px}.browser-bar i{width:5px;height:5px}.project-body h2{font-size:31px}.project-intro .estate-art{min-height:230px;padding:24px}.project-intro .estate-art .serif{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready [data-reveal]{opacity:1;transform:none}.orbit{transform:none}::view-transition-old(root),::view-transition-new(root){animation:none!important}}

/* Editorial revision */
.header{height:100px}.identity{font-size:15px;letter-spacing:-.025em}.header nav,.talk{font-family:Manrope,sans-serif;font-size:14px}.micro,.eyebrow{font-size:11px}.small{font-size:14px}.text-link{font-size:14px}.hero{padding-top:36px}.hero-topline{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:42px}.hero-topline .eyebrow{margin:0;font:600 15px Manrope,sans-serif;letter-spacing:.08em;color:var(--ink)}.location{color:var(--muted)}.hero-editorial{display:grid;grid-template-columns:1.15fr 1fr;gap:4%;align-items:center}.hero-copy{position:relative;z-index:2;padding:20px 0 36px}.positioning{font:500 14px/1.65 Manrope,sans-serif;color:var(--muted);margin-bottom:28px}.hero h1{font-size:clamp(46px,5.15vw,79px);line-height:1.13;letter-spacing:-.06em}.hero-description{font-size:16px;max-width:500px;margin-top:28px;line-height:1.8}.hero-ctas{display:flex;align-items:center;gap:28px;margin-top:30px}.hero .button{padding:18px 24px;font-size:14px}.social-link{display:inline-block;margin-top:24px;border-bottom:1px solid var(--line);padding-bottom:5px}.hero-portrait{position:relative;min-width:0;height:630px;margin:0;background:var(--dark);isolation:isolate;overflow:hidden;border-radius:2px;animation:portrait-in 1.2s var(--ease) both}.hero-portrait:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(12,26,44,.25),transparent 35%,rgba(12,26,44,.1) 55%,#10182b 100%)}.hero-portrait>img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;transform:scale(1.03);transition:transform 1.5s var(--ease)}.hero-portrait:hover>img{transform:scale(1.07)}.portrait-index{position:absolute;top:22px;left:24px;z-index:2;color:#fcfbf8}.hero-portrait figcaption{position:absolute;bottom:34px;left:28px;right:28px;z-index:2;display:flex;flex-direction:column;gap:15px;color:#fcfbf8}.hero-portrait figcaption>.micro{color:#e49b84}.hero-portrait figcaption>span:nth-child(2){font:600 clamp(25px,2.4vw,35px)/1.25 Manrope,sans-serif;letter-spacing:-.03em}.hero-portrait em{font:italic 400 1em Lora,serif}.portrait-caption{font:12px Manrope,sans-serif;color:#e1e6f5}.portrait-mark{position:absolute;right:20px;top:42px;z-index:1;font:600 100px Manrope,sans-serif;color:#fff3;letter-spacing:-.1em}.proof-strip{display:grid;grid-template-columns:1fr 1.12fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:45px;padding:26px 0;gap:28px}.proof-strip>a{display:flex;align-items:center;gap:18px;padding-right:20px}.proof-strip>a+a{border-left:1px solid var(--line);padding-left:28px}.proof-strip strong{font:600 35px Manrope,sans-serif;letter-spacing:-.05em;color:var(--blue);white-space:nowrap}.proof-strip span{font:12px/1.7 Manrope,sans-serif;color:var(--muted)}.proof-strip a:hover strong{color:var(--gold)}.projects{padding-top:76px}.section-heading h2{font-size:clamp(34px,3.6vw,52px)}.editorial-projects{grid-template-columns:1.3fr 1fr;gap:56px;align-items:start}.editorial-projects .project-card:nth-child(2){margin-top:140px}.editorial-projects .project-visual.cover{height:630px}.editorial-projects .project-card:nth-child(2) .project-visual.cover{height:490px}.scene{top:0;height:100%;mask-image:none;object-position:50% 42%;transform:scale(1.035);will-change:transform}.project-visual:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#17213ad9,transparent 28%,transparent 48%,#17213a 100%)}.visual-top,.visual-bottom{z-index:2}.visual-top{inset:26px 28px auto}.visual-bottom{bottom:30px;left:28px}.visual-bottom h3{font-size:clamp(32px,3.1vw,48px)}.project-visual.enactus .scene{object-position:55% 50%}.project-visual.enactus .visual-bottom h3{font-size:36px}.project-image-link{overflow:hidden}.project-image-link:hover .scene{transform:scale(1.065)}.card-heading{margin-top:26px}.card-heading>.micro{font-size:12px}.card-heading .small{font-size:13px}.project-card>p{font-size:16px;line-height:1.8}.detail-link{width:100%;font-size:14px}.secondary-grid{margin-top:100px;gap:56px}.secondary-grid h3{font-size:28px}.secondary-grid p{font-size:16px}.secondary-grid .web-collage,.secondary-grid .estate-art{height:350px}.web-collage{background:var(--mist)}.blended{mask-image:none;border-radius:2px;height:400px}.gallery{gap:40px}.gallery figcaption{font:12px/1.6 Manrope,sans-serif}.gallery figure:first-child:last-child{grid-column:1/-1}.gallery figure:first-child:last-child img{height:auto;max-height:650px;object-fit:contain}.project-intro .project-visual{height:680px}.project-intro .project-visual.hayatid .scene{object-position:50% 45%}.project-intro .project-visual.enactus{height:760px}.project-intro .project-visual.enactus .scene{object-fit:contain;object-position:center;background:#17213a}.engagement-list h3{font-size:19px}.engagement-list p{font:14px/1.8 Manrope,sans-serif}.footer .eyebrow{font-size:11px}.footer>p:not(.eyebrow){font-size:16px}.footer-bottom{font-size:11px}.email{font-size:clamp(14px,1.65vw,23px)}.preview-top .micro{font:11px Manrope,sans-serif}.browser-bar{font-family:Manrope,sans-serif}.next-project .micro{font-size:11px}.hero-portrait{view-transition-name:hero-portrait}.project-intro[data-project=hayatid] .project-visual{view-transition-name:project-hayatid}.project-intro[data-project=enactus] .project-visual{view-transition-name:project-enactus}.project-image-link[data-project=hayatid] .project-visual{view-transition-name:project-hayatid}.project-image-link[data-project=enactus] .project-visual{view-transition-name:project-enactus}::view-transition-group(project-hayatid),::view-transition-group(project-enactus){animation-duration:.65s;animation-timing-function:var(--ease)}@keyframes portrait-in{from{opacity:0;transform:translateY(25px);clip-path:inset(10% 0 0)}to{opacity:1;transform:none;clip-path:inset(0)}}
@media(max-width:1100px){.hero-portrait{height:560px}.hero-ctas{gap:20px}.hero-ctas .text-link{font-size:12px}.proof-strip{gap:16px}.proof-strip>a+a{padding-left:20px}.proof-strip strong{font-size:29px}.editorial-projects{gap:32px}.editorial-projects .project-visual.cover{height:560px}.editorial-projects .project-card:nth-child(2) .project-visual.cover{height:460px}.hero h1{font-size:clamp(46px,5.2vw,65px)}}
@media(max-width:760px){.hero-editorial{grid-template-columns:1fr}.hero h1{font-size:clamp(46px,9vw,68px)}.hero-copy{padding-top:0}.hero-topline{margin-bottom:28px}.hero-topline .eyebrow{font-size:12px}.location{font-size:9px}.hero-portrait{height:520px;margin-top:12px}.hero-portrait>img{object-position:50% 45%}.hero-portrait figcaption>span:nth-child(2){font-size:30px}.proof-strip{grid-template-columns:1fr;padding:8px 0;gap:0;margin-top:32px}.proof-strip>a{padding:18px 0;gap:24px}.proof-strip>a+a{border-left:0;border-top:1px solid var(--line);padding-left:0}.proof-strip strong{font-size:29px;min-width:86px}.proof-strip span{font-size:13px}.editorial-projects{grid-template-columns:1fr;gap:54px}.editorial-projects .project-card:nth-child(2){margin-top:0}.editorial-projects .project-visual.cover,.editorial-projects .project-card:nth-child(2) .project-visual.cover{height:520px}.secondary-grid{margin-top:64px;gap:48px}.secondary-grid .web-collage,.secondary-grid .estate-art{height:300px}.project-intro .project-visual{height:600px}.project-intro .project-visual.enactus{height:620px}.project-card>p,.secondary-grid p{font-size:15px}.header nav,.talk{font-size:13px}.hero-description{font-size:15px}.header .identity{font-size:13px}.hero-ctas{gap:22px}.hero .button{font-size:13px}.hero{padding-top:20px}.section-heading>p{font-size:15px}.blended{height:auto}.footer-bottom{font-size:9px}.visual-top .micro{font-size:9px}.visual-bottom .micro{font-size:10px}.project-visual.enactus .visual-bottom h3{font-size:34px}.positioning{font-size:13px}}
@media(prefers-reduced-motion:reduce){.scene,.hero-portrait>img{transform:none!important;will-change:auto}::view-transition-group(*){animation-duration:0s!important}}
@media(max-width:760px){.hero-editorial{gap:12px}.hero-copy{padding-bottom:12px}.hero-portrait{margin-top:0}.hero-topline{margin-bottom:24px}.hero-description{margin-top:22px}.hero-ctas{flex-wrap:wrap}.hero h1{font-size:clamp(42px,10.6vw,66px)}}@media(max-width:650px){.header:not(:has(nav a[href="/#projets"])) {height:112px;flex-wrap:wrap;position:relative;padding-bottom:32px}.header:not(:has(nav a[href="/#projets"])) nav{display:flex;position:absolute;bottom:8px;left:0;right:0;justify-content:flex-start;gap:24px}.header nav a{font-size:12px}.hero-topline .eyebrow{font-size:11px}.location{font-size:8px}.hero-portrait{height:465px}.hero-portrait figcaption>span:nth-child(2){font-size:26px}.hero-portrait figcaption{left:20px;right:20px;bottom:24px}.portrait-index{left:20px}.visual-top{inset:20px 20px auto}.visual-bottom{left:20px;right:20px}.editorial-projects .project-visual.cover,.editorial-projects .project-card:nth-child(2) .project-visual.cover{height:470px}}
/* Photographic canvas: images become part of the page */
.hero-editorial{position:relative;isolation:isolate;display:block;min-height:680px;padding:50px 0 55px}.hero-copy{width:55%;padding:15px 0;position:relative;z-index:2}.hero h1{font-size:clamp(58px,6.2vw,94px);line-height:1.08;letter-spacing:-.06em}.hero-description{font-size:16px;max-width:350px;margin-top:24px}.positioning{margin-bottom:32px}.hero-portrait{position:absolute;z-index:-1;right:-72px;top:-42px;width:70%;height:calc(100% + 42px);border:0;border-radius:0;background:transparent;animation:none;view-transition-name:none;mask-image:linear-gradient(90deg,transparent 0%,#000 31%,#000 100%),linear-gradient(180deg,transparent 0%,#000 12%,#000 85%,transparent 100%);mask-composite:intersect;overflow:hidden}.hero-portrait:after{display:none}.hero-portrait>img{object-position:50% 44%;transform:none;filter:saturate(.78);width:100%;height:100%;object-fit:cover}.hero-portrait:hover>img{transform:none}.hero-topline{position:relative;z-index:2;margin-bottom:0}.hero-ctas{margin-top:32px}.hero .proof-strip{margin-top:0}.hero .social-link{font-size:13px}.hero-portrait figcaption,.portrait-index,.portrait-mark{display:none}.project-visual:after{background:linear-gradient(180deg,#17213a55,transparent 25%,transparent 80%,#17213a55)}.scene{mask-image:linear-gradient(90deg,transparent,#000 9%,#000 100%)}.visual-top{inset:24px auto auto 28px}.project-visual .brand{width:125px;opacity:.94}.project-visual.enactus .brand{width:112px}.gallery figure{background:var(--paper)}.gallery img{height:auto;aspect-ratio:auto;width:100%;max-height:700px;object-fit:contain}.gallery figcaption{font-size:12px;font-family:Manrope,sans-serif;color:var(--muted);margin-top:14px}.cjdi-story{display:grid;grid-template-columns:.7fr 1.3fr;gap:48px;align-items:center;padding-top:48px}.cjdi-story figure{margin:0;overflow:hidden}.cjdi-story img{width:100%;height:auto;mask-image:linear-gradient(90deg,transparent,#000 10%,#000 100%)}.cjdi-story .text-link{margin-top:20px}.engagement-list>.cjdi-story{padding:48px 0;border-bottom:0}.engagement-list>.cjdi-story h3{font-size:32px}.engagement-list>.cjdi-story p{font-size:15px;margin-top:16px}
@media(max-width:1100px){.hero-portrait{right:-36px;width:70%}.hero-editorial{min-height:620px}.hero h1{font-size:clamp(58px,7.2vw,78px)}}
@media(max-width:760px){.hero-editorial{min-height:870px;display:flex;align-items:flex-end;padding:380px 0 35px}.hero-copy{width:100%;padding:0}.hero-portrait{top:0;right:-24px;width:calc(100% + 48px);height:580px;margin:0;mask-image:linear-gradient(90deg,transparent,#000 25%,#000),linear-gradient(180deg,transparent,#000 6%,#000 55%,transparent 100%);mask-composite:intersect}.hero-portrait>img{object-position:50% 40%}.hero h1{font-size:60px}.positioning{font-size:12px;line-height:1.65;margin-bottom:22px;max-width:290px}.hero-description{font-size:15px;max-width:310px;margin-top:18px}.hero-ctas{margin-top:24px;gap:20px}.hero-topline{padding-bottom:16px}.hero .proof-strip{margin-top:0}.cjdi-story{grid-template-columns:1fr;gap:24px}.engagement-list>.cjdi-story{padding-top:32px}.cjdi-story figure{order:-1}.engagement-list>.cjdi-story h3{font-size:28px}.visual-top{left:20px}.gallery img{max-height:none}}

/* Personal identity */
.identity{display:flex;align-items:center;min-width:0}.identity img{width:245px;height:auto;max-width:100%}.logo-night{display:none}:root[data-theme=dark] .logo-day{display:none}:root[data-theme=dark] .logo-night{display:block}.footer-brand{display:flex;align-items:center;gap:16px}.footer-brand img{width:56px;height:32px;object-fit:contain}.footer-bottom{align-items:center}@media(max-width:1000px){.identity img{width:210px}.header{gap:20px}}@media(max-width:650px){.identity img{width:185px}.header .nav-actions{gap:12px}.header .talk{display:none}.header{gap:10px}.footer-brand{gap:12px}}

/* Cobalt & terracotta theme */
:root{--cobalt:#2349c4;--terracotta:#b75d45;--gold:#a24b36}:root[data-theme=dark]{--blue:#91a9ff;--gold:#e49b84}.hero .button{background:var(--cobalt);color:#fcfbf8}.theme-toggle:hover{border-color:var(--terracotta)}.proof-strip strong{color:var(--cobalt)}:root[data-theme=dark] .proof-strip strong{color:#91a9ff}.text-link:hover,.social-link:hover{color:var(--gold)}
