/* Approved portfolio. Shared navigation and footer retain their existing CSS. */
.results-page #main-content.rp-main{width:min(1360px,calc(100% - 112px));max-width:none;padding:0 0 76px;margin:auto;min-height:0}
.results-page #main-content.rp-main::before{display:none}
.rp-hero{text-align:center;padding:46px 0 0;position:relative}
.rp-hero{isolation:isolate}
.rp-hero::before{content:'';position:absolute;inset:-25px 0 -55px;background:radial-gradient(ellipse at 29% 52%,#e8b4950c,transparent 48%),radial-gradient(ellipse at 72% 45%,#b599e313,transparent 49%);pointer-events:none;z-index:-1}
.rp-title-line{display:block;overflow:clip;padding-block:.07em;margin-block:-.07em}
.rp-title-ink{display:block;transform-origin:50% 100%}
.results-page #main-content .rp-eyebrow{margin:0;color:#c8c2d0;font-size:11px;line-height:1.6;letter-spacing:.3em;font-weight:500;text-transform:uppercase}
.results-page #main-content .rp-hero h1{font-size:clamp(42px,4.6vw,68px);line-height:1.12;font-weight:500;letter-spacing:-.043em;margin:23px auto 0;max-width:1150px}
.results-page .rp-hero h1 .heading-accent{display:block;margin-inline:auto;background-image:linear-gradient(103deg,#edbea7,#deabd1 48%,#bb97ef);width:fit-content}
.results-page #main-content .rp-lead{font-size:clamp(17px,1.55vw,23px);line-height:1.48;letter-spacing:-.015em;color:#c5c1cb;margin:26px 0 0}
.rp-gallery{scroll-margin-top:115px;margin-top:42px}
.rp-filters{display:flex;justify-content:center;width:fit-content;max-width:100%;margin:0 auto 35px;padding:0;border:1px solid #aaa0bf40;border-radius:11px;overflow:clip;background:#0b0c1066}
.rp-filters[hidden]{display:none}
.results-page #main-content .rp-filters button{position:relative;min-height:48px;min-width:142px;padding:12px 24px;border:0;border-radius:9px;background:transparent;color:#c8c4d0;font:400 14px/1.4 Inter,Arial,sans-serif;box-shadow:none;transition:background .18s,color .18s,transform .15s}
.results-page #main-content .rp-filters button+button{border-left:1px solid #d8cce519}
.results-page #main-content .rp-filters button[aria-pressed=true]{background:linear-gradient(125deg,#fffefb,#f4eef9);color:#17121e;box-shadow:inset 0 1px 2px #fff}
.rp-filters button:hover{color:#fff;background:#ffffff08}
.rp-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px}
.rp-card{position:relative;grid-column:span 2;min-width:0;border:1px solid #aaa0c075;border-radius:15px;background:linear-gradient(140deg,#19171f80,#0c0d11 68%);overflow:clip;isolation:isolate;transition:border-color .25s,box-shadow .25s,transform .2s;display:flex;flex-direction:column}
.rp-card::before{position:absolute;inset:0;content:'';border-radius:inherit;box-shadow:inset 0 1px 1px #eee3ff3a;pointer-events:none;z-index:2}
.rp-card-featured{grid-column:span 3}.rp-card[hidden]{display:none}
.rp-grid[data-category]:not([data-category=all]) .rp-card{grid-column:span 3}
.rp-grid[data-category]:not([data-category=all]) .rp-visual{aspect-ratio:1.74}
.rp-case-library .rp-related{display:none}
.rp-card:nth-child(2),.rp-card:nth-child(3){border-top-color:#e8b59ab3}
.rp-visual{position:relative;aspect-ratio:1.25;overflow:hidden;isolation:isolate;border-bottom:1px solid #b6aac52d;background:radial-gradient(ellipse at 70% 15%,#b393e323,transparent 65%),#101015}
.rp-card-featured .rp-visual{aspect-ratio:1.74}
.rp-photo{display:block;width:100%;height:100%}
.rp-visual-caption{position:absolute;bottom:15px;left:22px;z-index:3;font-size:10px;line-height:1.4;letter-spacing:0;color:#ded9e2;text-shadow:0 1px 4px #000;background:#0b0a0c50;padding:2px 4px;border-radius:3px;pointer-events:none}
.rp-card-copy{position:relative;padding:25px 27px 21px;flex:1;display:flex;flex-direction:column}
.results-page #main-content .rp-category,.rp-sheet .rp-category{font-size:10px;line-height:1.5;letter-spacing:.19em;text-transform:uppercase;font-weight:500;color:#d1ccd8;margin:0}
.results-page #main-content .rp-card h2{font-size:27px;font-weight:500;letter-spacing:-.035em;line-height:1.22;margin:10px 42px 5px 0;text-wrap:initial}
.results-page #main-content .rp-card-featured h2{font-size:32px}
.results-page #main-content .rp-card[data-rp-project=tableau-correspondance] h2{font-size:22px}
.results-page #main-content .rp-card-description{font-size:16px;line-height:1.45;color:#c9c5cf;letter-spacing:-.012em;margin:0 0 21px;max-width:96%}
.rp-project-link{font-size:15px;line-height:1.5;color:#d8bcef;display:block;width:fit-content;margin-top:auto;outline-offset:5px;transition:color .15s,transform .15s}
.rp-project-link>span{display:flex;align-items:center;gap:10px;border-bottom:1px solid #cbb0dc;padding-bottom:5px}
.rp-project-link .icon{width:18px;height:18px}
.rp-card-hit{position:absolute;inset:0;z-index:4;border-radius:inherit;color:inherit;transition:transform .15s}
.rp-card:has(.rp-project-link)::after{content:'';position:absolute;inset:0;pointer-events:none}
.rp-open-arrow{position:absolute;right:24px;top:25px;width:42px;height:42px;border:1px solid #efc9b6;border-radius:50%;display:grid;place-items:center;color:#fcf8ff;transition:background .2s,transform .2s}
.rp-open-arrow .icon{width:21px;height:21px}
.rp-card:has(.rp-card-hit:focus-visible){outline:2px solid #d2b4f4;outline-offset:5px}
.rp-card:has(.rp-card-hit:active){transform:scale(.985)}
.rp-filters button:active,.rp-related:active,.rp-back:active,.rp-dialog-close:active,.rp-source summary:active{transform:scale(.97)}
.rp-filters button:focus-visible,.rp-related:focus-visible,.rp-back:focus-visible,.rp-dialog-close:focus-visible,.rp-source summary:focus-visible{outline:2px solid #d5b4ff;outline-offset:-4px}
@media(hover:hover){.rp-card:hover{border-color:#d1b3eca8;box-shadow:0 10px 36px -18px #bca0de50}.rp-card:hover .rp-open-arrow{background:#d3b0f018;transform:translateX(2px)}.rp-card:hover .rp-project-link{color:#f3ddff}}
.rp-visual-ecobes{display:grid;place-items:center;background-image:radial-gradient(#c2aed72e .7px,transparent .7px),radial-gradient(ellipse at 72% 50%,#72549d1c,transparent 75%);background-size:15px 15px,auto}
.rp-workflow{position:relative;display:flex;align-items:center;justify-content:space-between;width:90%;padding-top:12px}
.rp-wire{position:absolute;inset:0;width:100%;height:74px;overflow:visible}
.rp-flow-step{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;color:#ddd4e9;width:20%;z-index:1}
.rp-flow-step>span{display:grid;place-items:center;width:58px;height:58px;border:1px solid #c6a2f1;border-radius:12px;background:linear-gradient(120deg,#363043,#12101b);box-shadow:inset 0 1px #ffffff28,0 0 18px -6px #bc8cff8c}
.rp-flow-step .icon{width:29px;height:29px}.rp-flow-step small{font-size:12px;line-height:1.2}.rp-flow-0>span{border-color:#f1ba95;box-shadow:0 0 21px -7px #eea56dbf;color:#fbd0b7}.rp-flow-1{transform:translateY(8px)}.rp-flow-2{transform:translateY(-5px)}.rp-flow-3{transform:translateY(9px)}
.rp-visual-tableau-correspondance{display:grid;place-items:center;background:radial-gradient(ellipse at 0 100%,#b682702d,transparent 45%),radial-gradient(ellipse at 80% 10%,#ba91e33a,transparent 56%),#101116}
.rp-table-art{width:83%;padding:16px 13px 19px;border:1px solid #bbafc698;border-radius:12px;background:linear-gradient(140deg,#37313bb3,#0d1018 68%);transform:perspective(850px) rotateY(-8deg) rotateX(3deg);box-shadow:0 24px 30px #0009,inset 0 1px #fff3}
.rp-table-head,.rp-table-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center}
.rp-table-head{background:#21212b;border-radius:6px 6px 0 0;color:#ddd6e5;font-size:12px;text-align:center;padding:10px 0}
.rp-table-row{min-height:31px;background:#15171e;padding:0 8px;border-bottom:1px solid #9993ad12}
.rp-table-row>span{display:flex;align-items:center;gap:8px;padding:0 5px;min-height:24px;border-right:1px solid #9993ad12}
.rp-table-row i{width:10px;height:10px;flex:none;border-radius:50%;background:#747687}.rp-table-row b{display:block;height:5px;border-radius:3px;background:#555166}
.rp-table-highlight{background:#72639157;border-radius:5px}.rp-table-highlight i{background:#bb96f4}.rp-table-highlight b{background:#a18cba}
.rp-visual-fdkbois{background:radial-gradient(ellipse at 90% 10%,#d5a58166,transparent 75%),#161318}
.rp-site-preview{position:absolute;left:6%;top:11%;width:86%;height:80%;border:1px solid #bdafa893;border-radius:10px;overflow:hidden;transform:perspective(800px) rotateY(10deg) rotateZ(3deg);box-shadow:0 12px 22px #0009;background:#0f1010}
.rp-browser-bar{height:15px;display:flex;align-items:center;gap:4px;padding-left:9px;background:#242427}.rp-browser-bar i{width:4px;height:4px;background:#b4897d;border-radius:50%}.rp-browser-bar i:nth-child(2){background:#bdab78}.rp-browser-bar i:nth-child(3){background:#81a291}
.rp-site-nav{height:38px;display:flex;align-items:center;justify-content:space-between;padding:0 12px;color:#eeedec;font-size:8px}.rp-site-nav strong{font-size:14px;letter-spacing:-.02em}.rp-site-preview>.rp-photo{height:calc(100% - 53px)}
.rp-search-report{position:absolute;right:3%;bottom:8%;width:40%;padding:13px;border:1px solid #bca2d28f;border-radius:8px;transform:rotate(-3deg);background:linear-gradient(140deg,#37313fee,#141018ee);box-shadow:0 14px 22px #0009;color:#f0e7f8}
.rp-search-report>span{font-size:10px;line-height:1.4;display:block}.rp-search-report svg{width:100%;height:65px;margin-top:6px}.rp-search-report>i{display:block;height:5px;border-radius:3px;background:#9b83ad55;margin-top:8px;width:65%}.rp-search-report>i:nth-last-child(2){width:82%}
.rp-case-library{margin-top:90px}.rp-case-library[hidden]{display:none}
.rp-sheet{scroll-margin-top:110px;border-top:1px solid #d1bdec40;margin-top:60px;padding:35px 0;color:#eae6ee;font-size:16px;line-height:1.65}
.rp-sheet h2{font:500 clamp(28px,3vw,42px)/1.16 Inter,Arial,sans-serif;letter-spacing:-.035em;color:#f7f4fb;margin:15px 0 28px;text-wrap:balance;outline:none}
.rp-sheet h3{font:500 17px/1.4 Inter,Arial,sans-serif;color:#f2eaf7;margin:0 0 10px}.rp-sheet p{margin:0;color:#bbb4c6;font:400 15px/1.7 Inter,Arial,sans-serif}
.rp-sheet-preview{max-width:640px;margin:0 auto 30px;overflow:hidden;border:1px solid #c5b0d552;border-radius:12px}.rp-sheet-preview .rp-visual{aspect-ratio:1.9}.rp-sheet-preview .rp-workflow{max-width:410px}.rp-sheet-preview .rp-table-art{max-width:370px}.rp-sheet-preview .rp-site-preview{width:76%;left:9%}.rp-sheet-preview .rp-search-report{max-width:180px;right:9%}
.rp-sheet-copy{display:grid;grid-template-columns:1fr 1fr;gap:35px}.rp-proof{margin-top:26px;padding:23px;background:#baa0da08;border:1px solid #baa0da25;border-radius:12px}.rp-sheet .rp-sheet-note{font-size:12px;color:#a59bae;margin:18px 0 24px;line-height:1.65}
.rp-delivered-flow{list-style:none;display:flex;flex-wrap:wrap;gap:12px;margin:26px 0;padding:0}.rp-delivered-flow>li{display:flex;align-items:center;gap:9px;font:400 12px/1.6 Inter,Arial,sans-serif;border:1px solid #bca9d330;border-radius:8px;padding:8px 12px;color:#d9cfe4}.rp-delivered-flow span{color:#c2a5e3;font-size:10px}
.rp-dated-result{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:18px}.rp-dated-result strong{font-size:36px;color:#ead9fa;font-weight:500;margin-right:9px}.rp-dated-result time{width:100%;font-size:12px;color:#a89ab5}
.rp-sheet .rp-related{font:500 14px/1.4 Inter,Arial,sans-serif;min-height:47px;border-radius:10px;padding:13px 20px}.rp-related>.icon{width:18px;height:18px}
.rp-back{display:inline-flex;align-items:center;gap:12px;min-height:44px;color:#ceb3ea;font:400 13px/1.4 Inter,Arial,sans-serif;margin-left:22px;transition:transform .15s}.rp-back>.icon{width:18px;height:18px;transform:rotate(180deg)}
.rp-source{margin-top:19px}.rp-source summary{cursor:pointer;min-height:44px;padding:10px 0;color:#d5b9f5;font-size:14px;transition:transform .15s}.rp-source img{display:block;max-width:100%;height:auto;margin-top:10px;border-radius:7px}
:root[data-page=results]:has(#rp-case-dialog[open]){overflow:hidden}
#rp-case-dialog{position:fixed;inset:0;margin:auto;width:min(920px,calc(100% - 48px));max-width:none;max-height:calc(100dvh - 64px);height:auto;overflow-y:auto;overscroll-behavior:contain;padding:42px;border:1px solid #c4afd975;border-radius:18px;background:radial-gradient(ellipse at 0 0,#e5b49e10,transparent 50%),#101116;color:#f5f0fa;box-shadow:0 25px 90px #0009;font:400 16px/1.6 Inter,Arial,sans-serif}
#rp-case-dialog::backdrop{background:#040507d9;backdrop-filter:blur(7px)}
#rp-case-dialog .rp-sheet{margin:0;padding:0;border:0}#rp-case-dialog .rp-sheet>h2{padding-right:22px}
.rp-dialog-close{position:sticky;float:right;top:0;z-index:3;display:grid;place-items:center;width:42px;height:42px;margin:-23px -22px 0 0;border:1px solid #c2afd136;border-radius:10px;background:#202027;color:#ece6f4;font:400 25px/1 Inter,Arial,sans-serif;cursor:pointer;transition:background .15s,transform .15s}.rp-dialog-close:hover{background:#34303e}
/* Resting styles remain visible. CSS entrances also finish if JavaScript fails. */
@media(prefers-reduced-motion:no-preference){
 .rp-main:not([data-rp-intro=done]) .rp-eyebrow{animation:rp-copy-in .6s ease-out .04s backwards}
 .rp-main:not([data-rp-intro=done]) .rp-title-ink{animation:rp-title-in .88s cubic-bezier(.22,1,.36,1) .1s backwards}
 .rp-main:not([data-rp-intro=done]) .rp-title-line+ .rp-title-line .rp-title-ink{animation-duration:.94s;animation-delay:.28s}
 .rp-main:not([data-rp-intro=done]) .rp-hero::before{animation:rp-halo-in 1.25s ease-out .16s backwards}
 .rp-main:not([data-rp-intro=done]) .rp-lead{animation:rp-copy-in .6s cubic-bezier(.22,1,.36,1) .78s backwards}
 .rp-main:not([data-rp-intro=done]) .rp-filters{animation:rp-copy-in .45s cubic-bezier(.22,1,.36,1) 1.04s backwards}
 .rp-card[data-rp-reveal=pending]{opacity:0;translate:0 32px;scale:.985}
 .rp-card[data-rp-reveal=entering]{animation:rp-card-in .9s cubic-bezier(.22,1,.36,1) var(--rp-reveal-delay,0ms) backwards}
 .rp-card[data-rp-reveal=entering] .rp-photo{animation:rp-photo-in .9s cubic-bezier(.22,1,.36,1) var(--rp-reveal-delay,0ms) backwards}
 #rp-case-dialog[open]{animation:rp-dialog-in .18s ease-out}
}
@keyframes rp-title-in{from{opacity:0;transform:translateY(112%) rotate(2deg)}to{opacity:1;transform:translateY(0) rotate(0)}}
@keyframes rp-copy-in{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@keyframes rp-halo-in{from{opacity:0;transform:scale(.84)}to{opacity:1;transform:scale(1)}}
@keyframes rp-card-in{from{opacity:0;translate:0 32px;scale:.985}to{opacity:1;translate:0 0;scale:1}}
@keyframes rp-photo-in{from{transform:scale(1.065)}to{transform:scale(1)}}
@keyframes rp-dialog-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.results-page #main-content.rp-main{width:min(1440px,calc(100% - 160px))}}
@media(max-width:1080px){.results-page #main-content.rp-main{width:calc(100% - 64px)}.rp-grid{gap:18px}.rp-card-copy{padding:22px 19px 18px}.rp-open-arrow{width:34px;height:34px;right:17px;top:22px}.results-page #main-content .rp-card h2{font-size:23px;margin-right:31px}.results-page #main-content .rp-card-featured h2{font-size:28px}.results-page #main-content .rp-card[data-rp-project=tableau-correspondance] h2{font-size:20px}.rp-flow-step>span{width:43px;height:43px;border-radius:9px}.rp-flow-step .icon{width:24px;height:24px}.rp-flow-step small{font-size:10px}.rp-wire{height:53px}.rp-table-art{padding:12px 8px}.rp-table-row{min-height:26px;padding-inline:3px}.rp-table-head{padding:7px}.rp-table-row>span{gap:5px}.rp-table-row i{width:8px;height:8px}}
@media(max-width:800px){.rp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rp-card,.rp-card-featured{grid-column:span 1}.rp-card:last-child{grid-column:1/-1;max-width:calc(50% - 9px);width:100%;justify-self:center}.rp-card .rp-visual{aspect-ratio:1.5}.rp-hero{padding-top:36px}.rp-filters{width:100%}.results-page #main-content .rp-filters button{min-width:0;flex:1;padding:12px 8px;font-size:12px}.rp-visual-caption{left:14px;bottom:10px;font-size:9px}.rp-card-copy{min-height:185px}.rp-card .rp-card-description{font-size:15px}.rp-gallery{margin-top:32px}.rp-sheet-copy{gap:24px}.rp-sheet-preview .rp-visual{aspect-ratio:1.65}.rp-back{margin:12px 0 0;display:flex}}
@media(max-width:560px){.results-page #main-content.rp-main{width:calc(100% - 36px);padding-bottom:34px}.rp-hero{padding-top:35px}.results-page #main-content .rp-eyebrow{font-size:10px;letter-spacing:.25em}.results-page #main-content .rp-hero h1{font-size:clamp(33px,8.2vw,43px);line-height:1.13;letter-spacing:-.042em;margin-top:20px}.results-page #main-content .rp-lead{font-size:16px;line-height:1.65;margin-top:20px}.rp-filters{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:3px;overflow:visible;margin-bottom:22px}.results-page #main-content .rp-filters button{border:0;min-height:44px;font-size:12px;border-radius:7px}.results-page #main-content .rp-filters button+button{border:0}.rp-grid{grid-template-columns:1fr;gap:22px}.rp-card,.rp-card-featured,.rp-card:last-child{grid-column:auto;max-width:none}.rp-card .rp-visual{aspect-ratio:1.65}.rp-card-copy{min-height:0;padding:22px}.rp-open-arrow{right:21px;top:23px;width:37px;height:37px}.results-page #main-content .rp-card h2,.results-page #main-content .rp-card-featured h2{font-size:27px;margin-bottom:9px}.results-page #main-content .rp-card[data-rp-project=tableau-correspondance] h2{font-size:23px}.results-page #main-content .rp-card-description{font-size:15px;margin-bottom:19px}.rp-project-link{font-size:14px}.rp-visual-caption{font-size:9px;left:18px;bottom:12px}.rp-flow-step>span{width:50px;height:50px}.rp-wire{height:62px}.rp-flow-step small{font-size:11px}.rp-table-art{max-width:275px}.rp-table-row{min-height:29px}.rp-search-report{max-width:138px}.rp-site-nav{height:30px}.rp-site-preview>.rp-photo{height:calc(100% - 45px)}#rp-case-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 24px);padding:29px 20px;border-radius:14px}.rp-dialog-close{margin:-18px -11px 0 0}.rp-sheet h2{font-size:30px;line-height:1.2;padding-right:14px}.rp-sheet-copy{grid-template-columns:1fr;gap:23px}.rp-sheet-preview{margin-bottom:23px}.rp-sheet-preview .rp-visual{aspect-ratio:1.45}.rp-proof{padding:17px}.rp-sheet .rp-related{width:100%;justify-content:center}.rp-back{justify-content:center}.rp-sheet p{font-size:14px}.rp-sheet .rp-category{font-size:9px;padding-right:25px}.rp-dated-result{gap:12px}.rp-dated-result strong{font-size:31px}}
@media(prefers-reduced-motion:reduce){.rp-card,.rp-project-link,.rp-open-arrow,.rp-related,.rp-back,.rp-dialog-close{animation:none;transition:none}}
@media(prefers-reduced-motion:reduce){.rp-title-ink,.rp-eyebrow,.rp-lead,.rp-filters,.rp-hero::before,.rp-card .rp-photo,#rp-case-dialog{animation:none;transition:none}.rp-card[data-rp-reveal]{opacity:1;translate:none;scale:none}}
@media(max-width:800px){.rp-grid[data-category]:not([data-category=all]) .rp-card{grid-column:span 1;max-width:none}}
@media(forced-colors:active){.results-page .rp-hero h1 .heading-accent{background:none;color:CanvasText}.rp-card,#rp-case-dialog,.rp-filters,.rp-open-arrow{border-color:CanvasText}.rp-project-link,.rp-back{color:LinkText}}
