
:root{
  /* MODU PROJECT — approved identity colours (single CSS source of truth). */
  --modu-brand-blue:#2E7BB5;
  --modu-project-blue:#1F3D5F;

  /* Logo-safe surfaces. The original two-colour logo must remain readable here. */
  --modu-logo-safe-bg:#FFFDF8;
  --modu-logo-safe-surface:rgba(255,253,248,.96);
  --modu-logo-safe-border:rgba(31,61,95,.12);
  --modu-logo-safe-shadow:0 18px 50px rgba(31,61,95,.15);

  /* Functional UI colours — deliberately distinct from identity colours. */
  --modu-ui-navy:var(--modu-project-blue);
  --modu-ui-deep:color-mix(in srgb,var(--modu-project-blue) 72%,#000);
  --modu-ui-deep-alt:color-mix(in srgb,var(--modu-project-blue) 84%,#000);

  /* Semantic roles. Identity colours are now the default for visible brand accents/text. */
  --color-brand-primary:var(--modu-brand-blue);
  --color-brand-secondary:var(--modu-project-blue);
  --color-heading:var(--modu-project-blue);

  /* Functional legacy darks remain for depth/backgrounds; blue alias now resolves to official MODU blue. */
  --navy:var(--modu-project-blue);
  --navy-2:var(--modu-ui-deep-alt);
  --blue:var(--modu-brand-blue);
  --blue-2:#45A3E5;
  --blue-soft:#8BC5F1;
  --cream:#F7F4EF;
  --paper:#FFFDF8;
  --sand:#E8DED2;
  --ink:var(--modu-project-blue);
  --text:#263646;
  --muted:#607489;
  --line:rgba(31,61,95,.14);
  --line-soft:rgba(31,61,95,.08);
  --white:rgba(255,255,255,.92);
  --shadow:0 30px 90px rgba(31,61,95,.14);
  --shadow-soft:0 18px 55px rgba(31,61,95,.09);
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--cream);
  color:var(--ink);
  font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img{max-width:100%;display:block}
a{color:inherit}
.skip-link{
  position:absolute;left:-999px;top:0;background:#fff;color:var(--modu-project-blue);padding:12px;z-index:9999;
}
.skip-link:focus{left:12px;top:12px}
.site-header{
  position:fixed;
  top:34px;
  left:50%;
  transform:translateX(-50%);
  width:min(1580px,calc(100% - 72px));
  z-index:100;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 18px 14px 28px;
  border-radius:999px;
  /* Protected logo surface: page backgrounds, hero media and gradients cannot reduce logo contrast. */
  background:var(--modu-logo-safe-surface);
  border:1px solid var(--modu-logo-safe-border);
  box-shadow:var(--modu-logo-safe-shadow);
  backdrop-filter:blur(18px);
  isolation:isolate;
}
.logo-link{
  display:flex;
  align-items:center;
  text-decoration:none;
  flex:0 0 auto;
}
.logo-link img{
  width:250px;
  height:auto;
  opacity:1;
  mix-blend-mode:normal;
  filter:none;
}
.main-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  flex:1;
}
.main-nav a{
  text-decoration:none;
  color:var(--modu-project-blue);
  font-size:15px;
  font-weight:750;
  padding:13px 15px;
  border-radius:999px;
  transition:background .25s ease,color .25s ease;
}
.main-nav a:hover,
.main-nav a.active{
  background:rgba(46,123,181,.09);
  color:var(--blue);
}
.header-actions{
  display:flex;
  align-items:center;
  gap:14px;
  flex:0 0 auto;
}
.lang-switch{
  display:flex;
  align-items:center;
  gap:4px;
  color:rgba(31,61,95,.48);
  font-weight:800;
  font-size:14px;
}
.lang-switch a{
  text-decoration:none;
  color:rgba(31,61,95,.55);
  padding:7px 2px;
}
.lang-switch a.active{
  color:var(--blue);
}
.header-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  border-radius:999px;
  background:var(--modu-project-blue);
  color:#fff;
  padding:16px 28px;
  font-weight:850;
  font-size:16px;
  box-shadow:0 14px 32px rgba(31,61,95,.20);
}
.menu-toggle{
  display:none;
  width:46px;
  height:46px;
  border:0;
  border-radius:50%;
  background:var(--modu-project-blue);
  color:#fff;
  font-size:22px;
}
.section{
  position:relative;
  overflow:hidden;
  padding:104px 5vw 112px;
  background:
    radial-gradient(circle at 20% 0%, rgba(46,123,181,.10), transparent 34%),
    linear-gradient(180deg,#FBF8F2 0%,#F7F4EF 72%,#F1ECE5 100%);
}
.section:before{
  content:"";
  position:absolute; inset:0;
  background:
    linear-gradient(90deg, rgba(31,61,95,.04) 1px, transparent 1px),
    linear-gradient(0deg, rgba(31,61,95,.025) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(90deg, transparent 0%, black 18%, black 78%, transparent 100%);
  opacity:.32;
  pointer-events:none;
}
.wrap{
  width:min(1480px,100%);
  margin:0 auto;
  position:relative;
  z-index:2;
}
.eyebrow{
  color:var(--blue);
  font-family:Sora,Inter,sans-serif;
  font-size:13px;
  line-height:1;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  margin:0 0 18px;
  display:inline-flex;
  align-items:center;
  gap:12px;
}
.eyebrow:after{
  content:"";
  display:block;
  width:48px;
  height:2px;
  background:var(--blue);
}
h1,h2,h3,h4{
  margin:0;
  font-family:Sora,Inter,sans-serif;
  color:var(--modu-project-blue);
  letter-spacing:-.055em;
}
h1{
  font-size:clamp(58px,7.2vw,116px);
  line-height:.96;
  max-width:850px;
}
h2{
  font-size:clamp(40px,4.8vw,76px);
  line-height:1.02;
}
h1 .blue,h2 .blue, h3 .blue{color:var(--blue)}
p{margin:0}
.lead{
  font-size:clamp(17px,1.25vw,21px);
  line-height:1.58;
  color:#40586E;
}
.lead strong{color:var(--modu-project-blue);font-weight:800}
.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  text-decoration:none;
  border:0;
  cursor:pointer;
  padding:17px 24px;
  border-radius:18px;
  font-weight:800;
  font-size:17px;
  transition:transform .25s ease,box-shadow .25s ease,background .25s ease;
}
.button:hover{transform:translateY(-2px)}
.button-primary{
  background:linear-gradient(135deg,var(--blue),#1D6597);
  color:#fff;
  box-shadow:0 18px 40px rgba(46,123,181,.26);
}
.button-ghost{
  background:transparent;
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.55);
  border-radius:0;
  padding-left:0;
  padding-right:0;
}
.button-light{
  background:#fff;
  color:var(--modu-project-blue);
  border:1px solid rgba(31,61,95,.10);
}

/* HERO — validated direction */
.hero{
  min-height:100vh;
  display:flex;
  align-items:center;
  padding:170px 5vw 72px;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(31,61,95,.70) 0%,rgba(31,61,95,.42) 47%,rgba(31,61,95,.08) 100%),
    url('../img/project-06-logistica-instalacion.png') center/cover no-repeat;
}
.hero .wrap{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(420px,.56fr);
  gap:70px;
  align-items:center;
}
.hero .eyebrow{color:var(--blue-2)}
.hero .eyebrow:after{background:var(--blue-2)}
.hero h1{color:#fff;text-shadow:0 8px 30px rgba(0,0,0,.22)}
.hero-sub{
  margin-top:26px;
  max-width:760px;
  color:#fff;
  font-size:clamp(18px,1.45vw,24px);
  font-weight:700;
  line-height:1.45;
}
.hero-copy{
  margin-top:18px;
  max-width:760px;
  color:rgba(255,255,255,.84);
  font-size:18px;
  line-height:1.58;
}
.hero-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:26px;
  margin-top:34px;
}
.hero-note{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:28px;
  color:rgba(255,255,255,.85);
  font-size:15px;
}
.hero-note span{
  width:23px;height:23px;border-radius:50%;
  display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.50);
  font-size:13px;
}
.hero-panel{
  border-radius:28px;
  padding:32px 34px;
  background:rgba(255,253,248,.88);
  color:var(--modu-project-blue);
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 30px 90px rgba(31,61,95,.22);
  backdrop-filter:blur(14px);
}
.hero-panel h3{
  font-size:24px;
  line-height:1.18;
  letter-spacing:-.035em;
  margin-bottom:18px;
}
.hero-panel > p{
  color:#40586E;
  line-height:1.55;
  padding-top:18px;
  border-top:1px solid rgba(31,61,95,.18);
  margin-bottom:14px;
}
.hero-steps{
  display:grid;
  gap:0;
}
.hero-step{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:18px;
  padding:18px 0;
  border-top:1px solid rgba(31,61,95,.14);
}
.hero-step:first-child{border-top:0}
.hero-step strong{
  font-family:Sora,Inter,sans-serif;
  color:var(--blue);
  font-size:23px;
}
.hero-step b{
  display:block;
  color:var(--modu-project-blue);
  font-size:18px;
  margin-bottom:5px;
}
.hero-step span{
  color:#52687B;
  font-size:14px;
  line-height:1.42;
}

/* approved intro section */
.approved{
  background:
    radial-gradient(circle at 80% 0%, rgba(255,255,255,.90), transparent 34%),
    linear-gradient(180deg,#FFFCF7 0%, #F7F4EF 100%);
}
.approved-layout{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(420px,.72fr);
  gap:58px;
  align-items:start;
}
.approved h2{
  font-size:clamp(44px,5.2vw,78px);
  max-width:900px;
}
.approved-copy{
  margin-top:36px;
  max-width:570px;
  font-size:20px;
  line-height:1.55;
  color:#18354F;
}
.approved-copy strong{color:var(--blue)}
.approved-visual{
  min-height:410px;
  border-radius:34px;
  background:
    linear-gradient(90deg,rgba(255,255,255,.04),rgba(255,255,255,.90)),
    url('../img/project-05-mobiliario-medida.png') center/cover no-repeat;
  box-shadow:var(--shadow-soft);
  border:1px solid rgba(31,61,95,.08);
}
.execution-line{
  margin-top:64px;
  position:relative;
}
.execution-line:before{
  content:"";
  position:absolute;
  left:7%;
  right:7%;
  top:67px;
  height:3px;
  background:var(--blue);
  border-radius:999px;
}
.execution-steps{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:32px;
}
.exec-step{
  text-align:center;
  position:relative;
}
.exec-icon{
  width:78px;height:78px;
  margin:0 auto 20px;
  border-radius:50%;
  background:rgba(255,255,255,.66);
  border:1px solid rgba(31,61,95,.13);
  display:grid;place-items:center;
  color:var(--blue);
  font-family:Sora,Inter,sans-serif;
  font-weight:900;
  box-shadow:0 12px 32px rgba(31,61,95,.08);
}
.exec-dot{
  width:22px;height:22px;border-radius:50%;
  background:var(--blue);
  margin:0 auto 30px;
  position:relative;
  z-index:2;
}
.exec-step h3{
  font-size:15px;
  letter-spacing:.07em;
  text-transform:uppercase;
  margin-bottom:16px;
}
.exec-card{
  text-align:left;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:14px;
  align-items:start;
}
.exec-card .small-icon{
  width:44px;height:44px;border-radius:50%;
  display:grid;place-items:center;
  background:rgba(255,255,255,.64);
  border:1px solid rgba(31,61,95,.10);
  color:var(--blue);
  font-weight:900;
}
.exec-card p{
  color:#203B55;
  font-size:14px;
  line-height:1.5;
}
.approved-bottom{
  margin-top:64px;
  border-radius:24px;
  background:rgba(234,243,250,.72);
  border:1px solid rgba(46,123,181,.11);
  padding:30px 40px;
  display:grid;
  grid-template-columns:160px 1fr;
  gap:28px;
  align-items:center;
}
.approved-bottom img{width:118px}
.approved-bottom p{
  font-family:Sora,Inter,sans-serif;
  font-size:26px;
  line-height:1.25;
  letter-spacing:-.04em;
  font-weight:800;
}
.approved-bottom .blue{color:var(--blue)}

/* Modelo MODU — V6 inspired */
.model-card{
  position:relative;
  border-radius:34px;
  background:rgba(255,253,248,.82);
  border:1px solid rgba(31,61,95,.11);
  box-shadow:var(--shadow);
  backdrop-filter:blur(10px);
  overflow:hidden;
  padding:28px;
}
.model-top{
  display:grid;
  grid-template-columns:minmax(360px,.9fr) minmax(580px,1.35fr);
  gap:48px;
  align-items:end;
  margin-bottom:34px;
}
.model-top h2{font-size:clamp(37px,4.4vw,64px);max-width:780px}
.model-board{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:.82fr 1.55fr;
  gap:22px;
  min-height:540px;
}
.compare{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.mini-title{
  font-family:Sora,Inter,sans-serif;
  font-size:13px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#718498;
  margin-bottom:2px;
}
.factory-box,.modu-note{
  border-radius:24px;
  padding:22px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(31,61,95,.10);
  position:relative;
  overflow:hidden;
}
.factory-box{min-height:215px}
.factory-head{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:16px;
  font-weight:800;
  color:var(--modu-project-blue);
}
.badge-soft{
  height:42px;width:42px;border-radius:14px;
  display:grid;place-items:center;
  background:#EEF3F7;
  color:#607489;
  font-weight:900;
  font-family:Sora,Inter,sans-serif;
  border:1px solid rgba(31,61,95,.08);
}
.factory-question,.modu-question{
  font-family:Sora,Inter,sans-serif;
  line-height:1.08;
  letter-spacing:-.04em;
  margin:0 0 12px;
}
.factory-question{font-size:26px;color:#1D3348}
.factory-copy,.modu-copy{
  margin:0;
  line-height:1.48;
  font-size:15px;
}
.factory-copy{color:#687B8D;max-width:280px}
.limited-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:17px;
  padding:9px 12px;
  border-radius:999px;
  background:#F2EEE8;
  color:#715B45;
  font-size:13px;
  font-weight:700;
}
.modu-note{
  background:linear-gradient(135deg, rgba(31,61,95,.98), rgba(31,61,95,.98));
  color:#fff;
  min-height:242px;
}
.modu-note .mini-title{color:#8AD0FF;margin-bottom:14px}
.modu-question{font-size:30px;color:#fff}
.modu-question span{color:#55B6F1}
.modu-copy{color:rgba(255,255,255,.76);font-size:15.5px}
.quote{
  margin-top:auto;
  border-radius:22px;
  padding:20px;
  background:#fff;
  border:1px solid rgba(31,61,95,.1);
  font-family:Sora,Inter,sans-serif;
  font-weight:800;
  font-size:23px;
  line-height:1.16;
  letter-spacing:-.04em;
  color:var(--modu-project-blue);
}
.quote span{color:var(--blue)}
.stage{
  position:relative;
  border-radius:28px;
  min-height:540px;
  background:
    radial-gradient(circle at 48% 45%, rgba(69,163,229,.18), transparent 27%),
    linear-gradient(135deg, rgba(234,243,250,.92), rgba(255,255,255,.56));
  border:1px solid rgba(46,123,181,.16);
  overflow:hidden;
  padding:26px;
}
.scene-title{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:16px;
  color:var(--modu-project-blue);
}
.scene-title strong{
  font-family:Sora,Inter,sans-serif;
  font-size:15px;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.scene-title small{
  font-weight:800;
  color:var(--blue);
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.need-area{
  position:relative;
  height:145px;
  margin-bottom:6px;
}
.chip{
  position:absolute;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(31,61,95,.12);
  padding:10px 14px;
  box-shadow:0 12px 28px rgba(31,61,95,.08);
  color:#21394F;
  font-weight:800;
  font-size:13px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  transform:translateY(6px) scale(.97);
  opacity:.64;
  animation:chipCycle 8s ease-in-out infinite;
}
.chip em{
  width:8px;height:8px;
  border-radius:50%;
  background:var(--blue);
  display:block;
  box-shadow:0 0 0 5px rgba(46,123,181,.12);
}
.chip.c1{left:2%;top:15%;animation-delay:0s}
.chip.c2{left:31%;top:3%;animation-delay:.15s}
.chip.c3{left:63%;top:18%;animation-delay:.3s}
.chip.c4{left:9%;top:68%;animation-delay:.45s}
.chip.c5{left:42%;top:59%;animation-delay:.6s}
.chip.c6{left:69%;top:70%;animation-delay:.75s}
@keyframes chipCycle{
  0%,14%{opacity:.5;transform:translateY(8px) scale(.96)}
  22%,58%{opacity:1;transform:translateY(0) scale(1)}
  70%,100%{opacity:.62;transform:translateY(4px) scale(.98)}
}
.decision{
  display:grid;
  grid-template-columns:1fr 210px 1fr;
  gap:18px;
  align-items:center;
  margin-top:5px;
}
.route-label{
  font-family:Sora,Inter,sans-serif;
  font-weight:800;
  font-size:14px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#6D7E8E;
  margin-bottom:12px;
}
.route{
  min-height:210px;
  border-radius:22px;
  padding:18px;
  border:1px solid rgba(31,61,95,.09);
  background:rgba(255,255,255,.55);
  position:relative;
  overflow:hidden;
}
.route.modu-route{
  border-color:rgba(46,123,181,.25);
  background:rgba(255,255,255,.72);
  box-shadow:0 18px 40px rgba(46,123,181,.10);
}
.route h3{
  font-size:23px;
  line-height:1.08;
  letter-spacing:-.04em;
  margin:0;
}
.route p{
  font-size:14.5px;
  line-height:1.46;
  margin:10px 0 0;
  color:#64778A;
}
.route-line{
  height:3px;
  background:rgba(31,61,95,.12);
  border-radius:999px;
  margin:12px 0 14px;
  position:relative;
  overflow:hidden;
}
.route-line:after{
  content:"";
  position:absolute;
  left:-45%;
  top:0;
  height:100%;
  width:42%;
  background:linear-gradient(90deg,transparent,var(--blue),transparent);
  animation:lineMove 8s ease-in-out infinite;
}
@keyframes lineMove{0%,15%{left:-45%}38%,62%{left:103%}100%{left:103%}}
.wrong,.right{
  display:inline-flex;
  margin-top:14px;
  border-radius:999px;
  padding:8px 10px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.wrong{background:#F3EDE5;color:#7D6045}
.right{background:#E7F4FC;color:#1C6EA5}
.hub{
  width:210px;height:210px;border-radius:50%;
  position:relative;
  display:grid;place-items:center;
  background:linear-gradient(145deg,#173B5C,var(--modu-ui-deep));
  color:#fff;
  box-shadow:0 25px 70px rgba(31,61,95,.28), inset 0 0 0 1px rgba(255,255,255,.12);
  transform:scale(.98);
  animation:hubPulse 8s ease-in-out infinite;
}
@keyframes hubPulse{
  0%,18%{box-shadow:0 18px 45px rgba(31,61,95,.22), inset 0 0 0 1px rgba(255,255,255,.12)}
  38%,72%{box-shadow:0 30px 85px rgba(46,123,181,.30),0 0 0 12px rgba(46,123,181,.08), inset 0 0 0 1px rgba(255,255,255,.12)}
  100%{box-shadow:0 18px 45px rgba(31,61,95,.22), inset 0 0 0 1px rgba(255,255,255,.12)}
}
.hub:before{
  content:"";
  position:absolute;
  inset:-7px;
  border-radius:50%;
  border:2px solid rgba(46,123,181,.42);
  border-top-color:rgba(255,255,255,.92);
  animation:spin 7s linear infinite;
}
@keyframes spin{to{transform:rotate(360deg)}}
.hub-inner{text-align:center;padding:22px}
.hub-logo{
  font-family:Sora,Inter,sans-serif;
  font-size:36px;
  line-height:.98;
  font-weight:800;
  letter-spacing:-.04em;
}
.hub-logo small{
  display:block;
  font-size:17px;
  letter-spacing:.12em;
  font-weight:600;
  margin-top:7px;
  color:rgba(255,255,255,.82);
}
.hub-copy{
  font-size:12px;
  margin-top:14px;
  text-transform:uppercase;
  letter-spacing:.13em;
  color:#8AD0FF;
  font-weight:800;
}
.specialists{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-top:20px;
}
.spec{
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(31,61,95,.10);
  padding:15px 14px;
  min-height:112px;
  box-shadow:0 14px 30px rgba(31,61,95,.07);
  position:relative;
  overflow:hidden;
}
.spec:before{
  content:"";
  position:absolute;left:0;top:0;right:0;height:4px;background:rgba(46,123,181,.18);
}
.spec-num{
  font-family:Sora,Inter,sans-serif;
  color:var(--blue);
  font-weight:800;
  font-size:13px;
  letter-spacing:.12em;
  margin-bottom:10px;
}
.spec-title{
  font-family:Sora,Inter,sans-serif;
  font-size:17px;
  line-height:1.08;
  letter-spacing:-.03em;
  font-weight:800;
  color:var(--modu-project-blue);
}
.spec-text{
  font-size:13px;
  color:#65798A;
  line-height:1.36;
  margin-top:9px;
}
.bottom-bar{
  margin-top:20px;
  border-radius:24px;
  background:linear-gradient(90deg,var(--modu-ui-deep),var(--modu-project-blue));
  color:#fff;
  display:grid;
  grid-template-columns:1fr auto;
  gap:24px;
  align-items:center;
  padding:23px 26px;
  position:relative;
  overflow:hidden;
}
.bottom-main{
  font-family:Sora,Inter,sans-serif;
  font-weight:800;
  font-size:clamp(22px,2.1vw,32px);
  letter-spacing:-.04em;
  line-height:1.16;
}
.bottom-main span{color:#6CC4FF}
.bottom-tags{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.bottom-tags span{
  font-weight:800;
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  border:1px solid rgba(255,255,255,.18);
  padding:9px 11px;
  border-radius:999px;
  color:rgba(255,255,255,.82);
}

/* common headings */
.section-head{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(340px,.72fr);
  gap:64px;
  align-items:end;
  margin-bottom:48px;
}
.head-rule{
  margin-top:28px;
  height:1px;
  width:100%;
  background:linear-gradient(90deg,var(--blue),rgba(46,123,181,.05));
  position:relative;
}
.head-rule:before{
  content:"";
  position:absolute;left:0;top:50%;
  width:10px;height:10px;border-radius:50%;
  background:var(--blue);
  transform:translateY(-50%);
  box-shadow:0 0 0 8px rgba(46,123,181,.13);
}
.projects-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.project-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:426px;
  border:1px solid var(--line);
  border-radius:24px;
  overflow:hidden;
  background:rgba(255,255,255,.72);
  box-shadow:0 12px 44px rgba(31,61,95,.07);
  isolation:isolate;
  transition:transform .55s cubic-bezier(.2,.8,.2,1), box-shadow .55s cubic-bezier(.2,.8,.2,1), border-color .55s ease;
}
.project-card:hover{
  transform:translateY(-8px);
  box-shadow:var(--shadow);
  border-color:rgba(46,123,181,.35);
}
.media{
  position:relative;
  height:292px;
  overflow:hidden;
  background:#ddd;
}
.media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transform:scale(1.025);
  transition:transform .9s cubic-bezier(.2,.8,.2,1), filter .9s ease;
  filter:saturate(.98) contrast(1.02);
}
.project-card:hover .media img{transform:scale(1.075);filter:saturate(1.04) contrast(1.05)}
.media:after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 42%,rgba(31,61,95,.22) 100%);
  opacity:.65;
}
.tagline{
  position:absolute;
  left:18px;top:18px;
  z-index:2;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 11px;
  border-radius:999px;
  background:rgba(247,244,239,.86);
  backdrop-filter:blur(10px);
  border:1px solid rgba(255,255,255,.55);
  color:var(--modu-project-blue);
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  box-shadow:0 8px 24px rgba(31,61,95,.12);
}
.tagline:before{
  content:"";
  width:7px;height:7px;border-radius:50%;background:var(--blue);
}
.card-body{
  flex:1;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:start;
  gap:16px;
  padding:24px 24px 22px;
}
.num{
  font-family:Sora,Inter,sans-serif;
  font-weight:800;
  font-size:19px;
  letter-spacing:-.03em;
  color:var(--blue);
  padding-top:2px;
  min-width:32px;
}
.body-text h3{
  margin:0 0 7px;
  font-size:22px;
  line-height:1.05;
}
.body-text p{
  color:var(--muted);
  font-size:14.5px;
  line-height:1.5;
}
.card-arrow{
  width:36px;height:36px;border-radius:50%;
  display:grid;place-items:center;
  border:1px solid rgba(46,123,181,.26);
  color:var(--blue);
  font-size:21px;
}
.network-main{
  border:1px solid var(--line);
  border-radius:30px;
  background:rgba(255,255,255,.68);
  box-shadow:var(--shadow);
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0,.86fr) minmax(520px,1.14fr);
}
.network-copy{
  padding:44px;
  border-right:1px solid var(--line);
}
.network-copy h3{
  font-size:clamp(30px,3vw,48px);
  line-height:1.04;
}
.network-copy p{
  margin-top:18px;
  color:var(--muted);
  font-size:16.5px;
  line-height:1.65;
}
.signature{
  margin-top:34px;
  padding:22px 24px;
  border-radius:20px;
  background:linear-gradient(135deg,rgba(31,61,95,.98),rgba(31,61,95,.94));
  color:#fff;
}
.signature small{
  display:block;
  margin-bottom:8px;
  color:var(--blue-soft);
  font-family:Sora,Inter,sans-serif;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-weight:800;
}
.signature strong{
  display:block;
  font-family:Sora,Inter,sans-serif;
  font-size:23px;
  line-height:1.18;
  letter-spacing:-.04em;
}
.network-flow{
  padding:44px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:28px;
  background:radial-gradient(circle at 50% 50%,rgba(46,123,181,.10),transparent 34%);
}
.tri-flow{
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr;
  gap:14px;
}
.tri-card{
  min-height:188px;
  border-radius:24px;
  padding:28px 24px;
  background:rgba(247,244,239,.88);
  border:1px solid rgba(31,61,95,.13);
}
.tri-card.dark{
  background:linear-gradient(145deg,var(--modu-project-blue),var(--modu-project-blue));
  color:#fff;
}
.step-dot{
  width:42px;height:42px;border-radius:50%;
  display:grid;place-items:center;
  font-family:Sora,Inter,sans-serif;
  font-weight:900;font-size:13px;
  color:var(--blue);
  background:rgba(46,123,181,.10);
  border:1px solid rgba(46,123,181,.20);
}
.dark .step-dot{
  color:#fff;
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.16);
}
.tri-card h4{
  font-size:21px;
  line-height:1.08;
  margin:18px 0 8px;
}
.tri-card.dark h4{color:#fff}
.tri-card p{
  color:var(--muted);
  font-size:14px;
  line-height:1.46;
}
.tri-card.dark p{color:rgba(255,255,255,.74)}
.arrow-dot{
  align-self:center;
  width:34px;height:34px;border-radius:50%;
  display:grid;place-items:center;
  color:var(--blue);
  border:1px solid rgba(46,123,181,.22);
  background:rgba(255,255,255,.52);
  font-weight:900;
}
.partner-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:center;
  padding:22px;
  border-radius:22px;
  background:rgba(255,255,255,.58);
  border:1px solid rgba(31,61,95,.11);
}
.partner-tags span{
  padding:10px 13px;
  border-radius:999px;
  background:rgba(46,123,181,.08);
  color:var(--modu-project-blue);
  font-weight:750;
  font-size:13px;
  border:1px solid rgba(46,123,181,.10);
}
.flow-board{
  border:1px solid var(--line);
  border-radius:30px;
  background:rgba(255,255,255,.66);
  box-shadow:var(--shadow);
  padding:28px;
}
.steps{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
}
.step-card{
  min-height:342px;
  border:1px solid rgba(31,61,95,.12);
  border-radius:24px;
  background:rgba(247,244,239,.84);
  padding:24px 22px 22px;
  box-shadow:0 12px 38px rgba(31,61,95,.065);
  display:flex;
  flex-direction:column;
}
.step-card.is-active{
  background:linear-gradient(145deg,var(--modu-project-blue),var(--modu-project-blue));
  color:#fff;
  box-shadow:0 22px 62px rgba(31,61,95,.22);
}
.step-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:26px;
}
.step-num{
  width:52px;height:52px;border-radius:50%;
  display:grid;place-items:center;
  font-family:Sora,Inter,sans-serif;
  font-weight:900;
  font-size:14px;
  color:var(--blue);
  background:rgba(46,123,181,.10);
  border:1px solid rgba(46,123,181,.22);
}
.is-active .step-num{
  color:#fff;background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.18);
}
.status{
  padding:7px 9px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  color:var(--modu-project-blue);
  background:rgba(46,123,181,.08);
  border:1px solid rgba(46,123,181,.12);
  white-space:nowrap;
}
.is-active .status{
  color:var(--blue-soft);
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.12);
}
.step-card h3{
  font-size:22px;
  line-height:1.07;
  margin-bottom:12px;
}
.step-card.is-active h3{color:#fff}
.step-card p{
  margin-bottom:20px;
  color:var(--muted);
  font-size:14.5px;
  line-height:1.55;
}
.step-card.is-active p{color:rgba(255,255,255,.76)}
.step-card ul{
  margin:auto 0 0;
  padding:18px 0 0;
  list-style:none;
  border-top:1px solid rgba(31,61,95,.10);
  display:grid;
  gap:9px;
}
.step-card.is-active ul{border-top-color:rgba(255,255,255,.12)}
.step-card li{
  position:relative;
  padding-left:17px;
  color:var(--muted);
  font-size:13.2px;
  line-height:1.34;
  font-weight:650;
}
.step-card.is-active li{color:rgba(255,255,255,.80)}
.step-card li:before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:6px;height:6px;border-radius:50%;
  background:var(--blue);
  transform:translateY(-50%);
}
.contact-shell{
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(560px,1.08fr);
  gap:28px;
}
.contact-copy{
  border-radius:32px;
  background:linear-gradient(145deg,var(--modu-project-blue),var(--modu-project-blue));
  color:#fff;
  padding:48px;
  min-height:640px;
  box-shadow:var(--shadow);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.contact-copy h2{color:#fff}
.contact-copy h2 .blue{color:var(--blue-soft)}
.contact-copy .eyebrow{color:var(--blue-soft)}
.contact-copy .eyebrow:after{background:var(--blue-soft)}
.contact-copy .lead{
  margin-top:26px;
  color:rgba(255,255,255,.78);
}
.contact-copy .lead strong{color:#fff}
.help-list{
  margin:34px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:14px;
}
.help-list li{
  display:flex;
  gap:13px;
  align-items:flex-start;
  color:rgba(255,255,255,.78);
  font-size:15px;
  line-height:1.45;
}
.help-list li:before{
  content:"";
  width:9px;height:9px;border-radius:50%;
  background:var(--blue-soft);
  flex:0 0 auto;
  margin-top:.48em;
  box-shadow:0 0 0 7px rgba(139,197,241,.11);
}
.briefing-card{
  border-radius:32px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.74);
  box-shadow:0 18px 58px rgba(31,61,95,.09);
  padding:34px;
}
.form-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  margin-bottom:28px;
  padding-bottom:24px;
  border-bottom:1px solid var(--line);
}
.form-head h3{
  font-size:clamp(28px,2.7vw,42px);
  line-height:1.05;
}
.form-head p{
  margin-top:10px;
  color:var(--muted);
  font-size:15.5px;
  line-height:1.55;
}
form{display:grid;gap:16px}
.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.field{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.field.full{grid-column:1/-1}
label{
  color:var(--modu-project-blue);
  font-weight:800;
  font-size:13px;
}
input,select,textarea{
  width:100%;
  appearance:none;
  border:1px solid rgba(31,61,95,.15);
  border-radius:16px;
  background:rgba(247,244,239,.76);
  color:var(--text);
  font:inherit;
  font-size:14.5px;
  padding:15px;
  outline:none;
}
textarea{
  min-height:122px;
  resize:vertical;
  line-height:1.5;
}
.radio-row{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
.radio-card input{
  position:absolute;
  opacity:0;
}
.radio-card span{
  display:flex;
  min-height:52px;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:12px 10px;
  border-radius:16px;
  border:1px solid rgba(31,61,95,.15);
  background:rgba(247,244,239,.76);
  color:var(--muted);
  font-weight:800;
  font-size:13.5px;
  cursor:pointer;
}
.radio-card input:checked + span{
  border-color:rgba(46,123,181,.50);
  background:rgba(46,123,181,.10);
  color:var(--modu-project-blue);
}
.file-drop{
  border:1px dashed rgba(46,123,181,.32);
  border-radius:18px;
  padding:18px;
  background:rgba(46,123,181,.045);
  color:var(--muted);
  font-size:13.5px;
  line-height:1.45;
}
.submit-row{
  margin-top:8px;
  display:flex;
  align-items:center;
  gap:16px;
  justify-content:space-between;
  padding-top:22px;
  border-top:1px solid var(--line);
}
.submit-note{
  color:var(--muted);
  font-size:12.5px;
  line-height:1.45;
  max-width:390px;
}

/* multipage */
.page-hero{
  padding:170px 5vw 84px;
  background:
    radial-gradient(circle at 80% 0%, rgba(255,255,255,.78), transparent 34%),
    linear-gradient(180deg,#FFFCF7 0%,#F7F4EF 100%);
}
.page-hero .wrap{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(420px,.72fr);
  gap:64px;
  align-items:end;
}
.page-hero .lead{margin-top:24px;max-width:780px}
.split-image{
  border-radius:30px;
  overflow:hidden;
  box-shadow:var(--shadow);
  border:1px solid var(--line);
  min-height:420px;
}
.split-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.feature-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.feature-card{
  border:1px solid var(--line);
  border-radius:24px;
  background:rgba(255,255,255,.68);
  box-shadow:0 12px 44px rgba(31,61,95,.07);
  padding:30px;
}
.feature-card h3{
  font-size:25px;
  line-height:1.08;
  margin-bottom:14px;
}
.feature-card p{
  color:var(--muted);
  font-size:15px;
  line-height:1.56;
}
.dark-band{
  border-radius:30px;
  background:linear-gradient(135deg,rgba(31,61,95,.98),rgba(31,61,95,.94));
  color:#fff;
  padding:44px;
  box-shadow:var(--shadow);
}
.dark-band h2,.dark-band h3{color:#fff}
.dark-band p{
  margin-top:18px;
  color:rgba(255,255,255,.74);
  font-size:16px;
  line-height:1.6;
}

/* Footer */
.site-footer{
  position:relative;
  overflow:hidden;
  padding:84px 5vw 34px;
  background:
    radial-gradient(circle at 14% 0%, rgba(46,123,181,.22), transparent 34%),
    linear-gradient(145deg,var(--modu-project-blue) 0%,var(--modu-project-blue) 100%);
  color:#fff;
}
.site-footer:before{
  content:"";
  position:absolute; inset:0;
  pointer-events:none;
  opacity:.18;
  background-image:
    linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size:64px 64px;
  mask-image:linear-gradient(to bottom,#000 0%,#000 70%,transparent 100%);
}
.footer-inner{
  width:min(1480px,100%);
  margin:0 auto;
  position:relative;
  z-index:1;
}
.footer-top{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(520px,.92fr);
  gap:70px;
  align-items:start;
  padding-bottom:54px;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.brand-logo-wrap{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 18px;
  border-radius:22px;
  background:rgba(247,244,239,.96);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 18px 40px rgba(0,0,0,.18);
  margin-bottom:28px;
}
.brand-logo-wrap img{
  width:min(100%,330px);
  height:auto;
}
.footer-claim{
  font-size:clamp(38px,4.6vw,72px);
  line-height:.99;
  letter-spacing:-.06em;
  color:#fff;
  max-width:880px;
}
.footer-claim .blue{color:var(--blue-soft)}
.footer-description{
  margin:26px 0 0;
  color:rgba(255,255,255,.72);
  font-size:clamp(16px,1.25vw,20px);
  line-height:1.62;
  max-width:740px;
}
.footer-description strong{color:#fff}
.footer-cta{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:34px;
}
.footer-columns{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:36px;
}
.footer-col h3{
  margin:0 0 18px;
  color:#fff;
  font-size:16px;
}
.footer-col ul{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:12px;
}
.footer-col a,.footer-col span{
  color:rgba(255,255,255,.68);
  text-decoration:none;
  font-size:14.5px;
  line-height:1.35;
}
.contact-card{
  grid-column:1/-1;
  border:1px solid rgba(255,255,255,.12);
  border-radius:22px;
  background:rgba(255,255,255,.07);
  padding:24px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:24px;
  align-items:center;
  margin-top:4px;
}
.contact-card small{
  display:block;
  margin-bottom:8px;
  color:var(--blue-soft);
  font-family:Sora,Inter,sans-serif;
  font-size:12px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.contact-card strong{
  display:block;
  color:#fff;
  font-family:Sora,Inter,sans-serif;
  font-size:24px;
  letter-spacing:-.045em;
  line-height:1.1;
}
.contact-card a{
  color:#fff;
  text-decoration:none;
}
.contact-note{
  margin:8px 0 0;
  color:rgba(255,255,255,.58);
  font-size:13.5px;
  line-height:1.42;
}
.contact-dot{
  width:52px;height:52px;border-radius:50%;
  background:rgba(139,197,241,.11);
  border:1px solid rgba(139,197,241,.22);
  display:grid;place-items:center;
  color:var(--blue-soft);
  font-size:23px;
  font-weight:900;
}
.footer-middle{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1px;
  margin-top:28px;
  overflow:hidden;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.08);
}
.proof{
  background:rgba(255,255,255,.045);
  padding:22px 24px;
  min-height:116px;
}
.proof small{
  display:block;
  color:var(--blue-soft);
  font-family:Sora,Inter,sans-serif;
  font-size:12px;
  font-weight:900;
  margin-bottom:9px;
}
.proof strong{
  display:block;
  color:#fff;
  font-size:15px;
  line-height:1.35;
}
.footer-bottom{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  padding-top:28px;
  color:rgba(255,255,255,.52);
  font-size:13px;
  line-height:1.4;
}
.legal-links{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
}
.legal-links a{
  color:rgba(255,255,255,.52);
  text-decoration:none;
}
.legal-content{
  border:1px solid var(--line);
  border-radius:30px;
  background:rgba(255,255,255,.70);
  box-shadow:var(--shadow);
  padding:42px;
}
.legal-content h2{
  font-size:34px;
  margin-top:32px;
  margin-bottom:14px;
}
.legal-content h2:first-child{margin-top:0}
.legal-content p,.legal-content li{
  color:var(--muted);
  font-size:15.5px;
  line-height:1.68;
}

/* animation */
.reveal{
  opacity:0;
  transform:translateY(22px);
  transition:opacity .75s ease, transform .75s cubic-bezier(.2,.8,.2,1);
}
.reveal.visible{
  opacity:1;
  transform:none;
}

/* Responsive */
@media(max-width:1240px){
  .site-header{
    width:calc(100% - 36px);
    top:18px;
  }
  .logo-link img{width:220px}
  .main-nav a{padding:11px 10px;font-size:14px}
  .hero .wrap,.approved-layout,.model-top,.section-head,.page-hero .wrap,.contact-shell,.footer-top{
    grid-template-columns:1fr;
    gap:34px;
  }
  .model-board,.network-main{
    grid-template-columns:1fr;
  }
  .network-copy{border-right:0;border-bottom:1px solid var(--line)}
  .decision{grid-template-columns:1fr}
  .hub{margin:0 auto}
  .specialists{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(2,1fr)}
  .step-card.is-active{grid-column:span 2}
}
@media(max-width:940px){
  .site-header{
    align-items:center;
    padding:10px 10px 10px 16px;
    border-radius:28px;
  }
  .logo-link img{width:200px}
  .menu-toggle{display:grid;place-items:center}
  .main-nav{
    display:none;
    position:absolute;
    left:10px;
    right:10px;
    top:72px;
    padding:12px;
    border-radius:22px;
    background:rgba(255,253,248,.97);
    border:1px solid var(--line);
    box-shadow:var(--shadow);
  }
  .main-nav.open{
    display:grid;
  }
  .main-nav a{display:block}
  .header-actions .header-cta{display:none}
  .lang-switch{
    display:none;
    position:absolute;
    left:22px;
    top:calc(72px + 280px);
    z-index:101;
    background:#fff;
    padding:10px;
    border-radius:999px;
    box-shadow:0 12px 30px rgba(31,61,95,.14);
  }
  .lang-switch.open{display:flex}
  .hero{
    padding:142px 22px 72px;
    min-height:900px;
  }
  .section,.page-hero{
    padding:76px 22px 82px;
  }
  h1{font-size:52px;line-height:1}
  h2{font-size:42px;line-height:1.03}
  .hero-panel{padding:24px}
  .execution-steps,.projects-grid,.feature-grid,.footer-middle,.footer-columns,.form-grid,.radio-row{
    grid-template-columns:1fr;
  }
  .execution-line:before{display:none}
  .exec-dot{display:none}
  .approved-bottom{
    grid-template-columns:1fr;
    padding:24px;
  }
  .model-card,.stage,.network-copy,.network-flow,.flow-board,.contact-copy,.briefing-card{
    padding:22px;
    border-radius:24px;
  }
  .tri-flow{
    grid-template-columns:1fr;
  }
  .arrow-dot{
    justify-self:center;
    transform:rotate(90deg);
  }
  .steps{grid-template-columns:1fr}
  .step-card.is-active{grid-column:auto}
  .step-card{min-height:0}
  .project-card{min-height:0}
  .media{height:248px}
  .card-body{grid-template-columns:1fr auto}
  .num{grid-column:1/-1}
  .submit-row{display:grid}
  .button{width:100%}
  .footer-bottom{display:grid}
}
@media(max-width:680px){
  .logo-link img{width:172px}
  h1{font-size:44px}
  .hero-copy{font-size:16px}
  .hero-actions{gap:12px}
  .need-area{height:235px}
  .chip{font-size:12px;padding:9px 11px}
  .chip.c1{left:0;top:5%}.chip.c2{left:40%;top:3%}.chip.c3{left:8%;top:33%}.chip.c4{left:51%;top:35%}.chip.c5{left:0;top:66%}.chip.c6{left:48%;top:68%}
  .specialists{grid-template-columns:1fr}
  .bottom-bar{grid-template-columns:1fr}
  .bottom-tags{justify-content:flex-start}
}


/* WordPress dynamic menus - MODU v0.3 */
.main-nav ul,
.footer-primary-menu,
.footer-legal-menu{
  list-style:none;
  margin:0;
  padding:0;
}
.main-nav ul{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.main-nav li{margin:0;padding:0;}
.main-nav li.current-menu-item > a,
.main-nav li.current_page_item > a{
  background:rgba(46,123,181,.09);
  color:var(--blue);
}
.footer-primary-menu{
  display:grid;
  gap:12px;
}
.footer-primary-menu a{
  color:rgba(255,255,255,.68);
  text-decoration:none;
  font-size:14.5px;
  line-height:1.35;
}
.footer-legal-menu{
  display:flex;
  flex-wrap:wrap;
  gap:18px;
}
.footer-legal-menu a{
  color:rgba(255,255,255,.52);
  text-decoration:none;
}
@media(max-width:940px){
  .main-nav.open ul{
    display:grid;
    gap:4px;
    justify-content:stretch;
  }
  .main-nav.open a{
    width:100%;
  }
}


/* MODU v0.6 — Advanced editable Hero controls */
.hero-height-compact{min-height:620px;}
.hero-height-standard{min-height:760px;}
.hero-height-large{min-height:880px;}
.hero-height-full{min-height:100vh;}

.hero-align-center .wrap{
  grid-template-columns:1fr;
  text-align:center;
}
.hero-align-center .hero-content{
  max-width:950px;
  margin:0 auto;
}
.hero-align-center .hero-actions,
.hero-align-center .hero-note{
  justify-content:center;
}
.hero-align-center .hero-panel{
  margin:36px auto 0;
  max-width:680px;
}

.hero-layout-centered .wrap{
  grid-template-columns:1fr;
}
.hero-layout-centered .hero-panel{
  display:none;
}
.hero-layout-split .wrap{
  grid-template-columns:minmax(0, .9fr) minmax(360px, .8fr);
}
.hero-layout-split .hero-panel{
  align-self:end;
}

.button-secondary-style-light{
  background:rgba(255,255,255,.88);
  color:var(--modu-project-blue);
  border:1px solid rgba(255,255,255,.7);
}
.button-secondary-style-link{
  background:transparent;
  border:0;
  color:#fff;
  box-shadow:none;
  padding-left:0;
  padding-right:0;
}
.button-secondary-style-link:after{
  content:"";
  display:block;
  height:1px;
  background:rgba(255,255,255,.55);
  margin-top:8px;
}

.hero-panel-style-solid{
  background:#fff;
}
.hero-panel-style-dark{
  background:rgba(31,61,95,.92);
  color:#fff;
  border-color:rgba(255,255,255,.14);
}
.hero-panel-style-dark h3,
.hero-panel-style-dark p,
.hero-panel-style-dark b,
.hero-panel-style-dark span{
  color:#fff;
}
.hero-panel-style-dark .hero-step{
  border-top-color:rgba(255,255,255,.16);
}

.hero-panel-animated{
  opacity:0;
  transition-property:opacity, transform;
  transition-timing-function:cubic-bezier(.22,.8,.22,1);
  will-change:opacity, transform;
}
.hero-panel-from_right{transform:translateX(72px);}
.hero-panel-from_bottom{transform:translateY(46px);}
.hero-panel-fade{transform:none;}
.hero-panel-animated.is-visible{
  opacity:1;
  transform:translate(0,0);
}

@media(max-width:940px){
  .hero-height-full,
  .hero-height-large,
  .hero-height-standard,
  .hero-height-compact{
    min-height:auto;
  }
  .hero-layout-split .wrap,
  .hero-align-center .wrap{
    grid-template-columns:1fr;
  }
  .hero-align-center,
  .hero-align-center .wrap{
    text-align:left;
  }
  .hero-align-center .hero-actions,
  .hero-align-center .hero-note{
    justify-content:flex-start;
  }
}




/* MODU v0.7.2 — Base support for approved advanced Hero */
body.home .site-main,
body.home main{padding:0;}

.hero-only{
  /* MODU v0.7.91 — approved Hero design tokens; no ACF geometry controls */
  --hero-eyebrow-size:.8rem;
  --hero-eyebrow-color:#D8C4AA;
  --hero-title-size:clamp(3.6rem, 6.6vw, 7.4rem);
  --hero-title-weight:600;
  --hero-title-color:#ffffff;
  --hero-subtitle-size:1.42rem;
  --hero-subtitle-color:#F7F4EF;
  --hero-text-size:1.08rem;
  --hero-text-color:#F7F4EF;
  --hero-primary-bg:#2E7BB5;
  --hero-primary-color:#ffffff;
  --hero-secondary-bg:transparent;
  --hero-secondary-color:#ffffff;
  --hero-secondary-border:#ffffff;
  --hero-note-color:#F7F4EF;
  --panel-title-size:1.35rem;
  --panel-text-size:.98rem;
  --panel-title-color:#1F3D5F;
  --panel-text-color:#667789;
  --step-number-size:.86rem;
  --step-title-size:.95rem;
  --step-text-size:.86rem;
  --step-number-color:#2E7BB5;
  --step-title-color:#1F3D5F;
  --step-text-color:#667789;
  --step-glow-color:#2E7BB5;
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  min-height:100vh;
}
.hero-only .hero-media-layer,
.hero-only .hero-video-wrap,
.hero-only .hero-image-fallback{
  position:absolute;
  inset:0;
}
.hero-only .hero-media-layer{z-index:1;}
.hero-only .hero-video-wrap,
.hero-only .hero-image-fallback{z-index:0;}
.hero-only .hero-image-fallback{
  background-size:cover;
  background-repeat:no-repeat;
}
.hero-video{
  width:100%;
  height:100%;
  object-fit:cover;
}
.hero-wrap-only{
  position:relative;
  z-index:2;
}
.hero.hero-only .wrap{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(330px,430px);
  gap:48px;
  align-items:center;
}
.hero-height-compact{min-height:620px;}
.hero-height-standard{min-height:760px;}
.hero-height-large{min-height:880px;}
.hero-height-full{min-height:100vh;}

.hero-vertical-top{align-items:flex-start;padding-top:150px;}
.hero-vertical-center{align-items:center;}
.hero-vertical-bottom{align-items:flex-end;padding-bottom:95px;}

.hero-content-width-narrow .hero-content{max-width:620px;}
.hero-content-width-normal .hero-content{max-width:760px;}
.hero-content-width-wide .hero-content{max-width:900px;}

.hero-panel-width-small .wrap{grid-template-columns:minmax(0,1fr) minmax(300px,360px);}
.hero-panel-width-medium .wrap{grid-template-columns:minmax(0,1fr) minmax(330px,430px);}
.hero-panel-width-large .wrap{grid-template-columns:minmax(0,1fr) minmax(390px,520px);}

.hero-gap-tight .wrap{gap:28px;}
.hero-gap-normal .wrap{gap:48px;}
.hero-gap-wide .wrap{gap:76px;}

.hero-align-center .wrap{grid-template-columns:1fr;text-align:center;}
.hero-align-center .hero-content{margin:0 auto;}
.hero-align-center .hero-actions,
.hero-align-center .hero-note{justify-content:center;}
.hero-align-center .hero-panel{margin:32px auto 0;max-width:680px;}

.hero-only .eyebrow{
  font-size:var(--hero-eyebrow-size);
  color:var(--hero-eyebrow-color);
}
.hero-only h1{
  font-size:var(--hero-title-size);
  font-weight:var(--hero-title-weight);
  color:var(--hero-title-color);
}
.hero-only .hero-sub{
  font-size:var(--hero-subtitle-size);
  color:var(--hero-subtitle-color);
}
.hero-only .hero-copy{
  font-size:var(--hero-text-size);
  color:var(--hero-text-color);
}
.hero-button-size-small .button{padding:12px 18px;font-size:.9rem;}
.hero-button-size-medium .button{padding:15px 22px;font-size:.96rem;}
.hero-button-size-large .button{padding:18px 28px;font-size:1.05rem;}
.hero-button-radius-soft .button{border-radius:14px;}
.hero-button-radius-pill .button{border-radius:999px;}
.hero-button-radius-square .button{border-radius:4px;}
.hero-only .button-primary{
  background:var(--hero-primary-bg);
  color:var(--hero-primary-color);
}
.hero-only .button-primary:hover{filter:brightness(1.06);}
.hero-only .button-ghost,
.hero-only .button-secondary-style-ghost,
.hero-only .button-secondary-style-light,
.hero-only .button-secondary-style-link{
  color:var(--hero-secondary-color);
  border-color:color-mix(in srgb, var(--hero-secondary-border), transparent 40%);
}
.hero-only .button-secondary-style-ghost{background:var(--hero-secondary-bg);}
.hero-only .button-secondary-style-light{background:color-mix(in srgb, var(--hero-secondary-bg), #ffffff 78%);}
.hero-only .button-secondary-style-link{
  background:transparent;
  border:0;
  box-shadow:none;
  padding-left:0;
  padding-right:0;
}
.hero-only .hero-note{color:var(--hero-note-color);}
.hero-panel-padding-compact{padding:24px;}
.hero-panel-padding-normal{padding:34px;}
.hero-panel-padding-large{padding:44px;}
.hero-panel-radius-soft{border-radius:18px;}
.hero-panel-radius-large{border-radius:30px;}
.hero-panel-radius-square{border-radius:4px;}
.hero-panel h3{
  font-size:var(--panel-title-size);
  color:var(--panel-title-color);
}
.hero-panel > p{
  font-size:var(--panel-text-size);
  color:var(--panel-text-color);
}
.hero-panel .hero-step strong{
  font-size:var(--step-number-size);
  color:var(--step-number-color);
  width:46px;
  height:46px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#f1f5fb;
  transition:all .35s ease;
}
.hero-panel .hero-step b{
  font-size:var(--step-title-size);
  color:var(--step-title-color);
}
.hero-panel .hero-step span{
  font-size:var(--step-text-size);
  color:var(--step-text-color);
}
.hero-panel .hero-step b,
.hero-panel .hero-step span{transition:color .35s ease, opacity .35s ease;}
.hero-panel-style-dark h3,
.hero-panel-style-dark > p,
.hero-panel-style-dark .hero-step b,
.hero-panel-style-dark .hero-step span{color:#fff;}
.hero-panel-style-dark .hero-step strong{background:rgba(255,255,255,.08);color:#fff;}
.hero-panel.hero-steps-glow-number .hero-step.active strong,
.hero-panel.hero-steps-glow-all .hero-step.active strong{
  color:#fff;
  background:var(--step-glow-color);
  box-shadow:0 0 0 8px color-mix(in srgb, var(--step-glow-color), transparent 84%),
             0 0 20px color-mix(in srgb, var(--step-glow-color), transparent 68%);
}
.hero-panel.hero-steps-glow-all .hero-step.active b,
.hero-panel.hero-steps-glow-all .hero-step.active span{color:var(--step-glow-color);}
.hero-panel-style-dark.hero-steps-glow-all .hero-step.active b,
.hero-panel-style-dark.hero-steps-glow-all .hero-step.active span{color:#fff;}
.hero-panel-animated{
  opacity:0;
  transition-property:opacity, transform;
  transition-timing-function:cubic-bezier(.22,.8,.22,1);
  will-change:opacity, transform;
}
.hero-panel-from_right{transform:translateX(72px);}
.hero-panel-from_bottom{transform:translateY(46px);}
.hero-panel-fade{transform:none;}
.hero-panel-animated.is-visible{
  opacity:1;
  transform:translate(0,0);
}
@media(max-width:1024px){
  .hero.hero-only .wrap,
  .hero-panel-width-small .wrap,
  .hero-panel-width-medium .wrap,
  .hero-panel-width-large .wrap{grid-template-columns:1fr;}
  .hero-gap-tight .wrap,
  .hero-gap-normal .wrap,
  .hero-gap-wide .wrap{gap:34px;}
}
@media(max-width:768px){
  .hero-height-full,
  .hero-height-large,
  .hero-height-standard,
  .hero-height-compact{min-height:auto;}
  .hero-only{padding:110px 0 70px;}
  .hero-vertical-top,
  .hero-vertical-bottom{align-items:center;padding-top:110px;padding-bottom:70px;}
  .hero-align-center,
  .hero-align-center .wrap{text-align:left;}
  .hero-align-center .hero-actions,
  .hero-align-center .hero-note{justify-content:flex-start;}
}


/* MODU v0.7.91 — Hero approved geometry (single source of truth) */
.hero-only .hero-content{
  transform:none;
  max-width:760px;
}
.hero-only .hero-panel{
  max-width:none;
}
.hero-only .eyebrow{
  transform:none;
  margin-bottom:18px !important;
}
.hero-only h1{
  transform:none;
  margin-bottom:24px !important;
  max-width:none;
}
.hero-only .hero-sub{
  transform:none;
  margin-bottom:20px !important;
  max-width:none;
}
.hero-only .hero-copy{
  transform:none;
  margin-bottom:32px !important;
  max-width:none;
}
.hero-only .hero-actions{
  transform:none;
  gap:12px;
}
.hero-only .hero-note{
  transform:none;
  margin-top:18px !important;
}
.hero-panel h3{
  transform:none;
  margin-bottom:16px !important;
}
.hero-panel > p{
  transform:none;
  margin-bottom:28px !important;
}
.hero-panel .hero-steps{
  transform:none;
  display:flex;
  flex-direction:column;
  gap:16px;
}
.hero-panel .hero-step{margin:0 !important;}

/* MODU v0.7.2 — Hero strategic CTA refinements */
.hero-only .hero-note{
  max-width:520px;
  opacity:.92;
}
.hero-align-center .hero-note{
  margin-left:auto;
  margin-right:auto;
}


/* MODU v0.7.2 — Hero móvil editable */
.hero-mobile-steps-compact{display:none;}
@media(max-width:768px){
  .hero-mobile-eyebrow-hide .eyebrow{display:none !important;}
  .hero-mobile-text-hide .hero-copy{display:none !important;}
  .hero-mobile-note-hide .hero-note{display:none !important;}
  .hero-mobile-panel-hide .hero-panel{display:none !important;}
  .hero-mobile-panel-show .hero-panel{display:block !important;}
  .hero-mobile-padding-compact.hero-only{padding-top:88px !important;padding-bottom:44px !important;}
  .hero-mobile-padding-normal.hero-only{padding-top:104px !important;padding-bottom:62px !important;}
  .hero-mobile-padding-large.hero-only{padding-top:124px !important;padding-bottom:84px !important;}
  .hero-mobile-height-auto{min-height:auto !important;}
  .hero-mobile-height-compact{min-height:680px !important;}
  .hero-mobile-height-full{min-height:100vh !important;}
  .hero-mobile-align-left,.hero-mobile-align-left .wrap,.hero-mobile-align-left .hero-content{text-align:left !important;}
  .hero-mobile-align-left .hero-actions,.hero-mobile-align-left .hero-note{justify-content:flex-start !important;}
  .hero-mobile-align-center,.hero-mobile-align-center .wrap,.hero-mobile-align-center .hero-content{text-align:center !important;}
  .hero-mobile-align-center .hero-actions,.hero-mobile-align-center .hero-note{justify-content:center !important;}
  .hero-mobile-align-center .hero-mobile-steps-compact{margin-left:auto;margin-right:auto;}
  .hero-mobile-title-small h1{font-size:clamp(2.25rem,12vw,3.15rem) !important;}
  .hero-mobile-title-medium h1{font-size:clamp(2.6rem,13vw,3.8rem) !important;}
  .hero-mobile-title-large h1{font-size:clamp(3rem,15vw,4.4rem) !important;}
  .hero-only .hero-sub{font-size:1.08rem !important;}
  .hero-only .hero-copy{font-size:.98rem !important;}
  .hero-mobile-steps-compact{display:flex;flex-direction:column;gap:6px;margin-top:22px;padding:14px 16px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(255,255,255,.08);backdrop-filter:blur(10px);max-width:360px;color:#fff;}
  .hero-mobile-steps-compact span{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;opacity:.72;}
  .hero-mobile-steps-compact strong{font-size:.9rem;line-height:1.4;font-weight:600;}
}


/* MODU v0.7.2 — refinado desktop del Hero */
.hero-only.hero-eyebrow-lines-both .eyebrow:before{
  content:"";
  display:block;
  width:48px;
  height:2px;
  background:var(--hero-eyebrow-color, var(--blue-2));
}
.hero-only.hero-eyebrow-line-right-only .eyebrow:before{display:none;content:none;}
.hero-only .eyebrow{gap:12px;}
.hero-only .eyebrow:after{background:var(--hero-eyebrow-color, var(--blue-2));}

.hero-only .button-primary.button-primary-style-split{
  display:inline-flex;
  align-items:center;
  gap:14px;
  padding:8px 8px 8px 22px;
  border-radius:999px;
  box-shadow:0 20px 42px rgba(46,123,181,.28);
}
.hero-only .button-primary .button-primary-text{
  display:inline-flex;
  align-items:center;
  min-height:42px;
}
.hero-only .button-primary .button-primary-icon{
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.96);
  color:var(--modu-project-blue);
  font-size:18px;
  font-weight:800;
  box-shadow:0 10px 26px rgba(31,61,95,.18);
  transition:transform .25s ease, background .25s ease, color .25s ease;
}
.hero-only .button-primary.button-primary-style-split:hover .button-primary-icon{
  transform:translateX(3px);
}
.hero-only .button-primary.button-primary-style-classic{
  padding-right:22px;
}
.hero-only .button-primary.button-primary-style-classic .button-primary-icon{
  width:auto;
  height:auto;
  background:transparent;
  color:currentColor;
  box-shadow:none;
  border-radius:0;
}

@media(max-width:768px){
  .hero-only.hero-eyebrow-lines-both .eyebrow:before{
    width:28px;
  }
  .hero-only .button-primary.button-primary-style-split{
    padding:7px 7px 7px 18px;
    gap:10px;
  }
  .hero-only .button-primary .button-primary-icon{
    width:38px;
    height:38px;
    font-size:16px;
  }
}


/* MODU v0.7.95 — obsolete pre-final Home MODU FLOW bridge/card variants removed. */

/* MODU v0.7.2 — MODU FLOW refined full-width block */
.home-flow-final{
  /* v0.7.96: stable Home Flow presentation tokens live here; PHP only supplies media. */
  --flow-bg:#F7F4EF;
  --flow-eyebrow-color:var(--modu-brand-blue);
  --flow-title-color:var(--modu-project-blue);
  --flow-text-color:var(--modu-project-blue);
  --flow-accent:var(--modu-brand-blue);
  --flow-card-h:720px;
  --flow-center-size:280px;
  --flow-logo-w:155px;
  --flow-text-x:0px;
  --flow-text-y:0px;
  --flow-visual-x:0px;
  --flow-visual-y:0px;
  --flow-warm:#E9D8B2;
  --flow-warm-2:#F4E6BF;
  --flow-fire:#F29B38;
  --flow-fire-soft:#FFD28E;
  background:var(--flow-bg);
  position:relative;
  overflow:hidden;
  padding:0;
}
.home-flow-padding-compact,.home-flow-padding-normal,.home-flow-padding-large{padding-top:0;padding-bottom:0;}
.home-flow-final .wrap{width:100%;max-width:none;position:relative;z-index:1;}
.home-flow-shell{
  position:relative;
  overflow:hidden;
  width:100%;
  min-height:var(--flow-card-h);
  background:#F3E8CC;
  border:0;
  box-shadow:none;
}
.home-flow-card-bg-cream .home-flow-shell,
.home-flow-card-bg-soft_blue .home-flow-shell{background:#F3E8CC;}
.home-flow-card-radius-soft .home-flow-shell,
.home-flow-card-radius-large .home-flow-shell,
.home-flow-card-radius-xlarge .home-flow-shell{border-radius:0;}
.home-flow-shadow-none .home-flow-shell,
.home-flow-shadow-soft .home-flow-shell,
.home-flow-shadow-strong .home-flow-shell{box-shadow:none;}
.home-flow-bg{
  position:absolute;
  inset:0;
  z-index:0;
  background:#F3E8CC;
}
.home-flow-bg:before{
  content:"";
  position:absolute;
  inset:0 0 0 42%;
  background-image:var(--flow-bg-image);
  background-position:var(--flow-bg-position);
  background-size:cover;
  background-repeat:no-repeat;
  opacity:.34;
  filter:saturate(.55) brightness(1.05);
}
.home-flow-bg:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(243,232,204,1) 0%, rgba(243,232,204,.98) 33%, rgba(243,232,204,.90) 53%, rgba(243,232,204,.56) 78%, rgba(243,232,204,.30) 100%);
}
.home-flow-main{
  position:relative;
  z-index:1;
  min-height:var(--flow-card-h);
  display:grid;
  grid-template-columns:minmax(650px,1.04fr) minmax(620px,.96fr);
  align-items:center;
  justify-content:space-between;
  gap:48px;
  padding:92px clamp(48px,5.3vw,88px) 76px;
}
.home-flow-content{
  max-width:780px;
  transform:translate(var(--flow-text-x), var(--flow-text-y));
  padding-right:18px;
  padding-left:clamp(10px,1vw,20px);
}
.home-flow-eyebrow{
  display:flex;
  align-items:center;
  gap:16px;
  margin:0 0 34px;
  color:var(--flow-eyebrow-color);
  font-family:Sora,Inter,sans-serif;
  font-weight:900;
  letter-spacing:.20em;
  text-transform:uppercase;
  font-size:.86rem;
}
.home-flow-final.has-eyebrow-lines .home-flow-eyebrow:before,
.home-flow-final.has-eyebrow-lines .home-flow-eyebrow:after{
  content:"";
  width:54px;
  height:2px;
  background:currentColor;
}
.home-flow-final h2{
  margin:0;
  max-width:760px;
  color:var(--flow-title-color);
  font-family:Sora,Inter,sans-serif;
  font-size:clamp(3.5rem,4.2vw,5.15rem);
  line-height:1.09;
  letter-spacing:-.072em;
  font-weight:900;
  text-wrap:balance;
}
.home-flow-final h2 span{color:var(--flow-accent);}
.home-flow-text{
  margin:34px 0 0;
  max-width:690px;
  color:var(--flow-text-color);
  font-size:clamp(1.05rem,1.15vw,1.26rem);
  line-height:1.72;
}
.home-flow-text strong{font-weight:900;}
.home-flow-button{
  margin-top:36px;
  display:inline-flex;
  align-items:center;
  gap:24px;
  min-height:62px;
  padding:0 16px 0 28px;
  border-radius:999px;
  background:linear-gradient(135deg,#0872df,var(--flow-accent));
  color:#fff;
  text-decoration:none;
  font-weight:900;
  font-size:1.05rem;
  box-shadow:0 22px 40px rgba(46,123,181,.22), inset 0 1px 0 rgba(255,255,255,.24);
  transition:transform .25s ease, box-shadow .25s ease, filter .25s ease;
}
.home-flow-button i{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.32);font-style:normal;}
.home-flow-final.has-hover .home-flow-button:hover{transform:translateY(-3px);filter:saturate(1.05);box-shadow:0 28px 48px rgba(46,123,181,.30), inset 0 1px 0 rgba(255,255,255,.28);}
.home-flow-visual{position:relative;min-height:650px;width:min(100%,730px);justify-self:end;transform:translate(var(--flow-visual-x), var(--flow-visual-y));}
.flow-orbit,.flow-core-svg,.flow-center,.flow-fuse-runner,.flow-node{position:absolute;}
.flow-orbit{left:50%;top:50%;width:585px;height:585px;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;}
.flow-orbit .ring{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(46,123,181,.20);}
.flow-orbit .ring-2{inset:28px;border-style:dashed;opacity:.78;}
.flow-orbit .ring-3{inset:56px;opacity:.54;}
.flow-orbit .ring-4{inset:84px;border-style:dashed;opacity:.40;}
.home-flow-final.has-ring-motion .ring-1{animation:flowRingRotate 26s linear infinite;}
.home-flow-final.has-ring-motion .ring-2{animation:flowRingRotateReverse 34s linear infinite;}
.home-flow-final.has-ring-motion .ring-4{animation:flowRingRotate 44s linear infinite;}
@keyframes flowRingRotate{to{transform:rotate(360deg);}}
@keyframes flowRingRotateReverse{to{transform:rotate(-360deg);}}
.flow-core-svg{left:50%;top:50%;width:472px;height:472px;transform:translate(-50%,-50%) rotate(180deg);overflow:visible;z-index:2;}
.flow-core-base,.flow-core-progress{fill:none;stroke-linecap:round;stroke-width:18;}
.flow-core-base{stroke:rgba(46,123,181,.80);}
.flow-core-progress{stroke:var(--flow-fire);stroke-dasharray:766.55;stroke-dashoffset:766.55;filter:drop-shadow(0 0 16px rgba(242,155,56,.72)) drop-shadow(0 0 28px rgba(242,155,56,.46));}
.home-flow-final.has-pulse-motion .flow-core-progress{animation:flowRingProgress 11s ease-in-out infinite;}
@keyframes flowRingProgress{0%{stroke-dashoffset:766.55;opacity:1;}52%{stroke-dashoffset:0;opacity:1;}75%{stroke-dashoffset:0;opacity:1;}87%{stroke-dashoffset:0;opacity:1;}100%{stroke-dashoffset:766.55;opacity:0;}}
.flow-fuse-runner{left:50%;top:50%;width:0;height:0;transform:translate(-50%,-50%);z-index:3;}
.flow-fuse-runner:before{content:"";position:absolute;left:-126px;top:-12px;width:24px;height:24px;border-radius:50%;background:radial-gradient(circle at 35% 35%, #fff3d6 0%, #ffd089 18%, #f29b38 52%, #de7c16 100%);box-shadow:0 0 0 10px rgba(242,155,56,.18),0 0 32px rgba(242,155,56,.92),0 0 58px rgba(255,210,142,.92);}
.home-flow-final.has-pulse-motion .flow-fuse-runner{animation:flowFuseMove 11s linear infinite;}
@keyframes flowFuseMove{0%{transform:translate(-50%,-50%) rotate(0deg);opacity:1;}52%{transform:translate(-50%,-50%) rotate(360deg);opacity:1;}53%,100%{transform:translate(-50%,-50%) rotate(360deg);opacity:0;}}
.orbit-dot{position:absolute;width:13px;height:13px;border-radius:50%;background:rgba(46,123,181,.14);border:1px solid rgba(46,123,181,.30);transform:translate(-50%,-50%);}
.orbit-dot-1{left:50%;top:6%;}.orbit-dot-2{left:76%;top:18%;}.orbit-dot-3{left:91%;top:50%;}.orbit-dot-4{left:76%;top:82%;}.orbit-dot-5{left:50%;top:94%;}.orbit-dot-6{left:24%;top:82%;}.orbit-dot-7{left:9%;top:50%;}.orbit-dot-8{left:24%;top:18%;}
.home-flow-final.has-pulse-motion .orbit-dot{animation-duration:11s;animation-timing-function:linear;animation-iteration-count:infinite;}
.orbit-dot-1{animation-name:flowOuterDot1;}.orbit-dot-2{animation-name:flowOuterDot2;}.orbit-dot-3{animation-name:flowOuterDot3;}.orbit-dot-4{animation-name:flowOuterDot4;}.orbit-dot-5{animation-name:flowOuterDot5;}.orbit-dot-6{animation-name:flowOuterDot6;}.orbit-dot-7{animation-name:flowOuterDot7;}.orbit-dot-8{animation-name:flowOuterDot8;}
@keyframes flowOuterDot1{0%,58%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}60%,66%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 18px rgba(242,155,56,.75);transform:translate(-50%,-50%) scale(1.45);}}
@keyframes flowOuterDot2{0%,62%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}64%,70%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 18px rgba(242,155,56,.75);transform:translate(-50%,-50%) scale(1.45);}}
@keyframes flowOuterDot3{0%,66%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}68%,74%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 18px rgba(242,155,56,.75);transform:translate(-50%,-50%) scale(1.45);}}
@keyframes flowOuterDot4{0%,70%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}72%,78%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 18px rgba(242,155,56,.75);transform:translate(-50%,-50%) scale(1.45);}}
@keyframes flowOuterDot5{0%,74%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}76%,82%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 18px rgba(242,155,56,.75);transform:translate(-50%,-50%) scale(1.45);}}
@keyframes flowOuterDot6{0%,78%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}80%,86%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 18px rgba(242,155,56,.75);transform:translate(-50%,-50%) scale(1.45);}}
@keyframes flowOuterDot7{0%,82%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}84%,90%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 18px rgba(242,155,56,.75);transform:translate(-50%,-50%) scale(1.45);}}
@keyframes flowOuterDot8{0%,86%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}88%,94%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 18px rgba(242,155,56,.75);transform:translate(-50%,-50%) scale(1.45);}}
.flow-center{z-index:4;left:50%;top:50%;transform:translate(-50%,-50%);width:var(--flow-center-size);height:var(--flow-center-size);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(255,255,255,.97);border:0;box-shadow:0 22px 54px rgba(31,61,95,.10), inset 0 0 0 2px rgba(46,123,181,.12);}
.flow-center img{display:block;width:var(--flow-logo-w);height:auto;margin-bottom:10px;}
.flow-center strong{font-family:Sora,Inter,sans-serif;font-size:.90rem;font-weight:900;letter-spacing:.035em;color:var(--flow-accent);}
.flow-node{z-index:5;width:170px;min-height:158px;padding:14px 16px 18px;border-radius:18px;background:rgba(255,255,255,.96);border:1px solid rgba(31,61,95,.10);box-shadow:0 18px 38px rgba(31,61,95,.12);text-align:center;color:var(--modu-project-blue);}
.flow-node-top{left:50%;top:50%;transform:translate(-50%,-50%) translate(0,-230px);} .flow-node-left{left:50%;top:50%;transform:translate(-50%,-50%) translate(-220px,0);} .flow-node-right{left:50%;top:50%;transform:translate(-50%,-50%) translate(220px,0);} .flow-node-bottom{left:50%;top:50%;transform:translate(-50%,-50%) translate(0,230px);}
.flow-icon svg,.flow-benefit-icon svg{width:34px;height:34px;stroke:var(--flow-accent);fill:none;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;}
.flow-node h3{margin:8px 0 8px;color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:.92rem;line-height:1.14;font-weight:900;}
.flow-node p{margin:0;color:#405870;font-size:.77rem;line-height:1.38;}
.flow-node-line{position:absolute;display:block;background:rgba(46,123,181,.78);} 
.flow-node-dot{position:absolute;display:block;width:16px;height:16px;border-radius:50%;background:var(--flow-accent);border:3px solid #fff;box-shadow:0 0 0 4px rgba(46,123,181,.12);z-index:2;}
.flow-node-top .flow-node-line{left:50%;bottom:-24px;width:2px;height:24px;transform:translateX(-50%);} .flow-node-top .flow-node-dot{left:50%;bottom:-38px;transform:translateX(-50%);} 
.flow-node-bottom .flow-node-line{left:50%;top:-24px;width:2px;height:24px;transform:translateX(-50%);} .flow-node-bottom .flow-node-dot{left:50%;top:-38px;transform:translateX(-50%);} 
.flow-node-left .flow-node-line{right:-24px;top:50%;width:24px;height:2px;transform:translateY(-50%);} .flow-node-left .flow-node-dot{right:-38px;top:50%;transform:translateY(-50%);} 
.flow-node-right .flow-node-line{left:-24px;top:50%;width:24px;height:2px;transform:translateY(-50%);} .flow-node-right .flow-node-dot{left:-38px;top:50%;transform:translateY(-50%);} 
.home-flow-final.has-pulse-motion .flow-node-dot{animation:flowNodeDefault 11s linear infinite;}
.flow-node-left .flow-node-dot{animation-name:flowNodeLeft;}.flow-node-top .flow-node-dot{animation-name:flowNodeTop;}.flow-node-right .flow-node-dot{animation-name:flowNodeRight;}.flow-node-bottom .flow-node-dot{animation-name:flowNodeBottom;}
@keyframes flowNodeDefault{0%,100%{background:var(--flow-accent);box-shadow:0 0 0 4px rgba(46,123,181,.12);}}
@keyframes flowNodeLeft{0%,8%,100%{background:var(--flow-accent);box-shadow:0 0 0 4px rgba(46,123,181,.12);transform:translateY(-50%) scale(1);}1%,7%{background:var(--flow-fire);box-shadow:0 0 0 12px rgba(242,155,56,.24),0 0 26px rgba(242,155,56,.95),0 0 40px rgba(255,210,142,.85);transform:translateY(-50%) scale(1.22);}}
@keyframes flowNodeTop{0%,100%{background:var(--flow-accent);box-shadow:0 0 0 4px rgba(46,123,181,.12);transform:translateX(-50%) scale(1);}13%,19%{background:var(--flow-fire);box-shadow:0 0 0 12px rgba(242,155,56,.24),0 0 26px rgba(242,155,56,.95),0 0 40px rgba(255,210,142,.85);transform:translateX(-50%) scale(1.22);}}
@keyframes flowNodeRight{0%,100%{background:var(--flow-accent);box-shadow:0 0 0 4px rgba(46,123,181,.12);transform:translateY(-50%) scale(1);}26%,32%{background:var(--flow-fire);box-shadow:0 0 0 12px rgba(242,155,56,.24),0 0 26px rgba(242,155,56,.95),0 0 40px rgba(255,210,142,.85);transform:translateY(-50%) scale(1.22);}}
@keyframes flowNodeBottom{0%,100%{background:var(--flow-accent);box-shadow:0 0 0 4px rgba(46,123,181,.12);transform:translateX(-50%) scale(1);}39%,45%{background:var(--flow-fire);box-shadow:0 0 0 12px rgba(242,155,56,.24),0 0 26px rgba(242,155,56,.95),0 0 40px rgba(255,210,142,.85);transform:translateX(-50%) scale(1.22);}}
.home-flow-benefits{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(31,61,95,.10);background:#F3E8CC;}
.home-flow-benefit{display:flex;align-items:center;gap:18px;padding:30px 24px 34px;border-right:1px solid rgba(31,61,95,.10);} .home-flow-benefit:last-child{border-right:0;}
.flow-benefit-icon{flex:0 0 auto;display:grid;place-items:center;width:56px;height:56px;}.flow-benefit-icon svg{width:50px;height:50px;}
.home-flow-benefit strong{display:block;color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-weight:900;font-size:.98rem;}.home-flow-benefit p{margin:7px 0 0;color:#405870;font-size:.86rem;line-height:1.45;}
@media(max-width:1420px){
  .home-flow-main{grid-template-columns:minmax(520px,1fr) minmax(500px,.92fr);gap:30px;padding:84px clamp(34px,3.4vw,56px) 72px;}
  .home-flow-final h2{font-size:clamp(3.05rem,4.05vw,4.55rem);max-width:680px;}
  .home-flow-content{padding-left:8px;}
  .home-flow-visual{width:min(100%,660px);} 
  .flow-orbit{width:478px;height:478px;} .flow-core-svg{width:410px;height:410px;} 
  .flow-node-top{transform:translate(-50%,-50%) translate(0,-206px);} .flow-node-left{transform:translate(-50%,-50%) translate(-198px,0);} .flow-node-right{transform:translate(-50%,-50%) translate(198px,0);} .flow-node-bottom{transform:translate(-50%,-50%) translate(0,206px);} 
}
@media(max-width:1180px){
  .home-flow-main{grid-template-columns:1fr;padding:62px clamp(28px,4vw,42px) 38px;}
  .home-flow-content{max-width:760px;padding-right:0;padding-left:0;}
  .home-flow-visual{justify-self:center;margin-top:10px;}
  .home-flow-benefits{grid-template-columns:repeat(2,1fr);} 
  .home-flow-benefit:nth-child(2){border-right:0;} 
  .home-flow-benefit:nth-child(1),.home-flow-benefit:nth-child(2){border-bottom:1px solid rgba(31,61,95,.10);} 
}
@media(max-width:768px){
  .home-flow-final{padding:0;}
  .home-flow-shell{border-radius:0!important;min-height:auto;background:#F3E8CC;}
  .home-flow-bg:before{display:none;}
  .home-flow-bg:after{background:#F3E8CC;}
  .home-flow-main{display:block;padding:38px 24px 42px;min-height:auto;}
  .home-flow-content{max-width:none;transform:none;padding-right:0;padding-left:2px;}
  .home-flow-eyebrow{margin-bottom:18px;font-size:.76rem;gap:10px;}
  .home-flow-final.has-eyebrow-lines .home-flow-eyebrow:before,.home-flow-final.has-eyebrow-lines .home-flow-eyebrow:after{width:32px;}
  .home-flow-final h2{font-size:clamp(2.3rem,10.4vw,3.15rem);line-height:1.12;max-width:none;}
  .home-flow-text{margin-top:20px;font-size:1rem;line-height:1.62;max-width:none;}
  .home-flow-button{margin-top:26px;min-height:56px;padding-left:22px;gap:18px;}
  .home-flow-visual,.home-flow-benefits{display:none !important;}
}
@media(min-width:769px){
  }


/* MODU v0.7.2 — MODU FLOW proportional visual module ready for WordPress */
.home-flow-final{
  --flow-module-w: min(100%, 735px);
  --flow-module-ratio: 1.12;
  --flow-fire:#F29B38;
  --flow-fire-soft:#FFD28E;
  --flow-cream-bg:#F3E8CC;
  padding:0 !important;
  background:var(--flow-cream-bg) !important;
}
.home-flow-final .wrap{
  width:100% !important;
  max-width:none !important;
}
.home-flow-shell{
  width:100% !important;
  min-height:var(--flow-card-h) !important;
  background:var(--flow-cream-bg) !important;
  border-radius:0 !important;
  box-shadow:none !important;
  border:0 !important;
}
.home-flow-bg{
  background:var(--flow-cream-bg) !important;
}
.home-flow-bg:before{
  content:"" !important;
  position:absolute;
  inset:0 0 0 44%;
  background-image:var(--flow-bg-image);
  background-position:var(--flow-bg-position);
  background-size:cover;
  background-repeat:no-repeat;
  opacity:.22;
  filter:saturate(.48) brightness(1.07);
}
.home-flow-bg:after{
  content:"" !important;
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 78% 49%, rgba(255,255,255,.38) 0%, rgba(243,232,204,.18) 34%, rgba(243,232,204,.78) 70%),
    linear-gradient(90deg, rgba(243,232,204,1) 0%, rgba(243,232,204,.99) 40%, rgba(243,232,204,.86) 61%, rgba(243,232,204,.62) 100%);
  opacity:1 !important;
}
.home-flow-main{
  min-height:var(--flow-card-h) !important;
  grid-template-columns:minmax(590px, .98fr) minmax(620px, 1.02fr) !important;
  gap:clamp(28px,3vw,58px) !important;
  padding:clamp(78px,5.4vw,104px) clamp(62px,6vw,104px) clamp(72px,5vw,92px) !important;
}
.home-flow-content{
  max-width:760px !important;
  padding-left:clamp(8px,1.2vw,22px) !important;
  padding-right:0 !important;
}
.home-flow-final h2{
  max-width:735px !important;
  font-size:clamp(3.3rem,4.05vw,5.05rem) !important;
  line-height:1.08 !important;
  letter-spacing:-.074em !important;
  text-wrap:balance;
}
.home-flow-text{
  max-width:680px !important;
  margin-top:34px !important;
}
.home-flow-button{
  margin-top:36px !important;
}

/* closed proportional module */
.home-flow-visual{
  position:relative !important;
  width:var(--flow-module-w) !important;
  aspect-ratio:1.12 / 1 !important;
  min-height:0 !important;
  height:auto !important;
  justify-self:end !important;
  overflow:visible !important;
  transform:translate(var(--flow-visual-x), var(--flow-visual-y)) !important;
}
.home-flow-visual:before{
  content:"";
  position:absolute;
  inset:6% 1%;
  border-radius:34px;
  background:radial-gradient(circle at 52% 48%, rgba(255,255,255,.42), rgba(255,255,255,.10) 38%, rgba(255,255,255,0) 70%);
  pointer-events:none;
}

/* scalable orbit system */
.flow-orbit{
  left:50% !important;
  top:50% !important;
  width:78% !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  transform:translate(-50%,-50%) !important;
}
.flow-core-svg{
  left:50% !important;
  top:50% !important;
  width:43% !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  transform:translate(-50%,-50%) rotate(180deg) !important;
  z-index:3 !important;
}
.flow-core-base,
.flow-core-progress{
  stroke-width:20 !important;
}
.flow-core-base{
  stroke:rgba(46,123,181,.72) !important;
}
.flow-core-progress{
  stroke:var(--flow-fire) !important;
  filter:drop-shadow(0 0 16px rgba(242,155,56,.78)) drop-shadow(0 0 32px rgba(242,155,56,.50)) !important;
}
.flow-fuse-runner{
  left:50% !important;
  top:50% !important;
  z-index:5 !important;
}
.flow-fuse-runner:before{
  left:-122px !important;
  top:-13px !important;
  width:26px !important;
  height:26px !important;
  background:radial-gradient(circle at 35% 35%, #fff6dc 0%, #ffd28e 18%, #f29b38 50%, #d86f11 100%) !important;
  box-shadow:0 0 0 10px rgba(242,155,56,.20),0 0 34px rgba(242,155,56,.95),0 0 62px rgba(255,210,142,.95) !important;
}

/* central circle smaller and lighter */
.flow-center{
  left:50% !important;
  top:50% !important;
  width:29% !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  transform:translate(-50%,-50%) !important;
  z-index:4 !important;
  box-shadow:0 20px 54px rgba(31,61,95,.10), inset 0 0 0 2px rgba(46,123,181,.10) !important;
}
.flow-center img{
  width:52% !important;
  margin-bottom:8px !important;
}
.flow-center strong{
  font-size:clamp(.66rem,.86vw,.88rem) !important;
}

/* four cards: outside the main ring, not invading it */
.flow-node{
  width:24% !important;
  min-height:auto !important;
  aspect-ratio:1.06 / .86 !important;
  padding:2.25% 2% 2.3% !important;
  border-radius:18px !important;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:0;
  z-index:6 !important;
}
.flow-node-top{
  left:50% !important;
  top:3% !important;
  transform:translateX(-50%) !important;
}
.flow-node-bottom{
  left:50% !important;
  bottom:3% !important;
  top:auto !important;
  transform:translateX(-50%) !important;
}
.flow-node-left{
  left:3% !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}
.flow-node-right{
  right:3% !important;
  left:auto !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}
.flow-icon svg{
  width:clamp(24px,3.1vw,34px) !important;
  height:clamp(24px,3.1vw,34px) !important;
}
.flow-node h3{
  margin:7px 0 7px !important;
  font-size:clamp(.72rem,1.0vw,.92rem) !important;
  line-height:1.13 !important;
}
.flow-node p{
  font-size:clamp(.64rem,.82vw,.78rem) !important;
  line-height:1.36 !important;
}

/* connectors: dots touch the active main ring visually */
.flow-node-line{
  background:rgba(46,123,181,.70) !important;
}
.flow-node-dot{
  width:17px !important;
  height:17px !important;
  background:var(--flow-accent) !important;
  border:3px solid #fff !important;
  box-shadow:0 0 0 5px rgba(46,123,181,.13) !important;
}
.flow-node-top .flow-node-line{
  left:50% !important;
  bottom:-12.5% !important;
  width:2px !important;
  height:12.5% !important;
  transform:translateX(-50%) !important;
}
.flow-node-top .flow-node-dot{
  left:50% !important;
  bottom:-18% !important;
  transform:translateX(-50%) !important;
}
.flow-node-bottom .flow-node-line{
  left:50% !important;
  top:-12.5% !important;
  width:2px !important;
  height:12.5% !important;
  transform:translateX(-50%) !important;
}
.flow-node-bottom .flow-node-dot{
  left:50% !important;
  top:-18% !important;
  transform:translateX(-50%) !important;
}
.flow-node-left .flow-node-line{
  right:-14% !important;
  top:50% !important;
  width:14% !important;
  height:2px !important;
  transform:translateY(-50%) !important;
}
.flow-node-left .flow-node-dot{
  right:-22% !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}
.flow-node-right .flow-node-line{
  left:-14% !important;
  top:50% !important;
  width:14% !important;
  height:2px !important;
  transform:translateY(-50%) !important;
}
.flow-node-right .flow-node-dot{
  left:-22% !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}

/* visible orange activation on each node dot */
.home-flow-final.has-pulse-motion .flow-node-dot{
  animation-duration:11s !important;
  animation-timing-function:linear !important;
  animation-iteration-count:infinite !important;
}
@keyframes flowNodeLeft{
  0%,8%,100%{background:var(--flow-accent);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateY(-50%) scale(1);}
  1%,7%{background:var(--flow-fire);box-shadow:0 0 0 12px rgba(242,155,56,.24),0 0 28px rgba(242,155,56,.95),0 0 46px rgba(255,210,142,.85);transform:translateY(-50%) scale(1.28);}
}
@keyframes flowNodeTop{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateX(-50%) scale(1);}
  13%,19%{background:var(--flow-fire);box-shadow:0 0 0 12px rgba(242,155,56,.24),0 0 28px rgba(242,155,56,.95),0 0 46px rgba(255,210,142,.85);transform:translateX(-50%) scale(1.28);}
}
@keyframes flowNodeRight{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateY(-50%) scale(1);}
  26%,32%{background:var(--flow-fire);box-shadow:0 0 0 12px rgba(242,155,56,.24),0 0 28px rgba(242,155,56,.95),0 0 46px rgba(255,210,142,.85);transform:translateY(-50%) scale(1.28);}
}
@keyframes flowNodeBottom{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateX(-50%) scale(1);}
  39%,45%{background:var(--flow-fire);box-shadow:0 0 0 12px rgba(242,155,56,.24),0 0 28px rgba(242,155,56,.95),0 0 46px rgba(255,210,142,.85);transform:translateX(-50%) scale(1.28);}
}

/* outer orbit dots: soft sequence after full ring activation */
.orbit-dot{
  width:13px !important;
  height:13px !important;
}
@keyframes flowOuterDot1{0%,58%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}60%,66%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 20px rgba(242,155,56,.78);transform:translate(-50%,-50%) scale(1.50);}}
@keyframes flowOuterDot2{0%,62%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}64%,70%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 20px rgba(242,155,56,.78);transform:translate(-50%,-50%) scale(1.50);}}
@keyframes flowOuterDot3{0%,66%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}68%,74%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 20px rgba(242,155,56,.78);transform:translate(-50%,-50%) scale(1.50);}}
@keyframes flowOuterDot4{0%,70%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}72%,78%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 20px rgba(242,155,56,.78);transform:translate(-50%,-50%) scale(1.50);}}
@keyframes flowOuterDot5{0%,74%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}76%,82%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 20px rgba(242,155,56,.78);transform:translate(-50%,-50%) scale(1.50);}}
@keyframes flowOuterDot6{0%,78%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}80%,86%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 20px rgba(242,155,56,.78);transform:translate(-50%,-50%) scale(1.50);}}
@keyframes flowOuterDot7{0%,82%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}84%,90%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 20px rgba(242,155,56,.78);transform:translate(-50%,-50%) scale(1.50);}}
@keyframes flowOuterDot8{0%,86%,100%{background:rgba(46,123,181,.14);border-color:rgba(46,123,181,.30);box-shadow:none;transform:translate(-50%,-50%) scale(1);}88%,94%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 20px rgba(242,155,56,.78);transform:translate(-50%,-50%) scale(1.50);}}

/* laptop balance */
@media(max-width:1420px){
  .home-flow-main{
    grid-template-columns:minmax(500px,1fr) minmax(520px,.94fr) !important;
    gap:clamp(24px,2.4vw,38px) !important;
    padding-left:clamp(36px,3.5vw,62px) !important;
    padding-right:clamp(30px,3vw,54px) !important;
  }
  .home-flow-final h2{
    font-size:clamp(3rem,3.9vw,4.55rem) !important;
    max-width:675px !important;
  }
  .home-flow-visual{
    --flow-module-w:min(100%, 650px);
  }
}
@media(max-width:1180px){
  .home-flow-main{
    grid-template-columns:1fr !important;
    padding:62px clamp(28px,4vw,42px) 38px !important;
  }
  .home-flow-content{
    max-width:760px !important;
    padding-left:0 !important;
  }
  .home-flow-visual{
    justify-self:center !important;
    --flow-module-w:min(100%, 680px);
  }
}

/* mobile remains simple: text + CTA only */
@media(max-width:768px){
  .home-flow-final{
    padding:0 !important;
  }
  .home-flow-shell{
    background:var(--flow-cream-bg) !important;
    min-height:auto !important;
  }
  .home-flow-bg:before{
    display:none !important;
  }
  .home-flow-bg:after{
    background:var(--flow-cream-bg) !important;
  }
  .home-flow-main{
    display:block !important;
    min-height:auto !important;
    padding:40px 24px 44px !important;
  }
  .home-flow-content{
    max-width:none !important;
    padding:0 2px !important;
    transform:none !important;
  }
  .home-flow-final h2{
    font-size:clamp(2.25rem,10.2vw,3.15rem) !important;
    line-height:1.12 !important;
    max-width:none !important;
  }
  .home-flow-text{
    margin-top:20px !important;
    font-size:1rem !important;
    line-height:1.62 !important;
    max-width:none !important;
  }
  .home-flow-button{
    margin-top:26px !important;
    min-height:56px !important;
  }
  .home-flow-visual,
  .home-flow-benefits{
    display:none !important;
  }
}


/* MODU v0.7.2 — refine fuse/spark effect like dynamite fuse */
.home-flow-final{
  --flow-fire:#F29B38;
  --flow-fire-core:#FFB34A;
  --flow-fire-hot:#FFF1C6;
}
/* keep the ring activation visible as the spark advances */
.flow-core-progress{
  stroke:var(--flow-fire) !important;
  stroke-linecap:round !important;
  filter:drop-shadow(0 0 6px rgba(242,155,56,.55)) drop-shadow(0 0 14px rgba(242,155,56,.38)) !important;
}
.home-flow-final.has-pulse-motion .flow-core-progress{
  animation:flowRingProgress 11s linear infinite !important;
}
@keyframes flowRingProgress{
  0%{stroke-dashoffset:766.55;opacity:0;}
  2%{opacity:1;}
  52%{stroke-dashoffset:0;opacity:1;}
  78%{stroke-dashoffset:0;opacity:1;}
  100%{stroke-dashoffset:766.55;opacity:0;}
}
/* small spark head instead of a giant orange ball */
.flow-fuse-runner{
  left:50% !important;
  top:50% !important;
  width:0 !important;
  height:0 !important;
  transform:translate(-50%,-50%) rotate(0deg) !important;
  z-index:6 !important;
  filter:none !important;
}
.flow-fuse-runner:before,
.flow-fuse-runner:after{content:"";position:absolute;display:block;pointer-events:none;}
.flow-fuse-runner:before{
  left:-123px !important;
  top:-5px !important;
  width:10px !important;
  height:10px !important;
  border-radius:50% !important;
  background:radial-gradient(circle at 35% 35%, var(--flow-fire-hot) 0 24%, #ffd88e 25% 48%, var(--flow-fire-core) 49% 74%, #d97012 75% 100%) !important;
  box-shadow:
    0 0 0 2px rgba(255,201,113,.18),
    0 0 9px rgba(242,155,56,.95),
    0 0 18px rgba(242,155,56,.78),
    3px -4px 0 -2px rgba(255,233,172,.75),
    6px 0 0 -3px rgba(255,186,77,.78),
    2px 5px 0 -3px rgba(255,205,129,.58) !important;
}
.flow-fuse-runner:after{
  left:-145px !important;
  top:-2px !important;
  width:22px !important;
  height:4px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, rgba(242,155,56,0) 0%, rgba(242,155,56,.14) 18%, rgba(242,155,56,.38) 45%, rgba(255,208,137,.82) 88%, rgba(255,241,198,0) 100%) !important;
  filter:blur(.4px) !important;
  opacity:.95 !important;
}
.home-flow-final.has-pulse-motion .flow-fuse-runner{
  animation:flowFuseMove 11s linear infinite !important;
}
@keyframes flowFuseMove{
  0%{transform:translate(-50%,-50%) rotate(0deg);opacity:0;}
  1.5%{opacity:1;}
  52%{transform:translate(-50%,-50%) rotate(360deg);opacity:1;}
  78%{transform:translate(-50%,-50%) rotate(360deg);opacity:0;}
  100%{transform:translate(-50%,-50%) rotate(360deg);opacity:0;}
}
/* brighter node activation synchronized with the spark */
@keyframes flowNodeLeft{0%,8%,100%{background:var(--flow-accent);box-shadow:0 0 0 4px rgba(46,123,181,.12);transform:translateY(-50%) scale(1);}1%,7%{background:var(--flow-fire);box-shadow:0 0 0 8px rgba(242,155,56,.18),0 0 18px rgba(242,155,56,.88),0 0 32px rgba(255,210,142,.78);transform:translateY(-50%) scale(1.18);}}
@keyframes flowNodeTop{0%,100%{background:var(--flow-accent);box-shadow:0 0 0 4px rgba(46,123,181,.12);transform:translateX(-50%) scale(1);}13%,19%{background:var(--flow-fire);box-shadow:0 0 0 8px rgba(242,155,56,.18),0 0 18px rgba(242,155,56,.88),0 0 32px rgba(255,210,142,.78);transform:translateX(-50%) scale(1.18);}}
@keyframes flowNodeRight{0%,100%{background:var(--flow-accent);box-shadow:0 0 0 4px rgba(46,123,181,.12);transform:translateY(-50%) scale(1);}26%,32%{background:var(--flow-fire);box-shadow:0 0 0 8px rgba(242,155,56,.18),0 0 18px rgba(242,155,56,.88),0 0 32px rgba(255,210,142,.78);transform:translateY(-50%) scale(1.18);}}
@keyframes flowNodeBottom{0%,100%{background:var(--flow-accent);box-shadow:0 0 0 4px rgba(46,123,181,.12);transform:translateX(-50%) scale(1);}39%,45%{background:var(--flow-fire);box-shadow:0 0 0 8px rgba(242,155,56,.18),0 0 18px rgba(242,155,56,.88),0 0 32px rgba(255,210,142,.78);transform:translateX(-50%) scale(1.18);}}


/* MODU v0.7.2 — auditoría y corrección real de la mecha */
.home-flow-final{
  --flow-cycle: 9.6s;
  --flow-fire:#F29B38;
  --flow-fire-soft:#FFE7BD;
  --flow-fire-hot:#FFF3DA;
}
/* Hallazgos de auditoría: la mecha quedaba tapada visualmente y el tramo activado del anillo era demasiado sutil.
   En esta revisión se refuerza el recorrido, el radio activado y la visibilidad de la chispa. */
.flow-core-svg{
  z-index:4 !important;
}
.flow-core-base,
.flow-core-progress{
  fill:none !important;
  stroke-linecap:round !important;
  stroke-width:12px !important;
}
.flow-core-base{
  stroke:rgba(46,123,181,.28) !important;
}
.flow-core-progress{
  stroke:var(--flow-fire) !important;
  stroke-dasharray:766.55 !important;
  stroke-dashoffset:766.55 !important;
  opacity:1 !important;
  filter:drop-shadow(0 0 6px rgba(242,155,56,.80)) drop-shadow(0 0 16px rgba(242,155,56,.58)) !important;
}
.home-flow-final.has-pulse-motion .flow-core-progress{
  animation:flowRingProgressV617 var(--flow-cycle) linear infinite !important;
}
@keyframes flowRingProgressV617{
  0%{stroke-dashoffset:766.55;opacity:1;}
  46%{stroke-dashoffset:0;opacity:1;}
  58%{stroke-dashoffset:0;opacity:1;}
  100%{stroke-dashoffset:766.55;opacity:0;}
}
/* Mecha: cabeza pequeña + estela, recorriendo todo el anillo principal */
.flow-fuse-runner{
  left:50% !important;
  top:50% !important;
  width:0 !important;
  height:0 !important;
  transform:translate(-50%,-50%) rotate(0deg) !important;
  z-index:10 !important;
  opacity:1 !important;
}
.flow-fuse-runner:before,
.flow-fuse-runner:after,
.flow-fuse-runner i{
  content:"";
  position:absolute;
  display:block;
  pointer-events:none;
}
.flow-fuse-runner:before{
  left:-127px !important;
  top:-6px !important;
  width:12px !important;
  height:12px !important;
  border-radius:50% !important;
  background:radial-gradient(circle at 35% 35%, var(--flow-fire-hot) 0 24%, #ffd78c 25% 47%, var(--flow-fire) 48% 75%, #D46E14 76% 100%) !important;
  box-shadow:
    0 0 0 2px rgba(255,220,157,.16),
    0 0 10px rgba(242,155,56,.95),
    0 0 22px rgba(242,155,56,.70),
    4px -4px 0 -3px rgba(255,241,198,.78),
    6px 1px 0 -4px rgba(255,204,121,.90),
    2px 5px 0 -4px rgba(255,180,76,.70) !important;
}
.flow-fuse-runner:after{
  left:-145px !important;
  top:-1px !important;
  width:24px !important;
  height:4px !important;
  border-radius:999px !important;
  background:linear-gradient(90deg, rgba(242,155,56,0) 0%, rgba(242,155,56,.16) 20%, rgba(242,155,56,.42) 46%, rgba(255,220,157,.92) 88%, rgba(255,241,198,0) 100%) !important;
  filter:blur(.45px) !important;
  opacity:.98 !important;
}
.home-flow-final.has-pulse-motion .flow-fuse-runner{
  animation:flowFuseMoveV617 var(--flow-cycle) linear infinite !important;
}
@keyframes flowFuseMoveV617{
  0%{transform:translate(-50%,-50%) rotate(0deg);opacity:1;}
  46%{transform:translate(-50%,-50%) rotate(360deg);opacity:1;}
  58%{transform:translate(-50%,-50%) rotate(360deg);opacity:0;}
  100%{transform:translate(-50%,-50%) rotate(360deg);opacity:0;}
}
/* Puntos de conexión: se iluminan en naranja cuando la chispa los alcanza */
.home-flow-final.has-pulse-motion .flow-node-dot{
  animation-duration:var(--flow-cycle) !important;
  animation-timing-function:linear !important;
  animation-iteration-count:infinite !important;
}
.flow-node-left .flow-node-dot{animation-name:flowNodeLeftV617 !important;}
.flow-node-top .flow-node-dot{animation-name:flowNodeTopV617 !important;}
.flow-node-right .flow-node-dot{animation-name:flowNodeRightV617 !important;}
.flow-node-bottom .flow-node-dot{animation-name:flowNodeBottomV617 !important;}
@keyframes flowNodeLeftV617{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 4px rgba(46,123,181,.12);transform:translateY(-50%) scale(1);} 
  0.5%,7%{background:var(--flow-fire);box-shadow:0 0 0 7px rgba(242,155,56,.20),0 0 16px rgba(242,155,56,.95),0 0 28px rgba(255,216,151,.85);transform:translateY(-50%) scale(1.18);} 
}
@keyframes flowNodeTopV617{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 4px rgba(46,123,181,.12);transform:translateX(-50%) scale(1);} 
  11.5%,18%{background:var(--flow-fire);box-shadow:0 0 0 7px rgba(242,155,56,.20),0 0 16px rgba(242,155,56,.95),0 0 28px rgba(255,216,151,.85);transform:translateX(-50%) scale(1.18);} 
}
@keyframes flowNodeRightV617{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 4px rgba(46,123,181,.12);transform:translateY(-50%) scale(1);} 
  23.5%,30%{background:var(--flow-fire);box-shadow:0 0 0 7px rgba(242,155,56,.20),0 0 16px rgba(242,155,56,.95),0 0 28px rgba(255,216,151,.85);transform:translateY(-50%) scale(1.18);} 
}
@keyframes flowNodeBottomV617{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 4px rgba(46,123,181,.12);transform:translateX(-50%) scale(1);} 
  35.5%,42%{background:var(--flow-fire);box-shadow:0 0 0 7px rgba(242,155,56,.20),0 0 16px rgba(242,155,56,.95),0 0 28px rgba(255,216,151,.85);transform:translateX(-50%) scale(1.18);} 
}
/* Puntos orbitales externos: un poco más visibles tras completar la vuelta */
.home-flow-final.has-pulse-motion .orbit-dot{
  animation-duration:var(--flow-cycle) !important;
}


/* MODU v0.7.2 — chispa real dentro del SVG, mismo radio que el anillo */
.home-flow-final{
  --flow-cycle: 8.8s;
  --flow-fire:#F28C22;
  --flow-fire-2:#FFB85A;
  --flow-fire-hot:#FFF1C7;
}

/* El SVG pasa por delante del círculo central para que el avance sea visible */
.flow-core-svg{
  z-index:9 !important;
  pointer-events:none !important;
  overflow:visible !important;
}

/* El círculo base queda suave. El activo se dibuja encima, mismo radio que la chispa. */
.flow-core-base,
.flow-core-progress{
  fill:none !important;
  stroke-linecap:round !important;
  stroke-width:12px !important;
}

.flow-core-base{
  stroke:rgba(46,123,181,.26) !important;
}

.flow-core-progress{
  stroke:var(--flow-fire) !important;
  stroke-dasharray:1162.4 !important;
  stroke-dashoffset:1162.4 !important;
  opacity:1 !important;
  filter:
    drop-shadow(0 0 5px rgba(242,140,34,.76))
    drop-shadow(0 0 13px rgba(242,140,34,.46)) !important;
}

.home-flow-final.has-pulse-motion .flow-core-progress{
  animation:flowRingProgressV618 var(--flow-cycle) linear infinite !important;
}

@keyframes flowRingProgressV618{
  0%{stroke-dashoffset:1162.4; opacity:1;}
  54%{stroke-dashoffset:0; opacity:1;}
  70%{stroke-dashoffset:0; opacity:1;}
  100%{stroke-dashoffset:1162.4; opacity:0;}
}

/* La antigua mecha externa se anula: era la que fallaba visualmente */
.flow-fuse-runner{
  display:none !important;
}

/* Chispa SVG: gira exactamente sobre el mismo radio del círculo */
.flow-spark-svg{
  transform-origin:260px 260px;
  opacity:0;
}

.home-flow-final.has-pulse-motion .flow-spark-svg{
  animation:flowSparkOrbitV618 var(--flow-cycle) linear infinite !important;
}

@keyframes flowSparkOrbitV618{
  0%{transform:rotate(0deg); opacity:1;}
  54%{transform:rotate(360deg); opacity:1;}
  70%{transform:rotate(360deg); opacity:0;}
  100%{transform:rotate(360deg); opacity:0;}
}

.flow-spark-tail{
  fill:none;
  stroke:rgba(242,140,34,.82);
  stroke-width:5.5;
  stroke-linecap:round;
  filter:drop-shadow(0 0 7px rgba(242,140,34,.62));
}

.flow-spark-glow{
  fill:rgba(242,140,34,.16);
  filter:drop-shadow(0 0 13px rgba(242,140,34,.88));
}

.flow-spark-core{
  fill:var(--flow-fire);
  filter:
    drop-shadow(0 0 7px rgba(242,140,34,.96))
    drop-shadow(0 0 16px rgba(255,184,90,.70));
}

.flow-spark-hot{
  fill:var(--flow-fire-hot);
}

/* Puntos de tarjeta sincronizados con el recorrido del anillo */
.home-flow-final.has-pulse-motion .flow-node-dot{
  animation-duration:var(--flow-cycle) !important;
  animation-timing-function:linear !important;
  animation-iteration-count:infinite !important;
}

.flow-node-left .flow-node-dot{animation-name:flowNodeLeftV618 !important;}
.flow-node-top .flow-node-dot{animation-name:flowNodeTopV618 !important;}
.flow-node-right .flow-node-dot{animation-name:flowNodeRightV618 !important;}
.flow-node-bottom .flow-node-dot{animation-name:flowNodeBottomV618 !important;}

@keyframes flowNodeLeftV618{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateY(-50%) scale(1);}
  1%,8%{background:var(--flow-fire);box-shadow:0 0 0 8px rgba(242,140,34,.22),0 0 18px rgba(242,140,34,.90),0 0 32px rgba(255,184,90,.72);transform:translateY(-50%) scale(1.22);}
}
@keyframes flowNodeTopV618{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateX(-50%) scale(1);}
  13%,21%{background:var(--flow-fire);box-shadow:0 0 0 8px rgba(242,140,34,.22),0 0 18px rgba(242,140,34,.90),0 0 32px rgba(255,184,90,.72);transform:translateX(-50%) scale(1.22);}
}
@keyframes flowNodeRightV618{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateY(-50%) scale(1);}
  27%,35%{background:var(--flow-fire);box-shadow:0 0 0 8px rgba(242,140,34,.22),0 0 18px rgba(242,140,34,.90),0 0 32px rgba(255,184,90,.72);transform:translateY(-50%) scale(1.22);}
}
@keyframes flowNodeBottomV618{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateX(-50%) scale(1);}
  40%,48%{background:var(--flow-fire);box-shadow:0 0 0 8px rgba(242,140,34,.22),0 0 18px rgba(242,140,34,.90),0 0 32px rgba(255,184,90,.72);transform:translateX(-50%) scale(1.22);}
}

/* Los puntos exteriores quedan después del recorrido del anillo */
.home-flow-final.has-pulse-motion .orbit-dot{
  animation-duration:var(--flow-cycle) !important;
}


/* MODU v0.7.2 — ajuste de proporciones + lógica del ciclo */
.home-flow-final{
  --flow-cycle: 8.8s;
}
/* Módulo visual más proporcionado en portátil y desktop */
.home-flow-visual{
  --flow-module-w:min(100%, 650px) !important;
}
.flow-center{
  width:27.2% !important;
}
.flow-node{
  width:21.6% !important;
  aspect-ratio:1.07 / .70 !important;
  padding:1.05% 1.7% 1.75% !important;
  border-radius:18px !important;
}
.flow-node-top{
  top:0.8% !important;
}
.flow-node-bottom{
  bottom:0.8% !important;
}
.flow-node-left{
  left:2.8% !important;
}
.flow-node-right{
  right:2.8% !important;
}
.flow-icon{margin-top:0 !important;}
.flow-node h3{
  margin:5px 0 6px !important;
}
.flow-node p{
  margin:0 !important;
}
/* Conectores top/bottom algo más cortos para que el punto toque el anillo sin invadirlo */
.flow-node-top .flow-node-line{height:11% !important; bottom:-11% !important;}
.flow-node-top .flow-node-dot{bottom:-15.8% !important;}
.flow-node-bottom .flow-node-line{height:11% !important; top:-11% !important;}
.flow-node-bottom .flow-node-dot{top:-15.8% !important;}
.flow-node-left .flow-node-line{width:12% !important; right:-12% !important;}
.flow-node-left .flow-node-dot{right:-18.3% !important;}
.flow-node-right .flow-node-line{width:12% !important; left:-12% !important;}
.flow-node-right .flow-node-dot{left:-18.3% !important;}
/* La chispa arranca desde la tarjeta izquierda (Diseño y partners tras el intercambio) */
.flow-core-svg{
  transform:translate(-50%,-50%) rotate(180deg) !important;
}
.home-flow-final.has-pulse-motion .flow-spark-svg{
  animation:flowSparkOrbitV619 var(--flow-cycle) linear infinite !important;
}
@keyframes flowSparkOrbitV619{
  0%{transform:rotate(0deg);opacity:1;}
  54%{transform:rotate(360deg);opacity:1;}
  70%{transform:rotate(360deg);opacity:0;}
  100%{transform:rotate(360deg);opacity:0;}
}
/* Activación inmediata del nodo izquierdo y secuencia izquierda > arriba > derecha > abajo */
.flow-node-left .flow-node-dot{animation-name:flowNodeLeftV619 !important;}
.flow-node-top .flow-node-dot{animation-name:flowNodeTopV619 !important;}
.flow-node-right .flow-node-dot{animation-name:flowNodeRightV619 !important;}
.flow-node-bottom .flow-node-dot{animation-name:flowNodeBottomV619 !important;}
@keyframes flowNodeLeftV619{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateY(-50%) scale(1);}
  0.3%,7.5%{background:var(--flow-fire);box-shadow:0 0 0 9px rgba(242,140,34,.22),0 0 20px rgba(242,140,34,.94),0 0 36px rgba(255,184,90,.76);transform:translateY(-50%) scale(1.24);}
}
@keyframes flowNodeTopV619{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateX(-50%) scale(1);}
  12.5%,20%{background:var(--flow-fire);box-shadow:0 0 0 9px rgba(242,140,34,.22),0 0 20px rgba(242,140,34,.94),0 0 36px rgba(255,184,90,.76);transform:translateX(-50%) scale(1.24);}
}
@keyframes flowNodeRightV619{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateY(-50%) scale(1);}
  25.5%,33%{background:var(--flow-fire);box-shadow:0 0 0 9px rgba(242,140,34,.22),0 0 20px rgba(242,140,34,.94),0 0 36px rgba(255,184,90,.76);transform:translateY(-50%) scale(1.24);}
}
@keyframes flowNodeBottomV619{
  0%,100%{background:var(--flow-accent);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateX(-50%) scale(1);}
  38.5%,46%{background:var(--flow-fire);box-shadow:0 0 0 9px rgba(242,140,34,.22),0 0 20px rgba(242,140,34,.94),0 0 36px rgba(255,184,90,.76);transform:translateX(-50%) scale(1.24);}
}
@media (max-width:1440px){
  .home-flow-visual{--flow-module-w:min(100%, 620px) !important;}
  .flow-node{width:21.2% !important;}
  .flow-node-top{top:0.2% !important;}
  .flow-node-bottom{bottom:0.2% !important;}
}
@media (max-width:1280px){
  .home-flow-main{grid-template-columns:minmax(460px,1fr) minmax(500px,.95fr) !important;}
  .home-flow-visual{--flow-module-w:min(100%, 580px) !important;}
  .flow-node{width:20.8% !important; aspect-ratio:1.06/.68 !important;}
  .flow-node-top{top:-0.6% !important;}
  .flow-node-bottom{bottom:-0.6% !important;}
}


/* MODU v0.7.2 — simetría real entre tarjetas + activación de nodos + órbita externa desde arriba-izquierda */
.home-flow-final{
  --flow-cycle:8.8s;
}
.home-flow-visual{
  --flow-center-box: clamp(190px, 29.5%, 214px);
  --flow-node-w: clamp(160px, 23.2%, 178px);
  --flow-node-h: clamp(126px, 18.2%, 142px);
  --flow-node-gap: clamp(20px, 2.1vw, 26px);
  --flow-connector-len: clamp(15px, 1.35vw, 18px);
  --flow-node-pad-x: 16px;
  --flow-node-pad-top: 14px;
  --flow-node-pad-bottom: 14px;
  overflow: visible;
}
.flow-center{
  width:var(--flow-center-box) !important;
  height:var(--flow-center-box) !important;
  aspect-ratio:1 / 1 !important;
}
.flow-center img{
  width:52% !important;
}
.flow-node{
  width:var(--flow-node-w) !important;
  min-height:var(--flow-node-h) !important;
  height:auto !important;
  aspect-ratio:auto !important;
  padding:var(--flow-node-pad-top) var(--flow-node-pad-x) var(--flow-node-pad-bottom) !important;
  border-radius:20px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
}
.flow-icon{margin:0 0 8px !important;}
.flow-node h3{margin:2px 0 8px !important;}
.flow-node p{margin:0 !important;}
/* Posicionamiento simétrico verdadero alrededor del círculo central */
.flow-node-left,.flow-node-right,.flow-node-top,.flow-node-bottom{right:auto !important; bottom:auto !important;}
.flow-node-left{
  left:calc(50% - (var(--flow-center-box) / 2) - var(--flow-node-gap) - var(--flow-node-w)) !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}
.flow-node-right{
  left:calc(50% + (var(--flow-center-box) / 2) + var(--flow-node-gap)) !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}
.flow-node-top{
  left:50% !important;
  top:calc(50% - (var(--flow-center-box) / 2) - var(--flow-node-gap) - var(--flow-node-h)) !important;
  transform:translateX(-50%) !important;
}
.flow-node-bottom{
  left:50% !important;
  top:calc(50% + (var(--flow-center-box) / 2) + var(--flow-node-gap)) !important;
  transform:translateX(-50%) !important;
}
/* Conectores: mismo largo y mismo punto de contacto con el círculo */
.flow-node-left .flow-node-line{right:calc(-1 * var(--flow-connector-len)) !important; top:50% !important; width:var(--flow-connector-len) !important; height:2px !important; transform:translateY(-50%) !important;}
.flow-node-right .flow-node-line{left:calc(-1 * var(--flow-connector-len)) !important; top:50% !important; width:var(--flow-connector-len) !important; height:2px !important; transform:translateY(-50%) !important;}
.flow-node-top .flow-node-line{left:50% !important; bottom:calc(-1 * var(--flow-connector-len)) !important; width:2px !important; height:var(--flow-connector-len) !important; transform:translateX(-50%) !important;}
.flow-node-bottom .flow-node-line{left:50% !important; top:calc(-1 * var(--flow-connector-len)) !important; width:2px !important; height:var(--flow-connector-len) !important; transform:translateX(-50%) !important;}
.flow-node-left .flow-node-dot{right:calc(-1 * (var(--flow-node-gap) + 8px)) !important; top:50% !important; transform:translateY(-50%) !important;}
.flow-node-right .flow-node-dot{left:calc(-1 * (var(--flow-node-gap) + 8px)) !important; top:50% !important; transform:translateY(-50%) !important;}
.flow-node-top .flow-node-dot{left:50% !important; bottom:calc(-1 * (var(--flow-node-gap) + 8px)) !important; transform:translateX(-50%) !important;}
.flow-node-bottom .flow-node-dot{left:50% !important; top:calc(-1 * (var(--flow-node-gap) + 8px)) !important; transform:translateX(-50%) !important;}
/* Duración sincronizada */
.home-flow-final.has-pulse-motion .orbit-dot,
.home-flow-final.has-pulse-motion .flow-node-dot,
.home-flow-final.has-pulse-motion .flow-node-line{
  animation-duration:var(--flow-cycle) !important;
  animation-timing-function:linear !important;
  animation-iteration-count:infinite !important;
}
/* La secuencia exterior empieza en arriba-izquierda */
.orbit-dot-8{animation-name:flowOuterDot1 !important;}
.orbit-dot-1{animation-name:flowOuterDot2 !important;}
.orbit-dot-2{animation-name:flowOuterDot3 !important;}
.orbit-dot-3{animation-name:flowOuterDot4 !important;}
.orbit-dot-4{animation-name:flowOuterDot5 !important;}
.orbit-dot-5{animation-name:flowOuterDot6 !important;}
.orbit-dot-6{animation-name:flowOuterDot7 !important;}
.orbit-dot-7{animation-name:flowOuterDot8 !important;}
/* Activación visible de los nodos al pasar la chispa */
.home-flow-final.has-pulse-motion .flow-node-dot{animation-name:flowNodeIdle620 !important;}
.home-flow-final.has-pulse-motion .flow-node-line{animation-name:flowLineIdle620 !important;}
.flow-node-left .flow-node-dot{animation-name:flowNodeLeft620 !important;}
.flow-node-top .flow-node-dot{animation-name:flowNodeTop620 !important;}
.flow-node-right .flow-node-dot{animation-name:flowNodeRight620 !important;}
.flow-node-bottom .flow-node-dot{animation-name:flowNodeBottom620 !important;}
.flow-node-left .flow-node-line{animation-name:flowLineLeft620 !important;}
.flow-node-top .flow-node-line{animation-name:flowLineTop620 !important;}
.flow-node-right .flow-node-line{animation-name:flowLineRight620 !important;}
.flow-node-bottom .flow-node-line{animation-name:flowLineBottom620 !important;}
@keyframes flowNodeIdle620{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 4px rgba(46,123,181,.14);}
}
@keyframes flowLineIdle620{
  0%,100%{background:rgba(46,123,181,.58);box-shadow:none;}
}
@keyframes flowNodeLeft620{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 4px rgba(46,123,181,.14);transform:translateY(-50%) scale(1);}
  0.6%,9%{background:var(--flow-fire);border-color:#fff4e5;box-shadow:0 0 0 8px rgba(242,140,34,.22),0 0 22px rgba(242,140,34,.95),0 0 38px rgba(255,190,115,.84);transform:translateY(-50%) scale(1.32);}
}
@keyframes flowNodeTop620{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 4px rgba(46,123,181,.14);transform:translateX(-50%) scale(1);}
  13%,21%{background:var(--flow-fire);border-color:#fff4e5;box-shadow:0 0 0 8px rgba(242,140,34,.22),0 0 22px rgba(242,140,34,.95),0 0 38px rgba(255,190,115,.84);transform:translateX(-50%) scale(1.32);}
}
@keyframes flowNodeRight620{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 4px rgba(46,123,181,.14);transform:translateY(-50%) scale(1);}
  25.5%,33.5%{background:var(--flow-fire);border-color:#fff4e5;box-shadow:0 0 0 8px rgba(242,140,34,.22),0 0 22px rgba(242,140,34,.95),0 0 38px rgba(255,190,115,.84);transform:translateY(-50%) scale(1.32);}
}
@keyframes flowNodeBottom620{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 4px rgba(46,123,181,.14);transform:translateX(-50%) scale(1);}
  38%,46%{background:var(--flow-fire);border-color:#fff4e5;box-shadow:0 0 0 8px rgba(242,140,34,.22),0 0 22px rgba(242,140,34,.95),0 0 38px rgba(255,190,115,.84);transform:translateX(-50%) scale(1.32);}
}
@keyframes flowLineLeft620{0%,100%{background:rgba(46,123,181,.58);}0.6%,9%{background:linear-gradient(90deg, rgba(255,196,120,.85) 0%, var(--flow-fire) 100%);box-shadow:0 0 14px rgba(242,140,34,.52);}}
@keyframes flowLineTop620{0%,100%{background:rgba(46,123,181,.58);}13%,21%{background:linear-gradient(180deg, rgba(255,196,120,.85) 0%, var(--flow-fire) 100%);box-shadow:0 0 14px rgba(242,140,34,.52);}}
@keyframes flowLineRight620{0%,100%{background:rgba(46,123,181,.58);}25.5%,33.5%{background:linear-gradient(270deg, rgba(255,196,120,.85) 0%, var(--flow-fire) 100%);box-shadow:0 0 14px rgba(242,140,34,.52);}}
@keyframes flowLineBottom620{0%,100%{background:rgba(46,123,181,.58);}38%,46%{background:linear-gradient(0deg, rgba(255,196,120,.85) 0%, var(--flow-fire) 100%);box-shadow:0 0 14px rgba(242,140,34,.52);}}
/* Ajuste fino por tamaños para mantener la misma lectura visual */
@media (max-width: 1500px){
  .home-flow-visual{
    --flow-center-box: clamp(186px, 29%, 208px);
    --flow-node-w: clamp(154px, 22.6%, 172px);
    --flow-node-h: clamp(122px, 17.5%, 136px);
    --flow-node-gap: clamp(18px, 1.9vw, 24px);
  }
}
@media (max-width: 1280px){
  .home-flow-main{grid-template-columns:minmax(430px, 1fr) minmax(470px, .96fr) !important;}
  .home-flow-visual{
    --flow-center-box: 194px;
    --flow-node-w: 160px;
    --flow-node-h: 126px;
    --flow-node-gap: 18px;
    --flow-connector-len: 15px;
  }
  .flow-node p{font-size:.92rem !important;}
}


/* MODU v0.7.2 — corrección final: distancia homogénea + activación clara de nodos al paso de la chispa */
.home-flow-final{
  --flow-cycle: 8.8s;
}
.home-flow-visual{
  --flow-center-box: clamp(188px, 28.2%, 206px);
  --flow-node-w: clamp(160px, 22.2%, 174px);
  --flow-node-h: clamp(126px, 17.9%, 138px);
  --flow-node-gap-side: clamp(18px, 1.9vw, 24px);
  --flow-node-gap-vertical: clamp(24px, 2.25vw, 30px);
  --flow-connector-len-side: clamp(14px, 1.2vw, 16px);
  --flow-connector-len-vertical: clamp(14px, 1.2vw, 16px);
}
.flow-center{
  width: var(--flow-center-box) !important;
  height: var(--flow-center-box) !important;
}
.flow-node{
  width: var(--flow-node-w) !important;
  min-height: var(--flow-node-h) !important;
  padding: 14px 16px 14px !important;
  border-radius: 20px !important;
  overflow: visible !important;
}
.flow-node-left,.flow-node-right,.flow-node-top,.flow-node-bottom{
  right: auto !important;
  bottom: auto !important;
}
.flow-node-left{
  left: calc(50% - (var(--flow-center-box) / 2) - var(--flow-node-gap-side) - var(--flow-node-w)) !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}
.flow-node-right{
  left: calc(50% + (var(--flow-center-box) / 2) + var(--flow-node-gap-side)) !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}
.flow-node-top{
  left: 50% !important;
  top: calc(50% - (var(--flow-center-box) / 2) - var(--flow-node-gap-vertical) - var(--flow-node-h)) !important;
  transform: translateX(-50%) !important;
}
.flow-node-bottom{
  left: 50% !important;
  top: calc(50% + (var(--flow-center-box) / 2) + var(--flow-node-gap-vertical)) !important;
  transform: translateX(-50%) !important;
}
/* conectores totalmente homogéneos */
.flow-node-left .flow-node-line{
  right: calc(-1 * var(--flow-connector-len-side)) !important;
  top: 50% !important;
  width: var(--flow-connector-len-side) !important;
  height: 2px !important;
  transform: translateY(-50%) !important;
}
.flow-node-right .flow-node-line{
  left: calc(-1 * var(--flow-connector-len-side)) !important;
  top: 50% !important;
  width: var(--flow-connector-len-side) !important;
  height: 2px !important;
  transform: translateY(-50%) !important;
}
.flow-node-top .flow-node-line{
  left: 50% !important;
  bottom: calc(-1 * var(--flow-connector-len-vertical)) !important;
  width: 2px !important;
  height: var(--flow-connector-len-vertical) !important;
  transform: translateX(-50%) !important;
}
.flow-node-bottom .flow-node-line{
  left: 50% !important;
  top: calc(-1 * var(--flow-connector-len-vertical)) !important;
  width: 2px !important;
  height: var(--flow-connector-len-vertical) !important;
  transform: translateX(-50%) !important;
}
.flow-node-left .flow-node-dot{
  right: calc(-1 * (var(--flow-node-gap-side) + 8px)) !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}
.flow-node-right .flow-node-dot{
  left: calc(-1 * (var(--flow-node-gap-side) + 8px)) !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}
.flow-node-top .flow-node-dot{
  left: 50% !important;
  bottom: calc(-1 * (var(--flow-node-gap-vertical) + 8px)) !important;
  transform: translateX(-50%) !important;
}
.flow-node-bottom .flow-node-dot{
  left: 50% !important;
  top: calc(-1 * (var(--flow-node-gap-vertical) + 8px)) !important;
  transform: translateX(-50%) !important;
}
/* activación muchísimo más visible al paso de la chispa */
.flow-node-dot{
  width: 18px !important;
  height: 18px !important;
  background: var(--flow-accent) !important;
  border: 3px solid #fff !important;
  box-shadow: 0 0 0 5px rgba(46,123,181,.16) !important;
  z-index: 3 !important;
}
.flow-node-line{
  background: rgba(46,123,181,.64) !important;
}
.home-flow-final.has-pulse-motion .flow-node-dot,
.home-flow-final.has-pulse-motion .flow-node-line{
  animation-duration: var(--flow-cycle) !important;
  animation-timing-function: linear !important;
  animation-iteration-count: infinite !important;
}
/* estado base */
@keyframes flowNodeIdle621{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.16);}
}
@keyframes flowLineIdle621{
  0%,100%{background:rgba(46,123,181,.64);box-shadow:none;}
}
/* chispa recorre izquierda -> arriba -> derecha -> abajo */
@keyframes flowNodeLeft621{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.16);transform:translateY(-50%) scale(1);} 
  0.4%,8.8%{background:var(--flow-fire);border-color:#fff6e8;box-shadow:0 0 0 9px rgba(242,140,34,.28),0 0 26px rgba(242,140,34,.98),0 0 48px rgba(255,188,108,.92);transform:translateY(-50%) scale(1.38);} 
}
@keyframes flowNodeTop621{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.16);transform:translateX(-50%) scale(1);} 
  13.2%,21.8%{background:var(--flow-fire);border-color:#fff6e8;box-shadow:0 0 0 9px rgba(242,140,34,.28),0 0 26px rgba(242,140,34,.98),0 0 48px rgba(255,188,108,.92);transform:translateX(-50%) scale(1.38);} 
}
@keyframes flowNodeRight621{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.16);transform:translateY(-50%) scale(1);} 
  26.1%,34.7%{background:var(--flow-fire);border-color:#fff6e8;box-shadow:0 0 0 9px rgba(242,140,34,.28),0 0 26px rgba(242,140,34,.98),0 0 48px rgba(255,188,108,.92);transform:translateY(-50%) scale(1.38);} 
}
@keyframes flowNodeBottom621{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.16);transform:translateX(-50%) scale(1);} 
  39%,47.6%{background:var(--flow-fire);border-color:#fff6e8;box-shadow:0 0 0 9px rgba(242,140,34,.28),0 0 26px rgba(242,140,34,.98),0 0 48px rgba(255,188,108,.92);transform:translateX(-50%) scale(1.38);} 
}
@keyframes flowLineLeft621{0%,100%{background:rgba(46,123,181,.64);box-shadow:none;}0.4%,8.8%{background:linear-gradient(90deg, rgba(255,206,142,.96) 0%, var(--flow-fire) 100%);box-shadow:0 0 14px rgba(242,140,34,.60),0 0 28px rgba(242,140,34,.32);}}
@keyframes flowLineTop621{0%,100%{background:rgba(46,123,181,.64);box-shadow:none;}13.2%,21.8%{background:linear-gradient(180deg, rgba(255,206,142,.96) 0%, var(--flow-fire) 100%);box-shadow:0 0 14px rgba(242,140,34,.60),0 0 28px rgba(242,140,34,.32);}}
@keyframes flowLineRight621{0%,100%{background:rgba(46,123,181,.64);box-shadow:none;}26.1%,34.7%{background:linear-gradient(270deg, rgba(255,206,142,.96) 0%, var(--flow-fire) 100%);box-shadow:0 0 14px rgba(242,140,34,.60),0 0 28px rgba(242,140,34,.32);}}
@keyframes flowLineBottom621{0%,100%{background:rgba(46,123,181,.64);box-shadow:none;}39%,47.6%{background:linear-gradient(0deg, rgba(255,206,142,.96) 0%, var(--flow-fire) 100%);box-shadow:0 0 14px rgba(242,140,34,.60),0 0 28px rgba(242,140,34,.32);}}
.home-flow-final.has-pulse-motion .flow-node-dot{animation-name:flowNodeIdle621 !important;}
.home-flow-final.has-pulse-motion .flow-node-line{animation-name:flowLineIdle621 !important;}
.flow-node-left .flow-node-dot{animation-name:flowNodeLeft621 !important;}
.flow-node-top .flow-node-dot{animation-name:flowNodeTop621 !important;}
.flow-node-right .flow-node-dot{animation-name:flowNodeRight621 !important;}
.flow-node-bottom .flow-node-dot{animation-name:flowNodeBottom621 !important;}
.flow-node-left .flow-node-line{animation-name:flowLineLeft621 !important;}
.flow-node-top .flow-node-line{animation-name:flowLineTop621 !important;}
.flow-node-right .flow-node-line{animation-name:flowLineRight621 !important;}
.flow-node-bottom .flow-node-line{animation-name:flowLineBottom621 !important;}
/* secuencia exterior desde arriba-izquierda */
.orbit-dot-8{animation-name:flowOuterDot1 !important;}
.orbit-dot-1{animation-name:flowOuterDot2 !important;}
.orbit-dot-2{animation-name:flowOuterDot3 !important;}
.orbit-dot-3{animation-name:flowOuterDot4 !important;}
.orbit-dot-4{animation-name:flowOuterDot5 !important;}
.orbit-dot-5{animation-name:flowOuterDot6 !important;}
.orbit-dot-6{animation-name:flowOuterDot7 !important;}
.orbit-dot-7{animation-name:flowOuterDot8 !important;}
@media (max-width: 1500px){
  .home-flow-visual{
    --flow-center-box: 202px;
    --flow-node-w: 170px;
    --flow-node-h: 136px;
    --flow-node-gap-side: 20px;
    --flow-node-gap-vertical: 26px;
  }
}
@media (max-width: 1366px){
  .home-flow-visual{
    --flow-center-box: 194px;
    --flow-node-w: 164px;
    --flow-node-h: 132px;
    --flow-node-gap-side: 18px;
    --flow-node-gap-vertical: 24px;
  }
  .flow-node h3{font-size:clamp(.74rem,.94vw,.90rem) !important;}
  .flow-node p{font-size:clamp(.66rem,.82vw,.77rem) !important;}
}
@media (max-width: 1280px){
  .home-flow-main{grid-template-columns:minmax(430px,1fr) minmax(465px,.96fr) !important;}
  .home-flow-visual{
    --flow-center-box: 188px;
    --flow-node-w: 158px;
    --flow-node-h: 128px;
    --flow-node-gap-side: 16px;
    --flow-node-gap-vertical: 22px;
  }
}


/* MODU v0.7.2 — corrección específica solicitada: tarjeta superior + activación de dot/connector */
.home-flow-final{
  --flow-cycle: 8.8s;
}
.home-flow-visual{
  --flow-center-box: clamp(182px, 26.4%, 198px);
  --flow-node-w: clamp(150px, 21.4%, 164px);
  --flow-node-h: clamp(140px, 18.2%, 148px);
  --flow-node-gap-side: clamp(22px, 2.1vw, 28px);
  --flow-node-gap-vertical: clamp(22px, 2.1vw, 28px);
  --flow-connector-len-side: 16px;
  --flow-connector-len-vertical: 16px;
}
.flow-center{width:var(--flow-center-box)!important;height:var(--flow-center-box)!important;}
.flow-node{
  width:var(--flow-node-w)!important;
  height:var(--flow-node-h)!important;
  min-height:var(--flow-node-h)!important;
  padding:12px 14px 12px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px!important;
  border-radius:20px!important;
}
.flow-node .flow-icon{margin:0 0 2px!important;}
.flow-node h3{margin:0!important;line-height:1.08!important;}
.flow-node p{margin:0!important;line-height:1.25!important;}
.flow-node-left,.flow-node-right,.flow-node-top,.flow-node-bottom{right:auto!important;bottom:auto!important;}
.flow-node-left{left:calc(50% - (var(--flow-center-box)/2) - var(--flow-node-gap-side) - var(--flow-node-w))!important;top:50%!important;transform:translateY(-50%)!important;}
.flow-node-right{left:calc(50% + (var(--flow-center-box)/2) + var(--flow-node-gap-side))!important;top:50%!important;transform:translateY(-50%)!important;}
.flow-node-top{left:50%!important;top:calc(50% - (var(--flow-center-box)/2) - var(--flow-node-gap-vertical) - var(--flow-node-h))!important;transform:translateX(-50%)!important;}
.flow-node-bottom{left:50%!important;top:calc(50% + (var(--flow-center-box)/2) + var(--flow-node-gap-vertical))!important;transform:translateX(-50%)!important;}
.flow-node-left .flow-node-line{right:calc(-1 * var(--flow-connector-len-side))!important;top:50%!important;width:var(--flow-connector-len-side)!important;height:2px!important;transform:translateY(-50%)!important;}
.flow-node-right .flow-node-line{left:calc(-1 * var(--flow-connector-len-side))!important;top:50%!important;width:var(--flow-connector-len-side)!important;height:2px!important;transform:translateY(-50%)!important;}
.flow-node-top .flow-node-line{left:50%!important;bottom:calc(-1 * var(--flow-connector-len-vertical))!important;width:2px!important;height:var(--flow-connector-len-vertical)!important;transform:translateX(-50%)!important;}
.flow-node-bottom .flow-node-line{left:50%!important;top:calc(-1 * var(--flow-connector-len-vertical))!important;width:2px!important;height:var(--flow-connector-len-vertical)!important;transform:translateX(-50%)!important;}
.flow-node-left .flow-node-dot{right:calc(-1 * (var(--flow-node-gap-side) + 9px))!important;top:50%!important;transform:translateY(-50%)!important;}
.flow-node-right .flow-node-dot{left:calc(-1 * (var(--flow-node-gap-side) + 9px))!important;top:50%!important;transform:translateY(-50%)!important;}
.flow-node-top .flow-node-dot{left:50%!important;bottom:calc(-1 * (var(--flow-node-gap-vertical) + 9px))!important;transform:translateX(-50%)!important;}
.flow-node-bottom .flow-node-dot{left:50%!important;top:calc(-1 * (var(--flow-node-gap-vertical) + 9px))!important;transform:translateX(-50%)!important;}
/* estos son los circulitos conectores que deben encenderse claramente al paso de la chispa */
.flow-node-dot{
  width:18px!important;height:18px!important;border-radius:50%!important;
  background:var(--flow-accent)!important;border:3px solid #fff!important;
  box-shadow:0 0 0 5px rgba(46,123,181,.16)!important;z-index:5!important;
}
.flow-node-line{background:rgba(46,123,181,.64)!important;z-index:4!important;}
.home-flow-final.has-pulse-motion .flow-node-dot,
.home-flow-final.has-pulse-motion .flow-node-line{animation-duration:var(--flow-cycle)!important;animation-timing-function:linear!important;animation-iteration-count:infinite!important;}
@keyframes flowNodeDotLeft622{0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.16);transform:translateY(-50%) scale(1);}0.2%,9.8%{background:var(--flow-fire);border-color:#fff6e8;box-shadow:0 0 0 8px rgba(242,140,34,.34),0 0 18px rgba(242,140,34,.92),0 0 34px rgba(255,205,138,.9);transform:translateY(-50%) scale(1.46);}}
@keyframes flowNodeDotTop622{0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.16);transform:translateX(-50%) scale(1);}12.6%,22.2%{background:var(--flow-fire);border-color:#fff6e8;box-shadow:0 0 0 8px rgba(242,140,34,.34),0 0 18px rgba(242,140,34,.92),0 0 34px rgba(255,205,138,.9);transform:translateX(-50%) scale(1.46);}}
@keyframes flowNodeDotRight622{0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.16);transform:translateY(-50%) scale(1);}25%,34.6%{background:var(--flow-fire);border-color:#fff6e8;box-shadow:0 0 0 8px rgba(242,140,34,.34),0 0 18px rgba(242,140,34,.92),0 0 34px rgba(255,205,138,.9);transform:translateY(-50%) scale(1.46);}}
@keyframes flowNodeDotBottom622{0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.16);transform:translateX(-50%) scale(1);}37.4%,47%{background:var(--flow-fire);border-color:#fff6e8;box-shadow:0 0 0 8px rgba(242,140,34,.34),0 0 18px rgba(242,140,34,.92),0 0 34px rgba(255,205,138,.9);transform:translateX(-50%) scale(1.46);}}
@keyframes flowNodeLineLeft622{0%,100%{background:rgba(46,123,181,.64);box-shadow:none;}0.2%,9.8%{background:linear-gradient(90deg, rgba(255,210,148,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,140,34,.55),0 0 24px rgba(242,140,34,.28);}}
@keyframes flowNodeLineTop622{0%,100%{background:rgba(46,123,181,.64);box-shadow:none;}12.6%,22.2%{background:linear-gradient(180deg, rgba(255,210,148,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,140,34,.55),0 0 24px rgba(242,140,34,.28);}}
@keyframes flowNodeLineRight622{0%,100%{background:rgba(46,123,181,.64);box-shadow:none;}25%,34.6%{background:linear-gradient(270deg, rgba(255,210,148,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,140,34,.55),0 0 24px rgba(242,140,34,.28);}}
@keyframes flowNodeLineBottom622{0%,100%{background:rgba(46,123,181,.64);box-shadow:none;}37.4%,47%{background:linear-gradient(0deg, rgba(255,210,148,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,140,34,.55),0 0 24px rgba(242,140,34,.28);}}
.flow-node-left .flow-node-dot{animation-name:flowNodeDotLeft622!important;}
.flow-node-top .flow-node-dot{animation-name:flowNodeDotTop622!important;}
.flow-node-right .flow-node-dot{animation-name:flowNodeDotRight622!important;}
.flow-node-bottom .flow-node-dot{animation-name:flowNodeDotBottom622!important;}
.flow-node-left .flow-node-line{animation-name:flowNodeLineLeft622!important;}
.flow-node-top .flow-node-line{animation-name:flowNodeLineTop622!important;}
.flow-node-right .flow-node-line{animation-name:flowNodeLineRight622!important;}
.flow-node-bottom .flow-node-line{animation-name:flowNodeLineBottom622!important;}
@media (max-width: 1500px){
  .home-flow-visual{--flow-center-box:194px;--flow-node-w:160px;--flow-node-h:144px;--flow-node-gap-side:22px;--flow-node-gap-vertical:22px;}
}
@media (max-width: 1366px){
  .home-flow-visual{--flow-center-box:188px;--flow-node-w:154px;--flow-node-h:140px;--flow-node-gap-side:22px;--flow-node-gap-vertical:22px;}
  .flow-node h3{font-size:clamp(.73rem,.92vw,.88rem)!important;}
  .flow-node p{font-size:clamp(.65rem,.80vw,.76rem)!important;}
}
@media (max-width: 1280px){
  .home-flow-main{grid-template-columns:minmax(420px,1fr) minmax(455px,.95fr)!important;}
  .home-flow-visual{--flow-center-box:182px;--flow-node-w:150px;--flow-node-h:136px;--flow-node-gap-side:20px;--flow-node-gap-vertical:20px;}
}


/* MODU v0.7.2 — ajuste de contenido en tarjetas + activación visible de conectores */
.home-flow-final{
  --flow-cycle: 8.8s;
}
.home-flow-visual{
  --flow-center-box: clamp(182px, 26.4%, 198px);
  --flow-node-w: clamp(150px, 21.4%, 164px);
  --flow-node-h: clamp(140px, 18.2%, 148px);
  --flow-node-gap-side: clamp(22px, 2.1vw, 28px);
  --flow-node-gap-vertical-bottom: clamp(22px, 2.1vw, 28px);
  --flow-node-gap-vertical-top: clamp(34px, 2.8vw, 40px);
  --flow-connector-len-side: 16px;
  --flow-connector-len-vertical: 16px;
}
.flow-node{
  width:var(--flow-node-w)!important;
  height:var(--flow-node-h)!important;
  min-height:var(--flow-node-h)!important;
  padding:8px 14px 18px!important;
  gap:4px!important;
  justify-content:flex-start!important;
}
.flow-node .flow-icon{margin:0 0 1px!important;transform:translateY(-1px)!important;}
.flow-node h3{margin:0!important;line-height:1.04!important;}
.flow-node p{margin:0!important;line-height:1.22!important;}
.flow-node-top{left:50%!important;top:calc(50% - (var(--flow-center-box)/2) - var(--flow-node-gap-vertical-top) - var(--flow-node-h))!important;transform:translateX(-50%)!important;}
.flow-node-bottom{left:50%!important;top:calc(50% + (var(--flow-center-box)/2) + var(--flow-node-gap-vertical-bottom))!important;transform:translateX(-50%)!important;}
.flow-node-top .flow-node-line{left:50%!important;bottom:calc(-1 * var(--flow-connector-len-vertical))!important;width:2px!important;height:var(--flow-connector-len-vertical)!important;transform:translateX(-50%)!important;}
.flow-node-bottom .flow-node-line{left:50%!important;top:calc(-1 * var(--flow-connector-len-vertical))!important;width:2px!important;height:var(--flow-connector-len-vertical)!important;transform:translateX(-50%)!important;}
.flow-node-top .flow-node-dot{left:50%!important;bottom:calc(-1 * (var(--flow-node-gap-vertical-top) + 9px))!important;transform:translateX(-50%)!important;}
.flow-node-bottom .flow-node-dot{left:50%!important;top:calc(-1 * (var(--flow-node-gap-vertical-bottom) + 9px))!important;transform:translateX(-50%)!important;}
.flow-node-left .flow-node-dot{right:calc(-1 * (var(--flow-node-gap-side) + 9px))!important;top:50%!important;transform:translateY(-50%)!important;}
.flow-node-right .flow-node-dot{left:calc(-1 * (var(--flow-node-gap-side) + 9px))!important;top:50%!important;transform:translateY(-50%)!important;}
.flow-node-dot{
  width:18px!important;height:18px!important;border-radius:50%!important;
  background:var(--flow-accent)!important;border:3px solid #fff!important;
  box-shadow:0 0 0 5px rgba(46,123,181,.18)!important;z-index:6!important;
}
.flow-node-line{background:rgba(46,123,181,.72)!important;z-index:5!important;}
.home-flow-final.has-pulse-motion .flow-node-dot,
.home-flow-final.has-pulse-motion .flow-node-line{animation-duration:var(--flow-cycle)!important;animation-timing-function:linear!important;animation-iteration-count:infinite!important;}
@keyframes flowNodeDotLeft623{0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.18);transform:translateY(-50%) scale(1);}0.1%,12.4%{background:var(--flow-fire);border-color:#fff8ee;box-shadow:0 0 0 8px rgba(242,140,34,.40),0 0 18px rgba(242,140,34,.95),0 0 34px rgba(255,214,158,.98);transform:translateY(-50%) scale(1.55);}}
@keyframes flowNodeDotTop623{0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.18);transform:translateX(-50%) scale(1);}12.6%,24.9%{background:var(--flow-fire);border-color:#fff8ee;box-shadow:0 0 0 8px rgba(242,140,34,.40),0 0 18px rgba(242,140,34,.95),0 0 34px rgba(255,214,158,.98);transform:translateX(-50%) scale(1.55);}}
@keyframes flowNodeDotRight623{0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.18);transform:translateY(-50%) scale(1);}25.1%,37.4%{background:var(--flow-fire);border-color:#fff8ee;box-shadow:0 0 0 8px rgba(242,140,34,.40),0 0 18px rgba(242,140,34,.95),0 0 34px rgba(255,214,158,.98);transform:translateY(-50%) scale(1.55);}}
@keyframes flowNodeDotBottom623{0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.18);transform:translateX(-50%) scale(1);}37.6%,49.9%{background:var(--flow-fire);border-color:#fff8ee;box-shadow:0 0 0 8px rgba(242,140,34,.40),0 0 18px rgba(242,140,34,.95),0 0 34px rgba(255,214,158,.98);transform:translateX(-50%) scale(1.55);}}
@keyframes flowNodeLineLeft623{0%,100%{background:rgba(46,123,181,.72);box-shadow:none;}0.1%,12.4%{background:linear-gradient(90deg, rgba(255,220,178,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 14px rgba(242,140,34,.60),0 0 28px rgba(242,140,34,.30);}}
@keyframes flowNodeLineTop623{0%,100%{background:rgba(46,123,181,.72);box-shadow:none;}12.6%,24.9%{background:linear-gradient(180deg, rgba(255,220,178,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 14px rgba(242,140,34,.60),0 0 28px rgba(242,140,34,.30);}}
@keyframes flowNodeLineRight623{0%,100%{background:rgba(46,123,181,.72);box-shadow:none;}25.1%,37.4%{background:linear-gradient(270deg, rgba(255,220,178,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 14px rgba(242,140,34,.60),0 0 28px rgba(242,140,34,.30);}}
@keyframes flowNodeLineBottom623{0%,100%{background:rgba(46,123,181,.72);box-shadow:none;}37.6%,49.9%{background:linear-gradient(0deg, rgba(255,220,178,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 14px rgba(242,140,34,.60),0 0 28px rgba(242,140,34,.30);}}
.flow-node-left .flow-node-dot{animation-name:flowNodeDotLeft623!important;}
.flow-node-top .flow-node-dot{animation-name:flowNodeDotTop623!important;}
.flow-node-right .flow-node-dot{animation-name:flowNodeDotRight623!important;}
.flow-node-bottom .flow-node-dot{animation-name:flowNodeDotBottom623!important;}
.flow-node-left .flow-node-line{animation-name:flowNodeLineLeft623!important;}
.flow-node-top .flow-node-line{animation-name:flowNodeLineTop623!important;}
.flow-node-right .flow-node-line{animation-name:flowNodeLineRight623!important;}
.flow-node-bottom .flow-node-line{animation-name:flowNodeLineBottom623!important;}
@media (max-width: 1500px){
  .home-flow-visual{--flow-center-box:194px;--flow-node-w:160px;--flow-node-h:144px;--flow-node-gap-side:22px;--flow-node-gap-vertical-bottom:22px;--flow-node-gap-vertical-top:34px;}
}
@media (max-width: 1366px){
  .home-flow-visual{--flow-center-box:188px;--flow-node-w:154px;--flow-node-h:140px;--flow-node-gap-side:22px;--flow-node-gap-vertical-bottom:22px;--flow-node-gap-vertical-top:34px;}
  .flow-node h3{font-size:clamp(.73rem,.92vw,.88rem)!important;}
  .flow-node p{font-size:clamp(.65rem,.80vw,.76rem)!important;}
}
@media (max-width: 1280px){
  .home-flow-main{grid-template-columns:minmax(420px,1fr) minmax(455px,.95fr)!important;}
  .home-flow-visual{--flow-center-box:182px;--flow-node-w:150px;--flow-node-h:136px;--flow-node-gap-side:20px;--flow-node-gap-vertical-bottom:20px;--flow-node-gap-vertical-top:31px;}
}


/* MODU v0.7.2 — simetría superior + activación clara de dot conectores */
.home-flow-visual{
  --flow-center-box: clamp(178px, 25%, 188px);
  --flow-node-gap-side: clamp(22px, 2vw, 24px);
  --flow-node-gap-vertical-top: clamp(22px, 2vw, 24px) !important;
  --flow-node-gap-vertical-bottom: clamp(22px, 2vw, 24px) !important;
  --flow-connector-len-side: 18px;
  --flow-connector-len-vertical: 18px;
}
.flow-node{
  padding:8px 14px 22px !important;
  gap:5px !important;
  overflow:visible !important;
}
.flow-node .flow-icon{margin:0 0 2px !important; transform:translateY(-2px) !important;}
.flow-node h3{margin:0 !important; line-height:1.03 !important;}
.flow-node p{margin:0 !important; line-height:1.2 !important;}
/* igualar de verdad la distancia superior con el resto */
.flow-node-top{top:calc(50% - (var(--flow-center-box)/2) - var(--flow-node-gap-vertical-top) - var(--flow-node-h)) !important;}
.flow-node-bottom{top:calc(50% + (var(--flow-center-box)/2) + var(--flow-node-gap-vertical-bottom)) !important;}
.flow-node-left{left:calc(50% - (var(--flow-center-box)/2) - var(--flow-node-gap-side) - var(--flow-node-w)) !important;}
.flow-node-right{left:calc(50% + (var(--flow-center-box)/2) + var(--flow-node-gap-side)) !important;}
.flow-node-top .flow-node-line{height:var(--flow-connector-len-vertical) !important; bottom:calc(-1 * var(--flow-connector-len-vertical)) !important;}
.flow-node-bottom .flow-node-line{height:var(--flow-connector-len-vertical) !important; top:calc(-1 * var(--flow-connector-len-vertical)) !important;}
.flow-node-left .flow-node-line{width:var(--flow-connector-len-side) !important; right:calc(-1 * var(--flow-connector-len-side)) !important;}
.flow-node-right .flow-node-line{width:var(--flow-connector-len-side) !important; left:calc(-1 * var(--flow-connector-len-side)) !important;}
.flow-node-top .flow-node-dot{bottom:calc(-1 * (var(--flow-node-gap-vertical-top) + 10px)) !important;}
.flow-node-bottom .flow-node-dot{top:calc(-1 * (var(--flow-node-gap-vertical-bottom) + 10px)) !important;}
.flow-node-left .flow-node-dot{right:calc(-1 * (var(--flow-node-gap-side) + 10px)) !important;}
.flow-node-right .flow-node-dot{left:calc(-1 * (var(--flow-node-gap-side) + 10px)) !important;}
/* Dot conector más visible y claramente fuera del círculo */
.flow-node-dot{
  width:20px !important;
  height:20px !important;
  background:var(--flow-accent) !important;
  border:3px solid #fff !important;
  box-shadow:0 0 0 5px rgba(46,123,181,.18) !important;
  z-index:12 !important;
}
.flow-node-line{z-index:11 !important;}
.home-flow-final.has-pulse-motion .flow-node-dot,
.home-flow-final.has-pulse-motion .flow-node-line{animation-duration:var(--flow-cycle, 8.8s) !important; animation-timing-function:linear !important; animation-iteration-count:infinite !important;}
@keyframes flowConnectorDotLeft624{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.18);transform:translateY(-50%) scale(1);} 
  0.1%,13.5%{background:var(--flow-fire);border-color:#fff7eb;box-shadow:0 0 0 8px rgba(242,140,34,.44),0 0 16px rgba(242,140,34,.95),0 0 32px rgba(255,216,156,.95);transform:translateY(-50%) scale(1.62);} }
@keyframes flowConnectorDotTop624{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.18);transform:translateX(-50%) scale(1);} 
  13.7%,27.1%{background:var(--flow-fire);border-color:#fff7eb;box-shadow:0 0 0 8px rgba(242,140,34,.44),0 0 16px rgba(242,140,34,.95),0 0 32px rgba(255,216,156,.95);transform:translateX(-50%) scale(1.62);} }
@keyframes flowConnectorDotRight624{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.18);transform:translateY(-50%) scale(1);} 
  27.3%,40.7%{background:var(--flow-fire);border-color:#fff7eb;box-shadow:0 0 0 8px rgba(242,140,34,.44),0 0 16px rgba(242,140,34,.95),0 0 32px rgba(255,216,156,.95);transform:translateY(-50%) scale(1.62);} }
@keyframes flowConnectorDotBottom624{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.18);transform:translateX(-50%) scale(1);} 
  40.9%,54.3%{background:var(--flow-fire);border-color:#fff7eb;box-shadow:0 0 0 8px rgba(242,140,34,.44),0 0 16px rgba(242,140,34,.95),0 0 32px rgba(255,216,156,.95);transform:translateX(-50%) scale(1.62);} }
@keyframes flowConnectorLineLeft624{0%,100%{background:rgba(46,123,181,.74);box-shadow:none;}0.1%,13.5%{background:linear-gradient(90deg, rgba(255,226,188,.96) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,140,34,.56),0 0 24px rgba(242,140,34,.26);}}
@keyframes flowConnectorLineTop624{0%,100%{background:rgba(46,123,181,.74);box-shadow:none;}13.7%,27.1%{background:linear-gradient(180deg, rgba(255,226,188,.96) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,140,34,.56),0 0 24px rgba(242,140,34,.26);}}
@keyframes flowConnectorLineRight624{0%,100%{background:rgba(46,123,181,.74);box-shadow:none;}27.3%,40.7%{background:linear-gradient(270deg, rgba(255,226,188,.96) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,140,34,.56),0 0 24px rgba(242,140,34,.26);}}
@keyframes flowConnectorLineBottom624{0%,100%{background:rgba(46,123,181,.74);box-shadow:none;}40.9%,54.3%{background:linear-gradient(0deg, rgba(255,226,188,.96) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,140,34,.56),0 0 24px rgba(242,140,34,.26);}}
.flow-node-left .flow-node-dot{animation-name:flowConnectorDotLeft624 !important;}
.flow-node-top .flow-node-dot{animation-name:flowConnectorDotTop624 !important;}
.flow-node-right .flow-node-dot{animation-name:flowConnectorDotRight624 !important;}
.flow-node-bottom .flow-node-dot{animation-name:flowConnectorDotBottom624 !important;}
.flow-node-left .flow-node-line{animation-name:flowConnectorLineLeft624 !important;}
.flow-node-top .flow-node-line{animation-name:flowConnectorLineTop624 !important;}
.flow-node-right .flow-node-line{animation-name:flowConnectorLineRight624 !important;}
.flow-node-bottom .flow-node-line{animation-name:flowConnectorLineBottom624 !important;}
@media (max-width: 1366px){
  .home-flow-visual{--flow-center-box:184px;--flow-node-w:150px;--flow-node-h:136px;--flow-node-gap-side:22px;--flow-node-gap-vertical-top:22px;--flow-node-gap-vertical-bottom:22px;}
}
@media (max-width: 1280px){
  .home-flow-visual{--flow-center-box:180px;--flow-node-w:148px;--flow-node-h:134px;--flow-node-gap-side:20px;--flow-node-gap-vertical-top:20px;--flow-node-gap-vertical-bottom:20px;}
}


/* MODU v0.7.2 — esquema más aireado, coherente y agradable a la vista */
.home-flow-final{
  --flow-cycle: 8.8s;
}

/*
  Cambio de criterio:
  - Las tarjetas ya NO se pegan al círculo central.
  - El sistema se lee como un esquema: tarjeta -> conector -> punto -> círculo.
  - Los puntos conectores quedan fuera del círculo del logo.
*/
.home-flow-visual{
  --flow-module-w:min(100%, 680px) !important;
  --flow-center-box: clamp(170px, 24.4%, 184px) !important;
  --flow-node-w: clamp(148px, 21.2%, 164px) !important;
  --flow-node-h: clamp(126px, 17.6%, 138px) !important;
  --flow-node-gap-side: clamp(46px, 4.2vw, 58px) !important;
  --flow-node-gap-vertical-top: clamp(44px, 4.0vw, 56px) !important;
  --flow-node-gap-vertical-bottom: clamp(44px, 4.0vw, 56px) !important;
  --flow-connector-len-side: clamp(26px, 2.2vw, 34px) !important;
  --flow-connector-len-vertical: clamp(26px, 2.2vw, 34px) !important;
}

.flow-center{
  width:var(--flow-center-box) !important;
  height:var(--flow-center-box) !important;
}

.flow-core-svg{
  width:41.5% !important;
}

.flow-node{
  width:var(--flow-node-w) !important;
  height:var(--flow-node-h) !important;
  min-height:var(--flow-node-h) !important;
  padding:9px 14px 14px !important;
  border-radius:20px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  align-items:center !important;
  gap:4px !important;
  overflow:visible !important;
}

.flow-node .flow-icon{
  margin:0 0 2px !important;
  transform:translateY(-1px) !important;
}

.flow-node h3{
  margin:0 !important;
  line-height:1.06 !important;
}

.flow-node p{
  margin:0 !important;
  line-height:1.23 !important;
}

/* Distancias simétricas amplias */
.flow-node-left,
.flow-node-right,
.flow-node-top,
.flow-node-bottom{
  right:auto !important;
  bottom:auto !important;
}

.flow-node-left{
  left:calc(50% - (var(--flow-center-box) / 2) - var(--flow-node-gap-side) - var(--flow-node-w)) !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}

.flow-node-right{
  left:calc(50% + (var(--flow-center-box) / 2) + var(--flow-node-gap-side)) !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}

.flow-node-top{
  left:50% !important;
  top:calc(50% - (var(--flow-center-box) / 2) - var(--flow-node-gap-vertical-top) - var(--flow-node-h)) !important;
  transform:translateX(-50%) !important;
}

.flow-node-bottom{
  left:50% !important;
  top:calc(50% + (var(--flow-center-box) / 2) + var(--flow-node-gap-vertical-bottom)) !important;
  transform:translateX(-50%) !important;
}

/* Líneas claras, de la tarjeta hacia el sistema */
.flow-node-left .flow-node-line{
  right:calc(-1 * var(--flow-connector-len-side)) !important;
  top:50% !important;
  width:var(--flow-connector-len-side) !important;
  height:2px !important;
  transform:translateY(-50%) !important;
}

.flow-node-right .flow-node-line{
  left:calc(-1 * var(--flow-connector-len-side)) !important;
  top:50% !important;
  width:var(--flow-connector-len-side) !important;
  height:2px !important;
  transform:translateY(-50%) !important;
}

.flow-node-top .flow-node-line{
  left:50% !important;
  bottom:calc(-1 * var(--flow-connector-len-vertical)) !important;
  width:2px !important;
  height:var(--flow-connector-len-vertical) !important;
  transform:translateX(-50%) !important;
}

.flow-node-bottom .flow-node-line{
  left:50% !important;
  top:calc(-1 * var(--flow-connector-len-vertical)) !important;
  width:2px !important;
  height:var(--flow-connector-len-vertical) !important;
  transform:translateX(-50%) !important;
}

/*
  Puntos conectores fuera del círculo:
  - Antes estaban entrando en el círculo.
  - Ahora quedan aproximadamente a mitad del espacio entre tarjeta y círculo.
*/
.flow-node-left .flow-node-dot{
  right:calc(-1 * (var(--flow-node-gap-side) / 2 + 9px)) !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}

.flow-node-right .flow-node-dot{
  left:calc(-1 * (var(--flow-node-gap-side) / 2 + 9px)) !important;
  top:50% !important;
  transform:translateY(-50%) !important;
}

.flow-node-top .flow-node-dot{
  left:50% !important;
  bottom:calc(-1 * (var(--flow-node-gap-vertical-top) / 2 + 9px)) !important;
  transform:translateX(-50%) !important;
}

.flow-node-bottom .flow-node-dot{
  left:50% !important;
  top:calc(-1 * (var(--flow-node-gap-vertical-bottom) / 2 + 9px)) !important;
  transform:translateX(-50%) !important;
}

/* Punto conector visible, fuera del círculo y preparado para activación */
.flow-node-dot{
  width:20px !important;
  height:20px !important;
  border-radius:50% !important;
  background:var(--flow-accent) !important;
  border:3px solid #fff !important;
  box-shadow:0 0 0 5px rgba(46,123,181,.16) !important;
  z-index:20 !important;
}

.flow-node-line{
  background:rgba(46,123,181,.66) !important;
  z-index:18 !important;
}

/* Activación clara de los puntos conectores al paso de la chispa */
.home-flow-final.has-pulse-motion .flow-node-dot,
.home-flow-final.has-pulse-motion .flow-node-line{
  animation-duration:var(--flow-cycle) !important;
  animation-timing-function:linear !important;
  animation-iteration-count:infinite !important;
}

@keyframes flowConnectorDotLeft625{
  0%,100%{
    background:var(--flow-accent);
    border-color:#fff;
    box-shadow:0 0 0 5px rgba(46,123,181,.16);
    transform:translateY(-50%) scale(1);
  }
  0.1%,12.5%{
    background:var(--flow-fire);
    border-color:#fff7e8;
    box-shadow:0 0 0 9px rgba(242,140,34,.36),0 0 20px rgba(242,140,34,.96),0 0 40px rgba(255,214,158,.96);
    transform:translateY(-50%) scale(1.48);
  }
}

@keyframes flowConnectorDotTop625{
  0%,100%{
    background:var(--flow-accent);
    border-color:#fff;
    box-shadow:0 0 0 5px rgba(46,123,181,.16);
    transform:translateX(-50%) scale(1);
  }
  13%,25.4%{
    background:var(--flow-fire);
    border-color:#fff7e8;
    box-shadow:0 0 0 9px rgba(242,140,34,.36),0 0 20px rgba(242,140,34,.96),0 0 40px rgba(255,214,158,.96);
    transform:translateX(-50%) scale(1.48);
  }
}

@keyframes flowConnectorDotRight625{
  0%,100%{
    background:var(--flow-accent);
    border-color:#fff;
    box-shadow:0 0 0 5px rgba(46,123,181,.16);
    transform:translateY(-50%) scale(1);
  }
  25.8%,38.2%{
    background:var(--flow-fire);
    border-color:#fff7e8;
    box-shadow:0 0 0 9px rgba(242,140,34,.36),0 0 20px rgba(242,140,34,.96),0 0 40px rgba(255,214,158,.96);
    transform:translateY(-50%) scale(1.48);
  }
}

@keyframes flowConnectorDotBottom625{
  0%,100%{
    background:var(--flow-accent);
    border-color:#fff;
    box-shadow:0 0 0 5px rgba(46,123,181,.16);
    transform:translateX(-50%) scale(1);
  }
  38.7%,51.1%{
    background:var(--flow-fire);
    border-color:#fff7e8;
    box-shadow:0 0 0 9px rgba(242,140,34,.36),0 0 20px rgba(242,140,34,.96),0 0 40px rgba(255,214,158,.96);
    transform:translateX(-50%) scale(1.48);
  }
}

@keyframes flowConnectorLineLeft625{
  0%,100%{background:rgba(46,123,181,.66);box-shadow:none;}
  0.1%,12.5%{background:linear-gradient(90deg, rgba(255,226,188,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,140,34,.55),0 0 24px rgba(242,140,34,.28);}
}

@keyframes flowConnectorLineTop625{
  0%,100%{background:rgba(46,123,181,.66);box-shadow:none;}
  13%,25.4%{background:linear-gradient(180deg, rgba(255,226,188,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,140,34,.55),0 0 24px rgba(242,140,34,.28);}
}

@keyframes flowConnectorLineRight625{
  0%,100%{background:rgba(46,123,181,.66);box-shadow:none;}
  25.8%,38.2%{background:linear-gradient(270deg, rgba(255,226,188,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,140,34,.55),0 0 24px rgba(242,140,34,.28);}
}

@keyframes flowConnectorLineBottom625{
  0%,100%{background:rgba(46,123,181,.66);box-shadow:none;}
  38.7%,51.1%{background:linear-gradient(0deg, rgba(255,226,188,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,140,34,.55),0 0 24px rgba(242,140,34,.28);}
}

.flow-node-left .flow-node-dot{animation-name:flowConnectorDotLeft625 !important;}
.flow-node-top .flow-node-dot{animation-name:flowConnectorDotTop625 !important;}
.flow-node-right .flow-node-dot{animation-name:flowConnectorDotRight625 !important;}
.flow-node-bottom .flow-node-dot{animation-name:flowConnectorDotBottom625 !important;}

.flow-node-left .flow-node-line{animation-name:flowConnectorLineLeft625 !important;}
.flow-node-top .flow-node-line{animation-name:flowConnectorLineTop625 !important;}
.flow-node-right .flow-node-line{animation-name:flowConnectorLineRight625 !important;}
.flow-node-bottom .flow-node-line{animation-name:flowConnectorLineBottom625 !important;}

/* Ajustes responsive para que no se rompa en portátil */
@media (max-width:1500px){
  .home-flow-visual{
    --flow-module-w:min(100%, 650px) !important;
    --flow-center-box:182px !important;
    --flow-node-w:156px !important;
    --flow-node-h:134px !important;
    --flow-node-gap-side:48px !important;
    --flow-node-gap-vertical-top:46px !important;
    --flow-node-gap-vertical-bottom:46px !important;
  }
}

@media (max-width:1366px){
  .home-flow-visual{
    --flow-module-w:min(100%, 620px) !important;
    --flow-center-box:176px !important;
    --flow-node-w:150px !important;
    --flow-node-h:130px !important;
    --flow-node-gap-side:42px !important;
    --flow-node-gap-vertical-top:42px !important;
    --flow-node-gap-vertical-bottom:42px !important;
  }
  .flow-node h3{font-size:clamp(.72rem,.88vw,.86rem) !important;}
  .flow-node p{font-size:clamp(.64rem,.78vw,.74rem) !important;}
}

@media (max-width:1280px){
  .home-flow-main{grid-template-columns:minmax(420px,1fr) minmax(455px,.95fr) !important;}
  .home-flow-visual{
    --flow-module-w:min(100%, 590px) !important;
    --flow-center-box:170px !important;
    --flow-node-w:146px !important;
    --flow-node-h:126px !important;
    --flow-node-gap-side:38px !important;
    --flow-node-gap-vertical-top:38px !important;
    --flow-node-gap-vertical-bottom:38px !important;
  }
}


/* MODU v0.7.2 — tarjetas más largas, línea doble y conectores activados */
.home-flow-final{
  --flow-cycle: 8.8s;
}

/* Tarjetas con más altura para que ningún texto se salga */
.home-flow-visual{
  --flow-node-w: clamp(166px, 22.2%, 178px) !important;
  --flow-node-h: clamp(156px, 20.5%, 168px) !important;
  --flow-node-gap-side: clamp(38px, 3.4vw, 48px) !important;
  --flow-node-gap-vertical: clamp(38px, 3.4vw, 48px) !important;
  --flow-connector-len-side: clamp(28px, 2.4vw, 34px) !important;
  --flow-connector-len-vertical: clamp(28px, 2.4vw, 34px) !important;
}

.flow-node{
  height: var(--flow-node-h) !important;
  min-height: var(--flow-node-h) !important;
  padding: 12px 14px 18px !important;
  border-radius: 20px !important;
  justify-content:flex-start !important;
  gap: 4px !important;
}
.flow-node .flow-icon{
  margin: 0 0 2px !important;
  transform: translateY(-1px) !important;
}
.flow-node h3{
  margin: 0 0 4px !important;
  line-height: 1.02 !important;
}
.flow-node p{
  margin: 0 !important;
  line-height: 1.19 !important;
  font-size: clamp(.74rem, .84vw, .80rem) !important;
}

/* Mantener proporciones del esquema */
.flow-node-left{left:calc(50% - (var(--flow-center-box)/2) - var(--flow-node-gap-side) - var(--flow-node-w))!important;}
.flow-node-right{left:calc(50% + (var(--flow-center-box)/2) + var(--flow-node-gap-side))!important;}
.flow-node-top{top:calc(50% - (var(--flow-center-box)/2) - var(--flow-node-gap-vertical) - var(--flow-node-h))!important;}
.flow-node-bottom{top:calc(50% + (var(--flow-center-box)/2) + var(--flow-node-gap-vertical))!important;}

/* Línea duplicada (doble línea) entre tarjeta y circulito */
.flow-node-line{
  position:absolute !important;
  background:rgba(46,123,181,.68) !important;
  z-index:4 !important;
}
.flow-node-line::after{
  content:"";
  position:absolute;
  display:block;
  background:inherit;
  opacity:.96;
}
.flow-node-left .flow-node-line,
.flow-node-right .flow-node-line{height:2px !important;}
.flow-node-left .flow-node-line::after,
.flow-node-right .flow-node-line::after{left:0;top:5px;width:100%;height:2px;}
.flow-node-top .flow-node-line,
.flow-node-bottom .flow-node-line{width:2px !important;}
.flow-node-top .flow-node-line::after,
.flow-node-bottom .flow-node-line::after{top:0;left:5px;width:2px;height:100%;}

/* Puntos conectores más visibles */
.flow-node-dot{
  width:18px !important;
  height:18px !important;
  border-radius:50% !important;
  background:var(--flow-accent) !important;
  border:3px solid #fff !important;
  box-shadow:0 0 0 5px rgba(46,123,181,.16) !important;
  z-index:20 !important;
}

/* Animación clara: al paso de la chispa se enciende la corona blanca exterior del punto */
.home-flow-final.has-pulse-motion .flow-node-dot,
.home-flow-final.has-pulse-motion .flow-node-line{
  animation-duration:var(--flow-cycle) !important;
  animation-timing-function:linear !important;
  animation-iteration-count:infinite !important;
}

@keyframes flowDotIdle626{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.16);}
}
@keyframes flowLineIdle626{
  0%,100%{background:rgba(46,123,181,.68);box-shadow:none;}
}

@keyframes flowDotLeft626{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.16);transform:translateY(-50%) scale(1);}
  0.4%,12.8%{background:var(--flow-accent);border-color:#ffe7c2;box-shadow:0 0 0 9px rgba(242,140,34,.34),0 0 18px rgba(242,140,34,.72),0 0 36px rgba(255,214,158,.95);transform:translateY(-50%) scale(1.18);}
}
@keyframes flowDotTop626{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.16);transform:translateX(-50%) scale(1);}
  13.2%,25.6%{background:var(--flow-accent);border-color:#ffe7c2;box-shadow:0 0 0 9px rgba(242,140,34,.34),0 0 18px rgba(242,140,34,.72),0 0 36px rgba(255,214,158,.95);transform:translateX(-50%) scale(1.18);}
}
@keyframes flowDotRight626{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.16);transform:translateY(-50%) scale(1);}
  25.9%,38.4%{background:var(--flow-accent);border-color:#ffe7c2;box-shadow:0 0 0 9px rgba(242,140,34,.34),0 0 18px rgba(242,140,34,.72),0 0 36px rgba(255,214,158,.95);transform:translateY(-50%) scale(1.18);}
}
@keyframes flowDotBottom626{
  0%,100%{background:var(--flow-accent);border-color:#fff;box-shadow:0 0 0 5px rgba(46,123,181,.16);transform:translateX(-50%) scale(1);}
  38.7%,51.2%{background:var(--flow-accent);border-color:#ffe7c2;box-shadow:0 0 0 9px rgba(242,140,34,.34),0 0 18px rgba(242,140,34,.72),0 0 36px rgba(255,214,158,.95);transform:translateX(-50%) scale(1.18);}
}

@keyframes flowLineLeft626{
  0%,100%{background:rgba(46,123,181,.68);box-shadow:none;}
  0.4%,12.8%{background:linear-gradient(90deg, rgba(255,232,199,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 10px rgba(242,140,34,.45),0 0 22px rgba(242,140,34,.24);}
}
@keyframes flowLineTop626{
  0%,100%{background:rgba(46,123,181,.68);box-shadow:none;}
  13.2%,25.6%{background:linear-gradient(180deg, rgba(255,232,199,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 10px rgba(242,140,34,.45),0 0 22px rgba(242,140,34,.24);}
}
@keyframes flowLineRight626{
  0%,100%{background:rgba(46,123,181,.68);box-shadow:none;}
  25.9%,38.4%{background:linear-gradient(270deg, rgba(255,232,199,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 10px rgba(242,140,34,.45),0 0 22px rgba(242,140,34,.24);}
}
@keyframes flowLineBottom626{
  0%,100%{background:rgba(46,123,181,.68);box-shadow:none;}
  38.7%,51.2%{background:linear-gradient(0deg, rgba(255,232,199,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 10px rgba(242,140,34,.45),0 0 22px rgba(242,140,34,.24);}
}

.home-flow-final.has-pulse-motion .flow-node-dot{animation-name:flowDotIdle626 !important;}
.home-flow-final.has-pulse-motion .flow-node-line{animation-name:flowLineIdle626 !important;}
.flow-node-left .flow-node-dot{animation-name:flowDotLeft626 !important;}
.flow-node-top .flow-node-dot{animation-name:flowDotTop626 !important;}
.flow-node-right .flow-node-dot{animation-name:flowDotRight626 !important;}
.flow-node-bottom .flow-node-dot{animation-name:flowDotBottom626 !important;}
.flow-node-left .flow-node-line{animation-name:flowLineLeft626 !important;}
.flow-node-top .flow-node-line{animation-name:flowLineTop626 !important;}
.flow-node-right .flow-node-line{animation-name:flowLineRight626 !important;}
.flow-node-bottom .flow-node-line{animation-name:flowLineBottom626 !important;}

/* Portátil */
@media (max-width: 1440px){
  .home-flow-visual{--flow-node-w:166px !important;--flow-node-h:160px !important;--flow-node-gap-side:36px !important;--flow-node-gap-vertical:36px !important;}
}
@media (max-width: 1280px){
  .home-flow-visual{--flow-node-w:160px !important;--flow-node-h:156px !important;--flow-node-gap-side:32px !important;--flow-node-gap-vertical:32px !important;}
  .flow-node p{font-size:.76rem !important;}
}


/* MODU v0.7.2 — conectores de tarjetas con activación igual a círculos externos */
.home-flow-final{
  --flow-cycle: 8.8s;
}

/* Rehacer el punto con centro azul fijo y anillo exterior activable */
.flow-node-dot{
  width:20px !important;
  height:20px !important;
  border-radius:50% !important;
  background:#ffffff !important;
  border:2px solid rgba(46,123,181,.30) !important;
  box-shadow:0 0 0 5px rgba(46,123,181,.13) !important;
  position:absolute !important;
  z-index:20 !important;
  overflow:visible !important;
}
.flow-node-dot::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--flow-accent);
  transform:translate(-50%,-50%);
  box-shadow:0 0 0 1px rgba(255,255,255,.35);
}

.home-flow-final.has-pulse-motion .flow-node-dot,
.home-flow-final.has-pulse-motion .flow-node-line{
  animation-duration:var(--flow-cycle) !important;
  animation-timing-function:linear !important;
  animation-iteration-count:infinite !important;
}

@keyframes flowConnectorLeft627{
  0%,100%{background:#fff;border-color:rgba(46,123,181,.30);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateY(-50%) scale(1);}
  0.8%,7.2%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 0 10px rgba(242,155,56,.22),0 0 20px rgba(242,155,56,.82),0 0 38px rgba(255,220,166,.88);transform:translateY(-50%) scale(1.34);}
}
@keyframes flowConnectorTop627{
  0%,100%{background:#fff;border-color:rgba(46,123,181,.30);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateX(-50%) scale(1);}
  13.8%,20.2%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 0 10px rgba(242,155,56,.22),0 0 20px rgba(242,155,56,.82),0 0 38px rgba(255,220,166,.88);transform:translateX(-50%) scale(1.34);}
}
@keyframes flowConnectorRight627{
  0%,100%{background:#fff;border-color:rgba(46,123,181,.30);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateY(-50%) scale(1);}
  26.8%,33.2%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 0 10px rgba(242,155,56,.22),0 0 20px rgba(242,155,56,.82),0 0 38px rgba(255,220,166,.88);transform:translateY(-50%) scale(1.34);}
}
@keyframes flowConnectorBottom627{
  0%,100%{background:#fff;border-color:rgba(46,123,181,.30);box-shadow:0 0 0 5px rgba(46,123,181,.13);transform:translateX(-50%) scale(1);}
  39.8%,46.2%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 0 10px rgba(242,155,56,.22),0 0 20px rgba(242,155,56,.82),0 0 38px rgba(255,220,166,.88);transform:translateX(-50%) scale(1.34);}
}

/* La línea también se enciende con la misma ventana temporal */
@keyframes flowConnectorLineLeft627{
  0%,100%{background:rgba(46,123,181,.68);box-shadow:none;}
  0.8%,7.2%{background:linear-gradient(90deg, rgba(255,232,199,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,155,56,.42),0 0 24px rgba(242,155,56,.22);}
}
@keyframes flowConnectorLineTop627{
  0%,100%{background:rgba(46,123,181,.68);box-shadow:none;}
  13.8%,20.2%{background:linear-gradient(180deg, rgba(255,232,199,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,155,56,.42),0 0 24px rgba(242,155,56,.22);}
}
@keyframes flowConnectorLineRight627{
  0%,100%{background:rgba(46,123,181,.68);box-shadow:none;}
  26.8%,33.2%{background:linear-gradient(270deg, rgba(255,232,199,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,155,56,.42),0 0 24px rgba(242,155,56,.22);}
}
@keyframes flowConnectorLineBottom627{
  0%,100%{background:rgba(46,123,181,.68);box-shadow:none;}
  39.8%,46.2%{background:linear-gradient(0deg, rgba(255,232,199,.98) 0%, var(--flow-fire) 100%);box-shadow:0 0 12px rgba(242,155,56,.42),0 0 24px rgba(242,155,56,.22);}
}

.home-flow-final.has-pulse-motion .flow-node-dot{animation-name:none !important;}
.home-flow-final.has-pulse-motion .flow-node-line{animation-name:none !important;}
.flow-node-left .flow-node-dot{animation-name:flowConnectorLeft627 !important;}
.flow-node-top .flow-node-dot{animation-name:flowConnectorTop627 !important;}
.flow-node-right .flow-node-dot{animation-name:flowConnectorRight627 !important;}
.flow-node-bottom .flow-node-dot{animation-name:flowConnectorBottom627 !important;}
.flow-node-left .flow-node-line{animation-name:flowConnectorLineLeft627 !important;}
.flow-node-top .flow-node-line{animation-name:flowConnectorLineTop627 !important;}
.flow-node-right .flow-node-line{animation-name:flowConnectorLineRight627 !important;}
.flow-node-bottom .flow-node-line{animation-name:flowConnectorLineBottom627 !important;}

/* MODU v0.7.2 — Home Projects premium marquee */
/* MODU v0.7.92 — Projects approved Design System tokens; ACF no longer controls geometry or motion */
.home-projects{position:relative;overflow:hidden;padding:96px 0 104px;background:#F3E8CC;}
.home-projects:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 12% 18%,rgba(255,255,255,.66) 0,rgba(255,255,255,0) 34%),radial-gradient(circle at 88% 40%,rgba(46,123,181,.12) 0,rgba(46,123,181,0) 32%);}
.home-projects .wrap{position:relative;z-index:1;}
.home-projects-head{max-width:1180px;margin:0 auto 48px;}
.home-projects-eyebrow{display:flex;align-items:center;gap:16px;margin:0 0 28px;color:#2E7BB5;font-family:Sora,Inter,sans-serif;font-weight:900;letter-spacing:.20em;text-transform:uppercase;font-size:.86rem;}
.home-projects-eyebrow:before,.home-projects-eyebrow:after{content:"";width:54px;height:2px;background:currentColor;}
.home-projects-title-row{display:grid;grid-template-columns:minmax(420px,1fr) minmax(360px,.72fr);gap:60px;align-items:end;}
.home-projects-title-row h2{margin:0;color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:clamp(3rem,4.2vw,5.15rem);line-height:1.04;letter-spacing:-.07em;font-weight:900;text-wrap:balance;}
.home-projects-title-row p{margin:0 0 8px;color:#405870;font-size:clamp(1rem,1.1vw,1.18rem);line-height:1.68;}
.home-projects-marquee{position:relative;z-index:1;width:100%;overflow:hidden;padding:10px 0 12px;mask-image:linear-gradient(90deg,transparent 0%,#000 7%,#000 93%,transparent 100%);}
.home-projects-track{display:flex;gap:30px;width:max-content;}
.home-projects.has-marquee .home-projects-track{animation:moduProjectsMarquee 75s linear infinite;}
.home-projects.pause-hover .home-projects-marquee:hover .home-projects-track{animation-play-state:paused;}
@keyframes moduProjectsMarquee{from{transform:translateX(0);}to{transform:translateX(calc(-50% - 15px));}}
.home-project-card{flex:0 0 480px;height:406px;position:relative;overflow:hidden;border-radius:26px;text-decoration:none;color:#fff;background:var(--modu-project-blue);border:1px solid rgba(31,61,95,.10);box-shadow:0 24px 60px rgba(31,61,95,.16);transform:translateZ(0);}
.home-project-card img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .7s ease,filter .7s ease;}
.home-project-card:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(31,61,95,.04) 0%,rgba(31,61,95,.08) 38%,rgba(31,61,95,.82) 100%),linear-gradient(90deg,rgba(31,61,95,.18),rgba(31,61,95,0) 48%);}
.home-project-card:hover img{transform:scale(1.045);filter:saturate(1.04) contrast(1.03);}
.home-project-card-tag{position:absolute;z-index:2;top:20px;left:20px;display:inline-flex;align-items:center;gap:9px;min-height:34px;padding:0 15px;border-radius:999px;background:rgba(255,255,255,.86);color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 10px 24px rgba(31,61,95,.12);backdrop-filter:blur(10px);}
.home-project-card-tag i{width:7px;height:7px;border-radius:50%;background:#2E7BB5;}
.home-project-card-title{position:absolute;z-index:2;left:24px;right:24px;bottom:22px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px;color:#fff;font-family:Sora,Inter,sans-serif;font-size:clamp(1.22rem,1.55vw,1.72rem);line-height:1.08;letter-spacing:-.045em;font-weight:900;}
.home-project-card-title em{flex:0 0 auto;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.50);background:rgba(255,255,255,.12);font-style:normal;transition:transform .3s ease,background .3s ease;}
.home-project-card:hover .home-project-card-title em{transform:translateX(4px);background:rgba(46,123,181,.74);}
.home-projects-cta{display:flex;justify-content:center;margin-top:48px;}
.home-projects-button{display:inline-flex;align-items:center;gap:24px;min-height:62px;padding:0 16px 0 30px;border-radius:999px;background:var(--modu-project-blue);color:#fff;text-decoration:none;font-weight:900;box-shadow:0 22px 44px rgba(31,61,95,.18);transition:transform .25s ease,box-shadow .25s ease,background .25s ease;}
.home-projects-button i{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.28);font-style:normal;}
.home-projects-button:hover{transform:translateY(-3px);background:#2E7BB5;box-shadow:0 28px 54px rgba(46,123,181,.28);}
@media(max-width:1100px){.home-projects{padding:76px 0 84px}.home-projects-title-row{grid-template-columns:1fr;gap:22px}.home-projects-title-row p{max-width:720px}}
@media(max-width:768px){.home-projects{padding:58px 0 64px}.home-projects-head{margin-bottom:30px}.home-projects-eyebrow{font-size:.76rem;gap:10px;margin-bottom:20px}.home-projects-eyebrow:before,.home-projects-eyebrow:after{width:32px}.home-projects-title-row h2{font-size:clamp(2.25rem,10vw,3.1rem);line-height:1.11}.home-projects-title-row p{font-size:1rem;line-height:1.62}.home-projects-marquee{overflow-x:auto;padding:6px 24px 12px;mask-image:none;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}.home-projects-track{gap:18px;width:max-content}.home-projects.has-marquee .home-projects-track{animation:none}.home-project-card{flex-basis:min(82vw,360px);height:340px;scroll-snap-align:start;border-radius:22px}.home-project-card-tag{top:16px;left:16px;min-height:30px;padding:0 12px;font-size:.64rem}.home-project-card-title{left:18px;right:18px;bottom:18px;font-size:1.25rem}.home-project-card-title em{width:36px;height:36px}.home-projects-cta{justify-content:flex-start;margin-top:30px}}


/* MODU v0.7.2 — Proyectos: fondo muestra + titular en dos líneas */
.home-projects{
  background:#eaefee !important;
}
.home-projects:before{
  background:
    radial-gradient(circle at 12% 18%, rgba(255,255,255,.42) 0, rgba(255,255,255,0) 34%),
    radial-gradient(circle at 88% 40%, rgba(46,123,181,.08) 0, rgba(46,123,181,0) 32%) !important;
}
.home-projects-title-row{
  grid-template-columns:minmax(780px, 1.18fr) minmax(360px, .62fr) !important;
  gap:54px !important;
}
.home-projects-title-row h2{
  max-width:980px !important;
  font-size:clamp(3.4rem,4.35vw,5.35rem) !important;
  line-height:1.04 !important;
  letter-spacing:-.072em !important;
}
@media(max-width:1280px){
  .home-projects-title-row{
    grid-template-columns:minmax(680px, 1.15fr) minmax(330px, .62fr) !important;
    gap:38px !important;
  }
  .home-projects-title-row h2{
    font-size:clamp(3.05rem,4vw,4.7rem) !important;
  }
}
@media(max-width:1100px){
  .home-projects-title-row{
    grid-template-columns:1fr !important;
  }
  .home-projects-title-row h2{
    max-width:780px !important;
  }
}


/* MODU v0.7.2 — Proyectos: eslogan 3 líneas + eyebrow extendido */
.home-projects-eyebrow{letter-spacing:.16em !important;}
.home-projects-eyebrow span{display:inline-block;white-space:nowrap;}
.home-projects-title-row h2{
  max-width:920px !important;
  text-wrap:unset !important;
}
.home-projects-title-row h2 .projects-accent{color:#2E7BB5;}
@media(min-width:1101px){
  .home-projects-title-row h2 br{display:block;content:"";}
}
@media(max-width:1100px){
  .home-projects-title-row h2{max-width:780px !important;}
}


/* MODU v0.7.2 — Proyectos: idea a ejecución + alineación como hero */
.home-projects-head{max-width:1180px;margin:0 auto 48px;}
.home-projects-eyebrow{margin:0 0 18px !important;}
.home-projects-title-row{align-items:start !important;grid-template-columns:minmax(560px,760px) minmax(320px,.78fr) !important;gap:56px !important;}
.home-projects-title-row h2{max-width:760px !important;text-wrap:unset !important;}
.home-projects-title-row h2 .projects-accent{color:#2E7BB5 !important;}
.home-projects-title-row h2 br{display:block;}
.home-projects-title-row p{margin-top:8px !important;}
@media (max-width:1100px){
  .home-projects-title-row{grid-template-columns:1fr !important;gap:22px !important;}
  .home-projects-title-row h2{max-width:700px !important;}
  .home-projects-title-row p{max-width:760px;}
}
@media (max-width:767px){
  .home-projects-eyebrow{margin:0 0 14px !important;}
  .home-projects-title-row h2{max-width:100% !important;}
}


/* MODU v0.7.2 — Corrección fina del titular del bloque Proyectos */
.home-projects .wrap{position:relative;z-index:1;}
.home-projects-head{
  max-width:none !important;
  width:100%;
  margin:0 0 48px !important;
}
.home-projects-eyebrow{
  justify-content:flex-start;
  margin:0 0 20px !important;
}
.home-projects-title-row{
  grid-template-columns:minmax(700px,780px) minmax(320px,430px) !important;
  justify-content:space-between;
  align-items:start !important;
  gap:48px !important;
}
.home-projects-title-row h2{
  width:100%;
  max-width:780px !important;
  text-wrap:normal !important;
  line-height:0.98 !important;
  letter-spacing:-.075em !important;
}
.home-projects-title-row h2 br{display:block;}
.home-projects-title-row h2 .projects-accent{color:#2E7BB5 !important;}
.home-projects-title-row p{
  margin-top:10px !important;
  max-width:430px;
}
@media (max-width:1280px){
  .home-projects-title-row{grid-template-columns:minmax(620px,740px) minmax(300px,400px) !important;gap:40px !important;}
  .home-projects-title-row h2{max-width:740px !important;}
}
@media (max-width:1100px){
  .home-projects-title-row{grid-template-columns:1fr !important;gap:22px !important;}
  .home-projects-title-row h2{max-width:760px !important;}
  .home-projects-title-row p{max-width:760px;margin-top:0 !important;}
}
@media (max-width:767px){
  .home-projects-head{margin:0 0 34px !important;}
  .home-projects-eyebrow{margin:0 0 14px !important;}
  .home-projects-title-row h2{
    max-width:100% !important;
    font-size:clamp(2.55rem,11vw,4rem) !important;
    line-height:1.00 !important;
    letter-spacing:-.07em !important;
  }
}


/* MODU v0.7.2 — Bloque Proyectos: titular exactamente en 3 líneas y copy mejor equilibrado */
.home-projects{
  background:#eaefee !important;
}
.home-projects:before{
  background:
    radial-gradient(circle at 14% 16%, rgba(255,255,255,.50) 0, rgba(255,255,255,0) 33%),
    radial-gradient(circle at 84% 32%, rgba(46,123,181,.07) 0, rgba(46,123,181,0) 36%) !important;
}
.home-projects .wrap{
  position:relative;
  z-index:1;
}
.home-projects-head{
  max-width:1240px !important;
  width:100%;
  margin:0 auto 48px !important;
}
.home-projects-eyebrow{
  justify-content:flex-start !important;
  margin:0 0 22px !important;
  letter-spacing:.17em !important;
}
.home-projects-title-row{
  display:grid;
  grid-template-columns:minmax(760px, 860px) minmax(320px, 420px) !important;
  justify-content:space-between;
  align-items:start !important;
  gap:64px !important;
}
.home-projects-title-row h2{
  margin:0 !important;
  width:100%;
  max-width:860px !important;
  font-size:clamp(3.55rem, 4.65vw, 5.85rem) !important;
  line-height:.94 !important;
  letter-spacing:-.082em !important;
  text-wrap:unset !important;
}
.home-projects-title-row h2 .projects-line{
  display:block;
  white-space:nowrap;
}
.home-projects-title-row h2 .projects-accent{
  color:#2E7BB5 !important;
}
.home-projects-title-row p{
  margin:12px 0 0 !important;
  max-width:420px !important;
  color:#3f5871 !important;
  font-size:clamp(1rem, 1.05vw, 1.14rem) !important;
  line-height:1.7 !important;
  justify-self:end;
  align-self:start;
}
@media (max-width:1400px){
  .home-projects-title-row{
    grid-template-columns:minmax(700px, 800px) minmax(300px, 390px) !important;
    gap:50px !important;
  }
  .home-projects-title-row h2{
    max-width:800px !important;
    font-size:clamp(3.35rem, 4.35vw, 5.25rem) !important;
  }
}
@media (max-width:1180px){
  .home-projects-head{
    margin:0 auto 40px !important;
  }
  .home-projects-title-row{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }
  .home-projects-title-row h2{
    max-width:760px !important;
  }
  .home-projects-title-row p{
    max-width:760px !important;
    margin:0 !important;
    justify-self:start;
  }
}
@media (max-width:767px){
  .home-projects-head{
    margin:0 auto 34px !important;
  }
  .home-projects-eyebrow{
    margin:0 0 16px !important;
  }
  .home-projects-title-row h2{
    max-width:100% !important;
    font-size:clamp(2.45rem, 11vw, 3.9rem) !important;
    line-height:.98 !important;
    letter-spacing:-.072em !important;
  }
  .home-projects-title-row h2 .projects-line{
    white-space:normal;
  }
  .home-projects-title-row p{
    font-size:1rem !important;
    line-height:1.68 !important;
  }
}


/* MODU v0.7.2 — Bloque Proyectos: recuperar jerarquía visual del hero y composición limpia */
.home-projects{
  background:#eaefee !important;
  padding:96px 0 104px !important;
}
.home-projects:before{
  background:
    radial-gradient(circle at 11% 18%, rgba(255,255,255,.48) 0, rgba(255,255,255,0) 32%),
    radial-gradient(circle at 86% 30%, rgba(46,123,181,.06) 0, rgba(46,123,181,0) 34%) !important;
}
.home-projects .wrap{
  width:min(1480px, calc(100% - 72px));
  margin:0 auto;
}
.home-projects-head{
  width:100%;
  max-width:none !important;
  margin:0 auto 42px !important;
}
.home-projects-eyebrow{
  justify-content:flex-start !important;
  align-items:center;
  gap:14px !important;
  margin:0 0 22px !important;
  font-size:.84rem !important;
  letter-spacing:.19em !important;
}
.home-projects-eyebrow:before,
.home-projects-eyebrow:after{
  width:42px !important;
}
.home-projects-title-row{
  display:grid !important;
  grid-template-columns:minmax(620px, 720px) minmax(300px, 380px) !important;
  justify-content:space-between !important;
  align-items:start !important;
  gap:72px !important;
}
.home-projects-title-row h2{
  margin:0 !important;
  max-width:720px !important;
  width:100%;
  color:var(--modu-project-blue) !important;
  font-size:clamp(3.05rem, 4.05vw, 4.75rem) !important;
  line-height:.92 !important;
  letter-spacing:-.082em !important;
  font-weight:900 !important;
  text-wrap:unset !important;
}
.home-projects-title-row h2 .projects-line{
  display:block;
  white-space:nowrap;
}
.home-projects-title-row h2 .projects-accent{
  color:#2E7BB5 !important;
}
.home-projects-title-row p{
  margin:10px 0 0 !important;
  max-width:380px !important;
  justify-self:end;
  align-self:start;
  color:#45607a !important;
  font-size:clamp(1rem, 1.02vw, 1.12rem) !important;
  line-height:1.7 !important;
}
.home-projects-marquee{
  padding-top:10px !important;
}
@media (max-width:1380px){
  .home-projects .wrap{
    width:min(1480px, calc(100% - 56px));
  }
  .home-projects-title-row{
    grid-template-columns:minmax(560px, 660px) minmax(280px, 350px) !important;
    gap:56px !important;
  }
  .home-projects-title-row h2{
    max-width:660px !important;
    font-size:clamp(2.9rem, 3.95vw, 4.35rem) !important;
  }
  .home-projects-title-row p{
    max-width:350px !important;
  }
}
@media (max-width:1180px){
  .home-projects{
    padding:82px 0 90px !important;
  }
  .home-projects-head{
    margin:0 auto 34px !important;
  }
  .home-projects-title-row{
    grid-template-columns:1fr !important;
    gap:22px !important;
  }
  .home-projects-title-row h2{
    max-width:780px !important;
    font-size:clamp(2.9rem, 6vw, 4.25rem) !important;
  }
  .home-projects-title-row p{
    max-width:760px !important;
    justify-self:start;
    margin:0 !important;
  }
}
@media (max-width:767px){
  .home-projects{
    padding:58px 0 64px !important;
  }
  .home-projects .wrap{
    width:min(1480px, calc(100% - 32px));
  }
  .home-projects-head{
    margin:0 auto 28px !important;
  }
  .home-projects-eyebrow{
    margin:0 0 16px !important;
    font-size:.74rem !important;
    gap:10px !important;
  }
  .home-projects-eyebrow:before,
  .home-projects-eyebrow:after{
    width:30px !important;
  }
  .home-projects-title-row h2{
    max-width:100% !important;
    font-size:clamp(2.42rem, 10.7vw, 3.75rem) !important;
    line-height:.96 !important;
    letter-spacing:-.075em !important;
  }
  .home-projects-title-row h2 .projects-line{
    white-space:normal;
  }
  .home-projects-title-row p{
    max-width:100% !important;
    font-size:1rem !important;
    line-height:1.68 !important;
  }
}


/* MODU v0.7.2 — Bloque Proyectos: mantener jerarquía del hero y acercar el copy de apoyo */
.home-projects-head{
  max-width:none !important;
}
.home-projects-title-row{
  display:grid !important;
  grid-template-columns:minmax(0, 760px) minmax(300px, 360px) !important;
  justify-content:start !important;
  align-items:start !important;
  column-gap:40px !important;
  row-gap:18px !important;
  max-width:1160px !important;
}
.home-projects-title-row h2{
  max-width:760px !important;
  justify-self:start !important;
}
.home-projects-title-row p{
  justify-self:start !important;
  align-self:start !important;
  max-width:360px !important;
  margin:12px 0 0 !important;
  padding-left:0 !important;
}
@media (max-width: 1440px){
  .home-projects-title-row{
    grid-template-columns:minmax(0, 700px) minmax(280px, 340px) !important;
    max-width:1080px !important;
    column-gap:34px !important;
  }
  .home-projects-title-row h2{
    max-width:700px !important;
  }
  .home-projects-title-row p{
    max-width:340px !important;
  }
}
@media (max-width: 1180px){
  .home-projects-title-row{
    grid-template-columns:1fr !important;
    max-width:780px !important;
    column-gap:0 !important;
    row-gap:22px !important;
  }
  .home-projects-title-row h2{
    max-width:780px !important;
  }
  .home-projects-title-row p{
    max-width:760px !important;
    margin:0 !important;
  }
}
@media (max-width: 767px){
  .home-projects-title-row{
    max-width:100% !important;
    row-gap:18px !important;
  }
  .home-projects-title-row h2,
  .home-projects-title-row p{
    max-width:100% !important;
  }
}


/* MODU v0.7.2 — Proyectos: bloque editorial premium */
.home-projects{
  background:#eaefee !important;
  padding:104px 0 112px !important;
  overflow:hidden !important;
}
.home-projects:before{
  background:
    radial-gradient(circle at 7% 20%, rgba(255,255,255,.58) 0, rgba(255,255,255,0) 34%),
    radial-gradient(circle at 78% 26%, rgba(46,123,181,.075) 0, rgba(46,123,181,0) 38%),
    linear-gradient(180deg, rgba(255,255,255,.22) 0%, rgba(255,255,255,0) 42%) !important;
}
.home-projects .wrap{
  width:min(1480px, calc(100% - 72px)) !important;
  margin:0 auto !important;
}
.home-projects-head{
  width:100% !important;
  max-width:none !important;
  margin:0 auto 66px !important;
}
.home-projects-eyebrow{
  justify-content:flex-start !important;
  align-items:center !important;
  gap:15px !important;
  margin:0 0 24px !important;
  color:#2E7BB5 !important;
  font-size:.84rem !important;
  line-height:1 !important;
  letter-spacing:.19em !important;
}
.home-projects-eyebrow:before,
.home-projects-eyebrow:after{
  width:42px !important;
  height:2px !important;
}
.home-projects-title-row{
  display:grid !important;
  grid-template-columns:minmax(0, 760px) minmax(320px, 390px) !important;
  justify-content:start !important;
  align-items:start !important;
  gap:52px !important;
  max-width:1202px !important;
}
.home-projects-title-row h2{
  margin:0 !important;
  width:100% !important;
  max-width:760px !important;
  color:var(--modu-project-blue) !important;
  font-size:clamp(3.1rem, 4.15vw, 4.9rem) !important;
  line-height:.94 !important;
  letter-spacing:-.08em !important;
  font-weight:900 !important;
}
.home-projects-title-row h2 .projects-line{
  display:block !important;
  white-space:nowrap !important;
}
.home-projects-title-row h2 .projects-accent{
  color:#2E7BB5 !important;
}
.home-projects-title-row p{
  position:relative !important;
  justify-self:start !important;
  align-self:start !important;
  max-width:390px !important;
  margin:12px 0 0 !important;
  padding:22px 0 0 28px !important;
  color:#405b74 !important;
  font-size:clamp(1rem, 1.03vw, 1.12rem) !important;
  line-height:1.72 !important;
}
.home-projects-title-row p:before{
  content:"";
  position:absolute;
  left:0;
  top:28px;
  width:2px;
  height:84px;
  border-radius:999px;
  background:linear-gradient(180deg, #2E7BB5, rgba(46,123,181,0));
  opacity:.72;
}

/* Premium rail */
.home-projects-marquee{
  padding:0 0 12px !important;
  margin-top:0 !important;
  overflow:hidden !important;
  mask-image:linear-gradient(90deg, transparent 0%, #000 6.5%, #000 93.5%, transparent 100%) !important;
}
.home-projects-track{
  gap:28px !important;
  align-items:stretch !important;
}
.home-project-card{
  flex:0 0 480px !important;
  width:480px !important;
  height:400px !important;
  border-radius:28px !important;
  background:var(--modu-project-blue) !important;
  border:1px solid rgba(31,61,95,.10) !important;
  box-shadow:0 28px 70px rgba(31,61,95,.14) !important;
  overflow:hidden !important;
  transform:translateZ(0) !important;
}
.home-project-card img{
  filter:saturate(1.02) contrast(1.02) brightness(.98) !important;
}
.home-project-card:before{
  background:
    linear-gradient(180deg, rgba(31,61,95,.02) 0%, rgba(31,61,95,.04) 42%, rgba(31,61,95,.64) 100%),
    linear-gradient(90deg, rgba(31,61,95,.08), rgba(31,61,95,0) 48%) !important;
}
.home-project-card:after{
  content:"";
  position:absolute;
  z-index:1;
  left:18px;
  right:18px;
  bottom:18px;
  height:92px;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(31,61,95,.42));
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(4px);
  opacity:.92;
  pointer-events:none;
}
.home-project-card:hover{
  box-shadow:0 34px 82px rgba(31,61,95,.20) !important;
}
.home-project-card:hover img{
  transform:scale(1.035) !important;
  filter:saturate(1.08) contrast(1.04) brightness(1.02) !important;
}
.home-project-card-tag{
  top:20px !important;
  left:20px !important;
  min-height:32px !important;
  padding:0 14px !important;
  background:rgba(255,255,255,.88) !important;
  color:var(--modu-project-blue) !important;
  font-size:.68rem !important;
  letter-spacing:.065em !important;
  box-shadow:0 10px 24px rgba(31,61,95,.12) !important;
}
.home-project-card-title{
  z-index:2 !important;
  left:36px !important;
  right:36px !important;
  bottom:38px !important;
  align-items:center !important;
  font-size:clamp(1.12rem,1.18vw,1.36rem) !important;
  line-height:1.08 !important;
  letter-spacing:-.045em !important;
  text-shadow:0 3px 18px rgba(0,0,0,.28) !important;
}
.home-project-card-title em{
  width:38px !important;
  height:38px !important;
  background:rgba(255,255,255,.10) !important;
  border-color:rgba(255,255,255,.52) !important;
}
.home-projects-cta{
  margin-top:48px !important;
}
.home-projects-button{
  background:var(--modu-project-blue) !important;
  color:#fff !important;
}
.home-projects-button:hover{
  background:#2E7BB5 !important;
}

/* Rhythm + responsive */
@media (min-width:1441px){
  .home-project-card:nth-child(3n+2){
    transform:translateY(18px);
  }
  .home-project-card:nth-child(3n+2):hover{
    transform:translateY(14px);
  }
}
@media (max-width:1440px){
  .home-projects .wrap{
    width:min(1480px, calc(100% - 56px)) !important;
  }
  .home-projects-title-row{
    grid-template-columns:minmax(0, 700px) minmax(300px, 360px) !important;
    max-width:1100px !important;
    gap:42px !important;
  }
  .home-projects-title-row h2{
    max-width:700px !important;
    font-size:clamp(2.95rem, 4vw, 4.45rem) !important;
  }
  .home-projects-title-row p{
    max-width:360px !important;
  }
  .home-project-card{
    height:380px !important;
    flex-basis:500px !important;
    width:500px !important;
  }
}
@media (max-width:1180px){
  .home-projects{
    padding:82px 0 92px !important;
  }
  .home-projects-head{
    margin:0 auto 44px !important;
  }
  .home-projects-title-row{
    grid-template-columns:1fr !important;
    max-width:780px !important;
    gap:22px !important;
  }
  .home-projects-title-row h2{
    max-width:780px !important;
  }
  .home-projects-title-row p{
    max-width:760px !important;
    margin:0 !important;
    padding:0 0 0 22px !important;
  }
  .home-projects-title-row p:before{
    top:6px;
    height:72px;
  }
}
@media (max-width:768px){
  .home-projects{
    padding:62px 0 70px !important;
  }
  .home-projects .wrap{
    width:min(1480px, calc(100% - 32px)) !important;
  }
  .home-projects-head{
    margin:0 auto 32px !important;
  }
  .home-projects-eyebrow{
    margin:0 0 16px !important;
    font-size:.72rem !important;
    gap:10px !important;
    letter-spacing:.16em !important;
  }
  .home-projects-eyebrow:before,
  .home-projects-eyebrow:after{
    width:28px !important;
  }
  .home-projects-title-row h2{
    font-size:clamp(2.42rem, 10.7vw, 3.75rem) !important;
    line-height:.98 !important;
    letter-spacing:-.075em !important;
  }
  .home-projects-title-row h2 .projects-line{
    white-space:normal !important;
  }
  .home-projects-title-row p{
    font-size:1rem !important;
    line-height:1.66 !important;
    padding-left:18px !important;
  }
  .home-projects-marquee{
    padding:0 22px 14px !important;
    mask-image:none !important;
  }
  .home-project-card{
    flex-basis:min(82vw, 360px) !important;
    width:min(82vw, 360px) !important;
    height:340px !important;
    border-radius:24px !important;
  }
  .home-project-card:after{
    left:14px;
    right:14px;
    bottom:14px;
    height:82px;
    border-radius:20px;
  }
  .home-project-card-title{
    left:26px !important;
    right:26px !important;
    bottom:29px !important;
    font-size:1.12rem !important;
  }
  .home-project-card-tag{
    top:16px !important;
    left:16px !important;
  }
}


/* ===== Proyectos block premium refinado v0.7.2 ===== */
.home-projects{
  padding:112px 0 122px !important;
}
.home-projects .wrap{
  width:min(1480px, calc(100% - 76px)) !important;
}
.home-projects-head{
  margin:0 auto 82px !important;
}
.home-projects-title-row{
  grid-template-columns:minmax(0, 720px) minmax(320px, 390px) !important;
  gap:44px !important;
  max-width:1160px !important;
}
.home-projects-title-row h2{
  max-width:720px !important;
  font-size:clamp(3.1rem, 4.12vw, 4.95rem) !important;
  line-height:.94 !important;
  letter-spacing:-.082em !important;
}
.home-projects-title-row p{
  max-width:370px !important;
  margin:18px 0 0 !important;
  padding:18px 0 0 24px !important;
  font-size:clamp(1rem, 1.02vw, 1.1rem) !important;
  line-height:1.7 !important;
  color:#456079 !important;
}
.home-projects-title-row p:before{
  top:20px !important;
  height:78px !important;
  opacity:.62 !important;
}
.home-projects-marquee{
  padding:0 0 16px !important;
}
.home-projects-track{
  gap:30px !important;
}
.home-project-card{
  height:406px !important;
  border-radius:30px !important;
  box-shadow:0 24px 56px rgba(31,61,95,.12) !important;
}
.home-project-card:before{
  background:
    linear-gradient(180deg, rgba(31,61,95,.02) 0%, rgba(31,61,95,.04) 44%, rgba(31,61,95,.48) 100%),
    linear-gradient(90deg, rgba(31,61,95,.06), rgba(31,61,95,0) 48%) !important;
}
.home-project-card:after{
  left:20px !important;
  right:20px !important;
  bottom:20px !important;
  height:84px !important;
  border-radius:22px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(31,61,95,.28)) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  backdrop-filter:blur(3px) !important;
  opacity:.9 !important;
}
.home-project-card-title{
  left:30px !important;
  right:30px !important;
  bottom:32px !important;
  font-family:Sora, Inter, sans-serif !important;
  font-size:clamp(1.16rem, 1.22vw, 1.42rem) !important;
  line-height:1.04 !important;
  letter-spacing:-.05em !important;
  font-weight:800 !important;
}
.home-project-card-title em{
  width:40px !important;
  height:40px !important;
  background:rgba(255,255,255,.08) !important;
  border-color:rgba(255,255,255,.44) !important;
}
.home-project-card-tag{
  top:18px !important;
  left:18px !important;
}
.home-projects-cta{
  margin-top:54px !important;
}

@media (max-width:1440px){
  .home-projects .wrap{
    width:min(1480px, calc(100% - 60px)) !important;
  }
  .home-projects-head{
    margin:0 auto 74px !important;
  }
  .home-projects-title-row{
    grid-template-columns:minmax(0, 680px) minmax(300px, 360px) !important;
    gap:38px !important;
    max-width:1078px !important;
  }
  .home-projects-title-row h2{
    max-width:680px !important;
    font-size:clamp(2.92rem, 3.98vw, 4.45rem) !important;
  }
  .home-projects-title-row p{
    max-width:350px !important;
  }
  .home-project-card{
    width:500px !important;
    flex-basis:500px !important;
    height:390px !important;
  }
}

@media (max-width:1180px){
  .home-projects{
    padding:88px 0 98px !important;
  }
  .home-projects-head{
    margin:0 auto 52px !important;
  }
  .home-projects-title-row{
    grid-template-columns:1fr !important;
    gap:22px !important;
    max-width:760px !important;
  }
  .home-projects-title-row h2{
    max-width:760px !important;
  }
  .home-projects-title-row p{
    max-width:640px !important;
    margin:0 !important;
    padding:0 0 0 22px !important;
  }
  .home-projects-title-row p:before{
    top:8px !important;
    height:70px !important;
  }
}

@media (max-width:768px){
  .home-projects{
    padding:64px 0 72px !important;
  }
  .home-projects .wrap{
    width:min(1480px, calc(100% - 32px)) !important;
  }
  .home-projects-head{
    margin:0 auto 34px !important;
  }
  .home-projects-title-row h2{
    font-size:clamp(2.4rem, 10.6vw, 3.7rem) !important;
    line-height:.98 !important;
  }
  .home-projects-title-row p{
    max-width:100% !important;
    padding-left:18px !important;
    font-size:1rem !important;
    line-height:1.65 !important;
  }
  .home-projects-marquee{
    padding:0 22px 14px !important;
  }
  .home-project-card{
    height:340px !important;
  }
  .home-project-card:after{
    left:16px !important;
    right:16px !important;
    bottom:16px !important;
    height:78px !important;
  }
  .home-project-card-title{
    left:22px !important;
    right:22px !important;
    bottom:24px !important;
    font-size:1.22rem !important;
  }
}


/* MODU v0.7.2 — SOLO MODU FLOW: jerarquía visual alineada con Hero/Proyectos sin tocar el bloque Proyectos */
.home-flow-final .wrap{
  width:min(1480px, calc(100% - 72px)) !important;
  margin:0 auto !important;
}

.home-flow-main{
  grid-template-columns:minmax(0, 720px) minmax(540px, 680px) !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:64px !important;
  padding:104px 0 84px !important;
}

.home-flow-content{
  max-width:720px !important;
  padding-left:0 !important;
  padding-right:0 !important;
  justify-self:start !important;
}

.home-flow-eyebrow{
  justify-content:flex-start !important;
  align-items:center !important;
  gap:14px !important;
  margin:0 0 24px !important;
  color:var(--flow-eyebrow-color) !important;
  font-size:.84rem !important;
  line-height:1 !important;
  letter-spacing:.19em !important;
  font-weight:900 !important;
}

.home-flow-final.has-eyebrow-lines .home-flow-eyebrow:before,
.home-flow-final.has-eyebrow-lines .home-flow-eyebrow:after{
  width:42px !important;
  height:2px !important;
}

.home-flow-final h2.home-flow-title{
  max-width:720px !important;
  color:var(--flow-title-color) !important;
  font-size:clamp(3.1rem, 4.15vw, 4.9rem) !important;
  line-height:.98 !important;
  letter-spacing:-.08em !important;
  font-weight:900 !important;
  text-wrap:balance !important;
}

.home-flow-final h2 span{
  color:var(--flow-accent) !important;
}

.home-flow-text{
  margin-top:28px !important;
  max-width:650px !important;
  color:#456079 !important;
  font-size:clamp(1rem, 1.03vw, 1.12rem) !important;
  line-height:1.7 !important;
}

.home-flow-button{
  margin-top:34px !important;
}

.home-flow-visual{
  justify-self:end !important;
}

@media (max-width:1440px){
  .home-flow-final .wrap{
    width:min(1480px, calc(100% - 60px)) !important;
  }
  .home-flow-main{
    grid-template-columns:minmax(0, 670px) minmax(500px, 640px) !important;
    gap:50px !important;
    padding:92px 0 78px !important;
  }
  .home-flow-final h2.home-flow-title{
    max-width:670px !important;
    font-size:clamp(2.92rem, 3.98vw, 4.45rem) !important;
  }
  .home-flow-text{
    max-width:610px !important;
  }
}

@media (max-width:1180px){
  .home-flow-final .wrap{
    width:min(1480px, calc(100% - 44px)) !important;
  }
  .home-flow-main{
    grid-template-columns:1fr !important;
    gap:34px !important;
    padding:72px 0 54px !important;
  }
  .home-flow-content{
    max-width:760px !important;
  }
  .home-flow-final h2.home-flow-title{
    max-width:760px !important;
    font-size:clamp(2.9rem, 6vw, 4.25rem) !important;
  }
  .home-flow-text{
    max-width:720px !important;
  }
  .home-flow-visual{
    justify-self:center !important;
  }
}

@media (max-width:768px){
  .home-flow-final .wrap{
    width:100% !important;
  }
  .home-flow-main{
    padding:58px 24px 46px !important;
  }
  .home-flow-content{
    max-width:none !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  .home-flow-eyebrow{
    margin:0 0 16px !important;
    gap:10px !important;
    font-size:.74rem !important;
    letter-spacing:.16em !important;
  }
  .home-flow-final.has-eyebrow-lines .home-flow-eyebrow:before,
  .home-flow-final.has-eyebrow-lines .home-flow-eyebrow:after{
    width:30px !important;
  }
  .home-flow-final h2.home-flow-title{
    max-width:100% !important;
    font-size:clamp(2.42rem, 10.6vw, 3.7rem) !important;
    line-height:.98 !important;
    letter-spacing:-.075em !important;
  }
  .home-flow-text{
    margin-top:20px !important;
    max-width:100% !important;
    font-size:1rem !important;
    line-height:1.66 !important;
  }
}


/* MODU v0.7.2 — Proyectos: scroll móvil manual corregido */
@media (max-width: 768px){
  #home-proyectos .home-projects-marquee{
    overflow-x:auto !important;
    overflow-y:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    scroll-snap-type:x mandatory !important;
    touch-action:pan-x !important;
    overscroll-behavior-x:contain !important;
    padding-left:22px !important;
    padding-right:22px !important;
    mask-image:none !important;
  }

  #home-proyectos .home-projects-track{
    animation:none !important;
    transform:none !important;
    width:max-content !important;
    min-width:max-content !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:18px !important;
  }

  #home-proyectos .home-project-card{
    flex:0 0 min(82vw, 360px) !important;
    width:min(82vw, 360px) !important;
    min-width:min(82vw, 360px) !important;
    scroll-snap-align:start !important;
  }

  #home-proyectos .home-projects-marquee::-webkit-scrollbar{
    display:none;
  }

  #home-proyectos .home-projects-marquee{
    scrollbar-width:none;
  }
}

/* Tablet táctil: también permitimos desplazamiento manual si la pantalla es estrecha */
@media (min-width:769px) and (max-width:1024px){
  #home-proyectos .home-projects-marquee{
    overflow-x:auto !important;
    overflow-y:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    scroll-snap-type:x mandatory !important;
    touch-action:pan-x !important;
    mask-image:none !important;
  }

  #home-proyectos .home-projects-track{
    animation:none !important;
    transform:none !important;
    width:max-content !important;
    min-width:max-content !important;
    display:flex !important;
    flex-wrap:nowrap !important;
  }

  #home-proyectos .home-project-card{
    scroll-snap-align:start !important;
  }

  #home-proyectos .home-projects-marquee::-webkit-scrollbar{
    display:none;
  }

  #home-proyectos .home-projects-marquee{
    scrollbar-width:none;
  }
}


/* MODU v0.7.2 — Proyectos: títulos centrados + arrastre con ratón */
#home-proyectos .home-projects-marquee{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  -webkit-overflow-scrolling:touch !important;
  cursor:grab;
  scrollbar-width:none;
}

#home-proyectos .home-projects-marquee::-webkit-scrollbar{
  display:none;
}

#home-proyectos .home-projects-marquee.is-dragging{
  cursor:grabbing;
  user-select:none;
}

#home-proyectos .home-projects-track{
  will-change:transform;
}

/* La animación automática se sustituye por auto-scroll JS para permitir arrastre natural */
#home-proyectos.has-marquee .home-projects-track{
  animation:none !important;
  transform:none !important;
}

#home-proyectos .home-project-card{
  cursor:grab;
}

#home-proyectos .home-projects-marquee.is-dragging .home-project-card{
  cursor:grabbing;
}

/* Eliminar botonera inferior y flecha */
#home-proyectos .home-project-card:after{
  display:none !important;
}

#home-proyectos .home-project-card-title{
  left:22px !important;
  right:22px !important;
  bottom:28px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  gap:0 !important;
  color:#fff !important;
  font-size:clamp(1.16rem, 1.22vw, 1.42rem) !important;
  line-height:1.08 !important;
  letter-spacing:-.045em !important;
  font-weight:900 !important;
  text-shadow:0 5px 24px rgba(0,0,0,.48), 0 1px 3px rgba(0,0,0,.42) !important;
  padding:0 8px !important;
}

#home-proyectos .home-project-card-title em{
  display:none !important;
}

/* Degradado más limpio para lectura del título sin parecer botonera */
#home-proyectos .home-project-card:before{
  background:
    linear-gradient(180deg, rgba(31,61,95,.02) 0%, rgba(31,61,95,.03) 42%, rgba(31,61,95,.54) 100%),
    radial-gradient(circle at 50% 96%, rgba(31,61,95,.48) 0%, rgba(31,61,95,0) 44%) !important;
}

#home-proyectos .home-project-card:hover .home-project-card-title{
  transform:translateY(-2px);
}

#home-proyectos .home-project-card,
#home-proyectos .home-project-card *{
  -webkit-user-drag:none;
}

@media (max-width:768px){
  #home-proyectos .home-project-card-title{
    left:20px !important;
    right:20px !important;
    bottom:24px !important;
    font-size:1.18rem !important;
  }
}


/* MODU v0.7.2 — MODU FLOW premium definitivo: menos técnico, más editorial, solo este bloque */
#home-modu-flow.home-flow-final{
  --flow-cream-bg:#F6EEDC;
  --flow-fire:#F29B38;
  --flow-fire-soft:#FFE2B7;
  background:var(--flow-cream-bg) !important;
  overflow:hidden;
}

#home-modu-flow.home-flow-final .wrap{
  width:min(1480px, calc(100% - 72px)) !important;
  max-width:none !important;
  margin:0 auto !important;
}

#home-modu-flow .home-flow-shell{
  background:
    radial-gradient(circle at 7% 22%, rgba(255,255,255,.48) 0, rgba(255,255,255,0) 34%),
    radial-gradient(circle at 78% 28%, rgba(255,255,255,.38) 0, rgba(255,255,255,0) 38%),
    var(--flow-cream-bg) !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
}

#home-modu-flow .home-flow-bg{
  background:transparent !important;
}

#home-modu-flow .home-flow-bg:before{
  opacity:.10 !important;
  filter:saturate(.38) brightness(1.14) blur(.2px) !important;
  inset:0 0 0 46% !important;
}

#home-modu-flow .home-flow-bg:after{
  background:
    linear-gradient(90deg, rgba(246,238,220,1) 0%, rgba(246,238,220,.98) 32%, rgba(246,238,220,.90) 56%, rgba(246,238,220,.58) 100%) !important;
}

#home-modu-flow .home-flow-main{
  grid-template-columns:minmax(0, 690px) minmax(520px, 660px) !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:86px !important;
  padding:112px 0 88px !important;
  min-height:720px !important;
}

#home-modu-flow .home-flow-content{
  max-width:690px !important;
  padding-left:0 !important;
  padding-right:0 !important;
  justify-self:start !important;
  transform:translate(var(--flow-text-x), var(--flow-text-y)) !important;
}

#home-modu-flow .home-flow-eyebrow{
  justify-content:flex-start !important;
  align-items:center !important;
  gap:15px !important;
  margin:0 0 28px !important;
  color:var(--flow-eyebrow-color) !important;
  font-family:Sora, Inter, sans-serif !important;
  font-size:.84rem !important;
  line-height:1 !important;
  letter-spacing:.19em !important;
  font-weight:900 !important;
}

#home-modu-flow.home-flow-final.has-eyebrow-lines .home-flow-eyebrow:before,
#home-modu-flow.home-flow-final.has-eyebrow-lines .home-flow-eyebrow:after{
  width:42px !important;
  height:2px !important;
  background:currentColor !important;
}

#home-modu-flow.home-flow-final h2.home-flow-title{
  max-width:690px !important;
  color:var(--flow-title-color) !important;
  font-size:clamp(3.05rem, 4.05vw, 4.65rem) !important;
  line-height:1.02 !important;
  letter-spacing:-.076em !important;
  font-weight:900 !important;
  text-wrap:balance !important;
}

#home-modu-flow.home-flow-final h2 span{
  color:var(--flow-accent) !important;
}

#home-modu-flow .home-flow-text{
  margin-top:30px !important;
  max-width:620px !important;
  color:#496077 !important;
  font-size:clamp(1rem,1.02vw,1.11rem) !important;
  line-height:1.72 !important;
}

#home-modu-flow .home-flow-button{
  margin-top:38px !important;
  min-height:62px !important;
  box-shadow:0 22px 42px rgba(46,123,181,.18), inset 0 1px 0 rgba(255,255,255,.24) !important;
}

#home-modu-flow .home-flow-visual{
  justify-self:center !important;
  width:min(100%,650px) !important;
  min-height:620px !important;
  transform:translate(var(--flow-visual-x), var(--flow-visual-y)) !important;
}

/* Visual más elegante y menos técnico */
#home-modu-flow .flow-orbit{
  width:500px !important;
  height:500px !important;
}

#home-modu-flow .flow-orbit .ring{
  border-color:rgba(46,123,181,.13) !important;
}

#home-modu-flow .flow-orbit .ring-2,
#home-modu-flow .flow-orbit .ring-3{
  opacity:.45 !important;
}

#home-modu-flow .flow-orbit .ring-4{
  opacity:.28 !important;
}

#home-modu-flow .flow-core-svg{
  width:430px !important;
  height:430px !important;
  opacity:.62 !important;
}

#home-modu-flow .flow-center{
  width:210px !important;
  height:210px !important;
  border:1px solid rgba(31,61,95,.06) !important;
  background:rgba(255,255,255,.72) !important;
  box-shadow:0 22px 60px rgba(31,61,95,.08), inset 0 1px 0 rgba(255,255,255,.7) !important;
  backdrop-filter:blur(10px);
}

#home-modu-flow .flow-center img{
  width:var(--flow-logo-w) !important;
  max-width:118px !important;
}

#home-modu-flow .flow-center strong{
  color:var(--flow-accent) !important;
  font-size:.82rem !important;
  letter-spacing:.05em !important;
}

#home-modu-flow .flow-node{
  width:146px !important;
  min-height:150px !important;
  padding:24px 18px 22px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.72) !important;
  border:1px solid rgba(31,61,95,.08) !important;
  box-shadow:0 22px 46px rgba(31,61,95,.10), inset 0 1px 0 rgba(255,255,255,.72) !important;
  backdrop-filter:blur(10px);
}

#home-modu-flow .flow-node svg{
  width:28px !important;
  height:28px !important;
  margin-bottom:13px !important;
  stroke-width:1.65 !important;
}

#home-modu-flow .flow-node strong{
  font-size:.78rem !important;
  line-height:1.12 !important;
  letter-spacing:-.02em !important;
}

#home-modu-flow .flow-node p{
  font-size:.78rem !important;
  line-height:1.38 !important;
  margin-top:12px !important;
  color:#496077 !important;
}

#home-modu-flow .flow-node-top{
  transform:translate(-50%,-50%) translate(0,-218px) !important;
}

#home-modu-flow .flow-node-left{
  transform:translate(-50%,-50%) translate(-228px,0) !important;
}

#home-modu-flow .flow-node-right{
  transform:translate(-50%,-50%) translate(228px,0) !important;
}

#home-modu-flow .flow-node-bottom{
  transform:translate(-50%,-50%) translate(0,218px) !important;
}

/* Conectores más sutiles */
#home-modu-flow .flow-node-line{
  background:rgba(46,123,181,.36) !important;
  opacity:.72 !important;
}

#home-modu-flow .flow-node-dot{
  width:18px !important;
  height:18px !important;
  background:#fff !important;
  border:2px solid rgba(46,123,181,.24) !important;
  box-shadow:0 0 0 5px rgba(46,123,181,.10) !important;
}

#home-modu-flow .flow-node-dot::after{
  width:8px !important;
  height:8px !important;
}

/* Recorrido naranja más fino, más elegante, menos protagonista */
#home-modu-flow .flow-fuse-runner{
  width:500px !important;
  height:500px !important;
  opacity:.90 !important;
}

#home-modu-flow .flow-fuse-runner:before{
  width:11px !important;
  height:11px !important;
  background:#fff !important;
  border:2px solid rgba(242,155,56,.90) !important;
  box-shadow:
    0 0 0 5px rgba(242,155,56,.10),
    0 0 16px rgba(242,155,56,.70),
    0 0 34px rgba(255,210,142,.58) !important;
}

#home-modu-flow .flow-fuse-runner:after{
  width:120px !important;
  height:2px !important;
  background:linear-gradient(90deg, rgba(242,155,56,0), rgba(242,155,56,.78), rgba(255,232,199,.96)) !important;
  filter:blur(.1px) !important;
  opacity:.74 !important;
}

#home-modu-flow .flow-active-arc{
  opacity:.55 !important;
  border-width:2px !important;
  box-shadow:0 0 14px rgba(242,155,56,.26) !important;
}

/* Beneficios inferiores más premium y menos administrativos */
#home-modu-flow .home-flow-benefits{
  background:rgba(246,238,220,.96) !important;
  border-top:1px solid rgba(31,61,95,.09) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.48) !important;
}

#home-modu-flow .home-flow-benefit{
  padding:32px 32px 36px !important;
  gap:20px !important;
  border-right:1px solid rgba(31,61,95,.09) !important;
}

#home-modu-flow .flow-benefit-icon{
  width:58px !important;
  height:58px !important;
}

#home-modu-flow .flow-benefit-icon svg{
  width:48px !important;
  height:48px !important;
  stroke-width:1.75 !important;
}

#home-modu-flow .home-flow-benefit strong{
  font-size:1rem !important;
  letter-spacing:-.02em !important;
}

#home-modu-flow .home-flow-benefit p{
  color:#496077 !important;
  font-size:.9rem !important;
  line-height:1.48 !important;
  margin-top:8px !important;
}

/* Secuencia dinámica: empieza en izquierda, Diseño y Partners, y avanza hacia la derecha */
#home-modu-flow.home-flow-final{
  --flow-cycle:9.2s;
}

#home-modu-flow .flow-node-left .flow-node-dot{animation-name:flowConnectorLeftPremium643 !important;}
#home-modu-flow .flow-node-top .flow-node-dot{animation-name:flowConnectorTopPremium643 !important;}
#home-modu-flow .flow-node-right .flow-node-dot{animation-name:flowConnectorRightPremium643 !important;}
#home-modu-flow .flow-node-bottom .flow-node-dot{animation-name:flowConnectorBottomPremium643 !important;}

#home-modu-flow .flow-node-left .flow-node-line{animation-name:flowConnectorLineLeftPremium643 !important;}
#home-modu-flow .flow-node-top .flow-node-line{animation-name:flowConnectorLineTopPremium643 !important;}
#home-modu-flow .flow-node-right .flow-node-line{animation-name:flowConnectorLineRightPremium643 !important;}
#home-modu-flow .flow-node-bottom .flow-node-line{animation-name:flowConnectorLineBottomPremium643 !important;}

@keyframes flowConnectorLeftPremium643{
  0%,100%{background:#fff;border-color:rgba(46,123,181,.24);box-shadow:0 0 0 5px rgba(46,123,181,.10);transform:translateY(-50%) scale(1);}
  1%,12%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 0 8px rgba(242,155,56,.16),0 0 20px rgba(242,155,56,.62);transform:translateY(-50%) scale(1.20);}
}
@keyframes flowConnectorTopPremium643{
  0%,100%{background:#fff;border-color:rgba(46,123,181,.24);box-shadow:0 0 0 5px rgba(46,123,181,.10);transform:translateX(-50%) scale(1);}
  22%,33%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 0 8px rgba(242,155,56,.16),0 0 20px rgba(242,155,56,.62);transform:translateX(-50%) scale(1.20);}
}
@keyframes flowConnectorRightPremium643{
  0%,100%{background:#fff;border-color:rgba(46,123,181,.24);box-shadow:0 0 0 5px rgba(46,123,181,.10);transform:translateY(-50%) scale(1);}
  45%,56%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 0 8px rgba(242,155,56,.16),0 0 20px rgba(242,155,56,.62);transform:translateY(-50%) scale(1.20);}
}
@keyframes flowConnectorBottomPremium643{
  0%,100%{background:#fff;border-color:rgba(46,123,181,.24);box-shadow:0 0 0 5px rgba(46,123,181,.10);transform:translateX(-50%) scale(1);}
  67%,78%{background:var(--flow-fire-soft);border-color:var(--flow-fire);box-shadow:0 0 0 8px rgba(242,155,56,.16),0 0 20px rgba(242,155,56,.62);transform:translateX(-50%) scale(1.20);}
}

@keyframes flowConnectorLineLeftPremium643{
  0%,100%{background:rgba(46,123,181,.36);box-shadow:none;}
  1%,12%{background:linear-gradient(90deg, rgba(255,232,199,.98), rgba(242,155,56,.86));box-shadow:0 0 10px rgba(242,155,56,.26);}
}
@keyframes flowConnectorLineTopPremium643{
  0%,100%{background:rgba(46,123,181,.36);box-shadow:none;}
  22%,33%{background:linear-gradient(180deg, rgba(255,232,199,.98), rgba(242,155,56,.86));box-shadow:0 0 10px rgba(242,155,56,.26);}
}
@keyframes flowConnectorLineRightPremium643{
  0%,100%{background:rgba(46,123,181,.36);box-shadow:none;}
  45%,56%{background:linear-gradient(270deg, rgba(255,232,199,.98), rgba(242,155,56,.86));box-shadow:0 0 10px rgba(242,155,56,.26);}
}
@keyframes flowConnectorLineBottomPremium643{
  0%,100%{background:rgba(46,123,181,.36);box-shadow:none;}
  67%,78%{background:linear-gradient(0deg, rgba(255,232,199,.98), rgba(242,155,56,.86));box-shadow:0 0 10px rgba(242,155,56,.26);}
}

@media (max-width:1440px){
  #home-modu-flow .home-flow-main{
    grid-template-columns:minmax(0, 640px) minmax(500px, 610px) !important;
    gap:62px !important;
    padding:96px 0 80px !important;
    min-height:680px !important;
  }

  #home-modu-flow.home-flow-final h2.home-flow-title{
    max-width:640px !important;
    font-size:clamp(2.85rem,3.95vw,4.3rem) !important;
  }

  #home-modu-flow .home-flow-text{
    max-width:590px !important;
  }

  #home-modu-flow .home-flow-visual{
    width:min(100%,600px) !important;
    min-height:560px !important;
  }

  #home-modu-flow .flow-orbit,
  #home-modu-flow .flow-fuse-runner{
    width:450px !important;
    height:450px !important;
  }

  #home-modu-flow .flow-core-svg{
    width:390px !important;
    height:390px !important;
  }

  #home-modu-flow .flow-center{
    width:190px !important;
    height:190px !important;
  }

  #home-modu-flow .flow-node{
    width:132px !important;
    min-height:138px !important;
    padding:20px 15px 18px !important;
  }

  #home-modu-flow .flow-node-top{transform:translate(-50%,-50%) translate(0,-196px) !important;}
  #home-modu-flow .flow-node-left{transform:translate(-50%,-50%) translate(-206px,0) !important;}
  #home-modu-flow .flow-node-right{transform:translate(-50%,-50%) translate(206px,0) !important;}
  #home-modu-flow .flow-node-bottom{transform:translate(-50%,-50%) translate(0,196px) !important;}
}

@media (max-width:1180px){
  #home-modu-flow.home-flow-final .wrap{
    width:min(1480px, calc(100% - 44px)) !important;
  }

  #home-modu-flow .home-flow-main{
    grid-template-columns:1fr !important;
    gap:38px !important;
    padding:76px 0 58px !important;
    min-height:auto !important;
  }

  #home-modu-flow .home-flow-content{
    max-width:760px !important;
  }

  #home-modu-flow.home-flow-final h2.home-flow-title{
    max-width:760px !important;
    font-size:clamp(2.9rem,6vw,4.18rem) !important;
  }

  #home-modu-flow .home-flow-text{
    max-width:720px !important;
  }

  #home-modu-flow .home-flow-visual{
    justify-self:center !important;
    margin-top:8px !important;
  }

  #home-modu-flow .home-flow-benefits{
    grid-template-columns:repeat(2,1fr) !important;
  }
}

@media (max-width:768px){
  #home-modu-flow.home-flow-final .wrap{
    width:100% !important;
  }

  #home-modu-flow .home-flow-main{
    padding:58px 24px 46px !important;
  }

  #home-modu-flow .home-flow-content{
    max-width:none !important;
  }

  #home-modu-flow .home-flow-eyebrow{
    margin:0 0 16px !important;
    gap:10px !important;
    font-size:.74rem !important;
    letter-spacing:.16em !important;
  }

  #home-modu-flow.home-flow-final.has-eyebrow-lines .home-flow-eyebrow:before,
  #home-modu-flow.home-flow-final.has-eyebrow-lines .home-flow-eyebrow:after{
    width:30px !important;
  }

  #home-modu-flow.home-flow-final h2.home-flow-title{
    max-width:100% !important;
    font-size:clamp(2.42rem,10.6vw,3.7rem) !important;
    line-height:.98 !important;
    letter-spacing:-.075em !important;
  }

  #home-modu-flow .home-flow-text{
    margin-top:20px !important;
    max-width:100% !important;
    font-size:1rem !important;
    line-height:1.66 !important;
  }

  #home-modu-flow .home-flow-button{
    margin-top:28px !important;
  }

  #home-modu-flow .home-flow-visual,
  #home-modu-flow .home-flow-benefits{
    display:none !important;
  }
}


/* MODU v0.7.2 — hotfix tarjetas MODU FLOW: recuperar proporción y evitar recortes */
#home-modu-flow.home-flow-final .wrap{
  width:min(1480px, calc(100% - 88px)) !important;
}

#home-modu-flow .home-flow-main{
  grid-template-columns:minmax(0, 660px) minmax(600px, 720px) !important;
  gap:72px !important;
  padding:104px 0 88px !important;
}

#home-modu-flow .home-flow-visual{
  width:min(100%, 720px) !important;
  min-height:650px !important;
  justify-self:end !important;
  overflow:visible !important;
}

#home-modu-flow .flow-orbit,
#home-modu-flow .flow-fuse-runner{
  width:520px !important;
  height:520px !important;
}

#home-modu-flow .flow-core-svg{
  width:438px !important;
  height:438px !important;
}

#home-modu-flow .flow-center{
  width:206px !important;
  height:206px !important;
}

#home-modu-flow .flow-node{
  width:156px !important;
  min-height:164px !important;
  padding:22px 18px 22px !important;
}

#home-modu-flow .flow-node strong{
  font-size:.8rem !important;
}

#home-modu-flow .flow-node p{
  font-size:.79rem !important;
  line-height:1.42 !important;
}

/* distancias equilibradas alrededor del círculo */
#home-modu-flow .flow-node-top{
  transform:translate(-50%,-50%) translate(0,-216px) !important;
}
#home-modu-flow .flow-node-left{
  transform:translate(-50%,-50%) translate(-232px,0) !important;
}
#home-modu-flow .flow-node-right{
  transform:translate(-50%,-50%) translate(232px,0) !important;
}
#home-modu-flow .flow-node-bottom{
  transform:translate(-50%,-50%) translate(0,216px) !important;
}

@media (max-width: 1440px){
  #home-modu-flow.home-flow-final .wrap{
    width:min(1480px, calc(100% - 64px)) !important;
  }
  #home-modu-flow .home-flow-main{
    grid-template-columns:minmax(0, 620px) minmax(540px, 640px) !important;
    gap:56px !important;
    padding:94px 0 80px !important;
  }
  #home-modu-flow .home-flow-visual{
    width:min(100%, 640px) !important;
    min-height:590px !important;
  }
  #home-modu-flow .flow-orbit,
  #home-modu-flow .flow-fuse-runner{
    width:470px !important;
    height:470px !important;
  }
  #home-modu-flow .flow-core-svg{
    width:398px !important;
    height:398px !important;
  }
  #home-modu-flow .flow-center{
    width:188px !important;
    height:188px !important;
  }
  #home-modu-flow .flow-node{
    width:142px !important;
    min-height:148px !important;
    padding:20px 16px 18px !important;
  }
  #home-modu-flow .flow-node-top{transform:translate(-50%,-50%) translate(0,-198px) !important;}
  #home-modu-flow .flow-node-left{transform:translate(-50%,-50%) translate(-208px,0) !important;}
  #home-modu-flow .flow-node-right{transform:translate(-50%,-50%) translate(208px,0) !important;}
  #home-modu-flow .flow-node-bottom{transform:translate(-50%,-50%) translate(0,198px) !important;}
}

@media (max-width: 1180px){
  #home-modu-flow.home-flow-final .wrap{
    width:min(1480px, calc(100% - 40px)) !important;
  }
  #home-modu-flow .home-flow-main{
    grid-template-columns:1fr !important;
    gap:34px !important;
    padding:72px 0 56px !important;
  }
  #home-modu-flow .home-flow-visual{
    width:min(100%, 620px) !important;
    min-height:560px !important;
    justify-self:center !important;
  }
}

@media (max-width: 768px){
  #home-modu-flow.home-flow-final .wrap{
    width:100% !important;
  }
  #home-modu-flow .home-flow-main{
    padding:56px 24px 44px !important;
  }
}


/* MODU v0.7.2 — FIX REAL: MODU FLOW como módulo proporcional cerrado */
#home-modu-flow.home-flow-final{
  --flow-module-scale:1;
  --flow-module-size:620px;
  --flow-node-w:150px;
  --flow-node-h:158px;
  --flow-node-distance-x:232px;
  --flow-node-distance-y:220px;
}

/* El bloque se reparte sin obligar al gráfico a desbordar */
#home-modu-flow .home-flow-main{
  grid-template-columns:minmax(0, 0.94fr) minmax(560px, 0.86fr) !important;
  gap:clamp(36px, 4vw, 72px) !important;
  align-items:center !important;
  overflow:hidden !important;
}

/* El área visual ahora es una caja cerrada: nada puede salirse de aquí */
#home-modu-flow .home-flow-visual{
  position:relative !important;
  width:var(--flow-module-size) !important;
  height:var(--flow-module-size) !important;
  min-height:0 !important;
  max-width:100% !important;
  justify-self:center !important;
  overflow:visible !important;
  transform:none !important;
}

/* Todos los elementos del gráfico se posicionan dentro de la misma caja */
#home-modu-flow .flow-orbit,
#home-modu-flow .flow-core-svg,
#home-modu-flow .flow-center,
#home-modu-flow .flow-fuse-runner,
#home-modu-flow .flow-node{
  position:absolute !important;
}

#home-modu-flow .flow-orbit,
#home-modu-flow .flow-fuse-runner{
  left:50% !important;
  top:50% !important;
  width:420px !important;
  height:420px !important;
  transform:translate(-50%,-50%) !important;
}

#home-modu-flow .flow-core-svg{
  left:50% !important;
  top:50% !important;
  width:350px !important;
  height:350px !important;
  transform:translate(-50%,-50%) rotate(180deg) !important;
}

#home-modu-flow .flow-center{
  left:50% !important;
  top:50% !important;
  width:180px !important;
  height:180px !important;
  transform:translate(-50%,-50%) !important;
}

/* Tarjetas dentro del módulo, simétricas, sin depender del viewport */
#home-modu-flow .flow-node{
  width:var(--flow-node-w) !important;
  min-height:var(--flow-node-h) !important;
  height:auto !important;
  padding:20px 16px 18px !important;
  border-radius:18px !important;
  box-sizing:border-box !important;
  z-index:8 !important;
}

#home-modu-flow .flow-node-top{
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) translate(0, calc(var(--flow-node-distance-y) * -1)) !important;
}

#home-modu-flow .flow-node-right{
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) translate(var(--flow-node-distance-x), 0) !important;
}

#home-modu-flow .flow-node-bottom{
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) translate(0, var(--flow-node-distance-y)) !important;
}

#home-modu-flow .flow-node-left{
  left:50% !important;
  top:50% !important;
  transform:translate(-50%,-50%) translate(calc(var(--flow-node-distance-x) * -1), 0) !important;
}

/* Ajuste fino tipográfico dentro de tarjetas */
#home-modu-flow .flow-node svg{
  width:27px !important;
  height:27px !important;
  margin-bottom:11px !important;
}

#home-modu-flow .flow-node strong{
  font-size:.78rem !important;
  line-height:1.12 !important;
}

#home-modu-flow .flow-node p{
  font-size:.76rem !important;
  line-height:1.36 !important;
  margin-top:10px !important;
}

/* Conectores adaptados a las tarjetas nuevas */
#home-modu-flow .flow-node-top .flow-node-line{
  bottom:-24px !important;
  height:24px !important;
}
#home-modu-flow .flow-node-top .flow-node-dot{
  bottom:-37px !important;
}

#home-modu-flow .flow-node-bottom .flow-node-line{
  top:-24px !important;
  height:24px !important;
}
#home-modu-flow .flow-node-bottom .flow-node-dot{
  top:-37px !important;
}

#home-modu-flow .flow-node-left .flow-node-line{
  right:-24px !important;
  width:24px !important;
}
#home-modu-flow .flow-node-left .flow-node-dot{
  right:-37px !important;
}

#home-modu-flow .flow-node-right .flow-node-line{
  left:-24px !important;
  width:24px !important;
}
#home-modu-flow .flow-node-right .flow-node-dot{
  left:-37px !important;
}

/* Desktop grande */
@media (min-width:1500px){
  #home-modu-flow.home-flow-final{
    --flow-module-size:640px;
    --flow-node-distance-x:238px;
    --flow-node-distance-y:224px;
  }
}

/* Portátil: aquí estaba rompiendo. Reducimos TODO el módulo proporcionalmente */
@media (max-width:1440px){
  #home-modu-flow.home-flow-final{
    --flow-module-size:560px;
    --flow-node-w:138px;
    --flow-node-h:146px;
    --flow-node-distance-x:204px;
    --flow-node-distance-y:194px;
  }

  #home-modu-flow .home-flow-main{
    grid-template-columns:minmax(0, 0.96fr) minmax(500px, 0.82fr) !important;
    gap:clamp(28px, 3vw, 48px) !important;
  }

  #home-modu-flow .flow-orbit,
  #home-modu-flow .flow-fuse-runner{
    width:370px !important;
    height:370px !important;
  }

  #home-modu-flow .flow-core-svg{
    width:312px !important;
    height:312px !important;
  }

  #home-modu-flow .flow-center{
    width:160px !important;
    height:160px !important;
  }

  #home-modu-flow .flow-node{
    padding:18px 14px 16px !important;
  }

  #home-modu-flow .flow-node svg{
    width:25px !important;
    height:25px !important;
    margin-bottom:9px !important;
  }

  #home-modu-flow .flow-node strong{
    font-size:.72rem !important;
  }

  #home-modu-flow .flow-node p{
    font-size:.71rem !important;
    line-height:1.32 !important;
  }
}

/* Portátil pequeño / tablet horizontal: apilamos antes de que se rompa */
@media (max-width:1180px){
  #home-modu-flow.home-flow-final{
    --flow-module-size:560px;
    --flow-node-distance-x:204px;
    --flow-node-distance-y:194px;
  }

  #home-modu-flow .home-flow-main{
    grid-template-columns:1fr !important;
    gap:42px !important;
  }

  #home-modu-flow .home-flow-visual{
    margin-inline:auto !important;
  }
}

/* Móvil: se mantiene la decisión aprobada, sin gráfico complejo */
@media (max-width:768px){
  #home-modu-flow .home-flow-visual,
  #home-modu-flow .home-flow-benefits{
    display:none !important;
  }
}


/* MODU v0.7.2 — ajuste fino portátil: la tarjeta derecha ya no se corta */
@media (max-width:1440px) and (min-width:1181px){
  #home-modu-flow.home-flow-final{
    --flow-module-size:540px;
    --flow-node-w:130px;
    --flow-node-h:144px;
    --flow-node-distance-x:190px;
    --flow-node-distance-y:194px;
  }

  #home-modu-flow .home-flow-main{
    grid-template-columns:minmax(0, 1fr) minmax(470px, 0.78fr) !important;
    gap:clamp(24px, 2.6vw, 38px) !important;
    align-items:center !important;
  }

  #home-modu-flow .home-flow-visual{
    width:540px !important;
    height:540px !important;
    justify-self:end !important;
  }

  #home-modu-flow .flow-orbit,
  #home-modu-flow .flow-fuse-runner{
    width:356px !important;
    height:356px !important;
  }

  #home-modu-flow .flow-core-svg{
    width:298px !important;
    height:298px !important;
  }

  #home-modu-flow .flow-center{
    width:154px !important;
    height:154px !important;
  }

  #home-modu-flow .flow-node{
    padding:18px 13px 16px !important;
  }

  #home-modu-flow .flow-node svg{
    width:24px !important;
    height:24px !important;
    margin-bottom:8px !important;
  }

  #home-modu-flow .flow-node strong{
    font-size:.70rem !important;
    line-height:1.08 !important;
  }

  #home-modu-flow .flow-node p{
    font-size:.69rem !important;
    line-height:1.30 !important;
    margin-top:9px !important;
  }

  /* conectores un poco más cortos para que el conjunto no desborde */
  #home-modu-flow .flow-node-top .flow-node-line,
  #home-modu-flow .flow-node-bottom .flow-node-line{
    height:22px !important;
  }
  #home-modu-flow .flow-node-top .flow-node-line{bottom:-22px !important;}
  #home-modu-flow .flow-node-bottom .flow-node-line{top:-22px !important;}
  #home-modu-flow .flow-node-top .flow-node-dot{bottom:-35px !important;}
  #home-modu-flow .flow-node-bottom .flow-node-dot{top:-35px !important;}

  #home-modu-flow .flow-node-left .flow-node-line,
  #home-modu-flow .flow-node-right .flow-node-line{
    width:20px !important;
  }
  #home-modu-flow .flow-node-left .flow-node-line{right:-20px !important;}
  #home-modu-flow .flow-node-right .flow-node-line{left:-20px !important;}
  #home-modu-flow .flow-node-left .flow-node-dot{right:-33px !important;}
  #home-modu-flow .flow-node-right .flow-node-dot{left:-33px !important;}
}


/* MODU v0.7.2 — corrección quirúrgica de portátil, manteniendo la composición aprobada de la v0.7.2 */
@media (max-width:1440px) and (min-width:1181px){
  #home-modu-flow.home-flow-final{
    --flow-module-size:534px !important;
    --flow-node-w:130px !important;
    --flow-node-h:144px !important;
    --flow-node-distance-x:186px !important;
    --flow-node-distance-y:194px !important;
  }

  #home-modu-flow .home-flow-main{
    grid-template-columns:minmax(0, 1fr) minmax(472px, 0.79fr) !important;
    gap:clamp(24px, 2.4vw, 36px) !important;
    padding-right:clamp(26px, 2.2vw, 34px) !important;
  }

  #home-modu-flow .home-flow-visual{
    width:534px !important;
    height:534px !important;
    justify-self:end !important;
    transform:translateX(-14px) !important;
  }

  #home-modu-flow .flow-orbit,
  #home-modu-flow .flow-fuse-runner{
    width:352px !important;
    height:352px !important;
  }

  #home-modu-flow .flow-core-svg{
    width:296px !important;
    height:296px !important;
  }

  #home-modu-flow .flow-center{
    width:152px !important;
    height:152px !important;
  }
}


/* ==========================================================================
   MODU PROJECT v0.7.2 — VERSIÓN MAESTRA CONSOLIDADA
   Objetivo:
   - Mantener Hero, MODU FLOW y Proyectos como secciones independientes.
   - Unificar jerarquía, anchos, breakpoints y comportamiento.
   - No romper lo aprobado: Hero actual, MODU FLOW v0.6.46/48 y Proyectos v0.6.42.
   ========================================================================== */

:root{
  --modu-master-page-bg:#F7F4EF;
  --modu-master-cream:#F3E8CC;
  --modu-master-blue:#2E7BB5;
  --modu-master-navy:var(--modu-project-blue);
  --modu-master-text:#405870;
  --modu-master-max:1480px;
  --modu-master-side:clamp(24px, 4.25vw, 72px);
  --modu-master-radius:28px;
  --modu-master-ease:cubic-bezier(.2,.8,.2,1);
}

/* Sistema común: los tres primeros bloques respetan una anchura visual estable */
.modu-hero .wrap,
#home-modu-flow .wrap,
#home-proyectos .wrap{
  width:min(var(--modu-master-max), calc(100% - (var(--modu-master-side) * 2))) !important;
  margin-inline:auto !important;
}

/* Jerarquía común para rótulos tipo eyebrow */
.modu-hero-eyebrow,
.home-flow-eyebrow,
.home-projects-eyebrow{
  font-family:Sora, Inter, sans-serif !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  color:var(--modu-master-blue) !important;
  letter-spacing:.18em !important;
  line-height:1 !important;
}

/* Las líneas de rótulo mantienen el mismo carácter editorial */
.home-flow-final.has-eyebrow-lines .home-flow-eyebrow:before,
.home-flow-final.has-eyebrow-lines .home-flow-eyebrow:after,
.home-projects-eyebrow:before,
.home-projects-eyebrow:after{
  width:42px !important;
  height:2px !important;
  opacity:1 !important;
}

/* Tipografía editorial común: no obligamos a que todos sean igual de grandes,
   pero sí a que compartan respiración y peso visual. */
#home-modu-flow h2,
#home-proyectos h2{
  font-family:Sora, Inter, sans-serif !important;
  font-weight:900 !important;
  color:var(--modu-master-navy) !important;
  letter-spacing:-.078em !important;
}

/* ==========================================================================
   BLOQUE 1 — HERO
   Se conserva el hero aprobado. Solo se añaden garantías de estabilidad.
   ========================================================================== */

.modu-hero{
  isolation:isolate;
}

.modu-hero img,
.modu-hero video{
  max-width:100%;
}

.modu-hero .button,
.modu-hero a{
  -webkit-tap-highlight-color:transparent;
}

/* ==========================================================================
   BLOQUE 2 — MODU FLOW CONSOLIDADO
   Mantiene el look de v0.6.46/48, pero estabiliza portátil.
   ========================================================================== */

#home-modu-flow.home-flow-final{
  background:var(--modu-master-cream) !important;
  --flow-cycle:8.8s;
}

/* Fondo cálido, premium, sin apariencia SaaS */
#home-modu-flow .home-flow-shell{
  background:
    radial-gradient(circle at 8% 22%, rgba(255,255,255,.48) 0, rgba(255,255,255,0) 34%),
    radial-gradient(circle at 80% 26%, rgba(255,255,255,.30) 0, rgba(255,255,255,0) 38%),
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,0)),
    var(--modu-master-cream) !important;
  border:0 !important;
  box-shadow:none !important;
}

/* Desktop grande: composición aprobada, con el gráfico completo y respirando */
@media (min-width:1441px){
  #home-modu-flow .home-flow-main{
    grid-template-columns:minmax(0, 690px) minmax(560px, 690px) !important;
    gap:clamp(52px, 4vw, 86px) !important;
    align-items:center !important;
    padding:104px 0 88px !important;
  }

  #home-modu-flow .home-flow-content{
    max-width:690px !important;
  }

  #home-modu-flow .home-flow-visual{
    justify-self:end !important;
  }
}

/* Portátil: mantener la sensación de pantalla grande, sin cortar tarjeta derecha */
@media (min-width:1181px) and (max-width:1440px){
  #home-modu-flow .home-flow-main{
    grid-template-columns:minmax(0, 1fr) minmax(468px, .80fr) !important;
    gap:clamp(22px, 2.4vw, 38px) !important;
    align-items:center !important;
    padding:92px clamp(28px, 2.7vw, 44px) 78px !important;
    overflow:hidden !important;
  }

  #home-modu-flow .home-flow-content{
    max-width:650px !important;
    padding-right:8px !important;
  }

  #home-modu-flow.home-flow-final h2.home-flow-title{
    max-width:650px !important;
    font-size:clamp(3rem, 3.95vw, 4.45rem) !important;
    line-height:1.02 !important;
  }

  #home-modu-flow .home-flow-text{
    max-width:620px !important;
    font-size:clamp(1rem, 1.05vw, 1.14rem) !important;
  }

  #home-modu-flow.home-flow-final{
    --flow-module-size:534px !important;
    --flow-node-w:130px !important;
    --flow-node-h:144px !important;
    --flow-node-distance-x:186px !important;
    --flow-node-distance-y:194px !important;
  }

  #home-modu-flow .home-flow-visual{
    width:534px !important;
    height:534px !important;
    min-height:534px !important;
    justify-self:end !important;
    transform:translateX(-14px) !important;
  }

  #home-modu-flow .flow-orbit,
  #home-modu-flow .flow-fuse-runner{
    width:352px !important;
    height:352px !important;
  }

  #home-modu-flow .flow-core-svg{
    width:296px !important;
    height:296px !important;
  }

  #home-modu-flow .flow-center{
    width:152px !important;
    height:152px !important;
  }

  #home-modu-flow .flow-node{
    padding:18px 13px 16px !important;
  }

  #home-modu-flow .flow-node h3{
    font-size:clamp(.70rem, .78vw, .82rem) !important;
  }

  #home-modu-flow .flow-node p{
    font-size:clamp(.64rem, .70vw, .72rem) !important;
    line-height:1.28 !important;
  }
}

/* Tablet: evitar peleas de layout. Apilado premium antes de romper. */
@media (min-width:769px) and (max-width:1180px){
  #home-modu-flow .home-flow-main{
    grid-template-columns:1fr !important;
    gap:42px !important;
    padding:76px 0 58px !important;
  }

  #home-modu-flow .home-flow-content{
    max-width:760px !important;
  }

  #home-modu-flow .home-flow-visual{
    justify-self:center !important;
    margin-inline:auto !important;
  }

  #home-modu-flow .home-flow-benefits{
    grid-template-columns:repeat(2, 1fr) !important;
  }
}

/* Móvil: se mantiene decisión aprobada. Sin gráfico complejo. */
@media (max-width:768px){
  #home-modu-flow .home-flow-main{
    padding:58px 24px 46px !important;
  }

  #home-modu-flow .home-flow-visual,
  #home-modu-flow .home-flow-benefits{
    display:none !important;
  }

  #home-modu-flow.home-flow-final h2.home-flow-title{
    font-size:clamp(2.42rem, 10.6vw, 3.7rem) !important;
    line-height:.98 !important;
  }
}

/* ==========================================================================
   BLOQUE 3 — PROYECTOS QUE GESTIONAMOS CONSOLIDADO
   Mantiene v0.6.42: títulos centrados, arrastre, autoscroll natural.
   ========================================================================== */

#home-proyectos.home-projects{
  background:#eaefee !important;
}

#home-proyectos .home-projects-title-row{
  align-items:start !important;
}

#home-proyectos .home-project-card:after{
  display:none !important;
}

#home-proyectos .home-project-card-title{
  left:22px !important;
  right:22px !important;
  bottom:28px !important;
  justify-content:center !important;
  text-align:center !important;
  color:#fff !important;
  text-shadow:0 5px 24px rgba(0,0,0,.48), 0 1px 3px rgba(0,0,0,.42) !important;
}

#home-proyectos .home-project-card-title em{
  display:none !important;
}

/* Degradado solo para lectura, no botonera */
#home-proyectos .home-project-card:before{
  background:
    linear-gradient(180deg, rgba(31,61,95,.02) 0%, rgba(31,61,95,.03) 42%, rgba(31,61,95,.54) 100%),
    radial-gradient(circle at 50% 96%, rgba(31,61,95,.48) 0%, rgba(31,61,95,0) 44%) !important;
}

/* Scroll / arrastre controlado */
#home-proyectos .home-projects-marquee{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scrollbar-width:none !important;
  cursor:grab;
  -webkit-overflow-scrolling:touch !important;
}

#home-proyectos .home-projects-marquee::-webkit-scrollbar{
  display:none;
}

#home-proyectos .home-projects-marquee.is-dragging{
  cursor:grabbing;
  user-select:none;
}

/* Móvil: carrusel manual, limpio y sin animación forzada */
@media (max-width:768px){
  #home-proyectos .home-projects-marquee{
    scroll-snap-type:x mandatory !important;
    touch-action:pan-x !important;
    mask-image:none !important;
    padding-left:22px !important;
    padding-right:22px !important;
  }

  #home-proyectos .home-projects-track{
    animation:none !important;
    transform:none !important;
    width:max-content !important;
    min-width:max-content !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:18px !important;
  }

  #home-proyectos .home-project-card{
    flex:0 0 min(82vw, 360px) !important;
    width:min(82vw, 360px) !important;
    min-width:min(82vw, 360px) !important;
    scroll-snap-align:start !important;
  }
}

/* ==========================================================================
   ACCESIBILIDAD Y MOVIMIENTO
   Premium no significa marear. Respetamos reduced motion.
   ========================================================================== */

@media (prefers-reduced-motion: reduce){
  #home-modu-flow *,
  #home-proyectos *{
    animation:none !important;
    transition:none !important;
    scroll-behavior:auto !important;
  }
}

/* Evitar saltos visuales en imágenes */
img{
  max-width:100%;
  height:auto;
}



/* ==========================================================================
   MODU PROJECT v0.7.2 — CONTINUIDAD VISUAL
   Toca solo:
   1) transición Hero -> MODU FLOW
   2) copy de Proyectos en portátil
   ========================================================================== */

/* 1) Hero -> MODU FLOW: evitar corte brusco de color */
#home-modu-flow.home-flow-final{
  position:relative !important;
  background:
    linear-gradient(180deg,
      rgba(24,33,40,.10) 0%,
      rgba(243,232,204,.78) 8%,
      rgba(243,232,204,1) 22%,
      rgba(243,232,204,1) 100%
    ) !important;
  margin-top:-1px !important;
  isolation:isolate;
}

/* Velo superior muy sutil: conecta con la profundidad del hero sin oscurecer MODU FLOW */
#home-modu-flow.home-flow-final::before{
  content:"";
  position:absolute;
  z-index:0;
  left:0;
  right:0;
  top:0;
  height:190px;
  pointer-events:none;
  background:
    radial-gradient(circle at 28% -18%, rgba(255,255,255,.42) 0, rgba(255,255,255,0) 44%),
    linear-gradient(180deg, rgba(31,61,95,.14) 0%, rgba(243,232,204,0) 72%);
  opacity:.42;
}

/* El contenido queda por encima del velo */
#home-modu-flow.home-flow-final > *{
  position:relative;
  z-index:1;
}

/* Suavizar la banda lateral crema para que no parezca un rectángulo plano */
#home-modu-flow .home-flow-shell{
  background:
    radial-gradient(circle at 7% 18%, rgba(255,255,255,.52) 0, rgba(255,255,255,0) 34%),
    radial-gradient(circle at 72% 20%, rgba(255,255,255,.32) 0, rgba(255,255,255,0) 36%),
    linear-gradient(90deg,
      rgba(243,232,204,.98) 0%,
      rgba(247,240,220,.98) 16%,
      rgba(255,255,255,.18) 50%,
      rgba(247,240,220,.74) 100%
    ),
    #F3E8CC !important;
}

/* En escritorio grande dejamos el cambio más sutil y elegante */
@media (min-width:1441px){
  #home-modu-flow.home-flow-final::before{
    height:220px;
    opacity:.38;
  }
}

/* En portátil reducimos un poco el velo para que no cree una franja pesada */
@media (min-width:1181px) and (max-width:1440px){
  #home-modu-flow.home-flow-final::before{
    height:150px;
    opacity:.32;
  }
}

/* 2) Proyectos que gestionamos: en portátil acercar copy al titular sin tocar desktop grande */
@media (min-width:1181px) and (max-width:1440px){
  #home-proyectos .home-projects-head{
    max-width:1120px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }

  #home-proyectos .home-projects-title-row{
    grid-template-columns:minmax(0, 640px) minmax(300px, 360px) !important;
    gap:28px !important;
    max-width:1040px !important;
    justify-content:start !important;
    align-items:start !important;
  }

  #home-proyectos .home-projects-title-row h2{
    max-width:640px !important;
  }

  #home-proyectos .home-projects-title-row p{
    max-width:350px !important;
    margin-top:14px !important;
    padding-left:22px !important;
    transform:translateX(-18px) !important;
  }

  #home-proyectos .home-projects-title-row p:before{
    left:0 !important;
    top:22px !important;
    height:76px !important;
  }
}

/* En portátiles algo más estrechos, compactamos un punto más */
@media (min-width:1181px) and (max-width:1320px){
  #home-proyectos .home-projects-title-row{
    grid-template-columns:minmax(0, 600px) minmax(280px, 340px) !important;
    gap:20px !important;
    max-width:980px !important;
  }

  #home-proyectos .home-projects-title-row h2{
    max-width:600px !important;
  }

  #home-proyectos .home-projects-title-row p{
    max-width:340px !important;
    transform:translateX(-28px) !important;
  }
}



/* ==========================================================================
   MODU PROJECT v0.7.2 — CONTINUIDAD PREMIUM REAL
   Objetivo: quitar el salto visual de fondo entre Hero y MODU FLOW.
   Toca solo el fondo/arranque visual de MODU FLOW.
   ========================================================================== */

/* El bloque deja de funcionar como "caja crema" y pasa a ser una continuación full-bleed más neutra */
#home-modu-flow.home-flow-final{
  position:relative !important;
  margin-top:0 !important;
  background:#F7F4EF !important;
  isolation:isolate !important;
}

/* Eliminamos el velo/degradado superior de v0.7.1 que creaba una franja rara */
#home-modu-flow.home-flow-final::before{
  display:none !important;
  content:none !important;
}

/* El contenedor de MODU FLOW deja de crear una caja central con laterales distintos */
#home-modu-flow.home-flow-final .wrap{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}

/* Fondo full width, neutro y premium. Sin bandas laterales ni salto cromático brusco. */
#home-modu-flow .home-flow-shell{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  background:
    radial-gradient(circle at 18% 24%, rgba(255,255,255,.54) 0%, rgba(255,255,255,0) 38%),
    radial-gradient(circle at 76% 28%, rgba(255,255,255,.36) 0%, rgba(255,255,255,0) 40%),
    linear-gradient(180deg, #F7F4EF 0%, #F6F1E7 54%, #F4EBD6 100%) !important;
}

/* La capa interior deja de teñir el bloque en crema plano */
#home-modu-flow .home-flow-bg{
  background:transparent !important;
}

#home-modu-flow .home-flow-bg:after{
  background:
    linear-gradient(90deg,
      rgba(247,244,239,1) 0%,
      rgba(247,244,239,.98) 30%,
      rgba(247,244,239,.88) 54%,
      rgba(246,241,231,.74) 100%
    ) !important;
}

/* El contenido mantiene el mismo ancho de sistema aunque el fondo sea full-bleed */
#home-modu-flow .home-flow-main{
  width:min(var(--modu-master-max, 1480px), calc(100% - (var(--modu-master-side, clamp(24px, 4.25vw, 72px)) * 2))) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}

/* Franja de beneficios con el mismo fondo, sin corte lateral */
#home-modu-flow .home-flow-benefits{
  width:100% !important;
  max-width:none !important;
  background:rgba(244,235,214,.72) !important;
  border-top:1px solid rgba(31,61,95,.08) !important;
}

/* Contenido de beneficios alineado con el sistema general */
#home-modu-flow .home-flow-benefits{
  padding-left:calc((100% - min(var(--modu-master-max, 1480px), calc(100% - (var(--modu-master-side, clamp(24px, 4.25vw, 72px)) * 2)))) / 2) !important;
  padding-right:calc((100% - min(var(--modu-master-max, 1480px), calc(100% - (var(--modu-master-side, clamp(24px, 4.25vw, 72px)) * 2)))) / 2) !important;
}

/* En portátil mantenemos el mismo criterio, sin banda rectangular */
@media (min-width:1181px) and (max-width:1440px){
  #home-modu-flow .home-flow-shell{
    background:
      radial-gradient(circle at 16% 22%, rgba(255,255,255,.50) 0%, rgba(255,255,255,0) 36%),
      radial-gradient(circle at 75% 28%, rgba(255,255,255,.32) 0%, rgba(255,255,255,0) 38%),
      linear-gradient(180deg, #F7F4EF 0%, #F6F1E7 58%, #F4EBD6 100%) !important;
  }
}

/* En móvil: continuidad limpia y simple */
@media (max-width:768px){
  #home-modu-flow .home-flow-main{
    width:100% !important;
  }

  #home-modu-flow .home-flow-shell,
  #home-modu-flow .home-flow-bg:after{
    background:#F7F4EF !important;
  }
}


/* =========================================================
   MODU v0.7.5 — Home · Por qué MODU PROJECT
   Bloque de autoridad: editorial, sobrio, editable y responsive.
   ========================================================= */
.home-why{
  /* MODU v0.7.93 — canonical Why component tokens; no ACF geometry/style overrides. */
  --why-bg:#fff;
  --why-panel-bg:#F7F4EF;
  --why-eyebrow-color:var(--modu-brand-blue);
  --why-title-color:var(--modu-project-blue);
  --why-accent-color:var(--modu-brand-blue);
  --why-text-color:#667789;
  --why-line-color:var(--modu-brand-blue);
  --why-title-size:clamp(3.1rem,5.7vw,6.2rem);
  --why-max-width:1480px;
  --why-pt:120px;
  --why-pb:120px;
  --why-gap:104px;
  --why-left-w:720px;
  --why-panel-w:540px;
  --why-left-x:0px;
  --why-left-y:0px;
  --why-right-x:0px;
  --why-right-y:0px;
  --why-arg-gap:24px;
  --why-arg-delay:100ms;
  position:relative;
  overflow:hidden;
  background:var(--why-bg, #fff);
  padding:var(--why-pt, 120px) 0 var(--why-pb, 120px);
  color:var(--why-title-color, var(--modu-project-blue));
}
.home-why:before{
  content:"";
  position:absolute;
  inset:auto -18% -42% auto;
  width:58vw;
  height:58vw;
  min-width:620px;
  min-height:620px;
  border-radius:999px;
  background:radial-gradient(circle, color-mix(in srgb, var(--why-line-color, #2E7BB5) 13%, transparent) 0%, transparent 68%);
  opacity:.6;
  pointer-events:none;
}
.home-why:after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(31,61,95,.035) 1px, transparent 1px),
    linear-gradient(180deg, rgba(31,61,95,.026) 1px, transparent 1px);
  background-size:96px 96px;
  mask-image:linear-gradient(90deg, transparent 0%, rgba(0,0,0,.55) 58%, transparent 100%);
  opacity:.28;
  pointer-events:none;
}
.home-why-wrap{
  position:relative;
  z-index:1;
  width:min(var(--why-max-width, 1480px), calc(100% - (var(--modu-master-side, clamp(24px, 4.25vw, 72px)) * 2)));
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0, var(--why-left-w, 720px)) minmax(360px, var(--why-panel-w, 540px));
  gap:var(--why-gap, 104px);
  align-items:center;
  justify-content:space-between;
}
.home-why-left{
  transform:translate(var(--why-left-x, 0), var(--why-left-y, 0));
}
.home-why-panel{
  transform:translate(var(--why-right-x, 0), var(--why-right-y, 0));
}
.home-why-eyebrow{
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 0 26px;
  color:var(--why-eyebrow-color, #2E7BB5);
  font-family:Sora, Inter, sans-serif;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.home-why.has-eyebrow-lines .home-why-eyebrow:before,
.home-why.has-eyebrow-lines .home-why-eyebrow:after{
  content:"";
  width:42px;
  height:1px;
  background:currentColor;
  opacity:.75;
}
.home-why h2{
  margin:0;
  max-width:920px;
  color:var(--why-title-color, var(--modu-project-blue));
  font-family:Sora, Inter, sans-serif;
  font-size:var(--why-title-size, clamp(3.1rem,5.35vw,5.95rem));
  line-height:.95;
  letter-spacing:-.075em;
  font-weight:700;
}
.home-why h2 .why-accent{
  color:var(--why-accent-color, #2E7BB5);
}
.home-why-copy{
  max-width:660px;
  margin-top:34px;
  color:var(--why-text-color, #667789);
  font-size:1.06rem;
  line-height:1.72;
  letter-spacing:-.01em;
}
.home-why-copy p{
  margin:0 0 18px;
}
.home-why-copy p:last-child{margin-bottom:0;}
.home-why-cta{
  display:inline-flex;
  align-items:center;
  gap:14px;
  margin-top:38px;
  color:var(--why-title-color, var(--modu-project-blue));
  text-decoration:none;
  font-family:Sora, Inter, sans-serif;
  font-weight:800;
  font-size:.92rem;
  letter-spacing:.02em;
}
.home-why-cta span{
  position:relative;
  padding-bottom:9px;
}
.home-why-cta span:after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:1px;
  background:var(--why-line-color, #2E7BB5);
  transform-origin:left center;
  transition:transform .35s ease;
}
.home-why-cta i{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border-radius:999px;
  background:var(--why-line-color, #2E7BB5);
  color:#fff;
  font-style:normal;
  transition:transform .35s ease, box-shadow .35s ease;
}
.home-why-cta:hover i{
  transform:translateX(6px);
  box-shadow:0 14px 30px rgba(46,123,181,.22);
}
.home-why-cta:hover span:after{transform:scaleX(.72);}
.home-why-panel{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:var(--why-arg-gap, 24px);
  padding:44px 42px 44px 50px;
  border:1px solid rgba(31,61,95,.08);
  border-radius:34px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.74), rgba(255,255,255,.22)),
    var(--why-panel-bg, #F7F4EF);
  box-shadow:0 34px 80px rgba(31,61,95,.08);
  overflow:hidden;
  min-height:420px;
}
.home-why-panel:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.58), transparent 42%),
    linear-gradient(90deg, rgba(46,123,181,.055) 1px, transparent 1px),
    linear-gradient(180deg, rgba(46,123,181,.045) 1px, transparent 1px);
  background-size:auto, 72px 72px, 72px 72px;
  pointer-events:none;
}
.home-why-panel-line{
  position:absolute;
  left:26px;
  top:44px;
  bottom:44px;
  width:1px;
  background:linear-gradient(180deg, transparent, var(--why-line-color, #2E7BB5), transparent);
  opacity:.46;
  transform-origin:top center;
}
.home-why-argument{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:54px minmax(0, 1fr);
  gap:20px;
  align-items:start;
  padding:0 0 24px;
  border-bottom:1px solid rgba(31,61,95,.09);
}
.home-why-argument:last-child{
  padding-bottom:0;
  border-bottom:0;
}
.home-why-num{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  border:1px solid color-mix(in srgb, var(--why-line-color, #2E7BB5) 30%, transparent);
  color:var(--why-line-color, #2E7BB5);
  font-family:Sora, Inter, sans-serif;
  font-weight:800;
  font-size:.78rem;
  letter-spacing:.05em;
  box-shadow:0 12px 30px rgba(31,61,95,.055);
}
.home-why-argument h3{
  margin:2px 0 8px;
  color:var(--why-title-color, var(--modu-project-blue));
  font-family:Sora, Inter, sans-serif;
  font-size:1.06rem;
  line-height:1.18;
  letter-spacing:-.035em;
}
.home-why-argument p{
  margin:0;
  color:var(--why-text-color, #667789);
  font-size:.96rem;
  line-height:1.55;
}
.home-why.is-animated .home-why-argument{
  opacity:0;
  transform:translateY(14px);
  transition:opacity .65s ease, transform .65s ease;
  transition-delay:calc(var(--why-index, 0) * var(--why-arg-delay, 100ms));
}
.home-why.is-animated .home-why-panel.is-visible .home-why-argument,
.home-why.is-animated .home-why-panel.reveal-visible .home-why-argument,
.home-why.is-animated .home-why-panel.visible .home-why-argument{
  opacity:1;
  transform:translateY(0);
}
.home-why.has-line-motion .home-why-panel-line{
  transform:scaleY(0);
  transition:transform .9s ease .18s;
}
.home-why.has-line-motion .home-why-panel.is-visible .home-why-panel-line,
.home-why.has-line-motion .home-why-panel.reveal-visible .home-why-panel-line,
.home-why.has-line-motion .home-why-panel.visible .home-why-panel-line{
  transform:scaleY(1);
}
@media (min-width:1181px) and (max-width:1440px){
  .home-why-wrap{
    grid-template-columns:minmax(0, 640px) minmax(360px, 500px);
    gap:min(var(--why-gap, 104px), 70px);
  }
  .home-why h2{font-size:clamp(3rem, 5vw, 5.3rem);}
  .home-why-copy{font-size:1rem; max-width:600px;}
  .home-why-panel{padding:38px 34px 38px 44px; border-radius:30px;}
}
@media (max-width:1180px){
  .home-why-wrap{
    grid-template-columns:1fr;
    gap:54px;
  }
  .home-why-left,
  .home-why-panel{transform:none;}
  .home-why-copy{max-width:780px;}
  .home-why-panel{
    max-width:780px;
    width:100%;
  }
}
@media (max-width:768px){
  .home-why{
    padding:72px 0 78px;
  }
  .home-why:before,
  .home-why:after{display:none;}
  .home-why-wrap{
    width:calc(100% - 40px);
    gap:34px;
  }
  .home-why-eyebrow{
    justify-content:center;
    text-align:center;
    font-size:.68rem;
    gap:10px;
    margin-bottom:18px;
  }
  .home-why.has-eyebrow-lines .home-why-eyebrow:before,
  .home-why.has-eyebrow-lines .home-why-eyebrow:after{width:24px;}
  .home-why h2{
    text-align:center;
    font-size:clamp(2.55rem, 11.5vw, 4.1rem);
    letter-spacing:-.07em;
    line-height:.96;
  }
  .home-why-copy{
    margin-top:24px;
    text-align:left;
    font-size:.98rem;
    line-height:1.65;
  }
  .home-why-cta{
    margin-top:30px;
  }
  .home-why-panel{
    padding:28px 22px;
    border-radius:26px;
  }
  .home-why-panel-line{display:none;}
  .home-why-argument{
    grid-template-columns:42px 1fr;
    gap:14px;
    padding-bottom:20px;
  }
  .home-why-num{
    width:34px;
    height:34px;
    font-size:.7rem;
  }
  .home-why-argument h3{
    font-size:1rem;
    margin-top:0;
  }
  .home-why-argument p{
    font-size:.92rem;
  }
}


/* MODU v0.7.11 — Final editorial footer / cierre premium editable completo */
.site-footer-final{
  /* MODU v0.7.94 — canonical Closing/Footer tokens; no ACF visual/layout overrides. */
  --footer-bg-start:var(--modu-project-blue);
  --footer-bg-end:var(--modu-project-blue);
  --footer-legal-bg:var(--modu-project-blue);
  --footer-accent:#8BC5F1;
  --footer-max-width:1480px;
  --footer-padding-top:112px;
  --footer-padding-bottom:92px;
  --footer-gap:72px;
  --footer-nav-width:420px;
  position:relative;
  overflow:hidden;
  padding:0;
  background:
    radial-gradient(circle at 86% 18%, rgba(46,123,181,.16), transparent 32%),
    linear-gradient(180deg, var(--footer-bg-start,var(--modu-project-blue)) 0%, color-mix(in srgb, var(--footer-bg-end,var(--modu-project-blue)) 78%, black) 100%);
  color:#fff;
}
.site-footer-final:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.10;
  background-image:
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(to bottom,#000 0%,#000 84%,transparent 100%);
}
.site-footer-final:after{
  content:"";
  position:absolute;
  inset:auto 6% 16% auto;
  width:34vw;
  height:34vw;
  max-width:520px;
  max-height:520px;
  border-radius:50%;
  background:radial-gradient(circle, color-mix(in srgb, var(--footer-accent,#8BC5F1) 8%, transparent), transparent 68%);
  filter:blur(8px);
  pointer-events:none;
}
.footer-final-inner{
  width:min(var(--footer-max-width,1480px), calc(100% - 10vw));
  margin:0 auto;
  position:relative;
  z-index:1;
}
.footer-final-top{
  display:grid;
  grid-template-columns:minmax(0, 1.12fr) minmax(360px, .62fr);
  gap:clamp(42px, 5.2vw, var(--footer-gap,82px));
  align-items:start;
  padding:var(--footer-padding-top,112px) 0 var(--footer-padding-bottom,92px);
}
.footer-eyebrow{
  display:flex;
  align-items:center;
  gap:15px;
  margin:0 0 28px;
  color:var(--footer-accent,#8BC5F1);
  font-family:Sora,Inter,sans-serif;
  font-size:12px;
  font-weight:900;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.footer-eyebrow:before,
.footer-eyebrow:after{
  content:"";
  width:42px;
  height:1px;
  background:color-mix(in srgb, var(--footer-accent,#8BC5F1) 60%, transparent);
}
.footer-final-claim{
  margin:0;
  max-width:760px;
  color:#fff;
  font-family:Sora,Inter,sans-serif;
  font-size:clamp(48px, 5vw, 76px);
  line-height:.98;
  letter-spacing:-.065em;
}
.footer-final-claim span{ color:var(--footer-accent,#8BC5F1); }
.footer-final-description{
  margin:28px 0 0;
  max-width:650px;
  color:rgba(255,255,255,.76);
  font-size:clamp(16px, 1.12vw, 18px);
  line-height:1.7;
}
.footer-final-cta{
  margin-top:34px;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:18px;
}
.footer-final-cta .footer-main-button{
  width:auto;
  min-width:280px;
  background:#fff;
  color:var(--modu-project-blue);
  box-shadow:0 22px 50px rgba(0,0,0,.24);
}
.footer-final-cta .footer-main-button:hover{
  transform:translateY(-2px);
  box-shadow:0 28px 58px rgba(0,0,0,.28);
}
.footer-mail-link-integrated{
  color:rgba(255,255,255,.82);
  text-decoration:none;
  font-family:Sora,Inter,sans-serif;
  font-size:15px;
  font-weight:800;
  border-bottom:1px solid rgba(139,197,241,.45);
  padding-bottom:6px;
  transition:color .22s ease, border-color .22s ease, transform .22s ease;
}
.footer-mail-link-integrated:hover{
  color:var(--footer-accent,#8BC5F1);
  border-color:rgba(139,197,241,.85);
  transform:translateY(-1px);
}
.footer-trust-line{
  margin:24px 0 0;
  color:rgba(255,255,255,.58);
  font-size:14px;
  letter-spacing:.01em;
}
.footer-final-nav{
  display:block;
  width:100%;
  max-width:var(--footer-nav-width,420px);
  justify-self:end;
  align-self:start;
  padding-top:10px;
}
.footer-link-group{
  min-width:0;
}
.footer-link-group-menu{
  position:relative;
  padding-left:20px;
}
.footer-link-group-menu:before{
  content:"";
  position:absolute;
  left:0;
  top:2px;
  bottom:2px;
  width:1px;
  background:linear-gradient(180deg, rgba(139,197,241,.58) 0%, rgba(139,197,241,.18) 100%);
}
.footer-link-group h3{
  margin:0 0 22px;
  color:#fff;
  font-family:Sora,Inter,sans-serif;
  font-size:16px;
  font-weight:900;
  letter-spacing:-.015em;
}
.footer-editorial-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:0;
}
.footer-editorial-list li{
  display:grid;
  grid-template-columns:40px 1fr;
  align-items:center;
  gap:14px;
  min-height:56px;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.footer-editorial-list li:first-child{
  border-top:1px solid rgba(255,255,255,.10);
}
.footer-link-index{
  color:rgba(139,197,241,.78);
  font-family:Sora,Inter,sans-serif;
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
}
.footer-editorial-list a{
  position:relative;
  display:block;
  padding:16px 28px 16px 0;
  color:rgba(255,255,255,.78);
  text-decoration:none;
  font-size:16px;
  line-height:1.35;
  transition:color .22s ease, transform .22s ease;
}
.footer-editorial-list a:after{
  content:"→";
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
  color:rgba(139,197,241,.76);
  opacity:.74;
  transition:transform .22s ease, opacity .22s ease;
}
.footer-editorial-list a:hover{
  color:#fff;
  transform:translateX(6px);
}
.footer-editorial-list a:hover:after{
  transform:translate(4px,-50%);
  opacity:1;
}
.footer-chip-cloud{
  display:flex;
  flex-wrap:wrap;
  gap:14px 12px;
  padding-top:4px;
}
.footer-chip{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:11px 15px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.82);
  text-decoration:none;
  font-size:14.4px;
  line-height:1.3;
  transition:transform .22s ease, border-color .22s ease, background .22s ease, color .22s ease;
}
.footer-chip:hover{
  transform:translateY(-2px);
  border-color:rgba(139,197,241,.42);
  background:color-mix(in srgb, var(--footer-accent,#8BC5F1) 8%, transparent);
  color:#fff;
}
.footer-legal-strip{
  position:relative;
  z-index:2;
  background:color-mix(in srgb, var(--footer-legal-bg,var(--modu-project-blue)) 88%, black);
  border-top:1px solid rgba(255,255,255,.10);
}
.footer-legal-inner{
  width:min(var(--footer-max-width,1480px), calc(100% - 10vw));
  min-height:78px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  color:rgba(255,255,255,.57);
  font-size:13.5px;
  line-height:1.4;
}
.footer-legal-nav{
  display:flex;
  align-items:center;
}
.footer-legal-menu{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:25px;
  list-style:none;
  margin:0;
  padding:0;
}
.footer-legal-menu a{
  color:rgba(255,255,255,.65);
  text-decoration:none;
  font-size:13.5px;
}
.footer-legal-menu a:hover{color:#fff;}

@media(max-width:1280px){
  .footer-final-top{
    grid-template-columns:minmax(0,1.06fr) minmax(330px,.7fr);
    gap:52px;
  }
  .footer-final-claim{
    max-width:680px;
    font-size:clamp(44px, 4.6vw, 66px);
  }
  .footer-final-nav{
    max-width:min(var(--footer-nav-width,420px), 380px);
  }
}
@media(max-width:940px){
  .footer-final-inner,
  .footer-legal-inner{
    width:calc(100% - 44px);
  }
  .footer-final-top{
    grid-template-columns:1fr;
    gap:44px;
    padding:74px 0 60px;
  }
  .footer-final-claim{
    font-size:clamp(40px, 10vw, 58px);
  }
  .footer-final-nav{
    max-width:none;
    width:100%;
    padding-top:0;
  }
  .footer-link-group-menu{
    padding-left:0;
  }
  .footer-link-group-menu:before{
    display:none;
  }
  .footer-final-cta .button{
    width:auto;
  }
  .footer-legal-inner{
    min-height:96px;
    display:grid;
    justify-content:stretch;
    align-content:center;
    gap:14px;
    padding:18px 0;
  }
}
@media(max-width:680px){
  .footer-final-inner,
  .footer-legal-inner{
    width:calc(100% - 36px);
  }
  .footer-eyebrow{
    gap:10px;
    letter-spacing:.16em;
  }
  .footer-eyebrow:before,
  .footer-eyebrow:after{
    width:28px;
  }
  .footer-final-claim{
    font-size:42px;
    letter-spacing:-.058em;
  }
  .footer-final-description{
    font-size:15.4px;
  }
  .footer-final-cta{
    display:grid;
    align-items:start;
  }
  .footer-final-cta .footer-main-button{
    width:100%;
    min-width:0;
  }
  .footer-editorial-list li{
    grid-template-columns:34px 1fr;
    min-height:52px;
    gap:12px;
  }
  .footer-editorial-list a{
    font-size:15px;
    padding-top:14px;
    padding-bottom:14px;
  }
  .footer-chip-cloud{
    gap:10px;
  }
  .footer-chip{
    min-height:40px;
    padding:10px 13px;
    font-size:13.9px;
  }
  .footer-legal-menu{
    gap:16px;
  }
}


/* MODU v0.7.14 — Página MODU FLOW editable */
.modu-flow-page{
  /* v0.7.97 — Page MODU FLOW Design System: structural values are no longer editable in ACF. */
  --flow-bg:#F7F4EF;
  --flow-alt-bg:#ffffff;
  --flow-dark:var(--modu-project-blue);
  --flow-accent:var(--modu-brand-blue);
  --flow-light-accent:#8BC5F1;
  --flow-max-width:1480px;
  background:var(--flow-bg);
  color:var(--modu-project-blue);
  overflow:hidden;
}
.flow-wrap{
  width:min(var(--flow-max-width), calc(100% - 10vw));
  margin:0 auto;
}
.flow-section{
  position:relative;
  padding:clamp(82px,7.2vw,112px) 0;
}
.flow-blue{color:var(--flow-accent);}
.flow-eyebrow{
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 0 20px;
  color:var(--flow-accent);
  font-family:Sora,Inter,sans-serif;
  font-weight:900;
  font-size:.74rem;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.flow-eyebrow:before,.flow-eyebrow:after{content:"";width:38px;height:1px;background:rgba(46,123,181,.42);}
.flow-copy h1,.flow-section-head h2,.flow-copy h2,.flow-page-cta h2{
  margin:0;
  font-family:Sora,Inter,sans-serif;
  letter-spacing:-.062em;
  line-height:1;
  color:var(--modu-project-blue);
}
.flow-copy h1{font-size:clamp(3.15rem,5.8vw,6.6rem);max-width:1010px;}
.flow-copy h2,.flow-section-head h2,.flow-page-cta h2{font-size:clamp(2.65rem,4.65vw,5.35rem);max-width:1060px;}
.flow-lead,.flow-copy p,.flow-section-head p,.flow-page-cta p{
  color:#536879;
  font-size:clamp(1rem,1.1vw,1.14rem);
  line-height:1.68;
  max-width:740px;
}
.flow-lead{margin:24px 0 0;}
.flow-remate{font-weight:850;color:var(--modu-project-blue)!important;margin-top:20px!important;}
.flow-remate:before{content:"";display:inline-block;width:30px;height:1px;background:var(--flow-accent);vertical-align:middle;margin-right:12px;}
.flow-intro{
  padding-top:clamp(118px,11.4vw,158px);
  padding-bottom:clamp(78px,7vw,104px);
  background:linear-gradient(180deg,#fff 0%,var(--flow-bg) 100%);
}
.flow-intro-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,400px);
  gap:clamp(40px,6vw,92px);
  align-items:center;
}
.flow-intro-card{
  position:relative;
  padding:34px;
  border-radius:28px;
  background:var(--modu-project-blue);
  color:#fff;
  box-shadow:0 28px 75px rgba(31,61,95,.14);
  overflow:hidden;
}
.flow-intro-card:before{content:"";position:absolute;inset:-35% -25% auto auto;width:75%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(139,197,241,.22),transparent 65%);}
.flow-card-kicker{display:block;color:var(--flow-light-accent);font-family:Sora,Inter,sans-serif;font-size:.72rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase;margin-bottom:36px;}
.flow-intro-card strong{position:relative;display:block;font-family:Sora,Inter,sans-serif;font-size:clamp(1.55rem,2vw,2.35rem);line-height:1.08;letter-spacing:-.047em;}
.flow-noise{background:var(--flow-alt-bg);padding-top:clamp(84px,7vw,108px);padding-bottom:clamp(88px,7.5vw,118px);}
.flow-noise-grid{display:grid;grid-template-columns:minmax(0,.93fr) minmax(500px,1.07fr);gap:clamp(44px,6vw,88px);align-items:center;}
.flow-noise-map{
  position:relative;
  min-height:500px;
  border-radius:34px;
  background:linear-gradient(145deg,#F7F4EF 0%,#fff 58%,#EEF6FB 100%);
  border:1px solid rgba(31,61,95,.08);
  box-shadow:0 30px 80px rgba(31,61,95,.08);
  overflow:hidden;
  isolation:isolate;
}
.flow-noise-map:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(31,61,95,.05) 1px,transparent 1px),linear-gradient(180deg,rgba(31,61,95,.04) 1px,transparent 1px);background-size:54px 54px;mask-image:radial-gradient(circle at center,#000 0%,transparent 79%);}
.flow-noise-map:after{content:"";position:absolute;left:50%;top:50%;width:72%;height:1px;background:linear-gradient(90deg,transparent,rgba(46,123,181,.34),transparent);transform:translate(-50%,-50%) scaleX(.18);transform-origin:center;opacity:0;z-index:1;}
.flow-noise-map.visible:after,.flow-noise-map.is-visible:after{animation:flowLineDraw 1.1s .65s ease forwards;}
.flow-map-orbit{position:absolute;left:50%;top:50%;border:1px solid rgba(46,123,181,.14);border-radius:50%;transform:translate(-50%,-50%) scale(.72);opacity:0;z-index:1;}
.orbit-1{width:58%;aspect-ratio:1;}.orbit-2{width:78%;aspect-ratio:1;}
.flow-noise-map.visible .flow-map-orbit,.flow-noise-map.is-visible .flow-map-orbit{animation:flowOrbitIn .9s .35s ease forwards;}
.flow-map-route{position:absolute;left:50%;top:50%;width:62%;height:1px;background:linear-gradient(90deg,transparent,rgba(46,123,181,.22),transparent);transform-origin:center;opacity:0;z-index:1;}
.route-a{transform:translate(-50%,-50%) rotate(-28deg) scaleX(.1);}.route-b{transform:translate(-50%,-50%) rotate(22deg) scaleX(.1);}.route-c{transform:translate(-50%,-50%) rotate(78deg) scaleX(.1);}
.flow-noise-map.visible .flow-map-route,.flow-noise-map.is-visible .flow-map-route{animation:flowRouteIn 1s .75s ease forwards;}
.flow-map-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:172px;height:172px;border-radius:50%;display:grid;place-items:center;background:var(--modu-project-blue);color:#fff;box-shadow:0 24px 70px rgba(31,61,95,.24);z-index:4;}
.flow-map-core:before{content:"";position:absolute;inset:-8px;border-radius:50%;border:1px solid rgba(139,197,241,.45);opacity:.68;}
.flow-map-core span{font-family:Sora,Inter,sans-serif;font-weight:900;letter-spacing:-.03em;}
.flow-tag{position:absolute;z-index:3;display:inline-flex;align-items:center;padding:9px 13px;border-radius:999px;background:rgba(255,255,255,.88);border:1px solid rgba(46,123,181,.18);color:var(--modu-project-blue);font-size:.9rem;font-weight:750;box-shadow:0 16px 40px rgba(31,61,95,.08);opacity:0;transform:translate(var(--fx,0),var(--fy,0)) rotate(var(--fr,0deg)) scale(.96);}
.flow-noise-map.visible .flow-tag,.flow-noise-map.is-visible .flow-tag{animation:flowTagOrganize .9s cubic-bezier(.2,.9,.23,1) forwards;animation-delay:calc(.12s + (var(--i,0) * .065s));}
.tag-1{left:8%;top:11%;--i:1;--fx:72px;--fy:120px;--fr:-13deg}.tag-2{left:31%;top:10%;--i:2;--fx:-145px;--fy:60px;--fr:16deg}.tag-3{right:8%;top:14%;--i:3;--fx:-84px;--fy:120px;--fr:9deg}.tag-4{left:10%;top:38%;--i:4;--fx:170px;--fy:-72px;--fr:18deg}.tag-5{right:12%;top:37%;--i:5;--fx:-170px;--fy:-35px;--fr:-17deg}.tag-6{left:8%;bottom:31%;--i:6;--fx:125px;--fy:80px;--fr:-10deg}.tag-7{right:8%;bottom:32%;--i:7;--fx:-150px;--fy:95px;--fr:15deg}.tag-8{left:24%;bottom:12%;--i:8;--fx:48px;--fy:-126px;--fr:-16deg}.tag-9{right:22%;bottom:12%;--i:9;--fx:-64px;--fy:-126px;--fr:12deg}.tag-10{left:42%;top:27%;--i:10;--fx:0;--fy:115px;--fr:8deg}.tag-11{left:44%;bottom:28%;--i:11;--fx:0;--fy:-108px;--fr:-8deg}.tag-12{right:34%;top:50%;--i:12;--fx:-125px;--fy:0;--fr:17deg;}
.flow-map-caption{position:absolute;left:34px;right:34px;bottom:28px;margin:0;color:#2E7BB5;font-family:Sora,Inter,sans-serif;font-weight:850;font-size:.95rem;letter-spacing:-.02em;z-index:4;opacity:0;transform:translateY(10px);}
.flow-noise-map.visible .flow-map-caption,.flow-noise-map.is-visible .flow-map-caption{animation:flowCaptionIn .7s 1.25s ease forwards;}
@keyframes flowTagOrganize{to{opacity:1;transform:translate(0,0) rotate(0deg) scale(1);}}
@keyframes flowOrbitIn{to{opacity:1;transform:translate(-50%,-50%) scale(1);}}
@keyframes flowRouteIn{to{opacity:1;transform:translate(-50%,-50%) rotate(var(--r,0deg)) scaleX(1);}}
.route-a{--r:-28deg}.route-b{--r:22deg}.route-c{--r:78deg}
@keyframes flowLineDraw{to{opacity:1;transform:translate(-50%,-50%) scaleX(1);}}
@keyframes flowCaptionIn{to{opacity:1;transform:translateY(0);}}
.flow-section-head{max-width:990px;margin:0 0 46px;}
.flow-steps{background:var(--flow-bg);padding-top:clamp(86px,7vw,110px);padding-bottom:clamp(78px,6.8vw,104px);}
.flow-timeline{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid rgba(31,61,95,.14);border-bottom:1px solid rgba(31,61,95,.14);}
.flow-timeline:before{content:"";position:absolute;left:0;right:0;top:-1px;height:2px;background:linear-gradient(90deg,var(--flow-accent),rgba(139,197,241,.34),transparent);transform:scaleX(.22);transform-origin:left;opacity:.8;}
.flow-step{position:relative;padding:32px 26px 30px;border-right:1px solid rgba(31,61,95,.11);min-height:386px;background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,0));}
.flow-step:last-child{border-right:0;}
.flow-step-num{display:block;color:var(--flow-accent);font-family:Sora,Inter,sans-serif;font-size:.8rem;font-weight:900;letter-spacing:.17em;margin-bottom:34px;}
.flow-step h3{margin:0;color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:1.42rem;letter-spacing:-.04em;}
.flow-step h4{margin:16px 0 0;color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:1rem;line-height:1.33;}
.flow-step p{margin:14px 0 0;color:#536879;line-height:1.58;font-size:.96rem;}
.flow-step small{display:block;margin-top:20px;color:#2E7BB5;font-weight:850;line-height:1.42;}
.flow-critical{margin:28px 0 0;padding:20px 24px;border-radius:20px;background:#fff;border:1px solid rgba(46,123,181,.20);color:var(--modu-project-blue);font-weight:750;line-height:1.55;box-shadow:0 16px 42px rgba(31,61,95,.045);}
.flow-critical span:before{content:"Puntos críticos · ";color:var(--flow-accent);font-family:Sora,Inter,sans-serif;font-weight:900;}
.flow-steps-remate{margin:22px 0 0;color:#536879;max-width:860px;font-size:1rem;line-height:1.63;}
.flow-profiles{background:var(--flow-alt-bg);padding-top:clamp(82px,7vw,108px);padding-bottom:clamp(82px,7vw,108px);}
.flow-profile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.flow-profile-card{padding:28px 24px 30px;border-radius:26px;background:#fff;border:1px solid rgba(31,61,95,.08);box-shadow:0 18px 50px rgba(31,61,95,.055);transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;}
.flow-profile-card:hover{transform:translateY(-4px);border-color:rgba(46,123,181,.26);box-shadow:0 24px 64px rgba(31,61,95,.08);}
.flow-profile-card span{color:var(--flow-accent);font-family:Sora,Inter,sans-serif;font-weight:900;font-size:.8rem;letter-spacing:.16em;}
.flow-profile-card h3{margin:30px 0 0;font-family:Sora,Inter,sans-serif;font-size:1.22rem;line-height:1.15;letter-spacing:-.04em;color:var(--modu-project-blue);}
.flow-profile-card p{margin:14px 0 0;color:#536879;font-size:.96rem;line-height:1.58;}
.flow-page-cta{background:var(--flow-bg);padding-top:clamp(76px,6.5vw,104px);padding-bottom:clamp(86px,8vw,126px);}
.flow-cta-box{position:relative;padding:clamp(44px,4.8vw,70px);border-radius:34px;background:var(--flow-dark);color:#fff;overflow:hidden;box-shadow:0 34px 90px rgba(31,61,95,.16);}
.flow-cta-box:before{content:"";position:absolute;right:-10%;top:-35%;width:48%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(139,197,241,.18),transparent 66%);}
.flow-cta-box .flow-eyebrow,.flow-cta-box .flow-eyebrow span{color:var(--flow-light-accent);}
.flow-cta-box .flow-eyebrow:before,.flow-cta-box .flow-eyebrow:after{background:rgba(139,197,241,.42);}
.flow-cta-box h2,.flow-cta-box p,.flow-cta-actions,.flow-cta-box small{position:relative;z-index:1;}
.flow-cta-box h2{color:#fff;max-width:980px;}
.flow-cta-box p{color:rgba(255,255,255,.76);max-width:760px;margin:24px 0 0;}
.flow-cta-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 24px;margin-top:32px;}
.flow-cta-actions .button{background:#fff;color:var(--modu-project-blue);}
.flow-cta-mail{color:rgba(255,255,255,.85);font-family:Sora,Inter,sans-serif;font-weight:800;text-decoration:none;border-bottom:1px solid rgba(139,197,241,.5);padding-bottom:6px;}
.flow-cta-mail:hover{color:var(--flow-light-accent);}
.flow-cta-box small{display:block;margin-top:22px;color:rgba(255,255,255,.58);font-size:.92rem;}
.modu-flow-page.flow-animate .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease, transform .7s ease;}
.modu-flow-page.flow-animate .reveal.visible,
.modu-flow-page.flow-animate .reveal.is-visible{opacity:1;transform:translateY(0);}
@media(max-width:1180px){
  .flow-intro-grid,.flow-noise-grid{grid-template-columns:1fr;}
  .flow-noise-map{min-height:470px;max-width:820px;width:100%;}
  .flow-timeline,.flow-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .flow-step:nth-child(2){border-right:0;}
  .flow-step:nth-child(1),.flow-step:nth-child(2){border-bottom:1px solid rgba(31,61,95,.11);}
}
@media(max-width:760px){
  .flow-wrap{width:calc(100% - 36px);}
  .flow-section{padding:68px 0;}
  .flow-intro{padding-top:104px;padding-bottom:68px;}
  .flow-copy h1,.flow-copy h2,.flow-section-head h2,.flow-page-cta h2{font-size:clamp(2.45rem,11vw,3.65rem);letter-spacing:-.056em;line-height:1.02;}
  .flow-lead,.flow-copy p,.flow-section-head p,.flow-page-cta p{font-size:15.5px;line-height:1.62;}
  .flow-eyebrow{gap:10px;letter-spacing:.16em;margin-bottom:18px;}
  .flow-eyebrow:before,.flow-eyebrow:after{width:25px;}
  .flow-intro-card{padding:26px;border-radius:24px;}
  .flow-card-kicker{margin-bottom:28px;}
  .flow-noise-map{min-height:auto;border-radius:26px;padding:118px 18px 76px;display:block;}
  .flow-map-core{width:130px;height:130px;top:30px;transform:translateX(-50%);}
  .flow-map-orbit,.flow-map-route,.flow-noise-map:after{display:none;}
  .flow-tags{position:relative;display:flex;flex-wrap:wrap;justify-content:center;gap:9px;}
  .flow-tag{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;font-size:.82rem;padding:8px 10px;transform:translateY(10px) scale(.96);}
  .flow-map-caption{left:20px;right:20px;bottom:24px;text-align:center;font-size:.88rem;}
  .flow-timeline,.flow-profile-grid{grid-template-columns:1fr;}
  .flow-step{border-right:0;border-bottom:1px solid rgba(31,61,95,.11);min-height:0;padding:28px 0;}
  .flow-step:last-child{border-bottom:0;}
  .flow-step-num{margin-bottom:20px;}
  .flow-critical{padding:18px 18px;border-radius:18px;}
  .flow-cta-box{padding:34px 24px;border-radius:26px;}
  .flow-cta-actions .button{width:100%;}
}


/* MODU v0.7.107 — Página Qué hacemos · hub editorial de servicios */
.qh-page{
  --qh-bg:#F7F4EF;
  --qh-soft:#EEF3F6;
  --qh-hero-bg:var(--modu-project-blue);
  --qh-accent:var(--modu-brand-blue);
  --qh-max-width:1480px;
  --qh-section-space:clamp(82px,8vw,132px);
  background:var(--qh-bg);
  color:var(--modu-project-blue);
}
.qh-wrap{width:min(var(--qh-max-width),calc(100% - 10vw));margin:0 auto;}
.qh-eyebrow{display:flex;align-items:center;gap:14px;margin:0 0 24px;color:var(--qh-accent);font-family:Sora,Inter,sans-serif;font-size:12px;font-weight:900;letter-spacing:.22em;text-transform:uppercase;}
.qh-eyebrow:before,.qh-eyebrow:after{content:"";width:42px;height:1px;background:color-mix(in srgb,var(--qh-accent) 65%,transparent);}
.qh-eyebrow-light{color:#8BC5F1;}.qh-eyebrow-light:before,.qh-eyebrow-light:after{background:rgba(139,197,241,.62);}
.qh-richtext p{margin:0 0 18px;}.qh-richtext p:last-child{margin-bottom:0;}

.qh-hero{position:relative;overflow:hidden;min-height:clamp(560px,74vh,790px);display:flex;align-items:center;padding:136px 0 96px;background:radial-gradient(circle at 86% 18%,color-mix(in srgb,var(--qh-accent) 24%,transparent),transparent 36%),linear-gradient(180deg,var(--qh-hero-bg),color-mix(in srgb,var(--qh-hero-bg) 82%,#000));color:#fff;}
.qh-hero:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.12;background-image:linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(180deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:72px 72px;}
.qh-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.58fr);gap:clamp(48px,6vw,96px);align-items:end;}
.qh-hero h1{max-width:1000px;margin:0;color:#fff;font-family:Sora,Inter,sans-serif;font-size:clamp(54px,6.85vw,108px);line-height:.92;letter-spacing:-.068em;text-wrap:balance;}
.qh-hero-lead{max-width:820px;margin:34px 0 0;color:rgba(255,255,255,.79);font-size:clamp(19px,1.6vw,26px);line-height:1.38;letter-spacing:-.025em;}
.qh-hero-panel{border-left:1px solid rgba(139,197,241,.42);padding-left:28px;margin-bottom:8px;}
.qh-hero-panel p{margin:0;color:rgba(255,255,255,.74);font-size:16.5px;line-height:1.72;}
.qh-link-light,.qh-inline-link{display:inline-flex;align-items:center;gap:9px;font-family:Sora,Inter,sans-serif;font-weight:850;text-decoration:none;transition:opacity .2s ease;}
.qh-link-light{margin-top:28px;color:#fff;border-bottom:1px solid rgba(139,197,241,.55);padding-bottom:7px;}.qh-link-light span{color:#8BC5F1;}
.qh-link-light span,.qh-inline-link span{transition:transform .22s ease;}.qh-link-light:hover span,.qh-inline-link:hover span{transform:translateX(4px);}

.qh-intro{padding:var(--qh-section-space) 0;background:var(--qh-bg);}
.qh-intro-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.62fr);gap:clamp(58px,8vw,124px);align-items:end;}
.qh-intro h2,.qh-section-head h2,.qh-projects-copy h2,.qh-briefing h2{margin:0;color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:clamp(43px,5.25vw,84px);line-height:.96;letter-spacing:-.062em;text-wrap:balance;}
.qh-intro .qh-richtext{max-width:800px;margin-top:30px;color:#657789;font-size:clamp(16px,1.13vw,19px);line-height:1.72;}
.qh-intro-statement{border-left:1px solid rgba(31,61,95,.17);padding:8px 0 8px 30px;}
.qh-intro-statement p{margin:0;color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:clamp(26px,2.3vw,39px);font-weight:800;line-height:1.08;letter-spacing:-.045em;}
.qh-intro-statement span{display:block;margin-top:18px;color:var(--qh-accent);font-family:Sora,Inter,sans-serif;font-size:14px;font-weight:850;letter-spacing:.04em;}

.qh-services{background:#fff;}
.qh-service{padding:var(--qh-section-space) 0;background:#FBFAF7;}
.qh-service-2{background:var(--qh-soft);}.qh-service-3{background:var(--qh-bg);}
.qh-service-dark{background:var(--modu-project-blue);color:#fff;}
.qh-service-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(54px,7vw,112px);align-items:center;}
.qh-service-reverse .qh-service-media{order:2;}.qh-service-reverse .qh-service-copy{order:1;}
.qh-service-media{margin:0;min-height:580px;border-radius:30px;overflow:hidden;background:#DDE3E6;box-shadow:0 24px 58px rgba(31,61,95,.10);}
.qh-service-media img{display:block;width:100%;height:100%;min-height:580px;object-fit:cover;object-position:center;}
.qh-service-copy{max-width:690px;}
.qh-service-meta{display:flex;align-items:center;gap:20px;margin-bottom:25px;}.qh-service-meta>span{color:var(--qh-accent);font-family:Sora,Inter,sans-serif;font-size:14px;font-weight:900;letter-spacing:.16em;}.qh-service-meta .qh-eyebrow{margin:0;}.qh-service-meta .qh-eyebrow:before{display:none;}
.qh-service h2{margin:0;color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:clamp(38px,4.3vw,70px);line-height:.98;letter-spacing:-.058em;text-wrap:balance;}
.qh-service-text{margin-top:27px;color:#637587;font-size:clamp(16px,1.06vw,18.5px);line-height:1.7;}
.qh-capabilities{display:flex;flex-wrap:wrap;gap:9px;margin:30px 0 0;padding:0;list-style:none;}.qh-capabilities li{padding:9px 13px;border:1px solid rgba(31,61,95,.14);border-radius:999px;color:#43576A;background:rgba(255,255,255,.55);font-size:13.5px;line-height:1.2;}
.qh-service-statement{margin:30px 0 0;padding-top:25px;border-top:1px solid rgba(31,61,95,.13);color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:clamp(19px,1.55vw,25px);font-weight:760;line-height:1.28;letter-spacing:-.03em;}
.qh-inline-link{margin-top:26px;color:var(--modu-project-blue);border-bottom:1px solid rgba(31,61,95,.26);padding-bottom:6px;}.qh-inline-link span{color:var(--qh-accent);}
.qh-service-dark .qh-service-copy h2,.qh-service-dark .qh-service-statement,.qh-service-dark .qh-inline-link{color:#fff;}.qh-service-dark .qh-service-text{color:rgba(255,255,255,.72);}.qh-service-dark .qh-capabilities li{color:rgba(255,255,255,.86);border-color:rgba(255,255,255,.17);background:rgba(255,255,255,.06);}.qh-service-dark .qh-service-statement{border-color:rgba(255,255,255,.16);}.qh-service-dark .qh-eyebrow{color:#8BC5F1;}.qh-service-dark .qh-eyebrow:after{background:rgba(139,197,241,.62);}.qh-service-dark .qh-inline-link{border-color:rgba(139,197,241,.42);}

.qh-multipoint{padding:var(--qh-section-space) 0;background:#F4F1EB;}
.qh-section-head{display:grid;grid-template-columns:minmax(0,.95fr) minmax(340px,.55fr);column-gap:clamp(52px,7vw,112px);align-items:end;}.qh-section-head .qh-eyebrow{grid-column:1/-1;}.qh-section-head h2{max-width:910px;}.qh-section-head>p:last-child{margin:0;color:#667789;font-size:17px;line-height:1.72;}
.qh-multipoint-steps{display:grid;grid-template-columns:repeat(5,1fr);margin:64px 0 0;padding:0;list-style:none;border-top:1px solid rgba(31,61,95,.15);border-bottom:1px solid rgba(31,61,95,.15);}
.qh-multipoint-steps li{position:relative;min-height:210px;padding:25px 22px 30px;border-right:1px solid rgba(31,61,95,.12);}.qh-multipoint-steps li:last-child{border-right:0;}.qh-multipoint-steps li>span{display:block;color:var(--qh-accent);font-family:Sora,Inter,sans-serif;font-size:12px;font-weight:900;letter-spacing:.15em;}.qh-multipoint-steps strong{display:block;margin-top:32px;color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:16px;letter-spacing:.04em;}.qh-multipoint-steps p{margin:12px 0 0;color:#68798A;font-size:14.5px;line-height:1.55;}
.qh-flow-bridge{margin-top:34px;display:flex;justify-content:flex-end;align-items:center;gap:24px;}.qh-flow-bridge p{margin:0;color:#667789;font-size:15px;}.qh-flow-bridge .qh-inline-link{margin-top:0;}

.qh-projects-bridge{padding:var(--qh-section-space) 0;background:#fff;overflow:hidden;}
.qh-projects-grid{display:grid;grid-template-columns:minmax(360px,.66fr) minmax(0,1.18fr);gap:clamp(58px,8vw,128px);align-items:center;}.qh-projects-copy>p:not(.qh-eyebrow){max-width:650px;margin:28px 0 0;color:#667789;font-size:17px;line-height:1.72;}.qh-projects-button{margin-top:32px;width:auto;}
.qh-projects-teasers{position:relative;min-height:580px;}.qh-projects-teaser{position:absolute;margin:0;overflow:hidden;border-radius:28px;box-shadow:0 24px 54px rgba(31,61,95,.14);}.qh-projects-teaser img{width:100%;height:100%;display:block;object-fit:cover;}.qh-projects-teaser-1{left:0;top:9%;width:49%;height:72%;z-index:2;}.qh-projects-teaser-2{right:0;top:0;width:45%;height:55%;z-index:1;}.qh-projects-teaser-3{right:5%;bottom:0;width:42%;height:39%;z-index:3;}

.qh-briefing{padding:var(--qh-section-space) 0;background:var(--qh-soft);}
.qh-briefing-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(380px,.68fr);gap:clamp(56px,8vw,128px);align-items:start;}.qh-briefing-detail{padding-top:46px;}.qh-briefing-detail .qh-richtext{color:#627587;font-size:17px;line-height:1.72;}.qh-briefing-statement{margin:28px 0 0;padding:25px 0 0;border-top:1px solid rgba(31,61,95,.15);color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:clamp(20px,1.7vw,28px);font-weight:780;line-height:1.28;letter-spacing:-.035em;}
.qh-briefing-cta{margin-top:30px;width:auto;}

@media(max-width:1100px){
  .qh-hero-grid,.qh-intro-grid,.qh-service-grid,.qh-section-head,.qh-projects-grid,.qh-briefing-grid{grid-template-columns:1fr;}
  .qh-hero-panel{max-width:760px;}.qh-intro-statement{max-width:720px;}.qh-service-reverse .qh-service-media,.qh-service-reverse .qh-service-copy{order:initial;}
  .qh-service-media{min-height:500px;}.qh-service-media img{min-height:500px;}
  .qh-section-head>p:last-child{max-width:760px;margin-top:28px;}.qh-multipoint-steps{grid-template-columns:repeat(2,1fr);}.qh-multipoint-steps li{border-bottom:1px solid rgba(31,61,95,.12);}.qh-multipoint-steps li:nth-child(2n){border-right:0;}.qh-multipoint-steps li:last-child{grid-column:1/-1;border-bottom:0;}
  .qh-projects-teasers{min-height:520px;}.qh-briefing-detail{padding-top:0;max-width:760px;}
}
@media(max-width:760px){
  .qh-wrap{width:calc(100% - 36px);}.qh-eyebrow{gap:10px;letter-spacing:.16em;}.qh-eyebrow:before,.qh-eyebrow:after{width:28px;}
  .qh-hero{min-height:auto;padding:118px 0 74px;}.qh-hero h1{font-size:clamp(44px,13vw,66px);line-height:.95;}.qh-hero-lead{font-size:18px;margin-top:26px;}.qh-hero-panel{padding-left:18px;}
  .qh-intro h2,.qh-section-head h2,.qh-projects-copy h2,.qh-briefing h2{font-size:clamp(39px,11.7vw,58px);}.qh-intro-statement{padding-left:20px;}
  .qh-service{padding:74px 0;}.qh-service-grid{display:flex;flex-direction:column;gap:34px;align-items:stretch;}.qh-service-copy{order:1!important;}.qh-service-media{order:2!important;min-height:0;aspect-ratio:6/5;border-radius:22px;}.qh-service-media img{min-height:0;height:100%;}.qh-service-meta{margin-bottom:20px;}.qh-service h2{font-size:clamp(37px,10.8vw,54px);}.qh-service-text{margin-top:23px;}.qh-capabilities{margin-top:25px;}.qh-service-statement{margin-top:26px;padding-top:22px;}.qh-inline-link{margin-top:23px;}
  .qh-section-head{display:block;}.qh-multipoint-steps{grid-template-columns:1fr;margin-top:44px;}.qh-multipoint-steps li,.qh-multipoint-steps li:nth-child(2n){min-height:0;border-right:0;border-bottom:1px solid rgba(31,61,95,.12);padding:22px 4px 24px;}.qh-multipoint-steps li:last-child{grid-column:auto;}.qh-multipoint-steps strong{margin-top:18px;}.qh-flow-bridge{align-items:flex-start;flex-direction:column;gap:4px;margin-top:28px;}
  .qh-projects-button,.qh-briefing-cta{width:100%;}.qh-projects-teasers{min-height:390px;margin-top:14px;}.qh-projects-teaser{border-radius:20px;}.qh-projects-teaser-1{width:58%;height:66%;}.qh-projects-teaser-2{width:48%;height:51%;}.qh-projects-teaser-3{width:47%;height:38%;right:3%;}
  .qh-briefing-detail .qh-richtext{font-size:16px;}
}

/* MODU v0.7.18 — coherencia azul + animación ordenada */
.modu-flow-page .flow-eyebrow{
  color:#2E7BB5;
  margin-bottom:22px;
}
.modu-flow-page .flow-eyebrow span{
  color:#2E7BB5;
}
.modu-flow-page .flow-eyebrow:before,
.modu-flow-page .flow-eyebrow:after{
  background:rgba(46,123,181,.55);
}
.modu-flow-page .flow-blue,
.modu-flow-page h1 .flow-blue,
.modu-flow-page h2 .flow-blue{
  color:#2E7BB5;
}
.modu-flow-page .flow-section{
  padding-top:clamp(76px,6.4vw,104px);
  padding-bottom:clamp(78px,6.8vw,108px);
}
.modu-flow-page .flow-intro{
  padding-top:clamp(114px,10.6vw,148px);
  padding-bottom:clamp(74px,6.4vw,96px);
}
.modu-flow-page .flow-noise,
.modu-flow-page .flow-profiles{
  padding-top:clamp(78px,6.5vw,104px);
  padding-bottom:clamp(80px,6.8vw,108px);
}
.modu-flow-page .flow-steps{
  padding-top:clamp(78px,6.3vw,102px);
  padding-bottom:clamp(72px,6.2vw,96px);
}
.modu-flow-page .flow-page-cta{
  padding-top:clamp(72px,6vw,96px);
  padding-bottom:clamp(84px,7.2vw,116px);
}
.modu-flow-page .flow-copy h1,
.modu-flow-page .flow-copy h2,
.modu-flow-page .flow-section-head h2,
.modu-flow-page .flow-page-cta h2{
  text-wrap:balance;
}
.modu-flow-page .flow-lead,
.modu-flow-page .flow-copy p,
.modu-flow-page .flow-section-head p,
.modu-flow-page .flow-page-cta p{
  margin-top:22px;
}
.modu-flow-page .flow-section-head{
  margin-bottom:38px;
}

/* Mapa DEL RUIDO AL CONTROL: de desorden a grupos claros */
.modu-flow-page .flow-noise-grid{
  grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr);
  gap:clamp(48px,6.2vw,90px);
}
.modu-flow-page .flow-noise-map{
  min-height:540px;
  border-radius:36px;
  background:
    radial-gradient(circle at 52% 48%, rgba(46,123,181,.12), transparent 35%),
    linear-gradient(145deg,#F7F4EF 0%,#fff 55%,#EAF4FB 100%);
  border:1px solid rgba(46,123,181,.14);
  box-shadow:0 34px 88px rgba(31,61,95,.10);
}
.modu-flow-page .flow-noise-map:before{
  opacity:.74;
  background-size:48px 48px;
  mask-image:radial-gradient(circle at center,#000 0%,transparent 83%);
}
.modu-flow-page .flow-map-stage-label{
  position:absolute;
  z-index:5;
  font-family:Sora,Inter,sans-serif;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(31,61,95,.48);
  opacity:0;
}
.modu-flow-page .stage-scattered{left:26px;top:22px;}
.modu-flow-page .stage-coordinated{right:26px;bottom:26px;color:#2E7BB5;}
.modu-flow-page .flow-noise-map.visible .flow-map-stage-label,
.modu-flow-page .flow-noise-map.is-visible .flow-map-stage-label{
  animation:flowStageIn .7s .15s ease forwards;
}
.modu-flow-page .flow-map-core{
  width:178px;
  height:178px;
  background:var(--modu-project-blue);
  box-shadow:0 26px 72px rgba(31,61,95,.24), 0 0 0 10px rgba(46,123,181,.06);
}
.modu-flow-page .flow-map-core span{
  text-align:center;
  color:#fff;
}
.modu-flow-page .flow-map-orbit{
  border-color:rgba(46,123,181,.18);
}
.modu-flow-page .orbit-1{width:50%;}
.modu-flow-page .orbit-2{width:72%;}
.modu-flow-page .flow-map-route{
  width:64%;
  background:linear-gradient(90deg,transparent,rgba(46,123,181,.30),transparent);
}
.modu-flow-page .route-d{transform:translate(-50%,-50%) rotate(118deg) scaleX(.1);--r:118deg;}
.modu-flow-page .flow-group-label{
  position:absolute;
  z-index:3;
  padding:6px 10px;
  border-radius:999px;
  font-family:Sora,Inter,sans-serif;
  font-size:.67rem;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:#2E7BB5;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(46,123,181,.18);
  box-shadow:0 12px 30px rgba(31,61,95,.06);
  opacity:0;
  transform:translateY(8px);
}
.modu-flow-page .group-plan{left:12%;top:23%;}
.modu-flow-page .group-build{right:12%;top:26%;}
.modu-flow-page .group-deploy{left:50%;bottom:23%;transform:translate(-50%,8px);}
.modu-flow-page .flow-noise-map.visible .flow-group-label,
.modu-flow-page .flow-noise-map.is-visible .flow-group-label{
  animation:flowGroupIn .7s 1.05s ease forwards;
}
.modu-flow-page .flow-noise-map.visible .group-deploy,
.modu-flow-page .flow-noise-map.is-visible .group-deploy{
  animation:flowGroupDeployIn .7s 1.05s ease forwards;
}
.modu-flow-page .flow-tag{
  padding:9px 13px;
  border-color:rgba(46,123,181,.22);
  background:rgba(255,255,255,.92);
  color:var(--modu-project-blue);
  box-shadow:0 16px 42px rgba(31,61,95,.08);
  transform:translate(var(--fx,0),var(--fy,0)) rotate(var(--fr,0deg)) scale(.92);
}
.modu-flow-page .flow-noise-map.visible .flow-tag,
.modu-flow-page .flow-noise-map.is-visible .flow-tag{
  animation:flowTagOrganizePremium 1.05s cubic-bezier(.18,.94,.18,1) forwards;
  animation-delay:calc(.12s + (var(--i,0) * .07s));
}
/* Grupos finales: Definir / Producir / Desplegar */
.modu-flow-page .tag-1{left:7%;top:31%;--i:1;--fx:230px;--fy:-155px;--fr:-19deg;}
.modu-flow-page .tag-2{left:17%;top:20%;--i:2;--fx:-120px;--fy:115px;--fr:16deg;}
.modu-flow-page .tag-12{left:18%;top:41%;--i:3;--fx:190px;--fy:68px;--fr:-12deg;}
.modu-flow-page .tag-3{right:16%;top:20%;--i:4;--fx:-210px;--fy:150px;--fr:18deg;}
.modu-flow-page .tag-4{right:8%;top:32%;--i:5;--fx:-185px;--fy:-95px;--fr:-17deg;}
.modu-flow-page .tag-5{right:18%;top:43%;--i:6;--fx:-45px;--fy:-170px;--fr:12deg;}
.modu-flow-page .tag-6{right:7%;top:54%;--i:7;--fx:-270px;--fy:48px;--fr:20deg;}
.modu-flow-page .tag-10{left:27%;bottom:20%;--i:8;--fx:70px;--fy:-170px;--fr:-15deg;}
.modu-flow-page .tag-11{left:43%;bottom:14%;--i:9;--fx:-205px;--fy:-34px;--fr:15deg;}
.modu-flow-page .tag-7{left:52%;bottom:26%;--i:10;--fx:125px;--fy:-150px;--fr:-13deg;}
.modu-flow-page .tag-8{left:66%;bottom:17%;--i:11;--fx:-155px;--fy:-90px;--fr:18deg;}
.modu-flow-page .tag-9{left:55%;bottom:8%;--i:12;--fx:190px;--fy:-172px;--fr:-16deg;}
.modu-flow-page .flow-map-caption{
  bottom:24px;
  text-align:center;
  color:#2E7BB5;
  font-size:1rem;
}
.modu-flow-page .flow-noise-map.visible .flow-map-caption,
.modu-flow-page .flow-noise-map.is-visible .flow-map-caption{
  animation:flowCaptionIn .65s 1.55s ease forwards;
}
@keyframes flowTagOrganizePremium{
  0%{opacity:0;transform:translate(var(--fx,0),var(--fy,0)) rotate(var(--fr,0deg)) scale(.86);filter:blur(1px);}
  62%{opacity:1;transform:translate(0,0) rotate(0deg) scale(1.035);filter:blur(0);}
  100%{opacity:1;transform:translate(0,0) rotate(0deg) scale(1);filter:blur(0);}
}
@keyframes flowStageIn{to{opacity:1;}}
@keyframes flowGroupIn{to{opacity:1;transform:translateY(0);}}
@keyframes flowGroupDeployIn{to{opacity:1;transform:translate(-50%,0);}}

@media(max-width:1180px){
  .modu-flow-page .flow-noise-grid{grid-template-columns:1fr;}
  .modu-flow-page .flow-noise-map{min-height:520px;max-width:860px;}
}
@media(max-width:760px){
  .modu-flow-page .flow-section{padding:64px 0;}
  .modu-flow-page .flow-intro{padding-top:100px;padding-bottom:64px;}
  .modu-flow-page .flow-eyebrow{letter-spacing:.15em;}
  .modu-flow-page .flow-noise-map{
    min-height:auto;
    padding:132px 18px 82px;
  }
  .modu-flow-page .flow-map-stage-label.stage-scattered{left:18px;top:18px;}
  .modu-flow-page .flow-map-stage-label.stage-coordinated{right:18px;bottom:22px;}
  .modu-flow-page .flow-group-label,
  .modu-flow-page .flow-map-orbit,
  .modu-flow-page .flow-map-route,
  .modu-flow-page .flow-noise-map:after{display:none!important;}
  .modu-flow-page .flow-map-core{top:28px;width:126px;height:126px;}
  .modu-flow-page .flow-tags{position:relative;display:flex;flex-wrap:wrap;justify-content:center;gap:9px;}
  .modu-flow-page .flow-tag{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;font-size:.82rem;padding:8px 10px;transform:translateY(10px) scale(.96);}
  .modu-flow-page .flow-noise-map.visible .flow-tag,
  .modu-flow-page .flow-noise-map.is-visible .flow-tag{animation:flowTagMobileIn .55s ease forwards;animation-delay:calc(.12s + (var(--i,0) * .045s));}
  @keyframes flowTagMobileIn{to{opacity:1;transform:translateY(0) scale(1);}}
}


/* ==========================================================
   MODU v0.7.19 — MODU FLOW / real animation from noise to order
   ========================================================== */
.modu-flow-page .flow-eyebrow span{
  color:var(--flow-accent);
}
.modu-flow-page .flow-eyebrow:before,
.modu-flow-page .flow-eyebrow:after{
  background:rgba(46,123,181,.28);
}
.modu-flow-page .flow-noise-map.flow-noise-map-live{
  overflow:hidden;
}
.modu-flow-page .flow-noise-map.flow-noise-map-live .flow-tags{
  position:absolute;
  inset:0;
}
.modu-flow-page .flow-noise-map.flow-noise-map-live .flow-tag{
  left:50% !important;
  top:50% !important;
  right:auto !important;
  bottom:auto !important;
  padding:9px 14px;
  transform:translate(-50%,-50%) translate(var(--x,0px),var(--y,0px)) scale(var(--scale,.96)) rotate(var(--rot,0deg));
  transition:
    transform 1.05s cubic-bezier(.2,.9,.23,1),
    opacity .45s ease,
    border-color .45s ease,
    background-color .45s ease,
    box-shadow .45s ease,
    color .45s ease;
  transition-delay:calc(var(--i, 0) * 40ms);
  opacity:1;
  will-change:transform;
}
.modu-flow-page .flow-noise-map.flow-noise-map-live .flow-tag:before{
  content:"";
  position:absolute;
  inset:-8px;
  border-radius:999px;
  border:1px dashed rgba(46,123,181,.10);
  opacity:0;
}
.modu-flow-page .flow-noise-map.flow-noise-map-live .flow-tag.active-group{
  background:#fff;
  border-color:rgba(46,123,181,.30);
  box-shadow:0 18px 44px rgba(31,61,95,.11);
}
.modu-flow-page .flow-noise-map.flow-noise-map-live .flow-tag.active-group:before{
  opacity:1;
}
.modu-flow-page .flow-noise-map.flow-noise-map-live .flow-map-orbit,
.modu-flow-page .flow-noise-map.flow-noise-map-live .flow-map-route,
.modu-flow-page .flow-noise-map.flow-noise-map-live:after{
  opacity:0;
  transition:opacity .65s ease, transform .9s ease;
}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .flow-map-orbit,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .flow-map-orbit{
  opacity:1;
  transform:translate(-50%,-50%) scale(1);
}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .flow-map-route,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .flow-map-route,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve:after,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done:after{
  opacity:1;
}
.modu-flow-page .flow-noise-map.flow-noise-map-live .flow-map-core{
  transition:transform .6s ease, box-shadow .6s ease;
}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .flow-map-core{
  transform:translate(-50%,-50%) scale(1.03);
  box-shadow:0 28px 78px rgba(31,61,95,.26), 0 0 0 12px rgba(46,123,181,.08);
}
.modu-flow-page .flow-noise-map.flow-noise-map-live .flow-group-label,
.modu-flow-page .flow-noise-map.flow-noise-map-live .flow-map-stage-label,
.modu-flow-page .flow-noise-map.flow-noise-map-live .flow-map-caption{
  transition:opacity .55s ease, transform .8s ease, color .35s ease;
}
.modu-flow-page .flow-noise-map.flow-noise-map-live .flow-map-stage-label[data-active="true"]{
  opacity:1 !important;
}
.modu-flow-page .flow-noise-map.flow-noise-map-live .flow-map-stage-label[data-active="false"]{
  opacity:.24 !important;
}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .flow-group-label{
  opacity:0;
  transform:translateY(10px);
}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .flow-group-label,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .flow-group-label,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .flow-group-label{
  opacity:1;
  transform:translateY(0);
}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .flow-map-caption{
  opacity:1;
  transform:translateY(0);
}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .flow-map-caption,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .flow-map-caption,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .flow-map-caption{
  opacity:0;
  transform:translateY(10px);
}

/* Positions for each state */
.modu-flow-page .flow-noise-map.flow-noise-map-live .tag-1{--i:1;}
.modu-flow-page .flow-noise-map.flow-noise-map-live .tag-2{--i:2;}
.modu-flow-page .flow-noise-map.flow-noise-map-live .tag-3{--i:3;}
.modu-flow-page .flow-noise-map.flow-noise-map-live .tag-4{--i:4;}
.modu-flow-page .flow-noise-map.flow-noise-map-live .tag-5{--i:5;}
.modu-flow-page .flow-noise-map.flow-noise-map-live .tag-6{--i:6;}
.modu-flow-page .flow-noise-map.flow-noise-map-live .tag-7{--i:7;}
.modu-flow-page .flow-noise-map.flow-noise-map-live .tag-8{--i:8;}
.modu-flow-page .flow-noise-map.flow-noise-map-live .tag-9{--i:9;}
.modu-flow-page .flow-noise-map.flow-noise-map-live .tag-10{--i:10;}
.modu-flow-page .flow-noise-map.flow-noise-map-live .tag-11{--i:11;}
.modu-flow-page .flow-noise-map.flow-noise-map-live .tag-12{--i:12;}

/* SCATTER */
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-1{--x:-286px;--y:-150px;--rot:-18deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-2{--x:-176px;--y:-212px;--rot:14deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-3{--x:122px;--y:-210px;--rot:-9deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-4{--x:257px;--y:-138px;--rot:17deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-5{--x:245px;--y:-14px;--rot:-15deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-6{--x:278px;--y:120px;--rot:12deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-7{--x:72px;--y:190px;--rot:-12deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-8{--x:194px;--y:170px;--rot:10deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-9{--x:8px;--y:224px;--rot:-8deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-10{--x:-240px;--y:128px;--rot:18deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-11{--x:-120px;--y:206px;--rot:-11deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-12{--x:-284px;--y:-8px;--rot:8deg;}

/* CLUSTER */
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-1,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-2,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-10,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-12{background:#fff;border-color:rgba(46,123,181,.32);box-shadow:0 18px 44px rgba(31,61,95,.11);}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-3,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-4,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-5,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-6{background:#fff;border-color:rgba(46,123,181,.32);box-shadow:0 18px 44px rgba(31,61,95,.11);}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-7,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-8,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-9,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-11{background:#fff;border-color:rgba(46,123,181,.32);box-shadow:0 18px 44px rgba(31,61,95,.11);}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-1{--x:-196px;--y:-92px;--rot:0deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-2{--x:-122px;--y:-134px;--rot:0deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-10{--x:-188px;--y:-22px;--rot:0deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-12{--x:-84px;--y:-58px;--rot:0deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-3{--x:170px;--y:-108px;--rot:0deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-4{--x:232px;--y:-54px;--rot:0deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-5{--x:138px;--y:-2px;--rot:0deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-6{--x:228px;--y:40px;--rot:0deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-7{--x:-32px;--y:144px;--rot:0deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-8{--x:84px;--y:144px;--rot:0deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-9{--x:28px;--y:202px;--rot:0deg;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-cluster .tag-11{--x:-106px;--y:204px;--rot:0deg;}

/* RESOLVE / DONE — clean system around core */
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .flow-tag,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .flow-tag{
  background:rgba(255,255,255,.96);
  border-color:rgba(46,123,181,.24);
  box-shadow:0 14px 34px rgba(31,61,95,.09);
  color:var(--modu-project-blue);
}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .tag-1,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .tag-1{--x:-210px;--y:-88px;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .tag-2,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .tag-2{--x:-150px;--y:-144px;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .tag-12,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .tag-12{--x:-84px;--y:-96px;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .tag-10,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .tag-10{--x:-182px;--y:-16px;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .tag-3,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .tag-3{--x:162px;--y:-142px;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .tag-4,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .tag-4{--x:228px;--y:-86px;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .tag-5,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .tag-5{--x:154px;--y:-26px;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .tag-6,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .tag-6{--x:222px;--y:38px;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .tag-7,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .tag-7{--x:44px;--y:172px;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .tag-8,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .tag-8{--x:138px;--y:140px;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .tag-9,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .tag-9{--x:22px;--y:220px;}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-resolve .tag-11,
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .tag-11{--x:-92px;--y:186px;}

/* subtle pulse once order is reached */
@keyframes flowNoiseCorePulse{0%,100%{box-shadow:0 26px 72px rgba(31,61,95,.24),0 0 0 10px rgba(46,123,181,.06);}50%{box-shadow:0 28px 78px rgba(31,61,95,.28),0 0 0 16px rgba(46,123,181,.11);}}
.modu-flow-page .flow-noise-map.flow-noise-map-live.state-done .flow-map-core{animation:flowNoiseCorePulse 2s ease-in-out infinite;}

@media (max-width: 1100px){
  .modu-flow-page .flow-noise-map.flow-noise-map-live{min-height:500px;}
  .modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-1{--x:-244px;--y:-134px;}
  .modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-2{--x:-128px;--y:-194px;}
  .modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-3{--x:118px;--y:-188px;}
  .modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-4{--x:218px;--y:-124px;}
  .modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-5{--x:214px;--y:-12px;}
  .modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-6{--x:236px;--y:102px;}
  .modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-7{--x:58px;--y:170px;}
  .modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-8{--x:170px;--y:154px;}
  .modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-9{--x:12px;--y:202px;}
  .modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-10{--x:-208px;--y:116px;}
  .modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-11{--x:-104px;--y:182px;}
  .modu-flow-page .flow-noise-map.flow-noise-map-live.state-scatter .tag-12{--x:-238px;--y:-10px;}
}

@media (max-width: 767px){
  .modu-flow-page .flow-noise-map.flow-noise-map-live{
    min-height:auto;
    padding:118px 18px 76px;
  }
  .modu-flow-page .flow-noise-map.flow-noise-map-live .flow-map-core{
    top:30px;
    width:128px;
    height:128px;
  }
  .modu-flow-page .flow-noise-map.flow-noise-map-live .flow-tags{
    position:relative;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    padding-top:48px;
  }
  .modu-flow-page .flow-noise-map.flow-noise-map-live .flow-tag{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    transform:none !important;
    transition:none;
    font-size:.82rem;
    padding:9px 10px;
    text-align:center;
    justify-content:center;
  }
  .modu-flow-page .flow-noise-map.flow-noise-map-live .flow-map-caption{
    position:relative;
    left:auto;right:auto;bottom:auto;
    margin-top:16px;
    opacity:1;
    transform:none;
    text-align:center;
  }
}


/* ==========================================================
   MODU v0.7.20 — MODU FLOW / premium dynamic sorting block
   ========================================================== */
.modu-flow-page .flow-noise-stage-live{
  --flow-bridge-target:50%;
  position:relative;
  display:flex;
  flex-direction:column;
  gap:18px;
  padding:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(247,244,239,.94) 100%);
  border:1px solid rgba(31,61,95,.08);
  border-radius:32px;
  box-shadow:0 28px 70px rgba(31,61,95,.08);
}
.modu-flow-page .flow-noise-stage-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
}
.modu-flow-page .flow-noise-stage-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(31,61,95,.56);
}
.modu-flow-page .flow-noise-stage-kicker:before{
  content:"";
  width:28px;
  height:1px;
  background:rgba(46,123,181,.32);
}
.modu-flow-page .flow-sort-visual{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) 96px minmax(0,1.15fr);
  align-items:stretch;
  gap:14px;
  min-height:430px;
}
.modu-flow-page .flow-noise-chaos,
.modu-flow-page .flow-noise-order{
  position:relative;
  min-height:430px;
  border-radius:24px;
}
.modu-flow-page .flow-noise-chaos{
  background:radial-gradient(circle at 30% 20%, rgba(46,123,181,.10), transparent 44%), linear-gradient(180deg, rgba(255,255,255,.82) 0%, rgba(245,241,232,.72) 100%);
  border:1px dashed rgba(31,61,95,.12);
  overflow:hidden;
}
.modu-flow-page .flow-noise-chaos:before,
.modu-flow-page .flow-noise-chaos:after{
  content:"";
  position:absolute;
  inset:auto;
  border-radius:50%;
  border:1px solid rgba(46,123,181,.12);
}
.modu-flow-page .flow-noise-chaos:before{ width:240px; height:240px; left:-82px; top:-60px; }
.modu-flow-page .flow-noise-chaos:after{ width:190px; height:190px; right:-70px; bottom:-48px; }
.modu-flow-page .flow-noise-bridge{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:430px;
}
.modu-flow-page .bridge-line{
  position:absolute;
  inset:0 auto 0 50%;
  width:2px;
  transform:translateX(-50%);
  background:linear-gradient(180deg, rgba(46,123,181,.04) 0%, rgba(46,123,181,.3) 50%, rgba(46,123,181,.04) 100%);
}
.modu-flow-page .bridge-line:before,
.modu-flow-page .bridge-line:after{
  content:"";
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  width:44px;
  height:2px;
  background:rgba(46,123,181,.20);
}
.modu-flow-page .bridge-line:before{ top:28px; }
.modu-flow-page .bridge-line:after{ bottom:28px; }
.modu-flow-page .bridge-pulse{
  position:absolute;
  left:50%;
  top:var(--flow-bridge-target);
  width:18px;
  height:18px;
  border-radius:50%;
  background:radial-gradient(circle at 30% 30%, #FFD9A6 0%, #FF9A3E 58%, #F06A00 100%);
  box-shadow:0 0 0 8px rgba(240,106,0,.10), 0 0 26px rgba(240,106,0,.38);
  transform:translate(-50%, -50%);
  opacity:.15;
  transition:top .86s cubic-bezier(.25,.9,.25,1), opacity .25s ease;
}
.modu-flow-page .flow-noise-stage-live[data-state="sorting"] .bridge-pulse,
.modu-flow-page .flow-noise-stage-live[data-state="done"] .bridge-pulse{
  opacity:1;
}
.modu-flow-page .bridge-label{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  padding:12px 8px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(46,123,181,.16);
  color:var(--flow-accent);
  font-size:.75rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  box-shadow:0 12px 24px rgba(31,61,95,.06);
}
.modu-flow-page .flow-noise-order{
  display:flex;
  flex-direction:column;
  gap:14px;
}
.modu-flow-page .flow-order-core{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:20px 22px;
  border-radius:22px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--modu-project-blue) 76%,#000) 0%, var(--modu-project-blue) 100%);
  color:#fff;
  box-shadow:0 20px 46px rgba(31,61,95,.18);
}
.modu-flow-page .flow-order-core strong{
  font-size:1.02rem;
  letter-spacing:.12em;
}
.modu-flow-page .flow-order-core small{
  color:rgba(255,255,255,.74);
  font-size:.84rem;
  line-height:1.45;
}
.modu-flow-page .flow-order-groups{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.modu-flow-page .flow-order-group{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-height:146px;
  padding:16px;
  border-radius:22px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(31,61,95,.08);
  box-shadow:0 12px 28px rgba(31,61,95,.06);
  transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease, background-color .3s ease;
}
.modu-flow-page .flow-order-group.group-deploy{ grid-column:1 / -1; }
.modu-flow-page .flow-order-group h3{
  margin:0;
  font-size:.92rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--modu-project-blue);
}
.modu-flow-page .flow-order-group.is-active,
.modu-flow-page .flow-order-group.is-resting{
  border-color:rgba(46,123,181,.22);
  box-shadow:0 18px 38px rgba(46,123,181,.12);
}
.modu-flow-page .flow-order-group.is-active{
  transform:translateY(-2px);
  background:linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(245,249,252,.98) 100%);
}
.modu-flow-page .flow-order-slot-list{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.modu-flow-page .flow-order-slot{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px 12px;
  border-radius:999px;
  border:1px dashed rgba(31,61,95,.14);
  background:rgba(247,244,239,.72);
  color:rgba(31,61,95,.42);
  font-size:.78rem;
  font-weight:600;
  transition:background-color .25s ease, border-color .25s ease, color .25s ease, box-shadow .25s ease, transform .25s ease;
}
.modu-flow-page .flow-order-slot.is-firing{
  border-color:rgba(240,106,0,.52);
  box-shadow:0 0 0 7px rgba(240,106,0,.10), 0 0 18px rgba(240,106,0,.16);
  transform:scale(1.03);
}
.modu-flow-page .flow-order-slot.is-filled,
.modu-flow-page .flow-order-slot.is-resting{
  background:linear-gradient(180deg, rgba(46,123,181,.12) 0%, rgba(46,123,181,.07) 100%);
  border-style:solid;
  border-color:rgba(46,123,181,.24);
  color:var(--modu-project-blue);
}
.modu-flow-page .flow-chip-overlay{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:4;
}
.modu-flow-page .flow-sort-chip,
.modu-flow-page .flow-chip-overlay .flow-sort-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:8px 14px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(31,61,95,.10);
  color:var(--modu-project-blue);
  font-size:.78rem;
  font-weight:600;
  box-shadow:0 10px 24px rgba(31,61,95,.08);
  white-space:nowrap;
}
.modu-flow-page .flow-noise-chaos .flow-sort-chip{
  position:absolute;
  transition:opacity .25s ease;
}
.modu-flow-page .flow-chip-overlay .flow-sort-chip{
  position:absolute;
  margin:0;
  transition:transform .85s cubic-bezier(.22,.88,.24,1), opacity .28s ease;
}
.modu-flow-page .flow-chip-overlay .flow-sort-chip.is-travelling{
  box-shadow:0 14px 32px rgba(31,61,95,.16), 0 0 0 10px rgba(240,106,0,.06);
  border-color:rgba(240,106,0,.40);
  z-index:5;
}
.modu-flow-page .flow-chip-overlay .flow-sort-chip.is-landed{
  transition:opacity .18s ease;
}
.modu-flow-page .flow-noise-stage-live[data-state="done"] .flow-order-core{
  box-shadow:0 24px 54px rgba(31,61,95,.22), 0 0 0 10px rgba(46,123,181,.05);
}

/* scattered source positions */
.modu-flow-page .flow-noise-chaos .source-1{left:7%; top:13%;}
.modu-flow-page .flow-noise-chaos .source-2{left:28%; top:9%;}
.modu-flow-page .flow-noise-chaos .source-3{left:62%; top:12%;}
.modu-flow-page .flow-noise-chaos .source-4{left:70%; top:30%;}
.modu-flow-page .flow-noise-chaos .source-5{left:48%; top:26%;}
.modu-flow-page .flow-noise-chaos .source-6{left:20%; top:34%;}
.modu-flow-page .flow-noise-chaos .source-7{left:9%; top:56%;}
.modu-flow-page .flow-noise-chaos .source-8{left:36%; top:60%;}
.modu-flow-page .flow-noise-chaos .source-9{left:67%; top:58%;}
.modu-flow-page .flow-noise-chaos .source-10{left:52%; top:78%;}
.modu-flow-page .flow-noise-chaos .source-11{left:18%; top:77%;}
.modu-flow-page .flow-noise-chaos .source-12{left:74%; top:78%;}

@media (max-width: 1240px){
  .modu-flow-page .flow-sort-visual{ grid-template-columns:minmax(0,1fr) 82px minmax(0,1.08fr); }
  .modu-flow-page .flow-order-groups{ grid-template-columns:1fr; }
  .modu-flow-page .flow-order-group.group-deploy{ grid-column:auto; }
}

@media (max-width: 980px){
  .modu-flow-page .flow-sort-visual{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .modu-flow-page .flow-noise-chaos,
  .modu-flow-page .flow-noise-order{ min-height:auto; }
  .modu-flow-page .flow-noise-bridge{
    min-height:80px;
    order:2;
  }
  .modu-flow-page .bridge-line{
    inset:50% 0 auto 0;
    width:auto;
    height:2px;
    transform:translateY(-50%);
    background:linear-gradient(90deg, rgba(46,123,181,.04) 0%, rgba(46,123,181,.30) 50%, rgba(46,123,181,.04) 100%);
  }
  .modu-flow-page .bridge-line:before,
  .modu-flow-page .bridge-line:after{
    top:50%; left:auto; transform:translateY(-50%); width:2px; height:26px;
  }
  .modu-flow-page .bridge-line:before{ left:24px; }
  .modu-flow-page .bridge-line:after{ right:24px; }
  .modu-flow-page .bridge-pulse{
    top:50%;
    left:var(--flow-bridge-target);
    transition:left .86s cubic-bezier(.25,.9,.25,1), opacity .25s ease;
  }
  .modu-flow-page .bridge-label{ writing-mode:horizontal-tb; transform:none; }
  .modu-flow-page .flow-noise-chaos{ min-height:292px; }
  .modu-flow-page .flow-noise-order{ order:3; }
}

@media (max-width: 767px){
  .modu-flow-page .flow-noise-stage-live{ padding:16px; border-radius:24px; }
  .modu-flow-page .flow-noise-stage-head{ flex-direction:column; align-items:flex-start; gap:8px; }
  .modu-flow-page .flow-sort-visual{ gap:12px; }
  .modu-flow-page .flow-noise-chaos{ min-height:260px; }
  .modu-flow-page .flow-order-core{ padding:18px 18px; }
  .modu-flow-page .flow-order-groups{ grid-template-columns:1fr; }
  .modu-flow-page .flow-noise-chaos .source-1{left:6%; top:10%;}
  .modu-flow-page .flow-noise-chaos .source-2{left:42%; top:9%;}
  .modu-flow-page .flow-noise-chaos .source-3{left:62%; top:18%;}
  .modu-flow-page .flow-noise-chaos .source-4{left:54%; top:38%;}
  .modu-flow-page .flow-noise-chaos .source-5{left:24%; top:28%;}
  .modu-flow-page .flow-noise-chaos .source-6{left:8%; top:46%;}
  .modu-flow-page .flow-noise-chaos .source-7{left:58%; top:58%;}
  .modu-flow-page .flow-noise-chaos .source-8{left:28%; top:62%;}
  .modu-flow-page .flow-noise-chaos .source-9{left:66%; top:74%;}
  .modu-flow-page .flow-noise-chaos .source-10{left:42%; top:82%;}
  .modu-flow-page .flow-noise-chaos .source-11{left:8%; top:78%;}
  .modu-flow-page .flow-noise-chaos .source-12{left:72%; top:40%;}
  .modu-flow-page .flow-sort-chip,
  .modu-flow-page .flow-chip-overlay .flow-sort-chip,
  .modu-flow-page .flow-order-slot{ font-size:.74rem; padding:7px 10px; min-height:34px; }
}


/* ==========================================================
   MODU v0.7.21 — DEL RUIDO AL CONTROL / animación digna y clara
   ========================================================== */
.modu-flow-page .flow-eyebrow span{color:var(--flow-accent)!important;}
.modu-flow-page .flow-eyebrow:before,.modu-flow-page .flow-eyebrow:after{background:rgba(46,123,181,.34)!important;}
.modu-flow-page .flow-noise-grid{grid-template-columns:minmax(0,.9fr) minmax(620px,1.1fr)!important;align-items:center;}
.modu-flow-page .modu-order-lab{
  min-height:560px!important;
  padding:22px!important;
  border-radius:34px!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 82% 48%,rgba(46,123,181,.12),transparent 30%),
    radial-gradient(circle at 40% 52%,rgba(31,61,95,.07),transparent 35%),
    linear-gradient(145deg,#fff 0%,#F7F4EF 48%,#EAF4FB 100%)!important;
  border:1px solid rgba(46,123,181,.18)!important;
  box-shadow:0 34px 88px rgba(31,61,95,.11)!important;
}
.modu-flow-page .modu-order-lab:before{opacity:.34!important;}
.modu-flow-page .order-lab-head{position:relative;z-index:8;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin-bottom:16px;}
.modu-flow-page .order-lab-head span{font-family:Sora,Inter,sans-serif;font-size:.68rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:rgba(31,61,95,.46);white-space:nowrap;}
.modu-flow-page .order-lab-head span:nth-child(2){padding:8px 12px;border-radius:999px;background:rgba(46,123,181,.08);color:var(--flow-accent);border:1px solid rgba(46,123,181,.14);}
.modu-flow-page .order-lab-head span:nth-child(3){text-align:right;color:var(--flow-accent);}
.modu-flow-page .order-lab-stage{position:relative;z-index:6;display:grid;grid-template-columns:minmax(0,1fr) 118px minmax(0,1.22fr);gap:16px;min-height:452px;}
.modu-flow-page .order-chaos-panel,.modu-flow-page .order-system-panel{position:relative;min-height:452px;border-radius:26px;}
.modu-flow-page .order-chaos-panel{background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(247,244,239,.50));border:1px dashed rgba(31,61,95,.12);overflow:hidden;}
.modu-flow-page .order-chaos-panel:before{content:"";position:absolute;inset:18px;border-radius:22px;background-image:linear-gradient(90deg,rgba(31,61,95,.045) 1px,transparent 1px),linear-gradient(180deg,rgba(31,61,95,.035) 1px,transparent 1px);background-size:34px 34px;mask-image:radial-gradient(circle at center,#000 0%,transparent 88%);}
.modu-flow-page .order-engine-panel{position:relative;display:grid;place-items:center;min-height:452px;}
.modu-flow-page .order-engine-panel:before{content:"";position:absolute;left:50%;top:7%;bottom:7%;width:2px;background:linear-gradient(180deg,transparent,rgba(46,123,181,.34),transparent);transform:translateX(-50%);}
.modu-flow-page .engine-ring{position:absolute;left:50%;top:50%;border-radius:50%;border:1px solid rgba(46,123,181,.16);transform:translate(-50%,-50%);animation:moduEngineRing 7s ease-in-out infinite;}
.modu-flow-page .ring-a{width:150px;height:150px;}
.modu-flow-page .ring-b{width:210px;height:210px;animation-delay:.5s;opacity:.65;}
.modu-flow-page .engine-core{position:relative;z-index:4;width:132px;height:132px;border-radius:50%;display:grid;place-items:center;text-align:center;padding:18px;background:var(--modu-project-blue);color:#fff;box-shadow:0 24px 58px rgba(31,61,95,.24),0 0 0 9px rgba(46,123,181,.07);}
.modu-flow-page .engine-core strong{display:block;font-family:Sora,Inter,sans-serif;font-size:.92rem;font-weight:900;letter-spacing:.02em;line-height:1.02;}
.modu-flow-page .engine-core small{display:block;margin-top:8px;color:rgba(255,255,255,.64);font-size:.62rem;line-height:1.25;}
.modu-flow-page .order-system-panel{display:grid;grid-template-rows:auto auto auto;gap:12px;}
.modu-flow-page .order-system-card{position:relative;display:flex;flex-direction:column;gap:10px;min-height:132px;padding:16px;border-radius:22px;background:rgba(255,255,255,.94);border:1px solid rgba(31,61,95,.08);box-shadow:0 14px 34px rgba(31,61,95,.06);overflow:hidden;}
.modu-flow-page .order-system-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--flow-accent);opacity:.55;}
.modu-flow-page .order-system-card h3{margin:0;font-size:.82rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--modu-project-blue);}
.modu-flow-page .order-system-slots{display:flex;flex-wrap:wrap;gap:8px;}
.modu-flow-page .order-system-slots span{display:inline-flex;align-items:center;min-height:31px;padding:7px 11px;border-radius:999px;background:rgba(247,244,239,.85);border:1px dashed rgba(31,61,95,.14);color:rgba(31,61,95,.36);font-size:.74rem;font-weight:800;animation:moduSlotFill 7s ease-in-out infinite;animation-delay:var(--fill-delay);}
.modu-flow-page .order-source,.modu-flow-page .order-mover{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:7px 12px;border-radius:999px;font-size:.74rem;font-weight:850;white-space:nowrap;}
.modu-flow-page .order-source{position:absolute;z-index:3;background:rgba(255,255,255,.82);border:1px solid rgba(31,61,95,.10);color:rgba(31,61,95,.52);box-shadow:0 8px 20px rgba(31,61,95,.05);animation:moduSourcePulse 7s ease-in-out infinite;}
.modu-flow-page .order-motion-layer{position:absolute;inset:0;z-index:20;pointer-events:none;overflow:visible;}
.modu-flow-page .order-mover{position:absolute;left:0;top:0;background:#fff;border:1px solid rgba(46,123,181,.28);color:var(--modu-project-blue);box-shadow:0 18px 42px rgba(31,61,95,.16),0 0 0 8px rgba(46,123,181,.05);opacity:0;transform:translate(var(--x1),var(--y1));animation:moduChipTravel 7s cubic-bezier(.2,.86,.23,1) infinite;animation-delay:var(--d);will-change:transform,opacity;}
.modu-flow-page .order-lab-caption{position:absolute;left:24px;right:24px;bottom:18px;z-index:9;margin:0;text-align:center;font-family:Sora,Inter,sans-serif;font-weight:900;font-size:.94rem;color:var(--flow-accent);opacity:0;animation:moduCaptionIn 7s ease-in-out infinite;}
/* source scattered positions */
.modu-flow-page .order-source-1{left:7%;top:9%;}.modu-flow-page .order-source-2{left:42%;top:7%;}.modu-flow-page .order-source-3{left:63%;top:20%;}.modu-flow-page .order-source-4{left:15%;top:27%;}.modu-flow-page .order-source-5{left:45%;top:35%;}.modu-flow-page .order-source-6{left:70%;top:43%;}.modu-flow-page .order-source-7{left:8%;top:57%;}.modu-flow-page .order-source-8{left:35%;top:63%;}.modu-flow-page .order-source-9{left:64%;top:66%;}.modu-flow-page .order-source-10{left:54%;top:81%;}.modu-flow-page .order-source-11{left:15%;top:82%;}.modu-flow-page .order-source-12{left:70%;top:82%;}
/* mover coordinates */
.modu-flow-page .mover-1{--x1:6%;--y1:9%;--x2:43%;--y2:49%;--x3:68%;--y3:23%;}.modu-flow-page .mover-2{--x1:40%;--y1:7%;--x2:44%;--y2:49%;--x3:80%;--y3:23%;}.modu-flow-page .mover-10{--x1:54%;--y1:81%;--x2:44%;--y2:50%;--x3:68%;--y3:30%;}.modu-flow-page .mover-12{--x1:70%;--y1:82%;--x2:44%;--y2:50%;--x3:82%;--y3:30%;}
.modu-flow-page .mover-3{--x1:63%;--y1:20%;--x2:44%;--y2:50%;--x3:68%;--y3:46%;}.modu-flow-page .mover-4{--x1:15%;--y1:27%;--x2:44%;--y2:50%;--x3:80%;--y3:46%;}.modu-flow-page .mover-5{--x1:45%;--y1:35%;--x2:44%;--y2:50%;--x3:68%;--y3:53%;}.modu-flow-page .mover-6{--x1:70%;--y1:43%;--x2:44%;--y2:50%;--x3:82%;--y3:53%;}
.modu-flow-page .mover-7{--x1:8%;--y1:57%;--x2:44%;--y2:50%;--x3:68%;--y3:70%;}.modu-flow-page .mover-8{--x1:35%;--y1:63%;--x2:44%;--y2:50%;--x3:80%;--y3:70%;}.modu-flow-page .mover-9{--x1:64%;--y1:66%;--x2:44%;--y2:50%;--x3:68%;--y3:77%;}.modu-flow-page .mover-11{--x1:15%;--y1:82%;--x2:44%;--y2:50%;--x3:82%;--y3:77%;}
@keyframes moduChipTravel{0%,10%{opacity:0;transform:translate(var(--x1),var(--y1)) scale(.94);}14%,28%{opacity:1;transform:translate(var(--x1),var(--y1)) scale(1);}45%{opacity:1;transform:translate(var(--x2),var(--y2)) scale(1.04);border-color:rgba(240,106,0,.42);box-shadow:0 22px 48px rgba(31,61,95,.18),0 0 0 12px rgba(240,106,0,.07);}68%,82%{opacity:1;transform:translate(var(--x3),var(--y3)) scale(.98);border-color:rgba(46,123,181,.30);}92%,100%{opacity:0;transform:translate(var(--x3),var(--y3)) scale(.96);}}
@keyframes moduSlotFill{0%,34%{background:rgba(247,244,239,.85);border-style:dashed;border-color:rgba(31,61,95,.14);color:rgba(31,61,95,.36);box-shadow:none;}45%,88%{background:rgba(46,123,181,.10);border-style:solid;border-color:rgba(46,123,181,.24);color:var(--modu-project-blue);box-shadow:0 6px 16px rgba(46,123,181,.08);}100%{background:rgba(247,244,239,.85);border-style:dashed;border-color:rgba(31,61,95,.14);color:rgba(31,61,95,.36);}}
@keyframes moduSourcePulse{0%,18%{opacity:.88;transform:translateY(0);}40%,88%{opacity:.20;transform:translateY(-2px);}100%{opacity:.88;transform:translateY(0);}}
@keyframes moduCaptionIn{0%,56%{opacity:0;transform:translateY(8px);}66%,88%{opacity:1;transform:translateY(0);}100%{opacity:0;transform:translateY(8px);}}
@keyframes moduEngineRing{0%,100%{transform:translate(-50%,-50%) scale(.94);opacity:.34;}45%,78%{transform:translate(-50%,-50%) scale(1.05);opacity:.88;}}
@media (max-width:1180px){.modu-flow-page .flow-noise-grid{grid-template-columns:1fr!important}.modu-flow-page .modu-order-lab{max-width:980px;width:100%;margin:0 auto}.modu-flow-page .order-lab-stage{grid-template-columns:minmax(0,1fr) 96px minmax(0,1.1fr)}}
@media (max-width:760px){.modu-flow-page .modu-order-lab{min-height:auto!important;padding:18px!important}.modu-flow-page .order-lab-head{grid-template-columns:1fr;gap:8px}.modu-flow-page .order-lab-head span:nth-child(3){text-align:left}.modu-flow-page .order-lab-stage{grid-template-columns:1fr;min-height:auto}.modu-flow-page .order-chaos-panel{min-height:230px}.modu-flow-page .order-engine-panel{min-height:98px}.modu-flow-page .order-engine-panel:before{left:8%;right:8%;top:50%;bottom:auto;width:auto;height:2px;transform:none;background:linear-gradient(90deg,transparent,rgba(46,123,181,.34),transparent)}.modu-flow-page .engine-core{width:112px;height:112px}.modu-flow-page .order-system-panel{min-height:auto}.modu-flow-page .order-motion-layer{display:none}.modu-flow-page .order-source{font-size:.68rem;padding:6px 9px}.modu-flow-page .order-lab-caption{position:relative;left:auto;right:auto;bottom:auto;margin-top:12px;animation:none;opacity:1}.modu-flow-page .order-system-slots span{animation:none;background:rgba(46,123,181,.09);border-style:solid;border-color:rgba(46,123,181,.22);color:var(--modu-project-blue)}.modu-flow-page .order-source{animation:none;opacity:.72}.modu-flow-page .order-source-1{left:5%;top:8%}.modu-flow-page .order-source-2{left:38%;top:7%}.modu-flow-page .order-source-3{left:60%;top:18%}.modu-flow-page .order-source-4{left:8%;top:28%}.modu-flow-page .order-source-5{left:36%;top:36%}.modu-flow-page .order-source-6{left:62%;top:44%}.modu-flow-page .order-source-7{left:6%;top:57%}.modu-flow-page .order-source-8{left:34%;top:62%}.modu-flow-page .order-source-9{left:60%;top:68%}.modu-flow-page .order-source-10{left:45%;top:82%}.modu-flow-page .order-source-11{left:8%;top:80%}.modu-flow-page .order-source-12{left:65%;top:82%}}
@media (prefers-reduced-motion:reduce){.modu-flow-page .order-mover{display:none!important}.modu-flow-page .order-source,.modu-flow-page .order-system-slots span,.modu-flow-page .order-lab-caption,.modu-flow-page .engine-ring{animation:none!important}.modu-flow-page .order-system-slots span{background:rgba(46,123,181,.09);border-style:solid;border-color:rgba(46,123,181,.22);color:var(--modu-project-blue)}.modu-flow-page .order-lab-caption{opacity:1;}}


/* ==========================================================
   MODU v0.7.22 — Del ruido al control / SVG premium sorting
   ========================================================== */
.modu-flow-page .flow-eyebrow span{color:var(--flow-accent)!important;}
.modu-flow-page .flow-eyebrow:before,.modu-flow-page .flow-eyebrow:after{background:rgba(46,123,181,.32)!important;}
.modu-flow-page .modu-flow-premium-sort{
  padding:0!important;
  min-height:auto!important;
  overflow:visible!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.modu-flow-page .modu-flow-premium-sort:before,
.modu-flow-page .modu-flow-premium-sort:after{display:none!important;}
.modu-flow-page .modu-sort-svg{
  display:block;
  width:100%;
  max-width:840px;
  height:auto;
  margin:0 auto;
  filter:drop-shadow(0 34px 70px rgba(31,61,95,.10));
}
@media (max-width:1180px){.modu-flow-page .modu-sort-svg{max-width:900px;}}
@media (max-width:760px){.modu-flow-page .modu-sort-svg{min-width:680px}.modu-flow-page .modu-flow-premium-sort{overflow-x:auto!important;-webkit-overflow-scrolling:touch;padding-bottom:8px!important;}}
@media (prefers-reduced-motion:reduce){.modu-flow-page .modu-sort-svg animateTransform{display:none!important;}}


/* ==========================================================
   MODU v0.7.23 — MODU FLOW premium final
   ========================================================== */
.modu-flow-page .modu-flow-premium-sort{
  border:none!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
}
.modu-flow-page .modu-sort-svg{
  filter:drop-shadow(0 26px 70px rgba(31,61,95,.10));
}
.modu-flow-page .flow-noise-grid{
  align-items:center;
}
.modu-flow-page .flow-editorial-close{
  background:linear-gradient(180deg,var(--flow-bg) 0%,rgba(255,255,255,.92) 100%);
  padding-top:clamp(72px,6vw,96px);
  padding-bottom:clamp(78px,7vw,110px);
}
.modu-flow-page .flow-editorial-close-box{
  max-width:1120px;
  border-left:1px solid rgba(46,123,181,.32);
  padding-left:clamp(24px,4vw,56px);
  position:relative;
}
.modu-flow-page .flow-editorial-close-box:before{
  content:"";
  position:absolute;
  left:-1px;
  top:0;
  width:1px;
  height:78px;
  background:var(--flow-accent);
  box-shadow:0 0 0 8px rgba(46,123,181,.06);
}
.modu-flow-page .flow-editorial-close h2{
  margin:0;
  max-width:1030px;
  font-size:clamp(2.25rem,4vw,4.55rem);
  line-height:1.02;
  letter-spacing:-.055em;
  color:var(--modu-project-blue);
}
.modu-flow-page .flow-editorial-close p:not(.flow-eyebrow){
  max-width:720px;
  margin:24px 0 0;
  color:#526679;
  font-size:clamp(1.02rem,1.22vw,1.2rem);
  line-height:1.72;
}
.modu-flow-page .flow-page-cta{
  display:none!important;
}
@media (max-width:760px){
  .modu-flow-page .flow-editorial-close-box{
    padding-left:22px;
  }
  .modu-flow-page .flow-editorial-close h2{
    font-size:clamp(2.1rem,10vw,3.35rem);
  }
  .modu-flow-page .modu-sort-svg{
    min-width:700px;
  }
}


/* ==========================================================
   MODU v0.7.24 — MODU FLOW / premium plus alignment animation
   ========================================================== */
.modu-flow-page .modu-flow-premium-align{
  min-height:auto!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.modu-flow-page .modu-align-svg{
  display:block;
  width:100%;
  height:auto;
  max-width:940px;
  margin:0 auto;
  filter:drop-shadow(0 28px 74px rgba(31,61,95,.10));
}
.modu-flow-page .modu-align-mobile{display:none;}
.modu-flow-page .flow-noise-grid{align-items:center;}
@media (max-width: 980px){
  .modu-flow-page .modu-align-svg{max-width:860px;}
}
@media (max-width: 640px){
  .modu-flow-page .modu-align-svg{display:none;}
  .modu-flow-page .modu-align-mobile{
    display:block;
    border-radius:26px;
    padding:24px;
    background:linear-gradient(180deg,#fffdf8 0%,#F7F4EF 64%,#EEF7FD 100%);
    border:1px solid rgba(46,123,181,.14);
    box-shadow:0 20px 52px rgba(31,61,95,.08);
  }
  .modu-flow-page .modu-align-mobile-title{
    color:#2E7BB5;
    font-family:Sora,Inter,sans-serif;
    font-size:.78rem;
    font-weight:850;
    letter-spacing:.14em;
    text-transform:uppercase;
    margin-bottom:16px;
  }
  .modu-flow-page .modu-align-mobile-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
    margin-bottom:18px;
  }
  .modu-flow-page .modu-align-mobile-grid span{
    display:flex;
    justify-content:center;
    padding:9px 10px;
    border-radius:999px;
    background:#fff;
    border:1px solid rgba(46,123,181,.16);
    color:var(--modu-project-blue);
    font-size:.82rem;
    font-weight:700;
  }
  .modu-flow-page .modu-align-mobile strong{
    display:block;
    padding:16px 18px;
    border-radius:18px;
    background:var(--modu-project-blue);
    color:#fff;
    text-align:center;
    font-family:Sora,Inter,sans-serif;
    letter-spacing:-.02em;
  }
}

/* MODU v0.7.48 — DEL RUIDO AL CONTROL · MASTERPIECE */
.modu-flow-page .modu-flow-masterpiece{
  position:relative;
  min-height:0;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
.modu-flow-page .modu-flow-masterpiece:before,
.modu-flow-page .modu-flow-masterpiece:after{display:none!important;}
.modu-flow-page .mp-stage{
  position:relative;
  width:100%;
  min-height:610px;
  border-radius:34px;
  overflow:hidden;
  background:
    radial-gradient(circle at 16% 48%,rgba(46,123,181,.055),transparent 30%),
    radial-gradient(circle at 84% 42%,rgba(139,197,241,.08),transparent 34%),
    linear-gradient(145deg,#fffefa 0%,#f8f5ef 46%,#f4f9fc 100%);
  border:1px solid rgba(31,61,95,.065);
  box-shadow:0 34px 90px rgba(31,61,95,.095);
  isolation:isolate;
}
.modu-flow-page .mp-stage:before{
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(90deg,rgba(31,61,95,.022) 1px,transparent 1px),
    linear-gradient(180deg,rgba(31,61,95,.018) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:radial-gradient(circle at center,#000 0%,transparent 84%);
  pointer-events:none;
}
.modu-flow-page .mp-stage-top{
  position:absolute;
  top:28px;
  left:34px;
  right:34px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:20px;
  z-index:5;
  font-family:Sora,Inter,sans-serif;
  font-size:.69rem;
  line-height:1;
  font-weight:850;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(31,61,95,.46);
}
.modu-flow-page .mp-stage-top:before,
.modu-flow-page .mp-stage-top:after{
  content:"";
  position:absolute;
  top:50%;
  height:1px;
  background:rgba(46,123,181,.16);
}
.modu-flow-page .mp-stage-top:before{left:0;width:27%;}
.modu-flow-page .mp-stage-top:after{right:0;width:31%;}
.modu-flow-page .mp-stage-top span:first-child{padding-left:0;justify-self:start;position:relative;z-index:1;background:#fffefa;padding-right:14px;}
.modu-flow-page .mp-stage-top span:last-child{justify-self:end;color:#2E7BB5;position:relative;z-index:1;background:#f5f9fc;padding-left:14px;}
.modu-flow-page .mp-stage-top strong{color:#2E7BB5;letter-spacing:.21em;position:relative;z-index:1;background:#faf8f3;padding:0 14px;}
.modu-flow-page .mp-source{
  position:absolute;
  left:4.5%;
  top:15%;
  width:31%;
  height:70%;
  z-index:3;
}
.modu-flow-page .mp-chip{
  position:absolute;
  display:flex;
  align-items:center;
  gap:12px;
  min-width:132px;
  height:48px;
  padding:0 18px;
  border-radius:16px;
  background:rgba(255,255,255,.96);
  border:1px solid rgba(31,61,95,.065);
  box-shadow:0 12px 30px rgba(31,61,95,.055);
  font-family:Inter,Arial,sans-serif;
  font-size:.94rem;
  font-weight:720;
  color:var(--modu-project-blue);
  transition:transform .95s cubic-bezier(.22,.82,.22,1),opacity .45s ease,box-shadow .45s ease,border-color .45s ease;
  will-change:transform,opacity;
}
.modu-flow-page .mp-chip i{
  width:22px;
  height:1px;
  background:rgba(46,123,181,.38);
  flex:0 0 auto;
}
.modu-flow-page .mp-chip-a{left:3%;top:7%;transform:rotate(-3deg);}
.modu-flow-page .mp-chip-b{left:39%;top:20%;transform:rotate(2deg);}
.modu-flow-page .mp-chip-c{left:0;top:39%;transform:rotate(-2deg);}
.modu-flow-page .mp-chip-d{left:43%;top:52%;transform:rotate(3deg);}
.modu-flow-page .mp-chip-e{left:9%;top:70%;transform:rotate(-1deg);}
.modu-flow-page .mp-chip-f{left:42%;top:82%;transform:rotate(2deg);}
.modu-flow-page .mp-source-note{
  position:absolute;
  left:2%;
  bottom:-3%;
  width:82%;
  margin:0;
  font-size:.75rem;
  line-height:1.45;
  color:rgba(31,61,95,.48);
  transition:opacity .5s ease,transform .5s ease;
}
.modu-flow-page .mp-axis{
  position:absolute;
  left:37%;
  top:15%;
  width:15%;
  height:69%;
  z-index:4;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.modu-flow-page .mp-axis-line{
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:1px;
  background:rgba(46,123,181,.16);
}
.modu-flow-page .mp-axis-line i{
  position:absolute;
  left:-1px;
  top:0;
  width:3px;
  height:0;
  border-radius:3px;
  background:#2E7BB5;
  box-shadow:0 0 16px rgba(46,123,181,.35);
  transition:height 1.2s cubic-bezier(.2,.8,.2,1);
}
.modu-flow-page .mp-core{
  position:relative;
  z-index:2;
  width:120px;
  height:106px;
  border-radius:30px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:var(--modu-project-blue);
  box-shadow:0 24px 60px rgba(31,61,95,.20),0 0 0 8px rgba(46,123,181,.045);
  transition:transform .7s cubic-bezier(.22,.82,.22,1),box-shadow .7s ease;
}
.modu-flow-page .mp-core strong{
  font-family:Sora,Inter,sans-serif;
  font-size:1.35rem;
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.04em;
  color:#fff;
}
.modu-flow-page .mp-command{
  position:relative;
  z-index:3;
  margin-top:28px;
  width:150px;
  height:36px;
  text-align:center;
}
.modu-flow-page .mp-command span{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:Sora,Inter,sans-serif;
  font-size:1.08rem;
  line-height:1;
  font-weight:850;
  letter-spacing:-.02em;
  color:rgba(31,61,95,.34);
  opacity:0;
  transform:translateY(8px);
  transition:opacity .35s ease,transform .5s cubic-bezier(.22,.82,.22,1),color .35s ease;
}
.modu-flow-page .mp-axis-dots{
  position:absolute;
  right:-7px;
  top:25%;
  bottom:23%;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.modu-flow-page .mp-axis-dots i{
  width:7px;height:7px;border-radius:50%;background:rgba(46,123,181,.18);transition:background .35s ease,transform .35s ease,box-shadow .35s ease;
}
.modu-flow-page .mp-result{
  position:absolute;
  right:4.4%;
  top:16%;
  width:40.5%;
  height:68%;
  z-index:3;
  padding:24px 28px 22px;
  border-left:1px solid rgba(31,61,95,.09);
}
.modu-flow-page .mp-result-kicker{
  margin-bottom:19px;
  font-family:Sora,Inter,sans-serif;
  font-size:.68rem;
  font-weight:850;
  letter-spacing:.18em;
  color:#2E7BB5;
  opacity:.55;
  transition:opacity .5s ease;
}
.modu-flow-page .mp-result-row{
  position:relative;
  min-height:112px;
  padding:16px 0 14px;
  border-top:1px solid rgba(31,61,95,.085);
  opacity:.42;
  transition:opacity .45s ease,transform .65s cubic-bezier(.22,.82,.22,1);
  transform:translateX(10px);
}
.modu-flow-page .mp-row-heading{display:flex;align-items:baseline;gap:18px;}
.modu-flow-page .mp-row-heading b{
  font-family:Sora,Inter,sans-serif;
  font-size:.76rem;
  font-weight:900;
  color:#2E7BB5;
}
.modu-flow-page .mp-row-heading strong{
  font-family:Sora,Inter,sans-serif;
  font-size:1.4rem;
  line-height:1.05;
  font-weight:850;
  letter-spacing:-.04em;
  color:var(--modu-project-blue);
}
.modu-flow-page .mp-row-items{
  display:flex;
  gap:10px;
  margin:14px 0 0 42px;
}
.modu-flow-page .mp-slot{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:7px 12px;
  border-radius:10px;
  background:rgba(46,123,181,.055);
  border:1px solid rgba(46,123,181,.10);
  font-size:.79rem;
  font-weight:720;
  color:var(--modu-project-blue);
  opacity:0;
  transform:translateY(6px);
  transition:opacity .35s ease,transform .45s cubic-bezier(.22,.82,.22,1),background .35s ease,border-color .35s ease;
}
.modu-flow-page .mp-finale{
  position:absolute;
  left:50%;
  bottom:30px;
  width:74%;
  transform:translate(-50%,12px);
  text-align:center;
  z-index:8;
  opacity:0;
  transition:opacity .6s ease,transform .7s cubic-bezier(.22,.82,.22,1);
  pointer-events:none;
}
.modu-flow-page .mp-finale strong{
  display:block;
  font-family:Sora,Inter,sans-serif;
  font-size:clamp(1.18rem,1.5vw,1.55rem);
  line-height:1.15;
  letter-spacing:-.045em;
  color:var(--modu-project-blue);
}
.modu-flow-page .mp-finale span{
  display:block;
  margin-top:7px;
  font-size:.82rem;
  font-weight:650;
  color:rgba(31,61,95,.62);
}
.modu-flow-page .mp-flight-layer{position:absolute;inset:0;z-index:10;pointer-events:none;}
.modu-flow-page .mp-mover{
  position:absolute;
  margin:0;
  display:flex;
  align-items:center;
  gap:12px;
  height:48px;
  padding:0 18px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(46,123,181,.16);
  box-shadow:0 15px 35px rgba(31,61,95,.09);
  font-family:Inter,Arial,sans-serif;
  font-size:.94rem;
  font-weight:720;
  color:var(--modu-project-blue);
  transition:transform 1s cubic-bezier(.22,.82,.22,1),opacity .25s ease;
  will-change:transform,opacity;
}
.modu-flow-page .mp-mover i{width:22px;height:1px;background:rgba(46,123,181,.40);}
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-command [data-mp-command="idle"],
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-command [data-mp-command="order"],
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-command [data-mp-command="connect"],
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-command [data-mp-command="activate"]{
  opacity:1;
  transform:translateY(0);
  color:#2E7BB5;
}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-axis-line i,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-axis-line i,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-axis-line i,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-axis-line i{height:100%;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-core{transform:scale(1.035);box-shadow:0 26px 64px rgba(31,61,95,.22),0 0 0 10px rgba(46,123,181,.06);}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-a{transform:translate(4px,70px) rotate(0deg);}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-b{transform:translate(-54px,8px) rotate(0deg);}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-c{transform:translate(9px,18px) rotate(0deg);}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-d{transform:translate(-62px,-44px) rotate(0deg);}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-e{transform:translate(0,-34px) rotate(0deg);}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-f{transform:translate(-57px,-96px) rotate(0deg);}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-source-note,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-source-note,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-source-note,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-source-note{opacity:0;transform:translateY(6px);}
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-axis-dots i:nth-child(1),
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-axis-dots i:nth-child(1),
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-axis-dots i:nth-child(1){background:#2E7BB5;transform:scale(1.2);box-shadow:0 0 0 6px rgba(46,123,181,.08);}
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-axis-dots i,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-axis-dots i{background:#2E7BB5;transform:scale(1.2);box-shadow:0 0 0 6px rgba(46,123,181,.08);}
.modu-flow-page .mp-result-row.is-active{opacity:1;transform:translateX(0);}
.modu-flow-page .mp-slot.is-filled{opacity:1;transform:translateY(0);background:rgba(46,123,181,.085);border-color:rgba(46,123,181,.16);}
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-result-kicker{opacity:1;}
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-finale{opacity:1;transform:translate(-50%,0);}
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-core{transform:scale(.94);box-shadow:0 16px 42px rgba(31,61,95,.14),0 0 0 6px rgba(46,123,181,.035);}
.modu-flow-page .mp-stage.is-resetting{opacity:0;transition:opacity .65s ease;}
.modu-flow-page .mp-stage:not(.is-resetting){transition:opacity .65s ease;}

@media(max-width:1420px){
  .modu-flow-page .flow-noise-grid{grid-template-columns:minmax(0,.88fr) minmax(560px,1.12fr);gap:clamp(38px,4vw,64px);}
  .modu-flow-page .mp-stage{min-height:570px;}
  .modu-flow-page .mp-chip{font-size:.88rem;min-width:124px;padding:0 15px;}
  .modu-flow-page .mp-result{width:41.5%;right:3.8%;}
}
@media(max-width:1180px){
  .modu-flow-page .mp-stage{max-width:900px;margin-inline:auto;min-height:600px;}
}
@media(max-width:760px){
  .modu-flow-page .modu-flow-masterpiece .mp-stage{display:none;}
}
@media(prefers-reduced-motion:reduce){
  .modu-flow-page .mp-stage *{transition:none!important;animation:none!important;}
}


/* MODU v0.7.49 — DEL RUIDO AL CONTROL · ART DIRECTION FINAL */
.modu-flow-page .modu-flow-masterpiece{width:min(112%,980px);margin-left:-2%;}
.modu-flow-page .mp-stage{
  min-height:640px;
  border-radius:38px;
  background:
    radial-gradient(circle at 16% 46%,rgba(46,123,181,.045),transparent 31%),
    radial-gradient(circle at 83% 43%,rgba(139,197,241,.065),transparent 36%),
    linear-gradient(145deg,#fffefa 0%,#faf7f1 47%,#f5f9fc 100%);
  border-color:rgba(31,61,95,.055);
  box-shadow:0 38px 100px rgba(31,61,95,.085);
}
.modu-flow-page .mp-source{left:4.2%;top:14.5%;width:32.5%;height:72%;}
.modu-flow-page .mp-chip{
  min-width:128px;
  height:48px;
  border-radius:14px;
  box-shadow:0 10px 26px rgba(31,61,95,.045);
  transition:transform 1.05s cubic-bezier(.2,.82,.2,1),opacity .42s ease,box-shadow .42s ease,border-color .42s ease;
}
/* Desorden espacial real, sin rotaciones */
.modu-flow-page .mp-chip-a{left:1%;top:4%;transform:none;}
.modu-flow-page .mp-chip-b{left:42%;top:29%;transform:none;}
.modu-flow-page .mp-chip-c{left:4%;top:58%;transform:none;}
.modu-flow-page .mp-chip-d{left:29%;top:79%;transform:none;}
.modu-flow-page .mp-chip-e{left:47%;top:8%;transform:none;}
.modu-flow-page .mp-chip-f{left:0;top:37%;transform:none;}
.modu-flow-page .mp-source-note{left:1%;bottom:-2%;width:88%;font-size:.77rem;color:rgba(31,61,95,.52);}

.modu-flow-page .mp-axis{left:37.4%;top:13.5%;width:15.5%;height:72%;}
.modu-flow-page .mp-core{width:124px;height:108px;border-radius:29px;}
.modu-flow-page .mp-command{margin-top:32px;width:188px;height:46px;}
.modu-flow-page .mp-command span{
  font-size:1.42rem;
  font-weight:900;
  letter-spacing:.04em;
  color:rgba(31,61,95,.28);
  transform:translateY(12px) scale(.96);
  transition:opacity .38s ease,transform .58s cubic-bezier(.18,.86,.2,1),color .35s ease;
}
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-command [data-mp-command="idle"]{font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(31,61,95,.42);}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-command [data-mp-command="order"],
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-command [data-mp-command="connect"],
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-command [data-mp-command="activate"]{
  opacity:1;transform:translateY(0) scale(1);color:#2E7BB5;
}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-core{
  transform:scale(1.045);
  box-shadow:0 28px 68px rgba(31,61,95,.22),0 0 0 11px rgba(46,123,181,.055);
}

/* Orden intermedio en tres carriles limpios */
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-a{transform:translate(8px,74px);}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-b{transform:translate(-54px,-38px);}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-c{transform:translate(8px,-8px);}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-d{transform:translate(-8px,-104px);}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-e{transform:translate(-60px,280px);}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-f{transform:translate(8px,90px);}

/* Resultado editorial, sin apariencia de dashboard */
.modu-flow-page .mp-result{right:3.8%;top:15%;width:41.5%;height:69%;padding:26px 26px 18px;border-left:1px solid rgba(31,61,95,.075);}
.modu-flow-page .mp-result-kicker{font-size:.7rem;letter-spacing:.2em;opacity:.48;margin-bottom:16px;}
.modu-flow-page .mp-result-row{min-height:116px;padding:18px 0 15px;border-top-color:rgba(31,61,95,.075);}
.modu-flow-page .mp-row-heading strong{font-size:1.52rem;}
.modu-flow-page .mp-row-items{margin:13px 0 0 42px;gap:18px;}
.modu-flow-page .mp-slot{
  min-height:auto;padding:0;border:0;border-radius:0;background:transparent!important;
  font-size:.88rem;font-weight:720;color:rgba(31,61,95,.72);
}
.modu-flow-page .mp-slot + .mp-slot:before{content:"—";margin-right:18px;color:rgba(46,123,181,.46);}
.modu-flow-page .mp-slot.is-filled{background:transparent;border:0;}

/* Movimiento más sobrio */
.modu-flow-page .mp-mover{
  height:48px;border-radius:14px;box-shadow:0 16px 38px rgba(31,61,95,.085);
  transition:none;
}
.modu-flow-page .mp-flight-layer{z-index:12;}

/* Clímax final: el mensaje sustituye temporalmente a la interfaz */
.modu-flow-page .mp-finale{
  left:50%;top:50%;bottom:auto;width:82%;
  transform:translate(-50%,-44%) scale(.985);
  padding:30px 26px;text-align:center;z-index:20;
  opacity:0;
  transition:opacity .68s ease,transform .85s cubic-bezier(.18,.86,.2,1);
}
.modu-flow-page .mp-finale strong{font-size:clamp(1.72rem,2.45vw,2.5rem);line-height:1.08;letter-spacing:-.055em;}
.modu-flow-page .mp-finale span{margin-top:12px;font-size:clamp(.9rem,1.05vw,1.05rem);color:rgba(31,61,95,.68);}
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-source,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-axis,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-result,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-stage-top{
  opacity:.10;filter:blur(1.5px);transition:opacity .6s ease,filter .6s ease;
}
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-finale{
  opacity:1;transform:translate(-50%,-50%) scale(1);
}
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-finale{opacity:0;}
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-source,
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-source,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-source,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-source,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-source,
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-axis,
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-axis,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-axis,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-axis,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-axis,
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-result,
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-result,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-result,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-result,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-result,
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-stage-top,
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-stage-top,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-stage-top,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-stage-top,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-stage-top{
  opacity:1;filter:none;transition:opacity .55s ease,filter .55s ease;
}
.modu-flow-page .mp-stage.is-resetting{opacity:0;transition:opacity .72s ease;}

@media(max-width:1420px){
  .modu-flow-page .modu-flow-masterpiece{width:106%;margin-left:-1%;}
  .modu-flow-page .mp-stage{min-height:600px;}
  .modu-flow-page .mp-command span{font-size:1.25rem;}
}
@media(max-width:1180px){
  .modu-flow-page .modu-flow-masterpiece{width:100%;margin-left:0;}
}


/* MODU v0.7.50 — ORQUESTACIÓN PREMIUM · EL SISTEMA TOMA EL CONTROL */
.modu-flow-page .modu-flow-masterpiece{
  width:min(122%,1080px);
  margin-left:-4%;
}
.modu-flow-page .mp-stage{
  min-height:660px;
  border-radius:30px;
  box-shadow:0 30px 78px rgba(31,61,95,.085);
  background:
    radial-gradient(circle at 18% 42%,rgba(46,123,181,.05),transparent 28%),
    radial-gradient(circle at 84% 44%,rgba(139,197,241,.075),transparent 32%),
    linear-gradient(145deg,#fffefa 0%,#faf7f1 48%,#f5f9fc 100%);
}
.modu-flow-page .mp-stage:before{opacity:.48;background-size:62px 62px;}
.modu-flow-page .mp-stage-top{top:30px;left:36px;right:36px;font-size:.72rem;letter-spacing:.2em;}
.modu-flow-page .mp-source{left:3.2%;top:14%;width:36%;height:72%;}
.modu-flow-page .mp-chip{
  min-width:144px;height:50px;padding:0 18px;border-radius:12px;
  font-size:1rem;font-weight:740;box-shadow:0 12px 28px rgba(31,61,95,.045);
  transform:none!important;
}
.modu-flow-page .mp-chip i{width:24px;background:rgba(46,123,181,.42);}
/* Desorden real sin rotaciones: tensión espacial, no inclinación */
.modu-flow-page .mp-chip-a{left:1%;top:7%;}
.modu-flow-page .mp-chip-b{left:48%;top:31%;}
.modu-flow-page .mp-chip-c{left:4%;top:48%;}
.modu-flow-page .mp-chip-d{left:39%;top:67%;}
.modu-flow-page .mp-chip-e{left:52%;top:2%;}
.modu-flow-page .mp-chip-f{left:8%;top:82%;}
.modu-flow-page .mp-source-note{left:2%;bottom:-2%;width:92%;font-size:.78rem;color:rgba(31,61,95,.50);}

.modu-flow-page .mp-axis{left:40%;top:13%;width:13%;height:72%;}
.modu-flow-page .mp-axis-line{background:rgba(46,123,181,.10);}
.modu-flow-page .mp-axis-line i{width:2px;left:-.5px;box-shadow:0 0 12px rgba(46,123,181,.25);}
.modu-flow-page .mp-core{
  width:112px;height:98px;border-radius:22px;
  box-shadow:0 22px 52px rgba(31,61,95,.18),0 0 0 6px rgba(46,123,181,.035);
}
.modu-flow-page .mp-core strong{font-size:1.28rem;}
.modu-flow-page .mp-command{
  position:absolute;left:50%;top:50%;width:260px;height:72px;margin:0;
  transform:translate(-50%,-50%);pointer-events:none;
}
.modu-flow-page .mp-command span{
  font-size:clamp(1.9rem,2.6vw,2.7rem);font-weight:900;letter-spacing:-.055em;
  color:#2E7BB5;text-shadow:0 8px 28px rgba(46,123,181,.10);
}
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-command [data-mp-command="idle"]{
  font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(31,61,95,.42);
}
.modu-flow-page .mp-axis-dots{display:none;}

/* Ordenar: tres parejas alineadas, aún sin desplazarse */
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-a{transform:translate(4px,86px)!important;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-b{transform:translate(-96px,-18px)!important;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-c{transform:translate(2px,-12px)!important;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-d{transform:translate(-76px,-104px)!important;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-e{transform:translate(-116px,304px)!important;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-f{transform:translate(4px,-16px)!important;}
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-chip-a{transform:translate(4px,86px)!important;}
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-chip-b{transform:translate(-96px,-18px)!important;}
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-chip-c{transform:translate(2px,-12px)!important;}
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-chip-d{transform:translate(-76px,-104px)!important;}
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-chip-e{transform:translate(-116px,304px)!important;}
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-chip-f{transform:translate(4px,-16px)!important;}
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-chip-a{transform:translate(4px,86px)!important;}
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-chip-b{transform:translate(-96px,-18px)!important;}
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-chip-c{transform:translate(2px,-12px)!important;}
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-chip-d{transform:translate(-76px,-104px)!important;}
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-chip-e{transform:translate(-116px,304px)!important;}
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-chip-f{transform:translate(4px,-16px)!important;}

.modu-flow-page .mp-connect-lines{position:absolute;inset:0;pointer-events:none;z-index:0;}
.modu-flow-page .mp-connect-line{
  position:absolute;height:1px;width:0;background:linear-gradient(90deg,rgba(46,123,181,.18),rgba(46,123,181,.72),rgba(46,123,181,.18));
  opacity:0;transition:width .75s cubic-bezier(.2,.8,.2,1),opacity .35s ease;
}
.modu-flow-page .mp-connect-line-1{left:21%;top:31%;}
.modu-flow-page .mp-connect-line-2{left:21%;top:50%;}
.modu-flow-page .mp-connect-line-3{left:21%;top:69%;}
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-connect-line,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-connect-line{width:38%;opacity:1;}

/* Resultado con más presencia y menos apariencia de diagrama */
.modu-flow-page .mp-result{right:2.8%;top:13%;width:45%;height:73%;padding:28px 30px 20px;border-left-color:rgba(31,61,95,.07);}
.modu-flow-page .mp-result-kicker{font-size:.74rem;letter-spacing:.22em;margin-bottom:18px;opacity:.62;}
.modu-flow-page .mp-result-row{min-height:128px;padding:21px 0 18px;opacity:.24;}
.modu-flow-page .mp-row-heading{gap:20px;}
.modu-flow-page .mp-row-heading b{font-size:.84rem;}
.modu-flow-page .mp-row-heading strong{font-size:clamp(1.65rem,2vw,2rem);}
.modu-flow-page .mp-row-items{margin:15px 0 0 46px;gap:20px;}
.modu-flow-page .mp-slot{font-size:.98rem;font-weight:740;color:rgba(31,61,95,.78);}
.modu-flow-page .mp-result-row.is-active{opacity:1;transform:translateX(0);}

.modu-flow-page .mp-pair-mover{
  position:absolute;display:flex;align-items:center;justify-content:center;gap:12px;
  min-height:48px;padding:0 18px;border-radius:12px;background:#fff;
  border:1px solid rgba(46,123,181,.15);box-shadow:0 16px 36px rgba(31,61,95,.08);
  font-family:Inter,Arial,sans-serif;font-size:.94rem;font-weight:740;color:var(--modu-project-blue);
  white-space:nowrap;will-change:transform,opacity;
}
.modu-flow-page .mp-pair-mover i{font-style:normal;color:#2E7BB5;font-weight:900;}

/* Cierre integrado: el resultado permanece como arquitectura de fondo */
.modu-flow-page .mp-finale{width:72%;padding:34px 30px;}
.modu-flow-page .mp-finale strong{font-size:clamp(2rem,3vw,3rem);}
.modu-flow-page .mp-finale span{font-size:clamp(.98rem,1.2vw,1.2rem);}
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-source,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-axis,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-stage-top{opacity:.06;filter:blur(2px);}
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-result{opacity:.26;filter:blur(.6px);}
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-finale{opacity:1;transform:translate(-50%,-50%) scale(1);}
.modu-flow-page .mp-stage.is-resetting{opacity:0;transition:opacity .72s ease;}

@media(max-width:1420px){
  .modu-flow-page .modu-flow-masterpiece{width:114%;margin-left:-2%;}
  .modu-flow-page .mp-stage{min-height:640px;}
}
@media(max-width:1180px){
  .modu-flow-page .modu-flow-masterpiece{width:100%;margin-left:0;}
  .modu-flow-page .mp-stage{min-height:620px;}
}


/* MODU v0.7.51 — nucleus-led command refinement */
.modu-flow-page .mp-source{z-index:3;}
.modu-flow-page .mp-result{z-index:4;}
.modu-flow-page .mp-axis{z-index:14;}
.modu-flow-page .mp-core,
.modu-flow-page .mp-command{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);}
.modu-flow-page .mp-core{
  width:118px;height:104px;border-radius:24px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  background:linear-gradient(180deg,#13212c 0%,#182b38 100%);
  box-shadow:0 24px 56px rgba(31,61,95,.17),0 0 0 6px rgba(46,123,181,.03);
  transition:opacity .46s ease, transform .52s cubic-bezier(.2,.8,.2,1), filter .46s ease, box-shadow .46s ease;
}
.modu-flow-page .mp-core strong{font-size:1.24rem;letter-spacing:-.04em;transition:opacity .35s ease;}
.modu-flow-page .mp-command{
  width:220px;height:94px;pointer-events:none;display:flex;align-items:center;justify-content:center;z-index:16;
}
.modu-flow-page .mp-command span{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.76) translateY(10px);
  opacity:0;filter:blur(8px);
  font-family:Sora,Inter,Arial,sans-serif;font-size:clamp(1.55rem,2.1vw,2rem);font-weight:850;
  letter-spacing:.14em;text-transform:uppercase;color:#2E7BB5;
  text-shadow:0 10px 30px rgba(46,123,181,.10);
  transition:opacity .5s ease, transform .7s cubic-bezier(.18,.82,.22,1), filter .55s ease, letter-spacing .55s ease;
  white-space:nowrap;
}
.modu-flow-page .mp-chip{border-radius:11px; box-shadow:0 12px 24px rgba(31,61,95,.042); background:rgba(255,255,255,.94);}
.modu-flow-page .mp-chip i{width:22px;background:rgba(46,123,181,.36);}
.modu-flow-page .mp-chip-a{left:3%;top:11%;}
.modu-flow-page .mp-chip-b{left:48%;top:23%;}
.modu-flow-page .mp-chip-c{left:10%;top:45%;}
.modu-flow-page .mp-chip-d{left:42%;top:71%;}
.modu-flow-page .mp-chip-e{left:56%;top:5%;}
.modu-flow-page .mp-chip-f{left:2%;top:79%;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-a,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-chip-a,
.modu-flow-page .mp-stage[data-mp-state="core-order"] .mp-chip-a,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-chip-a,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-chip-a{transform:translate(4px,72px)!important;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-b,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-chip-b,
.modu-flow-page .mp-stage[data-mp-state="core-order"] .mp-chip-b,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-chip-b,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-chip-b{transform:translate(-98px,10px)!important;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-c,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-chip-c,
.modu-flow-page .mp-stage[data-mp-state="core-order"] .mp-chip-c,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-chip-c,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-chip-c{transform:translate(5px,-8px)!important;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-d,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-chip-d,
.modu-flow-page .mp-stage[data-mp-state="core-order"] .mp-chip-d,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-chip-d,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-chip-d{transform:translate(-82px,-106px)!important;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-e,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-chip-e,
.modu-flow-page .mp-stage[data-mp-state="core-order"] .mp-chip-e,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-chip-e,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-chip-e{transform:translate(-128px,284px)!important;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-chip-f,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-chip-f,
.modu-flow-page .mp-stage[data-mp-state="core-order"] .mp-chip-f,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-chip-f,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-chip-f{transform:translate(10px,-28px)!important;}
.modu-flow-page .mp-axis-line{background:transparent;}
.modu-flow-page .mp-axis-line i{width:1.5px;background:linear-gradient(180deg,rgba(46,123,181,0) 0%,rgba(46,123,181,.26) 35%,rgba(46,123,181,.10) 100%);box-shadow:none;}
.modu-flow-page .mp-axis-dots{display:none;}
.modu-flow-page .mp-connect-line{height:1.5px;background:linear-gradient(90deg,rgba(46,123,181,.02),rgba(46,123,181,.58),rgba(46,123,181,.02));}
.modu-flow-page .mp-connect-line-1{left:23%;top:34%;}
.modu-flow-page .mp-connect-line-2{left:23%;top:52%;}
.modu-flow-page .mp-connect-line-3{left:23%;top:69%;}
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-connect-line,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-connect-line,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-connect-line{width:33%;opacity:1;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-core{opacity:0;transform:translate(-50%,-50%) scale(.86);filter:blur(3px);box-shadow:none;}
.modu-flow-page .mp-stage[data-mp-state="core-order"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-core{opacity:1;transform:translate(-50%,-50%) scale(1);filter:none;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-command [data-mp-command="order"],
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-command [data-mp-command="connect"],
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-command [data-mp-command="activate"]{
  opacity:1;filter:blur(0);transform:translate(-50%,-50%) scale(1) translateY(0);letter-spacing:.10em;
}
.modu-flow-page .mp-stage[data-mp-state="core-order"] .mp-command span,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-command span,
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-command span,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-command span,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-command span{opacity:0!important;filter:blur(8px);transform:translate(-50%,-50%) scale(.78) translateY(10px);}
.modu-flow-page .mp-result{right:3%;top:13.6%;width:44%;height:72%;padding:30px 32px 20px;}
.modu-flow-page .mp-result-row{min-height:128px;opacity:.18;transform:translateX(10px);transition:opacity .6s ease, transform .7s cubic-bezier(.2,.8,.2,1);}
.modu-flow-page .mp-row-heading strong{font-size:clamp(1.72rem,2vw,2.05rem);}
.modu-flow-page .mp-slot{font-size:1.03rem;font-weight:750;color:rgba(31,61,95,.84);}
.modu-flow-page .mp-result-row.is-active{opacity:1;transform:translateX(0);}
.modu-flow-page .mp-pair-mover{
  gap:14px; min-height:48px; padding:0 16px 0 18px; border-radius:999px;
  background:rgba(255,255,255,.96); border:1px solid rgba(46,123,181,.10);
  box-shadow:0 14px 30px rgba(31,61,95,.07); font-size:.92rem; font-weight:760;
}
.modu-flow-page .mp-pair-mover i{display:block;width:22px;height:1px;background:linear-gradient(90deg,rgba(46,123,181,.24),rgba(46,123,181,.80),rgba(46,123,181,.24));font-size:0;}
.modu-flow-page .mp-finale{width:72%; padding:36px 34px; background:transparent;}
.modu-flow-page .mp-finale strong{font-size:clamp(2.05rem,3vw,3.05rem);}
.modu-flow-page .mp-finale span{font-size:clamp(1rem,1.2vw,1.18rem);}
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-source,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-axis,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-stage-top{opacity:.08;filter:blur(2px);}
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-result{opacity:.28;filter:blur(.55px);}
@media(max-width:1420px){
  .modu-flow-page .mp-command span{font-size:1.58rem;}
}


/* MODU v0.7.52 — masterpiece nucleus choreography */
.modu-flow-page .mp-core,
.modu-flow-page .mp-command{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);}
.modu-flow-page .mp-core{
  width:140px;height:112px;border-radius:26px;overflow:hidden;
  background:linear-gradient(180deg,#13212c 0%,#172836 55%,#1a2d3a 100%);
  border:1px solid rgba(143,197,241,.12);
  box-shadow:0 22px 52px rgba(31,61,95,.16), inset 0 1px 0 rgba(255,255,255,.03);
  transition:transform .72s cubic-bezier(.18,.82,.22,1), box-shadow .72s ease, background .72s ease, border-color .72s ease;
}
.modu-flow-page .mp-core::before{
  content:""; position:absolute; inset:10px; border-radius:20px;
  border:1px solid rgba(255,255,255,.03); pointer-events:none;
}
.modu-flow-page .mp-core::after{
  content:""; position:absolute; left:50%; bottom:13px; transform:translateX(-50%);
  width:34px; height:1px; border-radius:999px;
  background:linear-gradient(90deg,rgba(143,197,241,0),rgba(143,197,241,.78),rgba(143,197,241,0));
  opacity:.46; transition:width .6s ease, opacity .6s ease, transform .6s ease;
}
.modu-flow-page .mp-core strong{
  position:relative; z-index:2; display:block; line-height:.95; font-size:1.22rem; letter-spacing:-.05em;
  transition:opacity .48s ease, transform .62s cubic-bezier(.18,.82,.22,1), filter .55s ease;
}
.modu-flow-page .mp-command{width:140px;height:112px;pointer-events:none;z-index:17;}
.modu-flow-page .mp-command span{
  width:100%; text-align:center; white-space:nowrap; line-height:1;
  color:#F7FBFE; text-shadow:none; letter-spacing:.12em; font-weight:760;
  font-size:clamp(1.08rem,1.35vw,1.26rem);
  transform:translate(-50%,-50%) scale(.70) translateY(4px);
  opacity:0; filter:blur(12px);
  transition:opacity .62s ease, transform .86s cubic-bezier(.16,.82,.18,1), filter .78s ease, letter-spacing .72s ease;
}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-core{
  transform:translate(-50%,-50%) scale(1.02);
  background:linear-gradient(180deg,#162635 0%,#1a3144 55%,#183144 100%);
  border-color:rgba(143,197,241,.18);
  box-shadow:0 26px 58px rgba(31,61,95,.17), inset 0 1px 0 rgba(255,255,255,.04);
}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-core strong,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-core strong,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-core strong{
  opacity:.14; filter:blur(2px); transform:translateY(-1px) scale(.93);
}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-core::after,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-core::after,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-core::after{
  width:54px; opacity:.78;
}
.modu-flow-page .mp-stage[data-mp-state="core-order"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-core{
  transform:translate(-50%,-50%) scale(1); background:linear-gradient(180deg,#13212c 0%,#172836 55%,#1a2d3a 100%); border-color:rgba(143,197,241,.12);
}
.modu-flow-page .mp-stage[data-mp-state="core-order"] .mp-core strong,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-core strong,
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-core strong,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-core strong,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-core strong{
  opacity:1; filter:none; transform:translateY(0) scale(1);
}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-command [data-mp-command="order"],
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-command [data-mp-command="connect"],
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-command [data-mp-command="activate"]{
  opacity:1; filter:blur(0); transform:translate(-50%,-50%) scale(1) translateY(0); letter-spacing:.10em;
}
.modu-flow-page .mp-stage[data-mp-state="core-order"] .mp-command span,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-command span,
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-command span,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-command span,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-command span{
  opacity:0!important; filter:blur(12px); transform:translate(-50%,-50%) scale(.72) translateY(4px);
}
.modu-flow-page .mp-axis-line i{
  width:1px; background:linear-gradient(180deg,rgba(46,123,181,0) 0%,rgba(46,123,181,.18) 35%,rgba(46,123,181,.07) 100%);
}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-axis-line i,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-axis-line i,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-axis-line i{
  background:linear-gradient(180deg,rgba(46,123,181,0) 0%,rgba(143,197,241,.32) 35%,rgba(46,123,181,.10) 100%);
}
.modu-flow-page .mp-source,
.modu-flow-page .mp-result,
.modu-flow-page .mp-stage-top,
.modu-flow-page .mp-axis,
.modu-flow-page .mp-connect-lines{transition:opacity .65s ease, filter .65s ease;}
@media(max-width:1420px){
  .modu-flow-page .mp-core{width:132px;height:108px;}
  .modu-flow-page .mp-command{width:132px;height:108px;}
  .modu-flow-page .mp-command span{font-size:1.08rem;}
}


/* MODU v0.7.53 — final motion-branding refinement */
.modu-flow-page .mp-core{
  width:146px;height:114px;border-radius:24px;
  background:linear-gradient(180deg,#13212c 0%,#162734 58%,#192c39 100%);
  border:1px solid rgba(139,197,241,.105);
  box-shadow:0 18px 42px rgba(31,61,95,.135), inset 0 1px 0 rgba(255,255,255,.025);
}
.modu-flow-page .mp-core::before{inset:11px;border-radius:17px;border-color:rgba(255,255,255,.022);}
.modu-flow-page .mp-core::after{bottom:14px;width:30px;opacity:.38;}
.modu-flow-page .mp-core strong{font-size:1.2rem;letter-spacing:-.045em;}
.modu-flow-page .mp-command{width:146px;height:114px;overflow:hidden;}
.modu-flow-page .mp-command span{
  font-size:clamp(1rem,1.22vw,1.16rem);font-weight:720;letter-spacing:.16em;color:#F4F8FB;
  opacity:0;filter:blur(9px);transform:translate(-50%,-50%) scale(.76) translateY(3px);
  transition:opacity .42s ease, transform .72s cubic-bezier(.16,.82,.18,1), filter .54s ease, letter-spacing .58s ease;
}
/* Precise optical centering per word */
.modu-flow-page .mp-command [data-mp-command="order"]{margin-left:1px;margin-top:-1px;}
.modu-flow-page .mp-command [data-mp-command="connect"]{margin-left:-2px;margin-top:-1px;letter-spacing:.135em;}
.modu-flow-page .mp-command [data-mp-command="activate"]{margin-left:1px;margin-top:-2px;}
/* Persistent identity vessel: only the MODU FLOW lettering recedes */
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-core{
  opacity:1;filter:none;transform:translate(-50%,-50%) scale(1.012);
  background:linear-gradient(180deg,#142633 0%,#173044 58%,#173347 100%);
  border-color:rgba(139,197,241,.16);
  box-shadow:0 20px 48px rgba(31,61,95,.14), inset 0 1px 0 rgba(255,255,255,.03);
}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-core strong,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-core strong,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-core strong{
  opacity:0;filter:blur(5px);transform:scale(.84);
}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-core::after,
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-core::after,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-core::after{width:48px;opacity:.70;}
.modu-flow-page .mp-stage[data-mp-state="order"] .mp-command [data-mp-command="order"],
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-command [data-mp-command="connect"],
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-command [data-mp-command="activate"]{
  opacity:1;visibility:visible;filter:blur(0);transform:translate(-50%,-50%) scale(1) translateY(0);letter-spacing:.12em;
}
/* True exit: no blurred ghost remains when MODU FLOW returns */
.modu-flow-page .mp-stage[data-mp-state="core-order"] .mp-command span,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-command span,
.modu-flow-page .mp-stage[data-mp-state="core-activate"] .mp-command span,
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-command span,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-command span,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-command span{
  opacity:0!important;filter:blur(0);transform:translate(-50%,-50%) scale(.86) translateY(-2px);visibility:hidden;
  transition:opacity .28s ease, transform .38s cubic-bezier(.2,.8,.2,1), visibility 0s linear .30s;
}
.modu-flow-page .mp-stage[data-mp-state="core-order"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="core-activate"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-core,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-core{
  opacity:1;filter:none;transform:translate(-50%,-50%) scale(1);
}
.modu-flow-page .mp-stage[data-mp-state="core-order"] .mp-core strong,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-core strong,
.modu-flow-page .mp-stage[data-mp-state="core-activate"] .mp-core strong,
.modu-flow-page .mp-stage[data-mp-state="idle"] .mp-core strong,
.modu-flow-page .mp-stage[data-mp-state="result"] .mp-core strong,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-core strong{opacity:1;filter:none;transform:scale(1);}
/* CONNECT becomes a distinct, elegant act */
.modu-flow-page .mp-connect-line{
  height:1px;transform-origin:left center;transform:scaleX(0);width:38%;opacity:0;
  background:linear-gradient(90deg,rgba(46,123,181,0),rgba(112,178,224,.78),rgba(46,123,181,.08));
  transition:transform .82s cubic-bezier(.18,.82,.22,1),opacity .28s ease;
}
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-connect-line,
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-connect-line,
.modu-flow-page .mp-stage[data-mp-state="activate"] .mp-connect-line,
.modu-flow-page .mp-stage[data-mp-state="core-activate"] .mp-connect-line{
  width:38%;opacity:1;transform:scaleX(1);
}
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-connect-line-1{transition-delay:.02s;}
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-connect-line-2{transition-delay:.10s;}
.modu-flow-page .mp-stage[data-mp-state="connect"] .mp-connect-line-3{transition-delay:.18s;}
.modu-flow-page .mp-stage[data-mp-state="core-connect"] .mp-connect-line{
  animation:mpConnectPulse .9s ease-out 1;
}
@keyframes mpConnectPulse{
  0%{filter:brightness(1);opacity:.82;}
  45%{filter:brightness(1.22);opacity:1;}
  100%{filter:brightness(1);opacity:.9;}
}
/* ACTIVATE hands control back to MODU before the result settles */
.modu-flow-page .mp-stage[data-mp-state="core-activate"] .mp-source{opacity:.12;}
.modu-flow-page .mp-stage[data-mp-state="core-activate"] .mp-result{opacity:.62;}
.modu-flow-page .mp-stage[data-mp-state="core-activate"] .mp-core{box-shadow:0 20px 48px rgba(31,61,95,.14),0 0 0 7px rgba(46,123,181,.035);}
/* Stronger, more editorial final state */
.modu-flow-page .mp-result{padding:28px 34px 20px;}
.modu-flow-page .mp-result-row{opacity:.14;}
.modu-flow-page .mp-result-row.is-active{opacity:1;}
.modu-flow-page .mp-row-heading strong{font-size:clamp(1.8rem,2.1vw,2.14rem);font-weight:760;letter-spacing:-.035em;}
.modu-flow-page .mp-row-heading b{font-size:.8rem;letter-spacing:.18em;color:#2E7BB5;}
.modu-flow-page .mp-row-items{margin-left:48px;gap:18px;}
.modu-flow-page .mp-slot{font-size:1.02rem;font-weight:680;}
/* Cleaner finale and softer circular reset */
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-source,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-axis,
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-stage-top{opacity:.035;filter:blur(1px);}
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-result{opacity:.16;filter:blur(.35px);transform:scale(.995);}
.modu-flow-page .mp-stage[data-mp-state="finale"] .mp-finale{opacity:1;transform:translate(-50%,-50%) scale(1);}
.modu-flow-page .mp-stage.is-resetting{opacity:.12;transform:scale(.997);transition:opacity .62s ease,transform .62s ease;}
.modu-flow-page .mp-stage:not(.is-resetting){transition:opacity .62s ease,transform .62s ease;}
@media(max-width:1420px){
  .modu-flow-page .mp-core,.modu-flow-page .mp-command{width:138px;height:110px;}
  .modu-flow-page .mp-command span{font-size:1rem;}
}


/* MODU v0.7.54 — Home MODU FLOW: sequential premium choreography */
.home-flow-final .home-flow-visual{
  --home-flow-cycle:12.1s;
  isolation:isolate;
}
.home-flow-final .flow-orbit .ring-2,
.home-flow-final .flow-orbit .ring-3,
.home-flow-final .flow-orbit .ring-4,
.home-flow-final .flow-orbit .orbit-dot,
.home-flow-final .flow-core-svg .flow-core-progress,
.home-flow-final .flow-core-svg .flow-spark-svg,
.home-flow-final .flow-fuse-runner{display:none!important;}
.home-flow-final .flow-orbit .ring-1{
  display:block!important;
  border:1px solid rgba(46,123,181,.14)!important;
  box-shadow:none!important;
  animation:none!important;
  opacity:.68;
  transition:opacity .7s ease, transform 1s cubic-bezier(.2,.8,.2,1), border-color .7s ease;
}
.home-flow-final .flow-core-svg .flow-core-base{
  stroke:rgba(46,123,181,.11)!important;
  stroke-width:1.2!important;
}
.home-flow-final .flow-center{
  border:1px solid rgba(46,123,181,.12)!important;
  box-shadow:0 22px 54px rgba(31,61,95,.12)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(248,251,253,.96))!important;
  overflow:hidden;
  transition:transform .7s cubic-bezier(.2,.8,.2,1), box-shadow .7s ease, border-color .7s ease, background .7s ease;
}
.home-flow-final .flow-center:after{
  content:"";position:absolute;left:50%;bottom:24px;transform:translateX(-50%);width:42px;height:1px;
  background:linear-gradient(90deg,transparent,rgba(46,123,181,.72),transparent);opacity:.55;
  transition:width .7s ease,opacity .7s ease;
}
.home-flow-final .flow-center img{transition:transform .75s cubic-bezier(.2,.8,.2,1),opacity .55s ease,filter .55s ease;}
.home-flow-final .flow-center strong,
.home-flow-final .flow-center em{
  position:absolute;left:50%;bottom:42px;transform:translateX(-50%);width:80%;text-align:center;
  font-family:Sora,Inter,sans-serif;font-style:normal;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  transition:opacity .55s ease, transform .65s cubic-bezier(.2,.8,.2,1), filter .55s ease;
}
.home-flow-final .flow-center strong{opacity:1;color:var(--modu-project-blue);}
.home-flow-final .flow-center em{opacity:0;color:#2E7BB5;transform:translateX(-50%) translateY(8px);filter:blur(4px);}
.home-flow-final .flow-node{
  opacity:.42!important;
  filter:saturate(.75);
  border:1px solid rgba(31,61,95,.07)!important;
  box-shadow:0 12px 26px rgba(31,61,95,.045)!important;
  background:rgba(255,255,255,.90)!important;
  transition:opacity .65s ease,transform .7s cubic-bezier(.2,.8,.2,1),box-shadow .7s ease,border-color .7s ease,background .7s ease,filter .7s ease!important;
}
.home-flow-final .flow-node-left{transform:translateY(-50%) scale(.985)!important;}
.home-flow-final .flow-node-right{transform:translateY(-50%) scale(.985)!important;}
.home-flow-final .flow-node-top{transform:translateX(-50%) scale(.985)!important;}
.home-flow-final .flow-node-bottom{transform:translateX(-50%) scale(.985)!important;}
.home-flow-final .flow-node .flow-icon,
.home-flow-final .flow-node h3,
.home-flow-final .flow-node p{transition:color .55s ease,opacity .55s ease,transform .55s ease;}
.home-flow-final .flow-node-line,
.home-flow-final .flow-node-dot{animation:none!important;transition:background .5s ease,box-shadow .5s ease,transform .55s ease,opacity .5s ease!important;}
.home-flow-final .flow-node-line{background:rgba(46,123,181,.16)!important;box-shadow:none!important;}
.home-flow-final .flow-node-dot{width:12px!important;height:12px!important;border:2px solid #fff!important;background:rgba(46,123,181,.38)!important;box-shadow:0 0 0 4px rgba(46,123,181,.07)!important;}
.home-flow-final .flow-node.is-active{
  opacity:1!important;filter:none;border-color:rgba(46,123,181,.18)!important;background:#fff!important;
  box-shadow:0 22px 46px rgba(31,61,95,.10)!important;
}
.home-flow-final .flow-node-left.is-active{transform:translateY(-50%) scale(1.025)!important;}
.home-flow-final .flow-node-right.is-active{transform:translateY(-50%) scale(1.025)!important;}
.home-flow-final .flow-node-top.is-active{transform:translateX(-50%) scale(1.025)!important;}
.home-flow-final .flow-node-bottom.is-active{transform:translateX(-50%) scale(1.025)!important;}
.home-flow-final .flow-node.is-active .flow-node-line,
.home-flow-final .flow-node.is-complete .flow-node-line{background:#2E7BB5!important;box-shadow:0 0 12px rgba(46,123,181,.20)!important;}
.home-flow-final .flow-node.is-active .flow-node-dot{
  background:#2E7BB5!important;box-shadow:0 0 0 7px rgba(46,123,181,.12),0 0 20px rgba(46,123,181,.28)!important;transform:scale(1.16)!important;
}
.home-flow-final .flow-node.is-complete{opacity:.88!important;filter:none;border-color:rgba(46,123,181,.11)!important;background:rgba(255,255,255,.95)!important;}
.home-flow-final .flow-node.is-complete .flow-node-dot{background:#2E7BB5!important;box-shadow:0 0 0 4px rgba(46,123,181,.10)!important;}
.home-flow-final .home-flow-visual:after{
  content:"";position:absolute;left:50%;top:50%;width:12px;height:12px;border-radius:50%;background:#2E7BB5;
  transform:translate(-50%,-50%) scale(.2);opacity:0;z-index:20;box-shadow:0 0 0 0 rgba(46,123,181,.18);
  transition:opacity .5s ease,transform .75s cubic-bezier(.2,.8,.2,1),box-shadow .8s ease;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="intake"]:after{
  opacity:1;transform:translate(-50%,-50%) scale(1);box-shadow:0 0 0 12px rgba(46,123,181,.08);
}
.home-flow-final .home-flow-visual[data-home-flow-stage="centralize"] .flow-center{
  transform:translate(-50%,-50%) scale(1.035)!important;border-color:rgba(46,123,181,.22)!important;
  box-shadow:0 28px 62px rgba(31,61,95,.15),0 0 0 12px rgba(46,123,181,.035)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="centralize"] .ring-1{
  opacity:1;transform:translate(-50%,-50%) scale(.985)!important;border-color:rgba(46,123,181,.25)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage^="step-"] .flow-center,
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center{
  border-color:rgba(46,123,181,.24)!important;
}
.home-flow-final .flow-center.is-final{
  background:linear-gradient(180deg,var(--modu-project-blue),#173044)!important;border-color:rgba(139,197,241,.22)!important;
  box-shadow:0 28px 64px rgba(31,61,95,.20)!important;
}
.home-flow-final .flow-center.is-final img{transform:translateY(-4px) scale(.96);filter:brightness(0) invert(1);}
.home-flow-final .flow-center.is-final strong{opacity:0;transform:translateX(-50%) translateY(-7px);filter:blur(3px);}
.home-flow-final .flow-center.is-final em{opacity:1;transform:translateX(-50%) translateY(0);filter:none;color:#8BC5F1;}
.home-flow-final .flow-center.is-final:after{width:64px;opacity:.9;}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-node,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-node{opacity:1!important;filter:none;}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .ring-1,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .ring-1{opacity:.92;border-color:rgba(46,123,181,.22)!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="resetting"]{opacity:.25;transition:opacity .65s ease;}
.home-flow-final .home-flow-visual:not([data-home-flow-stage="resetting"]){transition:opacity .65s ease;}
@media(max-width:1366px){
  .home-flow-final .flow-center strong,.home-flow-final .flow-center em{font-size:.66rem;bottom:38px;letter-spacing:.14em;}
}


/* MODU v0.7.55 — Home MODU FLOW motion-branding final responsive */
.home-flow-final{
  --flow-motion-blue:#2E7BB5;
  --flow-motion-navy:var(--modu-project-blue);
  --flow-motion-line:rgba(46,123,181,.28);
}

/* Neutralise legacy orbit/spark animations: movement now follows the narrative. */
.home-flow-final .flow-orbit,
.home-flow-final .flow-fuse-runner,
.home-flow-final .flow-spark-svg,
.home-flow-final .flow-core-progress{display:none!important;}
.home-flow-final.has-pulse-motion .orbit-dot,
.home-flow-final.has-pulse-motion .flow-node-dot,
.home-flow-final.has-pulse-motion .flow-node-line{animation:none!important;}

.home-flow-visual{
  --flow-center-box:clamp(186px,28%,208px);
  --flow-node-w:clamp(158px,22%,174px);
  --flow-node-h:clamp(124px,17.8%,138px);
  --flow-node-gap-side:clamp(22px,2vw,28px);
  --flow-node-gap-vertical:clamp(27px,2.4vw,34px);
  min-height:clamp(590px,48vw,690px)!important;
  isolation:isolate;
}
.home-flow-visual:before{
  opacity:.36!important;
  background:radial-gradient(circle at 50% 50%,rgba(46,123,181,.07),transparent 43%)!important;
}

.flow-center{
  background:linear-gradient(180deg,var(--modu-project-blue) 0%,#192C39 100%)!important;
  border:1px solid rgba(139,197,241,.12)!important;
  box-shadow:0 24px 58px rgba(31,61,95,.16)!important;
  transition:transform .72s cubic-bezier(.18,.82,.22,1),box-shadow .72s ease,background .72s ease!important;
}
.flow-center:before{
  content:"";position:absolute;inset:12px;border:1px solid rgba(255,255,255,.035);border-radius:50%;pointer-events:none;
}
.flow-center img{transition:opacity .55s ease,transform .72s cubic-bezier(.18,.82,.22,1),filter .55s ease!important;}
.flow-center strong{letter-spacing:.16em!important;font-size:.72rem!important;transition:opacity .48s ease,transform .65s ease!important;}
.flow-center em{
  width:76%;font-style:normal;font-family:Sora,Inter,Arial,sans-serif;font-weight:760!important;
  font-size:clamp(.92rem,1.25vw,1.12rem)!important;line-height:1.14!important;letter-spacing:.08em!important;
  text-transform:uppercase;text-align:center;color:#fff!important;
  opacity:0;transform:translateY(8px) scale(.92);filter:blur(5px);
  transition:opacity .62s ease,transform .78s cubic-bezier(.18,.82,.22,1),filter .62s ease!important;
}
.flow-center.is-final img{opacity:.14!important;transform:scale(.86)!important;filter:blur(1px);}
.flow-center.is-final strong{opacity:0!important;transform:translateY(-5px)!important;}
.flow-center.is-final em{opacity:1!important;transform:translateY(0) scale(1)!important;filter:blur(0)!important;}
.home-flow-visual[data-home-flow-stage="consolidate"] .flow-center,
.home-flow-visual[data-home-flow-stage="complete"] .flow-center,
.home-flow-visual[data-home-flow-stage="hold"] .flow-center{
  transform:translate(-50%,-50%) scale(1.035)!important;
  box-shadow:0 30px 72px rgba(31,61,95,.20),0 0 0 10px rgba(46,123,181,.05)!important;
}

.flow-node{
  opacity:.46!important;
  filter:saturate(.75);
  border:1px solid rgba(31,61,95,.065)!important;
  background:rgba(255,255,255,.88)!important;
  box-shadow:0 12px 30px rgba(31,61,95,.035)!important;
  transition:opacity .52s ease,transform .64s cubic-bezier(.18,.82,.22,1),box-shadow .6s ease,border-color .6s ease,background .6s ease,filter .6s ease!important;
}
.flow-node .flow-icon,
.flow-node h3,
.flow-node p{transition:color .45s ease,opacity .45s ease,transform .55s ease!important;}
.flow-node .flow-icon{opacity:.58;}
.flow-node h3{color:rgba(31,61,95,.76)!important;}
.flow-node p{color:rgba(31,61,95,.54)!important;}
.flow-node-line{
  background:rgba(46,123,181,.16)!important;
  box-shadow:none!important;
  opacity:.44!important;
  transition:opacity .45s ease,background .55s ease,box-shadow .55s ease,transform .55s ease!important;
}
.flow-node-dot{
  width:12px!important;height:12px!important;border:2px solid #fff!important;
  background:rgba(46,123,181,.48)!important;
  box-shadow:0 0 0 4px rgba(46,123,181,.08)!important;
  transition:transform .55s cubic-bezier(.18,.82,.22,1),background .45s ease,box-shadow .55s ease!important;
}

/* Activated: strongest. Completed: retained but calmer. */
.flow-node.is-active{
  opacity:1!important;filter:none;z-index:5;
  background:#fff!important;border-color:rgba(46,123,181,.18)!important;
  box-shadow:0 22px 48px rgba(31,61,95,.09)!important;
}
.flow-node-left.is-active,.flow-node-right.is-active{transform:translateY(-50%) scale(1.028)!important;}
.flow-node-top.is-active,.flow-node-bottom.is-active{transform:translateX(-50%) scale(1.028)!important;}
.flow-node.is-active .flow-icon{opacity:1;transform:translateY(-2px);}
.flow-node.is-active h3{color:var(--modu-project-blue)!important;}
.flow-node.is-active p{color:rgba(31,61,95,.70)!important;}
.flow-node.is-active .flow-node-line{opacity:1!important;background:linear-gradient(90deg,rgba(46,123,181,.22),rgba(46,123,181,.92))!important;box-shadow:0 0 12px rgba(46,123,181,.18)!important;}
.flow-node-top.is-active .flow-node-line,.flow-node-bottom.is-active .flow-node-line{background:linear-gradient(180deg,rgba(46,123,181,.22),rgba(46,123,181,.92))!important;}
.flow-node.is-active .flow-node-dot{transform:scale(1.22)!important;background:#2E7BB5!important;box-shadow:0 0 0 7px rgba(46,123,181,.12)!important;}
.flow-node.is-complete{
  opacity:.80!important;filter:none;background:rgba(255,255,255,.94)!important;border-color:rgba(46,123,181,.11)!important;
  box-shadow:0 15px 34px rgba(31,61,95,.05)!important;
}
.flow-node.is-complete .flow-icon{opacity:.82;}
.flow-node.is-complete h3{color:var(--modu-project-blue)!important;}
.flow-node.is-complete p{color:rgba(31,61,95,.62)!important;}
.flow-node.is-complete .flow-node-line{opacity:.78!important;background:rgba(46,123,181,.58)!important;}
.flow-node.is-complete .flow-node-dot{background:#2E7BB5!important;box-shadow:0 0 0 5px rgba(46,123,181,.09)!important;}
.flow-node.is-rewinding{opacity:.30!important;filter:blur(.2px);}

.home-flow-visual[data-home-flow-stage="intake"] .flow-center{transform:translate(-50%,-50%) scale(1.02)!important;}
.home-flow-visual[data-home-flow-stage="centralize"] .flow-center{box-shadow:0 26px 64px rgba(31,61,95,.18),0 0 0 8px rgba(46,123,181,.045)!important;}
.home-flow-visual[data-home-flow-stage="consolidate"] .flow-node.is-complete,
.home-flow-visual[data-home-flow-stage="complete"] .flow-node.is-complete,
.home-flow-visual[data-home-flow-stage="hold"] .flow-node.is-complete{opacity:.92!important;}

/* CTA participates only at the resolution point. */
.home-flow-button i{transition:transform .55s cubic-bezier(.18,.82,.22,1),box-shadow .55s ease!important;}
.home-flow-final.flow-cta-ready .home-flow-button i{transform:translateX(3px) scale(1.06);box-shadow:0 0 0 7px rgba(46,123,181,.08);}

/* Large desktop */
@media(min-width:1500px){
  .home-flow-visual{--flow-center-box:210px;--flow-node-w:176px;--flow-node-h:138px;min-height:690px!important;}
}

/* Laptop and tablet: keep the complete visual, centred and readable. */
@media(max-width:1280px){
  .home-flow-main{grid-template-columns:minmax(420px,1fr) minmax(470px,.96fr)!important;gap:28px!important;}
  .home-flow-visual{--flow-center-box:188px;--flow-node-w:156px;--flow-node-h:124px;--flow-node-gap-side:18px;--flow-node-gap-vertical:24px;min-height:610px!important;}
  .flow-node p{font-size:.88rem!important;line-height:1.36!important;}
}
@media(max-width:1180px){
  .home-flow-main{grid-template-columns:1fr!important;padding-bottom:46px!important;}
  .home-flow-visual{width:min(100%,720px)!important;justify-self:center!important;min-height:650px!important;margin-top:8px;}
}

/* Mobile: visual remains present in a bespoke 2×2 composition. */
@media(max-width:768px){
  .home-flow-main{display:flex!important;flex-direction:column!important;padding:40px 20px 46px!important;}
  .home-flow-visual{display:block!important;width:100%!important;min-height:610px!important;margin:26px auto 0!important;overflow:hidden!important;--flow-center-box:146px;--flow-node-w:calc(50% - 18px);--flow-node-h:122px;}
  .home-flow-benefits{display:none!important;}
  .flow-center{left:50%!important;top:50%!important;}
  .flow-node{min-height:122px!important;padding:12px 10px!important;border-radius:17px!important;}
  .flow-node h3{font-size:.88rem!important;line-height:1.15!important;margin:1px 0 6px!important;}
  .flow-node p{font-size:.76rem!important;line-height:1.32!important;display:block!important;}
  .flow-icon{width:28px!important;height:28px!important;margin-bottom:6px!important;}
  .flow-node-left,.flow-node-top,.flow-node-right,.flow-node-bottom{transform:none!important;}
  .flow-node-left{left:0!important;top:5%!important;}
  .flow-node-top{left:auto!important;right:0!important;top:5%!important;}
  .flow-node-right{left:0!important;top:auto!important;bottom:5%!important;}
  .flow-node-bottom{left:auto!important;right:0!important;top:auto!important;bottom:5%!important;}
  .flow-node-left.is-active,.flow-node-top.is-active,.flow-node-right.is-active,.flow-node-bottom.is-active{transform:scale(1.02)!important;}
  .flow-node-line,.flow-node-dot{display:none!important;}
  .flow-center em{font-size:.88rem!important;width:82%;}
}
@media(max-width:480px){
  .home-flow-main{padding-left:16px!important;padding-right:16px!important;}
  .home-flow-visual{min-height:560px!important;--flow-center-box:132px;--flow-node-w:calc(50% - 10px);--flow-node-h:112px;}
  .flow-node{min-height:112px!important;padding:10px 8px!important;}
  .flow-node h3{font-size:.80rem!important;}
  .flow-node p{font-size:.70rem!important;line-height:1.25!important;}
  .flow-icon{width:24px!important;height:24px!important;}
  .flow-center strong{font-size:.62rem!important;}
  .flow-center em{font-size:.76rem!important;}
}

@media(prefers-reduced-motion:reduce){
  .flow-node,.flow-center,.flow-center img,.flow-center strong,.flow-center em,.home-flow-button i{transition:none!important;}
}


/* MODU v0.7.56 — nucleus layout and seamless return */
.home-flow-final .flow-center{display:block!important;overflow:hidden!important;}
.home-flow-final .flow-center img{
  position:absolute!important;left:50%!important;top:37%!important;width:min(52%,106px)!important;max-height:40%!important;
  object-fit:contain!important;margin:0!important;transform:translate(-50%,-50%) scale(1)!important;z-index:3!important;
}
.home-flow-final .flow-center strong{
  left:50%!important;top:70%!important;bottom:auto!important;width:84%!important;
  transform:translate(-50%,-50%)!important;line-height:1.15!important;white-space:nowrap!important;color:#8BC5F1!important;z-index:4!important;
}
.home-flow-final .flow-center em{
  left:50%!important;top:50%!important;bottom:auto!important;width:80%!important;
  transform:translate(-50%,-50%) translateY(7px) scale(.94)!important;z-index:5!important;
}
.home-flow-final .flow-center:after{bottom:15%!important;}
.home-flow-final .flow-center.is-final img{opacity:.13!important;transform:translate(-50%,-50%) scale(.84)!important;filter:blur(.7px) brightness(1.05)!important;}
.home-flow-final .flow-center.is-final strong{opacity:0!important;transform:translate(-50%,-50%) translateY(-4px)!important;filter:blur(2px)!important;}
.home-flow-final .flow-center.is-final em{opacity:1!important;transform:translate(-50%,-50%) translateY(0) scale(1)!important;filter:none!important;}
.home-flow-final .flow-center.is-final.is-returning img{opacity:1!important;transform:translate(-50%,-50%) scale(1)!important;filter:none!important;}
.home-flow-final .flow-center.is-final.is-returning strong{opacity:1!important;transform:translate(-50%,-50%)!important;filter:none!important;}
.home-flow-final .flow-center.is-final.is-returning em{opacity:0!important;transform:translate(-50%,-50%) translateY(-6px) scale(.96)!important;filter:blur(3px)!important;}
.home-flow-visual[data-home-flow-stage="returning"] .flow-center{transform:translate(-50%,-50%) scale(1)!important;box-shadow:0 25px 62px rgba(31,61,95,.17),0 0 0 7px rgba(46,123,181,.04)!important;}
@media (min-width:1181px) and (max-width:1366px){
  .home-flow-visual{--flow-center-box:198px!important;}
  .home-flow-final .flow-center img{top:35%!important;width:min(48%,92px)!important;max-height:36%!important;}
  .home-flow-final .flow-center strong{top:71%!important;font-size:.61rem!important;letter-spacing:.11em!important;width:88%!important;}
  .home-flow-final .flow-center em{font-size:.86rem!important;width:78%!important;line-height:1.12!important;}
}
@media (min-width:769px) and (max-width:1180px){
  .home-flow-final .flow-center img{top:35%!important;width:min(48%,90px)!important;}
  .home-flow-final .flow-center strong{top:71%!important;font-size:.63rem!important;letter-spacing:.11em!important;}
}
@media (max-width:768px){
  .home-flow-final .flow-center img{top:34%!important;width:min(46%,68px)!important;max-height:32%!important;}
  .home-flow-final .flow-center strong{top:71%!important;font-size:.55rem!important;letter-spacing:.09em!important;width:92%!important;}
  .home-flow-final .flow-center em{font-size:.75rem!important;width:84%!important;line-height:1.10!important;}
  .home-flow-final .flow-center:after{bottom:12%!important;width:28px!important;}
}
@media (max-width:480px){
  .home-flow-final .flow-center img{top:33%!important;width:min(44%,58px)!important;}
  .home-flow-final .flow-center strong{top:71%!important;font-size:.49rem!important;letter-spacing:.07em!important;}
  .home-flow-final .flow-center em{font-size:.66rem!important;width:86%!important;}
}


/* MODU v0.7.57 — definitive readable nucleus close, no empty state */
.home-flow-final .flow-center{
  isolation:isolate!important;
  overflow:hidden!important;
  transition:transform .72s cubic-bezier(.18,.82,.22,1),background .7s ease,border-color .7s ease,box-shadow .7s ease!important;
}
.home-flow-final .flow-center em{
  display:flex!important;align-items:center!important;justify-content:center!important;
  width:76%!important;min-height:3.2em!important;margin:0!important;padding:0!important;
  font-family:Sora,Inter,sans-serif!important;font-style:normal!important;font-weight:800!important;
  font-size:clamp(1.06rem,1.5vw,1.34rem)!important;line-height:1.02!important;letter-spacing:.055em!important;
  text-align:center!important;text-wrap:balance!important;white-space:normal!important;
  color:#fff!important;text-shadow:none!important;
  opacity:0!important;visibility:hidden!important;
  transform:translate(-50%,-50%) scale(.92)!important;filter:blur(3px)!important;
  transition:opacity .52s ease,transform .7s cubic-bezier(.18,.82,.22,1),filter .52s ease,visibility 0s linear .52s!important;
}
.home-flow-final .flow-center.is-final{
  background:linear-gradient(160deg,var(--modu-project-blue) 0%,#18364A 100%)!important;
  border-color:rgba(139,197,241,.22)!important;
  box-shadow:0 28px 66px rgba(31,61,95,.20),0 0 0 8px rgba(46,123,181,.045)!important;
}
.home-flow-final .flow-center.is-final:before{
  content:""!important;position:absolute!important;inset:13%!important;border-radius:50%!important;
  border:1px solid rgba(139,197,241,.10)!important;pointer-events:none!important;z-index:1!important;
}
.home-flow-final .flow-center.is-final:after{
  bottom:17%!important;width:48px!important;opacity:.72!important;background:linear-gradient(90deg,transparent,rgba(139,197,241,.88),transparent)!important;z-index:2!important;
}
.home-flow-final .flow-center.is-final img{
  opacity:.055!important;visibility:visible!important;transform:translate(-50%,-50%) scale(.90)!important;
  filter:grayscale(1) brightness(2.7)!important;z-index:2!important;
}
.home-flow-final .flow-center.is-final strong{
  opacity:0!important;visibility:hidden!important;filter:none!important;transform:translate(-50%,-50%) translateY(-3px)!important;
  transition:opacity .30s ease,visibility 0s linear .30s!important;
}
.home-flow-final .flow-center.is-final em{
  opacity:1!important;visibility:visible!important;transform:translate(-50%,-50%) scale(1)!important;filter:none!important;
  transition:opacity .58s ease .10s,transform .78s cubic-bezier(.18,.82,.22,1) .06s,filter .58s ease .06s,visibility 0s linear 0s!important;
}
/* Returning keeps both systems overlapping briefly; the nucleus never becomes empty. */
.home-flow-final .flow-center.is-final.is-returning{
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,251,253,.97))!important;
  border-color:rgba(46,123,181,.12)!important;
  box-shadow:0 24px 58px rgba(31,61,95,.14),0 0 0 7px rgba(46,123,181,.035)!important;
}
.home-flow-final .flow-center.is-final.is-returning img{
  opacity:1!important;visibility:visible!important;transform:translate(-50%,-50%) scale(1)!important;filter:none!important;
  transition:opacity .62s ease .08s,transform .75s cubic-bezier(.18,.82,.22,1) .04s,filter .62s ease!important;
}
.home-flow-final .flow-center.is-final.is-returning strong{
  opacity:1!important;visibility:visible!important;transform:translate(-50%,-50%)!important;filter:none!important;
  transition:opacity .56s ease .18s,transform .68s cubic-bezier(.18,.82,.22,1) .12s,visibility 0s linear 0s!important;
}
.home-flow-final .flow-center.is-final.is-returning em{
  opacity:0!important;visibility:hidden!important;transform:translate(-50%,-50%) scale(1.05)!important;filter:blur(2px)!important;
  transition:opacity .42s ease,transform .58s cubic-bezier(.2,.8,.2,1),filter .42s ease,visibility 0s linear .44s!important;
}
.home-flow-visual[data-home-flow-stage="complete"] .flow-center,
.home-flow-visual[data-home-flow-stage="hold"] .flow-center{transform:translate(-50%,-50%) scale(1.035)!important;}

/* Desktop and laptop: readable closure with optical alignment. */
@media (min-width:1367px){
  .home-flow-final .flow-center em{font-size:1.28rem!important;width:74%!important;}
}
@media (min-width:1181px) and (max-width:1366px){
  .home-flow-visual{--flow-center-box:210px!important;}
  .home-flow-final .flow-center img{top:34%!important;width:min(46%,88px)!important;}
  .home-flow-final .flow-center strong{top:71.5%!important;font-size:.64rem!important;letter-spacing:.105em!important;width:90%!important;}
  .home-flow-final .flow-center em{top:49.5%!important;width:76%!important;font-size:1.08rem!important;line-height:1.03!important;letter-spacing:.045em!important;}
}
@media (min-width:769px) and (max-width:1180px){
  .home-flow-visual{--flow-center-box:196px!important;}
  .home-flow-final .flow-center img{top:34%!important;width:min(45%,82px)!important;}
  .home-flow-final .flow-center strong{top:72%!important;font-size:.61rem!important;letter-spacing:.09em!important;width:92%!important;}
  .home-flow-final .flow-center em{top:50%!important;width:78%!important;font-size:1rem!important;line-height:1.04!important;letter-spacing:.04em!important;}
}
@media (max-width:768px){
  .home-flow-final .flow-center em{top:50%!important;width:80%!important;font-size:.88rem!important;line-height:1.04!important;letter-spacing:.035em!important;}
  .home-flow-final .flow-center.is-final:after{bottom:14%!important;width:34px!important;}
}
@media (max-width:480px){
  .home-flow-final .flow-center em{width:82%!important;font-size:.77rem!important;line-height:1.03!important;letter-spacing:.025em!important;}
}


/* MODU v0.7.58 — definitive independent high-contrast close */
.home-flow-final .home-flow-visual{position:relative!important;}
.home-flow-final .flow-final-overlay{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:var(--flow-center-box)!important;
  height:var(--flow-center-box)!important;
  transform:translate(-50%,-50%) scale(.88)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  z-index:80!important;
  padding:18%!important;
  box-sizing:border-box!important;
  pointer-events:none!important;
  background:linear-gradient(155deg,color-mix(in srgb,var(--modu-project-blue) 76%,#000) 0%,var(--modu-project-blue) 54%,#18364A 100%)!important;
  border:1px solid rgba(139,197,241,.26)!important;
  box-shadow:0 30px 76px rgba(31,61,95,.26),0 0 0 9px rgba(46,123,181,.055)!important;
  opacity:0!important;
  visibility:hidden!important;
  filter:blur(5px)!important;
  transition:opacity .62s ease,transform .82s cubic-bezier(.18,.82,.22,1),filter .62s ease,visibility 0s linear .64s!important;
}
.home-flow-final .flow-final-overlay::before{
  content:""!important;
  position:absolute!important;
  inset:12%!important;
  border-radius:50%!important;
  border:1px solid rgba(139,197,241,.10)!important;
}
.home-flow-final .flow-final-overlay::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  bottom:18%!important;
  width:44px!important;
  height:1px!important;
  transform:translateX(-50%)!important;
  background:linear-gradient(90deg,transparent,rgba(139,197,241,.95),transparent)!important;
}
.home-flow-final .flow-final-overlay span{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  width:100%!important;
  margin:0!important;
  color:#FFFFFF!important;
  font-family:Sora,Inter,Arial,sans-serif!important;
  font-style:normal!important;
  font-weight:820!important;
  font-size:clamp(1.12rem,1.55vw,1.38rem)!important;
  line-height:1.05!important;
  letter-spacing:.045em!important;
  text-align:center!important;
  text-transform:uppercase!important;
  text-wrap:balance!important;
  text-shadow:0 2px 16px rgba(0,0,0,.18)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-final-overlay{
  opacity:1!important;
  visibility:visible!important;
  transform:translate(-50%,-50%) scale(1.045)!important;
  filter:none!important;
  transition:opacity .62s ease .06s,transform .88s cubic-bezier(.18,.82,.22,1),filter .62s ease,visibility 0s linear 0s!important;
}
/* While the final statement is present, suppress the old internal final state completely. */
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center{
  opacity:.06!important;
  transform:translate(-50%,-50%) scale(.90)!important;
  filter:blur(2px)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center em,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center em{
  opacity:0!important;visibility:hidden!important;
}
/* Return: overlay leaves only after the base nucleus is already visible. */
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-final-overlay{
  opacity:0!important;
  visibility:hidden!important;
  transform:translate(-50%,-50%) scale(1.075)!important;
  filter:blur(3px)!important;
  transition:opacity .46s ease .18s,transform .62s cubic-bezier(.2,.8,.2,1),filter .46s ease .12s,visibility 0s linear .68s!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center{
  opacity:1!important;filter:none!important;transform:translate(-50%,-50%) scale(1)!important;
}
@media (min-width:1181px) and (max-width:1366px){
  .home-flow-final .flow-final-overlay span{font-size:1.18rem!important;line-height:1.04!important;width:88%!important;}
}
@media (min-width:769px) and (max-width:1180px){
  .home-flow-final .flow-final-overlay span{font-size:1.08rem!important;line-height:1.04!important;width:88%!important;}
}
@media (max-width:768px){
  .home-flow-final .flow-final-overlay{padding:20%!important;}
  .home-flow-final .flow-final-overlay span{font-size:.90rem!important;line-height:1.04!important;letter-spacing:.032em!important;width:92%!important;}
  .home-flow-final .flow-final-overlay::after{bottom:15%!important;width:30px!important;}
}
@media (max-width:480px){
  .home-flow-final .flow-final-overlay span{font-size:.78rem!important;line-height:1.03!important;letter-spacing:.025em!important;}
}


/* MODU v0.7.59 — optically centred final statement inside the nucleus */
.home-flow-final .flow-center{
  position:absolute!important;
  isolation:isolate!important;
  overflow:hidden!important;
}
.home-flow-final .flow-center .flow-final-overlay{
  position:absolute!important;
  inset:0!important;
  left:0!important;
  top:0!important;
  width:100%!important;
  height:100%!important;
  transform:scale(.90)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:50%!important;
  z-index:50!important;
  padding:18% 15%!important;
  box-sizing:border-box!important;
  pointer-events:none!important;
  background:linear-gradient(155deg,color-mix(in srgb,var(--modu-project-blue) 76%,#000) 0%,var(--modu-project-blue) 54%,#18364A 100%)!important;
  border:0!important;
  box-shadow:none!important;
  opacity:0!important;
  visibility:hidden!important;
  filter:blur(7px)!important;
  transform-origin:50% 50%!important;
  transition:opacity .58s ease,transform .82s cubic-bezier(.18,.82,.22,1),filter .62s ease,visibility 0s linear .62s!important;
}
.home-flow-final .flow-center .flow-final-overlay::before{
  content:""!important;
  position:absolute!important;
  inset:9%!important;
  border-radius:50%!important;
  border:1px solid rgba(139,197,241,.13)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)!important;
}
.home-flow-final .flow-center .flow-final-overlay::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  bottom:17%!important;
  width:42px!important;
  height:1px!important;
  transform:translateX(-50%)!important;
  background:linear-gradient(90deg,transparent,rgba(139,197,241,.92),transparent)!important;
}
.home-flow-final .flow-center .flow-final-overlay span{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  width:66%!important;
  margin:0!important;
  transform:translateY(-1px)!important;
  color:#FFFFFF!important;
  font-family:Sora,Inter,Arial,sans-serif!important;
  font-style:normal!important;
  font-weight:780!important;
  font-size:clamp(1.03rem,1.35vw,1.22rem)!important;
  line-height:1.02!important;
  letter-spacing:.035em!important;
  text-align:center!important;
  text-transform:uppercase!important;
  text-wrap:balance!important;
  text-shadow:0 2px 18px rgba(0,0,0,.16)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center{
  opacity:1!important;
  filter:none!important;
  transform:translate(-50%,-50%) scale(1.04)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center .flow-final-overlay{
  opacity:1!important;
  visibility:visible!important;
  transform:scale(1)!important;
  filter:none!important;
  transition:opacity .58s ease .04s,transform .82s cubic-bezier(.18,.82,.22,1),filter .62s ease,visibility 0s!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > em,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > em{
  opacity:0!important;
  visibility:hidden!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center .flow-final-overlay{
  opacity:0!important;
  visibility:hidden!important;
  transform:scale(1.04)!important;
  filter:blur(4px)!important;
  transition:opacity .44s ease,transform .62s cubic-bezier(.2,.8,.2,1),filter .44s ease,visibility 0s linear .48s!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > strong{
  opacity:1!important;
  visibility:visible!important;
}
@media (min-width:1181px) and (max-width:1366px){
  .home-flow-final .flow-center .flow-final-overlay span{width:68%!important;font-size:1.08rem!important;line-height:1.02!important;letter-spacing:.032em!important;}
}
@media (min-width:769px) and (max-width:1180px){
  .home-flow-final .flow-center .flow-final-overlay span{width:70%!important;font-size:1rem!important;line-height:1.02!important;letter-spacing:.03em!important;}
}
@media (max-width:768px){
  .home-flow-final .flow-center .flow-final-overlay{padding:17% 14%!important;}
  .home-flow-final .flow-center .flow-final-overlay span{width:76%!important;font-size:.82rem!important;line-height:1.03!important;letter-spacing:.024em!important;}
  .home-flow-final .flow-center .flow-final-overlay::after{bottom:14%!important;width:28px!important;}
}
@media (max-width:480px){
  .home-flow-final .flow-center .flow-final-overlay span{width:78%!important;font-size:.70rem!important;line-height:1.03!important;letter-spacing:.018em!important;}
}


/* MODU v0.7.60 — final optical refinement for Home MODU FLOW */
.home-flow-final .flow-center .flow-final-overlay{
  padding:15% 12% 17%!important;
  transform:scale(.91)!important;
  background:linear-gradient(158deg,#0f2335 0%,var(--modu-project-blue) 52%,#17384d 100%)!important;
  transition:opacity .54s ease,transform .76s cubic-bezier(.18,.82,.22,1),filter .58s ease,visibility 0s linear .60s!important;
}
.home-flow-final .flow-center .flow-final-overlay::before{
  inset:8.5%!important;
  border-color:rgba(139,197,241,.14)!important;
}
.home-flow-final .flow-center .flow-final-overlay::after{
  bottom:15.5%!important;
  width:38px!important;
  opacity:.88!important;
}
.home-flow-final .flow-center .flow-final-copy{
  position:relative!important;
  z-index:2!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:78%!important;
  margin:0!important;
  transform:translateY(-6px)!important;
  color:#fff!important;
  font-family:Sora,Inter,Arial,sans-serif!important;
  font-style:normal!important;
  font-weight:790!important;
  text-align:center!important;
  text-transform:uppercase!important;
  text-shadow:0 2px 16px rgba(0,0,0,.14)!important;
}
.home-flow-final .flow-center .flow-final-line{
  display:block!important;
  width:100%!important;
  white-space:nowrap!important;
  line-height:.94!important;
}
.home-flow-final .flow-center .flow-final-line-1{
  font-size:clamp(1.04rem,1.34vw,1.24rem)!important;
  letter-spacing:.048em!important;
}
.home-flow-final .flow-center .flow-final-line-2{
  margin-top:.16em!important;
  font-size:clamp(1.10rem,1.43vw,1.32rem)!important;
  letter-spacing:.034em!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center .flow-final-overlay{
  transform:scale(1)!important;
  transition:opacity .54s ease .04s,transform .78s cubic-bezier(.18,.82,.22,1),filter .58s ease,visibility 0s!important;
}
.home-flow-final .flow-center > img,
.home-flow-final .flow-center > strong{
  transition:opacity .48s ease,transform .64s cubic-bezier(.18,.82,.22,1),filter .48s ease,visibility 0s linear .50s!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > strong{
  opacity:0!important;
  transform:translate(-50%,-50%) scale(.94)!important;
  filter:blur(2px)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > strong{
  opacity:1!important;
  transform:translate(-50%,-50%) scale(1)!important;
  filter:none!important;
  transition-delay:.10s!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center .flow-final-overlay{
  transform:scale(1.025)!important;
  filter:blur(3px)!important;
  transition:opacity .46s ease .08s,transform .62s cubic-bezier(.2,.8,.2,1),filter .46s ease .04s,visibility 0s linear .56s!important;
}
/* Laptop: optical centre is raised slightly to compensate for the heavier second line. */
@media (min-width:1181px) and (max-width:1366px){
  .home-flow-final .flow-center .flow-final-copy{width:80%!important;transform:translateY(-7px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:1.10rem!important;letter-spacing:.044em!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:1.17rem!important;letter-spacing:.030em!important;}
  .home-flow-final .flow-center .flow-final-overlay::after{bottom:15%!important;}
}
/* Tablet: slightly tighter, without losing the two-line hierarchy. */
@media (min-width:769px) and (max-width:1180px){
  .home-flow-final .flow-center .flow-final-copy{width:82%!important;transform:translateY(-5px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:1rem!important;letter-spacing:.038em!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:1.07rem!important;letter-spacing:.026em!important;}
  .home-flow-final .flow-center .flow-final-overlay::after{bottom:14.5%!important;width:32px!important;}
}
/* Mobile: preserve legibility and optical balance inside the smaller nucleus. */
@media (max-width:768px){
  .home-flow-final .flow-center .flow-final-overlay{padding:15% 11% 18%!important;}
  .home-flow-final .flow-center .flow-final-copy{width:84%!important;transform:translateY(-4px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:.80rem!important;letter-spacing:.030em!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:.86rem!important;letter-spacing:.020em!important;}
  .home-flow-final .flow-center .flow-final-overlay::after{bottom:13.5%!important;width:26px!important;}
}
@media (max-width:480px){
  .home-flow-final .flow-center .flow-final-copy{width:88%!important;transform:translateY(-3px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:.68rem!important;letter-spacing:.024em!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:.73rem!important;letter-spacing:.016em!important;}
}


/* MODU v0.7.61 — commercial polish and final legibility refinement */
.home-flow-final{--flow-cycle:8.1s;}
.home-flow-visual{
  --flow-center-box: clamp(186px, 27.2%, 202px);
  --flow-node-w: clamp(154px, 21.9%, 168px);
  --flow-node-h: clamp(142px, 18.6%, 152px);
  --flow-node-gap-side: clamp(20px, 1.95vw, 25px);
  --flow-node-gap-vertical-top: clamp(30px, 2.5vw, 36px);
  --flow-node-gap-vertical-bottom: clamp(20px, 1.9vw, 25px);
}
.flow-node{
  opacity:.57!important;
  filter:saturate(.84)!important;
  background:rgba(255,255,255,.91)!important;
  box-shadow:0 14px 34px rgba(31,61,95,.045)!important;
}
.flow-node .flow-icon{opacity:.66!important;}
.flow-node h3{color:rgba(31,61,95,.82)!important;}
.flow-node p{color:rgba(31,61,95,.60)!important;font-size:clamp(.67rem,.84vw,.79rem)!important;}
.flow-node-line{opacity:.54!important;background:rgba(46,123,181,.20)!important;}
.flow-node-dot{background:rgba(46,123,181,.56)!important;box-shadow:0 0 0 4px rgba(46,123,181,.10)!important;}
.flow-node.is-active{box-shadow:0 22px 50px rgba(31,61,95,.095)!important;}
.flow-node.is-active .flow-node-line{box-shadow:0 0 14px rgba(46,123,181,.22)!important;}
.flow-node.is-active .flow-node-dot{transform:scale(1.28)!important;box-shadow:0 0 0 8px rgba(46,123,181,.14)!important;}
.flow-node.is-complete{opacity:.86!important;background:rgba(255,255,255,.95)!important;}
.flow-node.is-complete p{color:rgba(31,61,95,.66)!important;}
.home-flow-visual[data-home-flow-stage="consolidate"] .flow-node.is-complete,
.home-flow-visual[data-home-flow-stage="complete"] .flow-node.is-complete,
.home-flow-visual[data-home-flow-stage="hold"] .flow-node.is-complete{opacity:.95!important;}

.home-flow-final .flow-center{
  overflow:hidden!important;
  background:linear-gradient(180deg,#13212d 0%,#183040 100%)!important;
  box-shadow:0 28px 66px rgba(31,61,95,.19),0 0 0 9px rgba(46,123,181,.04)!important;
}
.home-flow-final .flow-center strong{
  letter-spacing:.145em!important;
}
.home-flow-final .flow-center .flow-final-overlay{
  padding:14% 11.5% 16.5%!important;
  transform:scale(.915)!important;
}
.home-flow-final .flow-center .flow-final-copy{
  width:75%!important;
  transform:translateY(-10px)!important;
  text-shadow:0 3px 18px rgba(0,0,0,.16)!important;
}
.home-flow-final .flow-center .flow-final-line{line-height:.92!important;}
.home-flow-final .flow-center .flow-final-line-1{
  font-size:clamp(1.08rem,1.38vw,1.28rem)!important;
  letter-spacing:.050em!important;
}
.home-flow-final .flow-center .flow-final-line-2{
  margin-top:.12em!important;
  font-size:clamp(1.15rem,1.48vw,1.38rem)!important;
  letter-spacing:.030em!important;
  font-weight:820!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center{
  transform:translate(-50%,-50%) scale(1.04)!important;
  box-shadow:0 30px 74px rgba(31,61,95,.21),0 0 0 11px rgba(46,123,181,.05)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center{
  transform:translate(-50%,-50%) scale(1.018)!important;
  background:linear-gradient(180deg,#13212d 0%,#183040 100%)!important;
  box-shadow:0 28px 66px rgba(31,61,95,.19),0 0 0 8px rgba(46,123,181,.038)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > strong{
  opacity:.96!important;
  filter:none!important;
  transition-delay:0s!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center .flow-final-overlay{
  opacity:.20!important;
  transform:scale(1.008)!important;
  filter:blur(2.2px)!important;
  transition:opacity .36s ease,transform .52s cubic-bezier(.2,.8,.2,1),filter .38s ease,visibility 0s linear .40s!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center .flow-final-overlay{
  opacity:1!important;
  transform:scale(1)!important;
}

@media (min-width:1181px) and (max-width:1366px){
  .home-flow-visual{--flow-center-box:192px;--flow-node-w:156px;--flow-node-h:142px;--flow-node-gap-side:20px;--flow-node-gap-vertical-top:31px;--flow-node-gap-vertical-bottom:20px;}
  .home-flow-final .flow-center .flow-final-copy{width:77%!important;transform:translateY(-9px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:1.12rem!important;letter-spacing:.046em!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:1.20rem!important;letter-spacing:.028em!important;}
  .flow-node p{font-size:clamp(.66rem,.80vw,.76rem)!important;}
}
@media (min-width:769px) and (max-width:1180px){
  .home-flow-visual{--flow-center-box:190px;--flow-node-w:156px;--flow-node-h:138px;--flow-node-gap-side:18px;--flow-node-gap-vertical-top:28px;--flow-node-gap-vertical-bottom:18px;}
  .home-flow-final .flow-center .flow-final-copy{width:78%!important;transform:translateY(-8px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:1.03rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:1.10rem!important;}
}
@media (max-width:768px){
  .home-flow-visual{--flow-center-box:186px;}
  .flow-node{opacity:.62!important;}
  .flow-node p{font-size:.74rem!important;line-height:1.24!important;}
  .home-flow-final .flow-center .flow-final-overlay{padding:14.5% 10.5% 17%!important;}
  .home-flow-final .flow-center .flow-final-copy{width:82%!important;transform:translateY(-6px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:.84rem!important;letter-spacing:.028em!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:.90rem!important;letter-spacing:.018em!important;}
}
@media (max-width:480px){
  .home-flow-final .flow-center .flow-final-copy{width:86%!important;transform:translateY(-5px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:.72rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:.78rem!important;}
}


/* MODU v0.7.62 — final return continuity and premium clarity */
.home-flow-final .flow-node{opacity:.60!important;}
.home-flow-final .flow-node p{font-size:clamp(.69rem,.86vw,.80rem)!important;color:rgba(31,61,95,.64)!important;}
.home-flow-final .flow-node.is-complete{opacity:.92!important;background:rgba(255,255,255,.965)!important;box-shadow:0 18px 40px rgba(31,61,95,.07)!important;}
.home-flow-final .flow-node.is-complete h3{color:var(--modu-project-blue)!important;}
.home-flow-final .flow-node.is-complete p{color:rgba(31,61,95,.70)!important;}
.home-flow-final .flow-node.is-complete .flow-icon{opacity:.88!important;}
.home-flow-final .flow-node.is-complete .flow-node-line{opacity:.9!important;background:rgba(46,123,181,.66)!important;box-shadow:0 0 14px rgba(46,123,181,.22)!important;}
.home-flow-final .flow-node.is-complete .flow-node-dot{box-shadow:0 0 0 6px rgba(46,123,181,.11)!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="consolidate"] .flow-node.is-complete,
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-node.is-complete,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-node.is-complete,
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-node.is-complete{opacity:.97!important;}

.home-flow-final .flow-center{
  background:linear-gradient(180deg,#13212d 0%,#173040 100%)!important;
  box-shadow:0 29px 68px rgba(31,61,95,.20),0 0 0 9px rgba(46,123,181,.04)!important;
}
.home-flow-final .flow-center .flow-final-overlay{
  padding:13.5% 11% 16% !important;
  transform:scale(.94)!important;
  transition:opacity .42s ease, transform .52s cubic-bezier(.2,.8,.2,1), filter .36s ease, visibility 0s linear .42s!important;
}
.home-flow-final .flow-center .flow-final-copy{
  width:76%!important;
  transform:translateY(-12px)!important;
}
.home-flow-final .flow-center .flow-final-line{line-height:.90!important;}
.home-flow-final .flow-center .flow-final-line-1{font-size:clamp(1.12rem,1.42vw,1.32rem)!important;letter-spacing:.048em!important;}
.home-flow-final .flow-center .flow-final-line-2{font-size:clamp(1.20rem,1.56vw,1.42rem)!important;letter-spacing:.026em!important;font-weight:830!important;margin-top:.10em!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center .flow-final-overlay{
  opacity:1!important;transform:scale(1)!important;filter:none!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > img{
  opacity:.10!important;filter:blur(.4px) brightness(1.04)!important;transform:translate(-50%,-50%) scale(.82)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > strong{
  opacity:0!important;filter:blur(1.2px)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center{
  transform:translate(-50%,-50%) scale(1.012)!important;
  background:linear-gradient(180deg,#13212d 0%,#173040 100%)!important;
  box-shadow:0 28px 66px rgba(31,61,95,.19),0 0 0 8px rgba(46,123,181,.04)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > img{
  opacity:.78!important;transform:translate(-50%,-50%) scale(.96)!important;filter:none!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > strong{
  opacity:.88!important;transform:translate(-50%,-50%) translateY(0)!important;filter:none!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center .flow-final-overlay{
  opacity:.38!important;transform:scale(.985)!important;filter:blur(1.2px)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center .flow-final-copy{
  transform:translateY(-11px)!important;
}
@media (min-width:1181px) and (max-width:1366px){
  .home-flow-final .flow-center .flow-final-copy{width:78%!important;transform:translateY(-11px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:1.14rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:1.22rem!important;}
}
@media (min-width:769px) and (max-width:1180px){
  .home-flow-final .flow-center .flow-final-copy{width:80%!important;transform:translateY(-10px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:1.05rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:1.12rem!important;}
  .home-flow-final .flow-node p{font-size:.76rem!important;}
}
@media (max-width:768px){
  .home-flow-final .flow-center .flow-final-copy{width:84%!important;transform:translateY(-7px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:.86rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:.93rem!important;}
  .home-flow-final .flow-node p{font-size:.76rem!important;line-height:1.25!important;}
}
@media (max-width:480px){
  .home-flow-final .flow-center .flow-final-copy{width:88%!important;transform:translateY(-6px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:.74rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:.80rem!important;}
}


/* MODU v0.7.63 — final premium continuity and wow closure */
.home-flow-final{--flow-cycle:8.2s!important;}
.home-flow-final .home-flow-visual{
  --flow-center-box: clamp(178px, 24.8%, 192px) !important;
  --flow-node-gap-vertical-bottom: clamp(34px, 3.2vw, 42px) !important;
}
.home-flow-final .flow-node{
  opacity:.64!important;
  background:rgba(255,255,255,.94)!important;
}
.home-flow-final .flow-node h3{font-size:clamp(.76rem,.98vw,.90rem)!important;}
.home-flow-final .flow-node p{
  font-size:clamp(.68rem,.84vw,.78rem)!important;
  line-height:1.22!important;
  color:rgba(31,61,95,.66)!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  max-width:14ch!important;
  text-wrap:balance!important;
}
.home-flow-final .flow-node.is-active{
  box-shadow:0 24px 54px rgba(31,61,95,.11)!important;
}
.home-flow-final .flow-node.is-active .flow-node-line{
  background:rgba(46,123,181,.86)!important;
  box-shadow:0 0 16px rgba(46,123,181,.26)!important;
}
.home-flow-final .flow-node.is-active .flow-node-dot{
  transform:scale(1.34)!important;
  box-shadow:0 0 0 9px rgba(46,123,181,.16)!important;
  background:#2E7BB5!important;
}
.home-flow-final .flow-node.is-complete{
  opacity:.98!important;
  background:rgba(255,255,255,.97)!important;
  box-shadow:0 18px 40px rgba(31,61,95,.075)!important;
}
.home-flow-final .flow-node.is-complete .flow-node-line{
  background:rgba(46,123,181,.72)!important;
  box-shadow:0 0 12px rgba(46,123,181,.18)!important;
}
.home-flow-final .flow-node.is-complete .flow-node-dot{
  box-shadow:0 0 0 6px rgba(46,123,181,.12)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="consolidate"] .flow-node.is-complete,
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-node.is-complete,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-node.is-complete,
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-node.is-complete{
  opacity:1!important;
}

.home-flow-final .flow-center{
  background:linear-gradient(180deg,#13212d 0%,#173141 100%)!important;
  box-shadow:0 30px 72px rgba(31,61,95,.21),0 0 0 9px rgba(46,123,181,.042)!important;
  overflow:hidden!important;
}
.home-flow-final .flow-center > img,
.home-flow-final .flow-center > strong,
.home-flow-final .flow-center .flow-final-overlay{
  will-change:opacity,transform,filter;
}
.home-flow-final .flow-center > img{
  transition:opacity .34s ease, transform .44s cubic-bezier(.2,.8,.2,1), filter .28s ease!important;
}
.home-flow-final .flow-center > strong{
  transition:opacity .28s ease, transform .36s cubic-bezier(.2,.8,.2,1), filter .26s ease!important;
}
.home-flow-final .flow-center .flow-final-overlay{
  padding:13% 11% 15.4%!important;
  transition:opacity .28s ease, transform .36s cubic-bezier(.2,.8,.2,1), filter .22s ease, visibility 0s linear .28s!important;
}
.home-flow-final .flow-center .flow-final-copy{
  width:75%!important;
  transform:translateY(-13px)!important;
}
.home-flow-final .flow-center .flow-final-line{line-height:.90!important;}
.home-flow-final .flow-center .flow-final-line-1{
  font-size:clamp(1.12rem,1.42vw,1.30rem)!important;
  letter-spacing:.040em!important;
}
.home-flow-final .flow-center .flow-final-line-2{
  font-size:clamp(1.20rem,1.54vw,1.40rem)!important;
  margin-top:.08em!important;
  letter-spacing:.022em!important;
  font-weight:830!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center{
  transform:translate(-50%,-50%) scale(1.038)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > img{
  opacity:.12!important;
  filter:none!important;
  transform:translate(-50%,-50%) scale(.84)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > strong{
  opacity:0!important;
  filter:none!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center .flow-final-overlay{
  opacity:1!important;
  filter:none!important;
  transform:scale(1)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center{
  background:linear-gradient(180deg,#13212d 0%,#173141 100%)!important;
  transform:translate(-50%,-50%) scale(1.016)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > img{
  opacity:.94!important;
  transform:translate(-50%,-50%) scale(.99)!important;
  filter:none!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > strong{
  opacity:.92!important;
  transform:translate(-50%,-50%) translateY(0)!important;
  filter:none!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center .flow-final-overlay{
  opacity:.18!important;
  transform:scale(.992)!important;
  filter:none!important;
}
@media (min-width:1181px) and (max-width:1366px){
  .home-flow-final .home-flow-visual{--flow-center-box:186px!important; --flow-node-gap-vertical-bottom:36px!important;}
  .home-flow-final .flow-center .flow-final-copy{width:77%!important;transform:translateY(-12px)!important;}
}
@media (min-width:769px) and (max-width:1180px){
  .home-flow-final .home-flow-visual{--flow-center-box:182px!important; --flow-node-gap-vertical-bottom:34px!important;}
  .home-flow-final .flow-center .flow-final-copy{width:79%!important;transform:translateY(-11px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:1.03rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:1.10rem!important;}
  .home-flow-final .flow-node p{font-size:.74rem!important; max-width:15ch!important;}
}
@media (max-width:768px){
  .home-flow-final .home-flow-visual{--flow-center-box:180px!important;}
  .home-flow-final .flow-center .flow-final-copy{width:84%!important;transform:translateY(-8px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:.86rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:.92rem!important;}
}
@media (max-width:480px){
  .home-flow-final .flow-center .flow-final-copy{width:88%!important;transform:translateY(-7px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:.74rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:.80rem!important;}
}


/* MODU v0.7.64 — perfection pass */
.home-flow-final{--flow-cycle:7.6s!important;}
.home-flow-final .home-flow-visual{
  --flow-center-box: clamp(176px, 24.2%, 188px) !important;
  --flow-node-w: clamp(156px, 21.2%, 166px) !important;
  --flow-node-h: clamp(164px, 21.3%, 174px) !important;
  --flow-node-gap-side: clamp(18px, 1.8vw, 22px) !important;
  --flow-node-gap-vertical-top: clamp(24px, 2.2vw, 30px) !important;
  --flow-node-gap-vertical-bottom: clamp(44px, 3.9vw, 52px) !important;
}
.home-flow-final .flow-node{
  padding:18px 16px 16px !important;
  border:1px solid rgba(31,61,95,.05)!important;
  box-shadow:0 12px 26px rgba(31,61,95,.038)!important;
  opacity:.68!important;
  filter:none!important;
}
.home-flow-final .flow-node .flow-icon{
  width:34px!important;height:34px!important;margin-bottom:10px!important;opacity:.78!important;
}
.home-flow-final .flow-node h3{
  font-size:clamp(.79rem,.99vw,.92rem)!important;
  line-height:1.14!important;
  margin:0 0 8px!important;
  color:rgba(31,61,95,.86)!important;
}
.home-flow-final .flow-node p{
  display:block!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:initial!important;
  overflow:visible!important;
  max-width:none!important;
  text-wrap:pretty!important;
  font-size:clamp(.67rem,.82vw,.76rem)!important;
  line-height:1.23!important;
  color:rgba(31,61,95,.67)!important;
  margin:0!important;
}
.home-flow-final .flow-node-line{
  opacity:.58!important;
  background:rgba(46,123,181,.24)!important;
}
.home-flow-final .flow-node-dot{
  background:rgba(46,123,181,.58)!important;
  box-shadow:0 0 0 4px rgba(46,123,181,.08)!important;
}
.home-flow-final .flow-node.is-active{
  opacity:1!important;
  transform:translateY(-50%) scale(1.018)!important;
  box-shadow:0 20px 42px rgba(31,61,95,.09)!important;
}
.home-flow-final .flow-node-top.is-active,
.home-flow-final .flow-node-bottom.is-active{transform:translateX(-50%) scale(1.018)!important;}
.home-flow-final .flow-node.is-active .flow-node-line{
  opacity:1!important;
  background:rgba(46,123,181,.88)!important;
  box-shadow:0 0 16px rgba(46,123,181,.18)!important;
}
.home-flow-final .flow-node.is-active .flow-node-dot{
  background:#2E7BB5!important;
  transform:translateY(-50%) scale(1.34)!important;
  box-shadow:0 0 0 8px rgba(46,123,181,.14)!important;
}
.home-flow-final .flow-node-top.is-active .flow-node-dot,
.home-flow-final .flow-node-bottom.is-active .flow-node-dot{transform:translateX(-50%) scale(1.34)!important;}
.home-flow-final .flow-node.is-complete{
  opacity:.98!important;
  background:rgba(255,255,255,.975)!important;
  box-shadow:0 16px 32px rgba(31,61,95,.062)!important;
}
.home-flow-final .flow-node.is-complete .flow-icon{opacity:.88!important;}
.home-flow-final .flow-node.is-complete .flow-node-line{
  opacity:.92!important;
  background:rgba(46,123,181,.70)!important;
  box-shadow:none!important;
}
.home-flow-final .flow-node.is-complete .flow-node-dot{
  background:#2E7BB5!important;
  box-shadow:0 0 0 6px rgba(46,123,181,.11)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="consolidate"] .flow-node.is-complete,
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-node.is-complete,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-node.is-complete,
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-node.is-complete{opacity:1!important;}

.home-flow-final .flow-center{
  background:linear-gradient(180deg,#13212d 0%,#173140 100%)!important;
  box-shadow:0 28px 64px rgba(31,61,95,.20),0 0 0 8px rgba(46,123,181,.042)!important;
}
.home-flow-final .flow-center > img,
.home-flow-final .flow-center > strong,
.home-flow-final .flow-center .flow-final-overlay{transition:none!important;}
.home-flow-final .flow-center > img{opacity:1!important;filter:none!important;}
.home-flow-final .flow-center > strong{opacity:1!important;filter:none!important;}
.home-flow-final .flow-center .flow-final-overlay{
  padding:12.8% 11% 15.2%!important;
  opacity:0!important;
  filter:none!important;
  transform:scale(.985)!important;
}
.home-flow-final .flow-center .flow-final-copy{
  width:76%!important;
  transform:translateY(-12px)!important;
}
.home-flow-final .flow-center .flow-final-line{line-height:.90!important;}
.home-flow-final .flow-center .flow-final-line-1{font-size:clamp(1.10rem,1.38vw,1.28rem)!important;letter-spacing:.036em!important;}
.home-flow-final .flow-center .flow-final-line-2{font-size:clamp(1.18rem,1.52vw,1.38rem)!important;letter-spacing:.018em!important;font-weight:830!important;margin-top:.06em!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center{transform:translate(-50%,-50%) scale(1.035)!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > img{
  opacity:.14!important;
  transform:translate(-50%,-50%) scale(.85)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > strong{opacity:0!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center .flow-final-overlay{opacity:1!important;transform:scale(1)!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center{
  background:linear-gradient(180deg,#13212d 0%,#173140 100%)!important;
  transform:translate(-50%,-50%) scale(1.012)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > img{
  opacity:.95!important;
  transform:translate(-50%,-50%) scale(.98)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > strong{
  opacity:.9!important;
  transform:translate(-50%,-50%) translateY(0)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center .flow-final-overlay{
  opacity:.22!important;
  transform:scale(.995)!important;
}
.home-flow-final .flow-node-bottom{top:calc(50% + (var(--flow-center-box) / 2) + var(--flow-node-gap-vertical-bottom))!important;}
@media (min-width:1181px) and (max-width:1366px){
  .home-flow-final .home-flow-visual{--flow-center-box:184px!important;--flow-node-w:158px!important;--flow-node-h:166px!important;--flow-node-gap-vertical-bottom:48px!important;}
  .home-flow-final .flow-center .flow-final-copy{width:78%!important;transform:translateY(-11px)!important;}
}
@media (min-width:769px) and (max-width:1180px){
  .home-flow-final .home-flow-visual{--flow-center-box:180px!important;--flow-node-w:154px!important;--flow-node-h:160px!important;--flow-node-gap-side:18px!important;--flow-node-gap-vertical-bottom:46px!important;}
  .home-flow-final .flow-node p{font-size:.72rem!important;}
  .home-flow-final .flow-center .flow-final-copy{width:80%!important;transform:translateY(-10px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:1.02rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:1.10rem!important;}
}
@media (max-width:768px){
  .home-flow-final .home-flow-visual{--flow-center-box:178px!important;--flow-node-h:154px!important;--flow-node-gap-vertical-bottom:40px!important;}
  .home-flow-final .flow-node p{font-size:.74rem!important;line-height:1.24!important;}
  .home-flow-final .flow-center .flow-final-copy{width:84%!important;transform:translateY(-8px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:.84rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:.91rem!important;}
}
@media (max-width:480px){
  .home-flow-final .flow-center .flow-final-copy{width:88%!important;transform:translateY(-7px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:.73rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:.79rem!important;}
}


/* MODU v0.7.65 — clean orchestration toward final premium pass */
.home-flow-final{
  --flow-cycle:7.2s!important;
}
.home-flow-final .home-flow-visual{
  --flow-center-box: clamp(188px, 26.4%, 202px)!important;
  --flow-node-w: clamp(168px, 23.6%, 182px)!important;
  --flow-node-h: clamp(140px, 18.4%, 150px)!important;
  --flow-node-gap-side: clamp(16px, 1.55vw, 20px)!important;
  --flow-node-gap-vertical-top: clamp(20px, 1.85vw, 24px)!important;
  --flow-node-gap-vertical-bottom: clamp(26px, 2.35vw, 30px)!important;
  min-height: clamp(620px, 50vw, 704px)!important;
}
.home-flow-final .flow-orbit,
.home-flow-final .flow-core-svg{opacity:.76!important;}
.home-flow-final .flow-orbit .ring-1{border-color:rgba(46,123,181,.12)!important;opacity:.82!important;}
.home-flow-final .flow-core-svg .flow-core-base{stroke:rgba(46,123,181,.10)!important;}
.home-flow-final .flow-center,
.home-flow-final .flow-center.is-final,
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center,
.home-flow-final .home-flow-visual[data-home-flow-stage="centralize"] .flow-center,
.home-flow-final .home-flow-visual[data-home-flow-stage^="step-"] .flow-center,
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center{
  background:linear-gradient(180deg,var(--modu-project-blue) 0%,#183143 100%)!important;
  border:1px solid rgba(139,197,241,.16)!important;
  box-shadow:0 24px 52px rgba(31,61,95,.17),0 0 0 8px rgba(46,123,181,.028)!important;
}
.home-flow-final .flow-center:after{background:linear-gradient(90deg,transparent,rgba(139,197,241,.72),transparent)!important;opacity:.52!important;}
.home-flow-final .flow-center > img{
  opacity:1!important;
  filter:brightness(0) invert(1)!important;
  transform:translate(-50%,-50%) scale(.98)!important;
}
.home-flow-final .flow-center > strong{
  color:#8BC5F1!important;
  letter-spacing:.145em!important;
  opacity:1!important;
  filter:none!important;
  transform:translateX(-50%) translateY(0)!important;
}
.home-flow-final .flow-center em[data-flow-center-state]{display:none!important;}
.home-flow-final .flow-center > img,
.home-flow-final .flow-center > strong,
.home-flow-final .flow-center .flow-final-overlay{
  transition:opacity .28s ease,transform .34s cubic-bezier(.2,.8,.2,1)!important;
}
.home-flow-final .flow-center .flow-final-overlay{
  opacity:0!important;
  filter:none!important;
  transform:scale(.992)!important;
  padding:13.2% 10.6% 15.3%!important;
}
.home-flow-final .flow-center .flow-final-copy{width:75%!important;transform:translateY(-12px)!important;}
.home-flow-final .flow-center .flow-final-line{line-height:.90!important;color:#FFFFFF!important;}
.home-flow-final .flow-center .flow-final-line-1{font-size:clamp(1.10rem,1.36vw,1.26rem)!important;letter-spacing:.034em!important;}
.home-flow-final .flow-center .flow-final-line-2{font-size:clamp(1.20rem,1.50vw,1.38rem)!important;letter-spacing:.018em!important;font-weight:830!important;margin-top:.04em!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center{transform:translate(-50%,-50%) scale(1.03)!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > img{opacity:.13!important;transform:translate(-50%,-50%) scale(.83)!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > strong{opacity:0!important;transform:translateX(-50%) translateY(-2px)!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center .flow-final-overlay{opacity:1!important;transform:scale(1)!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center{transform:translate(-50%,-50%) scale(1.012)!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > img{opacity:.90!important;transform:translate(-50%,-50%) scale(.96)!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > strong{opacity:.82!important;}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center .flow-final-overlay{opacity:.22!important;transform:scale(.996)!important;}

.home-flow-final .flow-node{
  padding:16px 16px 15px!important;
  border:1px solid rgba(31,61,95,.05)!important;
  box-shadow:0 10px 22px rgba(31,61,95,.032)!important;
  background:rgba(255,255,255,.96)!important;
  opacity:.72!important;
}
.home-flow-final .flow-node .flow-icon{width:32px!important;height:32px!important;margin-bottom:9px!important;opacity:.76!important;}
.home-flow-final .flow-node h3{font-size:clamp(.81rem,1vw,.94rem)!important;line-height:1.12!important;margin:0 0 8px!important;color:rgba(31,61,95,.88)!important;}
.home-flow-final .flow-node p{
  display:block!important;
  overflow:visible!important;
  max-width:none!important;
  font-size:clamp(.73rem,.88vw,.82rem)!important;
  line-height:1.26!important;
  color:rgba(31,61,95,.68)!important;
  margin:0!important;
  text-wrap:pretty!important;
}
.home-flow-final .flow-node-line{opacity:.48!important;background:rgba(46,123,181,.18)!important;box-shadow:none!important;}
.home-flow-final .flow-node-dot{width:12px!important;height:12px!important;background:rgba(46,123,181,.48)!important;box-shadow:0 0 0 3px rgba(46,123,181,.06)!important;}
.home-flow-final .flow-node.is-active{opacity:1!important;box-shadow:0 18px 34px rgba(31,61,95,.07)!important;}
.home-flow-final .flow-node-left.is-active,.home-flow-final .flow-node-right.is-active{transform:translateY(-50%) scale(1.014)!important;}
.home-flow-final .flow-node-top.is-active,.home-flow-final .flow-node-bottom.is-active{transform:translateX(-50%) scale(1.014)!important;}
.home-flow-final .flow-node.is-active .flow-node-line{opacity:1!important;background:rgba(46,123,181,.72)!important;box-shadow:none!important;}
.home-flow-final .flow-node.is-active .flow-node-dot{background:#2E7BB5!important;box-shadow:0 0 0 6px rgba(46,123,181,.11)!important;}
.home-flow-final .flow-node.is-complete{opacity:.96!important;box-shadow:0 14px 28px rgba(31,61,95,.05)!important;}
.home-flow-final .flow-node.is-complete .flow-node-line{opacity:.84!important;background:rgba(46,123,181,.58)!important;}
.home-flow-final .flow-node.is-complete .flow-node-dot{background:#2E7BB5!important;box-shadow:0 0 0 4px rgba(46,123,181,.09)!important;}
.home-flow-final .flow-node-bottom{top:calc(50% + (var(--flow-center-box) / 2) + var(--flow-node-gap-vertical-bottom))!important;}

@media (min-width:1181px) and (max-width:1366px){
  .home-flow-final .home-flow-visual{--flow-center-box:194px!important;--flow-node-w:170px!important;--flow-node-h:142px!important;--flow-node-gap-vertical-bottom:28px!important;}
  .home-flow-final .flow-center .flow-final-copy{width:77%!important;transform:translateY(-11px)!important;}
}
@media (min-width:769px) and (max-width:1180px){
  .home-flow-final .home-flow-visual{--flow-center-box:186px!important;--flow-node-w:160px!important;--flow-node-h:138px!important;--flow-node-gap-side:16px!important;--flow-node-gap-vertical-top:18px!important;--flow-node-gap-vertical-bottom:24px!important;min-height:610px!important;}
  .home-flow-final .flow-node p{font-size:.74rem!important;line-height:1.24!important;}
  .home-flow-final .flow-center .flow-final-copy{width:79%!important;transform:translateY(-10px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:1.02rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:1.10rem!important;}
}
@media (max-width:768px){
  .home-flow-final .home-flow-visual{--flow-center-box:182px!important;--flow-node-h:146px!important;--flow-node-gap-vertical-bottom:22px!important;}
  .home-flow-final .flow-node p{font-size:.75rem!important;line-height:1.24!important;}
  .home-flow-final .flow-center .flow-final-copy{width:84%!important;transform:translateY(-8px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:.84rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:.92rem!important;}
}
@media (max-width:480px){
  .home-flow-final .flow-center .flow-final-copy{width:88%!important;transform:translateY(-7px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:.73rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:.80rem!important;}
}


/* MODU v0.7.66 — logo timing refinement for large screen and laptop */
.home-flow-final .flow-center > img,
.home-flow-final .flow-center > strong,
.home-flow-final .flow-center .flow-final-overlay{
  transition: opacity .34s ease, transform .40s cubic-bezier(.2,.8,.2,1)!important;
}
/* In the first closing beat, keep the logo alive behind the final message. */
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center{
  transform:translate(-50%,-50%) scale(1.028)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > img{
  opacity:.42!important;
  transform:translate(-50%,-50%) scale(.89)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > strong{
  opacity:.24!important;
  transform:translateX(-50%) translateY(-1px)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center .flow-final-overlay{
  opacity:.84!important;
  transform:scale(.998)!important;
}
/* Once the final message is settled, the logo can retreat more. */
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center{
  transform:translate(-50%,-50%) scale(1.03)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > img{
  opacity:.18!important;
  transform:translate(-50%,-50%) scale(.84)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > strong{
  opacity:0!important;
  transform:translateX(-50%) translateY(-2px)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center .flow-final-overlay{
  opacity:1!important;
  transform:scale(1)!important;
}
/* Return with a stronger logo and no feeling of disappearance. */
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center{
  transform:translate(-50%,-50%) scale(1.014)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > img{
  opacity:.97!important;
  transform:translate(-50%,-50%) scale(.985)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > strong{
  opacity:.88!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center .flow-final-overlay{
  opacity:.16!important;
  transform:scale(.997)!important;
}
/* Laptop breathing: slightly more room and calmer proportions. */
@media (min-width: 769px) and (max-width: 1366px){
  .home-flow-final .home-flow-visual{
    --flow-center-box: 190px!important;
    --flow-node-w: 162px!important;
    --flow-node-h: 136px!important;
    --flow-node-gap-side: 17px!important;
    --flow-node-gap-vertical-top: 18px!important;
    --flow-node-gap-vertical-bottom: 24px!important;
    min-height: 620px!important;
  }
  .home-flow-final .flow-node{padding:15px 15px 14px!important;}
  .home-flow-final .flow-node h3{font-size:.84rem!important;}
  .home-flow-final .flow-node p{font-size:.75rem!important;line-height:1.24!important;}
  .home-flow-final .flow-center .flow-final-copy{width:78%!important;transform:translateY(-10px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:1.03rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:1.10rem!important;}
}
@media (min-width: 1367px){
  .home-flow-final .home-flow-visual{
    --flow-center-box: 200px!important;
    --flow-node-w: 176px!important;
    --flow-node-h: 144px!important;
    --flow-node-gap-side: 18px!important;
    --flow-node-gap-vertical-top: 21px!important;
    --flow-node-gap-vertical-bottom: 28px!important;
  }
  .home-flow-final .flow-center .flow-final-copy{width:74%!important;transform:translateY(-12px)!important;}
}


/* MODU v0.7.67 — keep the logo present longer and more elegant */
.home-flow-final .flow-center > img,
.home-flow-final .flow-center > strong,
.home-flow-final .flow-center .flow-final-overlay{
  transition: opacity .42s ease, transform .46s cubic-bezier(.2,.8,.2,1)!important;
}
/* Closing phase: keep MODU visible while the final message takes the lead. */
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center{
  transform:translate(-50%,-50%) scale(1.026)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > img{
  opacity:.62!important;
  transform:translate(-50%,-50%) scale(.92)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > strong{
  opacity:.38!important;
  transform:translateX(-50%) translateY(-1px)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center .flow-final-overlay{
  opacity:.74!important;
  transform:scale(.997)!important;
}
/* Hold phase: the logo retreats, but does not disappear abruptly. */
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center{
  transform:translate(-50%,-50%) scale(1.028)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > img{
  opacity:.34!important;
  transform:translate(-50%,-50%) scale(.88)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > strong{
  opacity:.16!important;
  transform:translateX(-50%) translateY(-1px)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center .flow-final-overlay{
  opacity:.96!important;
  transform:scale(1)!important;
}
/* Returning: immediate recognisability of the logo and descriptor. */
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > img{
  opacity:.98!important;
  transform:translate(-50%,-50%) scale(.99)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > strong{
  opacity:.94!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center .flow-final-overlay{
  opacity:.12!important;
  transform:scale(.998)!important;
}
/* Laptop and large screen: keep the nucleus breathing without compressing the logo. */
@media (min-width: 769px) and (max-width: 1366px){
  .home-flow-final .home-flow-visual{
    --flow-center-box: 192px!important;
  }
  .home-flow-final .flow-center > img{max-width:61%!important;}
}
@media (min-width: 1367px){
  .home-flow-final .flow-center > img{max-width:62%!important;}
}


/* MODU v0.7.68 — logo and COORDINACIÓN remain fully visible until final message begins */
.home-flow-final .home-flow-visual[data-home-flow-stage="idle"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="intake"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="centralize"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage^="step-"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="consolidate"] .flow-center > img{
  opacity:1!important;
  visibility:visible!important;
  filter:brightness(0) invert(1)!important;
  transform:translate(-50%,-50%) scale(1)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="idle"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage="intake"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage="centralize"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage^="step-"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage="consolidate"] .flow-center > strong{
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  transform:translateX(-50%) translateY(0)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="idle"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage="intake"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage="centralize"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage^="step-"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage="consolidate"] .flow-center .flow-final-overlay{
  opacity:0!important;
  visibility:hidden!important;
  transform:scale(.992)!important;
}
/* The hand-off begins only when PROYECTO EN CONTROL actually appears. */
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > img{
  opacity:.38!important;
  transform:translate(-50%,-50%) scale(.90)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > strong{
  opacity:.20!important;
  transform:translateX(-50%) translateY(-1px)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center .flow-final-overlay{
  opacity:.88!important;
  visibility:visible!important;
  transform:scale(1)!important;
}


/* MODU v0.7.69 — preserve original blue logo colours during COORDINACIÓN */
.home-flow-final .home-flow-visual[data-home-flow-stage="idle"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="intake"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="centralize"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage^="step-"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="consolidate"] .flow-center > img{
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  transform:translate(-50%,-50%) scale(1)!important;
}
/* Keep the original logo colours during the first hand-off frame too. */
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > img{
  filter:none!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > img{
  filter:none!important;
}


/* MODU v0.7.70 — keep blue logo fully visible until final message enters */
.home-flow-final .flow-center > img,
.home-flow-final .flow-center > strong,
.home-flow-final .flow-center .flow-final-overlay{
  transition: opacity .40s ease, transform .44s cubic-bezier(.2,.8,.2,1)!important;
}
/* Pre-final states: logo and COORDINACIÓN stay fully present, in brand blue, with no premature fade. */
.home-flow-final .home-flow-visual[data-home-flow-stage="idle"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="intake"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="centralize"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage^="step-"] .flow-center > img,
.home-flow-final .home-flow-visual[data-home-flow-stage="consolidate"] .flow-center > img{
  opacity:1!important;
  filter:none!important;
  transform:translate(-50%,-50%) scale(1)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="idle"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage="intake"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage="centralize"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage^="step-"] .flow-center > strong,
.home-flow-final .home-flow-visual[data-home-flow-stage="consolidate"] .flow-center > strong{
  opacity:1!important;
  color:#8BC5F1!important;
  filter:none!important;
  transform:translateX(-50%) translateY(0)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="idle"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage="intake"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage="centralize"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage^="step-"] .flow-center .flow-final-overlay,
.home-flow-final .home-flow-visual[data-home-flow-stage="consolidate"] .flow-center .flow-final-overlay{
  opacity:0!important;
  transform:scale(.992)!important;
}
/* Final message entrance: begin the crossfade only here, keeping the logo still visible underneath. */
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center{
  transform:translate(-50%,-50%) scale(1.028)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > img{
  opacity:.58!important;
  filter:none!important;
  transform:translate(-50%,-50%) scale(.92)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center > strong{
  opacity:.34!important;
  color:#8BC5F1!important;
  transform:translateX(-50%) translateY(-1px)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="complete"] .flow-center .flow-final-overlay{
  opacity:.82!important;
  transform:scale(.998)!important;
}
/* Hold: final message leads, but the logo still leaves a subtle branded footprint. */
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > img{
  opacity:.20!important;
  filter:none!important;
  transform:translate(-50%,-50%) scale(.86)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center > strong{
  opacity:0!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="hold"] .flow-center .flow-final-overlay{
  opacity:1!important;
  transform:scale(1)!important;
}
/* Return: logo becomes immediately recognisable again. */
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > img{
  opacity:.98!important;
  filter:none!important;
  transform:translate(-50%,-50%) scale(.99)!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center > strong{
  opacity:.94!important;
  color:#8BC5F1!important;
}
.home-flow-final .home-flow-visual[data-home-flow-stage="returning"] .flow-center .flow-final-overlay{
  opacity:.12!important;
  transform:scale(.998)!important;
}
/* Laptop-specific breathing only, without touching large desktop layout too much. */
@media (min-width:769px) and (max-width:1366px){
  .home-flow-final .home-flow-visual{
    --flow-center-box:190px!important;
    --flow-node-w:160px!important;
    --flow-node-h:132px!important;
    --flow-node-gap-side:18px!important;
    --flow-node-gap-vertical-top:20px!important;
    --flow-node-gap-vertical-bottom:24px!important;
    min-height:618px!important;
  }
  .home-flow-final .flow-node{padding:15px 15px 14px!important;}
  .home-flow-final .flow-node h3{font-size:.84rem!important;}
  .home-flow-final .flow-node p{font-size:.75rem!important;line-height:1.24!important;}
  .home-flow-final .flow-center .flow-final-copy{width:78%!important;transform:translateY(-10px)!important;}
  .home-flow-final .flow-center .flow-final-line-1{font-size:1.03rem!important;}
  .home-flow-final .flow-center .flow-final-line-2{font-size:1.10rem!important;}
}


/* MODU v0.7.71 — stronger contrast from inactive to active cards */
.home-flow-final .flow-node{
  opacity:.50!important;
  background:rgba(255,255,255,.88)!important;
  border:1px solid rgba(31,61,95,.035)!important;
  box-shadow:0 8px 18px rgba(31,61,95,.022)!important;
}
.home-flow-final .flow-node .flow-icon{
  opacity:.48!important;
}
.home-flow-final .flow-node h3{
  color:rgba(31,61,95,.66)!important;
}
.home-flow-final .flow-node p{
  color:rgba(31,61,95,.50)!important;
}
.home-flow-final .flow-node-line{
  opacity:.28!important;
  background:rgba(46,123,181,.11)!important;
}
.home-flow-final .flow-node-dot{
  background:rgba(46,123,181,.26)!important;
  box-shadow:0 0 0 2px rgba(46,123,181,.035)!important;
}
/* Keep the activated state powerful and clear. */
.home-flow-final .flow-node.is-active{
  opacity:1!important;
  background:rgba(255,255,255,.98)!important;
  border:1px solid rgba(31,61,95,.055)!important;
  box-shadow:0 18px 34px rgba(31,61,95,.07)!important;
}
.home-flow-final .flow-node.is-active .flow-icon{
  opacity:.90!important;
}
.home-flow-final .flow-node.is-active h3{
  color:rgba(31,61,95,.90)!important;
}
.home-flow-final .flow-node.is-active p{
  color:rgba(31,61,95,.70)!important;
}
.home-flow-final .flow-node.is-active .flow-node-line{
  opacity:1!important;
  background:rgba(46,123,181,.72)!important;
}
.home-flow-final .flow-node.is-active .flow-node-dot{
  background:#2E7BB5!important;
  box-shadow:0 0 0 6px rgba(46,123,181,.11)!important;
}
/* Completed state remains confident, but a touch calmer than the actively highlighted card. */
.home-flow-final .flow-node.is-complete{
  opacity:.92!important;
  background:rgba(255,255,255,.965)!important;
}
.home-flow-final .flow-node.is-complete .flow-icon{
  opacity:.78!important;
}
.home-flow-final .flow-node.is-complete h3{
  color:rgba(31,61,95,.84)!important;
}
.home-flow-final .flow-node.is-complete p{
  color:rgba(31,61,95,.64)!important;
}
.home-flow-final .flow-node.is-complete .flow-node-line{
  opacity:.78!important;
  background:rgba(46,123,181,.56)!important;
}
.home-flow-final .flow-node.is-complete .flow-node-dot{
  background:#2E7BB5!important;
  box-shadow:0 0 0 4px rgba(46,123,181,.08)!important;
}


/* =========================================================
   MODU v0.7.101 · Contacto breve, profesional y robusto
   ========================================================= */
.modu-contact-page{background:#f6f3ed;color:var(--modu-project-blue);}
.modu-contact-hero{padding:150px 28px 112px;min-height:calc(100vh - 40px);display:flex;align-items:center;}
.modu-contact-wrap{width:min(1450px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,.82fr) minmax(540px,1.18fr);gap:clamp(64px,8vw,130px);align-items:center;}
.modu-contact-intro{max-width:650px;padding-left:10px;}
.modu-contact-eyebrow{display:flex;align-items:center;gap:14px;margin:0 0 30px;color:var(--modu-brand-blue);font-family:Sora,Inter,sans-serif;font-size:12px;font-weight:850;letter-spacing:.22em;text-transform:uppercase;}
.modu-contact-eyebrow:after{content:"";width:42px;height:1px;background:color-mix(in srgb, var(--modu-brand-blue) 62%, white);}
.modu-contact-intro h1{margin:0;color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:clamp(52px,5.2vw,84px);line-height:.99;letter-spacing:-.065em;font-weight:750;}
.modu-contact-intro h1 span{display:block;color:var(--modu-brand-blue);}
.modu-contact-lead{max-width:610px;margin:34px 0 0;color:#40596c;font-size:clamp(18px,1.5vw,22px);line-height:1.55;}
.modu-contact-reassurance{max-width:590px;margin:22px 0 0;padding-left:20px;border-left:2px solid var(--blue-soft);color:#617485;font-size:15px;line-height:1.6;}
.modu-contact-reassurance strong{color:var(--modu-project-blue);}
.modu-contact-direct{margin-top:56px;padding-top:28px;border-top:1px solid rgba(31,61,95,.12);display:grid;gap:7px;}
.modu-contact-direct span,.modu-contact-direct small{color:#738594;font-size:13px;}
.modu-contact-direct a{width:max-content;color:var(--modu-project-blue);text-decoration:none;font-family:Sora,Inter,sans-serif;font-size:clamp(20px,2vw,27px);font-weight:750;letter-spacing:-.035em;}
.modu-contact-form-card{border:1px solid rgba(31,61,95,.11);border-radius:34px;background:rgba(255,255,255,.92);padding:clamp(30px,4vw,58px);box-shadow:0 28px 80px rgba(31,61,95,.10);backdrop-filter:blur(8px);}
.modu-contact-form-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px;padding-bottom:22px;border-bottom:1px solid #e2e9ee;}
.modu-contact-form-head p{margin:0;color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:23px;font-weight:750;letter-spacing:-.035em;}
.modu-contact-form-head span{color:#8594a0;font-size:12px;}
.modu-contact-form{display:grid;gap:20px;}
.modu-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.modu-field{display:grid;gap:9px;}
.modu-field>span{color:#27475f;font-size:13px;font-weight:720;}
.modu-field input,.modu-field select,.modu-field textarea{width:100%;box-sizing:border-box;border:1px solid #d8e2e9;border-radius:14px;background:#fbfcfd;color:#152e41;font:inherit;font-size:15px;outline:none;padding:15px 16px;transition:border-color .2s,box-shadow .2s,background .2s;}
.modu-field textarea{min-height:140px;resize:vertical;line-height:1.55;}
.modu-field input::placeholder,.modu-field textarea::placeholder{color:#9aa7b1;}
.modu-field input:focus,.modu-field select:focus,.modu-field textarea:focus{border-color:#5ba6da;background:#fff;box-shadow:0 0 0 4px rgba(47,134,197,.10);}
.modu-contact-optional{border:1px solid #dfe8ee;border-radius:15px;background:#f8fbfd;overflow:hidden;}
.modu-contact-optional summary{cursor:pointer;list-style:none;padding:15px 17px;color:var(--modu-brand-blue);font-size:13px;font-weight:760;}
.modu-contact-optional summary::-webkit-details-marker{display:none;}
.modu-contact-optional summary:after{content:"+";float:right;font-size:18px;font-weight:500;line-height:.8;}
.modu-contact-optional[open] summary:after{content:"−";}
.modu-contact-optional-body{display:grid;gap:16px;padding:4px 16px 18px;}
.modu-contact-privacy-note{margin:0;color:#6c7d89;font-size:12.5px;line-height:1.55;}
.modu-contact-privacy-note a{color:var(--modu-brand-blue);font-weight:650;text-underline-offset:2px;}
.modu-contact-submit{border:0;border-radius:999px;background:var(--modu-project-blue);color:#fff;padding:17px 24px;font-family:Sora,Inter,sans-serif;font-size:14px;font-weight:800;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:13px;box-shadow:0 12px 30px rgba(31,61,95,.16);transition:transform .2s,background .2s,box-shadow .2s;}
.modu-contact-submit:hover{background:var(--modu-brand-blue);transform:translateY(-2px);box-shadow:0 16px 34px rgba(31,61,95,.20);}
.modu-contact-submit span{font-size:20px;font-weight:400;}
.modu-contact-microcopy{margin:-7px 0 0;text-align:center;color:#8b98a2;font-size:12px;}
.modu-contact-alert{margin-bottom:24px;padding:16px 18px;border-radius:14px;display:grid;gap:4px;font-size:13px;}
.modu-contact-alert.is-success{background:#edf8f2;color:#245b42;border:1px solid #cce9d9;}
.modu-contact-alert.is-error{background:#fff3f1;color:#8a3d34;border:1px solid #f0d2cd;}
.modu-hp{position:absolute!important;left:-9999px!important;opacity:0!important;}
@media(max-width:1050px){.modu-contact-wrap{grid-template-columns:1fr;gap:54px;}.modu-contact-intro{max-width:780px;}.modu-contact-hero{padding-top:130px;}.modu-contact-direct{margin-top:38px;}}
@media(max-width:680px){.modu-contact-hero{padding:110px 18px 70px;}.modu-contact-intro{padding-left:0;}.modu-contact-intro h1{font-size:clamp(44px,13vw,62px);}.modu-contact-form-card{border-radius:24px;padding:26px 20px;}.modu-contact-form-head{display:block;}.modu-contact-form-head span{display:block;margin-top:8px;}.modu-field-grid{grid-template-columns:1fr;}.modu-contact-direct{margin-top:32px;}.modu-contact-reassurance{padding-left:16px;}}

/* =========================================================
   MODU v0.7.102 · Legal Design System
   Aviso Legal, Privacidad y Cookies share one visual system.
   Brand identity comes exclusively from the global tokens.
   ========================================================= */
.modu-legal-page{
  --legal-bg:var(--cream);
  --legal-ink:var(--modu-project-blue);
  --legal-accent:var(--modu-brand-blue);
  --legal-soft-blue:#EEF4F7;
  --legal-soft-sand:#F4EEE4;
  background:var(--legal-bg);
  color:var(--legal-ink);
  min-height:70vh;
}
.modu-legal-wrap{width:min(1180px,calc(100% - 48px));margin:0 auto;}
.modu-legal-hero{padding:clamp(118px,13vw,176px) 0 clamp(54px,6vw,82px);background:linear-gradient(145deg,var(--legal-soft-blue) 0%,var(--legal-bg) 64%,var(--legal-soft-sand) 100%);border-bottom:1px solid rgba(31,61,95,.08);}
.modu-legal-eyebrow{margin:0 0 18px;color:var(--legal-accent);font:700 12px/1.2 Inter,sans-serif;letter-spacing:.18em;text-transform:uppercase;}
.modu-legal-hero h1{margin:0;max-width:920px;color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:clamp(43px,6.1vw,82px);line-height:.98;letter-spacing:-.045em;font-weight:700;}
.modu-legal-lead{max-width:750px;margin:24px 0 0;color:#506573;font-size:clamp(17px,1.65vw,22px);line-height:1.55;}
.modu-legal-updated{margin:24px 0 0;color:#738592;font-size:13px;letter-spacing:.02em;}
.modu-legal-layout{display:grid;grid-template-columns:230px minmax(0,790px);gap:clamp(54px,8vw,112px);align-items:start;padding-top:clamp(66px,8vw,104px);padding-bottom:clamp(88px,10vw,140px);}
.modu-legal-index{position:sticky;top:108px;display:grid;gap:4px;padding:23px 0;border-top:1px solid rgba(31,61,95,.18);border-bottom:1px solid rgba(31,61,95,.12);}
.modu-legal-index strong{margin-bottom:11px;color:var(--modu-project-blue);font-size:12px;letter-spacing:.12em;text-transform:uppercase;}
.modu-legal-index a{padding:7px 0;color:#607582;font-size:13px;line-height:1.35;text-decoration:none;transition:color .2s ease,transform .2s ease;}
.modu-legal-index a:hover{color:var(--legal-accent);transform:translateX(3px);}
.modu-legal-content{min-width:0;}
.modu-legal-content section{padding:0 0 clamp(38px,5vw,62px);margin:0 0 clamp(38px,5vw,62px);border-bottom:1px solid rgba(31,61,95,.11);scroll-margin-top:120px;}
.modu-legal-content section:last-child{margin-bottom:0;border-bottom:0;}
.modu-legal-content h2{margin:0 0 21px;color:var(--modu-project-blue);font-family:Sora,Inter,sans-serif;font-size:clamp(25px,2.8vw,38px);line-height:1.12;letter-spacing:-.035em;}
.modu-legal-content h3{margin:0 0 12px;color:var(--modu-project-blue);font-size:18px;line-height:1.3;}
.modu-legal-content p,.modu-legal-content li{color:#4f626f;font-size:16px;line-height:1.78;}
.modu-legal-content p{margin:0 0 16px;}
.modu-legal-content p:last-child{margin-bottom:0;}
.modu-legal-content ul{margin:18px 0 20px;padding-left:22px;}
.modu-legal-content li+li{margin-top:8px;}
.modu-legal-content a{color:var(--modu-brand-blue);font-weight:650;text-underline-offset:3px;}
.modu-legal-data{display:grid;margin:26px 0 0;border-top:1px solid rgba(31,61,95,.14);}
.modu-legal-data>div{display:grid;grid-template-columns:minmax(150px,210px) 1fr;gap:26px;padding:17px 0;border-bottom:1px solid rgba(31,61,95,.1);}
.modu-legal-data dt{color:#6c7e89;font-size:13px;font-weight:650;letter-spacing:.02em;}
.modu-legal-data dd{margin:0;color:var(--modu-project-blue);font-size:15px;line-height:1.6;font-weight:580;}
.modu-legal-cards{display:grid;gap:14px;margin-top:25px;}
.modu-legal-card{padding:25px 27px;background:rgba(255,255,255,.68);border:1px solid rgba(31,61,95,.1);border-radius:18px;box-shadow:0 12px 36px rgba(31,61,95,.045);}
.modu-legal-card p{font-size:15px;line-height:1.7;}
.modu-cookie-status{display:flex;gap:17px;align-items:flex-start;margin:24px 0 28px;padding:24px 26px;border-radius:18px;background:#edf6f1;border:1px solid rgba(44,125,86,.18);}
.modu-cookie-status>span{display:grid;place-items:center;flex:0 0 31px;height:31px;border-radius:50%;background:#2f7e59;color:#fff;font-weight:800;}
.modu-cookie-status strong{display:block;margin:2px 0 5px;color:#1c4e38;font-size:16px;}
.modu-cookie-status p{margin:0;color:#466858;font-size:14px;line-height:1.6;}
.modu-legal-table-wrap{overflow-x:auto;margin:25px 0;border:1px solid rgba(31,61,95,.12);border-radius:16px;background:rgba(255,255,255,.62);}
.modu-legal-table{width:100%;min-width:650px;border-collapse:collapse;text-align:left;}
.modu-legal-table th,.modu-legal-table td{padding:16px 18px;border-bottom:1px solid rgba(31,61,95,.1);vertical-align:top;color:#4f626f;font-size:13.5px;line-height:1.55;}
.modu-legal-table th{background:rgba(31,61,95,.035);color:var(--modu-project-blue);font-weight:700;}
.modu-legal-table tr:last-child td{border-bottom:0;}
.footer-legal-menu{display:flex;flex-wrap:wrap;gap:8px 22px;margin:0;padding:0;list-style:none;}
.footer-legal-menu a{white-space:nowrap;}
@media(max-width:840px){
  .modu-legal-wrap{width:min(100% - 32px,720px);}
  .modu-legal-layout{grid-template-columns:1fr;gap:42px;padding-top:56px;}
  .modu-legal-index{position:static;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 16px;}
  .modu-legal-index strong{grid-column:1/-1;}
}
@media(max-width:560px){
  .modu-legal-hero{padding-top:104px;}
  .modu-legal-index{grid-template-columns:1fr;}
  .modu-legal-data>div{grid-template-columns:1fr;gap:5px;padding:15px 0;}
  .modu-legal-card{padding:22px 20px;}
  .footer-legal-menu{justify-content:center;}
}


/* =========================================================
   MODU v0.7.84 · HOME COLOR & CONTRAST SAFETY
   Scope: Header + Home only. Brand colours are explicit;
   functional deep backgrounds remain deliberately untouched.
   ========================================================= */

/* Header/logo remains isolated from any page or hero background. */
.site-header{
  background:var(--modu-logo-safe-surface);
  border-color:var(--modu-logo-safe-border);
  box-shadow:0 16px 46px rgba(31,61,95,.14);
}
.site-header .main-nav a,
.site-header .lang-switch,
.site-header .lang-switch a{color:var(--modu-project-blue);}
.site-header .main-nav a:hover,
.site-header .main-nav a.active,
.site-header .lang-switch a.active{color:var(--modu-brand-blue);}
.site-header .header-cta,
.site-header .menu-toggle{background:var(--modu-project-blue);color:#fff;}
.site-header .header-cta:hover{background:var(--modu-brand-blue);}
.site-header a:focus-visible,
.site-header button:focus-visible{
  outline:3px solid rgba(46,123,181,.42);
  outline-offset:3px;
}

/* Hero: official PROJECT blue is the corporate dark overlay.
   The media still supplies depth; no blanket navy replacement is made elsewhere. */
.hero{
  background:
    linear-gradient(90deg,rgba(31,61,95,.70) 0%,rgba(31,61,95,.42) 47%,rgba(31,61,95,.08) 100%),
    url('../img/project-06-logistica-instalacion.png') center/cover no-repeat;
}
.hero .button-primary,
.hero [class*="hero-primary"]{
  --hero-primary-bg:var(--modu-brand-blue);
}
.hero-panel{
  background:rgba(255,253,248,.90);
  color:var(--modu-project-blue);
  border-color:rgba(255,255,255,.62);
  box-shadow:0 28px 76px rgba(31,61,95,.22);
}
.hero-panel h3,
.hero-step b{color:var(--modu-project-blue);}
.hero-step strong{color:var(--modu-brand-blue);}

/* Home light surfaces: identity colours carry hierarchy, not the background itself. */
#home-proyectos .home-projects-title-row h2,
#home-proyectos .home-projects-button,
.home-why h2,
.home-why .home-why-cta{
  color:var(--modu-project-blue);
}
#home-proyectos .home-projects-eyebrow,
#home-proyectos .projects-accent,
.home-why .home-why-eyebrow,
.home-why h2 .why-accent{
  color:var(--modu-brand-blue)!important;
}
#home-proyectos .home-projects-button{
  background:var(--modu-project-blue);
  color:#fff;
}
#home-proyectos .home-projects-button:hover{
  background:var(--modu-brand-blue);
  color:#fff;
}

/* Do not recolour Flow's deep functional centre in this pass.
   Its dedicated visual audit remains separate to avoid damaging the animation. */


/* =========================================================
   MODU v0.7.99 — Página Nosotros · Design System estable
   Layout y paleta dejan de depender de ACF/PHP.
   ========================================================= */
.modu-about41{
  --a41-bg:#F7F4EF;
  --a41-alt:#FFFFFF;
  --a41-dark:var(--modu-project-blue);
  --a41-blue:var(--modu-brand-blue);
  --a41-light:#8BC5F1;
  --a41-max:1240px;
  --a41-pad:88px;
}
.modu-about41{background:var(--a41-bg);color:var(--a41-dark);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow:hidden}.modu-about41 *{box-sizing:border-box}.about41-wrap{width:min(var(--a41-max),calc(100% - 48px));margin:0 auto}.about41-section{padding:clamp(64px,6vw,var(--a41-pad)) 0}.about41-white{background:var(--a41-alt)}.about41-eyebrow{display:flex;align-items:center;gap:12px;width:max-content;max-width:100%;margin:0 0 22px;color:var(--a41-blue);font-size:.7rem;font-weight:850;letter-spacing:.22em;text-transform:uppercase;white-space:nowrap}.about41-eyebrow:before,.about41-eyebrow:after{content:"";width:36px;height:1px;background:rgba(46,123,181,.42)}.about41-title{font-family:Sora,Inter,sans-serif;margin:0;color:var(--a41-blue);line-height:1.03;letter-spacing:-.052em}.about41-title-dark{color:var(--a41-dark)}.about41-h1{font-size:clamp(2.75rem,5.25vw,5.5rem);max-width:1000px}.about41-h2{font-size:clamp(2rem,3.7vw,3.85rem);max-width:900px}.about41-text{margin:22px 0 0;max-width:760px;color:rgba(31,61,95,.68);font-size:clamp(1rem,1.08vw,1.14rem);line-height:1.72}.about41-lead{font-size:clamp(1.08rem,1.3vw,1.28rem);color:rgba(31,61,95,.8)}
.about41-hero{padding-top:clamp(124px,10vw,164px);padding-bottom:clamp(70px,6.2vw,96px);background:linear-gradient(180deg,#fff 0%,var(--a41-bg) 100%)}.about41-hero-grid{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(320px,.62fr);gap:clamp(38px,5.2vw,72px);align-items:center}.about41-hero-note{margin-top:30px;padding-left:20px;border-left:2px solid var(--a41-blue);font-family:Sora,Inter,sans-serif;font-size:clamp(1.05rem,1.35vw,1.3rem);line-height:1.42;font-weight:700;letter-spacing:-.025em;max-width:700px}.about41-control{align-self:center;transform:translateY(-18px);padding:clamp(24px,2.6vw,34px);border:1px solid rgba(31,61,95,.11);border-radius:28px;background:rgba(255,255,255,.82);box-shadow:0 24px 68px rgba(31,61,95,.065)}.about41-control>small{color:var(--a41-blue);font-size:.68rem;font-weight:850;letter-spacing:.17em;text-transform:uppercase}.about41-control h2{margin:13px 0 20px;font-family:Sora,Inter,sans-serif;font-size:clamp(1.4rem,1.85vw,1.95rem);line-height:1.12;letter-spacing:-.043em}.about41-control-row{display:grid;grid-template-columns:34px 1fr;gap:14px;padding:14px 0;border-top:1px solid rgba(31,61,95,.1)}.about41-control-row span{color:var(--a41-blue);font-family:Sora,Inter,sans-serif;font-size:.73rem;font-weight:850}.about41-control-row strong{display:block;font-size:.95rem}.about41-control-row small{display:block;margin-top:4px;color:rgba(31,61,95,.53);line-height:1.5}.about41-control-foot{margin-top:18px;padding-top:17px;border-top:1px solid rgba(31,61,95,.1);font-size:.84rem;line-height:1.55;color:rgba(31,61,95,.56)}
.about41-directors-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.68fr);gap:clamp(34px,5.5vw,72px);align-items:end;margin-bottom:34px}.about41-directors-head .about41-h2{font-size:clamp(2rem,3.3vw,3.45rem);max-width:820px}.about41-directors-head .about41-text{margin:0;max-width:560px}.about41-directors{border-top:1px solid rgba(31,61,95,.14);border-bottom:1px solid rgba(31,61,95,.14)}.about41-director{display:grid;grid-template-columns:minmax(185px,.32fr) minmax(0,.68fr);gap:clamp(28px,5vw,68px);padding:clamp(29px,3.25vw,44px) 0}.about41-director+.about41-director{border-top:1px solid rgba(31,61,95,.14)}.about41-director small{display:block;color:var(--a41-blue);font-size:.67rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase;margin-bottom:13px}.about41-director h3{font-family:Sora,Inter,sans-serif;font-size:clamp(1.75rem,2.6vw,2.8rem);line-height:1.05;letter-spacing:-.05em;margin:0}.about41-director h4{font-family:Sora,Inter,sans-serif;font-size:clamp(1.18rem,1.75vw,1.75rem);line-height:1.17;letter-spacing:-.035em;margin:0;color:var(--a41-blue)}.about41-director p{margin:14px 0 0;max-width:690px;color:rgba(31,61,95,.66);line-height:1.68}.about41-directors-close{margin-top:27px;font-family:Sora,Inter,sans-serif;font-size:clamp(1.25rem,2vw,2rem);line-height:1.25;letter-spacing:-.04em;max-width:850px}
.about41-model{background:var(--a41-dark);color:#fff}.about41-model-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(310px,.66fr);gap:clamp(46px,8vw,104px);align-items:center}.about41-model .about41-eyebrow{color:var(--a41-light)}.about41-model .about41-eyebrow:before,.about41-model .about41-eyebrow:after{background:rgba(139,197,241,.45)}.about41-model .about41-title{color:var(--a41-light)}.about41-model .about41-title-dark{color:#fff}.about41-model .about41-text{color:rgba(255,255,255,.72)}.about41-network{align-self:center;padding:clamp(28px,3vw,36px);border:1px solid rgba(139,197,241,.24);border-radius:26px;background:rgba(255,255,255,.055);box-shadow:0 22px 54px rgba(0,0,0,.12)}.about41-network small{color:var(--a41-light);font-size:.68rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.about41-network h3{color:#F7F4EF;font-family:Sora,Inter,sans-serif;font-size:clamp(1.4rem,2.1vw,2.15rem);line-height:1.13;letter-spacing:-.045em;margin:14px 0 24px}.about41-network-tags{display:flex;flex-wrap:wrap;gap:9px}.about41-network-tags span{padding:9px 12px;border:1px solid rgba(255,255,255,.16);border-radius:999px;color:rgba(255,255,255,.82);font-size:.78rem}.about41-network-foot{position:relative;margin-top:25px;padding:20px 0 0 16px;border-top:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.72);font-size:.88rem;line-height:1.6}.about41-network-foot:before{content:"";position:absolute;left:0;top:23px;width:3px;height:28px;border-radius:99px;background:var(--a41-light)}
.about41-benefit-head{text-align:center}.about41-benefit-head .about41-eyebrow{margin-left:auto;margin-right:auto}.about41-benefit-head .about41-title,.about41-benefit-head .about41-text{margin-left:auto;margin-right:auto}.about41-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:44px;border-top:1px solid rgba(31,61,95,.14)}.about41-benefit{padding:27px 25px 0 0}.about41-benefit+.about41-benefit{padding-left:25px;border-left:1px solid rgba(31,61,95,.14)}.about41-benefit small{color:var(--a41-blue);font-family:Sora,Inter,sans-serif;font-size:.72rem;font-weight:850}.about41-benefit h3{font-family:Sora,Inter,sans-serif;font-size:1.18rem;letter-spacing:-.03em;margin:14px 0 8px}.about41-benefit p{margin:0;color:rgba(31,61,95,.61);line-height:1.58;font-size:.93rem}.about41-flow-cta{display:flex;justify-content:center;margin-top:36px}.about41-flow-link{display:inline-flex;align-items:center;gap:9px;margin:0;padding:12px 18px;border:1px solid rgba(46,123,181,.24);border-radius:999px;background:rgba(46,123,181,.055);color:var(--a41-blue);font-weight:850;text-decoration:none;transition:transform .2s ease,background .2s ease,border-color .2s ease}.about41-flow-link:after{content:"→";transition:transform .2s ease}.about41-flow-link:hover{transform:translateY(-1px);background:rgba(46,123,181,.09);border-color:rgba(46,123,181,.38)}.about41-flow-link:hover:after{transform:translateX(4px)}


.about45-laptop-line{display:inline}
@media(min-width:981px) and (max-width:1800px){.about45-laptop-line{display:block}}
@media(min-width:981px) and (max-width:1600px){
  .about41-directors-section .about41-wrap{width:min(var(--a41-max),calc(100% - 72px),1360px)}
  .about41-directors-head{grid-template-columns:minmax(0,1.06fr) minmax(360px,.72fr);gap:clamp(38px,4vw,56px);align-items:end;margin-bottom:28px}
  .about41-directors-head .about41-h2{font-size:clamp(2.55rem,3.15vw,3.25rem);line-height:1.01;max-width:760px}
  .about41-directors-head .about41-text{max-width:500px;font-size:clamp(.98rem,1.02vw,1.08rem);line-height:1.66}
  .about41-director{grid-template-columns:minmax(240px,.37fr) minmax(0,.63fr);gap:clamp(38px,4vw,56px);padding:clamp(30px,2.7vw,38px) 0}
  .about41-director h3{font-size:clamp(2rem,2.25vw,2.48rem)}
  .about41-director h4{font-size:clamp(1.28rem,1.55vw,1.58rem)}
  .about41-director p{max-width:680px;margin-top:12px;line-height:1.62}
  .about41-directors-close{margin-top:22px;font-size:clamp(1.35rem,1.7vw,1.75rem);max-width:790px}
}
@media(max-width:980px){.about41-hero-grid,.about41-directors-head,.about41-model-grid{grid-template-columns:1fr}.about41-director{grid-template-columns:1fr}.about41-benefits{grid-template-columns:1fr}.about41-benefit,.about41-benefit+.about41-benefit{padding:23px 0;border-left:0;border-top:1px solid rgba(31,61,95,.14)}.about41-benefits .about41-benefit:first-child{border-top:0}.about41-control{max-width:640px;transform:none}.about41-hero-grid{align-items:start}}@media(max-width:640px){.about41-wrap{width:min(var(--a41-max),calc(100% - 30px))}.about41-section{padding:58px 0}.about41-hero{padding-top:116px;padding-bottom:68px}.about41-eyebrow{white-space:normal;gap:9px}.about41-eyebrow:before,.about41-eyebrow:after{width:24px}.about41-control,.about41-network{border-radius:22px}.about41-director{padding:30px 0}}
/* MODU v0.7.105 — Nosotros · retratos de dirección */
.about41-directors--portraits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,3.2vw,44px);border:0}.about41-directors--portraits .about41-director{display:grid;grid-template-columns:1fr;gap:0;padding:0;border:1px solid rgba(31,61,95,.12);border-radius:30px;overflow:hidden;background:#fff;box-shadow:0 24px 70px rgba(31,61,95,.07)}.about41-directors--portraits .about41-director+.about41-director{border-top:1px solid rgba(31,61,95,.12)}.about41-director-photo{position:relative;aspect-ratio:4/5;margin:0;overflow:hidden;background:var(--a41-bg)}.about41-director-photo:after{content:"";position:absolute;inset:auto 0 0;height:18%;background:linear-gradient(180deg,rgba(31,61,95,0),rgba(31,61,95,.08));pointer-events:none}.about41-director-img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 42%;transition:transform .5s ease}.about41-directors--portraits .about41-director:hover .about41-director-img{transform:scale(1.018)}.about41-directors--portraits .about41-director-identity{padding:clamp(24px,2.4vw,32px) clamp(24px,2.6vw,34px) 0}.about41-directors--portraits .about41-director-copy{padding:16px clamp(24px,2.6vw,34px) clamp(28px,2.8vw,38px)}.about41-directors--portraits .about41-director h3{font-size:clamp(2rem,2.55vw,2.72rem)}.about41-directors--portraits .about41-director h4{font-size:clamp(1.17rem,1.4vw,1.45rem);max-width:500px}.about41-directors--portraits .about41-director p{max-width:540px}.about41-directors--portraits+.about41-directors-close{margin-top:34px}
@media(max-width:980px){.about41-directors--portraits{grid-template-columns:1fr;max-width:680px;margin-left:auto;margin-right:auto}.about41-directors--portraits .about41-director{grid-template-columns:minmax(210px,.62fr) minmax(0,1fr);grid-template-areas:"photo identity" "photo copy";align-items:start}.about41-directors--portraits .about41-director-photo{grid-area:photo;align-self:stretch;aspect-ratio:auto;min-height:430px}.about41-directors--portraits .about41-director-identity{grid-area:identity;padding:32px 30px 0}.about41-directors--portraits .about41-director-copy{grid-area:copy;padding:16px 30px 32px}}
@media(max-width:640px){.about41-directors--portraits{gap:24px}.about41-directors--portraits .about41-director{display:block;border-radius:24px}.about41-directors--portraits .about41-director-photo{aspect-ratio:4/5;min-height:0}.about41-directors--portraits .about41-director-identity{padding:24px 22px 0}.about41-directors--portraits .about41-director-copy{padding:14px 22px 26px}.about41-directors--portraits .about41-director h3{font-size:2rem}}
@media(prefers-reduced-motion:reduce){.modu-about41 *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
\n\n/* MODU v0.7.106 — Human-visible LinkedIn integration */\n.about41-linkedin-link{display:inline-flex;align-items:center;gap:9px;margin-top:21px;padding:10px 13px 10px 11px;border:1px solid rgba(31,61,95,.14);border-radius:999px;color:var(--a41-blue);background:rgba(46,123,181,.035);text-decoration:none;font-family:Sora,Inter,sans-serif;font-size:.78rem;font-weight:800;letter-spacing:.02em;transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease}.about41-linkedin-icon{width:18px;height:18px;flex:0 0 18px}.about41-linkedin-arrow{margin-left:2px;color:var(--a41-blue);opacity:.62;transition:transform .2s ease,opacity .2s ease}.about41-linkedin-link:hover,.about41-linkedin-link:focus-visible{transform:translateY(-2px);border-color:rgba(46,123,181,.38);background:rgba(46,123,181,.075);color:var(--a41-blue)}.about41-linkedin-link:hover .about41-linkedin-arrow,.about41-linkedin-link:focus-visible .about41-linkedin-arrow{transform:translate(2px,-2px);opacity:1}.about41-linkedin-link:focus-visible{outline:2px solid rgba(46,123,181,.42);outline-offset:3px}\n.footer-linkedin-company{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:13px;margin-top:22px;padding:15px 14px 15px 12px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.035);color:#fff;text-decoration:none;transition:transform .22s ease,border-color .22s ease,background .22s ease}.footer-linkedin-company:hover,.footer-linkedin-company:focus-visible{transform:translateY(-2px);border-color:rgba(139,197,241,.36);background:rgba(139,197,241,.075)}.footer-linkedin-company:focus-visible{outline:2px solid rgba(139,197,241,.55);outline-offset:3px}.footer-linkedin-company-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:rgba(139,197,241,.12);color:var(--footer-accent,#8BC5F1)}.footer-linkedin-company-icon svg{width:21px;height:21px}.footer-linkedin-company-copy{display:grid;gap:3px;min-width:0}.footer-linkedin-company-copy small{color:rgba(139,197,241,.78);font-family:Sora,Inter,sans-serif;font-size:.61rem;font-weight:900;letter-spacing:.15em}.footer-linkedin-company-copy strong{color:rgba(255,255,255,.9);font-family:Sora,Inter,sans-serif;font-size:.88rem;font-weight:800;letter-spacing:-.01em}.footer-linkedin-company-arrow{color:rgba(139,197,241,.78);font-size:1.02rem;transition:transform .22s ease,color .22s ease}.footer-linkedin-company:hover .footer-linkedin-company-arrow,.footer-linkedin-company:focus-visible .footer-linkedin-company-arrow{transform:translate(2px,-2px);color:#fff}@media(max-width:680px){.about41-linkedin-link{margin-top:18px}.footer-linkedin-company{margin-top:18px}}\n/* MODU SEO CONTENT OS v0.7.110 */
.mco-shell{width:min(1180px,calc(100% - 40px));margin:0 auto}.mco-hero{padding:clamp(110px,12vw,180px) 0 80px;background:var(--modu-navy,#10263A);color:#fff}.mco-eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;opacity:.72}.mco-hero h1{max-width:980px;font-size:clamp(2.6rem,6vw,5.8rem);line-height:.98;margin:.35em 0}.mco-lead{max-width:820px;font-size:clamp(1.05rem,1.7vw,1.35rem);line-height:1.6;opacity:.9}.mco-body{padding:clamp(64px,8vw,120px) 0}.mco-prose{max-width:900px}.mco-prose h2{margin-top:2.6em;font-size:clamp(1.7rem,3vw,2.7rem)}.mco-prose p,.mco-prose li{font-size:1.08rem;line-height:1.75}.mco-related,.mco-cta{margin-top:64px;padding-top:40px;border-top:1px solid rgba(16,38,58,.16)}.mco-related ul{padding-left:1.2em}.mco-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.mco-grid article{padding:34px;border:1px solid rgba(16,38,58,.12);border-radius:20px}.mco-grid h2{margin-top:0}@media(max-width:760px){.mco-shell{width:min(100% - 28px,1180px)}.mco-grid{grid-template-columns:1fr}.mco-hero{padding-top:96px}}

/* MODU v0.7.111 — Service Landing Master */
.msl{--msl-navy:var(--modu-project-navy,#1F3D5F);--msl-blue:var(--modu-project-blue,#2E7BB5);--msl-bg:#f4f1eb;--msl-paper:#fbfaf7;--msl-ink:#1f3d5f;--msl-muted:#667987;color:var(--msl-ink);background:var(--msl-paper)}
.msl-shell{width:min(1380px,calc(100% - 72px));margin-inline:auto}.msl-section{padding:clamp(76px,8vw,128px) 0}.msl-eyebrow{margin:0 0 18px;color:var(--msl-blue);font-family:Sora,Inter,sans-serif;font-size:.72rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.msl h1,.msl h2,.msl h3{font-family:Sora,Inter,sans-serif}.msl h2{margin:0;font-size:clamp(2.3rem,4.2vw,4.5rem);line-height:1.02;letter-spacing:-.055em}.msl p{line-height:1.7}.msl-hero{padding:clamp(118px,10vw,170px) 0 clamp(76px,8vw,118px);background:var(--msl-navy);color:#fff;overflow:hidden}.msl-hero-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(380px,.74fr);gap:clamp(54px,7vw,100px);align-items:center}.msl-hero .msl-eyebrow{color:#8bc5f1}.msl-hero h1{max-width:900px;margin:0 0 28px;font-size:clamp(3rem,6vw,6.4rem);line-height:.96;letter-spacing:-.065em}.msl-lead{max-width:820px;margin:0;font-size:clamp(1.08rem,1.55vw,1.36rem);color:rgba(255,255,255,.91)}.msl-hero-note{max-width:720px;margin:22px 0 0;padding-left:18px;border-left:2px solid rgba(139,197,241,.55);color:rgba(255,255,255,.68);font-size:.98rem}.msl-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:32px}.msl-text-link{color:#dceefa;text-decoration:none;font-weight:760}.msl-text-link:hover{text-decoration:underline}.msl-hero-media{position:relative;margin:0;aspect-ratio:6/7;border-radius:32px;overflow:hidden;background:#dce5ea;box-shadow:0 32px 90px rgba(0,0,0,.28)}.msl-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(10,28,42,.22))}.msl-hero-media img,.msl-execution-media img{width:100%;height:100%;display:block;object-fit:cover}.msl-two-col{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1fr);gap:clamp(64px,8vw,130px);align-items:start}.msl-copy{max-width:700px}.msl-copy>p{margin:0;color:var(--msl-muted);font-size:1.07rem}.msl-problem{background:var(--msl-bg)}.msl-critical-list{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;margin:34px 0 0;padding:0;list-style:none;border-top:1px solid rgba(31,61,95,.14)}.msl-critical-list li{padding:16px 0;border-bottom:1px solid rgba(31,61,95,.14);font-weight:720}.msl-solution{background:#fff}.msl-solution blockquote{margin:34px 0 0;padding:26px 0 0;border-top:1px solid rgba(31,61,95,.16);font-family:Sora,Inter,sans-serif;font-size:clamp(1.35rem,2vw,2rem);font-weight:760;line-height:1.26;letter-spacing:-.035em}.msl-section-head{max-width:900px}.msl-section-head>p:last-child{max-width:740px;color:var(--msl-muted);font-size:1.05rem}.msl-scope{background:var(--msl-paper)}.msl-chip-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:44px}.msl-chip{min-height:92px;display:flex;align-items:flex-end;padding:22px;border:1px solid rgba(31,61,95,.12);border-radius:18px;background:#fff;font-family:Sora,Inter,sans-serif;font-weight:760;letter-spacing:-.02em}.msl-execution{background:var(--msl-navy);color:#fff}.msl-execution .msl-eyebrow{color:#8bc5f1}.msl-execution-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.78fr);gap:clamp(50px,7vw,96px);align-items:start}.msl-execution-copy>p{max-width:720px;color:rgba(255,255,255,.72)}.msl-steps{margin:42px 0 0;padding:0;list-style:none}.msl-steps li{display:grid;grid-template-columns:52px 1fr;gap:18px;padding:22px 0;border-top:1px solid rgba(255,255,255,.13)}.msl-steps li>span{color:#8bc5f1;font-family:Sora,Inter,sans-serif;font-size:.72rem;font-weight:900;letter-spacing:.12em}.msl-steps h3{margin:0 0 6px;font-size:1.08rem}.msl-steps p{margin:0;color:rgba(255,255,255,.64);font-size:.94rem}.msl-execution-media{position:sticky;top:120px;margin:0;aspect-ratio:4/5;border-radius:30px;overflow:hidden;background:#263d4f}.msl-usecases{background:var(--msl-bg)}.msl-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:44px}.msl-card-grid article{padding:30px;border:1px solid rgba(31,61,95,.12);border-radius:22px;background:rgba(255,255,255,.72)}.msl-card-grid h3{margin:0 0 10px;font-size:1.15rem;letter-spacing:-.025em}.msl-card-grid p{margin:0;color:var(--msl-muted);font-size:.95rem}.msl-audience{background:#fff}.msl-audience-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.msl-audience-list span{padding:10px 14px;border:1px solid rgba(31,61,95,.13);border-radius:999px;background:#f8fafb;font-size:.9rem;font-weight:720}.msl-faq{background:var(--msl-paper)}.msl-faq-list{max-width:980px;margin-top:40px;border-top:1px solid rgba(31,61,95,.16)}.msl-faq details{border-bottom:1px solid rgba(31,61,95,.16)}.msl-faq summary{cursor:pointer;list-style:none;padding:24px 46px 24px 0;position:relative;font-family:Sora,Inter,sans-serif;font-size:clamp(1.02rem,1.5vw,1.24rem);font-weight:760;letter-spacing:-.025em}.msl-faq summary::-webkit-details-marker{display:none}.msl-faq summary:after{content:"+";position:absolute;right:8px;top:20px;color:var(--msl-blue);font-size:1.5rem}.msl-faq details[open] summary:after{content:"–"}.msl-faq details>div{max-width:760px;padding:0 0 24px}.msl-faq details p{margin:0;color:var(--msl-muted)}.msl-bridges{background:#fff}.msl-bridge-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.msl-bridge{display:block;min-height:300px;padding:36px;border:1px solid rgba(31,61,95,.12);border-radius:28px;background:var(--msl-bg);color:var(--msl-ink);text-decoration:none;transition:transform .22s ease,box-shadow .22s ease}.msl-bridge:hover{transform:translateY(-3px);box-shadow:0 22px 60px rgba(31,61,95,.09)}.msl-bridge small{color:var(--msl-blue);font-weight:900;letter-spacing:.14em}.msl-bridge h2{margin:18px 0;font-size:clamp(2rem,3vw,3.35rem)}.msl-bridge p{max-width:580px;color:var(--msl-muted)}.msl-bridge span{display:inline-block;margin-top:20px;font-weight:800}.msl-bridge--dark{background:var(--msl-navy);color:#fff}.msl-bridge--dark small{color:#8bc5f1}.msl-bridge--dark p{color:rgba(255,255,255,.68)}.msl .mco-related{margin-top:38px}.msl-final{padding:clamp(80px,9vw,136px) 0;background:#14212b;color:#fff;text-align:center}.msl-final .msl-shell{max-width:880px}.msl-final .msl-eyebrow{color:#8bc5f1}.msl-final h2{margin-bottom:20px}.msl-final p{max-width:680px;margin:0 auto;color:rgba(255,255,255,.72);font-size:1.07rem}.msl-final .btn{margin-top:30px}
@media(max-width:1080px){.msl-shell{width:min(100% - 48px,1380px)}.msl-hero-grid,.msl-execution-grid{grid-template-columns:1fr}.msl-hero-media{max-width:760px;aspect-ratio:16/10}.msl-execution-media{position:relative;top:auto;max-width:760px;aspect-ratio:16/10}.msl-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.msl-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.msl-shell{width:min(100% - 28px,1380px)}.msl-section{padding:62px 0}.msl-hero{padding:100px 0 64px}.msl-hero-grid{gap:36px}.msl-hero h1{font-size:clamp(2.55rem,13vw,4.2rem)}.msl-hero-media{aspect-ratio:6/5;border-radius:24px}.msl-two-col{grid-template-columns:1fr;gap:28px}.msl-critical-list{grid-template-columns:1fr}.msl-chip-grid,.msl-card-grid,.msl-bridge-grid{grid-template-columns:1fr}.msl-chip{min-height:76px}.msl-execution-grid{gap:38px}.msl-execution-media{aspect-ratio:6/5;border-radius:24px}.msl-steps li{grid-template-columns:42px 1fr}.msl-bridge{min-height:0;padding:28px;border-radius:22px}}
@media(prefers-reduced-motion:reduce){.msl *{transition:none!important;scroll-behavior:auto!important}}

/* MODU v0.7.112 — Service Landing Master 2.0 */
.msl-v2 .msl-hero{padding:clamp(116px,9vw,154px) 0 clamp(88px,8vw,120px);background:linear-gradient(135deg,#173a5c 0%,#1f3d5f 58%,#18344f 100%)}
.msl-v2 .msl-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);gap:clamp(48px,6vw,86px)}
.msl-v2 .msl-hero h1{font-size:clamp(3.25rem,5.7vw,6.15rem);max-width:940px}
.msl-v2 .msl-lead{font-size:clamp(1.12rem,1.48vw,1.34rem);max-width:850px}
.msl-v2 .msl-primary-cta{box-shadow:0 14px 34px rgba(0,0,0,.18)}
.msl-v2 .msl-hero-media{aspect-ratio:4/5;min-height:520px;border-radius:28px}
.msl-v2 .msl-hero-signals{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:30px;color:rgba(255,255,255,.58);font-family:Sora,Inter,sans-serif;font-size:.68rem;font-weight:850;letter-spacing:.13em}
.msl-v2 .msl-hero-signals span{position:relative;padding-right:18px}.msl-v2 .msl-hero-signals span:not(:last-child):after{content:"";position:absolute;right:0;top:50%;width:4px;height:4px;border-radius:50%;background:#8bc5f1;transform:translateY(-50%)}

.msl-v2 .msl-problem .msl-copy>p{font-size:1.09rem;max-width:760px}.msl-v2 .msl-critical-list{gap:12px;margin-top:36px;border:0}.msl-v2 .msl-critical-list li{padding:17px 18px;border:1px solid rgba(31,61,95,.10);border-radius:14px;background:rgba(255,255,255,.62);font-size:.94rem}
.msl-v2 .msl-solution blockquote{padding:24px 24px 24px 28px;border:0;border-left:3px solid #8bc5f1;background:#f5f9fc;border-radius:0 16px 16px 0}

.msl-v2 .msl-capability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:44px}
.msl-v2 .msl-capability-card{min-height:190px;padding:24px;border:1px solid rgba(31,61,95,.11);border-radius:20px;background:#fff;display:flex;flex-direction:column}
.msl-v2 .msl-card-index{display:block;margin-bottom:28px;color:#6daeda;font-family:Sora,Inter,sans-serif;font-size:.66rem;font-weight:900;letter-spacing:.14em}
.msl-v2 .msl-capability-card h3,.msl-v2 .msl-benefit-grid h3{margin:0 0 10px;font-size:1.08rem;line-height:1.18;letter-spacing:-.025em}
.msl-v2 .msl-capability-card p,.msl-v2 .msl-benefit-grid p{margin:0;color:var(--msl-muted);font-size:.9rem;line-height:1.55}

.msl-v2 .msl-execution-grid{grid-template-columns:minmax(0,1fr) minmax(420px,.84fr);align-items:start}
.msl-v2 .msl-execution-media{aspect-ratio:4/5;background:#20394e;box-shadow:0 30px 80px rgba(0,0,0,.20)}
.msl-v2 .msl-steps li{grid-template-columns:50px 1fr;padding:19px 0}.msl-v2 .msl-steps h3{font-size:1.04rem}.msl-v2 .msl-rollout-proof{margin-top:34px;padding:22px 24px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.045)}
.msl-v2 .msl-rollout-proof small{display:block;margin-bottom:8px;color:#8bc5f1;font-size:.66rem;font-weight:900;letter-spacing:.14em}.msl-v2 .msl-rollout-proof p{margin:0;color:rgba(255,255,255,.8);font-size:.9rem}

.msl-v2 .msl-benefits{background:#fff}.msl-v2 .msl-benefit-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:44px}.msl-v2 .msl-benefit-grid article{padding:26px 22px 28px;border-top:2px solid #8bc5f1;background:#f7fafc;border-radius:0 0 18px 18px}

.msl-v2 .msl-card-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.msl-v2 .msl-card-grid article{min-height:210px;padding:25px 22px;background:rgba(255,255,255,.82)}.msl-v2 .msl-card-grid .msl-card-index{margin-bottom:24px}

.msl-v2 .msl-audience-groups{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px}.msl-v2 .msl-audience-groups article{padding:22px;border:1px solid rgba(31,61,95,.11);border-radius:18px;background:#f8fafb}.msl-v2 .msl-audience-groups h3{margin:0 0 8px;font-size:1rem}.msl-v2 .msl-audience-groups p{margin:0;color:var(--msl-muted);font-size:.9rem;line-height:1.5}

.msl-v2 .msl-bridge{position:relative;isolation:isolate;overflow:hidden;min-height:340px;padding:0;border:0;background:#e9eef2}.msl-v2 .msl-bridge:before{content:"";position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;opacity:.20;transform:scale(1.02)}
.msl-v2 .msl-bridge:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(247,244,236,.98) 0%,rgba(247,244,236,.92) 55%,rgba(247,244,236,.60) 100%)}
.msl-v2 .msl-bridge--projects:before{background-image:url('../img/projects/project-displays-premium.png')}
.msl-v2 .msl-bridge--flow:before{background-image:url('../img/reference-intro-approved.png');opacity:.22}.msl-v2 .msl-bridge--dark:after{background:linear-gradient(90deg,rgba(31,61,95,.98) 0%,rgba(31,61,95,.94) 58%,rgba(31,61,95,.72) 100%)}
.msl-v2 .msl-bridge-content{padding:38px;max-width:88%}.msl-v2 .msl-bridge--dark p{color:rgba(255,255,255,.82)}.msl-v2 .msl-bridge--dark span{color:#fff}

.msl-v2 .msl-final{padding:clamp(76px,8vw,112px) 0}.msl-v2 .msl-final h2{font-size:clamp(2.7rem,5vw,5rem)}.msl-v2 .msl-final-actions{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:30px}.msl-v2 .msl-final-actions .btn{margin:0}.msl-v2 .msl-final-actions span{color:rgba(255,255,255,.62);font-size:.9rem}

.site-footer--service-compact .footer-final-top{display:block}.site-footer--service-compact .footer-final-nav{width:100%;max-width:1380px;margin:0 auto}.site-footer--service-compact .footer-link-group-menu{max-width:none}.site-footer--service-compact .footer-inner{padding-top:48px;padding-bottom:42px}

@media(max-width:1180px){.msl-v2 .msl-benefit-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.msl-v2 .msl-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.msl-v2 .msl-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1080px){.msl-v2 .msl-hero-grid,.msl-v2 .msl-execution-grid{grid-template-columns:1fr}.msl-v2 .msl-hero-media{min-height:0;max-width:900px;aspect-ratio:16/10}.msl-v2 .msl-execution-media{max-width:900px;aspect-ratio:16/10}.msl-v2 .msl-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.msl-v2 .msl-hero{padding-top:96px}.msl-v2 .msl-hero-media{aspect-ratio:6/5}.msl-v2 .msl-hero-signals{gap:8px 12px}.msl-v2 .msl-critical-list,.msl-v2 .msl-capability-grid,.msl-v2 .msl-benefit-grid,.msl-v2 .msl-card-grid,.msl-v2 .msl-audience-groups{grid-template-columns:1fr}.msl-v2 .msl-capability-card,.msl-v2 .msl-card-grid article{min-height:0}.msl-v2 .msl-card-index{margin-bottom:16px}.msl-v2 .msl-bridge-content{padding:28px;max-width:100%}.site-footer--service-compact .footer-inner{padding-top:36px}}
\n\n/* MODU v0.7.113 — Service Landing Master QA visual + conversión */
.msl-v3{--msl-text-on-dark:#f7fbff;--msl-muted-on-dark:rgba(247,251,255,.80);--msl-accent-on-dark:#a8d7f6}
/* Contraste obligatorio en todas las superficies oscuras. */
.msl-v3 .msl-hero h1,.msl-v3 .msl-execution h2,.msl-v3 .msl-execution h3,.msl-v3 .msl-final h2,.msl-v3 .msl-bridge--dark h2{color:var(--msl-text-on-dark)!important;text-shadow:none!important}
.msl-v3 .msl-hero .msl-lead{color:rgba(247,251,255,.94)!important}
.msl-v3 .msl-hero-note,.msl-v3 .msl-execution-copy>p,.msl-v3 .msl-execution .msl-steps p,.msl-v3 .msl-final p{color:var(--msl-muted-on-dark)!important}
.msl-v3 .msl-hero .msl-eyebrow,.msl-v3 .msl-execution .msl-eyebrow,.msl-v3 .msl-final .msl-eyebrow,.msl-v3 .msl-bridge--dark small{color:var(--msl-accent-on-dark)!important}
.msl-v3 .msl-final-actions span{color:rgba(247,251,255,.72)!important}

/* Hero: lectura inmediata, menos sensación de bloque corporativo. */
.msl-v3 .msl-hero{background:linear-gradient(135deg,#173a5c 0%,#1f3d5f 62%,#173650 100%)}
.msl-v3 .msl-hero-copy{align-self:center}
.msl-v3 .msl-hero h1{max-width:880px;margin-bottom:30px}
.msl-v3 .msl-lead{max-width:780px;line-height:1.58}
.msl-v3 .msl-hero-note{max-width:760px;border-left-color:rgba(168,215,246,.72)}
.msl-v3 .msl-primary-cta{background:#fff!important;color:#183a59!important;border-color:#fff!important;box-shadow:0 14px 34px rgba(0,0,0,.24)}
.msl-v3 .msl-primary-cta:hover{transform:translateY(-2px);box-shadow:0 18px 38px rgba(0,0,0,.28)}
.msl-v3 .msl-text-link{color:#f3f9fd!important;opacity:.86}.msl-v3 .msl-text-link:hover{opacity:1}
.msl-v3 .msl-hero-media{box-shadow:0 34px 82px rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.12)}
.msl-v3 .msl-hero-media:after{background:linear-gradient(180deg,rgba(11,27,42,.02) 45%,rgba(11,27,42,.25) 100%)}
.msl-v3 .msl-hero-signals{color:rgba(247,251,255,.72)}

/* Problema: rápido de escanear, sin muro de texto. */
.msl-v3 .msl-problem .msl-copy>p{max-width:690px;line-height:1.62}
.msl-v3 .msl-critical-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;margin-top:30px}
.msl-v3 .msl-critical-list li{min-height:58px;display:flex;align-items:center;padding:14px 16px;background:rgba(255,255,255,.78);border-color:rgba(31,61,95,.09);font-size:.90rem}

/* Solución: que el cambio para el cliente sea evidente. */
.msl-v3 .msl-solution blockquote{background:#eef6fb;border-left-color:#78b8e2;color:#173a5c!important;font-size:clamp(1.18rem,1.7vw,1.62rem);line-height:1.34}

/* Alcance: más densidad útil y menos catálogo. */
.msl-v3 .msl-capability-grid{gap:12px}
.msl-v3 .msl-capability-card{min-height:168px;padding:22px}
.msl-v3 .msl-capability-card .msl-card-index{margin-bottom:20px}
.msl-v3 .msl-capability-card h3{font-size:1.02rem}
.msl-v3 .msl-capability-card p{font-size:.86rem;line-height:1.48}

/* Ejecución: bloque de confianza; títulos y descripciones siempre visibles. */
.msl-v3 .msl-execution{background:linear-gradient(135deg,#173a5c 0%,#1f3d5f 68%,#18364f 100%)}
.msl-v3 .msl-execution-grid{grid-template-columns:minmax(0,1.08fr) minmax(390px,.82fr);gap:clamp(56px,7vw,104px)}
.msl-v3 .msl-steps{margin-top:36px}
.msl-v3 .msl-steps li{grid-template-columns:58px minmax(0,1fr);padding:20px 0;border-top-color:rgba(255,255,255,.18)}
.msl-v3 .msl-steps li>span{color:#a8d7f6!important;font-size:.75rem}
.msl-v3 .msl-steps h3{display:block!important;margin:0 0 7px!important;font-size:1.08rem!important;font-weight:800!important;line-height:1.2!important;opacity:1!important;visibility:visible!important}
.msl-v3 .msl-steps p{display:block!important;margin:0!important;font-size:.93rem!important;line-height:1.55!important;opacity:1!important;visibility:visible!important}
.msl-v3 .msl-rollout-proof{margin-top:30px;background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.16)}
.msl-v3 .msl-rollout-proof small{color:#a8d7f6!important}.msl-v3 .msl-rollout-proof p{color:rgba(247,251,255,.90)!important}
.msl-v3 .msl-execution-media{border:1px solid rgba(255,255,255,.10)}

/* Beneficios: cuatro resultados memorables, no otra cuadrícula de catálogo. */
.msl-v3 .msl-benefit-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid rgba(31,61,95,.12);border-bottom:1px solid rgba(31,61,95,.12)}
.msl-v3 .msl-benefit-grid article{min-height:205px;padding:30px 28px;background:#fff;border:0;border-right:1px solid rgba(31,61,95,.12);border-radius:0}
.msl-v3 .msl-benefit-grid article:last-child{border-right:0}
.msl-v3 .msl-benefit-grid .msl-card-index{margin-bottom:28px}

/* Escenarios: tarjetas más humanas y menos repetitivas. */
.msl-v3 .msl-card-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.msl-v3 .msl-card-grid article{min-height:188px;padding:24px 22px;border-radius:18px}
.msl-v3 .msl-card-grid h3{font-size:1.03rem;line-height:1.22}

/* Audiencia: hacer evidente que entendemos a cada perfil. */
.msl-v3 .msl-audience-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.msl-v3 .msl-audience-groups article{padding:24px;background:#f6f9fb}
.msl-v3 .msl-audience-groups h3{font-size:1.03rem;color:#173a5c}

/* FAQ: más legibilidad y área táctil. */
.msl-v3 .msl-faq-list{max-width:1040px}.msl-v3 .msl-faq summary{padding-block:25px;color:#173a5c}.msl-v3 .msl-faq details p{font-size:1rem;line-height:1.65}

/* Puentes internos: nunca parecer contenido deshabilitado. */
.msl-v3 .msl-bridge--dark h2,.msl-v3 .msl-bridge--dark p,.msl-v3 .msl-bridge--dark span{opacity:1!important;visibility:visible!important}
.msl-v3 .msl-bridge--dark p{color:rgba(247,251,255,.88)!important}.msl-v3 .msl-bridge--dark span{color:#fff!important}
.msl-v3 .msl-bridge--dark:after{background:linear-gradient(90deg,rgba(20,52,79,.99) 0%,rgba(31,61,95,.96) 58%,rgba(31,61,95,.78) 100%)}

/* Cierre: máxima claridad y una sola acción. */
.msl-v3 .msl-final{background:linear-gradient(135deg,#10263a 0%,#14212b 100%);padding:clamp(74px,7vw,104px) 0}
.msl-v3 .msl-final h2{max-width:820px;margin-inline:auto;color:#fff!important;font-size:clamp(2.65rem,4.6vw,4.7rem);line-height:1.02}
.msl-v3 .msl-final .btn{background:#fff!important;color:#173a5c!important;border-color:#fff!important}

/* Footer de servicios: el CTA específico ya hizo el trabajo de conversión. */
.site-footer--service-compact{background:#1f3d5f}
.site-footer--service-compact .footer-inner{padding-top:30px!important;padding-bottom:30px!important}
.site-footer--service-compact .footer-final-nav{display:none!important}
.site-footer--service-compact .footer-legal-strip{border-top-color:rgba(255,255,255,.10)}

@media(max-width:1180px){
 .msl-v3 .msl-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .msl-v3 .msl-benefit-grid article:nth-child(2){border-right:0}
 .msl-v3 .msl-benefit-grid article:nth-child(-n+2){border-bottom:1px solid rgba(31,61,95,.12)}
 .msl-v3 .msl-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
 .msl-v3 .msl-critical-list{grid-template-columns:1fr}
 .msl-v3 .msl-benefit-grid,.msl-v3 .msl-card-grid,.msl-v3 .msl-audience-groups{grid-template-columns:1fr}
 .msl-v3 .msl-benefit-grid article{min-height:0;border-right:0!important;border-bottom:1px solid rgba(31,61,95,.12)}
 .msl-v3 .msl-benefit-grid article:last-child{border-bottom:0}
 .msl-v3 .msl-execution-grid{gap:34px}
 .msl-v3 .msl-steps li{grid-template-columns:46px minmax(0,1fr);padding:18px 0}
 .msl-v3 .msl-final h2{font-size:clamp(2.4rem,12vw,3.5rem)}
}


/* MODU v0.7.114 — Service Landing Gold Standard: autoridad operativa + prueba visual */
.msl-v4{--msl-soft-blue:#eef6fb;--msl-line:rgba(31,61,95,.12)}

/* Authority/preflight: demostrar experiencia sin presumir. */
.msl-v4 .msl-preflight{background:#fff}
.msl-v4 .msl-preflight-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(64px,8vw,132px);align-items:start}
.msl-v4 .msl-preflight-head{position:sticky;top:118px}
.msl-v4 .msl-preflight-head h2{max-width:640px}
.msl-v4 .msl-preflight-head>p:last-child{max-width:590px;margin:26px 0 0;color:var(--msl-muted);font-size:1.05rem;line-height:1.65}
.msl-v4 .msl-preflight-list{border-top:1px solid var(--msl-line)}
.msl-v4 .msl-preflight-list article{display:grid;grid-template-columns:54px minmax(0,1fr);gap:18px;padding:22px 0;border-bottom:1px solid var(--msl-line)}
.msl-v4 .msl-preflight-list article>span{color:#6daeda;font-family:Sora,Inter,sans-serif;font-size:.70rem;font-weight:900;letter-spacing:.14em;padding-top:3px}
.msl-v4 .msl-preflight-list h3{margin:0 0 7px;font-size:1.06rem;letter-spacing:-.025em;color:#173a5c}
.msl-v4 .msl-preflight-list p{margin:0;color:var(--msl-muted);font-size:.94rem;line-height:1.55}

/* Execution: una visualización de control, no un dashboard ficticio. */
.msl-v4 .msl-rollout-matrix{margin-top:18px;padding:18px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.055);overflow:hidden}
.msl-v4 .msl-rollout-matrix-head,.msl-v4 .msl-rollout-matrix-row{display:grid;grid-template-columns:1.2fr 1fr .75fr .9fr 1fr;gap:10px;align-items:center}
.msl-v4 .msl-rollout-matrix-head{padding:0 4px 12px;color:#a8d7f6;font-family:Sora,Inter,sans-serif;font-size:.58rem;font-weight:900;letter-spacing:.09em}
.msl-v4 .msl-rollout-matrix-row{min-height:31px;padding:8px 4px;border-top:1px solid rgba(255,255,255,.09)}
.msl-v4 .msl-rollout-matrix-row i{height:5px;border-radius:999px;background:rgba(247,251,255,.28)}
.msl-v4 .msl-rollout-matrix-row i:nth-child(2){width:72%}.msl-v4 .msl-rollout-matrix-row i:nth-child(3){width:48%}.msl-v4 .msl-rollout-matrix-row i:nth-child(4){width:66%}.msl-v4 .msl-rollout-matrix-row i:nth-child(5){width:58%}

/* Benefits: menos patrón de tarjetas + una prueba visual del resultado final. */
.msl-v4 .msl-benefits{background:#fff}
.msl-v4 .msl-benefits-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr);gap:clamp(48px,6vw,86px);align-items:end}
.msl-v4 .msl-benefits .msl-section-head{max-width:760px}
.msl-v4 .msl-benefits .msl-benefit-grid{margin-top:40px;grid-template-columns:repeat(2,minmax(0,1fr));border:0;gap:0}
.msl-v4 .msl-benefits .msl-benefit-grid article{min-height:178px;padding:28px 24px;border:0;border-top:1px solid var(--msl-line);border-right:1px solid var(--msl-line);background:transparent}
.msl-v4 .msl-benefits .msl-benefit-grid article:nth-child(2n){border-right:0}
.msl-v4 .msl-benefits .msl-benefit-grid .msl-card-index{margin-bottom:18px}
.msl-v4 .msl-result-media{margin:0;position:relative;min-height:520px;border-radius:26px;overflow:hidden;background:#e7e2da;box-shadow:0 24px 64px rgba(31,61,95,.10)}
.msl-v4 .msl-result-media img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;display:block}
.msl-v4 .msl-result-media:after{content:"";position:absolute;inset:auto 0 0;height:34%;background:linear-gradient(180deg,transparent,rgba(13,43,62,.72));pointer-events:none}
.msl-v4 .msl-result-media figcaption{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;color:#fff;font-family:Sora,Inter,sans-serif;font-size:.9rem;font-weight:760;line-height:1.35}

/* Audience: evidencia de que entendemos a cada decisor. */
.msl-v4 .msl-agency-note{margin:22px 0 0!important;padding:18px 20px;border-left:3px solid #78b8e2;background:#f2f8fc;border-radius:0 14px 14px 0;color:#173a5c!important;font-weight:650;line-height:1.55}

/* Puentes: dos rutas, dos propósitos. */
.msl-v4 .msl-bridge{min-height:280px}
.msl-v4 .msl-bridge span{font-size:.94rem}

/* Conversión: terminar en conversación, no en otra explicación. */
.msl-v4 .msl-final h2{max-width:760px}
.msl-v4 .msl-final p{max-width:620px}
.msl-v4 .msl-final-actions{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:28px}
.msl-v4 .msl-final .btn{margin-top:0}
.msl-v4 .msl-final-actions span{font-size:.88rem}

/* Ritmo: menos cajas idénticas en escenarios. */
.msl-v4 .msl-usecases .msl-card-grid article{background:#fff;border-color:rgba(31,61,95,.09);box-shadow:0 8px 28px rgba(31,61,95,.035)}
.msl-v4 .msl-usecases .msl-card-index{margin-bottom:18px}

@media(max-width:1080px){
 .msl-v4 .msl-preflight-grid,.msl-v4 .msl-benefits-layout{grid-template-columns:1fr}
 .msl-v4 .msl-preflight-head{position:relative;top:auto}
 .msl-v4 .msl-result-media{min-height:0;aspect-ratio:16/9;max-width:900px}
}
@media(max-width:760px){
 .msl-v4 .msl-preflight-grid{gap:34px}
 .msl-v4 .msl-preflight-list article{grid-template-columns:42px minmax(0,1fr);padding:18px 0}
 .msl-v4 .msl-rollout-matrix{padding:14px 12px;overflow-x:auto}
 .msl-v4 .msl-rollout-matrix-head,.msl-v4 .msl-rollout-matrix-row{min-width:560px}
 .msl-v4 .msl-benefits .msl-benefit-grid{grid-template-columns:1fr}
 .msl-v4 .msl-benefits .msl-benefit-grid article{min-height:0;border-right:0;border-top:1px solid var(--msl-line)}
 .msl-v4 .msl-result-media{aspect-ratio:6/5;border-radius:22px}
}


/* MODU v0.7.115 — pre-publicación: enlazado contextual y seguridad de activos */
.home-projects-context-link{
  margin:18px 0 0;
  text-align:center;
  font-size:14px;
  line-height:1.55;
  color:var(--modu-text-muted, #62717d);
}
.home-projects-context-link a{
  margin-left:6px;
  font-weight:700;
  color:var(--modu-navy, #1f3d5f);
  text-decoration:none;
  border-bottom:1px solid currentColor;
}
.home-projects-context-link a:hover{opacity:.72;}
@media (max-width:768px){
  .home-projects-context-link{max-width:330px;margin:16px auto 0;padding:0 12px;}
  .home-projects-context-link a{display:block;margin:4px 0 0;}
}

/* MODU v0.7.116 — matriz de rollout legible y explícitamente conceptual */
.msl-v4 .msl-rollout-matrix-kicker{margin:0 4px 14px;color:#fff;font-family:Sora,Inter,sans-serif;font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;opacity:.92}
.msl-v4 .msl-rollout-matrix-row span{display:block;color:rgba(247,251,255,.88);font-size:.72rem;line-height:1.3}
.msl-v4 .msl-rollout-matrix-row span:first-child{font-weight:800;color:#fff}
.msl-v4 .msl-rollout-matrix-row span:nth-child(3){font-variant-numeric:tabular-nums}
.msl-v4 .msl-rollout-matrix-note{margin:14px 4px 0;color:rgba(247,251,255,.58);font-size:.65rem;line-height:1.45}
@media (max-width:768px){
 .msl-v4 .msl-rollout-matrix-head,.msl-v4 .msl-rollout-matrix-row{min-width:620px}
 .msl-v4 .msl-rollout-matrix-row span{font-size:.7rem}
}

/* MODU v0.7.117 — Information Architecture Guardrails */
.modu-breadcrumbs{margin:0 0 24px;font-family:Sora,Inter,sans-serif;font-size:.76rem;font-weight:700;letter-spacing:.02em}.modu-breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.modu-breadcrumbs li{display:flex;align-items:center;gap:8px}.modu-breadcrumbs li:not(:last-child):after{content:"/";opacity:.38}.modu-breadcrumbs a{color:inherit;text-decoration:none;opacity:.68}.modu-breadcrumbs a:hover{opacity:1;text-decoration:underline}.modu-breadcrumbs [aria-current="page"]{opacity:.9}.mco-hero .modu-breadcrumbs{color:#fff}.msl-breadcrumb-wrap{position:absolute;z-index:3;width:100%;padding-top:96px;color:#dceefa;pointer-events:none}.msl-breadcrumb-wrap .modu-breadcrumbs{pointer-events:auto;margin-bottom:0}.msl-hero{position:relative}.msl-hero .msl-shell{position:relative}.mco-archive-intro{max-width:860px;margin:0 0 54px}.mco-archive-intro h2{margin:.25em 0 .4em;font-size:clamp(2rem,3.4vw,3.5rem);line-height:1.04;letter-spacing:-.04em}.mco-archive-intro>p:last-child{max-width:760px;color:rgba(16,38,58,.72);font-size:1.05rem;line-height:1.7}.mco-archive-grid article{display:flex;flex-direction:column;min-height:250px}.mco-card-kicker{margin:0 0 14px;color:#2E7BB5;font-size:.72rem;font-weight:800;letter-spacing:.13em}.mco-archive-grid article>p:not(.mco-card-kicker){color:rgba(16,38,58,.72);line-height:1.65}.mco-card-link{margin-top:auto;padding-top:22px;font-weight:800;text-decoration:none}.mco-empty-state{padding:42px;border:1px solid rgba(16,38,58,.12);border-radius:24px;background:#f7f5ef}.mco-empty-state h2{margin:0 0 12px}.mco-empty-state p{max-width:720px;margin:0;color:rgba(16,38,58,.72)}.mco-archive-status{margin-top:28px;color:rgba(16,38,58,.58);font-size:.84rem}.footer-content-hubs{display:flex;flex-wrap:wrap;gap:10px 16px;margin:28px 0 0;padding-top:20px;border-top:1px solid rgba(255,255,255,.12)}.footer-content-hubs small{flex-basis:100%;font-size:.66rem;font-weight:800;letter-spacing:.14em;opacity:.6}.footer-content-hubs a{color:inherit;text-decoration:none;font-weight:700;font-size:.9rem;opacity:.82}.footer-content-hubs a:hover{opacity:1;text-decoration:underline}@media(max-width:760px){.msl-breadcrumb-wrap{padding-top:82px}.modu-breadcrumbs{font-size:.7rem}.mco-archive-intro{margin-bottom:36px}}


/* MODU v0.7.118 — Qué hacemos: profundidad opcional sin convertir la landing en peaje */
.qh-service-actions{margin-top:26px;display:flex;align-items:center;gap:18px 24px;flex-wrap:wrap;}
.qh-service-actions .qh-inline-link{margin-top:0;}
.qh-detail-link{display:inline-flex;align-items:center;gap:8px;color:#667789;font-family:Sora,Inter,sans-serif;font-size:14px;font-weight:700;text-decoration:none;padding-bottom:4px;border-bottom:1px solid rgba(102,119,137,.28);transition:color .2s ease,border-color .2s ease;}
.qh-detail-link span{color:var(--qh-accent);transition:transform .22s ease;}
.qh-detail-link:hover{color:var(--modu-project-blue);border-color:rgba(31,61,95,.45);}
.qh-detail-link:hover span{transform:translateX(4px);}
.qh-service-dark .qh-detail-link{color:rgba(255,255,255,.66);border-color:rgba(255,255,255,.2);}
.qh-service-dark .qh-detail-link:hover{color:#fff;border-color:rgba(139,197,241,.42);}
@media (max-width:680px){.qh-service-actions{align-items:flex-start;flex-direction:column;gap:14px;}.qh-detail-link{font-size:13px;}}
