/* 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}

/* 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}}

/* landings.css */
.landing{overflow-x:clip}.landing header{z-index:10}.landing h1{font-size:clamp(48px,6.8vw,104px)}.landing h2{font-size:clamp(34px,4.2vw,62px)}.landing p{line-height:1.75}.landing .eyebrow{line-height:1.5}.landing-block{padding:95px 6%}.section-intro{margin-bottom:50px}.section-intro>p:last-child{color:#766b7d}.landing-close{background:#30203e;color:white;padding:85px 6%;position:relative}.landing-close:after{content:'↗';position:absolute;right:8%;top:20%;font-size:140px;color:#c69cdb30;pointer-events:none}.landing-close p{color:#d3c4de}.landing-close .cta{background:#e0c4ef;color:#30203e}.immersive-intro{min-height:690px;position:relative;background:#16121b;color:#fff;display:flex;align-items:center;isolation:isolate}.immersive-intro>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.immersive-intro:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#120f1ceb,#120f1c20);z-index:-1}.immersive-intro>div{padding:80px 6%;width:100%}.immersive-intro em{color:#dcb5f2}.immersive-intro p:not(.eyebrow){max-width:510px}.image-credit{position:absolute;right:5%;bottom:25px;font-size:10px;letter-spacing:.13em}.exploration{display:grid;grid-template-columns:1.3fr 1fr;gap:7%;align-items:center}.exploration figure{margin:0;background:#eae5ed;padding:25px;border-radius:12px}.exploration figure img{width:100%;aspect-ratio:16/11;object-fit:contain}.exploration figcaption{font-size:12px;margin-top:16px;color:#6c5977}.explore-controls button{position:relative;width:100%;text-align:left;border:0;border-top:1px solid #cec3d4;background:none;padding:25px 35px 25px 20px;color:#6a6070}.explore-controls button.chosen{background:#eae1f0;box-shadow:inset 3px 0 #713c97;color:#713c97}.explore-controls small{letter-spacing:.1em;font-size:10px}.explore-controls h3{font-size:28px;margin-top:14px}.explore-controls p{font-size:14px;margin-bottom:0}.explore-controls button>span{position:absolute;right:15px;top:25px}.dual-stories{background:#17121e;color:#fff;padding:70px 6%;display:grid;grid-template-columns:1fr 1fr;gap:40px}.dual-stories article>img{width:100%;height:350px;object-fit:cover;border-radius:3px}.dual-stories article>div{padding:30px 0}.dual-stories h2{font-size:36px}.dual-stories p{color:#c8bbd1}.dual-stories .eyebrow{color:#cba4e1;margin-bottom:20px}.process{display:grid;grid-template-columns:1fr 1fr;gap:10%}.process ol{margin:0;padding:0;list-style:none;counter-reset:steps}.process li{padding:24px 0 24px 40px;position:relative;border-top:1px solid #cec3d4;counter-increment:steps}.process li:before{content:'0'counter(steps);position:absolute;left:0;font-size:12px;color:#713c97}.process h3{font-size:27px}.process li p{font-size:14px;color:#766b7d}.control-hero{padding:80px 6% 55px;text-align:center;background:radial-gradient(ellipse at 50% 70%,#512969,#17121f 65%);color:white}.control-hero>div:first-child{margin:auto}.control-hero em{color:#d6aeea}.control-hero p{margin-left:auto;margin-right:auto}.control-hero .dashboard-full{margin-top:55px;width:min(1100px,100%);box-shadow:0 0 70px #c183ff25;border:8px solid #302a37}.visual-note{font-size:11px;color:#c9b7d5;margin-top:20px}.tool-selector{display:flex;gap:12px;border-bottom:1px solid #ccc0d2;padding-bottom:20px}.tool-selector button{border:1px solid #b9a5c5;border-radius:40px;background:transparent;color:#57366a;padding:13px 25px}.tool-selector button[aria-pressed=true]{background:#713c97;color:white;border-color:#713c97}.tool-story{display:grid;grid-template-columns:.6fr 1fr;gap:9%;align-items:center;padding:50px 0;min-height:330px}.tool-story>span{font-size:140px;text-align:center;color:#8652a5;background:#e9def0;border-radius:100%;width:220px;height:220px;line-height:1.5;margin:auto}.tool-story h3{font-size:38px}.tool-story .eyebrow{margin-bottom:20px}.tool-detail{border-top:1px solid #ccc0d2;padding-top:20px;color:#795688;font-size:13px}.connected{padding:80px 6%;background:#eae1f0;display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center}.connection-map{text-align:center;border:1px solid #c8b3d4;border-radius:22px;padding:35px;display:grid;gap:15px;background:#f8f4fa}.connection-map strong{padding:20px;background:#e8dbef;font:28px Syne}.connection-map span{font-size:10px;letter-spacing:.15em}.connection-map i{font-size:30px;color:#713c97;font-style:normal}.portfolio-intro{padding:80px 6% 65px}.portfolio-intro>div{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-top:25px}.portfolio-intro p{max-width:550px}.collection{padding:0 6% 70px}.collection-bar{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #cec3d4;padding:25px 0 40px;gap:20px}.collection-bar .eyebrow{margin:0}.collection-bar label{font-size:12px;color:#6d6175}.collection-bar input{display:block;padding:10px 0;background:none;border:0;border-bottom:1px solid #a994b6;font:14px 'DM Sans';width:260px}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px 30px}.case a{display:block;position:relative;overflow:hidden;border-radius:4px}.case img{width:100%;height:400px;object-fit:cover;transition:transform .7s}.case:nth-child(3n+1){grid-column:1/-1}.case:nth-child(3n+1) img{height:540px}.case a:hover img{transform:scale(1.035)}.case-open{position:absolute;bottom:22px;right:22px;background:#fffef0f0;color:#201b27;padding:12px 18px;border-radius:30px;font-size:12px}.case>div{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-top:20px}.case h2{font-size:32px}.case p{font-size:12px;color:#74647e;margin:0}.case[hidden]{display:none}.client-strip{padding:45px 6% 70px;background:#ebe6ef}.client-strip>div{display:flex;flex-wrap:wrap;align-items:center;gap:40px;justify-content:space-between}.client-strip img{width:110px;height:55px;object-fit:contain;filter:brightness(0)}.team-intro{padding:80px 6% 0;display:grid;grid-template-columns:1.3fr .8fr;gap:6%;align-items:center}.team-intro figure{margin:0}.team-intro img{height:540px;width:100%;object-fit:cover;border-radius:160px 160px 0 0}.team-intro figcaption{font-size:11px;color:#76677e;padding-top:15px}.team-intro p{color:#796b82}.team-intro .eyebrow{color:#713c97}.disciplines article{display:grid;grid-template-columns:50px 1fr 1fr;gap:30px;align-items:baseline;padding:30px 0;border-top:1px solid #cfc2d6}.disciplines article>span{color:#986bab;font-size:12px}.disciplines article p{margin:0;color:#766b7d}.team-manifesto{position:relative;min-height:550px;color:white;display:flex;align-items:end;isolation:isolate}.team-manifesto>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.team-manifesto:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#191023ee,#19102320);z-index:-1}.team-manifesto>div{padding:70px 6%;max-width:1000px}.team-manifesto .eyebrow{color:#d0b0e2}.questions{display:grid;grid-template-columns:1fr 1fr;gap:8%}.questions summary{font-size:17px;padding:10px 20px 10px 0}.questions details p{font-size:14px;color:#73627c}.contact-landing{padding:80px 6%;display:grid;grid-template-columns:1.1fr 1fr;gap:8%;background:linear-gradient(120deg,#f5f3ef 55%,#e7daef)}.contact-landing h1{font-size:clamp(46px,5.2vw,78px)}.contact-intro>p{color:#766b7d}.contact-direct{display:block;font-size:23px;margin-top:30px;overflow-wrap:anywhere}.contact-direct small{display:block;font-size:10px;letter-spacing:.15em;color:#946aab}.contact-landing form{background:#fffafc;padding:36px;border-radius:14px;box-shadow:0 15px 60px #4c2e5d10}.contact-landing form h2{font-size:32px;margin-bottom:25px}.contact-landing label{display:block;font-size:12px;margin:17px 0;color:#695771}.contact-landing input,.contact-landing select,.contact-landing textarea{display:block;width:100%;padding:13px;margin-top:7px;background:#f3edf6;border:1px solid #dbcee2;border-radius:3px;font:15px 'DM Sans';color:#33223f}.contact-landing form button{border:0;width:100%}.form-note{font-size:11px;color:#766b7d}.meeting>div{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:50px}.meeting article{border-top:1px solid #cbbad4;padding-top:22px}.meeting article span{color:#895a9f;font-size:12px}.meeting h3{margin-top:25px}.meeting p{color:#766b7d;font-size:14px}.landing :focus-visible{outline:3px solid #a875c7;outline-offset:5px}
@media(max-width:1050px){.landing nav{gap:12px;font-size:11px}.landing header{gap:15px}.landing .brand img{width:140px;height:auto}.team-intro{grid-template-columns:1.1fr .8fr}.team-intro img{height:430px}.contact-landing{gap:4%}.case>div{display:block}.case p{margin-top:10px}}
@media(max-width:760px){.landing h1{font-size:clamp(43px,10vw,65px)}.landing-block{padding:60px 6%}.immersive-intro{min-height:620px}.immersive-intro>div{padding:70px 6%}.immersive-intro:after{background:linear-gradient(90deg,#120f1cdd,#120f1c66)}.exploration,.process,.connected,.team-intro,.questions,.contact-landing{grid-template-columns:1fr;gap:35px}.exploration figure{padding:16px}.explore-controls h3{font-size:25px}.dual-stories{grid-template-columns:1fr;padding:50px 6%;gap:20px}.dual-stories article>img{height:300px}.control-hero{padding:55px 4% 40px}.control-hero .dashboard-full{border-width:4px;margin-top:35px}.tool-selector{gap:7px}.tool-selector button{padding:10px 12px;font-size:12px}.tool-story{grid-template-columns:1fr;gap:30px;padding:30px 0}.tool-story>span{width:120px;height:120px;font-size:80px}.tool-story h3{font-size:32px}.connected{padding:55px 6%}.portfolio-intro{padding:55px 6% 40px}.portfolio-intro>div{display:block}.collection-bar{align-items:start;flex-direction:column}.collection-bar label,.collection-bar input{width:100%}.case-grid{grid-template-columns:1fr;gap:35px}.case:nth-child(3n+1) img,.case img{height:350px}.case h2{font-size:30px}.case-open{bottom:15px;right:15px}.client-strip>div{gap:25px;justify-content:center}.client-strip img{width:95px}.team-intro{padding:55px 6% 0}.team-intro img{height:380px;border-radius:100px 100px 0 0}.disciplines article{grid-template-columns:30px 1fr;gap:15px}.disciplines article p{grid-column:2;font-size:14px}.disciplines h3{font-size:27px}.team-manifesto>div{padding:50px 6%}.team-manifesto h2{font-size:38px}.contact-landing{padding:55px 6%}.contact-landing form{padding:25px}.meeting>div{grid-template-columns:1fr;gap:25px}.landing-close{padding:60px 6%}.landing-close:after{display:none}.landing footer{gap:22px}.landing .section-intro{margin-bottom:35px}}
@media(prefers-reduced-motion:no-preference){.landing .cta,.tool-selector button{transition:background .2s,transform .2s}.landing .cta:hover{transform:translateY(-2px)}}
@media(prefers-reduced-motion:no-preference){.arrived{animation:landing-arrive .7s ease both}@keyframes landing-arrive{from{opacity:.3;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}}
/* Project collection: both lead cases share the opening row. */
.case-grid .case:nth-child(n){grid-column:auto}.case-grid .case:nth-child(n) img{height:auto;aspect-ratio:16/10;object-fit:cover}.case-grid .case>div{display:block}.case-grid .case p{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}.project-type{border-left:1px solid #b8a2c5;padding-left:10px;color:#713c97}.project-filters{display:flex;gap:9px;flex-wrap:wrap}.project-filters button{padding:10px 18px;background:transparent;border:1px solid #c8b6d2;border-radius:30px;color:#685071;font:13px 'DM Sans';transition:background .2s}.project-filters button[aria-pressed=true]{background:#713c97;color:white;border-color:#713c97}.filter-status{font-size:12px;color:#776380;margin-top:25px}.case-grid{gap:48px 30px}
.case-grid .teaser-visual{position:relative;margin:0;overflow:hidden;border-radius:4px;isolation:isolate;aspect-ratio:16/10;background:#32283e;display:block;cursor:default}.case-grid .teaser-visual img{width:100%;height:100%;object-fit:cover;filter:blur(13px) brightness(.58);transform:scale(1.09);transition:transform .7s,filter .7s}.case-grid .teaser-visual:hover img,.case-grid .teaser-visual:focus-visible img{transform:scale(1.14);filter:blur(13px) brightness(.68)}.teaser-cover{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;color:white;text-align:center;padding:20px;background:#24133120}.teaser-cover .eyebrow{font-size:10px;margin-bottom:18px;color:#e9d8f5}.teaser-cover strong{font:500 clamp(26px,3vw,45px) Syne;letter-spacing:-.04em}.teaser-cover>span:last-child{font-size:12px;letter-spacing:.08em;margin-top:18px}.teaser-case>div:last-child h2{font-size:26px}

/* Contacto: filtro de proyecto, datos y reserva */
.contact-form-card{min-width:0;background:#fffafc;padding:clamp(24px,3vw,44px);border-radius:14px;box-shadow:0 15px 60px #4c2e5d10;align-self:start}
.contact-progress{display:flex;align-items:center;gap:12px;margin:0 0 34px;color:#a497aa;font-size:10px;letter-spacing:.08em}
.contact-progress span{display:flex;flex-direction:column;gap:3px;white-space:nowrap}
.contact-progress b{font-size:11px;font-weight:500;letter-spacing:0}
.contact-progress span.is-current{color:var(--purple)}
.contact-progress i{height:1px;background:#ded4e3;flex:1}
.contact-form-card form{background:none;padding:0;border-radius:0;box-shadow:none}
.contact-form-card .contact-step[hidden]{display:none}
.contact-form-card form h2{font-size:clamp(28px,3vw,38px);margin:0 0 10px}
.contact-form-card .step-lead{font-size:13px;color:#766b7d;margin:0 0 24px;line-height:1.65}
.question-group{border:0;padding:0;margin:22px 0 0;min-width:0}
.question-group legend{font-size:13px;font-weight:600;margin-bottom:10px;color:#34283b}
.question-group .choice{display:inline-flex;vertical-align:top;align-items:center;gap:8px;margin:0 7px 8px 0;padding:10px 12px;border:1px solid #ded4e3;border-radius:6px;background:#fff;cursor:pointer;color:#51445a;font-size:12px;transition:border-color .2s,background .2s,color .2s}
.question-group .choice:has(input:checked){border-color:#8651a5;background:#f0e6f5;color:#60327c;box-shadow:inset 0 0 0 1px #8651a5}
.question-group .choice input{accent-color:var(--purple);margin:0}
.question-group .choice span{display:flex;flex-direction:column;line-height:1.35}
.question-group .choice b{font-size:12px;font-weight:600}
.question-group .choice small{font-size:10px;color:#766b7d;margin-top:2px}
.contact-form-card form>section>label{display:block;font-size:12px;margin:15px 0;color:#695771}
.contact-form-card input:not([type=radio]){display:block;width:100%;padding:12px;margin-top:6px;background:#f3edf6;border:1px solid #dbcee2;border-radius:3px;font:14px 'DM Sans';color:#33223f}
.contact-form-card input:focus{outline:2px solid #a875c7;outline-offset:1px}
.contact-form-card .form-next{border:0;display:flex;justify-content:space-between;align-items:center;width:100%;margin:22px 0 14px}
.contact-form-card .form-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px}
.contact-form-card .form-actions .form-next{width:auto;margin:0 0 0 auto}
.contact-form-card .back-step{border:0;background:none;padding:10px 0;color:#5e4d67;font-size:12px}
.contact-form-card .form-note{font-size:10px;color:#766b7d;line-height:1.6;margin:12px 0 0}
.contact-form-card .form-note a{text-decoration:underline;text-underline-offset:2px}
.zcal-frame{width:100%;min-height:370px;margin:22px 0 15px;overflow:hidden;border:1px solid #ded4e3;border-radius:8px;background:#17121f}
.zcal-frame iframe{display:block;width:100%;height:760px;border:0;background:#17121f}
.zcal-pending{min-height:370px;display:grid;place-content:center;text-align:center;padding:28px;color:#eee}
.zcal-pending span{color:#dcb5f2;font-size:40px}
.zcal-pending p{max-width:340px;color:#d5c8dd;font-size:13px}
.zcal-fallback[hidden]{display:none}
@media(max-width:1050px){.contact-form-card{padding:25px}}
@media(max-width:760px){.contact-form-card{padding:22px 18px}.contact-progress{gap:7px;margin-bottom:26px}.contact-progress b{font-size:10px}.question-group .choice{margin-right:4px;padding:9px;font-size:11px}.zcal-frame iframe{height:820px}}

.contact-progress span.is-done{color:#76508e}.contact-progress span.is-done b{color:#76508e}

/* contact-refinements.css */
/* Contact step one: clear form rows and an editorial image panel. */
.contact-page .contact-intro{position:relative;align-self:start;height:clamp(560px,calc(100svh - 150px),700px);min-height:0;display:flex;align-items:stretch;overflow:hidden;border-radius:10px;background:#17121f;color:#fff;isolation:isolate}
.contact-page .contact-visual-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 54%;z-index:-2}
.contact-page .contact-intro:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#14101912 0%,#14101942 35%,#141019ed 100%)}
.contact-page .contact-intro-copy{align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end;width:100%;padding:clamp(26px,3vw,46px);position:relative;z-index:1}
.contact-page .contact-intro .eyebrow{color:#ddbaf1;font-size:10px;letter-spacing:.16em}
.contact-page .contact-intro h1{font-size:clamp(40px,3.8vw,54px);line-height:1.06;margin:10px 0 12px}
.contact-page .contact-intro h1 em{color:#d7a9f0}
.contact-page .contact-intro-copy>p:not(.eyebrow){max-width:480px;color:#eee6f3;font-size:14px;line-height:1.7}
.contact-page .contact-direct{font-size:19px;color:white;margin-top:16px}
.contact-page .contact-direct small{color:#d7a9f0}
.contact-page .contact-form-card{align-self:stretch}
.contact-page .question-group .choice{display:flex;width:100%;align-items:flex-start;gap:12px;margin:0;padding:13px 5px;border:0;border-bottom:1px solid #e4dce8;border-radius:0;background:transparent;cursor:pointer;color:#51445a;font-size:13px;transition:background .18s,color .18s,padding .18s}
.contact-page .question-group .choice:hover{background:#f8f4fa}
.contact-page .question-group .choice:has(input:checked){padding-left:12px;border-color:#cfb6dc;background:#f2eaf6;color:#60327c;box-shadow:inset 3px 0 #8651a5}
.contact-page .question-group .choice input[type=radio]{display:inline-block;flex:0 0 auto;width:16px;height:16px;padding:0;margin:2px 0 0;border:0;background:none;accent-color:#713c97}
.contact-page .question-group .choice span{flex:1}
.contact-page .question-group .choice b{font-size:13px}
.contact-page .question-group .choice small{font-size:11px}
@media(max-width:1050px){.contact-page .contact-intro{height:clamp(600px,calc(100svh - 145px),700px)}}
@media(max-width:760px){.contact-page .contact-intro{height:520px}.contact-page .contact-intro-copy{padding:27px 22px}.contact-page .contact-intro h1{font-size:clamp(38px,10vw,54px)}.contact-page .contact-visual-image{object-position:center 22%}.contact-page .contact-form-card{align-self:auto}.contact-page .question-group .choice{padding:12px 4px}}
@media(min-width:761px){.contact-page .contact-form-card{padding:24px}.contact-page .contact-progress{margin-bottom:18px}.contact-page .contact-form-card .step-lead{margin-bottom:10px}.contact-page .question-group{margin-top:13px}.contact-page .question-group legend{margin-bottom:5px}.contact-page .question-group .choice{padding-top:8px;padding-bottom:8px}.contact-page .contact-form-card .form-next{margin-top:14px;margin-bottom:8px}}
/* The booking stays in the contact page, including loading and retry states. */
.contact-page .zcal-frame{position:relative;min-height:0;background:#fffafc;border:1px solid #ded4e3}
.contact-page .calendar-notice{padding:32px;min-height:180px;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;background:#f3edf6}
.contact-page .calendar-notice[hidden]{display:none}
.contact-page .calendar-notice p{flex:1 1 280px;margin:0;font-size:14px;color:#51445a}
.contact-page .calendar-notice .calendar-retry{width:auto;border:1px solid #713c97;border-radius:8px;background:#713c97;color:white;font-size:13px;font-weight:600;padding:12px 18px;cursor:pointer}
.contact-page .calendar-retry:focus-visible{outline:3px solid #ad82ca;outline-offset:4px}
.contact-page .calendar-retry[hidden]{display:none}
.contact-page .zcal-frame:not(.calendar-ready) iframe{position:absolute;top:0;left:0;height:1px!important;opacity:0;pointer-events:none}
.contact-page .zcal-frame.calendar-ready iframe{position:static;opacity:1;min-height:544px}
@media(max-width:760px){.contact-page .calendar-notice{padding:20px 16px}.contact-page .calendar-retry{width:100%}}
/* Clear hierarchy for the contact form navigation. */
.contact-page .contact-form-card .form-actions{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;margin-top:26px}
.contact-page .contact-form-card .form-actions .back-step{margin:0 auto 0 0;padding:12px 0;flex:0 0 auto;text-align:left;font:500 14px 'DM Sans',sans-serif;color:#62536c;cursor:pointer}
.contact-page .contact-form-card .form-actions .form-next{margin:0;padding:17px 25px;border:1px solid #713c97;border-radius:8px;background:#713c97;color:#fff;box-shadow:0 6px 18px #713c9726;font:600 14px 'DM Sans',sans-serif;display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:54px;transition:background .2s,box-shadow .2s,transform .2s}
.contact-page .contact-form-card .form-actions .form-next:hover{background:#592b7b;box-shadow:0 8px 22px #713c973d;transform:translateY(-2px)}
.contact-page .contact-form-card .back-step:hover{color:#713c97;text-decoration:underline;text-underline-offset:5px}
.contact-page .contact-form-card .form-actions button:focus-visible{outline:3px solid #ad82ca;outline-offset:4px}
@media(max-width:480px){.contact-page .contact-form-card .form-actions{gap:12px}.contact-page .contact-form-card .form-actions .form-next{padding:16px 18px;gap:12px;font-size:13px}}
@media(prefers-reduced-motion:reduce){.contact-page .contact-form-card .form-actions .form-next{transition:none;transform:none}}
.contact-page .contact-form-card .form-actions .back-step{width:auto;min-width:0;max-width:max-content}
.contact-page .contact-form-card .form-actions .form-next{width:auto;min-width:0;flex:0 1 auto}

/* Keep one continuous composition across all three booking steps. */
.contact-page .contact-landing{grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:clamp(24px,4vw,64px);align-items:start}
.contact-page .contact-intro{position:sticky;top:calc(var(--site-header-height) + 24px);height:clamp(600px,calc(100svh - 150px),820px)}
.contact-page .contact-visual-image{object-position:62% top}
.contact-page .contact-intro:after{background:linear-gradient(180deg,transparent 15%,#14101915 32%,#141019cc 75%,#141019ed)}
.contact-page .contact-form-card{min-width:0;perspective:1400px;scroll-margin-top:calc(var(--site-header-height) + 24px)}
.contact-page .contact-step{transform-origin:50% 40%;backface-visibility:hidden}
.contact-page .contact-step.step-turn-in{animation:contact-turn-in .48s cubic-bezier(.2,.7,.2,1) both}
@keyframes contact-turn-in{from{opacity:0;transform:perspective(1400px) rotateY(-12deg) translateY(8px)}to{opacity:1;transform:perspective(1400px) rotateY(0) translateY(0)}}
.contact-page .zcal-frame{overflow:hidden;border-radius:12px}
.contact-page .zcal-frame iframe{width:100%;border:0;background:#fff;height:1100px}
.contact-page .zcal-frame.calendar-ready{animation:calendar-reveal .35s ease both}
.contact-page .zcal-frame:not(.calendar-ready):not(.calendar-unavailable) .calendar-notice:before{content:'';width:22px;height:22px;border:2px solid #d9c9e2;border-top-color:#713c97;border-radius:50%;animation:calendar-loading .8s linear infinite}
@keyframes calendar-loading{to{transform:rotate(360deg)}}
@keyframes calendar-reveal{from{opacity:.4}to{opacity:1}}
@media(max-width:760px){.contact-page .contact-landing{grid-template-columns:1fr;gap:28px}.contact-page .contact-intro{position:relative;top:auto;height:560px}.contact-page .contact-form-card{padding:22px 16px}.contact-page .contact-step[data-step="3"] .form-actions{margin-top:20px}.contact-page .calendar-notice{min-height:260px}}
@media(prefers-reduced-motion:reduce){.contact-page .contact-step.step-turn-in,.contact-page .zcal-frame.calendar-ready,.contact-page .calendar-notice:before{animation:none!important}}
.contact-page .contact-visual-image{height:auto;aspect-ratio:1;object-fit:contain;object-position:center top}.contact-page .contact-intro{background:#141019}

/* Compact agenda keeps the calendar directly below its heading. */
.contact-page #calendar-title.calendar-heading{font:500 12px "DM Sans",sans-serif;letter-spacing:.16em;line-height:1.5;margin:0 0 18px}
.contact-page .calendar-back{margin:18px 0 0}

/* Country prefix and national number remain one accessible contact field. */
.contact-page .phone-field{margin-top:18px;min-width:0}
.contact-page .phone-field>label{display:block;margin:0 0 8px}
.contact-page .phone-row{display:grid;grid-template-columns:minmax(135px,.85fr) minmax(0,1.15fr);gap:10px;min-width:0}
.contact-page .phone-row select,.contact-page .phone-row input{width:100%;min-width:0;margin:0;min-height:48px;border:1px solid #ded4e3;border-radius:8px;background:#fff;padding:12px;font:400 14px 'DM Sans',sans-serif;color:#33283a}
.contact-page .phone-row select{padding-right:6px}
.contact-page .phone-row select:focus-visible,.contact-page .phone-row input:focus-visible{outline:2px solid #ad82ca;outline-offset:2px}
@media(max-width:480px){.contact-page .phone-row{grid-template-columns:minmax(118px,.9fr) minmax(0,1.1fr);gap:8px}.contact-page .phone-row select,.contact-page .phone-row input{font-size:13px;padding:12px 8px}}
.contact-page .phone-row{position:relative}
.contact-page .country-picker{min-width:0}
.contact-page .country-trigger{display:flex;align-items:center;gap:10px;min-height:48px;width:100%;margin:0;padding:12px;border:1px solid #ded4e3;border-radius:8px;background:#fff;color:#33283a;font:400 14px 'DM Sans',sans-serif;cursor:pointer;text-align:left}
.contact-page .country-trigger img,.contact-page .country-option img{flex:0 0 20px;width:20px;height:14px;object-fit:contain}
.contact-page .country-chevron{margin-left:auto;font-size:18px;line-height:1}
.contact-page .country-trigger:focus-visible,.contact-page .country-option:focus-visible{outline:2px solid #ad82ca;outline-offset:2px}
.contact-page .country-options{position:absolute;left:0;top:calc(100% + 7px);width:100%;max-height:240px;overflow:auto;z-index:10;border:1px solid #ded4e3;border-radius:10px;background:#fff;box-shadow:0 12px 30px #33203b24;padding:5px;overscroll-behavior:contain}
.contact-page .country-options[hidden],.contact-page .country-picker select[hidden]{display:none}
.contact-page .country-option{display:flex;align-items:center;gap:12px;width:100%;min-height:42px;margin:0;padding:10px;border:0;border-radius:6px;background:#fff;text-align:left;font:400 13px 'DM Sans',sans-serif;color:#33283a;cursor:pointer}
.contact-page .country-option small{margin-left:auto;color:#786483;font-size:12px}
.contact-page .country-option:hover,.contact-page .country-option:focus,.contact-page .country-option[aria-selected=true]{background:#f2eaf6}

/* 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}
}

/* 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)}}

/* 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}

/* 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}
}
