:root{
  --ph-bg:#171715; --ph-cream:#f3eadc; --ph-line:rgba(243,234,220,.18);
  --ph-body:"Inter",system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;overflow-x:hidden;font-family:var(--ph-body);background:var(--page-bg,#171715);color:var(--page-ink,#f3eadc)}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.project-page{min-height:100vh;background:var(--page-bg);color:var(--page-ink)}
.project-nav{position:fixed;z-index:80;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;padding:22px clamp(18px,4vw,58px);mix-blend-mode:normal;pointer-events:none}
.project-nav>*{pointer-events:auto}
.project-nav__brand,.project-nav__back,.project-nav__menu{font-size:11px;text-transform:uppercase;letter-spacing:.16em}
.project-nav__brand{font-weight:700}
.project-nav__back{opacity:.72}
.project-nav__menu{display:flex;gap:22px}
.project-burger{display:none;border:0;background:none;color:inherit;padding:8px;margin:-8px;cursor:pointer}
.project-burger span{display:block;width:24px;height:1px;background:currentColor;margin:6px 0;transition:.25s}
.project-mobile-menu{display:none}
.project-hero{min-height:100svh;padding:clamp(110px,13vh,150px) clamp(20px,5vw,72px) clamp(52px,7vw,90px);display:grid;grid-template-rows:1fr auto;position:relative;overflow:hidden}
.project-hero__main{display:grid;align-content:center;gap:20px;position:relative;z-index:2}
.project-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.16em;opacity:.68;margin:0}
.project-title{font-size:clamp(64px,11vw,178px);line-height:.82;letter-spacing:-.075em;margin:0;max-width:1200px;font-weight:700}
.project-lead{font-size:clamp(18px,2.1vw,31px);line-height:1.22;letter-spacing:-.025em;max-width:780px;margin:0}
.project-hero__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;border-top:1px solid currentColor;padding-top:18px;opacity:.72;font-size:12px;line-height:1.45;position:relative;z-index:2}
.project-section{padding:clamp(72px,9vw,140px) clamp(20px,5vw,72px)}
.project-section__head{display:grid;grid-template-columns:minmax(120px,.4fr) minmax(0,1.6fr);gap:clamp(24px,5vw,90px);align-items:start;margin-bottom:clamp(42px,6vw,90px)}
.project-section__head h2{font-family:var(--display-font,var(--ph-body));font-size:clamp(42px,6.5vw,105px);line-height:.92;letter-spacing:-.055em;margin:0}
.project-section__head p{margin:0;font-size:clamp(17px,1.55vw,23px);line-height:1.5;max-width:780px}
.project-number{font-size:11px;letter-spacing:.16em;text-transform:uppercase;opacity:.58;padding-top:9px}
.fullbleed{width:100%;min-height:68svh;position:relative;overflow:hidden}
.fullbleed img{width:100%;height:100%;min-height:68svh;object-fit:cover}
.media-frame{overflow:hidden;border-radius:clamp(18px,2.4vw,38px)}
.grid-two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,30px)}
.grid-three{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,1.5vw,24px)}
.placeholder{min-height:420px;border:1px solid currentColor;border-radius:28px;display:grid;place-items:center;text-align:center;padding:28px;opacity:.72;background:rgba(255,255,255,.03)}
.placeholder span{font-size:11px;text-transform:uppercase;letter-spacing:.14em}
.project-next{display:flex;justify-content:space-between;gap:20px;align-items:end;padding:clamp(70px,10vw,150px) clamp(20px,5vw,72px);border-top:1px solid color-mix(in srgb,currentColor 20%,transparent)}
.project-next small{display:block;text-transform:uppercase;letter-spacing:.15em;font-size:10px;opacity:.58;margin-bottom:12px}
.project-next strong{font-family:var(--display-font,var(--ph-body));font-size:clamp(38px,6vw,96px);letter-spacing:-.05em;line-height:.9}
.project-next span{font-size:32px}

