@font-face{font-family:Manrope;src:url('./assets/manrope.woff2') format('woff2');font-display:swap;font-weight:400 800}
@font-face{font-family:Cormorant;src:url('./assets/cormorant-italic.woff2') format('woff2');font-display:swap;font-style:italic}
:root{color-scheme:dark;--pad:clamp(24px,4vw,72px);--sans:Manrope,Arial,sans-serif;--serif:Cormorant,Georgia,serif;--accent:#e4c6ff;--ink:#192331;--paper:#f7f9fc}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#15202e;color:var(--paper);font-family:var(--sans)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:wait;opacity:.55}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #c3a5ed;outline-offset:5px}button[hidden],[hidden]{display:none!important}
.skip{position:fixed;z-index:100;top:10px;left:10px;background:#172438;padding:12px;transform:translateY(-200%)}.skip:focus{transform:none}
.journey{height:1450svh}.stage{position:sticky;top:0;height:100svh;min-height:460px;isolation:isolate;overflow:hidden;background:#15202e}.poster,.scene,.grade{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.poster{object-fit:cover}.scene{opacity:0}.scene.is-ready{opacity:1}.grade{z-index:1;background:linear-gradient(0deg,#0b172bb0,transparent 34%),linear-gradient(180deg,#1020334a,transparent 22%)}
.mast{position:absolute;z-index:4;top:0;left:0;right:0;height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad)}.logo{display:flex;gap:12px;align-items:center;min-height:44px;font-size:27px;font-weight:800;letter-spacing:-.05em;text-shadow:0 2px 10px #14253977;line-height:1}.logo img{width:64px;height:64px;margin:-4px;border-radius:0}.logo small{display:block;font-size:8.5px;letter-spacing:.14em;margin-top:6px;text-transform:uppercase;font-weight:600}.mast-link{font-size:11px;font-weight:700;color:#faffff;padding:10px 0;display:flex;gap:18px;text-shadow:0 1px 6px #102438}.mast-link span{color:#ebd8ff}
.plate{position:absolute;top:101px;right:var(--pad);z-index:2;display:flex;align-items:center;gap:7px;font-size:8px;font-weight:700;letter-spacing:.1em;color:white;text-shadow:0 2px 8px #0d273f}.plate>span:first-child{width:5px;height:5px;border-radius:50%;background:#ead9ff}
.captions{position:absolute;left:var(--pad);bottom:128px;width:min(470px,calc(100% - 2*var(--pad)));z-index:2;pointer-events:none}.chapter{position:absolute;bottom:0;left:0;right:0;opacity:0;visibility:hidden;transform:translateY(7px);transition:opacity .2s,transform .25s,visibility .2s;text-shadow:0 2px 20px #0b1d3d6b}.chapter.is-current{opacity:1;visibility:visible;transform:none}.eyebrow{font-size:9px;letter-spacing:.16em;font-weight:700;line-height:1.5;margin:0 0 15px}.chapter h1,.chapter h2{font-size:clamp(42px,4.2vw,66px);font-weight:600;letter-spacing:-.065em;line-height:.97;margin:0 0 17px}.chapter em{font:italic 1.08em/.9 var(--serif);color:#f1e6ff;letter-spacing:-.035em}.chapter>p:not(.eyebrow){font-size:12px;line-height:1.6;max-width:34ch;margin:0 0 8px;color:#f0f4fb}.service-chapter{width:min(100%,330px)}.service-chapter h2{font-size:clamp(30px,2.8vw,43px);letter-spacing:-.055em;margin-bottom:12px}.service-chapter>p:not(.eyebrow){font-size:11px;max-width:33ch}.service-chapter .eyebrow{font-size:8px;margin-bottom:11px}.service-chapter .prototype-label{font-size:9px!important;color:#ead6ba!important;font-weight:700}
.text-action{pointer-events:auto;display:inline-flex;align-items:center;gap:23px;color:white;font-size:11px;font-weight:700;padding:9px 0;border:0;border-bottom:1px solid #fff8;background:none;text-shadow:0 1px 5px #10243955}.text-action:hover{color:#eed5ff;border-color:#eed5ff}.closing-actions{display:flex;gap:24px;flex-wrap:wrap}.travel-hint{position:absolute;z-index:2;left:50%;bottom:114px;transform:translateX(-50%);font-size:10px;color:#f5f8ff;text-shadow:0 1px 8px #15273d;opacity:0;transition:opacity .2s;pointer-events:none}.stage.is-travelling .travel-hint{opacity:1}.stage.is-travelling .captions,.stage.is-travelling .hotspots{opacity:0;pointer-events:none}
.deck{position:absolute;bottom:26px;left:var(--pad);right:var(--pad);z-index:4;display:flex;align-items:center;justify-content:center;gap:15px;height:64px}.dock{display:flex;align-items:center;gap:5px;padding:6px;border:1px solid #ffffffb5;border-radius:25px;background:linear-gradient(135deg,#ffffffe0,#e6edf7aa 48%,#fffefbbd);box-shadow:inset 0 1px 1px #fff,0 5px 26px #10243726;-webkit-backdrop-filter:blur(10px) saturate(1.15);backdrop-filter:blur(10px) saturate(1.15)}.dock a,.dock button{height:48px;min-width:107px;display:flex;align-items:center;justify-content:center;gap:9px;border-radius:19px;border:0;background:transparent;color:#405068;font-size:11px;font-weight:700;transition:background .18s,color .18s}.dock a:hover,.dock button:hover,.dock [aria-current=page],.dock button[aria-expanded=true]{background:#fff;color:#65458b}.dock svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.dock .menu-toggle{min-width:86px}.dock-separator{height:25px;width:1px;background:#7e90a433;margin:0 2px}.guide{position:absolute;left:0;font-size:11px;color:white;text-shadow:0 1px 6px #152a42}.guide span{margin-left:10px;font-size:8px;letter-spacing:.1em;text-transform:uppercase}.ambient-toggle{position:absolute;right:0;width:32px;height:32px;border:1px solid #ffffff61;background:#e7eef719;color:white;border-radius:50%;font-size:10px}.progress{position:absolute;z-index:3;bottom:0;left:0;right:0;height:2px;background:#ffffff24}.progress span{height:100%;display:block;transform:scaleX(0);transform-origin:left;background:#e0c7f7}
.hotspots{position:absolute;inset:0;z-index:3;pointer-events:none}.hotspot{position:absolute;transform:translate(-50%,calc(-100% - 11px));pointer-events:auto;white-space:nowrap;display:flex;align-items:center;justify-content:center;min-height:33px;border:1px solid #fff9;border-radius:99px;background:#f3f6fbea;color:#304359;font-size:10px;font-weight:700;padding:8px 12px;box-shadow:0 3px 12px #15273c22}.hotspot:before{content:'';position:absolute;left:50%;top:100%;height:10px;width:1px;background:#e7d6fa}.hotspot:after{content:'';position:absolute;left:calc(50% - 3px);top:calc(100% + 10px);width:6px;height:6px;background:#aa80c6;border-radius:50%;box-shadow:0 0 0 3px #ffffff80}.object-hit{position:absolute;left:50%;top:calc(100% + 11px);width:45px;height:42px;transform:translate(-50%,-50%)}.hotspot:hover,.hotspot[aria-pressed=true]{background:#e9d9fc;color:#50346e}.floor-stop{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:34px;padding:7px 11px;border:1px solid #fff9;border-radius:99px;background:#f3f6fbe8;color:#465870;font-size:11px;font-weight:600;white-space:nowrap}.floor-stop span:last-child{color:#9877af;font-size:12px}.floor-stop:hover,.floor-stop:focus-visible{background:#fff;color:#65458b}
.daylight-control{position:absolute;top:98px;left:var(--pad);z-index:5;color:#eaf0f8;font-size:9px}.daylight-control summary{list-style:none;display:flex;align-items:center;gap:7px;cursor:pointer;text-shadow:0 1px 6px #152a42;padding:2px 0}.daylight-control summary::-webkit-details-marker{display:none}.daylight-dot{height:5px;width:5px;border-radius:50%;background:#dac49a}.daylight-panel{position:absolute;top:27px;left:0;width:294px;background:#f4f7fbf7;border:1px solid #fff9;border-radius:20px;padding:18px;color:#34465b;box-shadow:0 9px 35px #1c2f4633}.daylight-panel p{font-size:12px;font-weight:700;margin:0 0 6px}.daylight-panel>span{font-size:10px;color:#758297}.daylight-presets{display:flex;gap:5px;margin:17px 0 10px}.daylight-presets button{flex:1;padding:9px 0;border:1px solid #dce2eb;border-radius:10px;background:#fff8;color:#465873;font-size:10px}.daylight-presets button[aria-pressed=true]{background:#dfd1ef;border-color:#c2addd}.daylight-auto{display:flex;justify-content:space-between;width:100%;padding:11px;border:0;border-radius:11px;background:#e5ebf2;color:#466177;font-size:10px}.daylight-auto[aria-pressed=true]{background:#dcebe6;color:#3c6559}
.site-content{background:#f3f5f8;color:var(--ink)}.site-content section{padding:90px var(--pad)}.site-content h2{font-size:clamp(42px,5vw,74px);line-height:1.02;letter-spacing:-.06em;font-weight:600;margin:0 0 30px}.site-content h2 em{font:italic 1.07em/.95 var(--serif);color:#806193}.site-content .eyebrow{color:#705b80}.site-content section>p:not(.eyebrow){font-size:13px;line-height:1.7;max-width:65ch;color:#53657b}.service-list{display:grid;grid-template-columns:repeat(3,1fr);gap:26px 40px;margin-top:42px}.service-list article{border-top:1px solid #34485c2a;padding-top:20px}.service-list h3{font-size:20px;margin:0 0 12px;letter-spacing:-.03em}.service-list p{font-size:12px;line-height:1.7;color:#586b80}.examples-section{background:#e8edf3}.example-list{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}.example-card{background:#f7f9fb;border-radius:18px;overflow:hidden;border:1px solid #fff;cursor:pointer;color:#2b3c52;text-align:left;padding:0}.example-card img{width:100%;aspect-ratio:1.6;object-fit:cover;display:block}.example-card span{display:block;padding:18px;font-size:15px;font-weight:700}.example-card small{display:block;font-size:10px;margin-top:7px;font-weight:400;color:#596b81}.prototype-note{border-left:2px solid #b29b77;padding-left:13px;color:#786750!important}.review-list{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:30px}.review-list blockquote{margin:0;border-top:1px solid #7c6b5b38;padding:22px 0;font-size:16px;line-height:1.7;color:#4a5869}.review-list cite{display:block;margin-top:16px;font-style:normal;font-size:10px;color:#75634f}.contact-section{background:#1c293a;color:#f8faff}.contact-section h2 em{color:#e6cdfa}.contact-section>p{color:#ccd7e3!important}.contact-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:30px}.contact-actions a{display:grid;grid-template-columns:1fr auto;gap:7px 25px;border:1px solid #e2d7ed44;border-radius:18px;padding:18px 23px;min-width:260px;background:#f7f8ff06}.contact-actions strong{font-size:16px}.contact-actions a span:nth-child(2){font-size:12px;grid-column:1;color:#c2cddd}.contact-actions a span:last-child{grid-column:2;grid-row:1/3;align-self:center}.contact-actions a:hover{background:#f7f8ff13}footer{padding:25px var(--pad);display:flex;justify-content:space-between;gap:18px;font-size:10px;color:#c0cbda}
.site-menu,.content-view{color:#293c54;border:1px solid #fff;border-radius:26px;background:linear-gradient(145deg,#fbfdfff5,#e6edf5ed);box-shadow:0 22px 100px #0e213e55;padding:24px;max-width:calc(100vw - 32px);max-height:75svh;overflow:auto}.site-menu{position:fixed;inset:auto 0 100px;margin:0 auto;width:490px}.site-menu::backdrop,.content-view::backdrop{background:#0a1c3433}.menu-heading,.content-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:15px}.menu-heading p{font-size:11px;font-weight:700;letter-spacing:.04em;margin:0}.icon-close{border:1px solid #a4b4c63b;border-radius:50%;width:30px;height:30px;color:#546c87;background:#f6faff75;font-size:23px;line-height:1}.site-menu nav{display:grid;grid-template-columns:1fr 1fr;gap:8px}.site-menu nav>a,.site-menu nav>button{position:relative;display:block;border:1px solid #becada55;border-radius:15px;padding:15px 25px 15px 14px;text-align:left;color:#2a3b52;background:#fff7;min-height:84px}.site-menu nav span{display:block;font-size:16px;letter-spacing:-.035em;font-weight:600}.site-menu nav small{display:block;font-size:9px;color:#72839b;line-height:1.4;margin-top:7px}.site-menu nav b{position:absolute;right:12px;top:16px;font-weight:400;color:#9173ac}.site-menu nav>a:hover,.site-menu nav>button:hover{background:#e9dff5}.menu-contact{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #becada77;margin-top:20px;padding-top:17px;font-size:10px;color:#576b84}.content-view{width:660px;padding:30px}.content-heading .eyebrow{margin:0;color:#8c719e}.content-body h2{font-size:40px;line-height:1.04;letter-spacing:-.05em;margin:20px 0 25px;font-weight:600}.content-body h3{font-size:17px;margin-top:25px}.content-body p,.content-body li{font-size:13px;line-height:1.75;color:#60728a}.content-body li{margin-bottom:15px}.content-body .review-list{display:block}.content-body .prototype-note{font-size:11px}.content-body .text-action{color:#77588d;text-shadow:none;border-color:#bbabcd}
.project-view{position:fixed;width:min(1420px,96vw);height:92svh;max-width:none;max-height:none;border:1px solid #ffffffb0;border-radius:22px;padding:0;background:#f1f5f9;overflow:hidden}.project-view::backdrop{background:#10213799}.project-bar{height:80px;display:flex;align-items:center;gap:22px;padding:15px 25px;background:#f3f7fb;color:#2d4056}.project-bar p{margin:0 0 5px;font-size:8px;letter-spacing:.12em;color:#8c769d}.project-bar h2{margin:0;font-size:20px}.project-external{margin-left:auto;font-size:11px}.project-close{border:1px solid #a4b4c65c;border-radius:99px;padding:10px 16px;background:#fff;color:#415875;font-size:12px}.project-view iframe{width:100%;height:calc(100% - 80px);border:0}.gallery-choices{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;pointer-events:auto}.gallery-choices button{border:1px solid #fff6;border-radius:99px;background:#192b4661;color:#fff;padding:6px 9px;font-size:9px}
.static .journey{height:100svh}.static .enter-studio,.static .daylight-control,.static .ambient-toggle,.static .guide,.static .progress{display:none}.static .scene{display:none}
@media(max-width:1100px){.guide span{display:none}.dock a,.dock button{min-width:96px}.mast-link{font-size:10px}}
@media(max-width:760px){
 :root{--pad:22px}.journey{height:1550svh}.mast{height:82px}.logo{font-size:21px;gap:9px}.logo img{width:44px;height:44px}.logo small{font-size:7px;letter-spacing:.11em;margin-top:5px}.mast-link{font-size:8px;gap:8px}.plate{top:88px;font-size:6px}.daylight-control{top:85px;font-size:8px}.daylight-panel{width:min(294px,calc(100vw - 44px))}
 .grade{background:linear-gradient(0deg,#091a33c7,transparent 45%),linear-gradient(180deg,#16294250,transparent 22%)}.captions{bottom:116px;width:calc(100% - 44px)}.chapter h1{font-size:46px}.chapter h2{font-size:35px}.chapter .eyebrow{font-size:7px;margin-bottom:10px}.chapter>p:not(.eyebrow){font-size:10px;max-width:30ch}.service-chapter{width:250px}.service-chapter h2{font-size:31px}.service-chapter>p:not(.eyebrow){font-size:10px}.text-action{font-size:10px;gap:20px;padding:8px 0}.deck{bottom:18px;left:12px;right:12px;height:63px;gap:0}.dock{width:min(100%,390px);gap:1px;border-radius:23px;padding:5px}.dock a,.dock button{min-width:0;flex:1;height:49px;gap:4px;flex-direction:column;font-size:8px;border-radius:18px}.dock .menu-toggle{min-width:0;flex:.72}.dock svg{width:17px;height:17px}.dock-separator{margin:0 3px;height:26px}.guide{display:none}.ambient-toggle{right:0;bottom:69px;width:25px;height:25px;font-size:9px}.travel-hint{bottom:101px;font-size:9px}.hotspot{padding:7px 9px;min-height:32px;font-size:8px}.floor-stop{max-width:144px;min-height:32px;padding:7px 9px;font-size:9px}
 .site-menu{bottom:92px;width:calc(100vw - 28px);padding:19px;border-radius:23px}.site-menu nav>a,.site-menu nav>button{min-height:77px;padding:13px 23px 13px 12px}.site-menu nav span{font-size:15px}.site-menu nav small{font-size:8px}.menu-contact{font-size:9px}.content-view{padding:23px}.content-body h2{font-size:32px}.content-body p,.content-body li{font-size:12px}.site-content section{padding:65px var(--pad)}.service-list{grid-template-columns:1fr;gap:12px}.site-content h2{font-size:43px}.example-list,.review-list{grid-template-columns:1fr}.contact-actions{display:grid;grid-template-columns:1fr}.contact-actions a{min-width:0}.project-view{height:95svh;width:97vw;border-radius:17px}.project-bar{height:72px;padding:12px 15px;gap:12px}.project-bar h2{font-size:16px}.project-external{display:none}.project-close{margin-left:auto;font-size:10px}.project-view iframe{height:calc(100% - 72px)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.journey{height:100svh}}


.credits-link{border:0;padding:0;background:none;font:inherit;color:inherit}.content-body a:not(.text-action){text-decoration:underline;text-underline-offset:3px}

/* Team presence uses the same Paris clock as the scene. */
.studio-status{position:absolute;top:122px;left:var(--pad);z-index:2;font-size:9px;color:#f0f4fa;text-shadow:0 1px 6px #152a42;pointer-events:none}.studio-status::before{content:'';display:inline-block;width:5px;height:5px;background:#bbaca2;border-radius:50%;margin-right:7px}.studio-status[data-open=true]::before{background:#b9e3c7}.daylight-day-label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:15px;font-size:10px}.daylight-day{font:inherit;padding:7px;border:1px solid #ced7e2;border-radius:8px;background:#fff;color:#34465b;max-width:130px}.team-choices{display:flex;gap:6px;pointer-events:auto;margin:12px 0 4px}.team-choices button{display:flex;gap:6px;align-items:center;border:1px solid #ffffff8a;border-radius:99px;background:#213149b8;padding:7px 10px;font-size:10px}.team-list{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:30px 0 12px}.team-card{display:grid;gap:10px;text-align:left;border:1px solid #d9d0e144;border-radius:16px;background:#ffffff07;padding:22px;color:#e8eef7}.team-card:hover{background:#ffffff12}.team-card strong{display:flex;align-items:center;justify-content:space-between;font-size:21px}.team-card span{font-size:12px;color:#e0d9eb}.team-card small{font-size:10px;color:#aebed2}[data-presence-dot]{display:inline-block;width:7px;height:7px;border-radius:50%;background:#c5a99a;flex:none}[data-present=true]{background:#93cba5}.presence-note{font-size:10px!important;opacity:.8}.member-presence{display:flex;align-items:center;gap:10px}.member-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0}.member-actions a{display:block;border:1px solid #c7c6d9;border-radius:14px;background:#fff8;padding:16px;font-size:13px;font-weight:700;color:#654a80}.member-actions small{display:block;font-size:11px;font-weight:400;margin-top:9px;color:#546a81}.static .studio-status{display:none}@media(max-width:760px){.studio-status{top:108px;font-size:8px}.team-list{grid-template-columns:1fr}.member-actions{grid-template-columns:1fr}.team-choices button{font-size:9px}.stage[data-chapter="6"] .service-chapter{width:250px}.stage[data-chapter="6"] .service-chapter h2{font-size:28px}}
@media(min-width:761px){.stage[data-chapter="6"] .captions{top:165px;bottom:auto}.stage[data-chapter="6"] .chapter.is-current{position:relative;bottom:auto}.stage[data-chapter="6"] .service-chapter h2{font-size:35px}}

/* Keep the larger signature clear of the clock on narrow phones. */
@media(max-width:360px){.mast .logo{font-size:18px;gap:8px}.mast .logo img{width:40px;height:40px}.mast .logo small{font-size:6px}}
