*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-b);line-height:1.55;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 20% -10%,color-mix(in srgb,var(--primary) 25%,transparent),transparent 35%),radial-gradient(circle at 90% 10%,color-mix(in srgb,var(--secondary) 18%,transparent),transparent 35%);pointer-events:none;z-index:-3}.aurora{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:-2;filter:blur(90px);opacity:.34}.aurora i{position:absolute;width:30vw;height:30vw;border-radius:50%}.aurora i:nth-child(1){background:var(--primary);left:-10vw;top:15vh}.aurora i:nth-child(2){background:var(--secondary);right:-12vw;top:28vh}.aurora i:nth-child(3){background:var(--accent);left:38vw;bottom:-20vw;opacity:.5}.has-motion .aurora i{animation:float 14s ease-in-out infinite alternate}.has-motion .aurora i:nth-child(2){animation-duration:18s}.has-motion .aurora i:nth-child(3){animation-duration:20s}@keyframes float{to{transform:translate3d(6vw,-4vh,0) scale(1.12)}}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.icon{width:24px;height:24px}.topbar{height:84px;max-width:1500px;margin:auto;padding:0 4vw;display:flex;align-items:center;gap:32px;position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid color-mix(in srgb,var(--text) 9%,transparent)}.brand img{width:142px;max-height:56px;object-fit:contain;object-position:left center}.logo-mode-original{filter:none!important}.logo-mode-white{filter:brightness(0) invert(1)!important}.logo-mode-dark{filter:brightness(0)!important}.topbar nav{margin-left:auto;display:flex;gap:28px;font-size:14px;color:var(--muted)}.topbar nav a:hover{color:var(--text)}.menu-btn{display:none;margin-left:auto;background:none;border:0;color:var(--text);font-size:24px}.section{max-width:1450px;margin:0 auto;padding:110px 4vw}.hero{min-height:calc(100vh - 84px);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:5vw}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.18em;font-weight:800;color:color-mix(in srgb,var(--secondary) 80%,white);text-transform:uppercase}.eyebrow:before{content:"";width:26px;height:1px;background:currentColor}.hero h1,.section h2,.project-hero h1{font-family:var(--font-h);letter-spacing:-.05em;line-height:.98;margin:18px 0 24px}.hero h1{font-size:clamp(56px,7vw,112px);max-width:900px}.section h2{font-size:clamp(40px,5vw,76px);max-width:1020px}.lead{font-size:clamp(19px,1.8vw,27px);color:var(--muted);max-width:840px}.hero-copy .lead{max-width:760px}.actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:34px}.pill,.ghost{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border-radius:999px;font-weight:800;font-size:14px;transition:.25s ease}.pill{background:linear-gradient(135deg,var(--primary),var(--secondary));color:white;box-shadow:0 12px 40px color-mix(in srgb,var(--primary) 25%,transparent)}.pill:hover{transform:translateY(-2px);box-shadow:0 16px 50px color-mix(in srgb,var(--secondary) 30%,transparent)}.pill.small{min-height:42px;padding:0 18px}.ghost{border:1px solid color-mix(in srgb,var(--text) 16%,transparent);color:var(--text);background:color-mix(in srgb,var(--surface) 45%,transparent)}.ghost:hover{border-color:color-mix(in srgb,var(--text) 34%,transparent)}.hero-words{display:flex;gap:9px;flex-wrap:wrap;margin-top:38px}.hero-words span{font-size:11px;letter-spacing:.11em;color:var(--muted);border:1px solid color-mix(in srgb,var(--text) 11%,transparent);padding:7px 11px;border-radius:999px}.orbit-wrap{position:relative;min-height:620px;display:grid;place-items:center}.orbit{position:absolute;border:1px solid color-mix(in srgb,var(--text) 13%,transparent);border-radius:50%;aspect-ratio:1}.orbit-1{width:62%}.orbit-2{width:92%;opacity:.6}.mory-core{width:190px;height:190px;border-radius:50%;background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 88%,white 3%),color-mix(in srgb,var(--surface) 86%,black));border:1px solid color-mix(in srgb,var(--text) 15%,transparent);box-shadow:0 35px 100px color-mix(in srgb,var(--primary) 20%,transparent);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:3}.mory-core img{width:50px}.mory-core strong{font-size:26px;letter-spacing:.2em;margin-left:.2em}.mory-core small{color:var(--muted)}.orbit-node{--r:255px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(var(--a)) translateX(var(--r)) rotate(calc(-1 * var(--a)));width:145px;min-height:76px;padding:13px 15px;background:color-mix(in srgb,var(--surface) 82%,transparent);border:1px solid color-mix(in srgb,var(--pc) 50%,transparent);border-radius:20px;backdrop-filter:blur(12px);z-index:4;text-align:center;box-shadow:0 12px 40px color-mix(in srgb,var(--pc) 14%,transparent)}.orbit-node b{display:block;font-size:14px}.orbit-node small{font-size:10px;color:var(--pc);letter-spacing:.12em}.split{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}.why-copy{font-size:20px;color:var(--muted)}blockquote{margin:42px 0;padding:30px 0 30px 30px;border-left:2px solid var(--secondary);font-family:var(--font-h);font-size:clamp(26px,3vw,44px);line-height:1.12;color:var(--text)}.sequence{display:flex;gap:15px;align-items:center;flex-wrap:wrap}.sequence span{padding:12px 18px;border-radius:999px;background:color-mix(in srgb,var(--surface) 85%,transparent);border:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.sequence span:nth-child(2){color:var(--secondary)}.section-head.wide{max-width:1050px;margin-bottom:52px}.section-head.center{text-align:center;margin:0 auto 60px;max-width:920px}.section-head.center .eyebrow{justify-content:center}.section-head p{color:var(--muted);font-size:18px;max-width:780px}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.project-card{overflow:hidden;border-radius:var(--radius);background:color-mix(in srgb,var(--surface) 87%,transparent);border:1px solid color-mix(in srgb,var(--text) 10%,transparent);box-shadow:0 24px 80px rgba(0,0,0,.18);transition:.3s}.project-card:hover{transform:translateY(-6px);border-color:color-mix(in srgb,var(--pc) 42%,transparent)}.project-image{display:block;aspect-ratio:4/2.6;overflow:hidden;background:#111}.project-image img{width:100%;height:100%;object-fit:cover;transition:.6s}.project-card:hover .project-image img{transform:scale(1.03)}.project-body{padding:28px}.project-meta{display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.project-meta i{font-style:normal;color:var(--pc)}.project-title{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.project-title h3{font-size:34px;margin:16px 0 8px;font-family:var(--font-h)}.project-title b{font-size:11px;color:var(--pc);letter-spacing:.14em}.project-body p{color:var(--muted);margin:0 0 22px}.text-link{font-weight:800;color:var(--text);display:inline-flex;gap:8px}.network-section{overflow:hidden}.network{height:660px;position:relative;max-width:1040px;margin:0 auto;background:radial-gradient(circle,color-mix(in srgb,var(--primary) 12%,transparent),transparent 55%)}.network:before,.network:after{content:"";position:absolute;border:1px solid color-mix(in srgb,var(--text) 10%,transparent);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.network:before{width:54%;aspect-ratio:1}.network:after{width:82%;aspect-ratio:1}.network-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:170px;height:170px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--secondary));font-family:var(--font-h);font-weight:900;font-size:30px;z-index:4;box-shadow:0 28px 90px color-mix(in srgb,var(--primary) 28%,transparent)}.network-item{position:absolute;width:175px;padding:16px;border-radius:22px;background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid color-mix(in srgb,var(--pc) 45%,transparent);text-align:center;z-index:5}.network-item strong{display:block;color:var(--pc);font-size:11px;letter-spacing:.14em}.network-item span{font-weight:800}.n1{left:8%;top:10%}.n2{right:8%;top:10%}.n3{left:2%;top:45%}.n4{right:2%;top:45%}.n5{left:18%;bottom:4%}.n6{right:18%;bottom:4%}.custom{padding-top:60px}.custom-copy>p{font-size:20px;color:var(--muted);max-width:760px}.case-card{margin-top:50px;display:grid;grid-template-columns:1.25fr .75fr;gap:30px;align-items:center;padding:clamp(28px,5vw,70px);border-radius:calc(var(--radius) + 10px);background:linear-gradient(145deg,color-mix(in srgb,var(--surface) 92%,transparent),color-mix(in srgb,var(--primary) 10%,var(--surface)));border:1px solid color-mix(in srgb,var(--text) 11%,transparent)}.case-card small{color:var(--secondary);letter-spacing:.16em;font-weight:800}.case-card h3{font:800 clamp(36px,4vw,66px)/1 var(--font-h);margin:14px 0}.case-card p{color:var(--muted);font-size:18px}.hat-visual{display:grid;place-items:center;min-height:280px}.hat-visual svg{max-width:320px;filter:drop-shadow(0 35px 50px rgba(0,0,0,.35))}.custom-cta{margin-top:20px;padding:28px 34px;display:flex;align-items:center;justify-content:space-between;border-radius:22px;border:1px dashed color-mix(in srgb,var(--text) 18%,transparent)}.custom-cta h3{margin:0;font-family:var(--font-h);font-size:26px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.step,.principle{background:color-mix(in srgb,var(--surface) 86%,transparent);border:1px solid color-mix(in srgb,var(--text) 9%,transparent);border-radius:var(--radius);padding:28px;min-height:300px}.step>span{font-size:12px;color:var(--secondary);font-weight:800}.ico{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;margin:42px 0 20px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 25%,transparent),color-mix(in srgb,var(--secondary) 18%,transparent));color:var(--text)}.step h3,.principle h3{font-family:var(--font-h);font-size:28px;margin:0 0 12px}.step p,.principle p{color:var(--muted)}.principle-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.principle{min-height:240px}.principle .ico{margin:0 0 28px}.work-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.work-shot{display:block;overflow:hidden;border-radius:24px;background:var(--surface);border:1px solid color-mix(in srgb,var(--text) 10%,transparent)}.work-shot img{aspect-ratio:4/3;object-fit:cover;transition:.4s}.work-shot:hover img{transform:scale(1.025)}.work-shot span{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:16px 18px}.work-shot small{color:var(--muted)}.future{display:grid;grid-template-columns:1fr .8fr;gap:7vw;align-items:center}.future-copy p{color:var(--muted);font-size:20px;max-width:730px}.formula{min-height:390px;border-radius:50%;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle,color-mix(in srgb,var(--primary) 18%,transparent),transparent 66%)}.formula strong{font:900 70px/1 var(--font-h);background:linear-gradient(135deg,var(--primary),var(--secondary));-webkit-background-clip:text;color:transparent}.formula span{color:var(--muted);font-size:22px;margin:12px 0}.formula b{font:900 90px/1 var(--font-h)}.contact{display:grid;grid-template-columns:1fr .9fr;gap:7vw;align-items:start;padding-bottom:150px}.contact-copy p{font-size:20px;color:var(--muted);max-width:680px}.contact-links{display:flex;gap:22px;flex-wrap:wrap;margin-top:32px}.contact-links a{font-weight:800}.idea-form{padding:32px;background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid color-mix(in srgb,var(--text) 10%,transparent);border-radius:var(--radius)}.idea-form label{display:block;color:var(--muted);font-size:12px;font-weight:700;margin-bottom:18px}.idea-form input,.idea-form textarea{display:block;width:100%;margin-top:7px;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);background:color-mix(in srgb,var(--bg) 65%,transparent);color:var(--text);border-radius:14px;padding:14px 15px;font:inherit;outline:none}.idea-form input:focus,.idea-form textarea:focus{border-color:var(--secondary)}.hp{position:absolute!important;left:-9999px}.form-status{font-size:13px;color:var(--muted)}footer{max-width:1450px;margin:auto;padding:40px 4vw 70px;display:flex;align-items:center;gap:28px;border-top:1px solid color-mix(in srgb,var(--text) 9%,transparent);color:var(--muted);font-size:13px}.foot-brand img{width:110px;max-height:48px;object-fit:contain}.project-brandmark{height:42px;margin:14px 0 2px;display:flex;align-items:center}.project-brandmark img{max-height:42px;max-width:190px;object-fit:contain;object-position:left center}.project-page-logo{display:block;max-width:250px;max-height:82px;object-fit:contain;object-position:left center;margin:0 0 28px}.admin-link{margin-left:auto;opacity:.45}.reveal{opacity:0;transform:translateY(28px);transition:.7s cubic-bezier(.2,.8,.2,1)}.reveal.is-visible{opacity:1;transform:none}.delay{transition-delay:.15s}.no-motion .reveal{opacity:1;transform:none}.project-page{--project:var(--secondary)}.project-hero{padding-top:90px;display:grid;grid-template-columns:.8fr 1.2fr;gap:5vw;align-items:center}.project-hero h1{font-size:clamp(62px,8vw,124px);margin-bottom:15px}.verb{color:var(--project);letter-spacing:.18em;font-size:13px}.project-screenshot{border-radius:var(--radius);overflow:hidden;border:1px solid color-mix(in srgb,var(--project) 35%,transparent);box-shadow:0 35px 100px rgba(0,0,0,.35);transform:perspective(1200px) rotateY(-4deg)}.project-detail{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.project-detail ul{list-style:none;margin:0;padding:0}.project-detail li{padding:20px 0;border-bottom:1px solid color-mix(in srgb,var(--text) 10%,transparent);display:flex;gap:16px;align-items:flex-start;font-size:18px}.project-detail li .icon{color:var(--project);flex:0 0 auto}.project-next{text-align:center;max-width:1050px}.project-next span{color:var(--project);font-weight:800;letter-spacing:.12em}.project-next h2{margin-left:auto;margin-right:auto}
@media(max-width:1050px){.topbar nav{display:none}.menu-btn{display:block}.topbar .pill.small{display:none}.topbar.open nav{display:flex;position:absolute;left:4vw;right:4vw;top:74px;flex-direction:column;background:var(--surface);padding:22px;border-radius:20px}.hero,.split,.future,.contact,.project-hero,.project-detail{grid-template-columns:1fr}.hero{padding-top:70px}.orbit-wrap{min-height:560px}.project-grid{grid-template-columns:1fr}.steps{grid-template-columns:repeat(2,1fr)}.work-strip{grid-template-columns:repeat(2,1fr)}.case-card{grid-template-columns:1fr}.project-screenshot{transform:none}.future .formula{max-width:500px;margin:auto;width:100%}}
@media(max-width:680px){.topbar{height:68px;padding:0 20px}.brand img{width:112px}.section{padding:78px 20px}.hero{min-height:auto;padding-top:78px}.hero h1{font-size:52px}.orbit-wrap{min-height:440px}.mory-core{width:130px;height:130px}.mory-core strong{font-size:18px}.orbit-node{--r:175px;width:105px;min-height:58px;padding:8px}.orbit-node b{font-size:11px}.orbit-node small{font-size:8px}.project-body{padding:22px}.project-title h3{font-size:29px}.project-title b{display:none}.network{height:560px}.network-core{width:120px;height:120px;font-size:22px}.network:before{width:62%}.network:after{width:96%}.network-item{width:128px;padding:10px;font-size:12px}.n1{left:0}.n2{right:0}.n3{left:0}.n4{right:0}.n5{left:6%;bottom:7%}.n6{right:6%;bottom:7%}.steps,.principle-grid,.work-strip{grid-template-columns:1fr}.custom-cta{align-items:flex-start;flex-direction:column;gap:14px}.future{gap:30px}.formula{min-height:320px}.formula strong{font-size:54px}.contact{padding-bottom:90px}.idea-form{padding:22px}footer{flex-wrap:wrap;padding:30px 20px 50px}.admin-link{margin-left:0}.project-hero{padding-top:70px}.project-hero h1{font-size:58px}}

/* v1.2 · esquema, temas y responsive premium */
.scheme-light .logo-mode-auto{filter:brightness(0)!important}
.scheme-dark .logo-mode-auto{filter:brightness(0) invert(1)!important}
body.scheme-light:before{opacity:.72}
body.scheme-light .aurora{opacity:.16}
body.scheme-light .project-card,body.scheme-light .step,body.scheme-light .principle,body.scheme-light .idea-form,body.scheme-light .work-shot{box-shadow:0 18px 55px rgba(53,43,71,.08)}
body.scheme-light .topbar{box-shadow:0 1px 0 rgba(20,15,30,.05)}
body.scheme-light .project-image{background:#ece8f0}

/* Las clases de tema ya no fuerzan colores: la paleta elegida se guarda en site.json. */
.theme-prism .aurora{opacity:.34}
.theme-midnight .aurora,.theme-graphite .aurora{opacity:.22}
.theme-ivory .aurora,.theme-porcelain .aurora,.theme-lavender .aurora,.theme-sky .aurora,.theme-mint .aurora,.theme-sand .aurora,.theme-rose .aurora{opacity:.14}
.theme-ocean .aurora{opacity:.24}
.theme-sunset .aurora{opacity:.28}

@media(max-width:1050px){
  .topbar{padding-left:max(24px,env(safe-area-inset-left));padding-right:max(24px,env(safe-area-inset-right))}
  .topbar.open nav{top:76px;left:20px;right:20px;padding:14px;border-radius:18px;border:1px solid color-mix(in srgb,var(--text) 10%,transparent);box-shadow:0 25px 70px rgba(0,0,0,.22)}
  .topbar.open nav a{padding:12px 10px;border-bottom:1px solid color-mix(in srgb,var(--text) 7%,transparent)}
  .topbar.open nav a:last-child{border-bottom:0}
}
@media(max-width:680px){
  .topbar{height:68px;padding:0 18px;gap:16px}
  .brand img{width:min(128px,38vw);max-height:46px}
  .menu-btn{padding:8px;margin-right:-8px}
  .section{padding:68px 18px}
  .hero{padding-top:54px;gap:34px}
  .hero h1{font-size:clamp(42px,12vw,58px);line-height:1.01;letter-spacing:-.045em}
  .section h2{font-size:clamp(36px,10vw,48px);line-height:1.02}
  .lead,.custom-copy>p,.future-copy p,.contact-copy p{font-size:17px;line-height:1.6}
  .eyebrow{font-size:10px;letter-spacing:.15em}
  .actions{gap:10px;margin-top:26px}.pill,.ghost{min-height:48px;padding:0 18px;font-size:13px}
  .hero-words{margin-top:28px;gap:7px}.hero-words span{font-size:9px;padding:6px 9px}

  /* En móvil el ecosistema deja de usar nodos absolutos: nada sale de la pantalla. */
  .orbit-wrap{min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:4px 0 0;place-items:stretch}
  .orbit-wrap .orbit{display:none}
  .mory-core{position:relative;grid-column:1/-1;width:142px;height:142px;margin:0 auto 12px}
  .mory-core img{width:42px}.mory-core strong{font-size:19px}.mory-core small{font-size:12px}
  .orbit-node{position:relative;left:auto;top:auto;transform:none!important;width:100%;min-height:72px;padding:12px 8px;display:flex;flex-direction:column;justify-content:center;border-radius:18px}
  .orbit-node b{font-size:12px}.orbit-node small{font-size:8px;margin-top:3px}

  .split{gap:34px}.why-copy{font-size:17px}blockquote{margin:26px 0;padding:22px 0 22px 20px;font-size:27px}
  .sequence{gap:8px}.sequence span{padding:9px 13px;font-size:13px}.sequence b{font-size:12px}
  .section-head.wide,.section-head.center{margin-bottom:34px}.section-head p{font-size:16px}
  .project-grid{gap:16px}.project-card{border-radius:22px}.project-image{aspect-ratio:16/10}.project-body{padding:20px}
  .project-meta{font-size:10px;gap:8px}.project-title h3{font-size:28px}.project-body p{font-size:15px}.project-brandmark{height:34px}.project-brandmark img{max-height:34px}

  .network-section{overflow:visible}
  .network{height:auto;max-width:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;background:none}
  .network:before,.network:after{display:none}
  .network-core{position:relative;left:auto;top:auto;transform:none;grid-column:1/-1;width:136px;height:136px;margin:0 auto 14px;font-size:22px}
  .network-item,.n1,.n2,.n3,.n4,.n5,.n6{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:100%;min-height:74px;padding:12px 8px;display:flex;flex-direction:column;justify-content:center}
  .network-item strong{font-size:9px}.network-item span{font-size:13px}

  .case-card{margin-top:30px;padding:24px 20px;gap:10px}.case-card h3{font-size:38px}.case-card p{font-size:16px}.hat-visual{min-height:190px}.hat-visual svg{max-width:230px}
  .custom-cta{padding:22px 20px}.custom-cta h3{font-size:22px}
  .step,.principle{min-height:0;padding:22px}.ico{margin:22px 0 16px}.step h3,.principle h3{font-size:24px}
  .work-shot{border-radius:20px}.work-shot span{padding:14px 15px;align-items:flex-start;flex-direction:column;gap:2px}
  .formula{min-height:260px;border-radius:28px}.formula strong{font-size:48px}.formula b{font-size:70px}.formula span{font-size:17px}
  .idea-form{padding:20px;border-radius:22px}
  footer{gap:16px}.foot-brand img{width:100px}
  .project-hero{padding-top:52px}.project-hero h1{font-size:clamp(48px,14vw,64px)}.project-page-logo{max-width:210px;max-height:70px}.project-detail li{font-size:16px;padding:16px 0}
}
@media(max-width:390px){
  .section{padding-left:15px;padding-right:15px}
  .topbar{padding-left:15px;padding-right:15px}
  .hero h1{font-size:40px}
  .orbit-wrap,.network{gap:8px}
  .orbit-node,.network-item{padding-left:6px;padding-right:6px}
}