/* RIVAGES */
body.page-rivages{--page-bg:#f2cc7b;--page-ink:#733d31;--display-font:"Inter",sans-serif;background:#f2cc7b}
.page-rivages .project-hero{background:radial-gradient(circle at 76% 26%,#7ab8e9 0 10%,transparent 32%),linear-gradient(140deg,#f5d890 0 62%,#d6744e 62% 100%)}
.page-rivages .project-title{font-weight:900;text-transform:uppercase;color:#d7643f;text-shadow:0 2px 0 rgba(255,255,255,.08)}
.page-rivages .project-lead{color:#5c493c}
.rivages-sun{position:absolute;width:min(34vw,520px);aspect-ratio:1;border-radius:50%;right:7vw;top:18vh;background:#74b6eb;opacity:.72}
.rivages-cover-hero{position:absolute;right:6vw;bottom:-3vw;width:min(33vw,520px);transform:rotate(4deg);box-shadow:0 30px 60px rgba(87,44,28,.18);border-radius:4px;z-index:1}
.rivages-collage{background:#4e294e;color:#f4d38c}
.rivages-collage__grid{display:grid;grid-template-columns:1.15fr .75fr 1fr;gap:clamp(14px,2vw,28px);align-items:start}
.rivages-collage .placeholder{background:#e1ae5e;color:#4e294e;border:0;min-height:360px}
.rivages-collage .placeholder:nth-child(2){margin-top:80px;background:#779d97;color:#f7dfad}
.rivages-collage .placeholder:nth-child(3){background:#d76a43;color:#f5d895;transform:rotate(1.5deg)}
.rivages-wave{height:70px;background:repeating-radial-gradient(ellipse at 50% 100%,transparent 0 30px,#d76a43 31px 38px,transparent 39px 58px);opacity:.8}
.rivages-assets{background:#e6bc70;color:#684338}
.rivages-assets .media-frame{background:#fff;padding:clamp(12px,2vw,28px)}
.rivages-assets img{width:100%;aspect-ratio:1;object-fit:cover}

/* CONSPIRACY */
body.page-conspiracy{--page-bg:#12100f;--page-ink:#f4eee2;--display-font:"Neue Haas Grotesk Display Pro","Helvetica Neue",Arial,sans-serif;background:#12100f}
.page-conspiracy{font-family:"Inter",system-ui,sans-serif}
.page-conspiracy .project-title,.page-conspiracy .project-section__head h2,.page-conspiracy .project-next strong{font-family:"Neue Haas Grotesk Display Pro","Helvetica Neue",Arial,sans-serif;font-weight:700}
.page-conspiracy .project-hero{background:#12100f}
.conspiracy-logo-hero{width:min(820px,76vw);margin:0 0 26px;filter:none}
.conspiracy-light{position:absolute;left:-10vw;top:10vh;width:70vw;height:90vh;background:linear-gradient(110deg,transparent 0 24%,rgba(255,239,205,.8) 26%,rgba(255,239,205,.08) 51%,transparent 53%);clip-path:polygon(0 46%,100% 0,68% 100%);filter:blur(3px);opacity:.55;pointer-events:none}
.conspiracy-hero-mark{position:absolute;right:10vw;top:25vh;width:11vw;min-width:90px;aspect-ratio:1;transform:rotate(45deg);background:#f4eee2;box-shadow:0 0 90px rgba(244,238,226,.16)}
.conspiracy-hero-mark:after{content:"";position:absolute;inset:32%;background:#12100f}
.conspiracy-image{background:#0d0c0b}
.conspiracy-image img{height:auto;min-height:0;width:100%}
.conspiracy-principle{background:#f0e8da;color:#151311}
.conspiracy-principle .principle-word{font-family:"Neue Haas Grotesk Display Pro","Helvetica Neue",Arial,sans-serif;font-size:clamp(54px,10vw,164px);line-height:.78;letter-spacing:-.07em;margin:0;text-transform:lowercase}
.conspiracy-principle .principle-word:nth-child(2){text-align:right}
.conspiracy-principle .principle-word:nth-child(3){margin-left:14vw}
.conspiracy-system{background:#1a1715}
.conspiracy-system .placeholder{min-height:330px;background:rgba(244,238,226,.02)}

/* ELWIN */
body.page-elwin{--page-bg:#352cd3;--page-ink:#fff6df;--display-font:"IBM Plex Sans",sans-serif;font-family:"Asap",system-ui,sans-serif;background:#352cd3}
.page-elwin .project-title,.page-elwin .project-section__head h2,.page-elwin .project-next strong{font-family:"IBM Plex Sans",sans-serif;font-weight:700}
.page-elwin .project-hero{background:#352cd3}
.elwin-logo-hero{width:min(610px,62vw);margin-bottom:24px}
.elwin-hero-grid{position:absolute;inset:0;pointer-events:none;opacity:.08;background-image:linear-gradient(rgba(255,255,255,.4) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.4) 1px,transparent 1px);background-size:44px 44px}
.elwin-ui-stage{background:#faf9f5;color:#12173d}
.elwin-ui-stage .project-section__head h2{color:#352cd3}
.elwin-ui-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(20px,3vw,48px);align-items:center}
.elwin-ui-shot{background:#ecebfd;border-radius:26px;padding:clamp(14px,2vw,26px);box-shadow:0 28px 70px rgba(39,32,143,.15)}
.elwin-ui-shot img{width:100%;border-radius:12px}
.elwin-system{background:#fff6df;color:#20223f}
.elwin-system__palette{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px}
.elwin-swatch{min-height:210px;border-radius:24px;padding:20px;display:flex;align-items:flex-end;font-family:"IBM Plex Sans",sans-serif;font-weight:700}
.elwin-swatch:nth-child(1){background:#352cd3;color:#fff6df}.elwin-swatch:nth-child(2){background:#ffe27a;color:#352cd3}.elwin-swatch:nth-child(3){background:#07dac8;color:#352cd3}
.elwin-charte{background:#352cd3;color:#fff6df}
.elwin-charte .grid-two img{width:100%;height:100%;object-fit:cover;border-radius:24px}

@media(max-width:850px){
  .project-nav{padding:18px 18px}.project-nav__back,.project-nav__menu{display:none}.project-burger{display:block}
  .project-nav.menu-open .project-burger span:first-child{transform:translateY(3.5px) rotate(45deg)}.project-nav.menu-open .project-burger span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
  .project-mobile-menu{position:fixed;z-index:75;inset:0;background:var(--page-bg);color:var(--page-ink);padding:110px 22px 30px;display:flex;flex-direction:column;gap:22px;transform:translateY(-110%);transition:.35s cubic-bezier(.7,0,.2,1)}
  .project-nav.menu-open+.project-mobile-menu{transform:translateY(0)}.project-mobile-menu a{font-family:var(--display-font,var(--ph-body));font-size:clamp(36px,11vw,64px);letter-spacing:-.05em}
  .project-hero{min-height:92svh;padding:84px 18px 28px}.project-title{font-size:clamp(54px,18vw,94px);line-height:.86}.project-lead{font-size:19px}.project-hero__meta{grid-template-columns:1fr;gap:8px;padding-top:14px}.project-section{padding:72px 18px}.project-section__head{grid-template-columns:1fr;gap:18px;margin-bottom:38px}.project-section__head h2{font-size:clamp(44px,14vw,76px)}.grid-two,.grid-three{grid-template-columns:1fr}.project-next{padding:68px 18px}.placeholder{min-height:300px}
  .rivages-cover-hero{position:relative;right:auto;bottom:auto;width:min(82vw,380px);margin:36px auto -34px;transform:rotate(2deg)}.rivages-sun{width:72vw;right:-26vw;top:24vh}.page-rivages .project-hero{padding-bottom:58px}.page-rivages .project-title{font-size:clamp(58px,18vw,92px)}.rivages-collage__grid{grid-template-columns:1fr 1fr}.rivages-collage .placeholder:nth-child(2){margin-top:38px}.rivages-collage .placeholder:nth-child(3){grid-column:1/-1;transform:none}
  .conspiracy-logo-hero{width:92vw;max-width:560px}.conspiracy-light{left:-40vw;width:130vw;height:80vh}.conspiracy-hero-mark{right:-4vw;top:21vh;width:28vw}.conspiracy-image img{min-height:55svh;object-fit:cover;object-position:60% center}.conspiracy-principle .principle-word{font-size:clamp(56px,20vw,98px)}.conspiracy-principle .principle-word:nth-child(3){margin-left:0}
  .elwin-logo-hero{width:min(84vw,500px)}.elwin-ui-grid{grid-template-columns:1fr}.elwin-system__palette{grid-template-columns:1fr}.elwin-swatch{min-height:150px}
}
@media(max-width:520px){
 .project-hero{min-height:88svh}.project-section{padding-top:62px;padding-bottom:62px}.project-kicker{font-size:10px}.project-lead{font-size:18px}.rivages-collage__grid{grid-template-columns:1fr}.rivages-collage .placeholder:nth-child(2){margin-top:0}.conspiracy-logo-hero{width:96vw;margin-left:-8px}.elwin-ui-shot{border-radius:18px;padding:10px}.elwin-charte .grid-two img{border-radius:18px}
}


/* V20 refinements */
.page-elwin .project-hero__main{gap:16px;max-width:980px}
.page-elwin .project-kicker{font-family:"IBM Plex Sans",sans-serif;font-weight:600;opacity:.78}
.page-elwin .elwin-logo-hero{width:min(520px,55vw);margin:4px 0 18px}
.page-elwin .project-lead{font-family:"Asap",system-ui,sans-serif;font-size:clamp(18px,1.55vw,24px);line-height:1.42;letter-spacing:-.012em;max-width:720px}
.page-elwin .project-hero__meta{font-family:"Asap",system-ui,sans-serif;font-size:13px;line-height:1.5}
.page-elwin .project-section__head{grid-template-columns:minmax(110px,.32fr) minmax(0,1.68fr);gap:clamp(28px,4vw,72px)}
.page-elwin .project-section__head h2{font-size:clamp(44px,5.5vw,88px);line-height:.96;letter-spacing:-.045em}
.page-elwin .project-section__head p{font-family:"Asap",system-ui,sans-serif;font-size:clamp(16px,1.28vw,20px);line-height:1.58;max-width:720px}
.page-elwin .project-number{font-family:"IBM Plex Sans",sans-serif;font-weight:600}

/* Conspiracy — context & moodboards */
.conspiracy-context{background:#f0e8da;color:#151311}
.conspiracy-context__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(26px,5vw,80px);padding-top:12px}
.conspiracy-context__grid article{border-top:1px solid rgba(21,19,17,.22);padding-top:20px}
.conspiracy-context__grid h3{font-family:"Neue Haas Grotesk Display Pro","Helvetica Neue",Arial,sans-serif;font-size:clamp(26px,2.4vw,38px);line-height:1;margin:0 0 16px;letter-spacing:-.035em}
.conspiracy-context__grid p{font-size:15px;line-height:1.65;margin:0;max-width:390px}
.conspiracy-moodboards{background:#12100f;color:#f4eee2}
.conspiracy-moodboards__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(18px,2.4vw,38px);align-items:start}
.conspiracy-moodboards figure{margin:0}
.conspiracy-moodboards figure:nth-child(2){margin-top:9vw}
.conspiracy-moodboards img{width:100%;height:auto;border-radius:2px}
.conspiracy-moodboards figcaption{font-size:10px;letter-spacing:.15em;text-transform:uppercase;opacity:.56;margin-top:12px}
.page-conspiracy .project-lead{max-width:820px}
.page-conspiracy .project-section__head p{max-width:820px}
.page-conspiracy .conspiracy-principle{background:#e9dfcf;color:#171412}
.page-conspiracy .conspiracy-system{background:#151210}

@media(max-width:850px){
  .page-elwin .project-hero__main{gap:12px}
  .page-elwin .elwin-logo-hero{width:min(78vw,430px);margin:2px 0 14px}
  .page-elwin .project-lead{font-size:18px;line-height:1.45;max-width:92%}
  .page-elwin .project-hero__meta{font-size:12px}
  .page-elwin .project-section__head{grid-template-columns:1fr;gap:16px}
  .page-elwin .project-section__head h2{font-size:clamp(42px,12vw,66px);line-height:.98}
  .page-elwin .project-section__head p{font-size:17px;line-height:1.55}
  .conspiracy-context__grid{grid-template-columns:1fr;gap:28px}
  .conspiracy-context__grid article{padding-top:16px}
  .conspiracy-moodboards__grid{grid-template-columns:1fr;gap:26px}
  .conspiracy-moodboards figure:nth-child(2){margin-top:0}
}

@media(max-width:520px){
  .page-elwin .elwin-logo-hero{width:82vw}
  .page-elwin .project-lead{max-width:100%}
  .conspiracy-context__grid h3{font-size:30px}
  .conspiracy-moodboards figcaption{font-size:9px}
}

/* RIVAGES V43 — editorial day-to-night */
.rivages-v43{--orange:#ee8a32;--sky:#a9d5e8;--green:#607a48;--cream:#f3e7c7;--brown:#6a3429;--night:#211936;background:var(--cream);color:var(--brown)}
.rivages-v43 .project-nav{mix-blend-mode:multiply;color:#69362d}.rv-mono{font:500 11px/1.4 "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase}.rv-hero{min-height:100svh;position:relative;overflow:hidden;background:var(--sky);padding:120px 6vw 5vw;display:flex;align-items:center}.rv-hero:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}.rv-orbit{position:absolute;width:58vw;height:58vw;border:clamp(55px,7vw,110px) solid var(--orange);border-radius:50%;right:-20vw;top:-30vw;box-shadow:0 0 0 clamp(30px,4vw,65px) #f4c94f,0 0 0 clamp(60px,8vw,130px) #ee6757;transform:rotate(-12deg)}.rv-hero-copy{position:relative;z-index:2;width:63%;align-self:flex-end;padding-bottom:7vh}.rv-hero-copy h1{font:900 clamp(86px,15vw,235px)/.73 Inter,sans-serif;letter-spacing:-.085em;color:var(--orange);margin:18px 0 42px}.rv-intro{font:600 clamp(24px,3.2vw,52px)/1.02 Inter,sans-serif;letter-spacing:-.045em;max-width:850px}.rv-cover{position:absolute;z-index:3;right:6vw;bottom:7vh;width:min(27vw,430px);margin:0;transform:rotate(3.5deg)}.rv-cover img{width:100%;display:block;box-shadow:0 35px 75px rgba(64,45,40,.22)}.rv-cover figcaption{font:500 9px "DM Mono",monospace;letter-spacing:.08em;text-transform:uppercase;margin-top:9px}.rv-scroll{position:absolute;left:6vw;bottom:3vh;font:500 9px "DM Mono",monospace;letter-spacing:.14em}.rv-context{padding:12vw 6vw;background:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:9vw}.rv-context h2,.rv-art-copy h2,.rv-id-copy h2,.rv-night h2,.rv-explore h2{font:800 clamp(52px,7vw,112px)/.88 Inter,sans-serif;letter-spacing:-.065em;margin:18px 0}.rv-context-copy>p{font:600 clamp(22px,2.3vw,35px)/1.25 Inter,sans-serif;letter-spacing:-.035em;margin:0 0 70px}.rv-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;border-top:1px solid currentColor;padding-top:18px}.rv-facts small{display:block;font:500 9px "DM Mono",monospace;letter-spacing:.1em;margin-bottom:12px}.rv-facts span{font:400 12px/1.55 "DM Mono",monospace}.rv-manifesto{min-height:95svh;background:var(--orange);color:var(--cream);position:relative;overflow:hidden;padding:8vw 6vw;display:flex;flex-direction:column;justify-content:center}.rv-manifesto p{font:900 clamp(90px,17vw,270px)/.64 Inter,sans-serif;letter-spacing:-.09em;margin:0;position:relative;z-index:2}.rv-manifesto p:nth-of-type(2){text-align:center;color:var(--sky)}.rv-manifesto p:nth-of-type(3){text-align:right;color:var(--night)}.rv-manifesto span{position:absolute;right:6vw;bottom:5vw;width:300px;font:500 12px/1.55 "DM Mono",monospace;z-index:3}.rv-sun-disc{position:absolute;width:36vw;aspect-ratio:1;border-radius:50%;background:#f3ca4c;left:32%;top:29%;filter:blur(.2px)}.rv-artwork{background:#e9bd55;color:var(--brown);padding:11vw 6vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:center}.rv-art-copy p,.rv-id-copy p,.rv-night>p,.rv-explore-copy p{font:400 15px/1.65 "DM Mono",monospace;max-width:590px}.rv-cover-stage{position:relative;min-height:700px;display:grid;place-items:center}.rv-cover-stage>img{position:relative;width:min(74%,620px);z-index:2;box-shadow:0 40px 90px rgba(95,49,31,.22);transform:rotate(-2deg)}.rv-ring{position:absolute;width:72%;aspect-ratio:1;border-radius:50%;border:70px solid var(--orange);box-shadow:0 0 0 40px var(--sky)}.rv-stamp{position:absolute;z-index:3;right:5%;bottom:10%;width:105px;height:105px;border-radius:50%;background:var(--green);color:var(--cream);display:grid;place-items:center;text-align:center;font:500 9px/1.4 "DM Mono",monospace;transform:rotate(11deg)}.rv-system{background:var(--cream);padding:10vw 6vw 0;overflow:hidden}.rv-system-head{display:grid;grid-template-columns:1fr 2fr;align-items:start}.rv-system-head h2{font:900 clamp(58px,9vw,150px)/.82 Inter,sans-serif;letter-spacing:-.075em;margin:0;color:var(--orange)}.rv-swatches{display:grid;grid-template-columns:repeat(4,1fr);margin-top:9vw}.rv-swatches div{aspect-ratio:1;padding:20px;display:flex;flex-direction:column;justify-content:space-between;font:500 10px "DM Mono",monospace}.rv-swatches div:nth-child(1){background:var(--orange)}.rv-swatches div:nth-child(2){background:var(--sky)}.rv-swatches div:nth-child(3){background:var(--green);color:var(--cream)}.rv-swatches div:nth-child(4){background:#fff5db}.rv-type-run{margin:7vw -6vw 0;white-space:nowrap;overflow:hidden;background:var(--green);color:var(--cream);padding:2vw 0}.rv-type-run span{display:block;font:900 clamp(70px,12vw,190px)/.75 Inter,sans-serif;letter-spacing:-.07em;animation:rvmarquee 18s linear infinite}@keyframes rvmarquee{to{transform:translateX(-48%)}}.rv-identity{background:var(--sky);padding:11vw 6vw;display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:center}.rv-id-image{min-height:600px;background:var(--orange);display:grid;place-items:center;overflow:hidden}.rv-id-image img{width:100%;height:100%;object-fit:cover;min-height:600px}.rv-night{min-height:110svh;background:var(--night);color:var(--cream);padding:11vw 6vw;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.rv-night h2{position:relative;z-index:2;font-size:clamp(70px,10vw,165px);color:var(--sky)}.rv-night>p{position:relative;z-index:2;margin-left:auto}.rv-night-glow{position:absolute;width:55vw;height:55vw;border-radius:50%;background:var(--orange);filter:blur(120px);opacity:.2;right:-10vw;top:12vw}.rv-night-word{position:absolute;left:-2vw;bottom:-3vw;font:900 20vw/.7 Inter,sans-serif;letter-spacing:-.09em;color:transparent;-webkit-text-stroke:1px rgba(243,231,199,.2);white-space:nowrap}.rv-explore{background:#e96c55;color:#542c29;padding:10vw 6vw;display:grid;grid-template-columns:.72fr 1.28fr;gap:6vw;align-items:center}.rv-explore img{width:100%;box-shadow:0 30px 70px rgba(90,42,34,.15)}.rv-next{background:var(--cream)!important;color:var(--brown)!important}
@media(max-width:850px){.rv-hero{padding:110px 18px 30px;display:block}.rv-orbit{width:95vw;height:95vw;right:-45vw;top:-35vw;border-width:45px;box-shadow:0 0 0 28px #f4c94f,0 0 0 55px #ee6757}.rv-hero-copy{width:100%;padding-top:17vh}.rv-hero-copy h1{font-size:clamp(72px,23vw,120px);margin:14px 0 28px}.rv-intro{font-size:26px;max-width:92%}.rv-cover{position:relative;right:auto;bottom:auto;width:min(76vw,390px);margin:48px 0 35px auto}.rv-scroll{display:none}.rv-context,.rv-artwork,.rv-identity,.rv-explore{grid-template-columns:1fr;padding:90px 18px;gap:55px}.rv-context h2,.rv-art-copy h2,.rv-id-copy h2,.rv-night h2,.rv-explore h2{font-size:clamp(50px,15vw,78px)}.rv-context-copy>p{font-size:22px;margin-bottom:45px}.rv-facts{grid-template-columns:1fr 1fr}.rv-manifesto{min-height:75svh;padding:70px 18px}.rv-manifesto p{font-size:clamp(80px,28vw,145px);line-height:.7}.rv-manifesto span{position:relative;right:auto;bottom:auto;margin:60px 0 0 auto;width:250px}.rv-sun-disc{width:70vw;left:20%;top:31%}.rv-cover-stage{min-height:480px}.rv-ring{border-width:40px;box-shadow:0 0 0 24px var(--sky)}.rv-system{padding:90px 18px 0}.rv-system-head{grid-template-columns:1fr;gap:25px}.rv-system-head h2{font-size:clamp(60px,18vw,95px)}.rv-swatches{grid-template-columns:1fr 1fr;margin-top:65px}.rv-type-run{margin:60px -18px 0;padding:18px 0}.rv-id-image,.rv-id-image img{min-height:0}.rv-identity .rv-id-copy{order:-1}.rv-night{min-height:90svh;padding:90px 18px}.rv-night>p{margin:35px 0 0}.rv-night-word{font-size:29vw}.rv-explore img{width:calc(100% + 36px);margin-left:-18px}.rivages-v43 .project-nav{mix-blend-mode:normal}}
@media(max-width:520px){.rv-facts{grid-template-columns:1fr}.rv-cover-stage{min-height:390px}.rv-cover-stage>img{width:82%}.rv-stamp{width:82px;height:82px;right:0}.rv-manifesto p{font-size:25vw}.rv-swatches div{padding:14px}.rv-context-copy>p{font-size:20px}}
/* V44 — Elwin richer case study */
.elwin-rebrand{background:#f5f2e9;color:#352cd3}.elwin-wide-shot{margin:7vw 0 0}.elwin-wide-shot img{display:block;width:100%;height:auto}.elwin-editorial-ui{display:grid;gap:2vw;margin-top:7vw}.elwin-editorial-ui img{width:100%;display:block}.elwin-editorial-ui img:nth-child(2){width:88%;margin-left:auto}.page-elwin .project-number{letter-spacing:.12em;text-transform:uppercase}
/* V44 — Conspiracy real applications */
.conspiracy-logo-story{background:#ece4d6;color:#171412}.conspiracy-logo-story .project-section__head p+p{margin-top:18px}.conspiracy-logo-plates{display:grid;grid-template-columns:1.2fr .8fr;gap:2vw;margin-top:7vw}.conspiracy-logo-plates img{width:100%;height:100%;object-fit:cover;display:block}.conspiracy-applications{background:#111;color:#f3ede2}.conspiracy-wear-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:2vw;margin-top:7vw}.conspiracy-wear-grid img{width:100%;display:block}.wear-hero{grid-row:span 2}.wear-tote{align-self:end}
/* V44 — PFE */
.page-pfe{background:#161616;color:#f2f0e9}.page-pfe .project-nav{color:#f2f0e9}.pfe-hero{min-height:100svh;position:relative;overflow:hidden;background:#20201f;padding:120px 5vw 5vw;display:flex;align-items:center}.pfe-hero:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.2;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.pfe-glitch{position:relative;z-index:2;font:800 clamp(66px,10.5vw,178px)/.76 Unbounded,sans-serif;letter-spacing:-.08em;text-shadow:3px 0 #00a0e3,-3px 0 #e6007e}.pfe-hero>img{position:absolute;right:-5vw;bottom:-18vh;width:min(48vw,700px);mix-blend-mode:screen;filter:contrast(1.15)}.pfe-hero-copy{position:absolute;z-index:3;right:5vw;bottom:5vw;width:min(380px,35vw);font:500 11px/1.55 Inter,sans-serif;text-transform:uppercase;letter-spacing:.08em}.pfe-intro,.pfe-scenes,.pfe-cards,.pfe-communication{padding:10vw 6vw}.pfe-label,.pfe-character span,.pfe-scenes span,.pfe-object span,.pfe-cards span,.pfe-communication span{font:600 10px Inter,sans-serif;letter-spacing:.15em;text-transform:uppercase}.pfe-intro h2,.pfe-character h2,.pfe-scenes h2,.pfe-object h2,.pfe-cards h2,.pfe-communication h2{font:800 clamp(54px,8vw,130px)/.86 Unbounded,sans-serif;letter-spacing:-.07em;margin:25px 0}.pfe-intro>p:last-child,.pfe-character p,.pfe-object p,.pfe-communication p{max-width:650px;font:400 17px/1.65 Inter,sans-serif;color:#bdbbb5}.pfe-character{background:#ecebe6;color:#1b1b1a;padding:9vw 6vw;display:grid;grid-template-columns:.7fr 1.3fr;gap:5vw;align-items:center}.pfe-character p{color:#555}.pfe-character img{width:100%;display:block}.pfe-scenes{background:#292928}.pfe-scenes-head{display:grid;grid-template-columns:.5fr 1fr}.pfe-scene-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5vw;margin-top:6vw}.pfe-scene-grid img{width:100%;display:block}.pfe-object{padding:10vw 6vw;background:#d7d7d2;color:#161616;display:grid;grid-template-columns:.62fr 1.38fr;gap:5vw;align-items:center}.pfe-object img{width:100%;display:block}.pfe-object p{color:#555}.pfe-cards{background:#111}.pfe-cards-head{display:grid;grid-template-columns:.5fr 1fr}.pfe-cards>img{width:100%;display:block;margin:4vw 0}.pfe-pair{display:grid;grid-template-columns:1fr 1fr;gap:2vw}.pfe-pair img{width:100%;display:block}.pfe-communication{background:#e9e8e2;color:#181817}.pfe-communication p{color:#555}.pfe-com-grid{display:grid;grid-template-columns:.7fr 1.2fr .7fr;gap:2vw;align-items:center;margin-top:6vw}.pfe-com-grid img{width:100%;display:block}.pfe-outro{min-height:85svh;background:#20201f;display:grid;place-items:center;position:relative;overflow:hidden}.pfe-outro img{width:min(48vw,650px);mix-blend-mode:screen}.pfe-outro p{position:absolute;bottom:5vw;font:800 clamp(24px,4vw,60px) Unbounded,sans-serif;letter-spacing:-.05em}.pfe-next{background:#ecebe6!important;color:#171717!important}
@media(max-width:850px){.conspiracy-logo-plates,.conspiracy-wear-grid{grid-template-columns:1fr}.wear-hero{grid-row:auto}.elwin-editorial-ui img:nth-child(2){width:100%;margin:0}.pfe-hero{padding:100px 18px 35px;align-items:flex-start}.pfe-glitch{font-size:clamp(48px,15vw,88px);margin-top:14vh}.pfe-hero>img{width:85vw;right:-22vw;bottom:-5vh}.pfe-hero-copy{left:18px;right:auto;bottom:30px;width:62vw;font-size:9px}.pfe-intro,.pfe-scenes,.pfe-cards,.pfe-communication{padding:90px 18px}.pfe-character,.pfe-object{padding:90px 18px;grid-template-columns:1fr;gap:40px}.pfe-scenes-head,.pfe-cards-head{grid-template-columns:1fr}.pfe-scene-grid{grid-template-columns:1fr;gap:18px}.pfe-pair{grid-template-columns:1fr}.pfe-com-grid{grid-template-columns:1fr 1fr}.pfe-com-grid img:nth-child(2){grid-column:1/-1;grid-row:1}.pfe-outro img{width:90vw}.pfe-outro p{bottom:30px;text-align:center;padding:0 18px}}

/* V45 — same Phosphène wordmark treatment as the index */
.project-nav__brand{font-family:"Unbounded",Inter,sans-serif!important;font-weight:900!important;letter-spacing:-.04em!important;text-transform:none!important;font-size:12px!important}
/* PFE project facts band */
.pfe-hero{padding-bottom:150px}
.pfe-meta{position:absolute!important;left:5vw;right:5vw;bottom:34px;z-index:5;color:#f2f0e9;border-color:rgba(242,240,233,.45);font-family:Inter,sans-serif}
@media(max-width:850px){.pfe-hero{padding-bottom:205px}.pfe-meta{left:18px;right:18px;bottom:22px;grid-template-columns:1fr!important;gap:7px!important;font-size:9px!important}.pfe-hero-copy{bottom:150px}}

/* V47 — global project wordmark + Conspiracy rhythm */
.project-nav__brand{
  text-transform:uppercase!important;
  font-family:"Unbounded",Inter,sans-serif!important;
  font-weight:900!important;
  letter-spacing:-.04em!important;
  font-size:12px!important;
}
.page-conspiracy .project-hero{background:#171412!important}
.page-conspiracy .conspiracy-light,.page-conspiracy .conspiracy-hero-mark{display:none!important}
.page-conspiracy .project-hero__main{gap:24px;align-content:center;max-width:1120px}
.page-conspiracy .project-kicker{margin:0 0 12px}
.page-conspiracy .conspiracy-logo-hero{margin:0 0 18px}
.page-conspiracy .project-lead{margin:0;max-width:760px;line-height:1.5}
.page-conspiracy .project-section__head{margin-bottom:clamp(54px,7vw,100px)}
.page-conspiracy .project-section__head>div{display:flex;flex-direction:column;gap:clamp(22px,2.4vw,36px)}
.page-conspiracy .project-section__head h2,.page-conspiracy .project-section__head p{margin:0!important}
.page-conspiracy .project-section__head p+p{margin-top:-10px!important}
.conspiracy-colors{background:#171412;color:#ece4d6}
.conspiracy-swatches{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:clamp(20px,4vw,60px)}
.conspiracy-swatch{min-height:clamp(230px,32vw,470px);padding:24px;display:flex;flex-direction:column;justify-content:space-between;border:1px solid rgba(236,228,214,.18)}
.conspiracy-swatch span{font:700 clamp(25px,3vw,48px)/1 "Neue Haas Grotesk Display Pro","Helvetica Neue",Arial,sans-serif;letter-spacing:-.04em}
.conspiracy-swatch small{font:500 10px/1 Inter,sans-serif;letter-spacing:.14em}
.conspiracy-swatch--dark{background:#171412;color:#ece4d6}
.conspiracy-swatch--light{background:#ece4d6;color:#171412}
.conspiracy-applications{background:#171412!important;color:#ece4d6!important}
@media(max-width:850px){
 .page-conspiracy .project-hero__main{gap:18px}
 .page-conspiracy .project-section__head{margin-bottom:46px}
 .page-conspiracy .project-section__head>div{gap:20px}
 .page-conspiracy .project-section__head p+p{margin-top:-4px!important}
 .conspiracy-swatches{grid-template-columns:1fr;gap:10px}
 .conspiracy-swatch{min-height:210px;padding:18px}
}
/* V49 — Conspiracy storytelling */
.conspiracy-manifesto{min-height:62vh;background:#171412;color:#ece4d6;display:flex;align-items:center;justify-content:center;padding:8vw 6vw;overflow:hidden}
.conspiracy-manifesto p{margin:0;font-family:"Neue Haas Grotesk Display Pro","Helvetica Neue",Arial,sans-serif;font-weight:700;font-size:clamp(54px,10.2vw,170px);line-height:.82;letter-spacing:-.065em;text-align:center}
.page-conspiracy .conspiracy-moodboards .project-section__head>div{max-width:920px}
@media(max-width:850px){.conspiracy-manifesto{min-height:45vh;padding:80px 18px}.conspiracy-manifesto p{font-size:clamp(46px,14vw,82px)}}
/* V50 — Conspiracy reveal, references & type system */
.conspiracy-hero .project-hero__main{max-width:none!important}
.conspiracy-hero-type{position:relative;width:min(1120px,88vw);font-family:"Neue Haas Grotesk Display Pro","Helvetica Neue",Arial,sans-serif;font-size:clamp(72px,12vw,188px);font-weight:700;line-height:.72;letter-spacing:-.075em;text-transform:uppercase;margin:1vw 0 2vw;overflow:hidden}
.conspiracy-hero-type>span{display:block;position:relative;z-index:1}.conspiracy-hero-type>span:first-child{font-weight:400;font-style:italic;font-size:.42em;line-height:1.15;letter-spacing:-.045em;margin-left:.05em}
.conspiracy-hero-mask{position:absolute;display:block;background:#171412;z-index:2;pointer-events:none}.mask-a{left:7%;top:42%;width:58%;height:18%;transform:rotate(-3deg);transform-origin:left center}.mask-b{right:-2%;bottom:8%;width:45%;height:16%;transform:rotate(2deg);transform-origin:right center}
.conspiracy-reference-intro{display:grid;grid-template-columns:.7fr 1fr;gap:5vw;align-items:end;margin:0 0 5vw}.conspiracy-reference-intro h3{font:700 clamp(42px,6vw,92px)/.92 "Neue Haas Grotesk Display Pro","Helvetica Neue",Arial,sans-serif;letter-spacing:-.055em}.conspiracy-reference-intro p{max-width:620px;font-size:15px;line-height:1.65;opacity:.76}
.conspiracy-reference-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:6vw;gap:1.1vw;align-items:stretch}.conspiracy-reference-grid img{width:100%;height:100%;object-fit:cover;display:block}.ref-mez{grid-column:1/7;grid-row:1/5}.ref-a{grid-column:7/10;grid-row:1/4;object-fit:contain!important;background:#eee}.ref-b{grid-column:10/13;grid-row:1/5;object-fit:contain!important;background:#f0efec}.ref-c{grid-column:1/4;grid-row:5/10;object-fit:contain!important;background:#f1f0ec}.ref-d{grid-column:4/7;grid-row:5/8;object-fit:contain!important;background:#eee}.ref-light{grid-column:7/13;grid-row:5/12}.ref-e{grid-column:1/7;grid-row:10/13;object-fit:contain!important;background:#f5f1e8}.ref-f{grid-column:4/7;grid-row:8/10;object-fit:contain!important;background:#e9512c}.ref-g{grid-column:1/4;grid-row:13/16;object-fit:contain!important;background:#050505}.conspiracy-logo-reveal{min-height:100svh;background:#ece4d6;color:#171412;display:flex;flex-direction:column;justify-content:center;padding:10vw 6vw;overflow:hidden}.logo-reveal-stage{position:relative;width:min(1120px,100%);margin:auto}.logo-state{display:block;width:100%;height:auto;filter:brightness(0) saturate(100%)}.logo-reveal-curtain{position:absolute;inset:0;overflow:hidden;clip-path:inset(0 100% 0 0)}.logo-reveal-curtain .logo-state{width:100%;max-width:none}.conspiracy-logo-reveal>p{font:500 10px/1.4 Inter,sans-serif;letter-spacing:.14em;text-transform:uppercase;margin-top:36px}.conspiracy-type-poster{margin:1vw 0 8vw;border-top:1px solid rgba(236,228,214,.25);border-bottom:1px solid rgba(236,228,214,.25);padding:5vw 0;display:flex;flex-wrap:wrap;gap:.05em .22em;align-items:baseline;font-family:"Neue Haas Grotesk Display Pro","Helvetica Neue",Arial,sans-serif;font-size:clamp(48px,8.5vw,138px);line-height:.78;letter-spacing:-.06em}.conspiracy-type-poster strong{font-weight:700}.conspiracy-type-poster em{font-weight:400;font-style:italic}.conspiracy-type-poster span{font-weight:400}.conspiracy-type-poster b{font-weight:700}.conspiracy-type-poster i{font-weight:600;font-style:italic}.conspiracy-color-copy{display:grid;grid-template-columns:.7fr 1fr;gap:5vw;margin:0 0 3vw}.conspiracy-color-copy h3{font:700 clamp(38px,5vw,76px)/.95 "Neue Haas Grotesk Display Pro","Helvetica Neue",Arial,sans-serif;letter-spacing:-.05em}.conspiracy-color-copy p{max-width:620px;line-height:1.65;opacity:.76}
@media(max-width:850px){.conspiracy-hero-type{width:100%;font-size:clamp(62px,19vw,105px);margin:8vh 0 28px}.mask-a{left:3%;width:72%;height:15%}.mask-b{width:55%}.conspiracy-reference-intro,.conspiracy-color-copy{grid-template-columns:1fr;gap:24px;margin-bottom:45px}.conspiracy-reference-grid{grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:10px}.conspiracy-reference-grid img{grid-column:auto!important;grid-row:auto!important;aspect-ratio:1/1}.conspiracy-reference-grid .ref-mez,.conspiracy-reference-grid .ref-light{grid-column:1/-1!important;aspect-ratio:16/10}.conspiracy-reference-grid .ref-e{grid-column:1/-1!important;aspect-ratio:2/1}.conspiracy-logo-reveal{min-height:75svh;padding:90px 18px}.conspiracy-type-poster{font-size:clamp(45px,16vw,78px);padding:45px 0;margin-bottom:70px}}
/* V51 — Conspiracy: compact references + logo anatomy */
.conspiracy-hero-wordmark{width:min(720px,72vw);margin:2vh 0 3vh}
.conspiracy-hero-wordmark img{display:block;width:100%;height:auto;filter:brightness(0) invert(1);opacity:.96}
/* Kill V50 constructed/reveal behavior */
.conspiracy-hero-type,.conspiracy-logo-reveal{display:none!important}
/* References become a compact editorial strip, not a full-page wall */
.conspiracy-reference-intro{margin-bottom:3vw}
.conspiracy-reference-grid{max-width:1180px;margin:0 auto;grid-template-columns:repeat(12,1fr);grid-auto-rows:4.2vw;gap:.75vw}
.conspiracy-reference-grid .ref-mez{grid-column:1/6;grid-row:1/4}
.conspiracy-reference-grid .ref-a{grid-column:6/8;grid-row:1/3}
.conspiracy-reference-grid .ref-b{grid-column:8/10;grid-row:1/4}
.conspiracy-reference-grid .ref-c{grid-column:10/13;grid-row:1/4}
.conspiracy-reference-grid .ref-d{grid-column:1/3;grid-row:4/6}
.conspiracy-reference-grid .ref-light{grid-column:3/8;grid-row:4/8}
.conspiracy-reference-grid .ref-e{grid-column:8/11;grid-row:4/6}
.conspiracy-reference-grid .ref-f{grid-column:11/13;grid-row:4/6}
.conspiracy-reference-grid .ref-g{grid-column:8/10;grid-row:6/8}
.conspiracy-logo-anatomy{display:grid;grid-template-columns:1fr 1fr;gap:1.2vw;margin-top:5vw}
.logo-step{border:1px solid rgba(23,20,18,.18);padding:18px;display:flex;flex-direction:column;min-height:420px}
.logo-step--type{grid-column:1/-1}
.logo-step>span{font:600 9px/1 Inter,sans-serif;letter-spacing:.16em;margin-bottom:18px}
.logo-step__visual{min-height:260px;display:flex;align-items:center;justify-content:center;background:#f4eee2;padding:clamp(22px,4vw,70px);overflow:hidden}
.logo-step__visual img{display:block;max-width:100%;max-height:300px;object-fit:contain}
.logo-step--type .logo-step__visual img{width:min(900px,90%)}
.logo-step--symbol .logo-step__visual img{width:100%;height:100%;object-fit:contain}
.logo-step--complete .logo-step__visual{background:#171412}
.logo-step--complete .logo-step__visual img{width:90%}
.logo-step h3{font:700 clamp(28px,3vw,46px)/1 "Neue Haas Grotesk Display Pro","Helvetica Neue",Arial,sans-serif;letter-spacing:-.04em;margin:24px 0 12px}
.logo-step p{font-size:14px;line-height:1.6;max-width:620px;margin:0;opacity:.76}
@media(max-width:850px){
 .conspiracy-hero-wordmark{width:100%;margin:7vh 0 30px}
 .conspiracy-reference-grid{grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:8px}
 .conspiracy-reference-grid img{grid-column:auto!important;grid-row:auto!important;aspect-ratio:1/1}
 .conspiracy-reference-grid .ref-mez,.conspiracy-reference-grid .ref-light{grid-column:1/-1!important;aspect-ratio:16/9}
 .conspiracy-reference-grid .ref-e{grid-column:1/-1!important;aspect-ratio:2/1}
 .conspiracy-logo-anatomy{grid-template-columns:1fr;gap:10px;margin-top:50px}
 .logo-step--type{grid-column:auto}.logo-step{min-height:0;padding:14px}.logo-step__visual{min-height:190px;padding:28px 18px}
}

/* V52 — Conspiracy cursor spotlight */
.conspiracy-spotlight{position:relative;isolation:isolate;cursor:none;--spot-x:50%;--spot-y:50%;--spot-size:105px;padding:12px 0 42px}
.conspiracy-spotlight img{display:block;width:100%;height:auto;filter:brightness(0) invert(1)}
.conspiracy-wordmark-ghost{opacity:.055}
.conspiracy-wordmark-lit{position:absolute;left:0;top:12px;opacity:1;-webkit-mask-image:radial-gradient(circle var(--spot-size) at var(--spot-x) var(--spot-y),#000 0 72%,transparent 100%);mask-image:radial-gradient(circle var(--spot-size) at var(--spot-x) var(--spot-y),#000 0 72%,transparent 100%);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.conspiracy-spotlight:after{content:"";position:absolute;width:calc(var(--spot-size)*2);height:calc(var(--spot-size)*2);left:var(--spot-x);top:var(--spot-y);transform:translate(-50%,-50%);border-radius:50%;box-shadow:0 0 70px rgba(236,228,214,.09);pointer-events:none}
.conspiracy-spotlight-hint{position:absolute;left:0;bottom:6px;font:500 9px/1.3 Inter,sans-serif;letter-spacing:.16em;text-transform:uppercase;opacity:.45}
@media(pointer:coarse){.conspiracy-spotlight{cursor:auto;--spot-x:64%;--spot-y:48%;--spot-size:80px}.conspiracy-spotlight-hint{display:none}.conspiracy-wordmark-ghost{opacity:.1}}

/* V52 — JDM real project assets */
.pfe-animation-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:1.5vw;margin-top:5vw;align-items:stretch}.pfe-animation-grid img{width:100%;height:100%;min-height:320px;object-fit:cover;display:block}.pfe-section-note{max-width:620px;margin:34px 0 0 auto;font:400 15px/1.65 Inter,sans-serif;color:#bdbbb5}.pfe-card-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5vw;margin-top:5vw;align-items:start}.pfe-card-trio img{width:100%;display:block}.pfe-tech-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4vw}.pfe-tech-grid img{width:100%;height:100%;object-fit:cover;display:block;background:#111}.pfe-world{padding:10vw 6vw;background:#f0efeb;color:#171717;display:grid;grid-template-columns:.58fr 1.42fr;gap:5vw;align-items:center}.pfe-world-copy span{font:600 10px Inter,sans-serif;letter-spacing:.15em;text-transform:uppercase}.pfe-world-copy h2{font:800 clamp(54px,8vw,130px)/.86 Unbounded,sans-serif;letter-spacing:-.07em;margin:25px 0}.pfe-world-copy p{max-width:600px;font:400 17px/1.65 Inter,sans-serif;color:#555}.pfe-world>img{width:100%;display:block}.pfe-com-grid--new{grid-template-columns:.7fr 1fr 1.3fr;align-items:center}.pfe-com-grid--new img{max-height:72vh;object-fit:contain}.pfe-outro img{mix-blend-mode:normal!important;max-height:70vh;object-fit:contain}
@media(max-width:850px){.pfe-animation-grid,.pfe-card-trio,.pfe-tech-grid,.pfe-world{grid-template-columns:1fr}.pfe-animation-grid{gap:12px}.pfe-animation-grid img{min-height:0;height:auto}.pfe-card-trio{gap:12px}.pfe-tech-grid{gap:12px}.pfe-world{padding:90px 18px;gap:40px}.pfe-com-grid--new{grid-template-columns:1fr 1fr}.pfe-com-grid--new img:last-child{grid-column:1/-1}.conspiracy-spotlight{--spot-size:68px}}

/* V53 — Conspiracy logo construction + fluid references */
.conspiracy-reference-grid{display:flex!important;flex-wrap:wrap;align-items:stretch;gap:clamp(8px,1vw,16px);max-width:1180px;margin:0 auto}
.conspiracy-reference-grid img{grid-column:auto!important;grid-row:auto!important;flex:1 1 150px;width:auto!important;height:clamp(120px,14vw,220px)!important;min-width:0;object-fit:cover!important;background:#eee}
.conspiracy-reference-grid .ref-mez,.conspiracy-reference-grid .ref-light{flex-grow:2.15;flex-basis:300px}
.conspiracy-reference-grid .ref-e{flex-grow:1.8;flex-basis:260px}
.conspiracy-reference-grid .ref-a,.conspiracy-reference-grid .ref-b,.conspiracy-reference-grid .ref-c,.conspiracy-reference-grid .ref-d,.conspiracy-reference-grid .ref-f,.conspiracy-reference-grid .ref-g{object-fit:contain!important}

.conspiracy-logo-anatomy{display:block;margin-top:clamp(52px,7vw,110px)}
.logo-step{border:0;border-top:1px solid rgba(23,20,18,.22);padding:clamp(30px,4vw,62px) 0;min-height:0;display:grid;grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);gap:clamp(32px,7vw,110px);align-items:center}
.logo-step:nth-child(even){grid-template-columns:minmax(0,1.28fr) minmax(240px,.72fr)}
.logo-step:nth-child(even) .logo-step__copy{order:2}.logo-step:nth-child(even) .logo-step__visual{order:1}
.logo-step__copy>span{display:block;font:600 9px/1 Inter,sans-serif;letter-spacing:.16em;margin-bottom:22px}
.logo-step__visual{min-height:0;aspect-ratio:16/7;display:flex;align-items:center;justify-content:center;background:#f4eee2;padding:clamp(28px,5vw,78px);overflow:hidden}
.logo-step__visual img{display:block;width:auto;max-width:92%;max-height:240px;object-fit:contain}
.logo-step--type .logo-step__visual img{width:min(820px,94%);max-height:none;filter:brightness(0) saturate(100%)}
.logo-step--symbol .logo-step__visual{aspect-ratio:4/3}.logo-step--symbol .logo-step__visual img{width:min(150px,45%);max-height:70%}
.logo-step--complete .logo-step__visual{background:#ece4d6}.logo-step--complete .logo-step__visual img{width:min(760px,92%);max-height:none;filter:brightness(0) saturate(100%)}
.logo-step h3{margin:0 0 14px}.logo-step p{max-width:500px}

/* use the final, correctly spaced signature in the spotlight */
.conspiracy-spotlight img{filter:none!important}
.conspiracy-wordmark-ghost{opacity:.04;filter:brightness(0) invert(1)!important}
.conspiracy-wordmark-lit{filter:brightness(0) invert(1)!important}

@media(max-width:850px){
 .conspiracy-reference-grid{gap:8px}
 .conspiracy-reference-grid img{flex:1 1 calc(50% - 8px);height:150px!important;aspect-ratio:auto!important}
 .conspiracy-reference-grid .ref-mez,.conspiracy-reference-grid .ref-light,.conspiracy-reference-grid .ref-e{flex-basis:100%;height:190px!important}
 .logo-step,.logo-step:nth-child(even){grid-template-columns:1fr;gap:24px;padding:38px 0}
 .logo-step:nth-child(even) .logo-step__copy,.logo-step:nth-child(even) .logo-step__visual{order:initial}
 .logo-step__visual{aspect-ratio:16/8;padding:28px 20px}.logo-step--symbol .logo-step__visual{aspect-ratio:16/9}
}
/* V54 corrections */
.logo-step--type .logo-step__visual img{filter:none!important}
.conspiracy-wear-grid{max-width:1050px;margin-left:auto;margin-right:auto;grid-template-columns:.68fr 1.08fr;gap:1.4vw}
.conspiracy-wear-grid img{max-height:68vh;object-fit:contain}
@media(max-width:850px){.conspiracy-wear-grid{max-width:560px;gap:14px}.conspiracy-wear-grid img{max-height:58vh}}
/* JDM V54 — narrative, playful flow */
.pfe-intro--story{background:#171717;position:relative;overflow:hidden}.pfe-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:5vw;max-width:1100px;margin-top:4vw}.pfe-intro-grid p{font:400 17px/1.65 Inter,sans-serif;color:#bdbbb5;margin:0}.pfe-loop{margin-top:7vw;display:flex;align-items:center;gap:clamp(12px,2vw,34px);white-space:nowrap;font:800 clamp(17px,2.4vw,40px)/1 Unbounded,sans-serif;transform:rotate(-2deg);width:max-content}.pfe-loop span{border:1px solid #f2f0e9;border-radius:999px;padding:.65em 1em}.pfe-loop b{font-size:1.3em}.pfe-character--v54{overflow:hidden}.pfe-character-stage{position:relative;min-height:620px;display:grid;place-items:center}.pfe-character-stage>img:first-child{width:min(70%,520px);position:relative;z-index:2;filter:drop-shadow(0 24px 20px rgba(0,0,0,.12));transform:rotate(3deg)}.pfe-character-sticker{position:absolute!important;width:min(42%,320px)!important;right:0;bottom:0;transform:rotate(10deg)!important;z-index:1;mix-blend-mode:multiply;opacity:.8}.pfe-day{padding:10vw 6vw;background:#0f0f0f;overflow:hidden}.pfe-day-head{display:grid;grid-template-columns:.45fr 1fr .7fr;gap:4vw;align-items:end}.pfe-day-head>span{font:600 10px Inter,sans-serif;letter-spacing:.15em;text-transform:uppercase}.pfe-day-head h2{font:800 clamp(58px,9vw,145px)/.8 Unbounded,sans-serif;letter-spacing:-.08em;margin:0}.pfe-day-head p{font:400 15px/1.65 Inter,sans-serif;color:#aaa;max-width:420px}.pfe-day-cards{display:flex;gap:2vw;margin-top:8vw;align-items:flex-start;justify-content:center}.pfe-day-cards figure{margin:0;width:28%;position:relative}.pfe-day-cards figure:nth-child(1){transform:rotate(-5deg) translateY(3vw)}.pfe-day-cards figure:nth-child(2){transform:rotate(2deg)}.pfe-day-cards figure:nth-child(3){transform:rotate(5deg) translateY(4vw)}.pfe-day-cards img{width:100%;display:block;box-shadow:0 25px 50px rgba(0,0,0,.35)}.pfe-day-cards figcaption,.pfe-animation-grid--v54 figcaption,.pfe-tech-grid--v54 figcaption{font:700 9px/1 Inter,sans-serif;letter-spacing:.15em;margin-top:12px}.pfe-scenes--v54{background:#292928}.pfe-animation-grid--v54 figure{margin:0}.pfe-animation-grid--v54 figure:first-child{transform:rotate(-1.5deg)}.pfe-animation-grid--v54 figure:last-child{transform:rotate(1.5deg) translateY(3vw)}.pfe-animation-grid--v54 img{border:1px solid rgba(255,255,255,.15)}.pfe-object--v54{grid-template-columns:.72fr 1.28fr}.pfe-tech-grid--v54 figure{margin:0;background:#111;padding:12px}.pfe-tech-grid--v54 figcaption{color:#eee;padding:0 4px 4px}.pfe-world--v54>img{transform:rotate(1.5deg);box-shadow:0 30px 70px rgba(0,0,0,.12)}.pfe-merch{padding:10vw 6vw 12vw;background:#191918;min-height:100svh;overflow:hidden}.pfe-merch-head{max-width:900px}.pfe-merch-head>span{font:600 10px Inter,sans-serif;letter-spacing:.15em;text-transform:uppercase}.pfe-merch-head h2{font:800 clamp(54px,8vw,130px)/.86 Unbounded,sans-serif;letter-spacing:-.07em;margin:25px 0}.pfe-merch-head p{max-width:600px;font:400 17px/1.65 Inter,sans-serif;color:#bdbbb5}.pfe-merch-chaos{height:min(60vw,760px);position:relative;margin-top:4vw}.pfe-merch-chaos img{position:absolute;object-fit:contain}.merch-sticker{width:min(43vw,600px);left:5%;top:6%;transform:rotate(-8deg)}.merch-figure{width:min(30vw,410px);right:13%;top:0;transform:rotate(6deg);filter:drop-shadow(0 28px 20px rgba(0,0,0,.35))}.merch-logo{width:min(35vw,500px);right:2%;bottom:2%;background:#eee;padding:20px;transform:rotate(-3deg)}
@media(max-width:850px){.pfe-intro-grid{grid-template-columns:1fr;gap:18px}.pfe-loop{margin-top:60px;gap:10px;font-size:14px}.pfe-loop span{padding:.7em .9em}.pfe-character-stage{min-height:420px}.pfe-character-stage>img:first-child{width:76%}.pfe-character-sticker{width:45%!important}.pfe-day{padding:90px 18px 120px}.pfe-day-head{grid-template-columns:1fr;gap:20px}.pfe-day-head h2{font-size:clamp(52px,16vw,90px)}.pfe-day-cards{gap:10px;margin-top:70px;align-items:center}.pfe-day-cards figure{width:32%}.pfe-day-cards figcaption{font-size:7px}.pfe-animation-grid--v54 figure:last-child{transform:rotate(1deg) translateY(0)}.pfe-object--v54{grid-template-columns:1fr}.pfe-merch{padding:90px 18px 110px}.pfe-merch-chaos{height:620px;margin-top:30px}.merch-sticker{width:72vw;left:-5%;top:8%}.merch-figure{width:55vw;right:-5%;top:210px}.merch-logo{width:65vw;right:8%;bottom:0}.pfe-outro--v54{min-height:70svh}}

/* V55 — JDM hierarchy + character / Conspiracy spotlight fix */
.pfe-character-stage{min-height:680px;position:relative;isolation:isolate;overflow:visible}
.pfe-character-stage>img:first-of-type{width:min(86%,650px)!important;max-height:650px;object-fit:contain;position:relative;z-index:2;filter:drop-shadow(0 28px 22px rgba(0,0,0,.12));transform:rotate(-2deg)!important}
.pfe-character-sticker{display:none!important}
.pfe-character-orbit{position:absolute;z-index:1;width:540px;height:540px;border:1px dashed rgba(23,23,23,.25);border-radius:50%;display:grid;place-items:start center;padding-top:16px;font:700 10px/1 Inter,sans-serif;letter-spacing:.22em;transform:rotate(-13deg);animation:pfeOrbit 18s linear infinite;color:#555}
.pfe-character-orbit:after{content:"☾";position:absolute;right:25px;bottom:78px;font:700 58px/1 Georgia,serif}
@keyframes pfeOrbit{to{transform:rotate(347deg)}}
.pfe-day-head{grid-template-columns:.32fr 1.25fr .58fr}
.pfe-day-head h2{font-size:clamp(48px,7vw,112px);line-height:.88;letter-spacing:-.065em}
.pfe-object--v54{grid-template-columns:.48fr 1.52fr!important;gap:5vw;align-items:center}
.pfe-object--v54 .pfe-object-copy h2{font-size:clamp(42px,5.4vw,84px)!important;line-height:.92!important}
.pfe-tech-grid--v54{gap:2vw}
.pfe-tech-grid--v54 figure{padding:8px;background:#111}
.pfe-tech-grid--v54 img{width:100%;height:auto!important;min-height:0!important;object-fit:contain!important;display:block}
.pfe-tech-grid--v54 figcaption{font-size:10px;margin-top:10px}

/* No visible logo until the cursor/touch light reaches it. */
.conspiracy-spotlight{overflow:visible}
.conspiracy-wordmark-ghost{opacity:0!important;visibility:hidden!important}
.conspiracy-wordmark-lit{opacity:1!important;visibility:visible!important;position:absolute!important;left:0!important;top:12px!important;width:100%!important;-webkit-mask-image:radial-gradient(circle var(--spot-size) at var(--spot-x) var(--spot-y),#000 0 74%,rgba(0,0,0,.92) 78%,transparent 100%)!important;mask-image:radial-gradient(circle var(--spot-size) at var(--spot-x) var(--spot-y),#000 0 74%,rgba(0,0,0,.92) 78%,transparent 100%)!important;-webkit-mask-repeat:no-repeat!important;mask-repeat:no-repeat!important}
.conspiracy-spotlight:before{content:"";position:absolute;z-index:-1;width:calc(var(--spot-size)*2.15);height:calc(var(--spot-size)*2.15);left:var(--spot-x);top:var(--spot-y);transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(236,228,214,.12) 0,rgba(236,228,214,.045) 45%,transparent 72%);pointer-events:none}
@media(pointer:coarse){.conspiracy-wordmark-ghost{visibility:visible!important;opacity:.035!important}.conspiracy-wordmark-lit{--spot-size:90px}}
@media(max-width:850px){.pfe-character-stage{min-height:500px}.pfe-character-stage>img:first-of-type{width:92%!important;max-height:470px}.pfe-character-orbit{width:360px;height:360px;font-size:8px}.pfe-day-head{grid-template-columns:1fr}.pfe-day-head h2{font-size:clamp(44px,13vw,76px)}.pfe-object--v54{grid-template-columns:1fr!important}.pfe-object--v54 .pfe-object-copy h2{font-size:clamp(42px,12vw,70px)!important}.pfe-tech-grid--v54{grid-template-columns:1fr!important}.pfe-tech-grid--v54 img{width:100%!important}}
/* JDM V57 — story + original motion assets */
.pfe-hero--v57{min-height:100svh;display:grid;grid-template-columns:1.05fr .95fr;gap:4vw;align-items:center;padding:120px 5vw 150px;background:#181818}.pfe-hero--v57:after{opacity:.08}.pfe-hero-title{font:800 clamp(62px,9vw,150px)/.78 Unbounded,sans-serif;letter-spacing:-.085em;position:relative;z-index:2}.pfe-hero-film{position:relative;z-index:2;transform:rotate(1.5deg)}.pfe-hero-film video{width:100%;display:block;filter:grayscale(1) contrast(1.08);border:1px solid rgba(255,255,255,.18)}.pfe-hero-film span{display:block;margin-top:12px;font:700 9px/1.3 Inter,sans-serif;letter-spacing:.16em}.pfe-character-stage--v57{min-height:680px}.pfe-character-stage--v57>img:first-child{width:min(76%,520px)!important;max-height:650px;filter:drop-shadow(0 25px 18px rgba(0,0,0,.14));z-index:3}.pfe-face-strip{position:absolute;right:-3vw;bottom:4%;width:46%;height:42%;overflow:hidden;opacity:.15;mix-blend-mode:multiply;transform:rotate(4deg)}.pfe-face-strip img{width:235%;max-width:none;transform:translate(-49%,-8%)}.pfe-live-scenes{display:grid;grid-template-columns:1fr 1fr;gap:1.5vw;margin:7vw 0 3vw}.pfe-live-scenes figure{margin:0}.pfe-live-scenes img{width:100%;display:block;image-rendering:auto;border:1px solid rgba(255,255,255,.15)}.pfe-live-scenes figure:nth-child(1){transform:rotate(-1.5deg)}.pfe-live-scenes figure:nth-child(2){transform:rotate(1.5deg) translateY(2vw)}.pfe-live-scenes figcaption{font:700 9px Inter,sans-serif;letter-spacing:.15em;margin-top:10px}.pfe-mechanic{padding:10vw 6vw 12vw;background:#d9d8d2;color:#151515;overflow:hidden}.pfe-mechanic-head{display:grid;grid-template-columns:.25fr 1fr .65fr;gap:4vw;align-items:end}.pfe-mechanic-head>span{font:600 10px Inter,sans-serif;letter-spacing:.15em;text-transform:uppercase}.pfe-mechanic-head h2{font:800 clamp(52px,7.5vw,120px)/.82 Unbounded,sans-serif;letter-spacing:-.075em;margin:0}.pfe-mechanic-head p{font:400 16px/1.65 Inter,sans-serif;color:#4d4d49;margin:0;max-width:500px}.pfe-mechanic-flow{display:grid;grid-template-columns:1fr auto 1fr auto .72fr;gap:1.2vw;align-items:center;margin-top:7vw}.pfe-mechanic-flow figure{margin:0;position:relative}.pfe-mechanic-flow figure>img{width:100%;display:block;background:#222}.pfe-mechanic-flow figure>b{position:absolute;top:10px;left:10px;background:#eee;color:#111;border-radius:999px;padding:7px 9px;font:800 10px Inter,sans-serif}.pfe-mechanic-flow figcaption{font:800 10px Inter,sans-serif;letter-spacing:.12em;margin-top:10px}.pfe-mechanic-flow>i{font:900 clamp(22px,3vw,48px) Inter,sans-serif;font-style:normal}.phone-shell{background:#111;border-radius:34px;padding:10px;box-shadow:0 20px 40px rgba(0,0,0,.18);transform:rotate(2deg)}.phone-shell img{width:100%;display:block;border-radius:25px}.pfe-random-note{font:800 clamp(22px,3.6vw,56px)/1 Unbounded,sans-serif;letter-spacing:-.05em;max-width:1000px;margin:8vw 0 0 auto;text-align:right}.pfe-world--v57{grid-template-columns:.62fr 1.38fr}.pfe-world--v57>img{transform:rotate(1deg);box-shadow:0 30px 70px rgba(0,0,0,.13)}
@media(max-width:850px){.pfe-hero--v57{grid-template-columns:1fr;align-content:center;gap:35px;padding:110px 18px 205px}.pfe-hero-title{font-size:clamp(50px,14vw,82px)}.pfe-hero-film{width:94%;margin-left:6%;transform:rotate(1deg)}.pfe-character-stage--v57{min-height:500px}.pfe-character-stage--v57>img:first-child{width:82%!important}.pfe-face-strip{width:55%;height:34%;right:-18px}.pfe-live-scenes{grid-template-columns:1fr;margin:55px 0 40px;gap:18px}.pfe-live-scenes figure:nth-child(2){transform:rotate(1deg)}.pfe-mechanic{padding:90px 18px 110px}.pfe-mechanic-head{grid-template-columns:1fr;gap:20px}.pfe-mechanic-head h2{font-size:clamp(48px,14vw,78px)}.pfe-mechanic-flow{grid-template-columns:1fr;margin-top:60px;gap:18px}.pfe-mechanic-flow>i{transform:rotate(90deg);justify-self:center}.pfe-phone-demo{width:78%;justify-self:center}.pfe-random-note{font-size:clamp(25px,8vw,42px);margin-top:70px}.pfe-world--v57{grid-template-columns:1fr}}

/* JDM V58 — game typography, textured hero, website mockup */
.page-pfe .pfe-hero--v57{background:#151515;isolation:isolate}
.page-pfe .pfe-hero--v57:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,16,16,.35),rgba(16,16,16,.62)),url("assets/pfe/case-1-bg.gif") center/cover no-repeat;opacity:.7;z-index:0;filter:grayscale(1) contrast(1.04)}
.page-pfe .pfe-hero--v57:after{z-index:1;opacity:.06}
.page-pfe .pfe-hero--v57>*{position:relative;z-index:2}
.page-pfe .pfe-hero-title,.page-pfe .pfe-intro h2,.page-pfe .pfe-character h2,.page-pfe .pfe-day-head h2,.page-pfe .pfe-mechanic-head h2,.page-pfe .pfe-world h2,.page-pfe .pfe-merch-head h2,.page-pfe .pfe-random-note,.page-pfe .pfe-outro p{font-family:"Rammetto One",sans-serif!important;font-weight:400!important;letter-spacing:-.045em!important}
.page-pfe .pfe-hero-title{line-height:.86!important;text-shadow:0 4px 20px rgba(0,0,0,.28)}
.pfe-site-demo{margin:9vw auto 0;max-width:1120px}
.pfe-site-demo__head{display:grid;grid-template-columns:.35fr 1fr;gap:3vw;align-items:end;margin-bottom:24px}
.pfe-site-demo__head span{font:700 10px/1 Inter,sans-serif;letter-spacing:.16em}
.pfe-site-demo__head p{margin:0;max-width:520px;font:400 15px/1.6 Inter,sans-serif;color:#bdbbb5}
.pfe-site-browser{border:1px solid rgba(255,255,255,.22);border-radius:18px;overflow:hidden;background:#e9e8e2;box-shadow:0 28px 70px rgba(0,0,0,.3)}
.pfe-site-browser__bar{height:42px;background:#252524;display:flex;align-items:center;gap:7px;padding:0 14px;color:#8e8d88}
.pfe-site-browser__bar i{width:8px;height:8px;border:1px solid #85847f;border-radius:50%;display:block}
.pfe-site-browser__bar b{margin-left:10px;font:500 9px/1 Inter,sans-serif;letter-spacing:.08em}
.pfe-site-browser__viewport{height:min(62vh,620px);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scroll-behavior:smooth}
.pfe-site-browser__viewport img{width:100%;height:auto;display:block;position:static;object-fit:initial}
.pfe-site-demo>small{display:block;margin-top:12px;text-align:right;font:700 9px/1 Inter,sans-serif;letter-spacing:.16em;color:#8f8e89}
@media(max-width:850px){.page-pfe .pfe-hero--v57:before{background-position:58% center;opacity:.58}.pfe-site-demo{margin-top:90px}.pfe-site-demo__head{grid-template-columns:1fr;gap:10px}.pfe-site-browser{border-radius:12px}.pfe-site-browser__viewport{height:58vh}.pfe-site-browser__bar b{max-width:170px;overflow:hidden;white-space:nowrap}.pfe-site-demo>small{text-align:left}}
/* V59 JDM fixes */
.page-pfe .merch-sticker,.page-pfe .pfe-outro--v54>img{mix-blend-mode:normal!important;background:transparent!important}
.page-pfe .pfe-site-browser__viewport{overflow-anchor:none!important;scroll-snap-type:none!important}
.page-pfe .pfe-site-browser__viewport>img{margin:0!important;transform:none!important;vertical-align:top!important}
/* JDM V60 — ensemble + poster moved into identity/objects */
.page-pfe .pfe-world--v57>img{max-height:72vh;object-fit:contain;box-shadow:none;background:#efefed}
.page-pfe .pfe-merch-chaos{height:min(64vw,820px)}
.page-pfe .merch-poster{width:min(34vw,500px);left:2%;top:4%;transform:rotate(-2.5deg);box-shadow:0 28px 60px rgba(0,0,0,.28)}
.page-pfe .merch-sticker{width:min(31vw,440px);left:31%;top:42%;z-index:3}
.page-pfe .merch-figure{width:min(25vw,350px);right:12%;top:4%;z-index:2}
.page-pfe .merch-logo{width:min(27vw,390px);right:1%;bottom:5%;z-index:1}
@media(max-width:850px){
 .page-pfe .pfe-world--v57>img{max-height:none;width:100%}
 .page-pfe .pfe-merch-chaos{height:780px}
 .page-pfe .merch-poster{width:66vw;left:0;top:15px}
 .page-pfe .merch-sticker{width:64vw;left:30%;top:300px}
 .page-pfe .merch-figure{width:47vw;right:-3%;top:65px}
 .page-pfe .merch-logo{width:58vw;right:4%;bottom:5px}
}

/* JDM V61 — reliable MP4 loops + rhythm / leading polish */
.page-pfe .pfe-mechanic-flow figure>video{
  width:100%;height:auto;display:block;background:#222;object-fit:contain;
}
.page-pfe .pfe-hero-title{line-height:.92!important;letter-spacing:-.035em!important}
.page-pfe .pfe-intro h2,
.page-pfe .pfe-character h2,
.page-pfe .pfe-day-head h2,
.page-pfe .pfe-mechanic-head h2,
.page-pfe .pfe-world h2,
.page-pfe .pfe-merch-head h2{line-height:1.02!important;letter-spacing:-.035em!important}
.page-pfe .pfe-random-note{line-height:1.08!important;letter-spacing:-.025em!important}
.page-pfe .pfe-outro p{line-height:1.08!important;letter-spacing:-.025em!important}
.page-pfe .pfe-merch-head h2{margin:30px 0 34px}
.page-pfe .pfe-day-head h2,.page-pfe .pfe-mechanic-head h2{margin-top:.08em;margin-bottom:.08em}
.page-pfe .pfe-mechanic-head p,.page-pfe .pfe-day-head p,.page-pfe .pfe-merch-head p{line-height:1.7}
@media(max-width:850px){
 .page-pfe .pfe-hero-title{line-height:.96!important}
 .page-pfe .pfe-intro h2,.page-pfe .pfe-character h2,.page-pfe .pfe-day-head h2,.page-pfe .pfe-mechanic-head h2,.page-pfe .pfe-world h2,.page-pfe .pfe-merch-head h2{line-height:1.06!important;letter-spacing:-.025em!important}
 .page-pfe .pfe-random-note,.page-pfe .pfe-outro p{line-height:1.12!important}
}
/* V62 — clearer section marker/title spacing on JDM */
.page-pfe .pfe-day-head>span,.page-pfe .pfe-mechanic-head>span{align-self:start;padding-top:.25em}
@media(min-width:851px){
 .page-pfe .pfe-day-head,.page-pfe .pfe-mechanic-head{align-items:start}
 .page-pfe .pfe-day-head h2,.page-pfe .pfe-mechanic-head h2{margin-top:0!important}
}
@media(max-width:850px){
 .page-pfe .pfe-day-head,.page-pfe .pfe-mechanic-head{gap:0!important}
 .page-pfe .pfe-day-head>span,.page-pfe .pfe-mechanic-head>span{display:block;margin-bottom:24px}
 .page-pfe .pfe-day-head h2,.page-pfe .pfe-mechanic-head h2{margin:0 0 24px!important}
}

/* RIVAGES V63 — archives → system → final artwork */
.rivages-v63{--rv-ink:#292729;--rv-paper:#f0cd85;--rv-cream:#fbfef9;--rv-prune:#4d3968;--rv-night:#301849;--rv-brick:#d77047;--rv-brick2:#d79479;--rv-sun:#f4bb40;--rv-sky:#7296da;--rv-sea:#366ed9;--rv-olive:#a99b52;background:var(--rv-paper);color:var(--rv-ink)}
.rivages-v63 .project-nav{color:var(--rv-cream);mix-blend-mode:difference}.rv63-section{display:block;font:500 10px/1.4 "DM Mono",monospace;letter-spacing:.12em;text-transform:uppercase;margin:0 0 26px}.rv63-title{display:block;max-width:min(760px,92%);height:auto}.rv63-title--hero{max-width:min(760px,90%)}
.rv63-hero{min-height:100svh;position:relative;overflow:hidden;background:var(--rv-brick);color:var(--rv-cream);padding:130px 6vw 6vw;display:grid;grid-template-columns:1.2fr .8fr;gap:5vw;align-items:center}.rv63-hero:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.14;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.45'/%3E%3C/svg%3E")}.rv63-hero__sun{position:absolute;width:55vw;aspect-ratio:1;border-radius:50%;background:var(--rv-sun);right:-18vw;top:-24vw;box-shadow:0 0 0 7vw var(--rv-sky),0 0 0 14vw var(--rv-prune);opacity:.8}.rv63-hero__copy,.rv63-cover{position:relative;z-index:2}.rv63-kicker{font:500 10px "DM Mono",monospace;letter-spacing:.12em;margin:0 0 32px}.rv63-hero__copy>p:last-child{font:600 clamp(24px,2.7vw,42px)/1.08 Inter,sans-serif;letter-spacing:-.035em;max-width:760px;margin:40px 0 0}.rv63-cover{margin:0;width:min(32vw,470px);justify-self:end;transform:rotate(3deg)}.rv63-cover img{display:block;width:100%;box-shadow:0 35px 80px rgba(35,20,30,.28)}.rv63-cover figcaption{font:500 9px "DM Mono",monospace;letter-spacing:.08em;margin-top:10px}
.rv63-intro{background:var(--rv-cream);padding:11vw 6vw;display:grid;grid-template-columns:.85fr 1.15fr;gap:9vw}.rv63-intro h2,.rv63-evolve h2{font:800 clamp(48px,6.5vw,104px)/.9 Inter,sans-serif;letter-spacing:-.06em;margin:0}.rv63-intro__copy>p{font:500 clamp(19px,1.7vw,27px)/1.35 Inter,sans-serif;letter-spacing:-.025em;margin:0 0 26px;max-width:780px}.rv63-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;border-top:1px solid #aaa;padding-top:18px;margin-top:55px;font:400 11px/1.55 "DM Mono",monospace}.rv63-facts b{display:block;font-size:9px;letter-spacing:.1em;margin-bottom:8px}
.rv63-archive{background:var(--rv-night);color:var(--rv-cream);padding:10vw 6vw;display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw;align-items:center}.rv63-archive__copy p,.rv63-language__head p,.rv63-compose__copy p,.rv63-evolve__copy p,.rv63-final__copy p{font:400 14px/1.7 "DM Mono",monospace;max-width:600px}.rv63-archive__copy .rv63-title{margin:0 0 42px}.rv63-archive__desk{min-height:650px;position:relative}.rv63-archive__desk .a{position:absolute;display:block;box-shadow:0 28px 65px rgba(0,0,0,.25)}.rv63-archive__desk .a1{width:63%;left:0;top:4%;transform:rotate(-4deg)}.rv63-archive__desk .a2{width:52%;right:0;top:29%;transform:rotate(5deg)}.rv63-archive__desk .a3{width:55%;left:17%;bottom:0;transform:rotate(1.5deg)}
.rv63-language{background:var(--rv-paper);padding:10vw 6vw 0;overflow:hidden}.rv63-language__head{display:grid;grid-template-columns:.55fr 1fr .8fr;gap:4vw;align-items:start}.rv63-language__head .rv63-section{grid-column:1}.rv63-language__head .rv63-title{grid-column:2;max-width:100%}.rv63-language__head p{grid-column:3;margin:0}.rv63-patterns{display:flex;gap:0;margin:8vw -6vw 0}.rv63-patterns img{width:33.333%;aspect-ratio:1.42;object-fit:cover}.rv63-brand-grid{display:grid;grid-template-columns:1.1fr .9fr 1.1fr;gap:18px;padding:18px 0 10vw}.rv63-brand-grid figure{margin:0;background:var(--rv-cream);padding:12px}.rv63-brand-grid img{width:100%;display:block;aspect-ratio:16/10;object-fit:cover}.rv63-brand-grid figcaption{font:500 9px "DM Mono",monospace;text-transform:uppercase;letter-spacing:.08em;padding:10px 2px 0}
.rv63-compose{background:var(--rv-prune);color:var(--rv-cream);padding:10vw 6vw}.rv63-compose__copy{display:grid;grid-template-columns:.45fr 1.1fr .8fr;gap:4vw;align-items:start}.rv63-compose__copy .rv63-title{max-width:100%}.rv63-compose__copy p{margin:0}.rv63-posters{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:7vw}.rv63-posters img{width:100%;display:block}.rv63-posters img:first-child{transform:rotate(-1deg)}.rv63-posters img:last-child{transform:rotate(1deg);margin-top:6vw}
.rv63-evolve{background:var(--rv-sun);padding:10vw 6vw;display:grid;grid-template-columns:1.1fr .9fr;gap:7vw;align-items:center}.rv63-evolve__visual{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}.rv63-evolve__visual img{width:100%;display:block}.rv63-evolve__visual img:last-child{margin-top:7vw}.rv63-evolve__copy h2{color:var(--rv-prune);font-size:clamp(46px,5.8vw,92px);margin:0 0 35px}.rv63-evolve__copy>img{width:100%;display:block;margin-top:50px;box-shadow:0 25px 55px rgba(100,60,20,.18);transform:rotate(1deg)}
.rv63-final{min-height:110svh;background:var(--rv-sea);color:var(--rv-cream);padding:10vw 6vw;display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center;overflow:hidden}.rv63-final__copy .rv63-title{margin-bottom:38px}.rv63-final__cover{position:relative;display:grid;place-items:center;min-height:720px}.rv63-final__cover img{position:relative;z-index:2;width:min(66%,590px);display:block;box-shadow:0 45px 90px rgba(25,30,70,.28);transform:rotate(-2deg)}.rv63-final__halo{position:absolute;width:68%;aspect-ratio:1;border-radius:50%;background:var(--rv-sun);box-shadow:0 0 0 6vw var(--rv-brick),0 0 0 12vw var(--rv-prune)}.rv63-next{background:var(--rv-cream)!important;color:var(--rv-night)!important}
@media(max-width:850px){.rivages-v63 .project-nav{mix-blend-mode:normal;color:var(--rv-cream)}.rv63-hero{min-height:auto;padding:120px 18px 75px;grid-template-columns:1fr;gap:55px}.rv63-hero__sun{width:105vw;right:-60vw;top:-35vw}.rv63-title--hero{max-width:92%}.rv63-hero__copy>p:last-child{font-size:25px;margin-top:30px}.rv63-cover{width:min(78vw,390px);justify-self:end}.rv63-intro,.rv63-archive,.rv63-evolve,.rv63-final{grid-template-columns:1fr;padding:85px 18px;gap:55px}.rv63-intro h2,.rv63-evolve h2{font-size:clamp(48px,14vw,72px)}.rv63-facts{grid-template-columns:1fr 1fr}.rv63-archive__desk{min-height:470px}.rv63-language{padding:85px 18px 0}.rv63-language__head,.rv63-compose__copy{display:block}.rv63-language__head .rv63-title,.rv63-compose__copy .rv63-title{max-width:92%;margin:0 0 32px}.rv63-language__head p,.rv63-compose__copy p{margin-top:0}.rv63-patterns{margin:65px -18px 0;overflow:hidden;gap:0}.rv63-patterns img{width:65%;flex:0 0 65%}.rv63-brand-grid{grid-template-columns:1fr;padding:14px 0 85px}.rv63-compose{padding:85px 18px}.rv63-posters{grid-template-columns:1fr;margin-top:60px}.rv63-posters img:last-child{margin-top:0}.rv63-evolve__visual{order:2}.rv63-evolve__copy{order:1}.rv63-final__cover{min-height:480px}.rv63-final__cover img{width:70%}.rv63-final__halo{width:66%;box-shadow:0 0 0 8vw var(--rv-brick),0 0 0 16vw var(--rv-prune)}}
/* RIVAGES V64 — Mediterranean recomposed */
@font-face{font-family:"Montra";src:url("assets/rivages-brand/Montra-FreePersonalUse.otf") format("opentype");font-display:swap}.rivages-v64{background:#f0cd85}.rv64-hero{min-height:100svh;position:relative;overflow:hidden;background:#d77047;color:#fff8e9;padding:130px 6vw 5vw;display:flex;align-items:flex-end;isolation:isolate}.rv64-hero-pattern{position:absolute;inset:-8%;background:url("assets/rivages-brand/pattern-wave.png") center/cover;opacity:.28;transform:scale(1.12);z-index:-2}.rv64-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 20%,rgba(244,187,64,.8),transparent 30%),linear-gradient(90deg,rgba(77,57,104,.22),transparent 50%);z-index:-1}.rv64-hero-copy{width:58%;position:relative;z-index:3}.rv64-hero h1,.rv64-intro h2,.rv64-archive h2,.rv64-head h2,.rv64-final h2{font-family:"Montra",Inter,sans-serif;font-weight:400;letter-spacing:-.025em}.rv64-hero h1{font-size:clamp(100px,16vw,260px);line-height:.72;margin:0;text-transform:uppercase}.rv64-hero-copy>p:last-child{font:600 clamp(20px,2vw,32px)/1.15 Inter,sans-serif;max-width:630px;margin:45px 0 0}.rv64-guys{position:absolute;z-index:2;right:2vw;bottom:-4%;width:min(46vw,720px);max-height:84vh;object-fit:contain;filter:drop-shadow(0 28px 35px rgba(60,25,25,.18));transform-origin:50% 100%}.rv64-intro h2{font-size:clamp(54px,7vw,112px)!important;line-height:.88!important;letter-spacing:-.025em!important}.rv64-archive{min-height:105svh;background:#301849;color:#fff8e9;padding:10vw 6vw;position:relative;overflow:hidden;display:grid;grid-template-columns:.72fr 1.28fr;gap:5vw;align-items:center}.rv64-archive-copy{position:relative;z-index:4}.rv64-archive h2,.rv64-head h2,.rv64-final h2{font-size:clamp(52px,6.7vw,106px);line-height:.9;margin:0 0 38px}.rv64-archive p,.rv64-head p,.rv64-final p{font:400 14px/1.72 "DM Mono",monospace;max-width:610px}.rv64-cutouts{height:720px;position:relative}.rv64-cutouts img{position:absolute;max-height:70%;max-width:46%;object-fit:contain;filter:drop-shadow(0 24px 25px rgba(0,0,0,.2));will-change:transform}.rv64-cutouts img:nth-child(1){left:0;bottom:2%;transform:rotate(-5deg)}.rv64-cutouts img:nth-child(2){left:25%;top:0;transform:rotate(4deg)}.rv64-cutouts img:nth-child(3){right:2%;bottom:4%;transform:rotate(6deg)}.rv64-cutouts img:nth-child(4){right:8%;top:4%;max-height:43%;transform:rotate(-5deg)}.rv64-research{background:#f0cd85;padding:10vw 6vw;overflow:hidden}.rv64-head{display:grid;grid-template-columns:.3fr 1fr .65fr;gap:4vw;align-items:start}.rv64-head h2{margin:0}.rv64-head p{margin:0}.rv64-research-grid{display:grid;grid-template-columns:1fr .82fr 1fr;gap:2vw;margin-top:7vw;align-items:start}.rv64-research-grid img{width:100%;display:block;box-shadow:0 25px 55px rgba(73,45,30,.12)}.rv64-research-grid img:nth-child(1){transform:rotate(-1.5deg)}.rv64-research-grid img:nth-child(2){margin-top:8vw;transform:rotate(1.5deg)}.rv64-research-grid img:nth-child(3){margin-top:2vw;transform:rotate(-.7deg)}.rv64-brand{background:#fff8e9;padding:10vw 6vw 0;overflow:hidden}.rv64-logo-stage{height:60vh;display:grid;place-items:center;margin:7vw -6vw 0;background:#4d3968}.rv64-logo-stage img{width:min(68vw,1000px);filter:brightness(0) invert(1)}.rv64-type-stage{background:#d77047;color:#f4bb40;margin:0 -6vw;padding:8vw 6vw;position:relative}.rv64-type-stage span,.rv64-type-stage small{font:500 10px "DM Mono",monospace;letter-spacing:.14em}.rv64-type-stage strong{display:block;font:400 clamp(70px,13vw,220px)/.72 "Montra",Inter,sans-serif;letter-spacing:-.025em;margin:3vw 0}.rv64-palette{display:grid;grid-template-columns:repeat(6,1fr);margin:0 -6vw}.rv64-palette i{background:var(--c);aspect-ratio:1.25;display:block}.rv64-patterns{display:grid;grid-template-columns:repeat(3,1fr);margin:0 -6vw}.rv64-patterns img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.rv64-campaign{background:#292729;color:#fff8e9;padding:10vw 6vw}.rv64-youtube{display:grid;grid-template-columns:1fr 1fr;gap:2vw;margin-top:7vw}.rv64-youtube figure{margin:0}.rv64-youtube img{width:100%;display:block}.rv64-youtube figure:first-child{transform:rotate(-1deg)}.rv64-youtube figure:last-child{transform:rotate(1deg);margin-top:5vw}.rv64-youtube figcaption{font:500 9px "DM Mono",monospace;letter-spacing:.1em;text-transform:uppercase;margin-top:12px}.rv64-postcard{display:grid;grid-template-columns:.45fr 1fr;gap:5vw;align-items:center;margin-top:11vw}.rv64-postcard p{font:500 clamp(22px,2.5vw,38px)/1.1 Inter,sans-serif;max-width:400px}.rv64-postcard video{width:100%;display:block;border:1px solid rgba(255,255,255,.16)}.rv64-final{min-height:110svh;background:#366ed9;color:#fff8e9;padding:10vw 6vw;display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw;align-items:center;overflow:hidden}.rv64-final-copy{position:relative;z-index:3}.rv64-cover{min-height:720px;display:grid;place-items:center;position:relative}.rv64-cover img{width:min(65%,590px);display:block;position:relative;z-index:2;box-shadow:0 45px 90px rgba(20,30,80,.3);transform:rotate(-2deg)}.rv64-rings{position:absolute;width:60%;aspect-ratio:1;border-radius:50%;background:#f4bb40;box-shadow:0 0 0 6vw #d77047,0 0 0 12vw #4d3968;animation:rvPulse 7s ease-in-out infinite}.rivages-v64 .rv63-section{margin-bottom:28px}@keyframes rvPulse{50%{transform:scale(1.06) rotate(4deg)}}
@media(prefers-reduced-motion:no-preference){.rv64-hero-pattern{animation:rvDrift 18s ease-in-out infinite alternate}.rv64-guys{animation:rvFloat 6s ease-in-out infinite}.rv64-cutouts img:nth-child(1){animation:rvCut1 8s ease-in-out infinite}.rv64-cutouts img:nth-child(2){animation:rvCut2 9s ease-in-out infinite}.rv64-cutouts img:nth-child(3){animation:rvCut3 7s ease-in-out infinite}.rv64-cutouts img:nth-child(4){animation:rvCut4 10s ease-in-out infinite}@keyframes rvDrift{to{transform:scale(1.2) translate3d(-2%,2%,0)}}@keyframes rvFloat{50%{transform:translateY(-16px) rotate(.8deg)}}@keyframes rvCut1{50%{transform:translateY(-15px) rotate(-3deg)}}@keyframes rvCut2{50%{transform:translateY(12px) rotate(6deg)}}@keyframes rvCut3{50%{transform:translateY(-12px) rotate(3deg)}}@keyframes rvCut4{50%{transform:translateY(10px) rotate(-2deg)}}}
@media(max-width:850px){.rv64-hero{min-height:100svh;padding:115px 18px 40px;align-items:flex-start}.rv64-hero-copy{width:100%;z-index:4}.rv64-hero h1{font-size:clamp(82px,28vw,150px);line-height:.76}.rv64-hero-copy>p:last-child{font-size:20px;width:82%;margin-top:28px}.rv64-guys{width:92vw;right:-13vw;bottom:-1%;max-height:56vh}.rv64-hero-pattern{background-position:55% center}.rv64-intro h2,.rv64-archive h2,.rv64-head h2,.rv64-final h2{font-size:clamp(48px,14vw,76px)!important;line-height:.94!important}.rv64-archive{grid-template-columns:1fr;padding:90px 18px;min-height:auto}.rv64-cutouts{height:520px;margin-top:25px}.rv64-cutouts img{max-width:55%;max-height:58%}.rv64-cutouts img:nth-child(2){left:30%}.rv64-research,.rv64-brand,.rv64-campaign,.rv64-final{padding:90px 18px}.rv64-head{display:block}.rv64-head h2{margin-bottom:30px}.rv64-research-grid{grid-template-columns:1fr;gap:18px;margin-top:60px}.rv64-research-grid img:nth-child(n){margin-top:0;transform:none}.rv64-logo-stage{height:42vh;margin:60px -18px 0}.rv64-logo-stage img{width:86vw}.rv64-type-stage{margin:0 -18px;padding:70px 18px}.rv64-type-stage strong{font-size:clamp(58px,19vw,100px);line-height:.8;margin:30px 0}.rv64-palette{grid-template-columns:repeat(3,1fr);margin:0 -18px}.rv64-patterns{display:flex;overflow:hidden;margin:0 -18px}.rv64-patterns img{flex:0 0 76%;width:76%}.rv64-youtube{grid-template-columns:1fr;margin-top:55px;gap:20px}.rv64-youtube figure:last-child{margin-top:0}.rv64-postcard{grid-template-columns:1fr;margin-top:85px}.rv64-final{grid-template-columns:1fr;gap:45px}.rv64-cover{min-height:480px}.rv64-cover img{width:72%}.rv64-rings{width:65%;box-shadow:0 0 0 8vw #d77047,0 0 0 16vw #4d3968}}
\n/* Rivages V65 — kinetic type + quieter hero */
.rivages-v64 .rv64-hero{background:#f0cd85;color:#301849}
.rivages-v64 .rv64-hero-pattern{opacity:.10;mix-blend-mode:multiply}
.rivages-v64 .rv64-hero:after{background:radial-gradient(circle at 72% 18%,rgba(244,187,64,.55),transparent 28%),linear-gradient(110deg,rgba(255,248,233,.34),transparent 55%)}
.rivages-v64 .rv64-guys{filter:drop-shadow(0 28px 35px rgba(60,25,25,.12))}
.rivages-v64 .rv64-type-stage{padding:5vw 0 5.5vw;overflow:hidden}
.rivages-v64 .rv64-type-stage>span{display:block;padding:0 3vw;margin-bottom:2.2vw}
.rv65-type-marquee{display:grid;gap:.12em;font-family:"Montra",Inter,sans-serif;text-transform:uppercase;line-height:.72}
.rv65-type-line{display:flex;width:max-content;white-space:nowrap;will-change:transform}
.rv65-type-line b{font:400 clamp(78px,12vw,210px)/.72 "Montra",Inter,sans-serif;letter-spacing:-.025em;padding-right:.16em}
.rv65-type-left{color:#f4bb40;animation:rv65Left 18s linear infinite}
.rv65-type-right{color:#4d3968;animation:rv65Right 15s linear infinite;transform:translateX(-25%)}
@keyframes rv65Left{to{transform:translateX(-50%)}}
@keyframes rv65Right{to{transform:translateX(25%)}}
.rivages-v64 .rv64-cutouts img{max-width:58%;max-height:82%}
.rivages-v64 .rv64-cutouts img:nth-child(1){left:0;bottom:0}
.rivages-v64 .rv64-cutouts img:nth-child(2){left:auto;right:0;top:0}
.rivages-v64 .rv64-research-grid{grid-template-columns:1fr 1fr;gap:3vw}
.rivages-v64 .rv64-research-grid img:nth-child(2){margin-top:7vw;transform:rotate(1.2deg)}
@media(prefers-reduced-motion:reduce){.rv65-type-line{animation:none!important}}
@media(max-width:850px){.rivages-v64 .rv64-hero{background:#f0cd85}.rivages-v64 .rv64-type-stage{padding:60px 0}.rivages-v64 .rv64-type-stage>span{padding:0 18px;margin-bottom:28px}.rv65-type-line b{font-size:clamp(62px,21vw,112px)}.rivages-v64 .rv64-cutouts{height:480px}.rivages-v64 .rv64-cutouts img{max-width:66%;max-height:74%}.rivages-v64 .rv64-research-grid{grid-template-columns:1fr;gap:20px}.rivages-v64 .rv64-research-grid img:nth-child(2){margin-top:0;transform:none}}

/* V66 global project navigation + hierarchy */
.project-nav,.project-mobile-menu{font-family:"Inter",system-ui,sans-serif!important}
.project-nav__brand,.project-nav__back,.project-nav__menu{font-family:"Inter",system-ui,sans-serif!important;font-weight:600;letter-spacing:.12em}
.project-nav__brand{font-family:"Unbounded","Inter",sans-serif!important;font-weight:800;letter-spacing:-.035em}
.project-burger{font-family:"Inter",system-ui,sans-serif!important}
.project-section__head h2{font-size:clamp(44px,6vw,96px);line-height:.94}
.project-section__head p{font-size:clamp(16px,1.35vw,21px);line-height:1.55}
.belle-project-nav{color:#fff2cc}
.belle-mobile-menu{--page-bg:#281f4c;--page-ink:#fff2cc;background:#281f4c!important;color:#fff2cc!important}
@media(max-width:850px){.project-section__head h2{font-size:clamp(42px,13vw,70px)}.project-nav__brand{font-size:10px!important}}
.rv64-palette i{position:relative}
.rv64-palette i span{position:absolute;left:14px;bottom:13px;font:500 9px/1 "DM Mono",monospace;letter-spacing:.08em;color:#211b22;background:rgba(255,248,233,.72);padding:6px 7px;border-radius:999px;font-style:normal}
.elwin-product-showcase{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(14px,2vw,28px);align-items:center}.elwin-product-showcase img{width:100%;background:#ecebfd;border-radius:24px;padding:clamp(10px,1.5vw,20px)}
.elwin-components{background:#171936;color:#fff6df}.elwin-components .project-section__head h2{color:#ffe27a}.elwin-component-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,28px);align-items:center}.elwin-component-grid img{width:100%;border-radius:24px}.elwin-component-grid img:first-child{background:#fff;padding:18px}.elwin-rebrand{background:#fff6df;color:#20223f}.elwin-rebrand .project-section__head h2{color:#352cd3}
@media(max-width:850px){.elwin-product-showcase,.elwin-component-grid{grid-template-columns:1fr}.elwin-product-showcase img,.elwin-component-grid img{border-radius:16px}}
@media(prefers-reduced-motion:no-preference){.project-next span{transition:transform .3s ease}.project-next:hover span{transform:translate(6px,-6px)}}
\n/* V67 corrective pass: restore hierarchy and project-specific typography */\n.project-section__head{display:flex!important;flex-direction:column!important;gap:14px!important;align-items:flex-start!important;margin-bottom:clamp(42px,6vw,82px)!important}\n.project-section__head>div{width:100%}.project-number{padding-top:0!important;margin-bottom:4px}.project-section__head h2{max-width:980px}.project-section__head p{margin-top:22px!important}\n/* Elwin uses Asap throughout the case study. */\nbody.page-elwin,.page-elwin .project-title,.page-elwin .project-section__head h2,.page-elwin .project-next strong,.page-elwin .project-kicker,.page-elwin .project-number,.page-elwin .elwin-swatch{font-family:"Asap",system-ui,sans-serif!important}\n.elwin-logo-transition{display:grid;grid-template-columns:1fr auto 1fr;gap:clamp(22px,4vw,70px);align-items:center;margin-top:20px}.elwin-logo-transition figure{margin:0;min-height:260px;border-radius:24px;background:#fff;display:grid;place-items:center;padding:36px;position:relative}.elwin-logo-transition figure span{position:absolute;top:18px;left:20px;font:600 10px/1 "Asap",sans-serif;letter-spacing:.12em;color:#6d6d7c}.elwin-logo-transition img{max-width:78%;max-height:150px;object-fit:contain}.elwin-logo-transition figure:last-child{background:#352cd3}.elwin-logo-transition figure:last-child span{color:#fff6df}.elwin-logo-transition i{font:500 clamp(30px,4vw,58px)/1 "Asap",sans-serif;font-style:normal;color:#352cd3}\n/* Rivages: Montra is an identity accent, not the body display face. */\n.rivages-v64 .rv64-intro h2,.rivages-v64 .rv64-archive h2,.rivages-v64 .rv64-head h2,.rivages-v64 .rv64-final h2{font-family:"Inter",sans-serif!important;font-weight:800!important;letter-spacing:-.055em!important;line-height:.9!important}.rivages-v64 .rv64-hero h1,.rv65-type-marquee,.rv65-type-line b,.rivages-v64 .rv64-type-stage strong{font-family:"Montra","Inter",sans-serif!important}.rivages-v64 .rv64-head h2,.rivages-v64 .rv64-final h2,.rivages-v64 .rv64-archive h2{font-size:clamp(48px,5.8vw,92px)!important}\n/* The real supplied Conspiracy signature, never a reconstructed mark. */\n.logo-step--complete .logo-step__visual img{width:min(88%,900px);height:auto;object-fit:contain}\n@media(max-width:850px){.elwin-logo-transition{grid-template-columns:1fr}.elwin-logo-transition i{transform:rotate(90deg);justify-self:center}.elwin-logo-transition figure{min-height:210px}.project-section__head{gap:10px!important}.project-section__head p{margin-top:14px!important}}\n
/* V68 targeted corrections — no changes to Belle Époque */
/* Rivages: Manrope is the reading face, consistently sized. Section labels sit above titles. */
.rivages-v64{font-family:"Manrope",Inter,sans-serif}
.rivages-v64 .rv64-hero-copy>p:last-child,
.rivages-v64 .rv64-intro p,
.rivages-v64 .rv64-archive p,
.rivages-v64 .rv64-head p,
.rivages-v64 .rv64-final p,
.rivages-v64 .rv64-postcard p,
.rivages-v64 .rv64-youtube figcaption,
.rivages-v64 .rv63-section{font-family:"Manrope",Inter,sans-serif!important}
.rivages-v64 .rv64-intro p,.rivages-v64 .rv64-archive p,.rivages-v64 .rv64-head p,.rivages-v64 .rv64-final p{font-size:16px!important;line-height:1.65!important}
.rivages-v64 .rv64-head{display:flex!important;flex-direction:column!important;gap:0!important;align-items:flex-start!important}
.rivages-v64 .rv64-head .rv63-section{order:0;margin:0 0 24px!important}
.rivages-v64 .rv64-head h2{order:1;margin:0 0 28px!important;max-width:980px}
.rivages-v64 .rv64-head p{order:2;max-width:650px;margin:0!important}
.rivages-v64 .rv64-campaign{background:#7296DA!important;color:#301849!important}
.rivages-v64 .rv64-campaign .rv63-section,.rivages-v64 .rv64-campaign figcaption{color:#301849!important}
.rivages-v64 .rv64-postcard video{border-color:rgba(48,24,73,.18)}
/* Elwin: section label above title and only genuine product imagery after section 02. */
.page-elwin .project-section__head{display:flex!important;flex-direction:column!important;gap:0!important;align-items:flex-start!important}
.page-elwin .project-number{display:block!important;margin:0 0 22px!important}
.page-elwin .project-section__head>div{width:100%!important}
.page-elwin .project-section__head h2{margin:0 0 24px!important}
.page-elwin .project-section__head p{margin:0!important;max-width:760px}
.elwin-logo-transition figure{min-height:220px;padding:48px 34px 30px}
.elwin-logo-transition img{width:auto;max-width:82%;max-height:110px;object-fit:contain}
.elwin-logo-transition figure:first-child img{max-width:88%}
.elwin-logo-transition figure:last-child img{filter:none}
.elwin-product-showcase{grid-template-columns:1fr 1fr!important;align-items:start!important}
.elwin-product-showcase img{padding:0!important;border-radius:0!important;background:transparent!important;object-fit:contain}
.elwin-component-grid{grid-template-columns:1fr!important;align-items:start!important}
.elwin-component-grid img{padding:0!important;border-radius:0!important;background:transparent!important;width:100%!important}
/* Conspiracy: section 03 stays conceptual without giant keywords. */
.page-conspiracy .conspiracy-principle .principle-word{display:none!important}
@media(max-width:850px){
 .rivages-v64 .rv64-intro p,.rivages-v64 .rv64-archive p,.rivages-v64 .rv64-head p,.rivages-v64 .rv64-final p{font-size:16px!important;line-height:1.62!important}
 .rivages-v64 .rv64-head .rv63-section{margin-bottom:18px!important}
 .page-elwin .project-number{margin-bottom:16px!important}
 .elwin-product-showcase{grid-template-columns:1fr!important}
}

/* V69 — Elwin rebrand transition + application polish */
.page-elwin .project-section__head h2,
.page-elwin .project-section__head h3,
.page-elwin .project-title{font-family:"Asap",system-ui,sans-serif!important}
.elwin-logo-transition{position:relative;overflow:hidden;background:#fff;border-radius:28px;min-height:clamp(330px,42vw,560px);display:block!important;margin-top:24px;isolation:isolate}
.elwin-logo-transition:before,.elwin-logo-transition:after{content:"";position:absolute;border-radius:999px;transition:transform .8s cubic-bezier(.2,.75,.2,1)}
.elwin-logo-transition:before{width:38%;aspect-ratio:1;background:#ffe27a;right:-13%;top:-28%;z-index:0}
.elwin-logo-transition:after{width:28%;aspect-ratio:1;background:#07dac8;left:-10%;bottom:-22%;z-index:0}
.elwin-logo-transition figure{position:absolute!important;inset:0!important;margin:0!important;min-height:0!important;border-radius:0!important;background:transparent!important;padding:clamp(38px,5vw,72px)!important;display:flex!important;align-items:center!important;justify-content:center!important;transition:opacity .7s ease,transform .9s cubic-bezier(.2,.75,.2,1)!important;z-index:2}
.elwin-logo-transition figure span{top:24px!important;left:28px;color:#77798d!important;z-index:4}
.elwin-logo-transition figure img{width:auto!important;height:auto!important;max-height:none!important;object-fit:contain!important}
.elwin-logo-transition figure:first-child img{max-width:min(76%,900px)!important}
.elwin-logo-transition figure:last-child{background:#352cd3!important;clip-path:inset(0 0 0 50%);animation:elwinPivot 7s ease-in-out infinite}
.elwin-logo-transition figure:last-child span{color:#fff6df!important}
.elwin-logo-transition figure:last-child img{max-width:min(54%,650px)!important;filter:none!important}
.elwin-logo-transition>i{position:absolute!important;left:50%;top:50%;z-index:5;width:54px;height:54px;border-radius:50%;background:#fff6df;color:#352cd3!important;display:grid;place-items:center;transform:translate(-50%,-50%);font-size:26px!important;box-shadow:0 10px 30px rgba(32,34,63,.14);animation:elwinArrow 7s ease-in-out infinite}
@keyframes elwinPivot{0%,15%{clip-path:inset(0 0 0 100%)}42%,68%{clip-path:inset(0 0 0 50%)}92%,100%{clip-path:inset(0 0 0 0)}}
@keyframes elwinArrow{0%,15%{left:94%;opacity:0}42%,68%{left:50%;opacity:1}92%,100%{left:6%;opacity:0}}
.page-elwin .elwin-product-showcase{gap:clamp(18px,2.2vw,34px)!important}
.page-elwin .elwin-product-showcase img:nth-child(1){transform:translateY(2vw)}
.page-elwin .elwin-product-showcase img:nth-child(2){transform:translateY(-1vw)}
.page-conspiracy .conspiracy-wear-grid{position:relative;display:grid!important;grid-template-columns:.78fr 1.35fr .7fr!important;gap:clamp(12px,2vw,28px)!important;align-items:center!important;padding:clamp(20px,4vw,60px) 0!important}
.page-conspiracy .conspiracy-wear-grid img{width:100%;height:auto;display:block;box-shadow:0 30px 70px rgba(0,0,0,.18)}
.page-conspiracy .wear-small{transform:rotate(-3deg) translateY(5%)}
.page-conspiracy .wear-hero{transform:rotate(1.2deg);z-index:2}
.page-conspiracy .wear-tote{transform:rotate(4deg) translateY(-5%)}
@media(prefers-reduced-motion:reduce){.elwin-logo-transition figure:last-child,.elwin-logo-transition>i{animation:none!important}.elwin-logo-transition figure:last-child{clip-path:inset(0 0 0 50%)}}
@media(max-width:850px){
 .elwin-logo-transition{min-height:390px;border-radius:20px}
 .elwin-logo-transition figure{padding:56px 22px 28px!important}
 .elwin-logo-transition figure:first-child img{max-width:88%!important}
 .elwin-logo-transition figure:last-child img{max-width:70%!important}
 .elwin-logo-transition figure:last-child{clip-path:inset(50% 0 0 0);animation:elwinPivotMobile 7s ease-in-out infinite}
 .elwin-logo-transition>i{left:50%;top:50%;transform:translate(-50%,-50%) rotate(90deg);animation:elwinArrowMobile 7s ease-in-out infinite}
 .page-elwin .elwin-product-showcase img:nth-child(n){transform:none}
 .page-conspiracy .conspiracy-wear-grid{grid-template-columns:1fr 1fr!important;padding:28px 0!important}
 .page-conspiracy .wear-hero{grid-column:1/-1;grid-row:1;transform:rotate(1deg)}
 .page-conspiracy .wear-small{transform:rotate(-2deg)}.page-conspiracy .wear-tote{transform:rotate(2deg)}
}
@keyframes elwinPivotMobile{0%,15%{clip-path:inset(100% 0 0 0)}42%,68%{clip-path:inset(50% 0 0 0)}92%,100%{clip-path:inset(0 0 0 0)}}
@keyframes elwinArrowMobile{0%,15%{top:94%;opacity:0}42%,68%{top:50%;opacity:1}92%,100%{top:6%;opacity:0}}

/* V70 targeted fixes */
/* Conspiracy: preserve the supplied signature while letting the eye cutout merge with the cream ground. */
.logo-step--complete .logo-step__visual{background:#ECE4D6!important}
.logo-step--complete .logo-step__visual img{width:min(88%,900px)!important}

/* Elwin transition: stable, deliberate two-state reveal instead of the previous clipping loop. */
.elwin-logo-transition{min-height:clamp(300px,36vw,500px)!important;background:#fff!important}
.elwin-logo-transition figure:first-child img{max-width:min(82%,980px)!important;max-height:180px!important}
.elwin-logo-transition figure:last-child{clip-path:inset(0 0 0 100%);animation:elwinPivotV70 8s cubic-bezier(.65,0,.35,1) infinite!important}
.elwin-logo-transition>i{animation:elwinArrowV70 8s cubic-bezier(.65,0,.35,1) infinite!important}
@keyframes elwinPivotV70{0%,22%{clip-path:inset(0 0 0 100%)}48%,76%{clip-path:inset(0 0 0 0)}100%{clip-path:inset(0 0 0 100%)}}
@keyframes elwinArrowV70{0%,22%{left:94%;opacity:0}30%{opacity:1}48%,76%{left:6%;opacity:0}100%{left:94%;opacity:0}}

/* Product: one overview + one genuinely scrollable long screen in a browser/device frame. */
.elwin-product-showcase{grid-template-columns:.92fr 1.08fr!important;align-items:stretch!important}
.elwin-product-showcase>img{height:100%;object-fit:cover!important;object-position:top}
.elwin-browser{min-width:0;background:#20223f;border-radius:24px;padding:10px 10px 14px;box-shadow:0 28px 70px rgba(20,20,50,.16);display:flex;flex-direction:column}
.elwin-browser__bar{height:36px;display:flex;align-items:center;gap:7px;padding:0 8px;color:#d8d8ea;font:600 9px/1 "Asap",sans-serif;letter-spacing:.08em;text-transform:uppercase}
.elwin-browser__bar i{width:8px;height:8px;border-radius:50%;background:#fff6df;opacity:.7}.elwin-browser__bar span{margin-left:8px;opacity:.65}
.elwin-browser__viewport{height:clamp(430px,52vw,720px);overflow-y:auto;overflow-x:hidden;background:#fff;border-radius:14px;scrollbar-width:thin;scrollbar-color:#352cd3 #ecebfd}
.elwin-browser__viewport img{display:block;width:100%;height:auto!important;max-width:none!important}
.elwin-browser>small{text-align:center;padding-top:10px;font:600 9px/1 "Asap",sans-serif;letter-spacing:.12em;color:#fff6df;opacity:.7}

/* Components: an editorial composition made from the supplied atoms, not a PDF board. */
.elwin-components{overflow:hidden}
.elwin-component-composition{display:grid!important;grid-template-columns:repeat(12,1fr)!important;grid-auto-rows:minmax(80px,auto);gap:clamp(12px,1.6vw,24px)!important;align-items:start!important;position:relative}
.elwin-component-composition .comp{margin:0;background:#fff;border-radius:18px;padding:clamp(12px,1.5vw,20px);box-shadow:0 18px 45px rgba(0,0,0,.12)}
.elwin-component-composition .comp img{display:block;width:100%!important;height:auto!important;object-fit:contain}
.comp--icons{grid-column:1/7;grid-row:1/4;transform:rotate(-1deg)}.comp--primary{grid-column:8/11;grid-row:1/3;transform:translateY(24px) rotate(1.5deg)}.comp--modal{grid-column:5/11;grid-row:4/7;transform:translateY(-8px)}.comp--states{grid-column:1/4;grid-row:4/6;transform:rotate(1.5deg)}.comp--tabs{grid-column:2/12;grid-row:7/8;transform:rotate(-.5deg)}.comp--secondary{grid-column:10/13;grid-row:2/5;transform:translateY(58px) rotate(-1deg)}.comp--actions{grid-column:1/4;grid-row:6/8;transform:translateY(12px)}
@media(max-width:850px){.elwin-logo-transition{min-height:320px!important}.elwin-logo-transition figure:first-child img{max-width:94%!important;max-height:120px!important}.elwin-product-showcase{grid-template-columns:1fr!important}.elwin-product-showcase>img{height:auto!important}.elwin-browser__viewport{height:520px}.elwin-component-composition{grid-template-columns:1fr 1fr!important;display:grid!important}.elwin-component-composition .comp{grid-column:auto!important;grid-row:auto!important;transform:none!important}.comp--icons,.comp--modal,.comp--tabs{grid-column:1/-1!important}}

/* V71 — focused polish from visual review */
/* Rivages: postcard copy belongs to the same reading system as the rest of the case study. */
.rivages-v64 .rv64-postcard p{font-family:"Manrope",Inter,sans-serif!important;font-size:16px!important;line-height:1.65!important;font-weight:400!important;max-width:520px!important}

/* Conspiracy: final supplied signature with dark mark and cream eye/cutout. */
.logo-step--complete .logo-step__visual{background:#ECE4D6!important}
.logo-step--complete .logo-step__visual img{filter:none!important;width:min(88%,900px)!important}
/* Bring the colour statement back into one readable editorial block. */
.conspiracy-color-copy{display:block!important;max-width:1050px;margin:0 0 clamp(42px,5vw,72px)!important}
.conspiracy-color-copy h3{max-width:760px;margin:0!important}
.conspiracy-color-copy p{max-width:720px!important;margin:clamp(20px,2.5vw,34px) 0 0!important;font-size:16px;line-height:1.65}

/* Elwin: transition starts when it actually enters view, not while it is still below the fold. */
.elwin-logo-transition figure:last-child{animation:none!important;clip-path:inset(0 0 0 100%)}
.elwin-logo-transition>i{animation:none!important;left:94%;opacity:0}
.elwin-logo-transition.is-active figure:last-child{animation:elwinPivotV71 6.8s cubic-bezier(.65,0,.35,1) 1 both!important}
.elwin-logo-transition.is-active>i{animation:elwinArrowV71 6.8s cubic-bezier(.65,0,.35,1) 1 both!important}
@keyframes elwinPivotV71{0%,12%{clip-path:inset(0 0 0 100%)}52%,100%{clip-path:inset(0 0 0 0)}}
@keyframes elwinArrowV71{0%,12%{left:94%;opacity:0}25%{opacity:1}52%,100%{left:6%;opacity:0}}
/* Keep the overview screenshot intact: no crop. */
.elwin-product-showcase>img{height:auto!important;object-fit:contain!important;object-position:center top!important;align-self:center;background:#fff;border-radius:20px}
/* Components: clear editorial grid, no collisions or decorative overlaps. */
.elwin-component-composition{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:auto!important;gap:clamp(16px,2vw,28px)!important;align-items:start!important}
.elwin-component-composition .comp{grid-column:auto!important;grid-row:auto!important;transform:none!important;padding:clamp(14px,1.6vw,22px)!important;align-self:start}
.elwin-component-composition .comp--icons,.elwin-component-composition .comp--modal,.elwin-component-composition .comp--tabs{grid-column:span 2!important}
@media(max-width:850px){
 .rivages-v64 .rv64-postcard p{font-size:15px!important;line-height:1.65!important}
 .conspiracy-color-copy p{font-size:15px}
 .elwin-component-composition{grid-template-columns:1fr!important}
 .elwin-component-composition .comp{grid-column:1!important}
}

/* V72 — Rivages album pair + Elwin motion/component scale */
.rv72-cover-pair{min-height:760px;position:relative;display:block!important}
.rv72-cover-pair .rv64-rings{left:50%;top:50%;transform:translate(-50%,-50%);z-index:0}
.rv72-cover-pair img{position:absolute!important;width:min(52%,520px)!important;aspect-ratio:1;object-fit:cover;box-shadow:0 36px 75px rgba(20,30,80,.28);z-index:2}
.rv72-cover-pair .rv72-cover-front{left:5%;top:8%;transform:rotate(-5deg)!important;z-index:3}
.rv72-cover-pair .rv72-cover-back{right:2%;bottom:5%;transform:rotate(5deg)!important;z-index:2}

/* Let the pivot remain alive once it has genuinely entered the viewport. */
.elwin-logo-transition.is-active figure:last-child{animation:elwinPivotV72 7.2s cubic-bezier(.65,0,.35,1) infinite!important}
.elwin-logo-transition.is-active>i{animation:elwinArrowV72 7.2s cubic-bezier(.65,0,.35,1) infinite!important}
@keyframes elwinPivotV72{0%,14%{clip-path:inset(0 0 0 100%)}48%,66%{clip-path:inset(0 0 0 0)}100%{clip-path:inset(0 0 0 100%)}}
@keyframes elwinArrowV72{0%,12%{left:94%;opacity:0}22%{opacity:1}48%{left:6%;opacity:0}66%{left:6%;opacity:0}78%{opacity:1}100%{left:94%;opacity:0}}

/* Components stay close to their native scale: crisp, airy, never stretched into posters. */
.elwin-component-composition{grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:clamp(18px,2.2vw,34px)!important;align-items:center!important;justify-items:center!important}
.elwin-component-composition .comp{grid-column:auto!important;width:auto!important;max-width:100%;padding:12px!important;box-sizing:border-box}
.elwin-component-composition .comp img{width:auto!important;max-width:100%!important;height:auto!important;max-height:360px;object-fit:contain!important}
.elwin-component-composition .comp--icons{grid-column:1/6!important}.elwin-component-composition .comp--primary{grid-column:6/9!important}.elwin-component-composition .comp--modal{grid-column:9/13!important}
.elwin-component-composition .comp--states{grid-column:1/4!important}.elwin-component-composition .comp--tabs{grid-column:4/13!important}.elwin-component-composition .comp--secondary{grid-column:2/5!important}.elwin-component-composition .comp--actions{grid-column:6/9!important}
.elwin-component-composition .comp--icons img{max-width:360px!important}.elwin-component-composition .comp--primary img,.elwin-component-composition .comp--secondary img{max-width:190px!important}.elwin-component-composition .comp--modal img{max-width:430px!important}.elwin-component-composition .comp--states img{max-width:230px!important}.elwin-component-composition .comp--tabs img{max-width:720px!important}.elwin-component-composition .comp--actions img{max-width:250px!important}
@media(max-width:850px){
 .rv72-cover-pair{min-height:570px!important}
 .rv72-cover-pair img{width:68%!important}
 .rv72-cover-pair .rv72-cover-front{left:0;top:5%}.rv72-cover-pair .rv72-cover-back{right:0;bottom:4%}
 .elwin-component-composition{grid-template-columns:1fr 1fr!important;gap:18px!important}
 .elwin-component-composition .comp{grid-column:auto!important;padding:10px!important}
 .elwin-component-composition .comp--icons,.elwin-component-composition .comp--modal,.elwin-component-composition .comp--tabs{grid-column:1/-1!important}
 .elwin-component-composition .comp img{max-height:280px!important}
}

/* V73 — Rivages mobile hero: the full wordmark must remain inside the viewport. */
@media(max-width:850px){
  .rivages-v64 .rv64-hero h1{font-size:clamp(64px,22vw,112px)!important;line-height:.82!important;letter-spacing:-.01em!important;max-width:100%!important;white-space:nowrap!important}
}
@media(max-width:390px){
  .rivages-v64 .rv64-hero h1{font-size:20.5vw!important}
}

/* V74 — Rivages: animate the physical sleeves, not decorative rings. */
.rv72-cover-pair .rv64-rings{animation:none!important;opacity:.32!important}
@media(prefers-reduced-motion:no-preference){
  .rv72-cover-pair .rv72-cover-front{animation:rvSleeveFront 7s ease-in-out infinite!important}
  .rv72-cover-pair .rv72-cover-back{animation:rvSleeveBack 8.5s ease-in-out infinite!important}
}
@keyframes rvSleeveFront{0%,100%{transform:translate3d(0,0,0) rotate(-5deg)}50%{transform:translate3d(12px,-16px,0) rotate(-2.5deg)}}
@keyframes rvSleeveBack{0%,100%{transform:translate3d(0,0,0) rotate(5deg)}50%{transform:translate3d(-10px,14px,0) rotate(2.5deg)}}

/* Elwin components: every asset remains contained by its card. */
.elwin-component-composition .comp{overflow:hidden!important;display:grid!important;place-items:center!important;min-width:0!important;isolation:isolate}
.elwin-component-composition .comp img{display:block!important;width:auto!important;height:auto!important;max-width:min(100%,var(--asset-max,520px))!important;max-height:300px!important;object-fit:contain!important;margin:auto!important}
.elwin-component-composition .comp--icons{--asset-max:320px}.elwin-component-composition .comp--primary,.elwin-component-composition .comp--secondary{--asset-max:165px}.elwin-component-composition .comp--modal{--asset-max:390px}.elwin-component-composition .comp--states{--asset-max:210px}.elwin-component-composition .comp--tabs{--asset-max:650px}.elwin-component-composition .comp--actions{--asset-max:220px}
@media(max-width:850px){
 .elwin-component-composition .comp{padding:14px!important}
 .elwin-component-composition .comp img{max-height:230px!important}
}

/* V75 — Rivages: sleeves carry the motion; rings stay completely static and fully present. */
.rv72-cover-pair .rv64-rings{animation:none!important;opacity:1!important;transform:translate(-50%,-50%)!important}
.rv72-cover-pair .rv72-cover-front{animation:rvSleeveFront75 5.4s ease-in-out infinite!important;will-change:transform}
.rv72-cover-pair .rv72-cover-back{animation:rvSleeveBack75 6.2s ease-in-out infinite!important;will-change:transform}
@keyframes rvSleeveFront75{0%,100%{transform:translate3d(0,0,0) rotate(-5deg)}50%{transform:translate3d(18px,-22px,0) rotate(-1.5deg)}}
@keyframes rvSleeveBack75{0%,100%{transform:translate3d(0,0,0) rotate(5deg)}50%{transform:translate3d(-16px,19px,0) rotate(1.5deg)}}

/* V80 — keyframes must own the animated properties, without !important locks. */
.elwin-logo-transition figure:last-child{clip-path:inset(0 0 0 100%)}
.elwin-logo-transition>i{left:94%;opacity:0}
@media(max-width:850px){.elwin-logo-transition>i{transform:translate(-50%,-50%)}}
@media(prefers-reduced-motion:reduce){
 .elwin-logo-transition.is-active figure:last-child{animation:none!important;clip-path:inset(0 0 0 50%)}
 .elwin-logo-transition.is-active>i{animation:none!important;left:50%;opacity:1}
}

/* V81 — a single calm reveal, with a user-controlled comparison. */
.elwin-comparison{margin-top:24px;min-width:0}
.elwin-comparison__stage{position:relative;isolation:isolate;overflow:hidden;border-radius:28px;height:clamp(280px,32vw,460px);background:#fff;--reveal:0%}
.elwin-comparison__stage figure{position:absolute;inset:0;margin:0;display:grid;place-items:center;padding:0;background:#fff}
.elwin-comparison__stage figure span{position:absolute;top:24px;left:28px;z-index:2;font:600 10px/1.3 "Asap",sans-serif;letter-spacing:.12em;color:#6d6d7c}
.elwin-comparison__before img{display:block;width:72%;max-width:820px;height:auto;max-height:48%;object-fit:contain}
.elwin-comparison__stage .elwin-comparison__after{background:#352cd3;clip-path:inset(0 calc(100% - var(--reveal)) 0 0)}
.elwin-comparison__after img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}
.elwin-comparison__stage .elwin-comparison__after span{color:#fff6df}
.elwin-comparison__divider{position:absolute;top:0;bottom:0;left:var(--reveal);width:2px;background:#fff6df;opacity:0;pointer-events:none}
.elwin-comparison.is-comparing .elwin-comparison__divider{opacity:1}
.elwin-comparison__control{display:flex;align-items:center;gap:18px;max-width:500px;margin:20px auto 0;font:500 12px/1.4 "Asap",sans-serif;color:#352cd3}
.elwin-comparison__control input{flex:1;min-width:0;accent-color:#352cd3;cursor:ew-resize;height:28px}
.elwin-comparison__control input:focus-visible{outline:2px solid #352cd3;outline-offset:4px}
@media(max-width:850px){.elwin-comparison__stage{height:280px;border-radius:20px}.elwin-comparison__stage figure span{top:20px;left:20px;font-size:9px}.elwin-comparison__before img{width:84%}}

/* V82 — labels have their own layout, outside the overlapping image layers. */
.elwin-comparison__labels{display:flex;justify-content:space-between;gap:16px;margin:0 0 14px;font:600 10px/1.4 "Asap",sans-serif;letter-spacing:.10em;color:#352cd3}
.elwin-comparison__labels span{min-width:0}
.elwin-comparison__labels span:last-child{text-align:right}
.page-elwin .elwin-logo-hero{height:auto;object-fit:contain}
@media(max-width:520px){.elwin-comparison__labels{flex-direction:column;gap:6px;font-size:9px}.elwin-comparison__labels span:last-child{text-align:left}}
