@import "https://fonts.googleapis.com/css2?family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600&family=Instrument+Sans:ital,opsz,wght@0,6..14,400;0,6..14,500;0,6..14,600;0,6..14,700;1,6..14,500&display=swap";:root{--ink:#07182c;--blue:#1239c5;--electric:#2c63ff;--ice:#eaf3f7;--steel:#94a8b7;--line:#b9c9d3;--paper:#f8fbfc;color:var(--ink);background:var(--paper);font-synthesis:none;font-family:DM Sans,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);min-width:320px;margin:0}a{color:inherit}button{font:inherit}::selection{color:var(--ice);background:var(--blue)}.skip-link{z-index:100;background:var(--electric);color:#fff;padding:.7rem 1rem;text-decoration:none;position:fixed;top:-4rem;left:1rem}.skip-link:focus{top:1rem}.site-header,footer{grid-template-columns:1fr auto 1fr;align-items:center;max-width:1600px;margin:auto;padding:1.25rem 2rem;display:grid}.wordmark{width:max-content;color:var(--ink);letter-spacing:-.04em;align-items:flex-start;gap:.55rem;font-family:Instrument Sans,sans-serif;font-size:.75rem;font-weight:600;line-height:.85;text-decoration:none;display:inline-flex}.mark{flex-direction:column;gap:2px;margin-top:1px;display:inline-flex}.mark i{background:var(--electric);transform-origin:0;width:16px;height:2px;display:block}.mark i:nth-child(2){transform:scaleX(.72)}.mark i:nth-child(3){transform:scaleX(.38)}nav{gap:1.35rem;font-size:.78rem;display:flex}nav a,.header-contact{text-decoration:none}nav a:hover,.header-contact:hover{color:var(--blue)}.header-contact{justify-self:end;font-size:.78rem;font-weight:600}.hero{background:var(--ink);min-height:calc(100vh - 66px);color:var(--ice);grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:2rem;padding:clamp(2rem,5vw,6.5rem) max(2rem,50vw - 736px);display:grid;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;opacity:.55;background:linear-gradient(90deg,#0000 49.95%,#eaf3f721 50%,#0000 50.06%) 0 0/100% 100%,linear-gradient(#0000 74.84%,#eaf3f714 74.92%,#0000 75%) 0 0/100% 25%;position:absolute;inset:0}.hero>*{position:relative}.hero-intro{color:var(--steel);grid-column:1/-1;justify-content:space-between;align-items:center;gap:2rem;font-size:.76rem;display:flex}.hero-intro p{margin:0}.hero-intro span{text-align:right}.hero-main{grid-column:1;align-self:center;padding-bottom:3rem}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.07em;font-family:Instrument Sans,sans-serif}h1{margin-bottom:1.5rem;font-size:clamp(3.5rem,7.8vw,8.6rem);font-weight:500;line-height:.84}.hero-manifesto{letter-spacing:-.03em;max-width:29rem;color:var(--steel);margin:0;font-family:Instrument Sans,sans-serif;font-size:clamp(1rem,1.4vw,1.3rem);line-height:1.2}.direction-console{border-left:1px solid #eaf3f747;grid-column:2;align-self:end;padding:0 0 1.5rem clamp(1.25rem,3vw,4rem)}.console-prompt{color:var(--steel);margin-bottom:1rem;font-size:.75rem}.direction-options{flex-wrap:wrap;gap:.4rem .9rem;margin-bottom:2.5rem;display:flex}.direction-options button{color:var(--steel);cursor:pointer;letter-spacing:-.055em;background:0 0;border:0;padding:0;font-family:Instrument Sans,sans-serif;font-size:clamp(1.15rem,1.8vw,1.7rem);transition:color .2s}.direction-options button:hover,.direction-options button.selected{color:var(--ice)}.direction-options button.selected:after{content:" /";color:var(--electric)}.direction-answer{max-width:33rem;min-height:8.7rem}.direction-answer p{letter-spacing:-.07em;margin-bottom:.45rem;font-family:Instrument Sans,sans-serif;font-size:clamp(1.8rem,3.5vw,4rem);font-weight:500;line-height:.9}.direction-answer span{max-width:28rem;color:var(--steel);font-size:.88rem;line-height:1.45;display:block}.direction-answer a{color:var(--ice);-webkit-text-decoration-color:var(--electric);text-decoration-color:var(--electric);text-underline-offset:.35rem;margin-top:1.25rem;font-size:.8rem;display:inline-block}.hero-rule{grid-column:1/-1;grid-template-columns:1fr 2fr 1fr;gap:.55rem;display:grid}.hero-rule span{background:var(--electric);height:5px}.hero-rule span:nth-child(2){background:var(--steel)}.hero-rule span:nth-child(3){background:var(--ice)}.statement{background:var(--ice);padding:clamp(5rem,13vw,13rem) max(2rem,50vw - 560px)}.statement p{letter-spacing:-.075em;max-width:47rem;margin:0;font-family:Instrument Sans,sans-serif;font-size:clamp(2.1rem,5.2vw,5.6rem);font-weight:500;line-height:.91}.statement em{color:var(--blue);font-style:normal}.work-section,.capabilities{padding:clamp(5rem,10vw,10rem) max(2rem,50vw - 640px)}.section-intro{grid-template-columns:minmax(8rem,1fr) 2fr 1fr;align-items:start;margin-bottom:clamp(3.5rem,7vw,7rem);display:grid}.section-intro>p{color:var(--blue);margin:.4rem 0 0;font-size:.76rem}.section-intro h2{margin:0;font-size:clamp(3rem,6vw,6.5rem);font-weight:500;line-height:.86}.section-intro>span{color:#526a7b;padding-top:.5rem;font-size:.82rem;line-height:1.4}.project{border-top:1px solid var(--line);grid-template-columns:minmax(4rem,.55fr) minmax(16rem,1.25fr) minmax(15rem,1fr);gap:2rem;padding:2rem 0 2.5rem;display:grid}.project:last-child{border-bottom:1px solid var(--line)}.project-index{color:var(--blue);font-size:.8rem}.project-type{color:#526a7b;margin-bottom:.7rem;font-size:.72rem}.project h3{margin-bottom:.9rem;font-size:clamp(2.5rem,4vw,4.7rem);font-weight:500;line-height:.83}.project-copy>p:not(.project-type){color:#385267;max-width:27rem;font-size:.94rem;line-height:1.45}.project-link,.project-status{color:var(--blue);margin-top:1.2rem;font-size:.8rem;font-weight:600;display:inline-block}.project-link{border-bottom:1px solid var(--blue);padding-bottom:.25rem;text-decoration:none}.project-link:hover{color:var(--ink);border-color:var(--ink)}.project-status{color:#5d7281}.project-visual{background:var(--ink);min-height:13rem;color:var(--ice);padding:1.1rem;font-size:.75rem;overflow:hidden}.visual-kicker{color:var(--steel);margin-bottom:2rem;font-size:.66rem;display:block}.search-visual p{letter-spacing:-.045em;font-family:Instrument Sans,sans-serif;font-size:1.25rem}.search-line{border-bottom:1px solid var(--steel);justify-content:space-between;padding-bottom:.5rem;display:flex}.search-line b{color:var(--electric)}.result-line{background:var(--ice);color:var(--ink);justify-content:space-between;margin-top:1rem;padding:.75rem;display:flex}.trace-visual{position:relative}.trace-node{border:1px solid var(--steel);width:max-content;padding:.4rem .55rem}.root-node{margin-left:18%}.small-node{border-color:var(--electric);max-width:13rem;margin:1.5rem 0 0 auto}.trace-path{border-top:1px solid var(--steel);color:var(--steel);justify-content:space-between;margin:1.2rem 0 0;padding-top:.75rem;display:flex;position:relative}.trace-path:before{content:"";background:var(--electric);width:.4rem;height:.4rem;position:absolute;top:-.2rem;left:0}.flow-visual{grid-template-columns:1fr 1.4rem 1fr 1.4rem 1fr;align-items:center;display:grid}.flow-visual .visual-kicker{grid-column:1/-1}.flow-card{border:1px solid var(--steel);padding:.6rem}.flow-card.active{border-color:var(--electric);background:var(--electric);color:#fff}.flow-connector{background:var(--steel);height:1px}.rules-visual{align-content:start;display:grid}.rules-rule{border:1px solid var(--electric);color:var(--ice);padding:.55rem .6rem}.rules-month{border-top:1px solid var(--steel);grid-template-columns:repeat(12,1fr);gap:.3rem;margin-top:1.2rem;padding-top:.75rem;display:grid}.rules-month i{border:1px solid var(--steel);height:1.7rem;display:block}.rules-month i.active{border-color:var(--electric);background:var(--electric)}.balance-visual .balance-rows{gap:.5rem;display:grid}.balance-rows>div{color:var(--steel);grid-template-columns:4.4rem 1fr;align-items:center;gap:.6rem;font-size:.7rem;display:grid}.balance-bar{height:.8rem;display:block;position:relative}.balance-bar:before{content:"";background:var(--steel);width:1px;position:absolute;top:-.2rem;bottom:-.2rem;left:50%}.balance-bar i{height:.8rem;position:absolute;top:0}.balance-bar i.izq{background:var(--steel);border-radius:2px 0 0 2px;margin-right:2px;right:50%}.balance-bar i.der{background:var(--electric);border-radius:0 2px 2px 0;margin-left:2px;left:50%}.acta-visual .acta-linea{border-bottom:1px solid var(--steel);color:var(--steel);padding-bottom:.6rem}.acta-hoja{gap:.7rem;margin-top:1.1rem;display:grid}.acta-hoja i{background:var(--steel);height:1px;display:block}.acta-hoja i.corta{width:58%}.acta-hoja i:first-child{background:var(--electric);height:2px}.repair-visual ol{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:1.2rem;margin:0;padding:0;list-style:none;display:grid}.repair-visual li{border-top:1px solid var(--steel);color:var(--steel);padding:.8rem .4rem 0 0;position:relative}@media (width<=800px){.repair-visual ol{grid-template-columns:repeat(2,minmax(0,1fr))}}.repair-visual li:before{content:"";background:var(--steel);width:.45rem;height:.45rem;position:absolute;top:-.25rem;left:0}.repair-visual li.active{color:var(--ice)}.repair-visual li.active:before{background:var(--electric)}.portal-grid{grid-template-rows:repeat(3,minmax(2.4rem,auto));grid-template-columns:1.3fr 1fr;gap:.4rem;display:grid}.portal-grid span{border:1px solid var(--steel);color:var(--steel);align-items:flex-end;padding:.5rem .6rem;display:flex}.portal-grid .plan-cell{color:var(--ice);background-image:linear-gradient(#eaf3f71f 1px,#0000 1px),linear-gradient(90deg,#eaf3f71f 1px,#0000 1px);background-size:1rem 1rem;grid-row:1/-1}.portal-grid .active{border-color:var(--electric);background:var(--electric);color:#fff}.orders-cols{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.orders-cols div{border-top:1px solid var(--steel);color:var(--steel);grid-template-rows:1fr auto;align-items:end;gap:.55rem;padding-top:.55rem;display:grid}.orders-cols i{border:1px solid var(--steel);height:2.8rem;display:block}.orders-cols i.active{border-color:var(--electric);background:var(--electric)}.config-sketch{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:end;gap:1rem;display:grid}.config-window{border:1px solid var(--steel);grid-template-columns:1fr 1fr;gap:.3rem;height:6.4rem;padding:.35rem;display:grid;position:relative}.config-window i{border:1px solid var(--steel)}.config-window i.active{border-color:var(--electric);background:var(--electric)}.config-dim{border-bottom:1px solid var(--steel);color:var(--steel);text-align:center;padding-bottom:.2rem;font-size:.62rem;position:absolute;top:-1.35rem;left:0;right:0}.config-quote{gap:.35rem;display:grid}.config-quote span{border-bottom:1px solid var(--steel);color:var(--steel);padding-bottom:.3rem}.config-quote b{background:var(--electric);color:#fff;margin-top:.2rem;padding:.45rem .5rem;font-weight:500}.resort-page{gap:.45rem;display:grid}.resort-nav{border-bottom:1px solid var(--steel);justify-content:flex-end;gap:.35rem;padding-bottom:.45rem;display:flex}.resort-nav i{background:var(--steel);width:1.6rem;height:.3rem}.resort-hero{border:1px solid var(--steel);height:3.6rem;color:var(--ice);align-items:flex-end;padding:.45rem .55rem;display:flex}.resort-row{grid-template-columns:repeat(auto-fit,minmax(5.8rem,1fr));gap:.4rem;display:grid}.resort-row span{border:1px solid var(--steel);color:var(--steel);padding:.5rem .45rem}.resort-row .active{border-color:var(--electric);background:var(--electric);color:#fff}.capabilities{background:var(--ink);color:var(--ice)}.capabilities .section-intro>p{color:var(--electric)}.capabilities .section-intro>span{color:var(--steel)}.capability-list{border-top:1px solid #eaf3f747;grid-template-columns:repeat(3,1fr);display:grid}.capability-list article{border-right:1px solid #eaf3f747;min-height:19rem;padding:1.2rem 2rem 1.5rem 0}.capability-list article+article{padding-left:2rem}.capability-list article:last-child{border-right:0}.capability-list span{color:var(--electric);font-size:.72rem}.capability-list h3{max-width:15rem;margin:3.5rem 0 1rem;font-size:clamp(1.8rem,2.7vw,3.1rem);font-weight:500;line-height:.9}.capability-list p{max-width:16rem;color:var(--steel);font-size:.85rem;line-height:1.45}.studio{background:var(--ice);grid-template-columns:1.25fr 1fr;gap:clamp(2rem,8vw,11rem);padding:clamp(5rem,12vw,12rem) max(2rem,50vw - 560px);display:grid}.studio>div>p{color:var(--blue);font-size:.76rem}.studio h2{margin:0;font-size:clamp(3rem,5.3vw,5.6rem);font-weight:500;line-height:.87}.studio-copy{color:#385267;max-width:28rem;padding-top:.55rem;font-size:1rem;line-height:1.5}.studio-copy p+p{margin-top:1.5rem}.contact{background:var(--electric);color:#fff;min-height:68vh;padding:clamp(4rem,9vw,9rem) max(2rem,50vw - 736px);position:relative;overflow:hidden}.contact:after{content:"";aspect-ratio:1;border:1px solid #ffffff59;border-radius:50%;width:min(60vw,52rem);position:absolute;bottom:-18vw;right:-11vw;box-shadow:0 0 0 4vw #0000,0 0 0 4.08vw #ffffff2b,0 0 0 8vw #0000,0 0 0 8.08vw #ffffff1f}.contact>*{z-index:1;position:relative}.contact>p{font-size:.8rem}.contact h2{margin:clamp(4rem,12vw,13rem) 0 2.5rem;font-size:clamp(4rem,10vw,10rem);font-weight:500;line-height:.78}.contact-link{text-underline-offset:.35rem;font-size:.9rem;font-weight:600;text-decoration-color:#fff;display:inline-block}.contact-link[aria-disabled=true]{cursor:not-allowed}footer{color:#526a7b;grid-template-columns:1fr auto auto;gap:2rem;font-size:.72rem}footer .wordmark{color:var(--ink)}@media (width<=800px){.site-header{grid-template-columns:1fr auto;padding:1.15rem}.site-header nav{display:none}.hero{grid-template-columns:1fr;gap:3.5rem;min-height:auto;padding:1.4rem 1.15rem 1.15rem}.hero-intro{gap:.5rem;font-size:.68rem}.hero-main,.direction-console{grid-column:1;padding:0}.hero-main{padding-top:2.5rem}h1{font-size:clamp(3.4rem,15vw,6rem)}.direction-console{border-top:1px solid #eaf3f747;border-left:0;padding-top:1rem}.direction-answer{min-height:10rem}.hero-rule{margin-top:2rem}.statement,.work-section,.capabilities,.studio,.contact{padding-left:1.15rem;padding-right:1.15rem}.section-intro{grid-template-columns:1fr;gap:.8rem}.section-intro h2{font-size:clamp(3rem,14vw,5rem)}.project{grid-template-columns:2.8rem 1fr;gap:1rem}.project-visual{grid-column:2;min-height:11.5rem}.capability-list{grid-template-columns:1fr}.capability-list article,.capability-list article+article{border-bottom:1px solid #eaf3f747;border-right:0;min-height:0;padding:1.5rem 0}.capability-list h3{margin-top:2rem}.studio{grid-template-columns:1fr;gap:2.8rem}.contact{min-height:33rem}.contact:after{width:25rem;bottom:-5vw;right:-25vw}footer{grid-template-columns:1fr 1fr;gap:1.2rem;padding:1.5rem 1.15rem}footer>span:last-child{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.contact-link{text-decoration:underline}.case-link{color:var(--ink);border:0;border-bottom:1px solid var(--ink);cursor:pointer;background:0 0;margin-top:1.2rem;padding:0;font-size:.8rem;font-weight:600;line-height:1.6;display:block}.case-link:hover{color:var(--blue);border-color:var(--blue)}.project-link{margin-left:1rem}.case-study{min-height:100vh}.case-light{background:var(--ice);color:var(--ink)}.case-dark{background:var(--ink);color:var(--ice)}.case-header,.case-hero,.case-context,.case-flow,.case-capabilities,.case-cta{padding-left:max(2rem,50vw - 680px);padding-right:max(2rem,50vw - 680px)}.case-header{border-bottom:1px solid;grid-template-columns:1fr auto 1fr;align-items:center;padding-top:1.4rem;padding-bottom:1.4rem;display:grid}.case-header>span{opacity:.65;justify-self:end;font-size:.74rem}.back-button{color:inherit;cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-size:.78rem;font-weight:600}.back-button span{color:var(--electric)}.case-hero{grid-template-columns:1.4fr .7fr;align-items:end;gap:clamp(2rem,9vw,12rem);min-height:58vh;padding-top:clamp(6rem,14vw,15rem);padding-bottom:clamp(4rem,8vw,8rem);display:grid}.case-hero>div>p,.case-flow>p,.case-capabilities>p{color:var(--electric);margin-bottom:1rem;font-size:.76rem}.case-hero h1{margin:0;font-size:clamp(5.2rem,13vw,13rem);font-weight:500;line-height:.72}.case-hero>p{letter-spacing:-.055em;max-width:27rem;margin:0 0 .4rem;font-family:Instrument Sans,sans-serif;font-size:clamp(1.35rem,2.15vw,2.2rem);line-height:1.04}.case-context{border-top:1px solid;grid-template-columns:1.4fr .7fr;gap:clamp(2rem,9vw,12rem);padding-top:clamp(4rem,8vw,8rem);padding-bottom:clamp(4rem,8vw,8rem);display:grid}.case-context p{letter-spacing:-.07em;max-width:47rem;margin:0;font-family:Instrument Sans,sans-serif;font-size:clamp(2rem,4.5vw,4.8rem);line-height:.92}.case-context strong{opacity:.72;align-self:end;max-width:22rem;font-size:.9rem;font-weight:500;line-height:1.45}.case-flow{padding-top:2rem;padding-bottom:clamp(5rem,10vw,10rem)}.case-flow>div{border-top:1px solid;grid-template-columns:repeat(4,1fr);display:grid}.case-flow span{letter-spacing:-.05em;border-right:1px solid;flex-direction:column;justify-content:end;gap:1rem;min-height:11rem;padding:1rem 1.25rem 1.25rem 0;font-family:Instrument Sans,sans-serif;font-size:clamp(1.35rem,2vw,2.15rem);line-height:.95;display:flex}.case-flow span+span{padding-left:1.25rem}.case-flow span:last-child{border-right:0}.case-flow b{color:var(--electric);letter-spacing:0;font-family:DM Sans,sans-serif;font-size:.72rem;font-weight:500}.case-capabilities{background:var(--electric);color:#fff;grid-template-columns:1.4fr .7fr;gap:clamp(2rem,9vw,12rem);padding-top:2rem;padding-bottom:clamp(5rem,9vw,9rem);display:grid}.case-capabilities>p{color:#fff}.case-capabilities ul{margin:0;padding:0;list-style:none}.case-capabilities li{letter-spacing:-.05em;border-top:1px solid #ffffff94;padding:.9rem 0;font-family:Instrument Sans,sans-serif;font-size:clamp(1.3rem,2vw,2.1rem);line-height:1}.case-capabilities li:last-child{border-bottom:1px solid #ffffff94}.case-cta{flex-direction:column;justify-content:end;align-items:flex-start;min-height:52vh;padding-top:5rem;padding-bottom:4rem;display:flex}.case-cta p{letter-spacing:-.07em;max-width:32rem;margin-bottom:1.4rem;font-family:Instrument Sans,sans-serif;font-size:clamp(2.5rem,5vw,5rem);font-weight:500;line-height:.87}.case-cta a{border-bottom:1px solid;padding-bottom:.35rem;font-size:.88rem;font-weight:600;text-decoration:none}@media (width<=800px){.project-link{width:max-content;margin-left:0;display:block}.case-header,.case-hero,.case-context,.case-flow,.case-capabilities,.case-cta{padding-left:1.15rem;padding-right:1.15rem}.case-header{grid-template-columns:1fr auto}.case-header .mark{display:none}.case-hero,.case-context,.case-capabilities{grid-template-columns:1fr;gap:2rem}.case-hero{min-height:31rem;padding-top:7rem}.case-hero h1{font-size:clamp(4.8rem,21vw,8rem)}.case-context strong{max-width:26rem}.case-flow>div{grid-template-columns:1fr 1fr}.case-flow span{border-bottom:1px solid;min-height:9rem}.case-flow span:nth-child(2){border-right:0}}
