/* fonts-local.css */
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/3bfe4586eb9a33ec.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/713ca32c3c8b2ada.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/3bfe4586eb9a33ec.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/713ca32c3c8b2ada.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/3bfe4586eb9a33ec.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/713ca32c3c8b2ada.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* greek */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/420d2e343a5f7422.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* latin-ext */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/6de212dde3ebbaee.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/fonts/0b86590d9958dcb5.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* greek */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/420d2e343a5f7422.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* latin-ext */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/6de212dde3ebbaee.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/fonts/0b86590d9958dcb5.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* greek */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/420d2e343a5f7422.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* latin-ext */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/6de212dde3ebbaee.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/fonts/0b86590d9958dcb5.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* greek */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/420d2e343a5f7422.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* latin-ext */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/6de212dde3ebbaee.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Syne';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/fonts/0b86590d9958dcb5.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* style.css */
:root{--ink:#201b27;--paper:#f5f3ef;--purple:#713c97;--lavender:#ceace6;--night:#141019}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;display:block}h1,h2,h3{font-family:Syne,sans-serif;font-weight:500;line-height:1.06;letter-spacing:-.055em;margin:0}h1{font-size:clamp(58px,8.5vw,132px)}h2{font-size:clamp(36px,4.7vw,72px)}h3{font-size:28px;letter-spacing:-.035em}em{font-style:normal;color:var(--purple)}p{max-width:630px}header{position:absolute;top:0;left:0;width:100%;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:28px 4%;color:white;border:0;gap:30px}.brand{flex-shrink:0}nav{display:flex;gap:25px;align-items:center;font-size:13px}.small-cta{border:1px solid #ffffff60;border-radius:40px;padding:11px 19px}#menu-toggle{display:none}.hero{background:#18151f;position:relative;color:white;min-height:830px;overflow:hidden}.hero-back,.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#110d18cc,#110d1830),linear-gradient(0deg,#110d18dd,transparent)}.hero-inner{position:relative;z-index:1;padding:190px 6% 55px}.eyebrow{font-size:11px;letter-spacing:.17em;text-transform:uppercase;font-weight:600;margin:0 0 30px}.service-label{font-size:14px;margin:0 0 18px}.hero em{color:var(--lavender)}.hero-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:46px;gap:25px}.hero-bottom p{max-width:560px;font-size:15px}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:27px}.cta{display:inline-block;background:var(--purple);color:white;padding:15px 23px;border-radius:3px;font-size:13px;transition:background .2s}.cta:hover{background:#502969}.text-link{font-size:13px;border-bottom:1px solid;padding:8px 0;display:inline-block}#motion{background:transparent;border:1px solid #ffffff60;color:white;border-radius:25px;padding:10px 16px;font-size:11px;white-space:nowrap}.section{padding:100px 6%}.section-head{margin-bottom:55px}.section-head>p:last-child{margin-top:28px;color:#736a79;max-width:560px}.showcase{display:grid;grid-template-columns:1.55fr 1fr;gap:6%;align-items:center}.show-image{position:relative;background:#e9e5e9;padding:25px}.show-image img{width:100%;height:400px;object-fit:contain}.show-image>span{display:block;font-size:11px;margin-top:15px;color:#5b5262}.step{display:block;width:100%;background:none;border:0;border-top:1px solid #d6d0da;padding:24px 0;text-align:left;color:#746d79}.step small{display:block;font-size:10px;letter-spacing:.13em;text-transform:uppercase}.step strong{display:block;font-family:Syne;font-size:25px;font-weight:500;letter-spacing:-.035em;margin:7px 0}.step span{display:block;font-size:13px}.step.active{color:var(--purple)}.cinema{position:relative;min-height:620px;color:white;display:flex;align-items:end;isolation:isolate}.cinema>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.cinema:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#111018da,transparent 90%);z-index:-1}.cinema>div{padding:70px 6%}.dashboard{text-align:center;background:radial-gradient(ellipse at 50% 40%,#422454,#141019 65%);color:#fff}.dashboard .section-head p{margin-left:auto;margin-right:auto;color:#c3b7cb}.dashboard em{color:var(--lavender)}.dashboard-visual{margin:0 auto 50px;max-width:1000px}.dashboard-visual img{width:100%;height:auto;border-radius:20px}.dashboard-visual figcaption{font-size:11px;color:#bcaec6;margin-top:15px}.features{display:grid;grid-template-columns:repeat(3,1fr);text-align:left;gap:40px;max-width:1100px;margin:0 auto 40px}.features article{border-top:1px solid #ffffff30;padding-top:25px}.features span{font-size:11px;color:var(--lavender)}.features h3{font-size:25px;margin-top:14px}.features p{color:#bcaec6;font-size:14px}.projects{display:grid;grid-template-columns:repeat(2,1fr);gap:60px 40px}.project:nth-child(even){padding-top:65px}.project img{width:100%;height:350px;object-fit:cover;transition:filter .3s}.project:hover img{filter:brightness(1.08)}.project>div{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:20px}.project h3{font-size:28px}.project span{font-size:11px;white-space:nowrap}.clients{margin-top:95px;padding-top:45px;border-top:1px solid #d6d0da}.logos{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:30px;align-items:center}.logos img{width:100%;max-height:65px;object-fit:contain}.about{background:#eae5ee;display:grid;grid-template-columns:1fr 1fr;gap:9%}.about h2{font-size:clamp(34px,3.6vw,52px)}.about p{font-size:14px;color:#6b5d74}.faq h3{margin-bottom:25px}details{border-top:1px solid #c9bfce;padding:16px 0}summary{cursor:pointer;font-size:14px;padding-right:15px}details p{padding:0 15px;line-height:1.8}.contact{background:#382642;color:white}.contact h2{font-size:clamp(48px,7vw,110px)}.contact em{color:var(--lavender)}.contact-row{display:flex;justify-content:space-between;gap:60px;margin-top:30px}.contact-row p{max-width:460px;color:#d8c9e2}.contact .actions{align-items:start;flex-direction:column;margin-top:16px;gap:12px}.contact .cta{background:#eee5f4;color:#382642}footer{display:flex;justify-content:space-between;align-items:center;background:var(--night);color:#b5a9bd;padding:30px 6%;font-size:12px}.skip{position:absolute;top:-100px;left:10px;padding:15px;background:white;z-index:100}.skip:focus{top:10px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a771c7;outline-offset:5px}
@media(max-width:760px){header{padding:23px 6%}.brand img{width:145px;height:auto}#menu-toggle{display:block;background:none;border:0;color:white;font-size:14px}header nav{display:none;position:absolute;top:83px;left:0;width:100%;background:#201726;padding:25px 6%;flex-direction:column;align-items:start}header nav.open{display:flex}.hero{min-height:780px}.hero-inner{padding-top:170px}h1{font-size:clamp(53px,11vw,80px)}.hero-bottom{align-items:start;flex-direction:column;gap:30px}.hero-bottom p{font-size:14px}.section{padding:65px 6%}.showcase,.about{grid-template-columns:1fr;gap:35px}.show-image{padding:15px}.show-image img{height:260px}.cinema{min-height:480px}.cinema>div{padding:45px 6%}.features{grid-template-columns:1fr;gap:20px}.projects{gap:35px 20px}.project:nth-child(even){padding-top:0}.project img{height:220px}.project>div{align-items:start;flex-direction:column}.project h3{font-size:23px}.logos{grid-template-columns:repeat(3,1fr);gap:30px}.clients{margin-top:55px}.contact-row{flex-direction:column;gap:10px}footer{flex-wrap:wrap;gap:20px}.dashboard-visual{margin-left:-3%;margin-right:-3%}.dashboard-visual img{border-radius:8px}}
@media(max-width:440px){.projects{grid-template-columns:1fr}.project img{height:270px}.hero .actions{gap:14px}.eyebrow{font-size:10px}.features h3{font-size:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}body.paused{scroll-behavior:auto}

/* Comfortable tablet navigation and short landscape menus. */
@media (min-width:761px) and (max-width:1000px){
 header{padding:23px 6%}.brand img{width:145px;height:auto}
 #menu-toggle{display:block;background:none;border:0;color:white;font-size:14px;min-height:44px}
 header nav{display:none;position:absolute;top:100%;left:0;width:100%;background:#201726;padding:20px 6%;flex-direction:column;align-items:stretch;gap:12px}
 header nav.open{display:flex}
}
@media(max-width:1000px){header nav{max-height:calc(100dvh - 90px);overflow-y:auto}header nav a{padding-block:10px}#menu-toggle{min-width:64px;min-height:44px}}
.film-screen:focus-visible{outline:3px solid var(--purple);outline-offset:6px}

/* Clip fractional overflow of the full-bleed project strip, preserving sticky scroll. */
#proyectos{overflow-x:clip}

/* experience.css */
/* Scroll scenes are progressive enhancements; all controls work without scrolling. */
html:has(body.paused){scroll-behavior:auto}footer{padding-bottom:85px}
.visual-story{height:240svh;position:relative;background:#141019;color:#fff}.visual-stage{height:100svh;min-height:600px;position:sticky;top:0;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:45px 6%;isolation:isolate}.visual-images{position:absolute;inset:0;z-index:-2}.visual-images img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.065);transition:opacity .8s ease,transform 1.4s ease}.visual-images img.is-current{opacity:1;transform:scale(1.015)}.visual-stage:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#100d1b90,transparent 42%,#100d1bf2);z-index:-1}.visual-top{display:flex;justify-content:space-between;gap:20px;align-items:center}.visual-top .eyebrow{margin:0}.scroll-hint{font-size:11px;color:#e0d4e5}.visual-heading{margin:auto 0 50px}.visual-heading h2{font-size:clamp(36px,4.2vw,65px);max-width:850px}.visual-heading p{font-size:15px;max-width:480px;color:#e0d4e5}.visual-bottom{display:flex;align-items:end;justify-content:space-between;gap:45px}.visual-caption{max-width:440px}.visual-caption>span{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#d8b6ec}.visual-caption h3{font-size:30px;margin-top:12px}.visual-caption p{font-size:13px;color:#ded3e6;margin-bottom:0}.quality-nav{display:flex;gap:12px;min-width:340px}.quality-nav button{flex:1;border:0;border-top:2px solid #ffffff40;color:#ddd;background:none;text-align:left;padding:14px 8px;min-height:60px;font-size:13px}.quality-nav button span{display:block;font-size:10px;margin-bottom:4px}.quality-nav button.active{border-color:#d4a6ed;color:white}.visual-progress{position:absolute;bottom:0;left:0;width:100%;height:3px;background:#ffffff20}.visual-progress span{display:block;width:100%;height:100%;background:#c39ada;transform:scaleX(var(--quality-progress,0));transform-origin:left}
.dashboard-story{background:#141019;color:white;height:340svh;position:relative}.dashboard-stage{position:sticky;top:0;height:100svh;min-height:660px;overflow:hidden;isolation:isolate;padding:30px 5% 24px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;text-align:center}.dashboard-glow{position:absolute;z-index:-2;inset:0;background:radial-gradient(ellipse at 50% 67%,#74349c80,transparent 57%),radial-gradient(ellipse at 82% 10%,#33234870,transparent 45%);opacity:var(--glow,1)}.dashboard-stage:after{content:'';position:absolute;bottom:12%;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,#b485cb35,transparent);z-index:-1}.dashboard-intro .eyebrow{font-size:10px;margin:0 0 14px;color:#d0b9dc}.dashboard-intro h2{font-size:clamp(34px,3.6vw,58px);line-height:1.03}.dashboard-intro h2 br{display:none}.dashboard-intro h2 em{display:block;color:#c9a2e1}.laptop-stage{--device-width:min(61vw,calc((100svh - 285px)*1.48),780px);width:var(--device-width);height:calc(var(--device-width)*.685 + 32px);perspective:1400px;position:relative;margin:8px auto 0;flex-shrink:0}.laptop-assembly{width:100%;position:relative;transform-style:preserve-3d;transform:translateY(var(--device-y,0px)) rotateY(var(--device-yaw,0deg)) scale(var(--device-scale,1));will-change:transform}.laptop-lid{position:relative;background:linear-gradient(130deg,#302a36,#08070b 45%,#201827);padding:16px 9px 17px;border:2px solid #81708b;border-radius:17px 17px 7px 7px;box-shadow:0 0 1px 1px #d8b9ef70,0 0 25px #ab5bdc30,inset 0 0 0 2px #000;transform-origin:50% 100%;transform:rotateX(var(--lid-angle,0deg));backface-visibility:hidden;will-change:transform}.webcam{position:absolute;left:50%;top:5px;width:4px;height:4px;background:#647284;border-radius:50%;box-shadow:0 0 0 2px #151218}.laptop-screen{aspect-ratio:1.51;background:#f6f7f9;overflow:hidden;border-radius:4px;position:relative;transform:translateZ(1px)}.laptop-screen:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,#fff1,transparent 50%);box-shadow:inset 0 0 3px #0008}.laptop-wordmark{position:absolute;bottom:2px;left:0;right:0;font-size:6px;letter-spacing:2px;color:#9c8baa}.laptop-deck{width:112%;margin-left:-6%;height:95px;background:linear-gradient(130deg,#5b5262,#25202d 40%,#38313f);border:1px solid #88718f;border-radius:3px 3px 12px 12px;transform:rotateX(63deg);transform-origin:top center;position:relative;box-shadow:0 4px 2px #08070b;display:flex;flex-direction:column;align-items:center;justify-content:start;padding:7px 0}.keyboard{width:83%;height:47px;border-radius:3px;background:repeating-linear-gradient(0deg,transparent 0 8px,#5e5364 8px 10px),repeating-linear-gradient(90deg,#101015 0 5.8%,#4e4556 5.8% 6.5%);box-shadow:inset 0 1px 4px #000}.trackpad{width:26%;height:25px;background:#342d3d;border:1px solid #6f6178;border-radius:3px;margin-top:7px}.laptop-edge{position:absolute;top:calc(100% - 45px);left:-6%;width:112%;height:7px;border-radius:0 0 40% 40%;background:linear-gradient(#71637b,#24202b);transform:translateY(-4px)}.laptop-shadow{position:absolute;bottom:4px;left:-14%;width:128%;height:55px;background:#07060be8;filter:blur(20px);border-radius:50%;transform:scaleX(var(--device-scale,1));opacity:.8}.dash-screen-panel{position:absolute;inset:0;overflow:hidden}.dash-screen-panel[hidden]{display:none}.screen-crop{position:absolute;inset:0;overflow:hidden}.screen-crop img{position:absolute;width:129.4%;max-width:none;height:auto;left:-14.75%;top:-12.9%}.screen-demo{position:absolute;bottom:7px;right:8px;border-radius:3px;background:#f4f1f9eb;color:#6d5981;padding:3px 7px;font-size:7px;letter-spacing:.07em}.dashboard-controls{width:min(850px,100%);position:relative;margin-top:18px}.dashboard-tabs{display:flex;gap:20px;justify-content:center}.dashboard-tabs button{background:none;border:0;border-bottom:2px solid #685373;color:#a997b4;font-size:11px;min-width:145px;padding:9px 20px}.dashboard-tabs button span{font-size:13px;margin-left:12px}.dashboard-tabs button.active{color:#ead9f4;border-color:#cca0e5}.dashboard-caption{margin-top:17px;min-height:65px}.dashboard-caption h3{font-size:22px;letter-spacing:-.03em}.dashboard-caption p{font-size:12px;color:#c0b1c9;margin:8px auto 0;max-width:600px}.dashboard-controls>.text-link{font-size:11px;margin-top:4px;padding:4px 0}.app-preview{color:#25232b;background:#f6f7fa;font-family:'DM Sans',sans-serif;text-align:left}.app-bar{height:12%;padding:0 3%;display:flex;justify-content:space-between;align-items:center;background:white;border-bottom:1px solid #e1e2e8;font-size:clamp(6px,.7vw,11px);color:#0087b2}.app-bar strong span{color:#7f7990;font-weight:400}.app-inner{display:flex;height:88%}.app-inner aside{width:19%;background:#fff;padding:6% 2%}.app-inner aside b{display:block;font-weight:400;font-size:clamp(5px,.7vw,10px);padding:10% 4%;color:#5a5664}.app-inner aside b.selected{background:#eee6f6;color:#754794;border-radius:4px}.calendar-preview,.creative-preview{padding:5%;width:81%}.app-kicker{font-size:clamp(6px,.7vw,10px);letter-spacing:.09em;color:#007d9f;margin:0 0 3%}.app-preview h3{font-size:clamp(11px,1.6vw,22px);letter-spacing:-.025em}.calendar-filters{display:flex;gap:4%;font-size:clamp(5px,.65vw,9px);margin:5% 0 3%}.calendar-filters span:first-child{background:#73539b;color:white;padding:1% 4%;border-radius:4px}.week-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:20px 55px 55px;border:1px solid #e4dfeb;background:white}.week-grid>div{border:1px solid #efedf3;padding:7%;font-size:clamp(5px,.6vw,9px);color:#8c8195}.week-grid .appointment{background:#eee7f8;border-left:3px solid #9671bd;color:#654880;padding:9% 5%;border-radius:3px;font-size:clamp(5px,.65vw,9px)}.appointment small{display:block;font-size:clamp(4px,.52vw,7px);margin-top:5%}.week-grid .second{background:#def3f5;color:#2a7c84;border-left-color:#39a1b4}.week-grid .third{background:#edf3e6;color:#65843a;border-left-color:#99b959}.app-foot{font-size:clamp(5px,.6vw,9px);margin-top:5%;color:#91879b}.creative-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:5%;margin-top:5%}.creative-layout>img{width:100%;height:170px;object-fit:cover;border-radius:5px}.creative-layout>div{font-size:clamp(7px,.9vw,12px)}.studio-label{display:block;color:#7b4a9e;border-bottom:1px solid #dcd1e5;padding-bottom:8%}.creative-thumbs{display:flex;gap:6%}.creative-thumbs img{width:47%;height:65px;object-fit:cover;border-radius:3px}.creative-route{font-size:clamp(5px,.65vw,9px);color:#7b6987}.project{overflow:hidden}.project img{transition:transform .65s ease,filter .4s ease}.project:hover img{transform:scale(1.025)}.show-image img{transition:opacity .2s}.sticky-contact{position:fixed;right:22px;bottom:20px;z-index:30;display:flex;align-items:center;gap:5px;background:#211529eb;backdrop-filter:blur(12px);border:1px solid #b291c250;border-radius:30px;padding:5px;box-shadow:0 5px 20px #0002}.sticky-contact a{color:#f4e9fa;padding:7px 15px;font-size:11px}.sticky-contact button{border:0;border-radius:50%;width:34px;height:34px;background:#ffffff15;color:#f4e9fa;font-size:13px}.paused .visual-story,.paused .dashboard-story{height:auto}.paused .visual-stage,.paused .dashboard-stage{position:relative}.paused .laptop-lid{transform:none}.paused .laptop-assembly{transform:none}.paused .visual-images img{transform:none}.paused .scroll-hint{visibility:hidden}.paused *{scroll-behavior:auto!important;transition:none!important}
@media(min-width:761px) and (max-height:740px){.dashboard-stage{padding-top:20px;min-height:620px}.dashboard-intro .eyebrow{margin-bottom:10px}.dashboard-intro h2{font-size:37px}.dashboard-caption{min-height:55px;margin-top:12px}.dashboard-caption h3{font-size:20px}.dashboard-controls{margin-top:0}.dashboard-tabs button{padding:7px 18px}.laptop-stage{--device-width:min(59vw,calc((100svh - 275px)*1.34),670px)}}
@media(max-width:760px){.visual-story{height:auto}.visual-stage{height:auto;min-height:690px;position:relative;padding:32px 6%}.visual-top .scroll-hint{display:none}.visual-heading{margin:120px 0 30px}.visual-heading h2{font-size:36px}.visual-heading p{font-size:13px}.visual-bottom{flex-direction:column;align-items:stretch;gap:24px}.visual-caption h3{font-size:25px}.visual-caption p{font-size:12px}.quality-nav{min-width:0;width:100%;gap:10px}.quality-nav button{min-height:50px}.dashboard-story{height:auto}.dashboard-stage{position:relative;height:auto;min-height:0;padding:60px 5% 50px;overflow:hidden}.dashboard-intro h2{font-size:34px}.dashboard-intro .eyebrow{font-size:9px;line-height:1.8}.laptop-stage{--device-width:84vw;height:calc(84vw*.68 + 35px);margin:35px auto 5px;perspective:850px}.laptop-lid{padding:10px 5px 11px;border-radius:10px 10px 4px 4px}.webcam{width:3px;height:3px;top:3px}.laptop-wordmark{font-size:4px;bottom:1px}.laptop-deck{height:55px;padding:4px 0}.keyboard{height:26px;background:repeating-linear-gradient(0deg,transparent 0 4px,#5e5364 4px 6px),repeating-linear-gradient(90deg,#101015 0 5.8%,#4e4556 5.8% 6.5%)}.trackpad{height:15px;margin-top:3px}.laptop-edge{top:calc(100% - 26px);height:4px;transform:translateY(-2px)}.dashboard-tabs{gap:8px}.dashboard-tabs button{min-width:0;flex:1;padding:12px 4px;min-height:44px;font-size:10px}.dashboard-tabs button span{font-size:12px;margin-left:5px}.dashboard-caption{margin-top:22px;min-height:100px}.dashboard-caption h3{font-size:25px}.dashboard-caption p{font-size:13px}.dashboard-controls>.text-link{font-size:12px}.screen-demo{font-size:5px;bottom:3px;right:4px;padding:2px 4px}.week-grid{grid-template-rows:14px 32px 32px}.creative-layout>img{height:95px}.creative-thumbs img{height:35px}.app-bar{font-size:6px}.app-inner aside b{font-size:5px}.sticky-contact{bottom:12px;right:12px}.visual-progress{display:none}}
@media(prefers-reduced-motion:reduce){.visual-story,.dashboard-story{height:auto}.visual-stage,.dashboard-stage{position:relative}.laptop-lid,.laptop-assembly{transform:none!important}.scroll-hint{display:none}.visual-images img{transform:none}}

/* refinements.css */
.brand-intro{position:fixed;inset:0;z-index:200;background:#141019;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:28px;pointer-events:none;animation:intro-away .65s 1.05s both}
.brand-intro img{width:clamp(180px,28vw,400px);height:auto;animation:intro-logo 1s both}.brand-intro span{color:#d4c7dd;font-size:11px;letter-spacing:.17em;text-transform:uppercase;animation:intro-logo .8s .12s both}
@keyframes intro-logo{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}@keyframes intro-away{to{opacity:0;visibility:hidden;transform:translateY(-3%)}}
.laptop-stage{--device-width:min(59vw,calc((100svh - 315px)*1.36),760px);height:calc(var(--device-width)*.685 + 60px)}
.laptop-lid{padding:13px 10px 17px;border:1px solid #ad9ab8;border-radius:18px 18px 5px 5px;box-shadow:0 0 0 2px #39313e,0 0 0 3px #17131c,0 10px 22px #09060f80,inset 0 0 0 2px #08070b;backface-visibility:visible;background:linear-gradient(135deg,#332d3b,#08070b 36%,#211a29)}
.laptop-deck{width:110%;margin-left:-5%;height:115px;padding:9px 12%;background:linear-gradient(110deg,#655b6c,#35303d 38%,#514759 80%,#6c6175);border:1px solid #9e8dab;border-radius:3px 3px 15px 15px;box-shadow:0 3px 0 #332a3e,0 6px 0 #18131f,0 10px 16px #08060c80}
.keyboard{display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(5,1fr);gap:3px;width:100%;height:66px;background:#28222e;padding:3px;border-radius:5px;box-shadow:inset 0 1px 3px #0a080c}.keyboard i{background:linear-gradient(#222027,#0c0b10);border:1px solid #74677e60;border-radius:2px;box-shadow:0 1px 1px #000}.trackpad{width:30%;height:26px;flex-shrink:0;background:linear-gradient(135deg,#54495f,#3c3446);border-color:#92819e;margin-top:6px}.laptop-edge{top:calc(100% - 62px);left:-5%;width:110%;height:7px;background:linear-gradient(#8b7d97,#382e43 65%,#151019);border-radius:0 0 45% 45%}.laptop-edge:after{content:'';position:absolute;width:13%;height:3px;background:#221c29;left:43.5%;border-radius:0 0 8px 8px}
.metrics-preview{padding:5%;width:81%}.metric-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:3%;margin:5% 0}.metric-cards>div{padding:9%;background:white;border:1px solid #eae5ef;border-radius:5px}.metric-cards span{display:block;font-size:clamp(5px,.7vw,10px);color:#85788f}.metric-cards strong{display:block;font-size:clamp(13px,1.8vw,25px);line-height:1.4;color:#514064}.chart-card{background:white;border:1px solid #eae5ef;padding:4%;border-radius:5px;font-size:clamp(6px,.7vw,10px);color:#73677f}.chart-card svg{width:100%;height:auto;display:block;margin-top:4%}.chart-labels{display:flex;justify-content:space-between;font-size:clamp(5px,.6vw,8px)}
#proyectos{overflow:hidden}.project-toolbar{border-top:1px solid #cec7d1;padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:13px}.project-toolbar>div{display:flex;gap:8px}.project-toolbar button{width:60px;height:42px;border:1px solid #bcb1c5;background:#201b27;color:white;font-size:22px}.project-toolbar button:disabled{background:transparent;color:#a096a7;cursor:default}
.projects{display:flex!important;gap:16px!important;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:-6.82%;padding-right:6.82%;padding-bottom:8px;overscroll-behavior-x:contain}.projects::-webkit-scrollbar{display:none}.project,.project:nth-child(even){flex:0 0 37%;height:clamp(370px,43vw,580px);padding:0!important;position:relative;border-radius:5px;scroll-snap-align:start;isolation:isolate;background:#221b29}.project img{width:100%;height:100%!important;object-fit:cover}.project:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0c071b30,transparent 45%,#100b1ddb);z-index:1;pointer-events:none}.project>div{position:absolute;inset:auto 25px 25px;display:block;z-index:2;color:white}.project h3{font-size:clamp(30px,3vw,48px);max-width:330px}.project>div>span{display:inline-block;color:#fff;font-size:11px;margin-top:14px;border-bottom:1px solid #fff7;padding-bottom:4px}.project:hover img,.project:focus-visible img{transform:scale(1.045)}.project:focus-visible{outline-offset:-5px}.projects:focus-visible{outline:2px solid #8e5dac;outline-offset:6px}
@media(max-width:760px){.laptop-stage{--device-width:80vw;height:calc(80vw*.685 + 44px)}.laptop-lid{padding:10px 5px 12px;border-radius:10px 10px 4px 4px}.laptop-deck{height:72px;padding:5px 10%}.keyboard{height:40px;gap:2px;padding:2px}.trackpad{height:17px;margin-top:4px}.laptop-edge{top:calc(100% - 39px);height:5px}.project,.project:nth-child(even){flex-basis:85%;height:430px}.project>div{inset:auto 22px 25px}.project h3{font-size:35px}.project-toolbar{font-size:11px}.project-toolbar button{width:46px}.brand-intro span{font-size:9px}}
.metrics-preview{padding:3%;display:flex;flex-direction:column;gap:7px}.metrics-preview .app-kicker{margin:0;font-size:8px}.metrics-preview h3{font-size:17px}.metric-cards>div{padding:7px}.metric-cards{margin:0}.metric-cards span{font-size:8px}.metric-cards strong{font-size:19px}.chart-card{padding:3%;min-height:0;flex:1}.chart-card svg{height:65px;margin-top:2%}.metrics-preview .app-foot{margin:0;font-size:7px}
@media(min-width:761px) and (max-height:800px){.laptop-stage{--device-width:min(55vw,calc((100svh - 340px)*1.27),650px);height:calc(var(--device-width)*.685 + 65px)}.dashboard-controls{margin-top:12px}.dashboard-caption{margin-top:10px;min-height:50px}}
@media(max-width:760px){.metrics-preview{gap:4px}.metrics-preview .app-kicker{font-size:5px}.metrics-preview h3{font-size:11px}.metric-cards>div{padding:4px}.metric-cards span{font-size:5px}.metric-cards strong{font-size:12px}.chart-card svg{height:38px}.metrics-preview .app-foot{font-size:5px}}
@media(prefers-reduced-motion:reduce){.brand-intro{display:none}.projects{scroll-behavior:auto}.project img{transition:none}}

/* scroll-fixes.css */
/* A shared hinge joins the screen and the fixed chassis. */
#proyectos .section-head{margin-bottom:24px}.project-pin{justify-content:flex-start!important;padding-top:0!important}
.show-instruction{font-size:12px;color:#64516f;margin:0 0 16px;display:flex;align-items:center;gap:10px}.show-instruction:before{content:'↙';font-size:20px;color:var(--purple)}
.show-copy .step{position:relative;padding-right:42px;padding-left:12px;border-left:3px solid transparent;transition:background .2s,border-color .2s}.show-copy .step:after{content:'→';position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:23px;color:var(--purple)}.show-copy .step:hover{background:#eee8f2}.show-copy .step.active{background:#eee8f2;border-left-color:var(--purple)}.show-copy .step.active:after{content:'✓';font-size:17px}
.dashboard-story{height:250svh}.dashboard-stage{justify-content:center;gap:22px;padding-top:26px}.dashboard-intro h2{font-size:clamp(32px,3.5vw,54px)}
.laptop-stage{--device-width:min(61vw,calc((100svh - 335px)*1.3),760px);height:calc(var(--device-width)/1.51 + 103px);margin:0 auto;perspective:1600px}
.laptop-assembly{transform-style:preserve-3d}.laptop-lid{z-index:2;transform-origin:center calc(100% - 2px);border-radius:15px 15px 4px 4px;backface-visibility:hidden;box-shadow:0 0 0 2px #3d3745,0 0 0 3px #9c90a450,inset 0 0 0 2px #09080c}
.laptop-deck{position:absolute;top:calc(100% - 2px);left:-5%;margin:0;width:110%;height:80px;transform:none;clip-path:polygon(4.5% 0,95.5% 0,100% 91%,99% 100%,1% 100%,0 91%);border:0;border-radius:0 0 9px 9px;padding:9px 11% 7px;background:linear-gradient(180deg,#514959 0,#706676 5%,#4a4353 12%,#51495a 88%,#a297ac 91%,#2e2835 97%);box-shadow:none;z-index:3}
.laptop-deck:before{content:'';position:absolute;top:0;height:6px;left:9%;right:9%;background:linear-gradient(#100d16,#615569,#211a2b);border-radius:0 0 4px 4px}.keyboard{height:39px;gap:2px;padding:2px;flex-shrink:0;transform:perspective(250px) rotateX(12deg);transform-origin:top}.keyboard i{border-color:#95879d60;background:linear-gradient(#27232e,#131017)}.trackpad{height:17px;width:26%;margin-top:5px;background:#63586e;border:1px solid #9888a5;border-radius:3px}.laptop-edge{display:none}.laptop-shadow{bottom:0;height:30px;left:-5%;width:110%;filter:blur(13px)}.dashboard-controls{margin-top:0}.dashboard-caption{min-height:56px;margin-top:12px}
#proyectos{overflow:visible}.project-scroll{position:relative;margin-right:-6.82%}.project-pin{position:sticky;top:0;height:100svh;display:flex;flex-direction:column;justify-content:center;padding:25px 0;background:var(--paper);overflow:hidden}.project-toolbar{margin-right:6.4%;flex-shrink:0}.projects{margin:0;padding-right:6.4%;flex-shrink:0;scroll-snap-type:none}.project,.project:nth-child(even){height:min(64svh,580px)}
.clients{overflow:hidden}.logos{display:flex!important;width:max-content;gap:0!important;animation:client-ribbon 28s linear infinite;align-items:center}.logos img{width:150px!important;height:65px!important;object-fit:contain;flex:0 0 150px;margin:0 35px;filter:grayscale(1) brightness(0);mix-blend-mode:multiply}.logos:hover{animation-play-state:paused}.paused .logos{animation-play-state:paused}@keyframes client-ribbon{to{transform:translateX(-50%)}}
.paused .project-scroll{height:auto!important}.paused .project-pin{position:relative;height:auto}.paused .projects{scroll-snap-type:x mandatory}
@media(min-width:761px) and (max-height:800px){.dashboard-stage{gap:12px;padding:20px 5%}.laptop-stage{--device-width:min(56vw,calc((100svh - 390px)*1.25),640px)}.dashboard-intro h2{font-size:36px}}
@media(max-width:760px){.dashboard-story{height:auto}.dashboard-stage{gap:20px;padding:42px 5%}.laptop-stage{--device-width:80vw;height:calc(80vw/1.51 + 81px);margin:0 auto}.laptop-deck{height:58px;padding:7px 11% 5px}.keyboard{height:27px;gap:1px}.trackpad{height:12px;margin-top:4px}.laptop-deck:before{height:4px}.dashboard-caption{min-height:100px}.project-pin{padding:15px 0}.project,.project:nth-child(even){height:58svh}.logos img{width:120px!important;flex-basis:120px;margin:0 25px;height:55px!important}}
@media(prefers-reduced-motion:reduce){.project-scroll{height:auto!important}.project-pin{position:relative;height:auto}.logos{animation:none;flex-wrap:wrap;width:100%;justify-content:center}.logos [aria-hidden]{display:none}}

/* device-polish.css */
.show-image{background:radial-gradient(ellipse at center,#e9e0ef,transparent 70%);padding:20px 10px 0;min-height:480px;display:flex;flex-direction:column;justify-content:center;align-items:center}.scene-device{position:relative;background:#17151c;border:2px solid #74697c;box-shadow:0 14px 30px #20152525,inset 0 0 0 2px #070609;width:94%;padding:12px 10px 22px;border-radius:14px;transition:width .45s,border-radius .45s,padding .45s}.scene-device:before{content:'';position:absolute;width:4px;height:4px;top:4px;left:50%;background:#7b7188;border-radius:50%}.show-image .scene-device img{width:100%;height:270px;object-fit:contain;background:#f6f3f8;border-radius:3px}.scene-device:after{content:'';position:absolute;left:35%;bottom:-45px;width:30%;height:45px;background:linear-gradient(90deg,#958d9e,#cbc6d0,#8b8097);clip-path:polygon(33% 0,67% 0,72% 83%,100% 92%,100% 100%,0 100%,0 92%,28% 83%)}.show-image>span{margin-top:65px;text-align:center}.show-image[data-device="floor"] .scene-device{width:86%;padding:15px;border-radius:23px}.show-image[data-device="floor"] .scene-device:after{display:none}.show-image[data-device="floor"] .scene-device img{height:290px;border-radius:10px}.show-image[data-device="unit"] .scene-device{width:205px;padding:22px 9px 16px;border-radius:30px}.show-image[data-device="unit"] .scene-device img{height:335px;border-radius:17px}.show-image[data-device="unit"] .scene-device:before{width:47px;height:9px;top:7px;left:calc(50% - 23px);background:#050406}.show-image[data-device="unit"] .scene-device:after{display:block;clip-path:none;left:35%;bottom:6px;width:30%;height:3px;border-radius:5px;background:#9a8ea4}.show-image[data-device="floor"]>span,.show-image[data-device="unit"]>span{margin-top:24px}
.project-pin{height:auto;min-height:0;padding-bottom:8px}.clients{margin-top:35px!important}#proyectos{padding-bottom:65px}
.brand-intro{animation:lens-reveal 2.2s cubic-bezier(.65,0,.25,1) forwards;background:#141019}.brand-intro img{animation:lens-zoom 2.2s cubic-bezier(.65,0,.25,1) forwards;transform-origin:67% 48%;will-change:transform,opacity}
@keyframes lens-zoom{0%{opacity:0;transform:scale(.9)}18%,40%{opacity:1;transform:scale(1)}83%{opacity:1;transform:scale(18)}100%{opacity:0;transform:scale(27)}}
@keyframes lens-reveal{0%,58%{background:#141019;opacity:1;visibility:visible}82%{background:#14101900;opacity:1}100%{background:transparent;opacity:0;visibility:hidden}}
@media(max-width:760px){.show-image{min-height:390px;padding:15px 0}.show-image .scene-device img{height:190px}.show-image[data-device="floor"] .scene-device img{height:210px}.show-image[data-device="unit"] .scene-device{width:180px}.show-image[data-device="unit"] .scene-device img{height:280px}.scene-device{width:94%}.clients{margin-top:25px!important}}
.scene-device{border-color:#a29aa9;background:linear-gradient(135deg,#39323e,#100e15 50%,#403747);box-shadow:0 18px 32px #21142e22,0 0 0 1px #201926;flex-shrink:0}.show-image[data-device="building"] .scene-device{padding:10px 10px 23px;border-radius:12px}.show-image[data-device="building"] .scene-device img{background:#100e15;object-fit:cover}.phone-top,.phone-bottom{display:none}
.show-image[data-device="unit"] .scene-device{width:210px;max-width:70%;height:auto;aspect-ratio:9 / 19.2;padding:30px 8px 18px;border-radius:33px;transform:none;overflow:hidden;display:flex;flex-direction:column;background:#121018;gap:0}.show-image[data-device="unit"] .scene-device img{height:0;min-height:0;flex:1;width:100%;object-fit:contain;object-position:center;background:#f6f3f8;border-radius:0;padding:4px}.show-image[data-device="unit"] .phone-top{display:flex;flex-direction:column;gap:5px;background:#f6f3f8;color:#32243d;padding:13px 12px 9px;border-radius:15px 15px 0 0;font-size:8px;letter-spacing:.05em}.phone-top strong{font-size:14px;letter-spacing:-.03em}.show-image[data-device="unit"] .phone-bottom{display:block;background:#f6f3f8;border-radius:0 0 15px 15px;padding:9px 12px 16px;font-size:8px;color:#685872}.show-image[data-device="unit"] .scene-device:before{width:55px;height:12px;left:calc(50% - 27.5px);top:10px;border-radius:9px}.show-image[data-device="unit"] .scene-device:after{bottom:7px}
.brand-intro{animation:intro-finish 1.9s ease forwards;gap:0;background:radial-gradient(ellipse at center,#24182f,#141019 65%)}.intro-symbol{position:relative;width:clamp(200px,30vw,410px);aspect-ratio:2251 / 691;animation:symbol-arrive 1.9s ease both}.brand-intro .intro-symbol img{width:100%;height:100%;animation:none;transform:none;filter:drop-shadow(0 0 16px #925bc422)}.intro-symbol:after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 36%,#b88cfa55 44%,#fff 49%,#e7d5ff 51%,transparent 60%);background-size:300% 100%;mask:url('assets/logo-symbol.png') center/contain no-repeat;-webkit-mask:url('assets/logo-symbol.png') center/contain no-repeat;animation:logo-glint 1.2s .25s ease-in-out both}
@keyframes symbol-arrive{0%{opacity:0;transform:scale(.96)}22%,80%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.035)}}@keyframes logo-glint{0%{background-position:100% 0;opacity:0}20%{opacity:1}85%{opacity:1}100%{background-position:0% 0;opacity:0}}@keyframes intro-finish{0%,77%{opacity:1;visibility:visible}100%{opacity:0;visibility:hidden}}
@media(max-width:760px){.show-image[data-device="unit"] .scene-device{width:190px;aspect-ratio:9 / 19.2}.show-image[data-device="unit"] .scene-device img{height:0}.show-image{min-height:440px}}
/* Shared dimensions prevent wide viewports from stretching the devices. */
.showcase .show-image{min-height:0;width:100%;padding:25px 0 0;align-self:center}
.showcase .show-image[data-device] .scene-device{box-sizing:border-box;width:min(100%,540px);max-width:100%;height:auto;aspect-ratio:16 / 10;flex:none;display:block;padding:12px 14px 20px;transition:background .25s,border-radius .25s;overflow:visible}
.showcase .show-image[data-device] .scene-device img{display:block;width:100%;height:100%;min-height:0;padding:0;flex:none;object-fit:contain;background:#f6f3f8;border-radius:5px}
.showcase .show-image[data-device="building"] .scene-device{border-radius:12px}.showcase .show-image[data-device="building"] .scene-device img{background:#17151c}
.showcase .show-image[data-device="floor"] .scene-device{padding:16px;border-radius:24px}.showcase .show-image[data-device="floor"] .scene-device img{border-radius:10px}
.showcase .show-image[data-device="unit"] .scene-device{padding:11px 26px;border-radius:30px;transform:none}.showcase .show-image[data-device="unit"] .scene-device img{border-radius:17px}.showcase .show-image[data-device="unit"] .phone-top,.showcase .show-image[data-device="unit"] .phone-bottom{display:none}
.showcase .show-image[data-device="unit"] .scene-device:before{width:8px;height:42px;left:8px;top:calc(50% - 21px);border-radius:8px}.showcase .show-image[data-device="unit"] .scene-device:after{width:3px;height:27%;left:auto;right:9px;top:36.5%;bottom:auto;border-radius:4px;clip-path:none;background:#9a8ea4}
.showcase .show-image[data-device]>span{margin-top:65px;min-height:18px}
@media(max-width:760px){.showcase .show-image[data-device] .scene-device{width:min(100%,540px)}.showcase .show-image[data-device]>span{margin-top:60px}}
@media(prefers-reduced-motion:reduce){.scene-device{transition:none}.brand-intro{display:none}}

/* pages.css */
.real-ui{position:relative;width:100%;height:100%;background:#f8f8f8;color:#27313c;font-family:'DM Sans',sans-serif;container-type:inline-size;overflow:hidden;text-align:left}.real-bar{height:10%;background:white;border-bottom:1px solid #bbb;display:flex;align-items:center;justify-content:space-between;padding:0 3%;font-size:1.6cqw}.real-bar em,.real-bar>strong{color:#eea01c}.real-bar>span{font-size:1.1cqw}.real-body{display:flex;height:90%}.real-body aside{width:24%;padding:3% 1.5%;background:white}.real-body aside span{display:block;padding:7% 4%;font-size:1.35cqw;color:#444}.real-body aside .selected{background:#ece7f8;color:#6445af;border-radius:3px}.real-main{width:76%;padding:3% 2.5%;overflow:hidden}.real-summary{background:white;padding:3%;border-radius:8px}.real-summary h3{color:#e99b1d;font:600 2.6cqw 'DM Sans',sans-serif;letter-spacing:0}.real-summary p{font-size:1.05cqw;margin:2% 0}.real-tabs{display:flex;gap:6%;font-size:1.05cqw;margin-top:3%;align-items:center}.real-tabs b{background:#efa11c;color:white;padding:2% 4%;border-radius:5px}.real-filter{font-size:1.2cqw;padding:3%;margin:3% 0;background:white;border-radius:6px;display:flex;justify-content:space-between}.real-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:2%}.real-kpis>div{background:white;border-radius:6px;padding:12% 9%;box-shadow:0 1px 4px #0001}.real-kpis span{display:block;font-size:1.02cqw;min-height:3cqw;color:#929aa5;font-weight:600}.real-kpis strong{display:block;font-size:3.4cqw;line-height:1.5;font-variant-numeric:tabular-nums}.real-kpis small{font-size:.8cqw;color:#3a99ac}.real-charts{display:grid;grid-template-columns:1fr 1fr;gap:3%;margin-top:3%}.real-charts>div{background:white;padding:5%;border-radius:6px;color:#9564b8}.real-charts>div+div{color:#29b1c7}.real-charts b{font-size:1.1cqw;color:#485363;display:block}.real-charts svg{display:block;width:100%;height:auto;margin-top:3%}.real-charts small{font-size:.8cqw;color:#97a0aa}.real-disclaimer{position:absolute;bottom:1.5%;right:2%;font-size:.9cqw;letter-spacing:.04em;background:#f5edfbe8;color:#735786;padding:3px}.real-line{stroke-dasharray:1;stroke-dashoffset:1}.playing .real-line{animation:chart-grow 3.8s ease forwards}@keyframes chart-grow{to{stroke-dashoffset:0}}.paused .real-line{animation:none;stroke-dashoffset:0}
.page-explore{display:grid;grid-template-columns:repeat(4,1fr);padding:40px 6%;gap:20px;background:#e9e1ef}.page-explore a{border-bottom:1px solid #b8a6c3;padding:18px 0;display:flex;justify-content:space-between;font-size:14px}.inner-page header{position:relative;background:#141019}.inner-page nav a[aria-current]{color:#cfabe5}.inner-hero{padding:85px 6% 65px;max-width:1150px}.inner-hero h1{font-size:clamp(44px,6vw,86px)}.inner-hero>p:last-child{font-size:18px;color:#776c7f;max-width:730px;margin-top:30px}.wide-photo{margin:0 6%;height:55vh;overflow:hidden;border-radius:6px}.wide-photo img{width:100%;height:100%;object-fit:cover}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:40px;padding:75px 6%}.info-grid article{border-top:1px solid #c8bdcf;padding-top:25px}.info-grid article>span{font-size:11px;color:#946baa}.info-grid h2{font-size:32px;margin-top:18px}.info-grid p,.split-content p{color:#74687c;font-size:16px}.split-content{padding:60px 6%;display:grid;grid-template-columns:1fr 1fr;gap:8%;background:#eee7f2}.split-content h2{font-size:42px}.dashboard-full{width:min(1000px,88%);aspect-ratio:1.51;margin:auto;border:8px solid #211b2a;border-radius:16px;overflow:hidden;box-shadow:0 25px 50px #25163120}.demo-note{font-size:12px;color:#81708b;text-align:center;margin:25px auto;padding:0 20px}.portfolio-grid{padding:0 6% 65px;display:grid;grid-template-columns:1fr 1fr;gap:25px}.portfolio-grid .project{height:460px}.inner-cta{padding:65px 6%;background:#372342;color:white;display:flex;justify-content:space-between;align-items:center;gap:35px}.inner-cta h2{font-size:42px}.inner-cta .cta{white-space:nowrap}.full-faq{padding:70px 6%;max-width:1100px;margin:auto}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:0 6% 70px}.contact-options a{background:#eae0f0;border-radius:8px;padding:35px}.contact-options small{color:#835797}.contact-options h2{font-size:30px;margin-top:20px}.inner-page:has(.contact-options) .inner-cta{display:none}
@media(max-width:760px){.page-explore,.info-grid,.split-content,.portfolio-grid,.contact-options{grid-template-columns:1fr}.inner-hero{padding:55px 6% 40px}.inner-hero>p:last-child{font-size:16px}.inner-cta{flex-direction:column;align-items:flex-start}.inner-cta h2,.split-content h2{font-size:34px}.info-grid{padding:45px 6%}.portfolio-grid .project{height:420px}.dashboard-full{border-width:4px;width:94%}.inner-page nav.open{z-index:20}.contact-options p{font-size:14px;overflow-wrap:anywhere}}
.real-main{display:grid;grid-template-rows:1fr .32fr .8fr 1.05fr;gap:2%;padding:2%}.real-summary{padding:2%;min-height:0}.real-summary h3{font-size:2.3cqw}.real-summary p{margin:1% 0}.real-tabs{margin-top:1%}.real-tabs b{padding:1.5% 3%}.real-filter{margin:0;padding:2%;align-items:center}.real-kpis{min-height:0}.real-kpis>div{padding:8%}.real-kpis strong{font-size:3cqw}.real-charts{margin:0;min-height:0}.real-charts>div{padding:4%;min-height:0;display:flex;flex-direction:column}.real-charts svg{flex:1;min-height:0;width:100%;height:0}.real-charts small{flex-shrink:0}.real-disclaimer{bottom:.6%;font-size:.85cqw}
@media(prefers-reduced-motion:reduce){.real-line{animation:none!important;stroke-dashoffset:0}}

/* revision.css */
/* September refinement: content-led, accessible interactions. */
.dashboard-stage:after{display:none}
.dashboard-controls>.dashboard-booking{display:block;width:max-content;margin:15px auto 0;padding-top:15px;border-top:1px solid #c5a0da40;border-bottom:0;max-width:100%}
.dashboard-controls:has(.dashboard-booking){padding-bottom:6px}
.dashboard-stage{min-height:730px}
@media(min-width:761px){.dashboard-stage{gap:16px;padding-top:22px;padding-bottom:26px}.laptop-stage{--device-width:min(61vw,calc((100svh - 430px)*1.25),720px)}}
@media(min-width:761px) and (max-height:730px){.dashboard-story{height:auto}.dashboard-stage{position:relative;height:auto;min-height:0;padding-block:45px}.laptop-stage{--device-width:min(55vw,520px)}}
.showcase .show-image[data-device] .scene-device img{background:#15111a;object-fit:contain}
.browser-frame{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 18px;background:#24202b;color:#d7c9e2;font-size:9px;letter-spacing:.12em}
.browser-frame i{font-style:normal;letter-spacing:4px;color:#9b82ac}
.depth-layout{display:grid;grid-template-columns:.8fr 1.5fr;gap:5%;align-items:start}
.depth-menu{display:grid;gap:8px}
.depth-menu button{display:flex;align-items:center;gap:16px;text-align:left;background:none;border:0;border-bottom:1px solid #cfc3d5;padding:27px 15px;color:#796680;font:12px 'DM Sans';cursor:pointer}
.depth-menu button span{font:500 22px Syne;flex:1;color:#302537}
.depth-menu button[aria-pressed=true]{background:#e9e0ef;box-shadow:inset 3px 0 #713c97}
.depth-menu button[aria-pressed=true] span{color:#713c97}
.depth-view{margin:0;overflow:hidden;border-radius:12px;background:#eae4ee}
.depth-view>img{display:block;width:100%;aspect-ratio:16/10;object-fit:contain;background:#18131d}
.depth-view figcaption{padding:26px 30px}.depth-view h3{font-size:27px}.depth-view p{font-size:15px;max-width:none}
#depth-detail{color:#713c97;font-size:12px;border-top:1px solid #cfc0d9;padding-top:17px;margin-bottom:0}
.included-note{display:grid;grid-template-columns:.65fr 1.4fr auto;gap:30px;align-items:center;margin-top:55px;padding:30px 0;border-top:1px solid #cfc3d5}
.included-note>span{font:24px Syne}.included-note p{font-size:15px;margin:0}.included-note .text-link{font-size:13px;white-space:nowrap}
.process-reveal{align-items:start;gap:9%;background:#ebe5ef}
.process-heading{position:sticky;top:115px}.process-index{display:flex;align-items:baseline;gap:20px;margin-top:42px;color:#713c97}.process-index>span{font:clamp(65px,8vw,110px) Syne;line-height:1}.process-index small{font:15px 'DM Sans';color:#9e8aa9}
.process-hint{font-size:12px;color:#80698d}.process-reveal li{padding:38px 0 44px 45px;min-height:300px;transition:opacity .45s,transform .45s}.process-reveal li:before{top:40px}.process-reveal .process-label{font-size:10px;letter-spacing:.13em;color:#713c97;display:block;margin-bottom:18px}.process-reveal li h3{font-size:32px}.process-reveal li p{font-size:16px}
.process-reveal.is-enhanced li{opacity:.4;transform:translateY(14px)}.process-reveal.is-enhanced li.is-current,.process-reveal.is-enhanced li.was-read{opacity:1;transform:none}
.tool-story{grid-template-columns:1.5fr 1fr;gap:5%;min-height:440px}.tool-capture{margin:0;position:relative;background:#e6dfeb;border-radius:10px;overflow:hidden;box-shadow:0 15px 45px #25143314}.tool-capture img{display:block;width:100%;aspect-ratio:16/10;object-fit:contain;background:#f7f8fa}.tool-capture figcaption{font-size:10px;padding:14px 18px 45px;color:#76637e}.capture-zoom{position:absolute;bottom:12px;right:16px;background:transparent;border:0;border-bottom:1px solid #a994b6;color:#713c97;padding:5px;font:12px 'DM Sans';cursor:pointer}
.tool-story h3{font-size:clamp(28px,3vw,42px)}.tool-story>div>p{font-size:16px}.tool-story .tool-detail{font-size:12px}
#capture-dialog{padding:48px 18px 15px;border:1px solid #a58ab5;border-radius:12px;background:#f5f3ef;width:min(1280px,94vw);max-height:94svh;color:#201b27}#capture-dialog::backdrop{background:#100b19ce;backdrop-filter:blur(8px)}#capture-dialog img{width:100%;max-height:75svh;object-fit:contain}#capture-dialog p{font-size:12px;margin:10px}.capture-close{position:absolute;right:16px;top:10px;border:0;background:none;padding:8px;color:#713c97;cursor:pointer}
.connected-experience{grid-template-columns:1fr 1.25fr;gap:6%}.connected-experience h2{font-size:clamp(32px,3.5vw,52px)}.perspective-switch{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0}.perspective-switch button{padding:13px 19px;background:transparent;border:1px solid #b79fc6;border-radius:30px;font:13px 'DM Sans';color:#654277;cursor:pointer}.perspective-switch button[aria-pressed=true]{background:#713c97;color:white;border-color:#713c97}.perspective-copy{border-top:1px solid #c7b5d2;padding-top:24px;min-height:200px}.perspective-copy h3{font-size:25px}.perspective-copy p{font-size:15px}.perspective-view{margin:0;border-radius:12px;overflow:hidden;box-shadow:0 20px 65px #4a2b6420;background:#faf7fc;transform:perspective(1400px) rotateY(-6deg);transition:transform .6s}.perspective-view.is-team{transform:perspective(1400px) rotateY(3deg)}.perspective-view>img{display:block;aspect-ratio:16/10;width:100%;object-fit:contain;background:#17121e}.perspective-view figcaption{padding:16px;font-size:11px;color:#775d87}
.ribbon-clients{overflow:hidden;position:relative;padding-bottom:35px}.client-strip>.ribbon-track{display:flex;flex-wrap:nowrap;justify-content:flex-start;width:max-content;gap:0;animation:revision-ribbon 30s linear infinite}.ribbon-track img{width:150px;height:65px;flex:0 0 150px;margin:0 35px;filter:brightness(0);object-fit:contain}.ribbon-track:hover,.ribbon-clients:focus-within .ribbon-track,.ribbon-clients.is-paused .ribbon-track{animation-play-state:paused}.ribbon-toggle{display:block;margin:20px 0 0 auto;font:11px 'DM Sans';border:0;background:transparent;color:#654576;padding:8px;cursor:pointer}@keyframes revision-ribbon{to{transform:translateX(-50%)}}
.team-full-hero{min-height:calc(100svh - 80px)}.team-full-hero>img{object-position:center 45%}.team-full-hero:after{background:linear-gradient(90deg,#141019db 0%,#14101988 55%,#14101925)}.team-full-hero>div>p:not(.eyebrow){font-size:19px;max-width:650px;color:#ebe3f0}.team-full-hero h1{max-width:1000px}.team-full-hero .eyebrow{color:#d8b5ef}
.team-workbench{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:start}.team-preview{margin:0;position:sticky;top:110px;background:#211928;border-radius:8px;overflow:hidden}.team-preview img{width:100%;aspect-ratio:1.16;display:block;object-fit:cover}.team-preview figcaption{padding:24px;color:#f5edf9;display:grid;gap:12px}.team-preview figcaption span{font-size:11px;color:#c8a6df;letter-spacing:.12em}.team-preview figcaption strong{font:30px Syne}.team-preview figcaption small{font-size:12px;color:#c3afcf}.team-accordion details{border-top:1px solid #ccbdd5;padding:7px 0}.team-accordion summary{list-style:none;display:flex;align-items:center;gap:20px;font:clamp(22px,2.4vw,32px) Syne;padding:24px 0;cursor:pointer}.team-accordion summary::-webkit-details-marker{display:none}.team-accordion summary>span{font:11px 'DM Sans';color:#916aa6}.team-accordion summary>i{font:22px 'DM Sans';margin-left:auto;transition:transform .2s}.team-accordion details[open] summary{color:#713c97}.team-accordion details[open] summary>i{transform:rotate(45deg)}.team-accordion p{padding:0 30px 24px 37px;margin:0;color:#77657e;font-size:16px}
.vr-journey{height:235svh;position:relative;background:#141019;color:white}.vr-pin{position:sticky;top:0;height:100svh;min-height:650px;overflow:hidden;isolation:isolate;background:#141019}.vr-person{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform-origin:50% 40%;transform:scale(var(--vr-scale,1));opacity:var(--vr-person-opacity,1);will-change:transform,opacity;z-index:-3}.vr-world{position:absolute;inset:0;clip-path:inset(var(--vr-inset,45%) round var(--vr-radius,80px));opacity:var(--vr-world-opacity,0);z-index:-2;transform:scale(var(--vr-world-scale,1.1));will-change:clip-path}.vr-world img{width:100%;height:100%;object-fit:cover}.vr-shade{position:absolute;inset:0;background:linear-gradient(0deg,#100c17e8 0%,#100c1750 35%,transparent 65%,#100c1733);z-index:-1}.vr-copy{position:absolute;left:6%;bottom:23%;max-width:690px;transform:translateY(var(--vr-copy-y,0px))}.vr-copy h2{font-size:clamp(36px,4.7vw,74px);line-height:1.05}.vr-copy h2 em{color:#d5b0ec}.vr-copy>p:last-child{font-size:17px;line-height:1.6;max-width:550px;color:#e0d4e8}.vr-copy .eyebrow{color:#d5b0ec;font-size:10px}.vr-bottom{position:absolute;bottom:32px;left:6%;right:6%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid #d4b8e54d;padding-top:24px}.vr-steps{display:flex;gap:24px}.vr-steps button{background:none;border:0;color:#b0a0bc;text-align:left;padding:9px 0;font:11px 'DM Sans';cursor:pointer}.vr-steps button span{display:block;font-size:13px;margin-top:8px}.vr-steps button[aria-pressed=true]{color:#f4eaff}.vr-bottom>a{color:#eadff2;font-size:12px;white-space:nowrap}.vr-motion{position:absolute;right:6%;top:35px;border:1px solid #c4a7d660;border-radius:25px;background:#14101966;color:#ede2f4;padding:10px 18px;font:11px 'DM Sans';cursor:pointer}
.revision-switched{animation:revision-switch .4s ease both}@keyframes revision-switch{from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.vr-person{transform-origin:50% 28%}.vr-world{clip-path:inset(var(--vr-top,20%) var(--vr-side,36%) var(--vr-bottom,62%) round var(--vr-radius,40px))}.vr-bottom{bottom:120px}.vr-copy{bottom:29%}
@media(max-width:1000px){.depth-layout{grid-template-columns:1fr 1.3fr;gap:3%}.depth-menu button span{font-size:18px}.included-note{grid-template-columns:1fr 2fr}.included-note>a{grid-column:2}.tool-story{grid-template-columns:1.25fr 1fr;gap:4%}.vr-bottom{align-items:start}.vr-steps{gap:16px}.vr-bottom>a{white-space:normal;max-width:180px}.tool-story>div>p{font-size:14px}}
@media(max-width:760px){.dashboard-stage{min-height:0}.dashboard-controls>.dashboard-booking{margin-top:5px;padding-top:18px}.depth-layout,.tool-story,.connected-experience,.team-workbench{grid-template-columns:1fr}.depth-menu{grid-template-columns:1fr 1fr;margin-bottom:22px}.depth-menu button{padding:16px 10px;gap:9px;font-size:10px}.depth-menu button span{font-size:16px}.depth-view figcaption{padding:22px}.depth-view h3{font-size:24px}.included-note{display:block;margin-top:30px}.included-note p{margin:18px 0}.process-heading{position:relative;top:auto}.process-index{margin-top:24px}.process-reveal li{min-height:0;padding:30px 0 30px 34px}.process-reveal li h3{font-size:27px}.process-reveal li p{font-size:15px}.process-reveal li:before{top:33px}.process-reveal.is-enhanced li{opacity:1;transform:none}.tool-selector{flex-wrap:wrap}.tool-story{gap:30px}.tool-story>div>p{font-size:16px}.tool-story h3{font-size:30px}.perspective-view,.perspective-view.is-team{transform:none}.perspective-copy{min-height:0}.ribbon-track img{width:120px;flex-basis:120px;margin:0 25px;height:55px}.team-full-hero{min-height:700px}.team-full-hero h1{font-size:48px}.team-full-hero>div>p:not(.eyebrow){font-size:16px}.team-preview{position:relative;top:0}.team-preview img{aspect-ratio:1.5}.team-accordion summary{font-size:24px}.team-workbench{gap:30px}.vr-journey{height:auto}.vr-pin{position:relative;height:800px;min-height:0}.vr-person{object-position:50% 30%;object-fit:cover}.vr-copy{bottom:220px;left:6%;right:6%}.vr-copy h2{font-size:38px}.vr-copy>p:last-child{font-size:15px}.vr-bottom{flex-direction:column;gap:20px;bottom:25px}.vr-steps{justify-content:space-between;width:100%}.vr-steps button span{font-size:11px}.vr-bottom>a{max-width:none}.vr-motion{top:22px}.vr-world img{object-position:center}.team-full-hero .image-credit{font-size:8px;right:6%}}
@media(prefers-reduced-motion:reduce){.revision-switched{animation:none}.ribbon-clients>.ribbon-track{animation:none;width:100%;flex-wrap:wrap;justify-content:center}.ribbon-track [aria-hidden=true]{display:none}.ribbon-toggle,.vr-motion{display:none}.vr-journey{height:auto}.vr-pin{position:relative;min-height:720px;height:90svh}.vr-person,.vr-world{will-change:auto}.process-heading{position:relative;top:auto}.process-reveal.is-enhanced li{opacity:1;transform:none}.perspective-view,.perspective-view.is-team{transform:none}.team-accordion summary>i{transition:none}}
@media(max-width:760px){.vr-bottom{bottom:85px}.vr-copy{bottom:265px}.vr-pin{height:850px}}
body:has(.vr-journey.is-in-view) .sticky-contact{visibility:hidden;pointer-events:none}


/* next.css */
/* Editorial motion refinements. */
.brand-film{height:175svh;background:#eee8f1;color:#201b27;position:relative}.film-pin{position:sticky;top:0;height:100svh;min-height:700px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 6%;gap:24px;overflow:hidden}.film-heading{width:100%;display:grid;grid-template-columns:1.5fr 1fr;gap:12px 5%;align-items:end}.film-heading .eyebrow{grid-column:1/-1;margin:0}.film-heading h2{font-size:clamp(32px,4vw,60px);margin:0}.film-heading>p:last-child{max-width:350px;margin:0 0 8px auto;font-size:15px;color:#756780}.film-screen{position:relative;display:block;width:min(1120px,100%);height:min(53svh,590px);min-height:260px;padding:0;border:0;border-radius:18px;overflow:hidden;background:#17111f;color:white;cursor:pointer;transform:scale(var(--film-scale,.8));transform-origin:50% 55%;will-change:transform;box-shadow:0 28px 60px #35214425}.film-screen>img{width:100%;height:100%;object-fit:cover;opacity:.8;transition:opacity .3s}.film-screen:hover>img{opacity:1}.film-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:76px;height:76px;background:#f5f3efed;color:#713c97;border-radius:50%;font-size:35px;padding-left:4px}.film-caption{position:absolute;bottom:0;left:0;right:0;padding:28px 32px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.1em;background:linear-gradient(transparent,#141019de)}.film-caption b{font-weight:400;letter-spacing:0;font-size:14px}#film-dialog{border:1px solid #685275;border-radius:16px;background:#141019;color:white;padding:52px 16px 18px;width:min(1200px,94vw);max-height:94svh}#film-dialog::backdrop{background:#110c19e8;backdrop-filter:blur(10px)}.film-close{position:absolute;right:18px;top:12px;background:none;color:white;border:0;padding:8px;cursor:pointer}.film-player{aspect-ratio:16/9}.film-player iframe{width:100%;height:100%;border:0}#film-dialog>a{display:block;color:#cfaae9;font-size:12px;margin-top:16px}.quality-motion{background:#14101970;border:1px solid #ffffff55;border-radius:30px;padding:10px 18px;color:white;font:11px 'DM Sans';cursor:pointer}.visual-top .scroll-hint{margin-left:auto}
/* Keep copy outside the immersive viewport. */
.vr-pin{display:grid;grid-template-columns:.82fr 1.4fr;grid-template-rows:1fr auto;gap:30px 5%;padding:90px 6% 40px;min-height:700px}.vr-visual{position:relative;grid-column:2;grid-row:1;isolation:isolate;border-radius:24px;overflow:hidden;width:100%;height:100%;max-height:690px;align-self:center;background:#1b1521;border:1px solid #60447255}.vr-person{z-index:0;object-position:center;transform-origin:50% 28%}.vr-world{z-index:1}.vr-shade{display:none}.vr-world video{display:block;width:100%;height:100%;object-fit:cover}.vr-live-label{position:absolute;bottom:15px;left:15px;right:15px;width:max-content;max-width:calc(100% - 30px);padding:9px 12px;background:#17111ec9;backdrop-filter:blur(10px);border-radius:30px;color:#eee1f5;font-size:9px;letter-spacing:.08em}.vr-copy{position:relative;left:auto;right:auto;bottom:auto;grid-column:1;grid-row:1;align-self:center;max-width:420px;transform:none}.vr-copy h2{font-size:clamp(34px,3.6vw,56px);line-height:1.08;margin-bottom:28px}.vr-copy>p:last-child{font-size:16px;color:#cbbbd5;max-width:330px}.vr-copy .eyebrow{margin-bottom:28px;line-height:1.8}.vr-bottom{position:relative;left:auto;right:auto;bottom:auto;grid-column:1/-1;grid-row:2;width:100%;padding-top:20px;align-items:center}.vr-steps{gap:40px}.vr-steps button{border-bottom:2px solid transparent;padding-bottom:12px}.vr-steps button[aria-pressed=true]{border-bottom-color:#c7a1e0}.vr-motion{right:6%;top:28px}.vr-journey[data-chapter="2"] .vr-visual{border-color:#b283cd80}
/* Cards open from a compact fan into their own space. */
.disciplines{overflow:hidden}.expertise-deck{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;padding:45px 0 65px;perspective:1600px}.expertise-card{min-width:0;position:relative;transform:translateY(calc((1 - var(--deck-progress,1))*65px)) rotate(calc(var(--angle)*(1 - var(--deck-progress,1))));transition:transform .4s ease}.expertise-toggle{position:relative;display:block;width:100%;height:410px;border:0;padding:0;background:transparent;color:inherit;text-align:left;cursor:pointer;perspective:1200px;outline-offset:7px}.expertise-face,.expertise-back{position:absolute;inset:0;display:flex;flex-direction:column;padding:24px 20px;border-radius:16px;background:#e9e0ef;backface-visibility:hidden;transition:transform .75s cubic-bezier(.2,.7,.2,1);border:1px solid #cdb8da;overflow:hidden}.expertise-card:nth-child(even) .expertise-face{background:#21182b;color:#f4ebfa;border-color:#3a2947}.expertise-top{display:flex;justify-content:space-between;font:9px 'DM Sans';letter-spacing:.1em}.expertise-top i{font-style:normal;font-size:18px}.expertise-symbol{flex:1;display:grid;place-items:center;font:clamp(60px,7vw,115px) Syne;color:#80509f;letter-spacing:-.09em}.expertise-card:nth-child(even) .expertise-symbol{color:#cea5e8}.expertise-face strong{font:500 clamp(20px,1.7vw,27px) Syne;line-height:1.15;min-height:64px}.expertise-invite{font:10px 'DM Sans';margin-top:17px;opacity:.8}.expertise-back{transform:rotateY(180deg);background:#713c97;color:#fff;gap:14px;padding:18px}.expertise-back img{width:100%;height:125px;object-fit:cover;border-radius:8px}.expertise-back strong{font:22px Syne}.expertise-back>span:not(.expertise-invite){font:13px/1.6 'DM Sans'}.expertise-back .expertise-invite{margin-top:auto}.expertise-toggle[aria-expanded=true] .expertise-face{transform:rotateY(-180deg)}.expertise-toggle[aria-expanded=true] .expertise-back{transform:rotateY(0)}.expertise-toggle:hover .expertise-face{box-shadow:0 15px 30px #20102d20}.expertise-toggle:focus-visible{outline:3px solid #9965b5;border-radius:18px}
/* Wide project images and quieter editorial captions. */
.case-grid{gap:70px 28px}.case{transition:opacity .65s,transform .75s cubic-bezier(.2,.7,.2,1);border:0;background:transparent}.case>a,.case>.teaser-visual{border-radius:18px;overflow:hidden;isolation:isolate;aspect-ratio:1.4}.case>a>img,.case>.teaser-visual>img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1)}.case>a:hover>img,.case>a:focus-visible>img{transform:scale(1.055)}.case-open{left:auto;right:20px;bottom:20px;border-radius:30px;padding:14px 19px;background:#f5f3efec;color:#21182b;backdrop-filter:blur(8px);font-size:12px;transform:translateY(8px);transition:transform .3s}.case>a:hover .case-open,.case>a:focus-visible .case-open{transform:none}.case>div:not(.teaser-visual){padding:22px 2px 0;border:0}.case>div>p{margin:0 0 11px;font-size:12px}.case>div>h2{font-size:clamp(26px,2.8vw,42px);margin:0;letter-spacing:-.045em}.project-type{font-size:10px}.case[hidden]{display:none!important}
@media(max-width:1100px) and (min-width:761px){.expertise-deck{grid-template-columns:repeat(3,minmax(0,1fr))}.expertise-toggle{height:390px}.vr-pin{gap:25px}.vr-copy h2{font-size:38px}}
@media(max-width:760px){.brand-film{height:auto}.film-pin{position:relative;height:auto;min-height:0;padding:65px 6%;gap:28px}.film-heading{display:block}.film-heading h2{font-size:36px;margin:22px 0}.film-heading>p:last-child{margin:0;max-width:none}.film-screen{min-height:0;height:auto;aspect-ratio:16/10;transform:none;border-radius:12px}.film-play{width:54px;height:54px;font-size:26px}.film-caption{padding:18px;font-size:8px}.film-caption b{font-size:11px}.vr-pin{height:auto;min-height:0;padding:75px 6% 35px;display:flex;flex-direction:column;gap:28px}.vr-copy{max-width:none;width:100%;order:0;min-height:230px}.vr-copy h2{font-size:35px;margin-bottom:18px}.vr-copy .eyebrow{margin-bottom:20px}.vr-copy>p:last-child{font-size:15px;max-width:none;margin:0}.vr-visual{order:1;height:360px;min-height:360px;border-radius:18px;align-self:auto}.vr-person{object-position:center 28%}.vr-bottom{order:2;display:flex;flex-direction:column;align-items:stretch;gap:22px;padding-top:15px}.vr-steps{gap:15px}.vr-steps button span{font-size:12px}.vr-motion{top:20px;font-size:10px;padding:8px 12px}.vr-live-label{font-size:8px}.expertise-deck{grid-template-columns:1fr;gap:20px;padding:10px 0 0}.expertise-toggle{height:380px}.expertise-face{padding:25px}.expertise-symbol{font-size:100px}.expertise-face strong{font-size:30px;min-height:0}.expertise-back img{height:150px}.expertise-back>span:not(.expertise-invite){font-size:15px}.expertise-card{transform:none}.case-grid{gap:38px}.case>a,.case>.teaser-visual{aspect-ratio:1.2;border-radius:12px}.case>div>h2{font-size:29px}.case-open{right:12px;bottom:12px;padding:10px 14px;font-size:11px}.case>div:not(.teaser-visual){padding-top:18px}.quality-motion{font-size:9px;padding:8px 10px}}
@media(prefers-reduced-motion:reduce){.brand-film{height:auto}.film-pin{position:relative;height:auto;min-height:0;padding-block:60px}.film-screen,.expertise-card{transform:none!important;will-change:auto}.expertise-face,.expertise-back,.case img,.case-open{transition:none!important}.vr-pin{height:auto;min-height:700px}.vr-visual{min-height:450px}.quality-motion{display:none}.expertise-toggle[aria-expanded=true] .expertise-face{visibility:hidden}.expertise-toggle[aria-expanded=false] .expertise-back{visibility:hidden}}
@media(max-width:760px) and (prefers-reduced-motion:reduce){.vr-visual{min-height:360px}}
.disciplines article.expertise-card{display:block;padding:0;border:0;align-items:normal;gap:0}.case-grid .case:nth-child(n)>a>img,.case-grid .case:nth-child(n)>.teaser-visual>img{height:100%;aspect-ratio:auto}.case-grid .case>div:not(.teaser-visual){margin-top:0}.case-grid .case>div>p{margin-top:0;margin-bottom:12px}

/* motion-refinement.css */
/* Integrated film: starts as an inset and opens across the experience. */
#showroom{padding-bottom:0}.film-integrated{height:165svh;width:113.636363%;margin:70px -6.8181815% 0;background:transparent}.film-integrated .film-pin{padding:55px 6vw;min-height:650px;display:block}.film-integrated .film-heading{position:relative;display:block;z-index:1;opacity:var(--film-copy-opacity,1);transform:translateY(var(--film-copy-y,0px));pointer-events:none}.film-integrated .film-heading .eyebrow{margin-bottom:22px}.film-integrated .film-heading h2{font-size:clamp(45px,6.3vw,92px);max-width:1100px;line-height:1.02}.film-integrated .film-heading>p:last-child{max-width:400px;margin:30px 0 0 auto;font-size:17px}.film-integrated .film-screen{position:absolute;left:6vw;top:var(--film-top,52%);width:var(--film-width,43%);height:var(--film-height,37%);min-height:0;max-width:none;transform:none;z-index:2;border-radius:var(--film-radius,18px);box-shadow:none}.film-orbit{position:absolute;width:70vw;height:70vw;border:2px solid #713c9730;border-radius:50%;left:-36vw;top:-12vw;transform:rotate(var(--film-orbit-turn,0deg));pointer-events:none}.film-orbit:after{content:'';position:absolute;right:10%;top:17%;width:14px;height:14px;border-radius:50%;background:#713c97;box-shadow:0 0 30px #b77fd0}.film-integrated .film-play{width:65px;height:65px}.film-integrated .film-caption{padding:24px}
/* VR is a full-viewport journey again; typography sits in negative space. */
.vr-journey{height:245svh}.vr-pin{display:block;padding:0;height:100svh;min-height:680px}.vr-visual{position:absolute;inset:0;width:100%;height:100%;max-height:none;border:0;border-radius:0;overflow:hidden}.vr-person{object-position:50% 28%;transform-origin:50% 28%}.vr-world{inset:0}.vr-world video{object-fit:cover}.vr-shade{display:block;z-index:3;background:linear-gradient(90deg,#100b18b8,transparent 55%),linear-gradient(0deg,#100b18e8,transparent 45%);pointer-events:none}.vr-copy{position:absolute;left:6%;bottom:24%;right:auto;top:auto;z-index:4;max-width:480px;min-height:0}.vr-copy h2{font-size:clamp(40px,4.5vw,69px);line-height:1.05;letter-spacing:-.05em}.vr-copy>p:last-child{max-width:370px;color:#f0e6f7;font-size:16px}.vr-copy .eyebrow{margin-bottom:22px}.vr-bottom{position:absolute;bottom:50px;left:6%;right:6%;width:auto;z-index:5;display:flex;flex-direction:row;align-items:center}.vr-motion{z-index:5}.vr-live-label{top:95px;right:6%;left:auto;bottom:auto;background:#14101995}.vr-journey[data-chapter="2"] .vr-copy{bottom:25%;max-width:410px}.vr-journey[data-chapter="2"] .vr-copy h2{font-size:clamp(38px,4vw,61px)}
/* Cards deal out, then turn over with scroll, as one continuous composition. */
.expertise-scroll{height:265svh;background:#713c97;padding:0;color:#fff;overflow:visible;position:relative}.expertise-pin{height:100svh;min-height:730px;position:sticky;top:0;overflow:hidden;padding:55px 5% 30px;perspective:1800px}.expertise-scroll .section-intro{position:relative;margin:0;display:grid;grid-template-columns:1fr .6fr;gap:15px 10%;opacity:var(--team-heading-opacity,1);transform:translateY(var(--team-heading-y,0px))}.expertise-scroll .section-intro .eyebrow{grid-column:1/-1;color:#dec9ec;margin:0}.expertise-scroll .section-intro h2{font-size:clamp(42px,5.2vw,74px);color:white;line-height:1.02;margin:0}.expertise-scroll .section-intro h2 em{color:#dfbcec}.expertise-scroll .section-intro>p:last-child{font-size:15px;color:#f1e7f8;align-self:end;max-width:290px}.expertise-scroll .expertise-deck{position:absolute;left:5%;right:5%;top:var(--team-top,42%);height:440px;padding:0;display:flex;gap:18px;perspective:1800px;align-items:stretch}.expertise-scroll article.expertise-card{flex:1;min-width:0;transform:translateX(var(--deal-x,0px)) translateY(var(--deal-y,0px)) rotate(var(--deal-rotate,0deg));transition:none;will-change:transform}.expertise-scroll .expertise-toggle{height:100%;transform-style:preserve-3d}.expertise-scroll .expertise-face{background:#713c97!important;border:2px solid #e3c9f1;color:white;padding:20px;transform:rotateY(var(--card-turn,0deg));box-shadow:0 10px 20px #33144330}.expertise-scroll .expertise-back{background:#f5f3ef;color:#21182b;padding:22px 18px;border:0;transform:rotateY(calc(var(--card-turn,0deg) + 180deg));gap:16px}.expertise-scroll .expertise-face,.expertise-scroll .expertise-back{transition:transform .12s linear;pointer-events:none}.expertise-scroll .expertise-back img{height:110px;flex-shrink:0}.expertise-scroll .expertise-back strong{font-size:24px;line-height:1.15}.expertise-scroll .expertise-back>span:not(.expertise-invite){font-size:13px;line-height:1.6}.card-mark{width:85%;height:auto;position:absolute;left:7.5%;top:45%;padding:15px 0;background:#713c97;z-index:1}.card-line-art{position:absolute;inset:15px;border:1px solid #dcc2ed;border-radius:9px;background:repeating-linear-gradient(45deg,transparent 0 22px,#dbbce72a 23px 24px)}.card-line-art:before,.card-line-art:after{content:'';position:absolute;inset:40px 15px;border:1px solid #dec7eb;transform:rotate(12deg);border-radius:40%}.card-line-art:after{transform:rotate(-12deg)}.card-corner{position:absolute;top:28px;left:28px;font:20px Syne}.card-corner.bottom{top:auto;left:auto;bottom:28px;right:28px;transform:rotate(180deg)}
/* Project entrances, image depth and rolling titles. */
.case-grid .case.arrived{animation:none}.case-grid .case{opacity:1;transform:none}.case-grid .case>a,.case-grid .case>.teaser-visual{clip-path:inset(var(--case-inset,0%) 0 0 round 18px);transform:translateY(var(--case-y,0px));will-change:clip-path,transform}.case-grid .case:nth-child(n)>a>img{transform:scale(1.075) translate(var(--image-x,0px),var(--image-y,0px));transition:transform .6s cubic-bezier(.16,.7,.2,1)}.case-grid .case>a:hover>img{transform:scale(1.11) translate(var(--image-x,0px),var(--image-y,0px))}.case-grid .case h2{line-height:1.2;font-size:clamp(27px,2.8vw,42px);position:relative;transition:padding .4s;padding-left:0}.case-grid .case:hover h2,.case-grid .case:focus-within h2{padding-left:35px}.rolling-letter{display:inline-block;height:1.2em;overflow:hidden;vertical-align:bottom}.rolling-letter>span{position:relative;display:block;transform:translateY(0);transition:transform .65s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--char)*12ms)}.rolling-letter>span>span{position:absolute;left:0;top:100%;white-space:pre}.case:hover .rolling-letter>span,.case:focus-within .rolling-letter>span{transform:translateY(-100%)}.case-title-arrow{position:absolute;left:0;top:0;opacity:0;transform:translateX(-20px);transition:transform .4s,opacity .4s}.case:hover .case-title-arrow,.case:focus-within .case-title-arrow{opacity:1;transform:none}.case-open{transition:opacity .2s,transform .2s}.case>a:hover .case-open{transform:translateY(-5px)}.teaser-case:hover .case-title-arrow{opacity:0}.teaser-case:hover h2{padding-left:0}
/* Dashboard features have equal weight, with no numbering. */
.tool-selector{flex-wrap:wrap;gap:10px}.tool-selector button{font:13px 'DM Sans';padding:12px 19px}.tool-story{align-items:center}.tool-story>div>p{line-height:1.8}.feature-preview{padding:32px 26px;min-height:340px;background:#f7f8fa;order:1}.feature-preview h4{font:25px Syne;color:#1687ad;margin:0 0 45px}.feature-preview-tiles{display:flex;gap:12px;flex-wrap:wrap}.feature-preview-tiles>span{flex:1;min-width:100px;padding:28px 12px;background:white;border:1px solid #ded6e5;border-radius:8px;font-size:14px;color:#713c97;text-align:center;box-shadow:0 6px 15px #2f18430a}.feature-preview>p{font-size:13px;margin-top:35px;color:#74617f}.tool-capture{display:flex;flex-direction:column}.tool-capture>.browser-frame{order:0}.tool-capture>img{order:1}.tool-capture>figcaption{order:2}.tool-capture>[hidden]{display:none!important}
@media(max-width:1000px) and (min-width:761px){.expertise-scroll .expertise-back img{height:80px}.expertise-scroll .expertise-back strong{font-size:19px}.expertise-scroll .expertise-back>span:not(.expertise-invite){font-size:12px}.expertise-scroll .expertise-deck{gap:10px}.expertise-scroll .expertise-back{padding:16px 12px}}
@media(max-width:760px){.film-integrated{height:auto;margin-top:35px}.film-integrated .film-pin{height:auto;min-height:0;padding:30px 6vw 55px}.film-integrated .film-heading{opacity:1;transform:none}.film-integrated .film-heading h2{font-size:38px}.film-integrated .film-heading>p:last-child{margin:24px 0;font-size:15px}.film-integrated .film-screen{position:relative;left:auto;top:auto;width:100%;height:auto;aspect-ratio:16/10;transform:none}.film-orbit{display:none}.vr-journey{height:auto}.vr-pin{height:850px;min-height:0;padding:0}.vr-visual{height:100%;min-height:0;max-height:none;position:absolute;inset:0;border-radius:0}.vr-person{object-position:50% 26%}.vr-shade{background:linear-gradient(0deg,#100b18 0%,#100b18de 26%,transparent 75%)}.vr-copy,.vr-journey[data-chapter="2"] .vr-copy{left:6%;right:6%;bottom:200px;max-width:none;min-height:0}.vr-copy h2,.vr-journey[data-chapter="2"] .vr-copy h2{font-size:36px}.vr-copy .eyebrow{font-size:9px;margin-bottom:14px}.vr-copy>p:last-child{font-size:14px;max-width:320px}.vr-bottom{bottom:35px;left:6%;right:6%;display:flex;flex-direction:column;align-items:stretch;gap:20px}.vr-live-label{top:75px;right:6%;font-size:8px}.expertise-scroll{height:auto}.expertise-pin{position:relative;height:auto;min-height:0;padding:65px 6%}.expertise-scroll .section-intro{display:block;opacity:1;transform:none}.expertise-scroll .section-intro h2{font-size:39px;margin:22px 0}.expertise-scroll .section-intro>p:last-child{max-width:none}.expertise-scroll .expertise-deck{position:relative;top:auto;left:auto;right:auto;height:auto;display:grid;grid-template-columns:1fr;margin-top:35px;gap:22px}.expertise-scroll article.expertise-card{transform:none!important;will-change:auto}.expertise-scroll .expertise-toggle{height:405px}.expertise-scroll .expertise-face{transform:rotateY(-180deg)}.expertise-scroll .expertise-back{transform:none;padding:25px}.expertise-scroll .expertise-back img{height:150px}.expertise-scroll .expertise-back>span:not(.expertise-invite){font-size:15px}.case-grid .case h2{font-size:28px}.tool-selector button{font-size:12px;padding:11px 13px}.feature-preview{min-height:290px;padding:26px 20px}.feature-preview h4{font-size:23px;margin-bottom:25px}.feature-preview-tiles>span{font-size:12px;padding:20px 10px}}
@media(prefers-reduced-motion:reduce){.film-integrated{height:auto}.film-integrated .film-pin{position:relative;height:auto;min-height:0;padding-block:50px}.film-integrated .film-heading{opacity:1;transform:none}.film-integrated .film-screen{position:relative;left:auto;top:auto;width:100%;height:auto;aspect-ratio:16/9;margin-top:30px}.film-orbit{display:none}.vr-journey{height:auto}.vr-pin{position:relative}.expertise-scroll{height:auto}.expertise-pin{position:relative;height:auto;min-height:0;padding-block:65px}.expertise-scroll .section-intro{opacity:1;transform:none}.expertise-scroll .expertise-deck{position:relative;top:auto;left:auto;right:auto;height:440px;margin-top:40px}.expertise-scroll article.expertise-card{transform:none!important}.expertise-scroll .expertise-face,.expertise-scroll .expertise-back{transition:none}.case-grid .case>a,.case-grid .case>.teaser-visual{clip-path:none;transform:none;will-change:auto}.rolling-letter>span{transition:none!important;transform:none!important}.case-grid .case>a>img{transform:none!important}.case-title-arrow{transition:none}}
@media(prefers-reduced-motion:reduce) and (max-width:760px){.expertise-scroll .expertise-deck{height:auto}}
.expertise-scroll .arrived{animation:none!important}.vr-world video{transform:scale(1.3);transform-origin:center}.expertise-scroll .expertise-card:nth-child(even) .expertise-face{border-color:#e3c9f1}
@media(min-width:761px) and (max-height:740px){.expertise-pin{min-height:650px}.expertise-scroll .expertise-deck{height:390px}.expertise-scroll .expertise-back img{height:85px}.expertise-scroll .expertise-back{gap:12px}}
.expertise-scroll{background:#0d111b}.expertise-scroll .expertise-face{background:linear-gradient(145deg,#182131,#0c1018)!important;border-color:#6d5a86;box-shadow:0 12px 28px #0009,inset 0 0 0 1px #b990d633}.expertise-scroll .expertise-back{background:#171d29;color:#f1eafa;border:1px solid #6d5a86;box-shadow:0 12px 28px #0008}.expertise-scroll .section-intro h2{color:#f5effa}.expertise-scroll .section-intro .eyebrow{color:#c9a9df}.expertise-scroll .section-intro>p:last-child{color:#c9bdcf}.card-mark{background:#101621}.card-line-art{border-color:#7f6c97;background:repeating-linear-gradient(45deg,transparent 0 22px,#a777bd20 23px 24px)}.card-line-art:before,.card-line-art:after{border-color:#8c71aa}.case-grid .case>a,.case-grid .case>.teaser-visual{transform:translate(var(--case-x,0px),var(--case-y,0px))}.skill-selector{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:34px 0 25px}.skill-selector button{min-height:74px;padding:14px 16px;border:1px solid #d8ccdf;background:transparent;color:#756482;text-align:left;font:500 14px 'DM Sans';line-height:1.35;cursor:pointer;transition:background .3s,color .3s,border-color .3s,transform .3s}.skill-selector button:hover,.skill-selector button.active{background:#713c97;color:#fff;border-color:#713c97;transform:translateY(-3px)}.tool-selector[hidden]{display:none!important}.showcase .show-image{perspective:1200px;overflow:visible}.showcase .scene-device{transition:transform .72s cubic-bezier(.18,.8,.2,1),border-radius .6s,width .6s,background .6s;transform:rotateY(var(--scene-rotate,0deg)) rotateX(var(--scene-tilt,0deg)) scale(var(--scene-scale,1));transform-style:preserve-3d;will-change:transform}.showcase .show-image.scene-swapping .scene-device{transform:rotateY(18deg) rotateX(-9deg) scale(.92) translateZ(22px)}.showcase #scene{transition:transform .72s cubic-bezier(.18,.8,.2,1),filter .55s,opacity .3s;transform-origin:center}.showcase #scene.scene-transforming{transform:scale(.76) rotate(4deg) skewX(-3deg);filter:blur(5px) saturate(1.35);opacity:.3}.showcase .show-image[data-device=building]{--scene-rotate:-2deg;--scene-tilt:1deg}.showcase .show-image[data-device=floor]{--scene-rotate:2deg;--scene-tilt:-1deg}.showcase .show-image[data-device=unit]{--scene-rotate:-3deg;--scene-tilt:2deg}
@media(max-width:900px){.skill-selector{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.skill-selector{grid-template-columns:1fr;margin-top:24px}.skill-selector button{min-height:58px}.showcase .show-image.scene-swapping .scene-device{transform:rotateY(10deg) rotateX(-5deg) scale(.96)}}
.film-integrated .film-orbit{width:46vw;height:46vw;left:-20vw;top:30%;border-width:1px;border-color:#713c9755}.film-integrated .film-orbit:after{width:18px;height:18px;right:8%;top:14%;box-shadow:0 0 0 7px #713c9720,0 0 34px #b77fd0}
.expertise-scroll .expertise-back{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto 1fr auto;align-items:start;gap:10px 18px;padding:0;overflow:hidden}.expertise-scroll .expertise-back img{grid-column:1;grid-row:1/-1;width:100%;height:100%;min-height:100%;object-fit:cover;border-radius:0}.expertise-scroll .expertise-back strong{grid-column:2;grid-row:1;padding:26px 18px 0 0;font-size:22px}.expertise-scroll .expertise-back>span:not(.expertise-invite){grid-column:2;grid-row:2;padding-right:18px;font-size:13px;line-height:1.55}.expertise-scroll .expertise-back .expertise-invite{grid-column:2;grid-row:3;padding:0 18px 24px 0;margin-top:auto;font-size:10px}
@media(max-width:1000px) and (min-width:761px){.expertise-scroll .expertise-back{grid-template-columns:1fr 1.1fr;gap:8px 10px}.expertise-scroll .expertise-back strong{font-size:18px;padding-top:18px}.expertise-scroll .expertise-back>span:not(.expertise-invite){font-size:11px}.expertise-scroll .expertise-back .expertise-invite{padding-bottom:16px}}
@media(max-width:760px){.film-integrated .film-orbit{width:120vw;height:120vw;left:-60vw;top:22%;opacity:.8}.expertise-scroll .expertise-back{display:flex;padding:0;gap:14px}.expertise-scroll .expertise-back img{width:100%;height:150px;min-height:0;border-radius:0}.expertise-scroll .expertise-back strong,.expertise-scroll .expertise-back>span:not(.expertise-invite),.expertise-scroll .expertise-back .expertise-invite{padding:0 25px}.expertise-scroll .expertise-back .expertise-invite{padding-bottom:25px}}
.expertise-scroll .expertise-face{background:linear-gradient(128deg,#eef0f7 0%,#8b8da2 16%,#f9f9ff 31%,#6d6681 48%,#f2f0fb 64%,#776c91 82%,#f8f7ff 100%)!important;border:1px solid #f8f4ff;color:#21182b;box-shadow:inset 0 0 0 2px #ffffffb8,inset 0 0 22px #ffffff8c,0 16px 28px #02030b99;clip-path:polygon(0 7%,4% 7%,4% 0,96% 0,96% 7%,100% 7%,100% 93%,96% 93%,96% 100%,4% 100%,4% 93%,0 93%)}.expertise-scroll .expertise-face:before,.expertise-scroll .expertise-face:after{content:'';position:absolute;z-index:3;left:-11px;width:22px;height:22px;border-radius:50%;background:#0d111b;box-shadow:inset 0 0 0 1px #cdb9df;top:50%;transform:translateY(-50%)}.expertise-scroll .expertise-face:after{left:auto;right:-11px}.expertise-scroll .expertise-face .card-line-art{border-color:#514a66;background:repeating-linear-gradient(45deg,transparent 0 22px,#ffffff35 23px 24px)}.expertise-scroll .expertise-face .card-line-art:before,.expertise-scroll .expertise-face .card-line-art:after{border-color:#625778}.expertise-scroll .expertise-face .card-corner{color:#33283f}.expertise-scroll .expertise-face .card-corner.bottom{color:#33283f}.expertise-scroll .expertise-face .card-mark{background:linear-gradient(90deg,#17121f,#443058,#17121f);box-shadow:0 0 0 1px #ffffff8c,0 8px 18px #22172b33}.expertise-scroll .expertise-back{clip-path:polygon(0 7%,4% 7%,4% 0,96% 0,96% 7%,100% 7%,100% 93%,96% 93%,96% 100%,4% 100%,4% 93%,0 93%);box-shadow:inset 0 0 0 1px #ffffff25,0 16px 28px #02030b99}.expertise-scroll .expertise-back:before,.expertise-scroll .expertise-back:after{content:'';position:absolute;z-index:3;left:-11px;width:22px;height:22px;border-radius:50%;background:#0d111b;box-shadow:inset 0 0 0 1px #8e719e;top:50%;transform:translateY(-50%)}.expertise-scroll .expertise-back:after{left:auto;right:-11px}.expertise-scroll .expertise-back img{position:relative;z-index:1}.expertise-scroll .expertise-back strong,.expertise-scroll .expertise-back>span{position:relative;z-index:2}

/* Contain project entrance motion without creating sideways page scroll. */
#coleccion{overflow-x:clip}

#proyectos{overflow-x:clip}

/* One continuous device morph, with a crossfade between preloaded captures. */
.showcase .show-image[data-device] .scene-device{
 transform:none;transform-style:flat;
 transition:padding .52s cubic-bezier(.22,.61,.36,1),border-radius .52s cubic-bezier(.22,.61,.36,1);
}
.showcase .show-image[data-device] .scene-device img{
 transform:none;filter:none;transition:border-radius .52s;backface-visibility:hidden;
}
.showcase .show-image[data-device] .scene-device:before{transition:width .52s,height .52s,left .52s,top .52s,border-radius .52s}
.showcase .show-image[data-device] .scene-device:after{
 display:block;width:30%;height:45px;left:35%;right:auto;top:auto;bottom:-45px;
 border-radius:0;clip-path:polygon(32% 0,68% 0,73% 86%,100% 94%,100% 100%,0 100%,0 94%,27% 86%);
 background:linear-gradient(90deg,#9a91a5,#d0c9d6,#9a91a5);transform-origin:top;
 transition:opacity .4s,transform .52s;opacity:0;transform:scaleY(.7);
}
.showcase .show-image[data-device=building] .scene-device:after{opacity:1;transform:scaleY(1)}
body.paused .showcase .show-image[data-device] .scene-device,
body.paused .showcase .show-image[data-device] .scene-device *{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){
 .showcase .show-image[data-device] .scene-device,
 .showcase .show-image[data-device] .scene-device img,
 .showcase .show-image[data-device] .scene-device:before,
 .showcase .show-image[data-device] .scene-device:after{transition:none}
}

/* Mobile VR keeps the same scroll-led reveal as desktop, with room for its copy. */
@media(max-width:760px){
 .vr-journey{height:230svh!important;overflow:clip}
 .vr-pin{position:sticky!important;top:0;height:100svh!important;min-height:680px!important;overflow:hidden}
 .vr-visual{position:absolute;inset:0;width:100%;height:100%;max-height:none;overflow:hidden}
 .vr-person{object-fit:cover;object-position:50% 28%;transform-origin:50% 28%}
 .vr-world{position:absolute;inset:0;overflow:hidden}
 .vr-world video{width:100%;height:100%;object-fit:cover;transform:scale(1.12);transform-origin:50% 45%}
 .vr-shade{background:linear-gradient(180deg,#100b1866 0%,transparent 30%,#100b1840 52%,#100b18ef 75%,#100b18 100%)}
 .vr-copy,.vr-journey[data-chapter="2"] .vr-copy{
  left:6%;right:6%;width:auto;max-width:none;bottom:26%;top:auto;min-height:0;
  transform:none;opacity:1
 }
 .vr-copy h2,.vr-journey[data-chapter="2"] .vr-copy h2{
  max-width:100%;font-size:clamp(31px,8.4vw,37px);line-height:1.04;letter-spacing:-.045em;
  overflow-wrap:normal;word-break:normal
 }
 .vr-copy>p:last-child{max-width:100%;font-size:14px;line-height:1.5}
 .vr-copy .eyebrow{font-size:9px;margin-bottom:12px}
 .vr-bottom{left:6%;right:6%;bottom:calc(16px + env(safe-area-inset-bottom));width:auto;display:flex;flex-direction:column;align-items:stretch;gap:10px;padding-top:12px}
 .vr-steps{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;width:100%}
 .vr-steps button{flex:1;min-width:0;padding:6px 0;font-size:10px;line-height:1.25}
 .vr-steps button span{font-size:10px;line-height:1.25;margin-top:6px}
 .vr-bottom>a{max-width:none;font-size:11px;padding-bottom:3px}
 .vr-motion{top:16px;right:6%;z-index:6;padding:9px 13px;font-size:10px}
 .vr-live-label{top:58px;right:6%;left:auto;font-size:8px}
}
@media(max-width:380px){
 .vr-copy,.vr-journey[data-chapter="2"] .vr-copy{bottom:28%}
 .vr-copy h2,.vr-journey[data-chapter="2"] .vr-copy h2{font-size:30px}
 .vr-steps{gap:5px}.vr-steps button,.vr-steps button span{font-size:9px}
}
@media(max-width:760px) and (prefers-reduced-motion:reduce){
 .vr-journey{height:auto!important;overflow:visible}
 .vr-pin{position:relative!important;top:auto;height:850px!important;min-height:0!important}
}

/* project-pages.css */
/* Project families: shared navigation and dedicated editorial landings. */
#nav .showroom-menu{position:relative;border:0;padding:0;margin:0;line-height:1.6}
#nav .showroom-menu summary{list-style:none;display:flex;gap:9px;align-items:center;padding:10px 0;font:inherit;cursor:pointer}
#nav .showroom-menu summary::-webkit-details-marker{display:none}
#nav .showroom-submenu{position:absolute;top:100%;left:-20px;width:215px;padding:12px;background:#201726;border:1px solid #685373;border-radius:10px;box-shadow:0 15px 35px #0003;z-index:50}
#nav .showroom-submenu a{display:flex;justify-content:space-between;padding:12px;border-radius:5px}
#nav .showroom-submenu a:hover,#nav .showroom-submenu a[aria-current]{background:#ffffff12;color:#dfbdf5}
#nav .showroom-menu[open] summary{color:#ceace6}
.whatsapp-dock.sticky-contact{background:none;border:0;box-shadow:none;backdrop-filter:none;gap:10px}
.whatsapp-dock .whatsapp-float{display:grid;place-items:center;width:58px;height:58px;padding:14px;background:#168b50;border:1px solid #ffffff75;border-radius:50%;box-shadow:0 5px 22px #0003;color:white;transition:transform .2s,background .2s}
.whatsapp-float svg{width:100%;height:100%}.whatsapp-dock .whatsapp-float:hover{transform:translateY(-3px);background:#107b43}
.whatsapp-dock.sticky-contact button{background:#211529e8;width:38px;height:38px;border:1px solid #b291c250}
body:has(.vr-journey.is-in-view) .whatsapp-dock{visibility:visible;pointer-events:auto}
/* A compact sticky stage; no extra full-screen tail after the final card. */
#proyectos .project-scroll{margin-right:0}
#proyectos .project-pin{height:auto;min-height:0;top:24px;padding:0 0 8px;justify-content:flex-start}
#proyectos .project-toolbar{margin-right:0}
#proyectos .projects{padding-right:0}
#proyectos .project,#proyectos .project:nth-child(even){height:clamp(340px,55svh,550px);padding-top:0}
#proyectos .project img{object-position:center;filter:none}
#proyectos .clients{margin-top:32px!important;padding-top:28px}
#proyectos .project-pin>.clients{width:100%;flex-shrink:0;padding-bottom:8px}
.paused #proyectos .project-pin{top:0}
.category-hero{position:relative;min-height:650px;min-height:min(780px,90svh);display:flex;align-items:end;background:#141019;color:#fff;isolation:isolate;padding:100px 6% 85px;overflow:hidden}
.category-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;animation:category-enter 1.2s ease both}
.verticales .category-hero>img{object-position:center 55%}.horizontales .category-hero>img{object-position:center 48%}
.category-hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#100b18d9,#100b1840),linear-gradient(0deg,#100b18b0,transparent 65%)}
.category-hero-copy{max-width:1080px}.category-hero h1{font-size:clamp(44px,6vw,92px);line-height:1.04}.category-hero em{color:#dab6ed}.category-hero p:not(.eyebrow){max-width:530px;font-size:16px;color:#eee5f4;margin:28px 0}.category-hero .eyebrow{color:#e4c7f5}.category-credit{position:absolute;bottom:22px;right:6%;font-size:9px;letter-spacing:.14em}
.category-switch{display:flex;gap:35px;padding:22px 6%;border-bottom:1px solid #d8ccdf;background:var(--paper)}.category-switch a{font-size:14px;padding:8px 0;border-bottom:2px solid transparent}.category-switch a[aria-current]{color:var(--purple);border-color:var(--purple)}
.category-story .section-head{display:grid;grid-template-columns:1.4fr 1fr;column-gap:8%;align-items:end}.category-story .section-head .eyebrow{grid-column:1/-1}.category-story .section-head>p:last-child{margin-bottom:0}.category-story h2{font-size:clamp(35px,4.3vw,65px)}
.category-story-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:7%;align-items:center}.category-options{display:flex;flex-direction:column;gap:0;margin-bottom:32px}.category-options button{display:flex;justify-content:space-between;gap:12px;text-align:left;border:0;border-bottom:1px solid #d4c5dd;background:transparent;padding:20px 12px;font-size:16px;color:#756482;min-height:56px}.category-options button[aria-pressed=true]{background:#eae1ef;color:#713c97;border-left:3px solid #713c97}.category-options button:hover{color:#713c97}
#category-panel h3{font-size:30px}#category-panel p{color:#756482;font-size:15px;line-height:1.8}.category-story-layout figure{margin:0}.category-story-layout figure img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;background:#eae1ef}.category-story-layout figcaption{font-size:11px;color:#756482;margin-top:14px}.category-story-layout figure.scene-changed img{animation:category-enter .5s ease}
.project-category .collection{padding-top:35px}.project-category .collection-bar{align-items:center}.project-category .collection-bar>p:last-child{color:#756482;font-size:14px}.project-category .case h2{line-height:1.15}.category-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:30px}
.category-gateways{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:0 6% 85px}.category-gateways>a{position:relative;min-height:550px;overflow:hidden;border-radius:8px;color:white;display:flex;align-items:end;isolation:isolate}.category-gateways img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .8s}.category-gateways a:hover img{transform:scale(1.04)}.category-gateways a:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#141019ee,transparent 85%);z-index:-1}.category-gateways a>div{padding:38px}.category-gateways h2{font-size:clamp(35px,3.5vw,55px)}.category-gateways p:last-child{color:#ddd0e5;font-size:15px}.category-gateways .eyebrow{font-size:10px}
@keyframes category-enter{from{opacity:.6;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}
@media(max-width:1000px){#nav .showroom-submenu{position:static;width:100%;box-shadow:none;border:0;border-left:1px solid #8d699f;border-radius:0;margin:8px 0;padding:0 10px}#nav .showroom-menu summary{min-height:44px}header nav.open{z-index:60}#nav .showroom-menu{width:100%}.category-story .section-head{display:block}}
@media(max-width:760px){.whatsapp-dock .whatsapp-float{width:52px;height:52px;padding:13px}.whatsapp-dock.sticky-contact{bottom:calc(12px + env(safe-area-inset-bottom));right:14px}.category-hero{min-height:610px;padding:75px 6% 80px}.category-hero h1{font-size:clamp(39px,10vw,60px)}.category-hero p:not(.eyebrow){font-size:15px}.category-credit{font-size:8px;left:6%;right:6%}.category-switch{gap:28px}.category-story-layout{grid-template-columns:1fr;gap:25px}.category-options button{padding:17px 12px}.category-story .section-head{margin-bottom:30px}.category-story-layout figure{grid-row:1}.category-story-layout figure img{aspect-ratio:4/3}.category-story h2{font-size:36px}.category-gateways{grid-template-columns:1fr}.category-gateways>a{min-height:440px}.category-gateways a>div{padding:27px}.category-actions{align-items:start;flex-direction:column;gap:14px}#proyectos .project-pin{position:relative;top:auto}#proyectos .project-scroll{height:auto!important}#proyectos .projects{scroll-snap-type:x mandatory}#proyectos .project{scroll-snap-align:start}#proyectos .project,#proyectos .project:nth-child(even){height:420px;max-height:65svh}.project-category .collection-bar{align-items:start;flex-direction:column}.project-category .case-grid{gap:40px}}
@media(prefers-reduced-motion:reduce){.category-hero>img,.category-story-layout figure.scene-changed img{animation:none}.category-gateways img,.whatsapp-float{transition:none}}

/* El showroom es la puerta de entrada a las dos familias de proyectos. */
.showroom-types{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 30px;align-items:start}
.showroom-types .showroom-types-heading{grid-column:1/-1;max-width:820px}
.showroom-types-heading h2{font-size:clamp(38px,4.6vw,68px)}
.showroom-types-heading>p:last-child{color:#c8bbd1;max-width:650px;margin-top:20px}
.showroom-types article{display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid #ffffff38;padding-top:18px}
.showroom-types .showroom-type-image{position:relative;display:block;height:clamp(250px,32vw,420px);overflow:hidden;border-radius:7px;isolation:isolate}
.showroom-types .showroom-type-image:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(0deg,#17121eee,transparent);z-index:0}
.showroom-types .showroom-type-image img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1)}
.showroom-types .showroom-type-image:hover img{transform:scale(1.045)}
.showroom-types .showroom-type-image span{position:absolute;z-index:1;bottom:20px;left:23px;padding:9px 14px;border:1px solid #ffffff70;border-radius:30px;background:#1410197a;color:white;font-size:12px;backdrop-filter:blur(8px)}
.showroom-types article>div{padding:24px 2px 4px}
.showroom-types article>div .eyebrow{color:#cba4e1;margin-bottom:13px}
.showroom-types article h3{font-size:clamp(26px,2.6vw,38px);color:white}
.showroom-types article p:not(.eyebrow){color:#c8bbd1;font-size:14px;max-width:520px;margin:14px 0}
.showroom-types article .text-link{color:#f4eafb;border-color:#ffffff58}
.category-includes{padding:80px 6%;display:grid;grid-template-columns:.85fr 1.15fr;gap:6%;align-items:start;background:#ece7ef}
.category-includes-heading h2{font-size:clamp(36px,4.3vw,62px)}
.category-includes-heading>p:last-child{color:#74677e;font-size:14px;margin-top:24px;max-width:420px}
.includes-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;border-top:1px solid #cfc2d6}
.includes-grid article{padding:24px 0 22px;border-bottom:1px solid #cfc2d6;transition:transform .3s ease,color .3s ease}
.includes-grid article:hover{transform:translateX(5px);color:var(--purple)}
.includes-grid article>span{font-size:9px;letter-spacing:.15em;color:#8754a1}
.includes-grid h3{font-size:22px;margin:12px 0 9px}
.includes-grid p{font-size:13px;color:#756982;line-height:1.7;margin:0}
@media(max-width:760px){.showroom-types{grid-template-columns:1fr;gap:32px}.showroom-types .showroom-types-heading{grid-column:auto}.showroom-types .showroom-type-image{height:300px}.category-includes{grid-template-columns:1fr;gap:30px;padding:58px 6%}.includes-grid{grid-template-columns:1fr}.includes-grid article:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.showroom-types .showroom-type-image img,.includes-grid article{transition:none}}

/* Each showroom family explains Rvisioon's deliverables before showing the portfolio. */
.category-includes{grid-template-columns:.72fr 1.28fr;gap:7%;padding:clamp(62px,8vw,112px) 6%}
.category-includes-heading{max-width:530px;position:sticky;top:36px}
.category-includes-heading>p:last-child{line-height:1.8}
.category-includes-heading .includes-context{font-size:12px;color:#8a7892;margin-top:18px;padding-left:15px;border-left:2px solid #9762b2}
.includes-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:34px}
.includes-grid article{padding:25px 0 28px}
.includes-grid article>span{line-height:1.5}
.includes-grid h3{font-size:21px;line-height:1.25}
.includes-grid p{font-size:13px;line-height:1.8;max-width:420px}
.includes-dashboard{display:grid;grid-template-columns:1fr 1.15fr auto;gap:40px;align-items:center;padding:44px 6%;background:#21172a;color:#fff}
.includes-dashboard .eyebrow{color:#d0a7e5;font-size:10px;letter-spacing:.15em}
.includes-dashboard h2{font-size:clamp(26px,3vw,40px);line-height:1.18;margin:12px 0 0}
.includes-dashboard h2 em{color:#d6a9ed}
.includes-dashboard>p{margin:0;color:#ded4e4;font-size:13px;line-height:1.8;max-width:580px}
.includes-dashboard .text-link{white-space:nowrap;color:#fff;border-color:#ffffff66}
#funcionalidades.showroom-features{background:#f4f1f6;padding-top:clamp(64px,8vw,108px);padding-bottom:clamp(64px,8vw,108px)}
.showroom-features .section-intro{max-width:890px;margin-bottom:42px}
.showroom-features .section-intro h2{font-size:clamp(36px,4.4vw,64px);line-height:1.12}
.showroom-features .section-intro>p:last-child{max-width:690px;color:#756982}
.showroom-features .depth-layout{grid-template-columns:.8fr 1.4fr;gap:5%;align-items:center}
.showroom-features .depth-menu button{gap:12px;padding:20px 14px;min-height:70px}
.showroom-features .depth-menu button strong{font:500 10px 'DM Sans';letter-spacing:.1em;color:#997da6}
.showroom-features .depth-menu button i{font-style:normal;color:#9674a7}
.showroom-features .depth-view{box-shadow:0 18px 55px #2a18340d}
.showroom-features .depth-view>img{aspect-ratio:16/9;object-fit:cover}
.showroom-features .depth-view figcaption{padding:clamp(22px,3vw,34px)}
.showroom-features .depth-view h3{font-size:clamp(25px,2.4vw,34px);line-height:1.2}
.showroom-features .depth-view figcaption>p:not(.feature-tags){color:#716579;font-size:14px;line-height:1.75}
.showroom-features .feature-tags{margin:20px 0 0;padding-top:15px;border-top:1px solid #d7cbdc;color:#713c97;font-size:11px;letter-spacing:.04em}
.showroom-features .depth-view.feature-switched>img{animation:category-enter .5s ease}
@media(max-width:1000px){.showroom-features .depth-layout{grid-template-columns:.9fr 1.1fr;gap:4%}.showroom-features .depth-menu button{padding:16px 10px}.showroom-features .depth-menu button span{font-size:17px}}
@media(max-width:760px){.showroom-features .depth-layout{grid-template-columns:1fr;gap:24px}.showroom-features .depth-menu{grid-template-columns:1fr 1fr;margin:0}.showroom-features .depth-menu button{padding:13px 10px;min-height:74px;gap:8px}.showroom-features .depth-menu button span{font-size:15px}.showroom-features .depth-menu button strong{font-size:9px}.showroom-features .depth-view>img{aspect-ratio:4/3}.showroom-features .depth-view figcaption{padding:22px}.showroom-features .section-intro{margin-bottom:28px}}
@media(prefers-reduced-motion:reduce){.showroom-features .depth-view.feature-switched>img{animation:none}}
#nav .showroom-menu summary span{font-size:11px;color:#c7adce;transition:transform .2s}
#nav .showroom-menu[open] summary span{transform:rotate(180deg)}
@media(max-width:1000px){#nav .showroom-submenu{position:static;width:100%;box-shadow:none;border:0;border-left:1px solid #8d699f;border-radius:0;margin:8px 0;padding:0 10px}.includes-dashboard{grid-template-columns:1fr 1.2fr}.includes-dashboard .text-link{grid-column:1/-1;justify-self:start}}
@media(max-width:760px){.category-includes{grid-template-columns:1fr;gap:28px}.category-includes-heading{position:static}.includes-grid{grid-template-columns:1fr}.includes-dashboard{grid-template-columns:1fr;gap:18px}.includes-dashboard .text-link{grid-column:auto}.category-switch{justify-content:space-between;gap:12px}.category-switch a{font-size:12px}}

/* Home portfolio cards use a consistent vertical 9:16 frame. */
#proyectos .projects .project,
#proyectos .projects .project:nth-child(even){
  flex:0 0 clamp(240px,23vw,330px);
  width:clamp(240px,23vw,330px);
  height:auto!important;
  min-height:0;
  max-height:none;
  aspect-ratio:9/16;
  padding-top:0;
}
#proyectos .projects .project img{display:block;width:100%;height:100%!important;object-fit:cover;object-position:center}

/* Keep the horizontal-showroom feature visual balanced on large screens. */
.showroom-features .depth-layout{grid-template-columns:minmax(270px,.82fr) minmax(0,1.18fr);gap:clamp(28px,4vw,58px);max-width:1280px;margin-inline:auto}
.showroom-features .depth-view{max-width:780px;width:100%;justify-self:end}
.showroom-features .depth-view>img{display:block;width:100%;height:clamp(260px,34vw,430px);aspect-ratio:auto;object-fit:cover}
@media(max-width:760px){
  #proyectos .projects .project,
  #proyectos .projects .project:nth-child(even){flex:0 0 min(76vw,330px);width:min(76vw,330px);height:auto!important;aspect-ratio:9/16;max-height:none}
  .showroom-features .depth-view{max-width:none}
  .showroom-features .depth-view>img{height:auto;aspect-ratio:4/3}
}

/* The showroom explains one capability at a time; the real tour stays one click away. */
.showroom-features .section-intro{max-width:760px;margin-bottom:26px}
.showroom-features .section-intro h2{max-width:740px;font-size:clamp(34px,4vw,58px)}
.showroom-features .section-intro>p:last-child{max-width:530px;font-size:14px;line-height:1.65}
.showroom-features .depth-menu button{min-height:62px;padding:15px 13px}
.showroom-features .depth-menu button span{font-size:16px}
.showroom-features .depth-view h3{font-size:clamp(23px,2.2vw,30px)}
.showroom-features .depth-view figcaption>p:not(.feature-tags){max-width:56ch;font-size:13px;line-height:1.65}
.showroom-features .feature-tags{margin-top:15px}
.showroom-demo{display:grid;grid-template-columns:minmax(300px,.68fr) minmax(0,1.32fr);gap:clamp(30px,5vw,72px);align-items:center;padding:clamp(52px,7vw,96px) 6%;background:#19131f;color:#fff}
.showroom-demo-copy{max-width:430px}
.showroom-demo-copy .eyebrow{color:#d6b2ea;font-size:10px;letter-spacing:.16em}
.showroom-demo-copy h2{font-size:clamp(32px,3.6vw,48px);line-height:1.08;margin:17px 0}
.showroom-demo-copy>p:not(.eyebrow){max-width:33ch;color:#d6cdda;font-size:14px;line-height:1.7}
.showroom-demo-direct{display:inline-block;margin-top:18px;padding-bottom:7px;border-bottom:1px solid #cfafe0;color:#fff;font-size:13px}
.showroom-demo-hint{margin-top:18px!important;color:#a99caf!important;font-size:11px!important;line-height:1.55!important}
.showroom-demo-stage{position:relative;min-width:0;overflow:hidden;border:1px solid #ffffff38;border-radius:9px;background:#0b0910;box-shadow:0 22px 65px #0004;aspect-ratio:16/9}
.showroom-demo-poster{position:absolute;inset:0;isolation:isolate}
.showroom-demo-poster[hidden]{display:none!important}
.showroom-demo-poster>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.showroom-demo-poster:hover>img{transform:scale(1.025)}
.showroom-demo-poster:after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(0deg,#100b18e8,transparent);z-index:0}
.showroom-demo-overlay{position:absolute;z-index:1;inset:auto 25px 22px;display:flex;align-items:end;justify-content:space-between;gap:20px}
.showroom-demo-overlay>span{font-size:clamp(16px,2vw,24px);font-family:Syne,sans-serif}
.showroom-demo-load{border:1px solid #ffffff80;border-radius:40px;padding:13px 18px;background:#201628cc;color:#fff;font:500 12px 'DM Sans',sans-serif;cursor:pointer;backdrop-filter:blur(10px);transition:background .2s,transform .2s}
.showroom-demo-load:hover{background:#74399b;transform:translateY(-2px)}
.showroom-demo-stage iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0;background:#09070d}
.showroom-demo-stage iframe[hidden]{display:none!important}
@media(max-width:760px){.showroom-demo{grid-template-columns:1fr;gap:24px;padding:58px 6%}.showroom-demo-copy{max-width:560px}.showroom-demo-copy h2{font-size:38px;margin:12px 0}.showroom-demo-copy>p:not(.eyebrow){font-size:13px}.showroom-demo-hint{margin-top:13px!important}.showroom-demo-stage{aspect-ratio:4/3}.showroom-demo-overlay{inset:auto 14px 14px;align-items:start;flex-direction:column;gap:12px}.showroom-demo-load{padding:11px 15px}}
@media(prefers-reduced-motion:reduce){.showroom-demo-poster>img,.showroom-demo-load{transition:none}}

/* The showroom explains one capability at a time, then opens the real experience. */
.showroom-features .section-intro{max-width:760px;margin-bottom:26px}
.showroom-features .section-intro h2{max-width:740px;font-size:clamp(34px,4vw,58px)}
.showroom-features .section-intro>p:last-child{max-width:530px;font-size:14px;line-height:1.65}
.showroom-features .depth-menu button{min-height:62px;padding:15px 13px}
.showroom-features .depth-menu button span{font-size:16px}
.showroom-features .depth-view h3{font-size:clamp(23px,2.2vw,30px)}
.showroom-features .depth-view figcaption>p:not(.feature-tags){max-width:56ch;font-size:13px;line-height:1.65}
.showroom-features .feature-tags{margin-top:15px}
.showroom-demo{display:grid;grid-template-columns:minmax(300px,.68fr) minmax(0,1.32fr);gap:clamp(30px,5vw,72px);align-items:center;padding:clamp(52px,7vw,96px) 6%;background:#19131f;color:#fff}
.showroom-demo-copy{max-width:430px}
.showroom-demo-copy .eyebrow{color:#d6b2ea;font-size:10px;letter-spacing:.16em}
.showroom-demo-copy h2{font-size:clamp(32px,3.6vw,48px);line-height:1.08;margin:17px 0}
.showroom-demo-copy>p:not(.eyebrow){max-width:33ch;color:#d6cdda;font-size:14px;line-height:1.7}
.showroom-demo-hint{margin-top:16px!important;color:#a99caf!important;font-size:11px!important;line-height:1.55!important}
.showroom-demo-stage{position:relative;display:block;min-width:0;overflow:hidden;border:1px solid #ffffff38;border-radius:9px;background:#0b0910;box-shadow:0 22px 65px #0004;aspect-ratio:16/9;color:#fff;isolation:isolate}
.showroom-demo-stage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s ease}
.showroom-demo-stage:hover>img{transform:scale(1.025)}
.showroom-demo-stage:after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(0deg,#100b18e8,transparent);z-index:0}
.showroom-demo-overlay{position:absolute;z-index:1;inset:auto 25px 22px;display:flex;align-items:end;justify-content:space-between;gap:20px}
.showroom-demo-overlay>span:first-child{font-size:clamp(16px,2vw,24px);font-family:Syne,sans-serif}
.showroom-demo-link{border:1px solid #ffffff80;border-radius:40px;padding:13px 18px;background:#201628cc;color:#fff;font:500 12px 'DM Sans',sans-serif;backdrop-filter:blur(10px);transition:background .2s,transform .2s}
.showroom-demo-stage:hover .showroom-demo-link{background:#74399b;transform:translateY(-2px)}
@media(max-width:760px){.showroom-demo{grid-template-columns:1fr;gap:24px;padding:58px 6%}.showroom-demo-copy{max-width:560px}.showroom-demo-copy h2{font-size:38px;margin:12px 0}.showroom-demo-copy>p:not(.eyebrow){font-size:13px}.showroom-demo-hint{margin-top:13px!important}.showroom-demo-stage{aspect-ratio:4/3}.showroom-demo-overlay{inset:auto 14px 14px;align-items:start;flex-direction:column;gap:12px}.showroom-demo-link{padding:11px 15px}}
@media(prefers-reduced-motion:reduce){.showroom-demo-stage>img,.showroom-demo-link{transition:none}}.showroom-demo{background:#1a1420;color:#fff}
.showroom-demo-stage{aspect-ratio:16/9}
.showroom-demo-poster{position:absolute;inset:0;isolation:isolate;overflow:hidden}
.showroom-demo-poster[hidden]{display:none!important}
.showroom-demo-poster>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .75s ease}
.showroom-demo-poster:after{content:'';position:absolute;inset:32% 0 0;z-index:0;background:linear-gradient(0deg,#100b18e8,transparent)}
.showroom-demo-poster:hover>img{transform:scale(1.025)}
.showroom-demo-overlay{position:absolute;z-index:1;inset:auto 24px 22px;display:flex;align-items:end;justify-content:space-between;gap:18px}
.showroom-demo-overlay>span:first-child{font:500 clamp(18px,2vw,25px) Syne,sans-serif}
.showroom-demo-load{border:1px solid #ffffff80;border-radius:40px;padding:13px 18px;background:#201628d9;color:#fff;font:500 12px 'DM Sans',sans-serif;cursor:pointer;backdrop-filter:blur(10px);transition:background .2s,transform .2s}
.showroom-demo-load:hover{background:#74399b;transform:translateY(-2px)}
.showroom-demo-stage iframe{position:absolute;inset:0;display:block;width:100%;height:100%;border:0;background:#09070d}
.showroom-demo-stage iframe[hidden]{display:none!important}
.category-includes{display:grid;grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);gap:clamp(34px,7vw,100px);padding:clamp(64px,8vw,112px) 6%;background:#f4f1f6;color:#211b27}
.category-includes-heading{max-width:520px;align-self:start;position:sticky;top:32px}
.category-includes-heading .eyebrow{color:#75409a;font-size:10px;letter-spacing:.16em}
.category-includes-heading h2{font:500 clamp(34px,4vw,56px)/1.1 Syne,sans-serif;letter-spacing:-.04em;margin:15px 0 20px}
.category-includes-heading>p:not(.eyebrow){font-size:14px;line-height:1.8;color:#74677e}
.category-includes-heading .includes-context{font-size:12px;color:#7d6e86;margin-top:20px;padding-left:14px;border-left:2px solid #9460ae}
.includes-grid{display:grid;grid-template-columns:1fr 1fr;align-self:center;column-gap:clamp(18px,3vw,42px);border-top:1px solid #d8cddd}
.include-detail{border-bottom:1px solid #d8cddd;padding:0;transition:color .2s}
.include-detail summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:30px 1fr 18px;align-items:center;gap:12px;padding:21px 2px;min-height:76px}
.include-detail summary::-webkit-details-marker{display:none}
.include-detail summary>span{font-size:9px;letter-spacing:.13em;color:#9a75ab}
.include-detail summary>strong{font:500 17px/1.35 Syne,sans-serif}
.include-detail summary>i{font-style:normal;color:#774399;font-size:18px;transition:transform .25s}
.include-detail[open] summary>i{transform:rotate(45deg)}
.include-detail[open] summary>strong,.include-detail summary:hover>strong{color:#74399b}
.include-detail-body{padding:0 28px 22px 44px;animation:include-reveal .28s ease both}
.include-detail-body p{font-size:13px;line-height:1.75;color:#74677e;margin:0}
.include-detail-body .include-tags{padding-top:13px;margin-top:13px;border-top:1px solid #dfd5e4;font-size:10px;letter-spacing:.04em;color:#75409a}
@keyframes include-reveal{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.showroom-demo{grid-template-columns:1fr;gap:24px;padding:58px 6%}.showroom-demo-copy{max-width:560px}.showroom-demo-stage{aspect-ratio:4/3}.showroom-demo-overlay{inset:auto 14px 14px;align-items:flex-start;flex-direction:column;gap:12px}.showroom-demo-load{padding:11px 15px}.category-includes{grid-template-columns:1fr;gap:26px;padding:58px 6%}.category-includes-heading{position:static}.includes-grid{grid-template-columns:1fr}.include-detail summary{padding:18px 2px;min-height:68px}.include-detail-body{padding:0 14px 20px 42px}}
@media(prefers-reduced-motion:reduce){.showroom-demo-poster>img,.showroom-demo-load,.include-detail summary>i{transition:none}.include-detail-body{animation:none}}
.showroom-feature-view{overflow:hidden}
.showroom-feature-view>img{transform-origin:center;transition:transform .55s cubic-bezier(.2,.75,.2,1),object-position .55s ease}
@media(prefers-reduced-motion:reduce){.showroom-feature-view>img{transition:none}}
.showroom-demo-status{position:absolute;z-index:2;inset:auto 24px 72px;color:#fff;font:500 12px/1.5 'DM Sans',sans-serif;text-shadow:0 1px 8px #000;background:#160f20bf;padding:8px 12px;border-radius:5px;max-width:420px}
.showroom-demo-status[hidden]{display:none!important}
.showroom-demo-load:disabled{opacity:.8;cursor:wait}
@media(max-width:760px){.showroom-demo-status{inset:auto 14px 63px;font-size:11px;max-width:calc(100% - 28px)}}
.showroom-demo-stage iframe{z-index:1}
.showroom-demo-poster{z-index:2}
/* Compact showroom pages and visual deliverables studio. */
.project-category #funcionalidades.showroom-features{padding:48px 6%;min-height:0}
.project-category .showroom-demo{padding:44px 6%;min-height:0}
.project-category .showroom-features .section-intro{margin:0 0 24px;max-width:900px}
.project-category .showroom-features .section-intro h2{font-size:clamp(30px,3.5vw,48px);margin:12px 0}
.project-category .showroom-features .depth-layout{align-items:start;gap:32px}
.project-category .showroom-features .depth-view{margin:0;width:100%;min-height:0}
.project-category .showroom-features .depth-view>img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#e9e3ec;transform:none!important}
.project-category .showroom-features .depth-view figcaption{padding:18px 22px}
.project-category .showroom-features .depth-view h3{margin:0 0 8px;font-size:26px}
.project-category .showroom-features .depth-view figcaption p{margin:0}
.project-category .showroom-features .depth-view .feature-tags{margin-top:12px}
.showroom-studio{padding:48px 6%;background:#17131e;color:#f8f4fa}
.studio-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:30px}
.studio-heading .eyebrow{color:#cfafe5;font-size:10px;letter-spacing:.17em;margin:0 0 12px}
.studio-heading h2{font:500 clamp(32px,3.6vw,50px)/1.08 Syne,sans-serif;letter-spacing:-.04em;margin:0}
.studio-heading h2 em{color:#c89ce1;font-style:normal}
.studio-heading>p{max-width:350px;font-size:14px;line-height:1.7;color:#bdb3c5;margin:0}
.studio-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid #ffffff26;margin-bottom:26px}
.studio-tabs button{display:flex;align-items:center;gap:14px;border:0;border-bottom:2px solid transparent;background:none;color:#b6a9c1;padding:19px 16px;text-align:left;font:500 19px Syne,sans-serif;cursor:pointer;transition:background .25s,color .25s}
.studio-tabs button span{font:11px 'DM Sans',sans-serif;color:#b290c5}
.studio-tabs button i{margin-left:auto;font-style:normal}
.studio-tabs button[aria-selected=true]{color:#fff;border-bottom-color:#c896e8;background:linear-gradient(110deg,#a264c227,transparent)}
.studio-tabs button:hover{color:#fff;background:#ffffff08}
.studio-panel{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:34px;align-items:center;animation:include-reveal .35s ease}
.studio-panel[hidden]{display:none}
.studio-panel figure{margin:0;min-width:0;border:1px solid #ffffff20;border-radius:8px;overflow:hidden;background:#211b2b}
.studio-panel img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.studio-panel figcaption{padding:11px 15px;font-size:9px;letter-spacing:.13em;color:#bba9c6}
.studio-story h3{font:500 clamp(23px,2.5vw,34px)/1.15 Syne,sans-serif;letter-spacing:-.025em;margin:0 0 18px}
.studio-story article{border-top:1px solid #ffffff21;padding:12px 0}
.studio-story h4{font:500 15px 'DM Sans',sans-serif;color:#dfc4ed;margin:0 0 6px}
.studio-story article p{font-size:13px;line-height:1.65;color:#c0b6c8;margin:0;max-width:52ch}
.studio-note{display:block;font-size:10px;color:#9d8fa8;margin-top:10px}
@media(max-width:760px){
.project-category #funcionalidades.showroom-features,.project-category .showroom-demo,.showroom-studio{padding:34px 6%}
.project-category .showroom-features .depth-layout{grid-template-columns:1fr;gap:18px}
.project-category .showroom-features .depth-menu{grid-template-columns:1fr 1fr}
.project-category .showroom-features .depth-menu button{min-height:58px}
.project-category .showroom-features .depth-view figcaption{padding:16px}
.studio-heading{display:block;margin-bottom:22px}.studio-heading>p{margin-top:18px;max-width:40ch}
.studio-tabs{margin-bottom:20px}.studio-tabs button{padding:15px 5px;gap:7px;font-size:14px}.studio-tabs button span{font-size:9px}.studio-tabs button i{display:none}
.studio-panel{grid-template-columns:1fr;gap:20px}.studio-story h3{font-size:27px;margin-bottom:14px}
}
@media(prefers-reduced-motion:reduce){.studio-panel{animation:none}.studio-tabs button{transition:none}}

/* footer.css */
.site-footer{display:grid;grid-template-columns:1.1fr 1fr auto;gap:32px 7%;align-items:center;background:#141019;color:#c8bdce;padding:42px 6% 24px;font-size:12px}
.footer-brand{display:grid;gap:12px}.footer-brand img{width:160px;height:auto}.footer-brand span{color:#a99eaf}
.footer-legal{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:12px}.footer-legal a{transition:color .2s}.footer-legal a:hover{color:#e0c4ef}
.footer-social{display:flex;align-items:center;gap:10px}.footer-social a{display:grid;place-items:center;width:38px;height:38px;border:1px solid #ffffff35;border-radius:50%;color:#e3d9e8;transition:background .2s,color .2s,border-color .2s,transform .2s}.footer-social a:hover{background:#713c97;border-color:#c99be2;color:#fff;transform:translateY(-2px)}.footer-social svg{width:17px;height:17px;fill:currentColor}
.footer-copy{grid-column:1/-1;border-top:1px solid #ffffff20;padding-top:18px;color:#8f8495;font-size:10px;letter-spacing:.04em}
.legal-content{max-width:1000px;margin:0 auto;padding:70px 6% 100px}.legal-content .eyebrow{color:#81539a;margin-bottom:20px}.legal-content h1{font-size:clamp(42px,6vw,78px);max-width:850px}.legal-intro{font-size:18px;color:#756b7c;max-width:760px;margin:24px 0 16px}.legal-date{font-size:12px;color:#887d90;border-bottom:1px solid #d8d0dc;padding:0 0 25px;margin-bottom:35px}.legal-content section{padding:22px 0 18px;border-bottom:1px solid #ded7e1}.legal-content h2{font-size:clamp(23px,3vw,32px);margin-bottom:13px}.legal-content p,.legal-content li{font-size:15px;line-height:1.8;color:#5e5664}.legal-content ul{padding-left:22px}.legal-content a:not(.cta){color:#713c97;text-decoration:underline;text-underline-offset:3px}.legal-content .legal-callout{padding:20px 24px;margin-top:30px;background:#ebe4ef;border-left:3px solid #713c97;color:#514759;font-size:13px;line-height:1.7}
@media(max-width:760px){.site-footer{grid-template-columns:1fr;gap:24px;padding:34px 6% 20px}.footer-social{grid-row:3}.footer-copy{grid-column:1}.legal-content{padding:52px 6% 70px}.legal-intro{font-size:16px}.legal-content p,.legal-content li{font-size:14px}}
@media(prefers-reduced-motion:reduce){.footer-social a{transition:none}}
/* Shared contact information and legal links, each on its own line. */
.site-footer .footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:4px;line-height:1.7}
.site-footer .footer-contact span{color:#c8bdce;user-select:text}
.site-footer .footer-address{margin:0;font-style:normal}
.site-footer .footer-legal{flex-direction:column;align-items:flex-start;flex-wrap:nowrap;gap:10px}
.contact-page span.contact-direct{display:block;user-select:text}
/* Compact footer: brand, contact, legal links and social profiles. */
.site-footer{grid-template-columns:auto minmax(220px,1fr) minmax(150px,.8fr) auto;gap:22px 4%;padding:30px 5% 18px;align-items:center}
.site-footer .footer-contact{margin:0;gap:4px}
.site-footer .footer-brand{gap:0}
.site-footer .footer-legal{gap:6px}
.site-footer .footer-copy{padding-top:12px}
@media(max-width:1000px) and (min-width:761px){.site-footer{grid-template-columns:1fr 1fr;gap:18px 5%}.site-footer .footer-social{justify-content:flex-start}}
@media(max-width:760px){
 .site-footer{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:18px 14px;padding:24px 6% 16px;align-items:start}
 .site-footer .footer-brand{grid-column:1;grid-row:1;align-self:center}
 .site-footer .footer-brand img{width:135px}
 .site-footer .footer-social{grid-column:2;grid-row:1;gap:7px;justify-content:flex-end;align-self:center}
 .site-footer .footer-social a{width:29px;height:29px}
 .site-footer .footer-social svg{width:14px;height:14px}
 .site-footer .footer-contact{grid-column:1;grid-row:2;font-size:11px;gap:5px;overflow-wrap:anywhere}
 .site-footer .footer-legal{grid-column:2;grid-row:2;font-size:11px;gap:7px}
 .site-footer .footer-copy{grid-column:1/-1;grid-row:3;margin:0;padding-top:10px;font-size:9px}
}
/* A quiet, compact footer with clear alignment and restrained separators. */
.site-footer{position:relative;background:#141019;border-top:1px solid #c8a3df24;grid-template-columns:minmax(150px,.85fr) minmax(230px,1.25fr) minmax(160px,.9fr) auto;gap:22px 4%;padding:32px 5% 18px}
.site-footer .footer-contact,.site-footer .footer-legal{padding-left:24px;border-left:1px solid #c8a3df24;line-height:1.8}
.site-footer .footer-contact{gap:3px}
.site-footer .footer-contact span:first-child{color:#f0e8f5}
.site-footer .footer-address{color:#a99caf;font-size:11px}
.site-footer .footer-social{gap:9px}
.site-footer .footer-social a{width:34px;height:34px;background:#ffffff04;border-color:#c8a3df30}
.site-footer .footer-copy{color:#a99caf;letter-spacing:.02em;border-color:#c8a3df1c}
@media(max-width:1000px) and (min-width:761px){.site-footer{grid-template-columns:1fr 1fr}.site-footer .footer-legal{padding-left:0;border-left:0}}
@media(max-width:760px){
 .site-footer{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px 16px;padding:26px 6% 16px}
 .site-footer .footer-contact{padding-left:0;border-left:0}
 .site-footer .footer-legal{padding-left:14px}
 .site-footer .footer-social{gap:6px}
 .site-footer .footer-social a{width:29px;height:29px}
 .site-footer .footer-address{font-size:10px}
}

/* vr-portal.css */
/* The visor is the doorway: one continuous, scroll-controlled camera move. */
.vr-journey{height:300svh;overflow:clip}
.vr-pin{height:100svh;min-height:620px}
.vr-person{transform-origin:var(--vr-origin,50% 28%);filter:brightness(.95);transition:none}
.vr-world{clip-path:inset(var(--vr-top,25%) var(--vr-right,38%) var(--vr-bottom,62%) var(--vr-left,38%) round var(--vr-radius,46px));transform:none;background:#17111c}
.vr-world video{transform:scale(var(--vr-video-scale,1.32));transform-origin:50% 45%;will-change:transform}
.vr-shade{background:linear-gradient(0deg,#100b18df,transparent 39%),linear-gradient(90deg,#100b1870,transparent 55%)}
.vr-copy,.vr-journey[data-chapter="2"] .vr-copy{opacity:var(--vr-copy-opacity,1);bottom:155px;max-width:520px;pointer-events:none}
.vr-copy h2,.vr-journey[data-chapter="2"] .vr-copy h2{font-size:clamp(36px,4.1vw,64px);margin-bottom:18px}
.vr-copy>p:last-child{font-size:14px;max-width:380px;line-height:1.6}
.vr-copy .eyebrow{margin-bottom:16px}
.vr-bottom{bottom:32px;padding-top:16px;gap:24px}
.vr-bottom:before{content:'';position:absolute;top:-1px;left:0;height:2px;width:var(--vr-progress,0%);background:#dab8ed;box-shadow:0 0 12px #ad74d8}
.vr-live-label{opacity:0;transition:opacity .35s;top:30px;right:6%}
.vr-journey[data-chapter="2"] .vr-live-label{opacity:1}
.vr-motion{display:none}
@media(max-width:760px){
 .vr-journey{height:280svh!important}
 .vr-pin{min-height:620px!important}
 .vr-person{transform-origin:var(--vr-origin,50% 28%)}
 .vr-copy,.vr-journey[data-chapter="2"] .vr-copy{bottom:170px;left:6%;right:6%;max-width:none}
 .vr-copy h2,.vr-journey[data-chapter="2"] .vr-copy h2{font-size:clamp(30px,8vw,40px);line-height:1.08}
 .vr-copy>p:last-child{font-size:12px;max-width:30ch}
 .vr-shade{background:linear-gradient(0deg,#100b18f5,transparent 55%)}
 .vr-bottom{bottom:24px;gap:12px}.vr-live-label{top:24px}
 .vr-world video{transform:scale(var(--vr-video-scale,1.32))}
}
@media(prefers-reduced-motion:reduce){
 .vr-journey{height:auto!important}.vr-pin{position:relative!important;height:850px!important}
 .vr-person,.vr-world video{transform:none!important}.vr-copy{opacity:1!important}
}
body:has(.vr-journey.is-in-view) .sticky-contact.whatsapp-dock{visibility:hidden!important;pointer-events:none!important}

/* september-update.css */
.footer-address{font-style:normal;font-size:12px;line-height:1.6;color:#c8bdce}
.teaser-case .teaser-visual{background:radial-gradient(ellipse at 70% 20%,#9364b1,transparent 65%),linear-gradient(130deg,#24172f,#110e18);position:relative}.teaser-case .teaser-visual:before{content:'';position:absolute;inset:14%;border:1px solid #ffffff30;transform:rotate(-12deg);border-radius:35% 0}.teaser-case .teaser-cover{background:transparent}
.dashboard-landing .skill-selector{grid-template-columns:repeat(3,minmax(0,1fr))}.skill-selector small{display:block;font-size:10px;opacity:.7;margin-bottom:8px}
.crm-strip{margin-top:48px;padding:32px 0;border-block:1px solid #c9b8d1;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.crm-strip h3{font:500 clamp(24px,3vw,36px)/1.2 Syne;margin:10px 0}.crm-strip h3 em{color:#743a9c;font-style:normal}.crm-strip p:not(.eyebrow){font-size:15px;line-height:1.7;margin-bottom:16px}
.tool-capture .feature-preview{padding:0;background:#faf9fc;border:0;min-height:0}.tool-capture .feature-preview[hidden]{display:none}
.motion-demo{position:relative;text-align:left;background:#faf9fc;color:#32263d;font-family:'DM Sans',sans-serif;padding:20px 24px 32px;min-height:360px;overflow:hidden;border-radius:4px;container-type:inline-size}.demo-toolbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e4dce9;padding-bottom:15px;font-size:11px;letter-spacing:.04em}.demo-toolbar span{font-weight:400;color:#97849f}.demo-toolbar i{font-size:8px;letter-spacing:3px;color:#b9a6c3}.motion-demo h4{font-size:18px;margin:20px 0;color:#34223f}.motion-demo h4>span{float:right;font:10px 'DM Sans';padding:5px 9px;border:1px solid #e4dce9;border-radius:5px}.demo-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.demo-kpis>div{border:1px solid #e5dce9;border-radius:8px;padding:14px;background:white}.demo-kpis small,.demo-kpis b,.demo-kpis em{display:block}.demo-kpis small{font-size:9px;color:#88728f}.demo-kpis b{font-size:28px;margin:6px 0}.demo-kpis em{font-size:9px;color:#488573;font-style:normal}.demo-chart{margin-top:20px;background:repeating-linear-gradient(to top,#ded6e3 0 1px,transparent 1px 35px);padding:0 10px}.demo-bars{height:135px;display:flex;gap:4%;align-items:end}.demo-bars i{height:var(--bar);flex:1;background:linear-gradient(#b692cd,#744193);border-radius:4px 4px 0 0;transform-origin:bottom;animation:metric-rise 4s ease-in-out infinite alternate;animation-delay:var(--delay)}.demo-axis{display:flex;justify-content:space-between;background:#faf9fc;font-size:9px;padding:8px 0}.demo-note{display:block;margin-top:18px;font-size:8px;letter-spacing:.07em;color:#927e9d}.unit-legend{display:flex;gap:15px;font-size:10px;margin:18px 0;color:#3a8d75}.unit-legend span:nth-child(2){color:#b98941}.unit-legend span:nth-child(3){color:#a299ac}.demo-unit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.demo-unit{position:relative;background:#e7f1eb;border:1px solid #b5d3c1;border-radius:7px;min-height:62px;padding:10px;color:#357459}.demo-unit b{font-size:15px;display:block}.demo-unit span{font-size:9px;display:block;margin-top:4px}.demo-unit .state-reserved{position:absolute;bottom:9px;opacity:0;color:#906128}.unit-changing{animation:unit-state 6s infinite;animation-delay:var(--delay)}.unit-changing .state-available{animation:available-state 6s infinite;animation-delay:var(--delay)}.unit-changing .state-reserved{animation:reserved-state 6s infinite;animation-delay:var(--delay)}.demo-status{font-size:11px;color:#8c7794;margin-top:16px}.demo-creative{display:grid;grid-template-columns:1fr 1fr;gap:20px}.demo-resource>img{width:100%;height:100px;object-fit:cover;border-radius:6px}.demo-resource>span{font-size:9px;color:#8b7697;display:block;margin:10px 0}.creative-form{padding:12px;border:1px solid #e0d5e8;background:#fff;border-radius:6px}.creative-form b,.creative-form small{display:block;font-size:10px;margin-bottom:8px}.creative-form small{color:#8b7697;font-size:9px}.creative-progress{display:block;height:4px;background:#9164ac;transform-origin:left;animation:create-progress 5s infinite}.demo-piece{position:relative;min-height:225px;border-radius:8px;overflow:hidden;animation:piece-reveal 5s infinite;background:#20162b}.demo-piece>img{position:absolute;width:100%;height:100%;object-fit:cover}.demo-piece>div{position:absolute;inset:0;padding:16px;display:flex;flex-direction:column;justify-content:end;background:linear-gradient(transparent,#1a102dd9);color:white}.demo-piece small{font-size:8px;letter-spacing:.1em}.demo-piece b{font:500 22px/1.05 Syne;margin-top:8px}.creative-ready{position:absolute;right:8px;top:8px;background:#fffefa;border-radius:20px;font-size:8px;padding:6px 10px;color:#64407e}.demo-week{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:20px 0}.demo-week span{text-align:center;border-radius:8px;padding:8px;font-size:10px;color:#887590;background:#eee8f3}.demo-week b{display:block;font-size:17px;margin-top:4px}.demo-week .chosen{background:#794699;color:white}.demo-appointments>div{display:flex;gap:15px;align-items:center;padding:13px 8px;border-bottom:1px solid #e2d9e9}.demo-appointments time{font-size:11px;color:#8e769b}.demo-appointments span{flex:1}.demo-appointments b,.demo-appointments small{display:block;font-size:11px}.demo-appointments small{font-size:9px;color:#8e769b;margin-top:4px}.demo-appointments i{font:9px 'DM Sans';color:#547d6a;background:#e4f0e9;padding:5px 8px;border-radius:20px}.appointment-moving{animation:appointment-in 5s infinite}.motion-demo *{animation-play-state:paused!important}.motion-demo.demo-visible *{animation-play-state:running!important}.paused .motion-demo *{animation-play-state:paused!important}
.laptop-screen .motion-demo{height:100%;min-height:0;padding:3% 4%;font-size:10px}.laptop-screen .motion-demo h4{font-size:clamp(11px,1.4vw,18px);margin:3% 0}.laptop-screen .demo-toolbar{padding-bottom:2%;font-size:clamp(7px,.8vw,11px)}.laptop-screen .demo-note{margin-top:2%;font-size:6px}.laptop-screen .demo-creative{height:65%;gap:4%}.laptop-screen .demo-piece{min-height:0}.laptop-screen .demo-resource>img{height:45%}.laptop-screen .demo-week{margin:3% 0}.laptop-screen .demo-appointments>div{padding:3% 1%}
.build-comparison .light-reveal{clip-path:none;opacity:var(--built,0)}.build-controls{max-width:760px;margin:24px auto 0}.build-controls>div{display:flex;justify-content:space-between;align-items:center;gap:16px}.build-controls button{border:0;background:none;color:#cbb2dd;font:12px 'DM Sans';cursor:pointer;padding:10px 0}.build-controls button[aria-pressed=true]{color:white}.build-controls output{font-size:12px;color:#e5d2ef}.build-controls input{display:block;width:100%;margin:14px 0;accent-color:#c69fde;cursor:ew-resize}.expertise-scroll .expertise-back img{object-fit:cover;object-position:center;filter:saturate(.72) contrast(1.04);aspect-ratio:4/3}.expertise-scroll .expertise-back{background:#191321!important}.expertise-scroll .expertise-back strong{min-height:58px}
@keyframes metric-rise{from{transform:scaleY(.65)}to{transform:scaleY(1)}}@keyframes unit-state{0%,35%,100%{background:#e7f1eb;border-color:#b5d3c1}45%,85%{background:#fff1d9;border-color:#dac18d}}@keyframes available-state{0%,35%,100%{opacity:1}45%,85%{opacity:0}}@keyframes reserved-state{0%,35%,100%{opacity:0}45%,85%{opacity:1}}@keyframes create-progress{0%,10%{transform:scaleX(.1)}65%,100%{transform:scaleX(1)}}@keyframes piece-reveal{0%,15%{opacity:.35;transform:translateY(8px)}60%,100%{opacity:1;transform:none}}@keyframes appointment-in{0%,10%{opacity:.25;transform:translateX(15px)}35%,100%{opacity:1;transform:none}}
@media(max-width:760px){.crm-strip{grid-template-columns:1fr;gap:16px}.dashboard-landing .skill-selector{gap:6px}.dashboard-landing .skill-selector button{font-size:12px;padding:12px 10px}.motion-demo{padding:15px 14px;min-height:340px}.demo-unit-grid{gap:6px}.demo-unit{padding:8px;min-height:58px}.motion-demo h4{font-size:15px}.motion-demo h4>span{font-size:8px}.demo-kpis>div{padding:10px}.demo-kpis b{font-size:24px}.demo-creative{gap:12px}.build-controls output{display:none}.laptop-screen .demo-resource>span,.laptop-screen .creative-form small{font-size:6px}.laptop-screen .demo-appointments b{font-size:8px}.laptop-screen .demo-appointments small,.laptop-screen .demo-appointments i{font-size:6px}.laptop-screen .demo-week span{padding:4px}.laptop-screen .demo-week b{font-size:12px}.laptop-screen .demo-piece b{font-size:17px}.laptop-screen .creative-form{padding:6px}.laptop-screen .creative-form b{font-size:7px}.laptop-screen .creative-ready{font-size:6px;padding:3px 5px}}
@media(prefers-reduced-motion:reduce){.motion-demo *{animation:none!important}.demo-unit .state-reserved{display:none}.build-comparison img{transition:none}}
@media(max-width:760px){.laptop-screen .demo-creative{height:64%}.laptop-screen .creative-form{display:none}.laptop-screen .demo-resource>img{height:80%}.laptop-screen .demo-note{position:absolute;bottom:6px;left:4%;font-size:5px}.laptop-screen .demo-piece small{font-size:6px}.laptop-screen .demo-piece>div{padding:10px}.laptop-screen .demo-piece b{font-size:14px}}

.dashboard-recording{display:block;width:100%;height:100%;object-fit:contain;background:#fff;max-width:100%}.feature-preview:has(.dashboard-recording){aspect-ratio:16/9;min-height:0;padding:0;overflow:hidden}.dash-screen-panel>.dashboard-recording{position:absolute;inset:0}

/* Embedded motion, without player chrome or click-to-pause surfaces. */
.dashboard-recording{pointer-events:none;user-select:none}.dashboard-recording::-webkit-media-controls{display:none!important}.feature-preview:has(.dashboard-recording){aspect-ratio:16/9}
/* Screen matches the supplied 3840 × 2160 dashboard captures. */
.dashboard-story .laptop-screen{aspect-ratio:16/9}
.dashboard-story .laptop-stage{--device-width:min(68vw,calc((100svh - 360px)*1.777778),900px);height:calc(var(--device-width)/1.777778 + 112px)}
@media(max-width:760px){.dashboard-story .laptop-stage{--device-width:82vw;height:calc(var(--device-width)/1.777778 + 82px)}}

/* immersive-update.css */
.crm-strip{margin:28px 0 36px;padding:28px 0}.build-timeline{padding:64px 6%}.build-timeline .light-heading{display:block;max-width:960px;margin:0 auto 30px;text-align:center}.project-category .build-timeline .light-heading h2{width:100%;max-width:none;margin:0 0 18px;line-height:1.12;text-align:center;font-size:clamp(32px,4.2vw,64px)}.build-timeline .light-heading>p{max-width:600px;margin:0 auto;line-height:1.7}.build-timeline .light-heading .eyebrow{margin-bottom:20px}.build-time-control{max-width:700px;margin:0 auto 28px}.build-readout{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:16px}.build-readout>span{font-size:9px;letter-spacing:.13em;color:#ba9ecd}.build-readout output{font:500 25px 'DM Sans';font-variant-numeric:tabular-nums;color:#f5e8fc}.build-readout small{font-size:12px;color:#cbb1dc}.build-time-control label{font-size:11px;color:#ccb8d7}.build-stops{display:flex;justify-content:space-between}.build-stops button{padding:9px 0;background:none;border:0;color:#b9a1c9;font:12px 'DM Sans';cursor:pointer}.build-stops button[aria-pressed=true]{color:white}.build-stops button:focus-visible{outline:2px solid #e6c4f9;outline-offset:5px}.build-comparison .build-middle{z-index:1;opacity:var(--building,0)}.build-comparison .light-reveal{z-index:2;opacity:var(--finished,0)}.build-timeline .light-footer{line-height:1.7;align-items:start}.build-timeline .light-footer span:last-child{text-align:right;max-width:380px}
.immersive-journey{height:380svh;position:relative;background:#0b0811;color:#faf5ff;overflow:clip}.immersive-pin{position:sticky;top:0;height:100svh;min-height:650px;overflow:hidden;isolation:isolate}.portal-stage{position:absolute;inset:0;perspective:1200px;overflow:hidden}.portal-subject{position:absolute;inset:0;transform-origin:var(--portal-origin,50% 28%);transform:scale(var(--portal-scale,1)) translate3d(calc(var(--mouse-x,0)*-9px),calc(var(--mouse-y,0)*-5px),0);opacity:var(--subject-opacity,1);will-change:transform,opacity}.portal-subject img{width:100%;height:100%;object-fit:cover;object-position:center 28%;display:block}.portal-window{position:absolute;inset:0;clip-path:inset(var(--portal-top,20%) var(--portal-side,38%) var(--portal-bottom,62%) var(--portal-side,38%) round var(--portal-round,30px));opacity:var(--world-opacity,0);will-change:clip-path,opacity;background:#17101e}.portal-window video{width:100%;height:100%;object-fit:cover;transform:scale(var(--world-scale,1.12)) translate3d(calc(var(--mouse-x,0)*-8px),calc(var(--mouse-y,0)*-5px),0)}.portal-particles{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;mix-blend-mode:screen}.portal-flare{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 35%,#f4e4ffb0,transparent 55%);mix-blend-mode:screen;opacity:var(--portal-flash,0);pointer-events:none}.portal-vignette{position:absolute;inset:0;background:linear-gradient(0deg,#0c0815ed,transparent 40%,#0c081533),linear-gradient(90deg,#0c081550,transparent 60%);pointer-events:none}.portal-topline{position:absolute;top:30px;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.14em;z-index:5}.portal-motion{background:#160e2580;border:1px solid #ffffff30;color:#ead9f4;border-radius:24px;padding:9px 15px;font:10px 'DM Sans';cursor:pointer;backdrop-filter:blur(10px)}.portal-intro{position:absolute;left:6%;bottom:175px;opacity:var(--intro-opacity,1);transform:translateY(var(--intro-y,0px));pointer-events:none;max-width:700px}.portal-intro .eyebrow{font-size:9px;letter-spacing:.18em;color:#d9b9ed;margin-bottom:20px}.portal-intro h2{font:500 clamp(52px,6.7vw,104px)/.98 Syne;letter-spacing:-.06em;margin:0 0 24px}.portal-intro em,.portal-destination em{color:#c9a3e2;font-style:normal}.portal-intro>p:last-child{font-size:15px;color:#e0d0e9}.portal-destination{position:absolute;left:6%;bottom:170px;max-width:550px;opacity:var(--destination-opacity,0);transform:translateY(calc((1 - var(--destination-opacity,0))*25px));pointer-events:none}.portal-destination .eyebrow{font-size:9px;margin-bottom:18px}.portal-destination h3{font:500 clamp(38px,4.7vw,70px)/1.05 Syne;letter-spacing:-.045em;margin:0 0 20px}.portal-destination>p:not(.eyebrow){max-width:400px;font-size:14px;line-height:1.65}.portal-destination small{display:block;margin-top:15px;font-size:9px;color:#d9c6e6}.portal-bottom{position:absolute;bottom:28px;left:6%;right:6%;padding-top:20px;border-top:1px solid #ffffff28;display:flex;justify-content:space-between;align-items:center;gap:30px}.portal-bottom:before{content:'';position:absolute;top:-1px;left:0;width:var(--portal-progress,0%);height:2px;background:#dcbbf4;box-shadow:0 0 12px #bd75f1}.portal-steps{display:flex;gap:32px}.portal-steps button{background:none;border:0;color:#ac9bb7;padding:8px 0;font:12px 'DM Sans';cursor:pointer;text-align:left}.portal-steps small{display:block;font-size:9px;margin-bottom:7px}.portal-steps button[aria-pressed=true]{color:#fff}.portal-scroll{font-size:9px;letter-spacing:.1em;color:#d4bddf}.portal-steps button:focus-visible,.portal-motion:focus-visible{outline:2px solid #dbc1ed;outline-offset:5px}body:has(.immersive-journey.in-view) .whatsapp-dock{visibility:hidden!important}.film-duo{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:22px}.film-duo figure{margin:0;min-width:0}.film-duo video{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:14px;background:#100b18}.film-duo figcaption{padding:16px 0;text-align:left}.film-duo figcaption span{display:block;font-size:9px;letter-spacing:.12em;color:#b99dca;margin-bottom:9px}.film-duo figcaption b{font:500 22px Syne}.film-integrated:has(.film-duo){height:auto!important;padding:40px 0}.film-integrated:has(.film-duo) .film-pin{position:relative;height:auto;min-height:0;padding-block:30px}.film-duo+.visual-note{font-size:10px}
@media(max-width:760px){.build-timeline{padding:42px 6%}.build-readout{align-items:start;gap:10px}.build-readout>span{font-size:8px;max-width:100px;line-height:1.5}.build-readout output{font-size:23px;text-align:right}.build-readout small{display:block;font-size:10px;margin-top:5px}.build-timeline .light-footer span:last-child{text-align:left}.build-comparison{aspect-ratio:16/9}.build-comparison>img{object-fit:cover}.immersive-journey{height:320svh}.immersive-pin{min-height:600px}.portal-topline{top:22px;font-size:7px;gap:12px}.portal-topline>span{max-width:130px;line-height:1.7}.portal-motion{font-size:9px;padding:8px 10px}.portal-intro{bottom:165px;right:6%}.portal-intro h2{font-size:clamp(45px,12vw,64px)}.portal-intro>p:last-child{font-size:13px;max-width:260px;line-height:1.5}.portal-intro .eyebrow{font-size:8px;max-width:240px;line-height:1.6}.portal-destination{bottom:155px;right:6%}.portal-destination h3{font-size:40px}.portal-destination>p:not(.eyebrow){font-size:12px;max-width:290px}.portal-bottom{bottom:22px;display:block}.portal-steps{justify-content:space-between;gap:14px}.portal-steps button{font-size:11px}.portal-scroll{display:block;font-size:8px;margin-top:14px}.film-duo{grid-template-columns:1fr;gap:20px}.film-duo figcaption b{font-size:21px}.portal-window video{object-position:65% center}}
@media(prefers-reduced-motion:reduce){.immersive-journey{height:auto}.immersive-pin{position:relative;height:850px}.portal-particles,.portal-flare{display:none}.portal-subject,.portal-window video{transform:none}.portal-intro,.portal-destination{transition:none}}
@media(max-width:760px){.portal-window video{object-position:88% center}}
.build-timeline .build-comparison,.build-timeline .light-footer{max-width:1120px}
.portal-destination .portal-real-link{display:inline-block;margin-top:16px;color:#efdbff;border-bottom:1px solid #d5ade7;padding-bottom:5px;font:12px 'DM Sans';pointer-events:auto}
@media(max-width:760px){.portal-destination .portal-real-link{font-size:11px;margin-top:12px}.portal-destination{bottom:150px}.portal-destination h3{font-size:36px}}
.film-integrated:has(.film-duo) .film-heading{opacity:1;transform:none;display:grid;grid-template-columns:1.3fr 1fr;align-items:end;gap:12px 6%;margin-bottom:32px}.film-integrated:has(.film-duo) .film-heading .eyebrow{grid-column:1/-1;margin:0 0 10px}.film-integrated:has(.film-duo) .film-heading h2{font-size:clamp(32px,4vw,58px);max-width:700px}.film-integrated:has(.film-duo) .film-heading>p:last-child{margin:0;font-size:15px;max-width:360px;line-height:1.7}.film-integrated:has(.film-duo) .film-orbit{display:none}
@media(max-width:760px){.film-integrated:has(.film-duo) .film-heading{display:block}.film-integrated:has(.film-duo) .film-heading h2{font-size:34px;margin:16px 0}.film-integrated:has(.film-duo) .film-heading>p:last-child{font-size:14px}}
.crm-strip{grid-template-columns:1fr 1.25fr;gap:40px;padding:32px 0}.crm-intro>p:not(.eyebrow){max-width:400px}.crm-logo-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:center;padding:12px 0 24px;border-bottom:1px solid #d7c8df;margin-bottom:20px}.crm-logo-row>div{min-width:0;display:flex;align-items:center;justify-content:center;height:65px}.crm-logo-row img{display:block;width:100%;max-width:180px;height:50px;object-fit:contain}.crm-connections .crm-choice{font-size:13px;line-height:1.7;margin:0 0 18px}.crm-choice strong{display:inline-block;font-weight:500;color:#743a9c;margin-top:4px;font-size:16px}@media(max-width:760px){.crm-strip{grid-template-columns:1fr;gap:20px}.crm-logo-row{gap:16px}.crm-logo-row img{height:40px}.crm-choice strong{font-size:15px}}
.crm-logo-row{background:#21182b;border:1px solid #3c2b49;border-radius:12px;padding:18px 22px;margin-bottom:20px;gap:26px}.crm-logo-row>div:last-child{background:#faf8fc;border-radius:8px;padding:10px}.crm-logo-row img{height:44px}@media(max-width:760px){.crm-logo-row{padding:14px 12px;gap:12px}.crm-logo-row>div{height:48px}.crm-logo-row>div:last-child{padding:6px}.crm-logo-row img{height:36px}}
/* Supplied film includes the visor transition and the complete walkthrough. */
.supplied-vr .portal-subject,.supplied-vr .portal-flare{display:none}
.supplied-vr .portal-window{clip-path:none;opacity:1;background:#0b0811}
.supplied-vr .portal-window video{transform:none;object-position:center}
.supplied-vr .portal-destination{bottom:125px;max-width:340px}
.supplied-vr .portal-destination h3{font-size:clamp(28px,3vw,44px)}
.supplied-vr .portal-destination>p,.supplied-vr .portal-destination>small{display:none}
@media(max-width:760px){.supplied-vr .portal-window video{object-fit:contain}.supplied-vr .portal-intro{bottom:150px}.supplied-vr .portal-intro h2{font-size:38px}.supplied-vr .portal-destination{bottom:145px}.supplied-vr .portal-topline{top:100px}}
.projects .project img[src*="-16x9"],.case img[src*="-16x9"]{object-fit:cover}
.case:has(img[src*="-16x9"])>a{aspect-ratio:16/9}
.portal-middle{position:absolute;left:6%;bottom:155px;max-width:480px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s,visibility .3s;text-shadow:0 2px 18px #0009}
.immersive-journey[data-chapter="1"] .portal-middle{opacity:1;visibility:visible}
.portal-middle .eyebrow{font-size:10px;letter-spacing:.14em;color:#e1c8f2}
.portal-middle h3{font:500 clamp(30px,3.7vw,54px)/1.08 Syne;margin:14px 0;letter-spacing:-.04em}
.portal-middle em{color:#d6b4ed;font-style:normal}
.portal-middle>p:last-child{font-size:14px;line-height:1.65;max-width:350px}
@media(max-width:760px){.portal-middle{right:6%;bottom:150px}.portal-middle h3{font-size:30px}.portal-middle>p:last-child{font-size:12px;max-width:280px}}
@media(prefers-reduced-motion:reduce){.portal-middle{transition:none}}

/* Four registered supplied views: terrain, streets, construction, completion. */
.build-comparison[data-build-stages] .build-stage{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;clip-path:none;opacity:0}.build-comparison[data-build-stages] .build-stage:first-child{opacity:1}
/* Continuous framing and a single scroll timeline for the supplied VR film. */
.supplied-vr .immersive-pin{top:var(--immersive-header,80px);height:calc(100svh - var(--immersive-header,80px));min-height:0}
.supplied-vr .portal-window video{object-fit:contain;object-position:center;transform:none}
.supplied-vr .portal-vignette{background:linear-gradient(90deg,#0b0811e8 0%,#0b081199 23%,transparent 58%),linear-gradient(0deg,#0b0811e8,transparent 30%)}
.supplied-vr .portal-intro,.supplied-vr .portal-middle,.supplied-vr .portal-destination{left:6%;bottom:140px;width:34%;max-width:470px;text-shadow:0 2px 24px #0009}
.supplied-vr .portal-intro h2{font-size:clamp(36px,4.3vw,72px);line-height:1.05}
.supplied-vr .portal-middle{opacity:var(--middle-opacity,0);visibility:visible;transition:none}
.supplied-vr .portal-middle h3{font-size:clamp(30px,3.6vw,54px)}
.supplied-vr .portal-particles{opacity:.35}
@media(max-width:760px){
 .supplied-vr .portal-topline{top:20px}
 .supplied-vr .portal-window{bottom:200px;top:40px}
 .supplied-vr .portal-intro,.supplied-vr .portal-middle,.supplied-vr .portal-destination{width:auto;right:6%;bottom:125px;max-width:90%}
 .supplied-vr .portal-intro h2,.supplied-vr .portal-middle h3,.supplied-vr .portal-destination h3{font-size:clamp(27px,7vw,36px);margin:8px 0}
 .supplied-vr .portal-intro .eyebrow,.supplied-vr .portal-middle .eyebrow{margin-bottom:8px}
 .supplied-vr .portal-intro>p:last-child,.supplied-vr .portal-middle>p:last-child{font-size:12px;max-width:32ch}
 .supplied-vr .portal-vignette{background:linear-gradient(0deg,#0b0811 18%,transparent 62%)}
}
@media(prefers-reduced-motion:reduce){.supplied-vr .immersive-pin{top:0;height:800px}}

/* navigation-update.css */
:root{--site-header-height:82px}
body:has(>header){padding-top:var(--site-header-height)}
body>header{position:fixed!important;inset:0 0 auto;width:100%;z-index:1000!important;background:#141019f2!important;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:16px 4%;border:0!important;outline:0;box-shadow:0 5px 20px #100b1920}
html{scroll-padding-top:calc(var(--site-header-height) + 16px)}
main [id],section[id]{scroll-margin-top:calc(var(--site-header-height) + 16px)}
body>header nav.open{max-height:calc(100dvh - var(--site-header-height));overflow-y:auto}
.cinematic-top{top:calc(var(--site-header-height) + 22px)}
.portal-topline{top:calc(var(--site-header-height) + 20px)}
.dashboard-stage{padding-top:calc(var(--site-header-height) + 18px)}
.article-index{top:calc(var(--site-header-height) + 24px)}
.skip:focus{position:fixed;z-index:1100}
.case-grid .teaser-case>div:last-child h2{font-size:clamp(27px,2.8vw,42px);line-height:1.2}
.crm-strip .crm-logo-row{background:none;border:0;border-bottom:1px solid #d7c8df;border-radius:0;padding:12px 0 24px;gap:28px}
.crm-strip .crm-logo-row>div,.crm-strip .crm-logo-row>div:last-child{background:none;border-radius:0;padding:0}
.crm-strip .crm-logo-row img{filter:brightness(0);opacity:.9;height:46px;max-width:180px}
.crm-strip .crm-choice{font-size:14px;color:#62516e;line-height:1.7}
@media(max-width:1000px){body>header{padding:12px 6%}body>header nav{top:100%}}
@media(max-width:760px){.case-grid .teaser-case>div:last-child h2{font-size:28px}.crm-strip .crm-logo-row{gap:18px}.crm-strip .crm-logo-row img{height:38px}.portal-topline{top:calc(var(--site-header-height) + 14px)}.cinematic-top{top:calc(var(--site-header-height) + 14px)}.dashboard-stage{padding-top:calc(var(--site-header-height) + 18px)}}

.crm-strip .crm-sperant-mark{position:relative}
.crm-strip .crm-logo-row .crm-symbol-detail{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);clip-path:inset(0 74% 0 0);filter:grayscale(1) contrast(4);pointer-events:none}
/* Device silhouettes: phone portrait, tablet landscape. */
.showcase .show-image[data-device="unit"] .scene-device{width:224px;max-width:72%;aspect-ratio:9/19.5;padding:25px 7px 18px;border-radius:32px;overflow:hidden;box-shadow:0 22px 44px #21142e30,inset 0 0 0 2px #070609}
.showcase .show-image[data-device="unit"] .scene-device img{object-fit:cover;object-position:52% center;border-radius:19px;background:#17151c}
.showcase .show-image[data-device="unit"] .scene-device:before{width:58px;height:10px;left:calc(50% - 29px);top:9px;border-radius:12px;background:#050406;z-index:2}
.showcase .show-image[data-device="unit"] .scene-device:after{width:31%;height:3px;left:34.5%;right:auto;top:auto;bottom:7px;background:#bcb4c5}
.showcase .show-image[data-device="unit"]>span{margin-top:24px}
.logos img.buleje-logo,.ribbon-track img.buleje-logo{filter:brightness(0);opacity:1;object-fit:contain;max-width:180px}
.projects .project{position:relative;isolation:isolate;overflow:hidden;transition:box-shadow .45s ease}
.projects .project:after{content:'';position:absolute;inset:-40% -90%;z-index:2;pointer-events:none;background:linear-gradient(112deg,transparent 43%,#fff2 48%,#fff6 50%,#fff1 53%,transparent 58%);transform:translateX(-55%);opacity:0}
.projects .project>img{transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s;transform-origin:50% 60%}
.projects .project>div{z-index:3}
.projects .project:focus-visible{outline:3px solid #b883dc;outline-offset:-3px}
@media(hover:hover){.projects .project:hover{box-shadow:0 16px 35px #39234c30}.projects .project:hover>img{transform:scale(1.055);filter:brightness(1.08)}.projects .project:hover:after{animation:project-light-pass .95s ease both}.projects .project:hover>div span{color:#f4deff}}
.projects .project:focus-visible:after{animation:project-light-pass .95s ease both}
@keyframes project-light-pass{0%{transform:translateX(-55%);opacity:0}20%{opacity:1}100%{transform:translateX(55%);opacity:0}}
.oceano-card-image{object-position:51% center!important}
@media(min-width:761px){.film-integrated .film-pin{top:var(--site-header-height);height:calc(100svh - var(--site-header-height));min-height:540px}}
@media(max-width:760px){.showcase .show-image[data-device="unit"] .scene-device{width:196px;max-width:72%}}
@media(prefers-reduced-motion:reduce){.projects .project,.projects .project>img{transition:none}.projects .project:after{display:none}.projects .project:hover>img{transform:none}}
.paused .projects .project:after{animation:none}
/* Keep the opening brand sequence clear, then introduce navigation softly. */
body>header{transition:opacity .45s ease,transform .45s ease,visibility .45s}
body:has(.brand-intro)>header,body.nav-intro-wait>header{opacity:0;visibility:hidden;transform:translateY(-12px);pointer-events:none}
body:has(.brand-intro) .whatsapp-dock,body.nav-intro-wait .whatsapp-dock,body.footer-in-view .whatsapp-dock.sticky-contact{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
@media(prefers-reduced-motion:reduce){body>header{transition:none}body:has(.brand-intro)>header{opacity:1;visibility:visible;transform:none;pointer-events:auto}}
/* Clear home navigation and a more inviting booking action. */
body>header nav>a:not(.small-cta){transition:color .2s;text-underline-offset:7px}
body>header nav>a:not(.small-cta):hover,body>header nav>a[aria-current="page"]{color:#dcb5f2;text-decoration:underline;text-decoration-thickness:1px}
body>header .small-cta{background:#713c97;border-color:#a577c3;color:#fff;box-shadow:0 3px 14px #713c9726;transition:background .22s,color .22s,box-shadow .22s,transform .22s,border-color .22s;white-space:nowrap}
body>header .small-cta:hover,body>header .small-cta:focus-visible{background:#dfc3f0;border-color:#dfc3f0;color:#251332;box-shadow:0 6px 22px #b77fd640;transform:translateY(-2px)}
body>header .small-cta:active{transform:translateY(0);box-shadow:none}
/* The permanent readability shadow is independent of the animated light sweep. */
.projects .project:before,.portfolio-grid .project:before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent 30%,#100b182b 48%,#100b18c4 73%,#100b18f5 100%)}
.projects .project>div,.portfolio-grid .project>div{z-index:3;text-shadow:0 2px 12px #0009}
.case-grid .case>a{position:relative;isolation:isolate}
.case-grid .case>a:before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent 48%,#100b1833 65%,#100b18d9 100%)}
.case-grid .case-open{z-index:2}
@media(min-width:761px) and (max-width:1100px){body>header{gap:16px;padding-inline:3%}body>header nav{gap:16px;font-size:12px}body>header .brand img{width:155px}body>header .small-cta{padding:10px 13px}}
@media(prefers-reduced-motion:reduce){body>header .small-cta{transition:none}body>header .small-cta:hover,body>header .small-cta:focus-visible{transform:none}}
/* Terra's artwork has wider internal margins; match its visual weight to the ribbon. */
.logos img[src$="/terra.png"],.ribbon-track img[src$="/terra.png"]{transform:scale(1.65);transform-origin:center}
.projects .project:has(img[src*="-16x9"]){aspect-ratio:16/9}
.case:has(img[src*="-16x9"])>a{aspect-ratio:16/9}
/* Lighter lower shadow retains contrast without dimming the full render. */
.projects .project:before,.portfolio-grid .project:before{background:linear-gradient(180deg,transparent 42%,#100b1814 58%,#100b1873 82%,#100b18ad 100%)}
.logos img,.ribbon-track img{width:150px!important;height:68px!important;max-width:150px;object-fit:contain;flex:0 0 150px;align-self:center}
.logos img.titanes-logo,.ribbon-track img.titanes-logo{filter:brightness(0);transform:scale(1.14)}
.logos img.rocambola-logo,.ribbon-track img.rocambola-logo{filter:invert(1) grayscale(1);mix-blend-mode:multiply;transform:scale(1.15)}
.dashboard-controls [data-dash]{white-space:normal}
@media(max-width:760px){.logos img,.ribbon-track img{width:125px!important;height:60px!important;flex-basis:125px;max-width:125px}}
.logos img.rocambola-logo,.ribbon-track img.rocambola-logo{filter:none;mix-blend-mode:normal}
.supplied-vr .portal-destination>p:not(.eyebrow){display:block;font-size:14px;line-height:1.6;max-width:340px}

/* Match upcoming project covers to the supplied landscape photographs. */
.case-grid .case>.teaser-visual{aspect-ratio:16/9}

/* home-review.css */
/* A landscape phone stays slimmer than the 16:10 tablet. */
.showcase .show-image[data-device="unit"] .scene-device{width:min(100%,480px);max-width:100%;aspect-ratio:19.5/9;padding:8px 23px;border-radius:30px;overflow:hidden}
.showcase .show-image[data-device="unit"] .scene-device img{object-fit:cover;object-position:center;border-radius:18px}
.showcase .show-image[data-device="unit"] .scene-device:before{width:9px;height:48px;left:8px;top:calc(50% - 24px);border-radius:10px}
.showcase .show-image[data-device="unit"] .scene-device:after{width:3px;height:29%;left:auto;right:8px;top:35.5%;bottom:auto;border-radius:4px}
.showcase .show-image[data-device="unit"]>span{margin-top:32px}
.film-integrated .film-pair{position:absolute;left:6vw;top:var(--film-top,52%);width:var(--film-width,43%);display:grid;grid-template-columns:1fr 1fr;gap:22px;z-index:2}
.film-integrated .film-pair .film-screen{position:relative;left:auto;top:auto;width:100%;height:auto;aspect-ratio:16/10;min-height:0;transform:none;overflow:hidden}
.film-integrated .film-pair .film-screen:nth-child(2){transform:translateY(calc((1 - var(--pair-progress,0))*38px))}
.film-integrated .film-pair .film-caption{padding:16px;font-size:9px;display:flex;flex-wrap:wrap;gap:8px}
.film-integrated .film-pair .film-play{width:48px;height:48px}
.contact.contact-pierre{display:grid;grid-template-columns:1fr 1.15fr;gap:6%;align-items:center;background:#251a30}
.contact-pierre .contact-content{min-width:0}
.contact-pierre h2{font-size:clamp(44px,5.3vw,78px)}
.contact-pierre .contact-row{display:block;margin-top:24px}
.contact-pierre .contact-row p{font-size:15px;line-height:1.8}
.contact-pierre .actions{margin-top:24px}
.contact-pierre .contact-portrait{margin:0;border-radius:16px;overflow:hidden;box-shadow:0 24px 70px #0c071a55}
.contact-pierre .contact-portrait img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
@media(max-width:760px){.showcase .show-image[data-device="unit"] .scene-device{width:min(100%,420px);max-width:100%;border-radius:24px;padding:6px 20px}.showcase .show-image[data-device="unit"] .scene-device:before{left:6px;width:8px;height:38px;top:calc(50% - 19px)}.showcase .show-image[data-device="unit"] .scene-device:after{right:6px}.film-integrated .film-pair{position:relative;left:auto;top:auto;width:100%;grid-template-columns:1fr;gap:20px}.film-integrated .film-pair .film-screen:nth-child(2){transform:none}.contact.contact-pierre{grid-template-columns:1fr;gap:32px}.contact-pierre h2{font-size:48px}.contact-pierre .contact-portrait{border-radius:12px}}
@media(prefers-reduced-motion:reduce){.film-integrated .film-pair{position:relative;left:auto;top:auto;width:100%;margin-top:30px}.film-integrated .film-pair .film-screen:nth-child(2){transform:none}}

/* meeting-cta.css */
/* A quiet editorial layout preserves the complete meeting photograph. */
.meeting-cta,.contact.contact-pierre.meeting-cta{position:relative;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:5%;padding:76px 6%;background:#211a28;color:#fff;text-align:left;isolation:isolate}
.meeting-cta:after,.meeting-cta:before{display:none!important}
.meeting-cta .contact-content{position:relative;min-width:0;padding:0;align-self:center}
.meeting-cta .eyebrow{color:#cfb6df;font-size:10px;letter-spacing:.13em;margin:0 0 22px}
.meeting-cta h2,.contact-pierre.meeting-cta h2{color:#fff;font-size:clamp(34px,3.45vw,52px);line-height:1.12;letter-spacing:-.045em;margin:0 0 24px;max-width:540px;text-wrap:balance}
.meeting-cta h3{color:#fff}.meeting-cta h2 em{color:#cba6e1;font-style:normal}
.meeting-cta .contact-content>p:not(.eyebrow),.meeting-cta .contact-row>p{color:#d5cbdc;font-size:15px;line-height:1.8;max-width:440px;margin:0 0 26px}
.meeting-cta .contact-row{display:block;margin:0}
.meeting-cta .category-actions,.meeting-cta .actions{display:flex;flex-direction:column;align-items:flex-start;gap:15px;margin-top:25px}
.meeting-cta .cta{display:inline-block;background:#eee5f4;color:#382642;font-size:13px;padding:17px 20px;max-width:100%;white-space:normal;line-height:1.5}
.meeting-cta .text-link{color:#eee0f6;font-size:12px}
.meeting-cta .contact-portrait,.contact-pierre.meeting-cta .contact-portrait{position:relative;align-self:center;margin:0;border-radius:5px;box-shadow:none;min-height:0;overflow:hidden;background:transparent}
.meeting-cta .contact-portrait img,.contact-pierre.meeting-cta .contact-portrait img{display:block;width:100%;height:auto;position:static;object-fit:contain;object-position:center;aspect-ratio:3/2;filter:none;opacity:1}
.meeting-cta .contact-portrait:after,.meeting-cta .contact-portrait:before{display:none}
.article-next.meeting-cta{margin-top:50px;border:0;border-radius:8px;padding:32px;gap:28px;grid-template-columns:1fr 1.1fr}
.article-next.meeting-cta h2,.article-next.meeting-cta h3{font-size:27px;line-height:1.15}.article-next.meeting-cta .contact-content{padding:0}
@media(max-width:1000px){.meeting-cta,.contact.contact-pierre.meeting-cta{grid-template-columns:1fr;gap:32px;padding:54px 6%}.meeting-cta .contact-content{max-width:650px}.meeting-cta h2,.contact-pierre.meeting-cta h2{font-size:42px}.meeting-cta .contact-portrait{width:100%;max-width:800px}.article-next.meeting-cta{grid-template-columns:1fr;padding:28px}}
@media(max-width:480px){.meeting-cta,.contact.contact-pierre.meeting-cta{padding:42px 6%;gap:28px}.meeting-cta h2,.contact-pierre.meeting-cta h2{font-size:36px}.meeting-cta .contact-content>p:not(.eyebrow),.meeting-cta .contact-row>p{font-size:14px}.meeting-cta .cta{font-size:12px}.article-next.meeting-cta{padding:24px}}
/* Continuous banner: the photograph sits behind a broad, soft reading shadow. */
.meeting-cta,.contact.contact-pierre.meeting-cta{display:block;position:relative;min-height:540px;padding:68px 6%;background:#17131d;isolation:isolate;overflow:hidden}
.meeting-cta .contact-content{position:relative;z-index:2;width:43%;max-width:540px;padding:0}
.meeting-cta .contact-portrait,.contact-pierre.meeting-cta .contact-portrait{position:absolute;z-index:-2;inset:0 0 0 29%;width:auto;max-width:none;min-height:0;height:100%;margin:0;border-radius:0;overflow:hidden}
.meeting-cta .contact-portrait img,.contact-pierre.meeting-cta .contact-portrait img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:50% 48%}
.meeting-cta:before{display:block!important;content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#17131d 0%,#17131dfc 25%,#17131de8 34%,#17131da6 43%,#17131d50 51%,#17131d12 61%,transparent 72%),linear-gradient(0deg,#0b091252,transparent 35%,transparent 80%,#0b09122b)}
.meeting-cta h2,.contact-pierre.meeting-cta h2{font-size:clamp(34px,3.45vw,52px)}
.meeting-cta .contact-content>p:not(.eyebrow),.meeting-cta .contact-row>p{max-width:410px}
.article-next.meeting-cta{min-height:380px;padding:36px;border-radius:0}.article-next.meeting-cta .contact-content{width:47%;padding:0}.article-next.meeting-cta h2,.article-next.meeting-cta h3{font-size:28px}
@media(max-width:1000px) and (min-width:761px){.meeting-cta,.contact.contact-pierre.meeting-cta{padding:54px 6%;min-height:520px}.meeting-cta .contact-content{width:46%}.meeting-cta .contact-portrait{left:24%}.meeting-cta h2,.contact-pierre.meeting-cta h2{font-size:38px}}
@media(max-width:760px){.meeting-cta,.contact.contact-pierre.meeting-cta{padding:40px 6% 280px;min-height:0}.meeting-cta .contact-content,.article-next.meeting-cta .contact-content{width:100%;max-width:560px}.meeting-cta .contact-portrait,.contact-pierre.meeting-cta .contact-portrait{inset:auto 0 0;height:350px;width:100%;aspect-ratio:auto}.meeting-cta .contact-portrait img{object-position:center}.meeting-cta:before{background:linear-gradient(0deg,#17131d12 0,transparent 190px,#17131d80 270px,#17131df0 330px,#17131d 375px)}.meeting-cta h2,.contact-pierre.meeting-cta h2{font-size:36px}.article-next.meeting-cta{padding:30px 24px 260px}.article-next.meeting-cta .contact-portrait{height:310px}}

@media(max-width:760px){.meeting-cta,.contact.contact-pierre.meeting-cta{padding-bottom:340px}.article-next.meeting-cta{padding-bottom:310px}}
/* Original meeting photo: non-destructive tonal adjustment only. */
.meeting-cta .contact-portrait img,.contact-pierre.meeting-cta .contact-portrait img{filter:none;object-position:50% 50%}
@media(max-width:760px){
 .meeting-cta,.contact.contact-pierre.meeting-cta{padding-bottom:calc(56.3vw + 32px)}
 .article-next.meeting-cta{padding-bottom:calc(56.3vw + 24px)}
 .meeting-cta .contact-portrait,.contact-pierre.meeting-cta .contact-portrait{height:auto;aspect-ratio:1672/941}
 .meeting-cta:before{background:linear-gradient(0deg,#17131d12 0,transparent 32%,#17131d  calc(56.3vw + 8px))}
}

/* visual-corrections.css */
/* September review: stable silhouettes, complete film pair and portrait collection. */
.showcase .show-image:not([data-device="building"]) .scene-device:after{display:none!important;transition:none!important}
.showcase .scene-device:before{transition:none!important}
.film-integrated{height:190svh}
.film-integrated .film-pair{position:absolute;left:50%;transform:translateX(-50%);top:calc(53% - var(--pair-progress,0)*32%);width:calc(70% + var(--pair-progress,0)*18%);display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,3vw,44px);z-index:2}
.film-integrated .film-pair .film-screen{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:16/9;min-height:0;transform:none;margin:0;overflow:hidden}
.film-integrated .film-pair .film-screen:nth-child(2){transform:translateY(clamp(32px,5vw,72px))}
.film-integrated .film-pair .film-screen>img{object-fit:contain}
.film-integrated .film-pair .film-caption{font-size:9px;padding:18px;letter-spacing:.04em;gap:12px}
.film-integrated .film-pair .film-caption b{font-size:11px}
.film-integrated .film-pair .film-play{width:54px;height:54px}
.dashboard-story .dashboard-stage{padding-top:calc(var(--site-header-height) + 48px);padding-bottom:48px;gap:30px;min-height:850px}
.dashboard-story .dashboard-intro{margin-bottom:30px}
.dashboard-story .dashboard-intro .eyebrow{margin-bottom:26px}
.verticales .case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 28px}
.verticales .case-grid .case>a,.verticales .case-grid .case>.teaser-visual{aspect-ratio:9/16!important;border-radius:18px}
.verticales .case-grid .case>a>img{width:100%;height:100%;object-fit:cover}
.verticales .case-grid .case>div:last-child h2{font-size:clamp(25px,2.3vw,36px)}
.verticales .case-grid .teaser-cover strong{font-size:clamp(22px,2.3vw,34px)}
.verticales .case-grid .teaser-cover .eyebrow{font-size:9px;letter-spacing:.12em}
.project-category #funcionalidades.showroom-features{padding:88px 6%;background:#f4f1f6}
.project-category .showroom-features .section-intro{max-width:1200px;margin:0 auto 44px}
.project-category .showroom-features .depth-layout{max-width:1200px;grid-template-columns:minmax(230px,.65fr) minmax(0,1.35fr);gap:48px;align-items:center}
.project-category .showroom-features .depth-menu{margin:0;display:grid;gap:10px}
.project-category .showroom-features .depth-menu button{border:1px solid #ddd3e4;border-radius:12px;background:#ffffff65;padding:20px;min-height:68px}
.project-category .showroom-features .depth-menu button[aria-pressed=true]{border-color:#a782bd;background:#e9dff0;box-shadow:inset 3px 0 #713c97}
.project-category .showroom-features .depth-view{padding:0;border-radius:18px;background:#fff;box-shadow:0 18px 50px #301d4010;overflow:hidden}
.project-category .showroom-features .depth-view>img{padding:0;width:100%;aspect-ratio:16/10;object-fit:contain;background:#211b28}
.project-category .showroom-features .depth-view figcaption{padding:26px 28px}
.verticales .daylight-registered .daylight-night{filter:none}
@media(max-width:1000px){.verticales .case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-category .showroom-features .depth-layout{gap:24px}}
@media(max-width:760px){
.film-integrated{height:auto}.film-integrated .film-pair{position:relative;inset:auto;transform:none;width:100%;display:grid;grid-template-columns:1fr;gap:26px;margin-top:32px}.film-integrated .film-pair .film-screen:nth-child(2){transform:none}.film-integrated .film-pin{overflow:visible}
.dashboard-story .dashboard-stage{padding-top:calc(var(--site-header-height) + 28px);gap:22px;min-height:700px}.dashboard-story .dashboard-intro{margin-bottom:16px}
.verticales .case-grid{gap:30px 16px}.verticales .case-grid .case-open{font-size:10px;padding:10px;left:10px;right:10px;text-align:center}.verticales .case-grid .case>div:last-child h2{font-size:23px}.verticales .case-grid .case>div:last-child p{font-size:10px}.verticales .case-grid .teaser-cover{padding:14px}.verticales .case-grid .teaser-cover strong{font-size:18px}.verticales .case-grid .teaser-cover .eyebrow{font-size:7px}.verticales .case-grid .teaser-cover>span:last-child{font-size:10px}
.project-category #funcionalidades.showroom-features{padding:56px 6%}.project-category .showroom-features .depth-layout{grid-template-columns:1fr}.project-category .showroom-features .depth-menu{grid-template-columns:1fr 1fr}.project-category .showroom-features .depth-menu button{padding:12px;min-height:64px}.project-category .showroom-features .section-intro{margin-bottom:28px}
}
@media(prefers-reduced-motion:reduce){.film-integrated{height:auto}.film-integrated .film-pair{position:relative;inset:auto;transform:none;width:100%;margin:40px 0 72px}.film-integrated .film-pair .film-screen:nth-child(2){transform:translateY(32px)}}

@media(min-width:761px){.dashboard-story .dashboard-stage{justify-content:center;min-height:0;gap:20px}.dashboard-story .laptop-stage{--device-width:min(62vw,calc((100svh - 610px)*1.777778),760px)}.dashboard-story .dashboard-intro{margin-bottom:20px;flex-shrink:0}.dashboard-story .dashboard-controls{flex-shrink:0;margin-top:0}}
@media(min-width:761px) and (max-height:850px){.dashboard-story{height:auto}.dashboard-story .dashboard-stage{position:relative;height:auto;min-height:0;padding-block:90px;gap:36px}.dashboard-story .laptop-stage{--device-width:min(66vw,680px)}}

.projects .project-coming{cursor:default}.projects .project-coming>img{filter:blur(6px) brightness(.72);transform:scale(1.05)}.projects .project-coming>div{display:flex;flex-direction:column;align-items:flex-start;gap:14px}.project-coming .coming-label{display:inline-block;background:#ffffff22;border:1px solid #ffffff40;border-radius:30px;padding:8px 12px;backdrop-filter:blur(10px)}.projects .project-coming:hover>img{filter:blur(6px) brightness(.76);transform:scale(1.05)}
#proyectos .project.project-coming>img,#proyectos .project.project-coming:hover>img{filter:blur(6px) brightness(.72);transform:scale(1.05)}

/* responsive-review.css */
/* Keep each screenshot inside its own screen, including Safari's aspect-ratio layout. */
.showcase .show-image[data-device] .scene-device{position:relative;--screen-top:12px;--screen-side:14px;--screen-bottom:20px}
.showcase .show-image[data-device="floor"] .scene-device{--screen-top:16px;--screen-side:16px;--screen-bottom:16px}
.showcase .show-image[data-device="unit"] .scene-device{--screen-top:11px;--screen-side:26px;--screen-bottom:11px;aspect-ratio:16/9}
.showcase .scene-device .scene-screen{position:absolute;top:var(--screen-top);right:var(--screen-side);bottom:var(--screen-bottom);left:var(--screen-side);overflow:hidden;border-radius:6px;background:#17151c;isolation:isolate}
.showcase .show-image[data-device="floor"] .scene-screen{border-radius:10px}
.showcase .show-image[data-device="unit"] .scene-screen{border-radius:17px}
.showcase .show-image[data-device] .scene-device .scene-screen img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;max-height:100%;min-height:0;padding:0;margin:0;object-fit:contain;border-radius:0;background:#17151c}
.expertise-front-label,.expertise-front-invite{display:none}
.portal-play{position:absolute;z-index:6;left:50%;top:42%;transform:translate(-50%,-50%);border:1px solid #ceace6;border-radius:30px;background:#f5f3ef;color:#382642;padding:13px 20px;font:500 13px 'DM Sans',sans-serif;cursor:pointer;box-shadow:0 8px 28px #0005;white-space:nowrap}
.portal-play[hidden]{display:none!important}
.portal-play:focus-visible{outline:3px solid #ceace6;outline-offset:5px}
@media(max-width:760px){
 .contact-page .contact-intro-copy>.eyebrow{display:none}
 .expertise-scroll .expertise-deck{gap:24px}
 .expertise-scroll .expertise-toggle{height:clamp(330px,92vw,390px);transform:none!important;filter:none!important;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
 .expertise-scroll .expertise-toggle .expertise-face{clip-path:none;border-radius:20px;border:1px solid #a58ab8!important;background:radial-gradient(ellipse at 50% 45%,#402c56,#16101f 76%)!important;box-shadow:inset 0 0 0 1px #ffffff10,0 12px 28px #08050c50;padding:24px;backface-visibility:hidden;-webkit-backface-visibility:hidden}
 .expertise-scroll .expertise-toggle .expertise-back{clip-path:none;border-radius:20px;backface-visibility:hidden;-webkit-backface-visibility:hidden}
 .expertise-scroll .expertise-toggle .expertise-face,.expertise-scroll .expertise-toggle .expertise-back{transition:transform .6s ease,visibility 0s .3s}
 .expertise-scroll .expertise-toggle .expertise-face{transform:rotateY(0deg)!important;visibility:visible}
 .expertise-scroll .expertise-toggle .expertise-back{transform:rotateY(180deg)!important;visibility:hidden}
 .expertise-scroll .expertise-toggle[aria-expanded="true"] .expertise-face{transform:rotateY(-180deg)!important;visibility:hidden}
 .expertise-scroll .expertise-toggle[aria-expanded="true"] .expertise-back{transform:rotateY(0deg)!important;visibility:visible}
 .expertise-scroll .expertise-toggle .expertise-face:before,.expertise-scroll .expertise-toggle .expertise-face:after,.expertise-scroll .expertise-toggle .expertise-back:before,.expertise-scroll .expertise-toggle .expertise-back:after{display:none}
 .expertise-scroll .expertise-toggle .expertise-face .card-corner{display:none}
 .expertise-scroll .expertise-toggle .expertise-face .card-line-art{inset:18px;border:1px solid #ceace624;border-radius:14px;background:none;opacity:.65}
 .expertise-scroll .expertise-toggle .expertise-face .card-line-art:before,.expertise-scroll .expertise-toggle .expertise-face .card-line-art:after{inset:18% 9%;border-color:#ceace632}
 .expertise-scroll .expertise-toggle .expertise-face .card-mark{position:absolute;top:50%;left:50%;width:54%;max-width:190px;height:auto;padding:0;margin:0;transform:translate(-50%,-50%)!important;opacity:1;background:transparent!important;box-shadow:none!important;filter:none}
 .expertise-scroll .expertise-toggle .expertise-face .expertise-front-label{display:block;position:absolute;top:30px;left:28px;right:28px;text-align:center;color:#eadcf2;font:500 20px/1.25 Syne,sans-serif;letter-spacing:-.02em;min-height:0}
 .expertise-scroll .expertise-toggle .expertise-face .expertise-front-invite{display:block;position:absolute;bottom:28px;left:0;right:0;text-align:center;color:#e2c7f3;font:12px 'DM Sans',sans-serif;letter-spacing:.02em}
 .supplied-vr .portal-window{top:72px;bottom:auto;height:clamp(190px,46svh,370px)}
 .supplied-vr .portal-window video{object-fit:contain;object-position:center;width:100%;height:100%}
 .supplied-vr .portal-play{top:38%;font-size:12px}
 .supplied-vr .portal-intro,.supplied-vr .portal-middle,.supplied-vr .portal-destination{bottom:132px}
 .supplied-vr .portal-topline{top:18px}
 .supplied-vr .portal-particles{opacity:.18}
}
@media(max-width:760px) and (max-height:650px){
 .supplied-vr .portal-window{top:50px;height:36svh}
 .supplied-vr .portal-intro h2,.supplied-vr .portal-middle h3,.supplied-vr .portal-destination h3{font-size:26px}
 .supplied-vr .portal-intro>p:last-child,.supplied-vr .portal-middle>p:last-child{display:none}
}
