/* =========================================================
   NODO — prototipo v2 · fondo claro
   ========================================================= */
:root{
  --paper:#F7F7F1;         /* fondo base, blanco cálido */
  --paper-2:#FFFFFF;       /* superficies */
  --paper-3:#EFEFE7;       /* bandas */
  --mint:#E9F6DE;          /* tinte alegre */
  --cream:#FDF6E3;
  --ink:#14170F;           /* texto */
  --lime:#B7F36B;          /* acento de relleno */
  --lime-soft:#DFF7BC;
  --acc:#4C7A1B;           /* acento legible sobre claro */
  --deep:#173C35;          /* verde profundo */
  --line:rgba(20,23,15,.10);
  --line-2:rgba(20,23,15,.18);
  --dim:rgba(20,23,15,.60);
  --dim-2:rgba(20,23,15,.42);
  --shadow:0 18px 40px -24px rgba(20,23,15,.28);
  --shadow-lg:0 40px 80px -40px rgba(20,23,15,.42);
  --nav-h:66px;
  --ease:cubic-bezier(.22,.61,.24,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
html,body{margin:0;padding:0}
body{
  background:var(--paper);color:var(--ink);
  font-family:"Inter Tight",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
::selection{background:var(--lime);color:var(--ink)}
.grain{display:none}

/* ---------- layout ---------- */
.wrap{width:min(1180px,100% - 48px);margin-inline:auto}
.sec{position:relative;padding:clamp(72px,10vh,124px) 0}
.sec--tight{padding:clamp(52px,7vh,88px) 0}

/* manchas de color suaves */
.blob{position:absolute;border-radius:50%;filter:blur(70px);pointer-events:none;z-index:0}

/* ---------- tipografía ---------- */
.mono{
  font-family:"Inter Tight",-apple-system,sans-serif;
  font-size:11px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;font-variant-numeric:tabular-nums;
}
.label{display:inline-flex;align-items:center;gap:9px;color:var(--acc)}
.label::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--lime);
  box-shadow:0 0 0 3px rgba(183,243,107,.35);flex:none}
.label--plain::before{display:none}

h1,h2,h3,h4{margin:0;font-weight:700;letter-spacing:-.032em;line-height:1.02;text-transform:none}
.giant{font-size:clamp(2.05rem,4.6vw,3.5rem);letter-spacing:-.038em}
.big{font-size:clamp(1.7rem,3.3vw,2.6rem);letter-spacing:-.035em}
.mid{font-size:clamp(1.25rem,2.2vw,1.85rem);letter-spacing:-.03em;line-height:1.1;font-weight:700}
.small-h{font-size:clamp(1rem,1.5vw,1.24rem);letter-spacing:-.02em;line-height:1.2;font-weight:700}
.lead{font-size:clamp(.98rem,1.15vw,1.08rem);line-height:1.62;color:var(--dim);max-width:58ch;font-weight:400}
.lead strong{color:var(--ink);font-weight:600}
p{margin:0}
.acc{color:var(--acc)}
.outline{color:var(--dim-2)}

/* ---------- reveal ---------- */
.js [data-rv]{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out)}
[data-rv].in{opacity:1;transform:none}
[data-rv="mask"]{opacity:1;transform:none;transition:none}
[data-rv="mask"] .mk{display:block}
.js [data-rv="mask"] .mk{display:block;padding-bottom:.14em;margin-bottom:-.14em;clip-path:inset(0 0 102% 0);transition:clip-path 1.1s var(--ease-out)}
[data-rv="mask"].in .mk{clip-path:inset(0 0 0 0)}
.js [data-rv="scale"]{opacity:0;transform:scale(.97) translateY(22px)}
[data-rv="scale"].in{opacity:1;transform:none}
.line-mask{display:block;overflow:hidden;padding-bottom:.06em}
.js .line-mask>span{display:block;transform:translateY(105%);transition:transform 1.05s var(--ease-out)}
.in .line-mask>span,.line-mask.in>span{transform:none}
@media (prefers-reduced-motion:reduce){
  [data-rv],[data-rv].in,.line-mask>span,[data-rv="mask"] .mk{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}
}

/* ---------- botones ---------- */
.btn{
  position:relative;display:inline-flex;align-items:center;gap:12px;
  padding:15px 24px;border-radius:100px;background:var(--deep);color:#F7F7F1;
  font-weight:600;font-size:14.5px;letter-spacing:-.01em;
  transition:transform .5s var(--ease-out),box-shadow .5s var(--ease-out),background .35s;
  box-shadow:0 10px 24px -14px rgba(23,60,53,.8);will-change:transform;
}
.btn:hover{box-shadow:0 18px 38px -16px rgba(23,60,53,.6)}
.btn .dot{width:8px;height:8px;border-radius:50%;background:var(--lime);flex:none;transition:transform .5s var(--ease-out)}
.btn:hover .dot{transform:scale(1.8)}
.btn--lime{background:var(--lime);color:var(--ink);box-shadow:0 12px 26px -14px rgba(120,180,40,.9)}
.btn--lime .dot{background:var(--deep)}
.btn--ghost{background:var(--paper-2);color:var(--ink);border:1px solid var(--line-2);box-shadow:none}
.btn--ghost .dot{background:var(--lime)}
.btn--ghost:hover{border-color:var(--acc);box-shadow:var(--shadow)}
.btn--sm{padding:11px 17px;font-size:13px}

/* ---------- nav ---------- */
.progress{position:fixed;top:0;left:0;height:2px;width:100%;z-index:70;transform-origin:0 50%;transform:scaleX(0);background:var(--acc)}
.nav{position:fixed;top:0;left:0;right:0;height:var(--nav-h);z-index:65;display:flex;align-items:center;
  transition:background .5s var(--ease),backdrop-filter .5s var(--ease),border-color .5s var(--ease);
  border-bottom:1px solid transparent}
.nav.stuck{background:rgba(247,247,241,.82);backdrop-filter:blur(16px) saturate(150%);border-bottom-color:var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:baseline;gap:9px}
.brand b{font-weight:800;letter-spacing:-.05em;font-size:21px;line-height:1}
.brand span{font-size:10px;font-weight:600;letter-spacing:.10em;color:var(--dim-2);text-transform:uppercase;font-family:"Inter Tight",sans-serif}
.nav-links{display:flex;gap:26px}
.nav-links a{font-size:13.5px;color:var(--dim);transition:color .3s;position:relative}
.nav-links a::after{content:"";position:absolute;left:0;bottom:-5px;height:1px;width:0;background:var(--acc);transition:width .45s var(--ease-out)}
.nav-links a:hover{color:var(--ink)}
.nav-links a:hover::after{width:100%}
@media(max-width:900px){.nav-links,.nav .btn{display:none}}

/* =========================================================
   HERO
   ========================================================= */
.hero{position:relative;min-height:88vh;min-height:92svh;display:flex;align-items:center;padding-top:var(--nav-h);overflow:hidden;
  background:
    radial-gradient(60% 55% at 82% 8%,rgba(183,243,107,.42),transparent 62%),
    radial-gradient(50% 50% at 8% 78%,rgba(200,236,214,.55),transparent 65%),
    radial-gradient(45% 40% at 45% 105%,rgba(253,246,227,.9),transparent 70%),
    var(--paper);
}
#net{position:absolute;inset:0;width:100%;height:100%;z-index:0;opacity:.85}
.hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,transparent 70%,var(--paper) 100%)}
.hero .wrap{position:relative;z-index:2;padding-block:clamp(48px,8vh,88px)}
.hero-top{display:flex;align-items:center;gap:14px;margin-bottom:clamp(22px,3.2vh,34px);flex-wrap:wrap}
.pill{display:inline-flex;align-items:center;gap:9px;padding:8px 15px;border-radius:100px;
  border:1px solid var(--line-2);background:rgba(255,255,255,.75);backdrop-filter:blur(6px);color:var(--dim);box-shadow:var(--shadow)}
.pill i{width:6px;height:6px;border-radius:50%;background:var(--lime);animation:pulse 2.4s infinite}
@keyframes pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(120,190,40,.5)}50%{opacity:.6;box-shadow:0 0 0 7px rgba(120,190,40,0)}}

.hero h1{margin-bottom:clamp(18px,2.6vh,28px);max-width:15ch}
.hero-sub{font-size:clamp(1rem,1.6vw,1.32rem);font-weight:600;letter-spacing:-.02em;margin-bottom:14px}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(26px,4vw,64px);align-items:end}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:30px;align-items:start}}
@media(max-width:640px){
  .hero{min-height:auto;align-items:flex-start;padding-top:calc(var(--nav-h) + 10px)}
  .hero .wrap{padding-block:14px 44px}
}
.hero-cta{display:flex;gap:11px;flex-wrap:wrap;margin-top:24px}

/* rotor */
.rotor{position:relative;display:inline-flex;align-items:center;height:1em;overflow:hidden;vertical-align:baseline}
.rotor-list{display:flex;flex-direction:column;transition:transform .78s var(--ease-out)}
.rotor-list b{display:block;height:1em;line-height:1;color:var(--acc);white-space:nowrap;font-weight:700}
.hero-chip-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}
.chip{padding:7px 13px;border-radius:100px;border:1px solid var(--line);background:rgba(255,255,255,.8);color:var(--dim-2);transition:.5s var(--ease-out)}
.chip.on{border-color:var(--lime);color:var(--ink);background:var(--lime);box-shadow:0 8px 18px -12px rgba(120,180,40,.9)}

@media(max-width:900px){}

/* ---------- marquee ---------- */
.marquee{border-block:1px solid var(--line);padding:15px 0;overflow:hidden;background:var(--paper-2);position:relative;z-index:3}
.marquee-track{display:flex;width:max-content;animation:slide 40s linear infinite}
.marquee-track span{display:inline-flex;align-items:center;gap:22px;padding-right:22px;color:var(--dim-2);white-space:nowrap}
.marquee-track span::after{content:"";width:5px;height:5px;border-radius:50%;background:var(--lime)}
@keyframes slide{to{transform:translateX(-50%)}}

/* =========================================================
   PROBLEMA
   ========================================================= */
.prob-head{display:grid;grid-template-columns:auto 1fr;gap:clamp(18px,3.4vw,48px);align-items:start;margin-bottom:clamp(28px,4vw,52px)}
.prob-num{font-family:"Inter Tight",sans-serif;font-size:clamp(1.7rem,3.4vw,2.7rem);font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--dim-2);line-height:1}
@media(max-width:720px){.prob-head{grid-template-columns:1fr;gap:12px}}

.morph{position:relative;border-radius:22px;overflow:hidden;border:1px solid var(--line);background:var(--paper-2);
  aspect-ratio:16/8.4;box-shadow:var(--shadow-lg)}
@media(max-width:860px){.morph{aspect-ratio:4/3.6}}
@media(max-width:640px){.morph{aspect-ratio:4/4.6}}
.morph-layer{position:absolute;inset:0;transition:opacity 1.1s var(--ease-out),transform 1.1s var(--ease-out),filter 1.1s var(--ease-out)}
.morph-old{background:#E6E6DF;padding:22px;color:#7a7d75;display:flex;flex-direction:column}
.morph-new{background:linear-gradient(150deg,#FFFFFF,#F4FBEA 60%,#FFFFFF);padding:22px;overflow:hidden;
  clip-path:inset(0 100% 0 0);transition:clip-path 1.3s var(--ease-out)}
.morph.on .morph-old{opacity:0;transform:scale(.95);filter:blur(6px) grayscale(1)}
.morph.on .morph-new{clip-path:inset(0 0 0 0)}
.morph-tag{position:absolute;left:50%;transform:translateX(-50%);top:14px;z-index:5;padding:6px 12px;border-radius:100px;
  background:rgba(255,255,255,.85);backdrop-filter:blur(8px);border:1px solid var(--line-2);color:var(--dim)}
.morph.on .morph-tag{background:var(--lime);color:var(--ink);border-color:var(--lime)}

/* 01 · el orden en que la página responde */
.cal{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.cal i{aspect-ratio:1;border-radius:6px;background:#F2F3EC;display:grid;place-items:center;font-size:9px;
  font-family:"Inter Tight",sans-serif;color:var(--dim-2);font-style:normal}
.cal i.off{opacity:.45}
.cal i.sel{background:var(--lime);color:var(--ink);font-weight:600}
.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}
.slots span{padding:7px 0;text-align:center;border-radius:8px;border:1px solid var(--line);color:var(--dim)}
.slots span.on{background:var(--lime-soft);border-color:var(--lime);color:var(--acc);font-weight:600}
.bookbtn{padding:10px;text-align:center;border-radius:100px;background:var(--deep);color:#F7F7F1;font-weight:500}

/* problema 02 · la escena de las tareas */
.tk{width:min(100%,1020px);margin:clamp(28px,4vw,52px) auto 0;
  border-radius:26px;border:1px solid var(--line);
  background:radial-gradient(64% 58% at 50% 46%,var(--mint),transparent 74%),var(--paper-2);
  box-shadow:var(--shadow-lg);padding:clamp(24px,3.2vw,40px) clamp(18px,2.6vw,34px)}
.tk-in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  gap:clamp(14px,2.2vw,30px)}

/* las dos tarjetas laterales */
.tk-card{background:var(--paper-2);border:1px solid var(--line);border-radius:16px;
  box-shadow:var(--shadow);overflow:hidden;justify-self:center;width:min(100%,282px)}
.tk-mail{transform:rotate(-1.6deg)}
.tk-ag{transform:rotate(1.6deg)}
.tk-head{display:flex;align-items:center;gap:8px;padding:11px 13px;
  border-bottom:1px solid var(--line);background:var(--paper)}
.tk-t{font-size:11.5px;font-weight:700;letter-spacing:-.02em}
.tk-b{margin-left:auto;padding:3px 8px;border-radius:100px;font-size:8px;font-weight:600;
  letter-spacing:.08em;text-transform:uppercase;background:var(--lime-soft);color:var(--acc);
  border:1px solid rgba(76,122,27,.22);white-space:nowrap}
.tk-b b{font-weight:800}
.tk-list,.tk-slots{list-style:none;margin:0;padding:0}
.tk-list li,.tk-slots li{padding:9px 13px;border-bottom:1px solid var(--line);
  opacity:0;transform:translateY(-7px);
  transition:opacity .34s var(--ease),transform .34s var(--ease-out)}
.tk-list li:last-child,.tk-slots li:last-child{border-bottom:0}
.tk-list li.on,.tk-slots li.on{opacity:1;transform:none}
.tk-list b{display:block;font-size:11.5px;font-weight:700;letter-spacing:-.02em}
.tk-list span{display:block;font-size:10px;color:var(--dim-2);margin-top:2px}
.tk-list li::before{content:"";float:left;width:6px;height:6px;border-radius:50%;
  background:var(--acc);margin:5px 8px 0 0}

.tk-slots li{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center}
.tk-slots .hh{font-size:10px;font-variant-numeric:tabular-nums;color:var(--dim-2);font-weight:600}
.tk-slots .nn{font-size:11.5px;font-weight:650;letter-spacing:-.02em}
.tk-slots .st{font-size:8px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  padding:3px 7px;border-radius:100px;background:rgba(20,23,15,.05);color:var(--dim-2);white-space:nowrap}
.tk-slots li.bad .nn{color:var(--dim-2);text-decoration:line-through}
.tk-slots li.bad .st{background:#F6E3DA;color:#A24A22}
.tk-slots li.hole{background:repeating-linear-gradient(-45deg,transparent 0 6px,rgba(20,23,15,.045) 6px 12px)}
.tk-slots li.hole .nn{color:var(--dim-2);font-style:italic}

/* el teléfono */
.fone{position:relative;width:clamp(186px,17vw,224px);aspect-ratio:9/18.4;
  border-radius:clamp(24px,2.4vw,30px);background:var(--ink);padding:7px;
  box-shadow:var(--shadow-lg);justify-self:center;z-index:2}
.fone-notch{position:absolute;top:11px;left:50%;transform:translateX(-50%);
  width:34%;height:13px;border-radius:100px;background:var(--ink);z-index:5}
.fone-scr{position:relative;width:100%;height:100%;border-radius:clamp(18px,1.9vw,24px);
  overflow:hidden;background:#EFEEE8}
.fv{position:absolute;inset:0;display:flex;flex-direction:column;
  opacity:0;visibility:hidden;transform:translateX(12px);
  transition:opacity .5s var(--ease),transform .5s var(--ease-out),visibility .5s}
.fv.on{opacity:1;visibility:visible;transform:none}

.fone-bar{flex:0 0 auto;display:flex;align-items:center;gap:7px;
  padding:26px 10px 8px;background:var(--paper-2);border-bottom:1px solid var(--line)}
.fone-ttl{font-size:12px;font-weight:700;letter-spacing:-.03em}
.fone-badge{margin-left:auto;padding:3px 6px;border-radius:100px;font-size:6.5px;font-weight:600;
  letter-spacing:.06em;text-transform:uppercase;background:var(--lime-soft);color:var(--acc);
  border:1px solid rgba(76,122,27,.22);white-space:nowrap}
.fone-badge b{font-weight:800}
.fone-back{font-size:17px;line-height:1;color:var(--dim-2)}
.fone-av{width:22px;height:22px;border-radius:50%;background:var(--mint);color:var(--acc);
  display:grid;place-items:center;font-size:9px;font-weight:800;flex:0 0 auto}
.fone-who{display:grid;line-height:1.15}
.fone-who b{font-size:10.5px;font-weight:700;letter-spacing:-.02em}
.fone-who em{font-style:normal;font-size:7.5px;color:var(--dim-2)}

.fone-rows{flex:1;overflow:hidden}
.fone-row{display:grid;grid-template-columns:auto 1fr auto;gap:7px;align-items:center;
  padding:6px 10px;background:var(--paper-2);border-bottom:1px solid var(--line);
  opacity:0;transform:translateY(-7px);
  transition:opacity .32s var(--ease),transform .32s var(--ease-out)}
.fone-row.on{opacity:1;transform:none}
.fone-row .av{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;
  font-size:9px;font-weight:800;color:var(--acc);background:var(--mint)}
.fone-row .tx{min-width:0}
.fone-row .tx b{display:block;font-size:9.5px;font-weight:700;letter-spacing:-.02em}
.fone-row .tx span{display:block;font-size:8.5px;color:var(--dim);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.fone-row .mt{display:grid;justify-items:end;gap:3px}
.fone-row .hr{font-size:7.5px;color:var(--dim-2);font-variant-numeric:tabular-nums}
.fone-row.late .hr{color:#B4552B;font-weight:700}
.fone-row .dot{width:12px;height:12px;border-radius:50%;background:var(--acc);color:#fff;
  font-size:7px;font-weight:800;display:grid;place-items:center}

.fone-msgs{flex:1;overflow-y:auto;overflow-x:hidden;padding:9px 9px 62px;
  display:flex;flex-direction:column;gap:5px;scrollbar-width:none;-ms-overflow-style:none;
  scroll-behavior:smooth}
.fone-msgs::-webkit-scrollbar{display:none}
.bub{max-width:86%;padding:6px 8px;border-radius:11px;font-size:9px;line-height:1.35;
  opacity:0;transform:translateY(7px) scale(.97);
  transition:opacity .3s var(--ease),transform .32s var(--ease-out)}
.bub.on{opacity:1;transform:none}
.bub.i{align-self:flex-start;background:var(--paper-2);border-bottom-left-radius:4px;
  border:1px solid var(--line);color:var(--ink)}
.bub.o{align-self:flex-end;background:var(--lime-soft);border-bottom-right-radius:4px;
  border:1px solid rgba(76,122,27,.2);color:var(--ink)}
.bub .h{display:block;margin-top:2px;font-size:6.5px;color:var(--dim-2);text-align:right;
  font-variant-numeric:tabular-nums}
.bub.o .h::after{content:" ✓✓";color:var(--acc)}
.fone-sum{position:absolute;left:9px;right:9px;bottom:10px;z-index:4;
  padding:9px 10px;border-radius:11px;text-align:center;
  background:var(--ink);color:#fff;opacity:0;transform:translateY(10px);
  transition:opacity .45s var(--ease),transform .5s var(--ease-out)}
.fone-sum.on{opacity:1;transform:none}
.fone-sum .mono{font-size:6.5px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.fs-n{margin-top:3px;font-size:11px;font-weight:700;letter-spacing:-.03em}
.fs-n b{color:var(--lime);font-weight:800;font-size:14px}
.fs-n i{font-style:normal;color:rgba(255,255,255,.4);margin:0 2px}

@media(max-width:880px){
  .tk-in{grid-template-columns:1fr 1fr;gap:16px}
  .fone{grid-column:1/-1;grid-row:1;width:clamp(180px,46vw,215px);margin-inline:auto}
  .tk-mail{grid-row:2}
  .tk-ag{grid-row:2}
}
@media(max-width:520px){
  .tk-in{grid-template-columns:1fr}
  .tk-mail,.tk-ag{grid-row:auto;width:min(100%,300px)}
}
@media(prefers-reduced-motion:reduce){
  .fv,.fone-row,.bub,.fone-sum,.tk-list li,.tk-slots li{transition:none}
}

/* =========================================================
   SISTEMA / JOURNEY
   ========================================================= */
.sys{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(28px,4.2vw,60px);align-items:start}
.sys-left .big{font-size:clamp(1.55rem,2.9vw,2.3rem)}
@media(max-width:900px){.sys{grid-template-columns:1fr;gap:30px}}
.sys-left{position:sticky;top:calc(var(--nav-h) + 36px)}
@media(max-width:900px){.sys-left{position:static}}
.sys-counter{font-family:"Inter Tight",sans-serif;font-size:12px;color:var(--dim-2);margin-top:26px;letter-spacing:.10em;
  display:flex;align-items:baseline;gap:7px}
.sys-counter b{color:var(--acc);font-size:30px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.sys-counter span#sysLabel{color:var(--ink);font-weight:600;letter-spacing:-.01em;font-size:13.5px;text-transform:none}

/* ---------- timeline: el recorrido ---------- */
.journey{position:relative;padding-left:clamp(34px,4vw,52px)}
.journey::before{content:"";position:absolute;left:11px;top:18px;bottom:18px;width:2px;background:var(--line);border-radius:2px}
.journey-fill{position:absolute;left:11px;top:18px;width:2px;background:var(--acc);height:0;transition:height .18s linear;border-radius:2px}
.step{position:relative;padding:clamp(18px,2.4vw,26px) 0;transition:opacity .6s var(--ease)}
.step+.step{border-top:1px solid var(--line)}
.js .step:not(.on){opacity:.34}
.step .dot{position:absolute;left:calc(clamp(34px,4vw,52px) * -1 + 6px);top:calc(clamp(18px,2.4vw,26px) + 9px);
  width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--line-2);transition:.5s var(--ease-out)}
.step.on .dot{background:var(--lime);border-color:var(--acc);box-shadow:0 0 0 5px rgba(183,243,107,.35)}
.step-head{display:flex;align-items:baseline;gap:clamp(10px,1.4vw,16px);flex-wrap:wrap;max-width:min(100%,480px)}
.step h3{font-size:clamp(1.15rem,2vw,1.6rem);letter-spacing:-.035em;line-height:1.1;transition:color .5s}
.gain{margin-left:auto;flex:0 0 auto;padding:4px 11px;border-radius:100px;
  font-size:9.5px;font-weight:600;letter-spacing:.10em;text-transform:uppercase;white-space:nowrap;
  background:rgba(20,23,15,.05);color:var(--dim-2);border:1px solid transparent;
  transition:background .5s var(--ease-out),color .5s var(--ease-out),border-color .5s var(--ease-out)}
.step.on .gain{background:var(--lime-soft);color:var(--acc);border-color:rgba(76,122,27,.22)}
@media(max-width:520px){.gain{margin-left:0}}
.step .two{display:grid;gap:8px;margin-top:14px;max-width:min(100%,480px)}
.step .two p{margin:0;font-size:14px;line-height:1.55;color:var(--dim);
  padding:12px 14px;border-radius:13px;border:1px solid var(--line);background:rgba(255,255,255,.55)}
.step .two .k{display:flex;align-items:center;gap:6px;font-size:9.5px;font-weight:600;
  letter-spacing:.14em;color:var(--dim-2);margin-bottom:6px}
.two .k::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--dim-2);flex:0 0 auto}
.step .two .you{color:var(--ink);background:var(--lime-soft);border-color:rgba(76,122,27,.24)}
.you .k::before{background:var(--acc)}
.step .two .you .k{color:var(--acc)}

/* ---------- representación mínima de cada paso ---------- */
.viz{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:15px}
.viz--grid{display:grid;grid-template-columns:repeat(2,max-content);gap:6px}
@media(max-width:420px){.viz--grid{grid-template-columns:max-content}}
.vt{display:inline-flex;align-items:center;padding:6px 11px;border-radius:100px;
  border:1px solid var(--line);background:#fff;color:var(--ink);white-space:nowrap;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
  opacity:0;transform:translateY(7px);
  transition:opacity .45s var(--ease-out),transform .45s var(--ease-out),background .5s,color .5s,border-color .5s}
.step.on .viz .vt{opacity:1;transform:none}
.step.on .viz .vt:nth-child(1){transition-delay:.06s}
.step.on .viz .vt:nth-child(2){transition-delay:.16s}
.step.on .viz .vt:nth-child(3){transition-delay:.26s}
.step.on .viz .vt:nth-child(4){transition-delay:.36s}
html:not(.js) .vt{opacity:1;transform:none}
.vt b{font-weight:700;color:var(--acc);margin-right:7px;letter-spacing:0;font-size:11px;line-height:1}
.vt--go{background:var(--deep);border-color:var(--deep);color:#fff}
.vt--go b{color:var(--lime)}
.vt--ok{background:var(--lime-soft);border-color:rgba(76,122,27,.25)}
.step:not(.on) .vt--go{background:#fff;border-color:var(--line);color:var(--dim)}
.step:not(.on) .vt--go b{color:var(--dim-2)}
.step:not(.on) .vt--ok{background:#fff}
.cal7{display:inline-grid;grid-auto-flow:column;gap:2px;margin-right:8px}
.cal7 i{display:block;width:5px;height:8px;border-radius:1.5px;background:rgba(20,23,15,.15)}
.cal7 i.on{background:var(--acc)}
.step:not(.on) .cal7 i.on{background:rgba(20,23,15,.28)}
.ck{display:inline-grid;place-items:center;width:13px;height:13px;border-radius:50%;
  background:var(--lime);color:var(--ink);font-size:8px;margin-right:7px;line-height:1}
.step:not(.on) .ck{background:rgba(20,23,15,.12)}

/* =========================================================
   CONCEPTO NODO
   ========================================================= */
.orbit{position:relative;height:clamp(380px,60vh,560px);display:grid;place-items:center}
.orbit-ring{position:absolute;border:1px dashed var(--line-2);border-radius:50%;animation:spin 70s linear infinite}
.orbit-ring.r2{animation-duration:100s;animation-direction:reverse}
@keyframes spin{to{transform:rotate(360deg)}}
.orbit-core{position:relative;z-index:4;width:clamp(112px,15vw,158px);aspect-ratio:1;border-radius:50%;
  display:grid;place-items:center;background:radial-gradient(circle at 38% 32%,#fff,var(--lime-soft));
  border:1px solid rgba(120,180,40,.5);box-shadow:0 24px 60px -22px rgba(120,180,40,.75)}
.orbit-core b{font-size:clamp(1.05rem,2.2vw,1.6rem);letter-spacing:-.05em;font-weight:800}
.orbit-node{position:absolute;z-index:3;padding:9px 15px;border-radius:100px;border:1px solid var(--line);
  background:#fff;box-shadow:var(--shadow);transform:translate(-50%,-50%);transition:.5s var(--ease-out);color:var(--dim)}
.orbit-node:hover,.orbit-node.hot{border-color:var(--lime);color:var(--acc);background:var(--lime-soft);transform:translate(-50%,-50%) scale(1.08)}
.orbit-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.orbit-svg line{stroke:rgba(20,23,15,.13);stroke-width:1}
.orbit-svg line.hot{stroke:rgba(120,180,40,.85);stroke-width:1.4}

/* =========================================================
   SERVICIOS
   ========================================================= */
.svc{border-top:1px solid var(--line)}
.svc-item{border-bottom:1px solid var(--line);position:relative;overflow:hidden;transition:background .6s var(--ease)}
.svc-item::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(183,243,107,.20),rgba(183,243,107,0) 60%);opacity:0;transition:opacity .6s var(--ease)}
.svc-item.open::before{opacity:1}
.svc-btn{width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:clamp(14px,2.6vw,38px);align-items:center;padding:clamp(20px,2.8vw,32px) 0;text-align:left;position:relative;z-index:2}
.svc-n{font-family:"Inter Tight",sans-serif;font-size:12px;color:var(--dim-2);letter-spacing:.10em}
.svc-item.open .svc-n{color:var(--acc)}
.svc-t{font-size:clamp(1.5rem,3.2vw,2.5rem);font-weight:700;letter-spacing:-.038em;line-height:1;transition:color .5s}
.svc-item.open .svc-t{color:var(--acc)}
.svc-meta{display:flex;align-items:center;gap:14px}
.svc-badge{padding:5px 11px;border-radius:100px;background:var(--lime);color:var(--ink);font-weight:600}
.svc-plus{width:34px;height:34px;border-radius:50%;border:1px solid var(--line-2);display:grid;place-items:center;flex:none;transition:.5s var(--ease-out);background:#fff}
.svc-item.open .svc-plus{background:var(--deep);border-color:var(--deep);color:#F7F7F1;transform:rotate(135deg)}
.svc-body{max-height:0;overflow:hidden;transition:max-height .8s var(--ease-out);position:relative;z-index:2}
.svc-item.open .svc-body{max-height:700px}
.svc-inner{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(18px,3.4vw,52px);padding:0 0 clamp(24px,3.2vw,40px);align-items:start}
.svc-tags{display:flex;flex-wrap:wrap;gap:8px}
.svc-tags .chip{color:var(--ink);border-color:var(--line-2);background:#fff}
@media(max-width:860px){
  .svc-btn{grid-template-columns:1fr auto;gap:10px}
  .svc-n{grid-column:1/-1}
  .svc-inner{grid-template-columns:1fr}
  .svc-badge{display:none}
}

/* =========================================================
   CASOS
   ========================================================= */
.case-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:clamp(24px,3.6vw,40px)}
.case{position:relative;padding-block:clamp(36px,5vw,64px);border-top:1px solid var(--line)}
.case-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(24px,4.4vw,64px);align-items:center}
@media(max-width:960px){.case-grid{grid-template-columns:1fr;gap:28px}}
.case-facts{display:grid;gap:18px;margin-top:24px}
.fact{border-left:2px solid var(--lime);padding-left:15px}
.fact .k{color:var(--acc)}
.fact p{color:var(--dim);font-size:14.5px;margin-top:5px;max-width:44ch}
.case-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:22px;max-width:46ch}
.case-tags .chip{background:#fff;border-color:var(--line-2);color:var(--ink);font-size:10px;padding:5px 11px}

/* =========================================================
   CASOS — solo las pantallas
   ========================================================= */
.works{display:grid;grid-template-columns:1fr 1fr;gap:clamp(34px,5vw,80px);
  margin-top:clamp(34px,4.6vw,60px)}
.work{display:flex;flex-direction:column}
.work .device-stack{margin-bottom:clamp(46px,5vw,64px)}
.work-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;
  padding-top:clamp(14px,1.8vw,20px);border-top:1px solid var(--line);margin-top:auto}
.work-foot>div{min-width:0;flex:1 1 auto}
.work-foot .btn{flex:0 0 auto}
.work-foot h3{font-size:clamp(1.15rem,1.8vw,1.5rem);font-weight:700;letter-spacing:-.03em}
.work-foot .mono{color:var(--dim-2);margin-top:6px;letter-spacing:.1em}
@media(max-width:900px){
  .works{grid-template-columns:1fr;gap:clamp(52px,9vw,74px)}
}

.device-stack{position:relative}
.laptop{position:relative;border-radius:16px;border:1px solid var(--line);background:#EDEEE7;padding:10px 10px 0;box-shadow:var(--shadow-lg)}
.laptop-bar{display:flex;align-items:center;gap:6px;padding:0 4px 9px}
.laptop-bar i{width:8px;height:8px;border-radius:50%;background:rgba(20,23,15,.16);display:block}
.laptop-bar .url{margin-left:10px;flex:1;height:21px;border-radius:100px;background:#fff;border:1px solid var(--line);
  display:flex;align-items:center;padding:0 10px;font-size:9px;color:var(--dim-2);
  font-family:"Inter Tight",sans-serif;letter-spacing:.04em;overflow:hidden;white-space:nowrap}
.screen{position:relative;aspect-ratio:16/10;overflow:hidden;border-radius:9px 9px 0 0;background:#fff}
.screen img{position:absolute;top:0;left:0;width:100%;will-change:transform}
.laptop-foot{height:12px;margin:0 -10px;border-radius:0 0 16px 16px;background:linear-gradient(#E2E3DB,#D2D3CA)}
.phone{position:absolute;right:-14px;bottom:-40px;width:clamp(108px,14vw,158px);border-radius:22px;
  border:1px solid var(--line);background:#EDEEE7;padding:7px;box-shadow:var(--shadow-lg);z-index:3}
.phone .screen{aspect-ratio:9/19;border-radius:16px}
@media(max-width:640px){.phone{right:-6px;bottom:-24px}}

.enfa{position:relative;border-radius:22px;border:1px solid var(--line);overflow:hidden;
  background:radial-gradient(80% 70% at 80% 10%,var(--mint),transparent 70%),var(--paper-2);
  padding:clamp(18px,2.4vw,26px);box-shadow:var(--shadow-lg)}
.enfa-top{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;flex-wrap:wrap}
.enfa-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ecard{border:1px solid var(--line);border-radius:16px;padding:14px;background:#fff;transition:.5s var(--ease-out)}
.ecard:hover{border-color:rgba(120,180,40,.5);transform:translateY(-3px);box-shadow:var(--shadow)}
.ecard .kpi{font-size:clamp(1.05rem,2vw,1.6rem);font-weight:700;letter-spacing:-.035em;line-height:1}
.ecard .cap{font-size:12px;color:var(--dim-2);margin-top:4px}
.eflow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.eflow .chip{color:var(--dim);background:#fff}
.eflow .arw{color:var(--acc)}
@media(max-width:640px){.enfa-grid{grid-template-columns:1fr 1fr}}

/* =========================================================
   DIFERENCIAL / EQUIPO / PROCESO
   ========================================================= */
.diff{background:linear-gradient(180deg,var(--mint),rgba(253,246,227,.6));border-block:1px solid var(--line)}
.diff-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(28px,4.4vw,68px);align-items:start;margin-top:clamp(28px,4vw,48px)}
@media(max-width:900px){.diff-grid{grid-template-columns:1fr}}
.story p+p{margin-top:13px}
.disc{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}
.disc div{background:#fff;padding:20px 18px;transition:background .5s}
.disc div:hover{background:var(--lime-soft)}
.disc b{display:block;font-size:clamp(.95rem,1.4vw,1.1rem);letter-spacing:-.02em;font-weight:700}
.disc span{font-size:11px;color:var(--dim-2)}
.team{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}

.proc{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:860px){.proc{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.proc{grid-template-columns:1fr}}
.proc-i{background:#fff;border:1px solid var(--line);border-radius:18px;padding:clamp(20px,2.4vw,28px);position:relative;overflow:hidden;transition:transform .6s var(--ease-out),box-shadow .6s var(--ease-out)}
.proc-i:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.proc-i .n{font-family:"Inter Tight",sans-serif;font-size:11px;letter-spacing:.11em;color:var(--dim-2)}
.proc-i.on .n{color:var(--acc)}
.proc-i h3{font-size:clamp(1.05rem,1.7vw,1.35rem);letter-spacing:-.03em;margin:12px 0 7px}
.proc-i p{font-size:13.5px;color:var(--dim);max-width:32ch}
.proc-i .bar{position:absolute;left:0;top:0;height:3px;width:0;background:var(--lime);transition:width 1s var(--ease-out)}
.proc-i.on .bar{width:100%}

/* =========================================================
   CTA + FOOTER
   ========================================================= */
/* =========================================================
   DIAGNÓSTICO DIGITAL
   ========================================================= */
.qz{position:relative;width:100%;max-width:min(100%,780px);margin-inline:auto;text-align:left}
.qz-screen{display:none}
.qz-screen.on{display:grid;gap:18px;justify-items:start;animation:qzIn .5s var(--ease-out) both}
@keyframes qzIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.qz-screen.on{animation:none}}
html:not(.js) .qz-screen{display:grid;gap:18px}
.qz-screen[data-s="intro"].on{justify-items:center;text-align:center;gap:22px}
.qz-title{font-size:clamp(1.55rem,3vw,2.5rem);font-weight:700;letter-spacing:-.04em;line-height:1.08;max-width:18ch}
.qz-lead{font-size:clamp(.98rem,1.2vw,1.1rem);line-height:1.6;color:var(--dim);max-width:52ch}
.qz-fine{color:var(--dim-2);font-size:11px;letter-spacing:.08em}

.qz-card{width:100%;background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:clamp(18px,2.4vw,26px);
  padding:clamp(20px,3vw,38px);box-shadow:var(--shadow-lg)}
.qz-top{display:flex;align-items:center;gap:clamp(10px,1.6vw,18px);margin-bottom:clamp(18px,2.4vw,26px)}
.qz-back{background:none;border:0;padding:0;cursor:pointer;color:var(--dim-2);font-size:11px;letter-spacing:.08em;
  transition:color .3s}
.qz-back:hover{color:var(--acc)}
.qz-step{font-size:11px;letter-spacing:.13em;color:var(--dim-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.qz-bar{flex:1;height:3px;border-radius:2px;background:rgba(20,23,15,.1);overflow:hidden;min-width:60px}
.qz-bar i{display:block;height:100%;background:var(--acc);border-radius:2px;transition:width .55s var(--ease-out)}
.qz-q{font-size:clamp(1.2rem,2.3vw,1.8rem);font-weight:700;letter-spacing:-.035em;line-height:1.16;max-width:26ch}
.qz-sub{font-size:clamp(.94rem,1.1vw,1.02rem);color:var(--dim);line-height:1.55;margin-top:12px;max-width:54ch}
.qz-hint{font-size:10.5px;letter-spacing:.1em;color:var(--dim-2);margin-top:9px}

.qz-opts{display:grid;gap:9px;margin-top:clamp(16px,2.2vw,22px)}
.qz-opt{position:relative;display:flex;align-items:center;gap:13px;padding:14px 18px;border-radius:14px;
  border:1px solid var(--line);background:#fff;cursor:pointer;font-size:clamp(14px,1.05vw,15.5px);line-height:1.35;
  transition:border-color .28s var(--ease-out),background .28s var(--ease-out),transform .28s var(--ease-out)}
.qz-opt:hover{border-color:var(--line-2)}
.qz-opt input{position:absolute;opacity:0;width:1px;height:1px}
.qz-mark{width:19px;height:19px;border-radius:50%;border:2px solid var(--line-2);flex:0 0 auto;
  display:grid;place-items:center;transition:border-color .28s var(--ease-out)}
.qz-mark::after{content:"";width:9px;height:9px;border-radius:50%;background:var(--acc);
  transform:scale(0);transition:transform .3s cubic-bezier(.2,1.3,.4,1)}
.qz-opt--multi .qz-mark{border-radius:6px}
.qz-opt--multi .qz-mark::after{border-radius:2px}
.qz-opt.is-on{border-color:var(--acc);background:var(--lime-soft)}
.qz-opt.is-on .qz-mark{border-color:var(--acc)}
.qz-opt.is-on .qz-mark::after{transform:scale(1)}
.qz-opt:focus-within{border-color:var(--acc);box-shadow:0 0 0 4px rgba(183,243,107,.4)}
.qz-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:clamp(18px,2.4vw,24px)}
.qz-actions .btn[disabled]{opacity:.42;pointer-events:none}

.qz-areas{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:clamp(18px,2.4vw,24px)}
@media(max-width:760px){.qz-areas{grid-template-columns:1fr}}
.qz-area{position:relative;border:1px solid var(--line);border-radius:16px;padding:18px;background:#fff;
  display:grid;gap:7px;align-content:start;transition:.4s var(--ease-out)}
.qz-area .t{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--dim-2)}
.qz-area p{font-size:13.5px;color:var(--dim);line-height:1.5;margin:0}
.qz-area .qz-flag{display:none;justify-self:start;padding:3px 9px;border-radius:100px;background:var(--lime);
  color:var(--ink);font-size:9px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}
.qz-area--top{border-color:rgba(76,122,27,.35);background:linear-gradient(180deg,var(--lime-soft),#fff 70%)}
.qz-area--top .qz-flag{display:inline-block}
.qz-area--top .t{color:var(--acc)}
.qz-area--top p{color:var(--ink)}

.qz-sep{height:1px;background:var(--line);margin:clamp(22px,3vw,32px) 0}
.qz-formh{font-size:clamp(1.05rem,1.7vw,1.35rem);font-weight:700;letter-spacing:-.03em;margin-bottom:16px}
.qz-form{display:grid;grid-template-columns:1fr 1fr;gap:13px}
@media(max-width:560px){.qz-form{grid-template-columns:1fr}}
.qz-wide{grid-column:1/-1}
.qz-field{display:grid;gap:6px}
.qz-field label{font-size:10px;letter-spacing:.12em;color:var(--dim-2);text-transform:uppercase}
.qz-field input{width:100%;padding:13px 15px;border-radius:12px;border:1px solid var(--line);background:#fff;
  font-family:inherit;font-size:15px;color:var(--ink);transition:border-color .3s,box-shadow .3s}
.qz-field input:focus{outline:none;border-color:var(--acc);box-shadow:0 0 0 4px rgba(183,243,107,.35)}
.qz-field input[aria-invalid="true"]{border-color:#C0492F}
.qz-err{color:#C0492F;font-size:11px;letter-spacing:.06em;margin:0}

.qz-card--done{display:grid;justify-items:start;gap:14px;text-align:left}
.qz-check{width:44px;height:44px;border-radius:50%;background:var(--lime);color:var(--ink);
  display:grid;place-items:center;font-size:21px;line-height:1}
.qz-mailto{font-size:13.5px;color:var(--dim)}
.qz-mailto a{color:var(--acc);border-bottom:1px solid rgba(76,122,27,.35)}
@media(max-width:640px){.qz-card{padding-bottom:26px}}

.cta{position:relative;overflow:hidden;text-align:center;padding-block:clamp(84px,13vh,150px);
  background:radial-gradient(60% 70% at 50% 40%,rgba(183,243,107,.5),transparent 68%),
             radial-gradient(50% 50% at 12% 90%,rgba(253,246,227,.9),transparent 70%),var(--paper)}
.cta .wrap{position:relative;z-index:2;display:grid;justify-items:center;gap:28px}
.cta h2{max-width:min(100%,20ch);overflow-wrap:break-word}
.cta .qz h2,.cta .qz h3{max-width:none}
.foot{border-top:1px solid var(--line);padding:clamp(36px,4.4vw,58px) 0 26px;background:var(--paper-3)}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px}
@media(max-width:760px){.foot-grid{grid-template-columns:1fr 1fr}}
.foot h3{font-size:clamp(2rem,4.4vw,3.1rem);letter-spacing:-.05em;font-weight:800}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.foot ul a{color:var(--dim);font-size:14px;transition:color .3s}
.foot ul a:hover{color:var(--acc)}
.foot-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:clamp(30px,4vw,50px);padding-top:20px;border-top:1px solid var(--line);color:var(--dim-2)}

/* ---------- mockup ENFA dentro del laptop ---------- */
.enfa-screen{position:absolute;inset:0;display:flex;flex-direction:column;gap:0;
  background:radial-gradient(70% 60% at 85% 0%,var(--mint),transparent 65%),#fff;
  padding:clamp(10px,1.3vw,16px);overflow:hidden}
.es-nav{display:flex;align-items:center;gap:clamp(8px,1.2vw,16px);padding-bottom:clamp(8px,1vw,12px);border-bottom:1px solid var(--line)}
.es-nav b{font-size:clamp(11px,1.1vw,15px);letter-spacing:-.03em}
.es-nav .mono{font-size:clamp(7px,.62vw,9px);color:var(--dim-2)}
.es-cta{margin-left:auto;padding:5px 10px;border-radius:100px;background:var(--deep);color:#F7F7F1;font-size:clamp(7px,.62vw,9px)!important}
.es-body{display:grid;grid-template-columns:1fr .9fr;gap:clamp(10px,1.4vw,20px);align-items:center;flex:1;min-height:0;padding-block:clamp(8px,1.2vw,16px)}
.es-left .mono{font-size:clamp(7px,.62vw,9px)}
.es-h{font-size:clamp(13px,1.9vw,26px);font-weight:700;letter-spacing:-.035em;line-height:1.05;margin-top:6px}
.es-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:clamp(6px,.9vw,12px)}
.es-chips span{padding:4px 9px;border-radius:100px;border:1px solid var(--line);background:#fff;color:var(--dim);font-size:clamp(6.5px,.58vw,8.5px);font-family:"Inter Tight",sans-serif;letter-spacing:.08em;text-transform:uppercase}
.es-card{border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow);padding:clamp(9px,1.1vw,14px);display:grid;gap:8px}
.es-card .mono{font-size:clamp(6.5px,.58vw,8.5px)}
.es-bars{display:grid;gap:clamp(5px,.7vw,9px)}
.es-bar{display:grid;gap:3px}
.es-bar .t{display:flex;justify-content:space-between;font-family:"Inter Tight",sans-serif;
  font-size:clamp(6px,.55vw,8px);letter-spacing:.08em;text-transform:uppercase;color:var(--dim-2)}
.es-bar .t b{color:var(--ink)}
.es-bar .r{height:clamp(5px,.6vw,8px);border-radius:100px;background:#F0F1EA;overflow:hidden}
.es-bar .r i{display:block;height:100%;width:0;border-radius:100px;background:var(--lime);transition:width 1.1s var(--ease-out)}
.es-bar:nth-child(2) .r i{background:var(--acc)}
.es-bar:nth-child(3) .r i{background:#9FD9B0}
.es-bar:nth-child(4) .r i{background:var(--deep)}
.es-foot{display:flex;justify-content:space-between;align-items:center;padding-top:7px;border-top:1px solid var(--line);color:var(--dim-2)}
.es-foot b{color:var(--acc)}
.es-mods{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(5px,.7vw,9px);padding-top:clamp(8px,1vw,12px);border-top:1px solid var(--line)}
.es-mods>div{border:1px solid var(--line);border-radius:10px;padding:clamp(6px,.8vw,11px);background:#fff}
.es-mods .mono{font-size:clamp(6px,.55vw,8px);color:var(--dim-2)}
.es-mods b{display:block;font-size:clamp(8px,.85vw,12px);letter-spacing:-.02em;margin-top:3px}
.es-mods .hot{background:var(--lime);border-color:var(--lime)}
.es-mods .hot .mono{color:rgba(20,23,15,.6)}
@media(max-width:520px){.es-body{grid-template-columns:1fr}.es-card{display:none}}

/* =========================================================
   HERO v3 — panel de producto en vivo
   ========================================================= */
.hero{background:
    radial-gradient(58% 52% at 88% 4%,rgba(183,243,107,.34),transparent 64%),
    radial-gradient(46% 46% at 4% 70%,rgba(203,238,216,.5),transparent 66%),
    radial-gradient(44% 38% at 52% 108%,rgba(253,246,227,.85),transparent 72%),
    var(--paper)}
.hero-blob{position:absolute;border-radius:50%;filter:blur(64px);z-index:0;pointer-events:none;opacity:.75}
.hero-blob.b1{width:min(46vw,520px);aspect-ratio:1.25;right:-6%;top:-14%;background:rgba(183,243,107,.5);animation:float1 18s ease-in-out infinite}
.hero-blob.b2{width:min(38vw,420px);aspect-ratio:1;left:-10%;bottom:-8%;background:rgba(180,225,196,.55);animation:float2 22s ease-in-out infinite}
.hero-blob.b3{width:min(30vw,340px);aspect-ratio:1.4;left:38%;top:52%;background:rgba(253,240,205,.7);animation:float1 26s ease-in-out infinite reverse}
@keyframes float1{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-3%,4%,0) scale(1.07)}}
@keyframes float2{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(4%,-3%,0) scale(1.05)}}
@media (prefers-reduced-motion:reduce){.hero-blob{animation:none}}

.hero-grid{align-items:center}
.hero-proof{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin-top:26px;color:var(--dim-2)}
.hero-proof b{color:var(--ink);font-weight:600;letter-spacing:.06em}
.hero-proof i{width:4px;height:4px;border-radius:50%;background:var(--lime);display:block}

.hero-panel{
  position:relative;z-index:2;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);
  border:1px solid var(--line);border-radius:22px;padding:16px;box-shadow:var(--shadow-lg);
  display:grid;gap:12px;
}
.hp-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.hp-live{display:inline-flex;align-items:center;gap:7px;color:var(--acc);padding:5px 11px;border-radius:100px;background:var(--lime-soft)}
.hp-live i{width:6px;height:6px;border-radius:50%;background:var(--acc);animation:pulse 2s infinite}
.hp-title{color:var(--dim-2)}

.hp-feed{display:flex;flex-direction:column;min-height:264px}
.hp-item{
  display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;
  border:1px solid var(--line);border-radius:14px;background:#fff;padding:12px 13px;
  box-shadow:0 8px 20px -18px rgba(20,23,15,.5);
  overflow:hidden;
  transition:opacity .5s var(--ease-out),transform .5s var(--ease-out),
             max-height .5s var(--ease-out),margin-bottom .5s var(--ease-out),
             padding .5s var(--ease-out),border-width .5s;
  max-height:70px;margin-bottom:9px;
}
.hp-item.hide{opacity:0;transform:translateY(-8px) scale(.97);max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;border-width:0}
.hp-ico{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex:none;
  background:var(--lime-soft);color:var(--acc);font-size:14px;font-weight:700}
.hp-ico.wa{background:#E4F5E9;color:#2E7D4F}
.hp-ico.st{background:#FDF0CE;color:#9A7A16}
.hp-txt{display:grid;gap:2px;min-width:0}
.hp-txt b{font-size:13.5px;font-weight:600;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hp-txt em{font-style:normal;font-size:11.5px;color:var(--dim-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hp-t{color:var(--dim-2);font-size:9.5px!important;white-space:nowrap}

.hp-foot{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:12px;border-top:1px solid var(--line)}
.hp-foot>div{border-radius:12px;background:var(--paper);padding:11px 12px}
.hp-foot .mono{color:var(--dim-2);font-size:9.5px}
.hp-kpi{font-size:clamp(1.15rem,1.9vw,1.5rem);font-weight:700;letter-spacing:-.035em;margin-top:3px;line-height:1}
.hp-kpi span{font-size:11px;font-weight:500;color:var(--dim-2);letter-spacing:0}

@media(max-width:900px){.hero-grid{align-items:start}.hp-feed{min-height:246px}}
@media(max-width:640px){.hero-proof{margin-top:20px}.hero-panel{padding:14px}}

/* ---------- mockup con hero en movimiento ---------- */
.shot{position:absolute;top:0;left:0;width:100%;will-change:transform}
.shot-vid{width:100%;display:block;aspect-ratio:1280/800;object-fit:cover;background:#1b1430}
.shot img{position:relative;top:auto;left:auto;width:100%;display:block}

/* =========================================================
   EL DIFERENCIAL v2
   ========================================================= */
.diff-claim{font-size:clamp(1.05rem,1.7vw,1.35rem);font-weight:600;letter-spacing:-.02em;
  margin-top:clamp(18px,2.4vw,26px);max-width:46ch;color:var(--ink)}
.diff-grid{display:grid;grid-template-columns:1fr;margin-top:clamp(28px,4vw,44px);max-width:min(100%,660px)}
.story p+p{margin-top:13px}

.vs{display:grid;grid-template-columns:1fr 1fr;gap:clamp(10px,1.1vw,14px);
  margin-top:clamp(32px,4.4vw,52px);max-width:min(100%,940px)}
@media(max-width:520px){.vs{grid-template-columns:1fr}}
.vs>div{border-radius:20px;padding:clamp(20px,2.4vw,30px);border:1px solid var(--line);background:rgba(255,255,255,.6)}
.vs .mono{color:var(--dim-2);margin-bottom:11px}
.vs p:last-child{font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.28;letter-spacing:-.022em;color:var(--dim)}
.vs-b{background:#fff;border-color:rgba(120,180,40,.45);box-shadow:var(--shadow)}
.vs-b .mono{color:var(--acc)}
.vs-b p:last-child{color:var(--ink);font-weight:600}

/* trayectoria */
.path{position:relative;background:rgba(255,255,255,.7);border:1px solid var(--line);border-radius:20px;
  padding:clamp(18px,2.4vw,26px);box-shadow:var(--shadow)}
.path-t{color:var(--dim-2);margin-bottom:16px}
.path-rail{position:absolute;left:calc(clamp(18px,2.4vw,26px) + 5px);top:calc(clamp(18px,2.4vw,26px) + 40px);
  bottom:clamp(18px,2.4vw,26px);width:2px;background:var(--line);border-radius:2px}
.path-fill{position:absolute;left:0;top:0;width:2px;background:var(--acc);height:0;border-radius:2px;transition:height .8s var(--ease-out)}
.path-i{position:relative;padding-left:26px;padding-block:9px;transition:opacity .5s var(--ease),color .5s}
.js .path-i:not(.on){opacity:.42}
.path-i .d{position:absolute;left:0;top:15px;width:12px;height:12px;border-radius:50%;background:#fff;
  border:2px solid var(--line-2);transition:.5s var(--ease-out)}
.path-i.on .d{background:var(--lime);border-color:var(--acc)}
.path-i.last .d{box-shadow:0 0 0 5px rgba(183,243,107,.35)}
.path-i b{font-size:15px;font-weight:600;letter-spacing:-.015em;display:block}
.path-i span{font-size:12.5px;color:var(--dim-2)}
.path-i.last b{color:var(--acc)}

/* equipo */
.team{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;
  gap:clamp(24px,3.4vw,52px);margin-top:clamp(52px,7vw,96px)}
.team .team-txt{order:1;min-width:0}
.team .team-photo{order:2;width:clamp(190px,26vw,350px);aspect-ratio:4/3;border-radius:18px}
.team-k{letter-spacing:.14em;color:var(--dim-2)}
.team-l{font-size:15px;line-height:1.6;color:var(--dim);margin-top:13px;max-width:none}
@media(max-width:820px){
  .team{grid-template-columns:1fr;gap:24px}
  .team .team-photo{order:0;width:clamp(150px,44vw,240px)}
  .team-h,.team-l{max-width:none}
}
.team-photo{width:clamp(108px,13vw,158px);aspect-ratio:4/3;border-radius:14px;overflow:hidden;
  border:1px dashed var(--line-2);background:var(--paper);display:grid;place-items:center;color:var(--dim-2);
  filter:saturate(.9)}
.team-photo img{width:100%;height:100%;object-fit:cover;display:block;
  pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-user-drag:none;
  -webkit-touch-callout:none}
/* capa transparente: el clic derecho y el pulsado largo caen acá, no sobre la imagen */
.team-photo::after{content:"";position:absolute;inset:0;z-index:2}
.team-photo.has-img{border-style:solid;border-color:var(--line)}
.team-disc{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.team-disc span{padding:6px 12px;border-radius:100px;background:var(--paper);border:1px solid var(--line);color:var(--dim)}

/* =========================================================
   HERO v4 — titular dominante, panel al fondo
   ========================================================= */
.hero{align-items:center}
.hero .wrap{padding-block:clamp(40px,7vh,80px)}
.hero-h{
  font-weight:700;letter-spacing:-.045em;line-height:.98;
  font-size:clamp(2.6rem,8.4vw,6.4rem);
  margin-bottom:clamp(26px,4vh,46px);
}
.hero-foot{display:grid;gap:0;max-width:min(100%,580px)}
.hero-foot .lead{max-width:48ch;margin-top:12px}
.hero-foot .hero-cta{margin-top:26px;justify-content:flex-start}

/* panel de fondo */
.hero-bg{
  position:absolute;z-index:1;right:-3%;top:50%;width:min(44%,540px);
  transform:translateY(-46%) rotate(-2.5deg);
  opacity:.9;pointer-events:none;
  -webkit-mask-image:linear-gradient(205deg,#000 55%,rgba(0,0,0,.25) 92%);
          mask-image:linear-gradient(205deg,#000 55%,rgba(0,0,0,.25) 92%);
}
.hero-bg .hero-panel{box-shadow:0 40px 90px -50px rgba(20,23,15,.5)}
@media(max-width:1100px){.hero-bg{opacity:.6;right:-12%}}
@media(max-width:900px){.hero-bg{display:none}}

/* =========================================================
   SERVICIOS — precios y plan Evolución
   ========================================================= */
.svc-price{color:var(--dim-2);white-space:nowrap}
.svc-item.open .svc-price{color:var(--acc)}
@media(max-width:860px){.svc-price{display:none}}
.svc-note{color:var(--dim-2);margin-top:16px;text-align:right}

.evo{margin-top:clamp(30px,4vw,48px);border:1px solid var(--line);border-radius:22px;
  background:radial-gradient(80% 90% at 90% 0%,var(--mint),transparent 70%),#fff;
  padding:clamp(20px,2.8vw,34px);box-shadow:var(--shadow-lg)}
.evo-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;
  padding-bottom:clamp(18px,2.4vw,26px);margin-bottom:clamp(18px,2.4vw,26px);border-bottom:1px solid var(--line)}
.evo-price{font-size:13px;color:var(--dim-2);white-space:nowrap}
.evo-price b{display:inline-block;font-size:clamp(1.5rem,3vw,2.2rem);letter-spacing:-.04em;color:var(--ink);margin-inline:6px}
.evo-price span{font-size:13px;color:var(--dim-2)}
.evo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,22px)}
@media(max-width:820px){.evo-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.evo-grid{grid-template-columns:1fr}}
.evo-grid>div{border-top:2px solid var(--lime);padding-top:12px}
.evo-grid .mono{color:var(--dim-2)}
.evo-grid b{display:block;font-size:14.5px;font-weight:600;letter-spacing:-.015em;margin:5px 0 4px}
.evo-grid p{font-size:13px;color:var(--dim);line-height:1.45}

/* ---------- equipo ---------- */
.team-h{font-size:clamp(1.3rem,2.5vw,2.05rem);font-weight:700;letter-spacing:-.03em;line-height:1.14;margin-top:13px;max-width:none}

/* =========================================================
   FALLBACK SIN JAVASCRIPT — la página siempre se ve completa
   ========================================================= */
html:not(.js) .morph-old{opacity:0}
html:not(.js) .morph-new{clip-path:none}
html:not(.js) .morph-tag{background:var(--lime);color:var(--ink);border-color:var(--lime)}
html:not(.js) .proc-i .bar{width:100%}
html:not(.js) .svc-body{max-height:none}
html:not(.js) .journey-fill,html:not(.js) .path-fill{height:100%}
html:not(.js) .es-bar .r i{width:var(--w,50%)}
html:not(.js) html:not(.js) .marquee-track{animation:none}

/* posiciones sin JS */
html:not(.js) .cap-a{display:none}
html:not(.js) .cap-b{opacity:1;transform:translateX(-50%)}
html:not(.js) .orbit{display:flex;flex-wrap:wrap;gap:10px;align-content:center;justify-content:center;height:auto;padding-block:30px}
html:not(.js) .orbit-node{position:static;transform:none}
html:not(.js) .orbit-ring,html:not(.js) .orbit-svg{display:none}
html:not(.js) .step,html:not(.js) .path-i{opacity:1}

/* =========================================================
   ESCALERA DE SERVICIOS
   ========================================================= */
.ladder{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:end;
  margin:clamp(6px,1.4vw,14px) 0 clamp(30px,4vw,52px)}
.lad{border-radius:20px;border:1px solid var(--line);background:#fff;box-shadow:var(--shadow);
  padding:clamp(18px,2.2vw,26px);display:grid;align-content:end;gap:5px}
.lad.l1{min-height:clamp(140px,15vw,168px)}
.lad.l2{min-height:clamp(170px,18vw,206px);background:linear-gradient(180deg,#fff,var(--mint))}
.lad.l3{min-height:clamp(200px,21vw,244px);background:linear-gradient(180deg,#fff,var(--lime-soft));
  border-color:rgba(120,180,40,.45)}
.lad-n{color:var(--dim-2)}
.lad b{font-family:"Inter Tight",sans-serif;font-size:11px;font-weight:500;letter-spacing:.11em;
  text-transform:uppercase;color:var(--acc)}
.lad p{font-size:clamp(1rem,1.5vw,1.3rem);font-weight:700;letter-spacing:-.025em;line-height:1.15;margin-top:3px}
.lad-arrow{display:grid;place-items:center;padding:0 clamp(8px,1.4vw,18px);height:clamp(140px,15vw,168px)}
.lad-arrow span{width:clamp(18px,2.4vw,34px);height:2px;background:var(--line-2);border-radius:2px;position:relative}
.lad-arrow span::after{content:"";position:absolute;right:-1px;top:-3px;width:8px;height:8px;
  border-top:2px solid var(--line-2);border-right:2px solid var(--line-2);transform:rotate(45deg)}
@media(max-width:820px){
  .ladder{grid-template-columns:1fr}
  .lad,.lad.l1,.lad.l2,.lad.l3{min-height:0}
  .lad-arrow{height:26px;padding:0}
  .lad-arrow span{width:2px;height:20px}
  .lad-arrow span::after{right:-3px;top:auto;bottom:-1px;transform:rotate(135deg)}
}

/* precio con la tipografía de la página */
.svc-price{font-family:"Inter Tight",sans-serif;font-size:clamp(.95rem,1.15vw,1.05rem);
  font-weight:600;letter-spacing:-.015em;color:var(--ink);text-transform:none}
.svc-item.open .svc-price{color:var(--acc)}

/* firma de Lucila */
.sign{display:flex;gap:14px;align-items:center;margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}
.sign-l{width:3px;align-self:stretch;min-height:46px;border-radius:3px;background:var(--lime);flex:none}
.sign b{display:block;font-size:1.05rem;font-weight:700;letter-spacing:-.025em;line-height:1.2}
.sign span{display:block;color:var(--dim-2);margin-top:3px}

/* tarjeta de equipo más compacta */

/* =========================================================
   MÓVIL
   ========================================================= */
@media(max-width:900px){
  .hero{flex-direction:column;justify-content:flex-start;min-height:auto;align-items:stretch}
  .hero .wrap{order:1}
  .hero-bg{order:2;display:block;position:static;width:100%;transform:none;opacity:1;
    -webkit-mask-image:none;mask-image:none;padding:0 24px clamp(30px,5vh,52px)}
  .hero-bg .hero-panel{max-width:520px;margin-inline:auto}
  .hero-blob{filter:blur(46px)}
  .hero-blob.b3{display:none}
  .hero::after{background:none}
}
@media(max-width:640px){
  .wrap{width:min(1180px,100% - 36px)}
  .hero-bg{padding-inline:18px}
  .hero-h{font-size:clamp(2.5rem,11.6vw,3.4rem);line-height:1}
  .hero-sub{font-size:1.08rem}
  .hero-cta{display:grid;grid-template-columns:1fr;gap:10px}
  .hero-cta .btn{justify-content:center;padding:16px 22px;font-size:15px}
  .sec{padding:clamp(54px,8vh,80px) 0}
  .sec--tight{padding:clamp(44px,6vh,64px) 0}
  /* nitidez: sin desenfoques de fondo en móvil */
  .pill{background:#fff}
  .hero-panel{background:#fff}
  .nav.stuck{backdrop-filter:none;background:rgba(247,247,241,.97)}
  .hp-feed{min-height:0}
  .hp-item{max-height:74px}
  .case-facts{gap:15px}
  .foot{padding-bottom:96px}
}

/* CTA fija en móvil */
.mcta{position:fixed;left:16px;right:16px;bottom:16px;z-index:64;justify-content:center;
  display:none;opacity:0;transform:translateY(14px);
  transition:opacity .45s var(--ease-out),transform .45s var(--ease-out)}
body.show-mcta .mcta{opacity:1;transform:none}
@media(max-width:900px){.mcta{display:inline-flex}}
html:not(.js) .mcta{opacity:1;transform:none}

/* precios visibles en móvil */
@media(max-width:860px){
  .svc-price{display:block;font-size:.92rem}
  .svc-btn{grid-template-columns:1fr auto}
  .svc-t{font-size:clamp(1.4rem,6.4vw,1.9rem)}
  .svc-meta{gap:10px}
}
/* caos: chips más compactos en pantallas angostas */

/* =========================================================
   PROBLEMA 01 — antes / después, lado a lado
   ========================================================= */

/* el mockup es más chico que antes: bajan los detalles */

.s4-1{background:#E6E6DF;color:#7a7d75;display:flex;flex-direction:column}
.s4-2{background:radial-gradient(70% 80% at 50% 45%,var(--mint),#fff);display:grid;place-items:center}
.s4-3{background:linear-gradient(150deg,#FFFFFF,#F4FBEA 60%,#FFFFFF)}
.s4-4{background:radial-gradient(70% 80% at 50% 20%,var(--lime-soft),#fff);display:grid;place-items:center}

.s4-nodo{position:relative;display:grid;place-items:center;gap:10px;text-align:center}
.s4-nodo b{font-size:clamp(2rem,6vw,4.4rem);font-weight:800;letter-spacing:-.06em;line-height:1}
.s4-nodo p{color:var(--acc)}
.s4-ring{position:absolute;width:clamp(180px,26vw,320px);aspect-ratio:1;border:1px dashed rgba(120,180,40,.45);
  border-radius:50%;animation:spin 26s linear infinite}
.s4-ring.r2{width:clamp(250px,38vw,460px);animation-duration:40s;animation-direction:reverse;
  border-color:rgba(120,180,40,.25)}

.s4-done{display:grid;justify-items:center;gap:8px;text-align:center;width:min(100%,560px)}
.s4-check{width:clamp(42px,5vw,58px);aspect-ratio:1;border-radius:50%;background:var(--lime);color:var(--ink);
  display:grid;place-items:center;font-size:clamp(20px,2.4vw,28px);font-weight:700;
  box-shadow:0 0 0 8px rgba(183,243,107,.28)}
.s4-h{font-size:clamp(1.3rem,2.8vw,2.1rem);font-weight:700;letter-spacing:-.035em;margin-top:6px}
.s4-sub{color:var(--dim);font-size:clamp(.9rem,1.1vw,1rem)}
.s4-auto{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;width:100%;margin-top:14px}
.s4-auto>div{border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.8);padding:10px}
.s4-auto .mono{color:var(--acc);font-size:9.5px}
.s4-auto b{display:block;font-size:12.5px;font-weight:600;letter-spacing:-.01em;margin-top:3px}
.s4-foot{color:var(--dim-2);margin-top:12px}
@media(max-width:640px){.s4-auto{grid-template-columns:1fr;gap:6px}.s4-auto b{font-size:12px}}

.s4-steps{display:flex;align-items:center;justify-content:center;gap:clamp(6px,1.2vw,14px);
  margin-top:clamp(14px,2vw,22px);flex-wrap:wrap;color:var(--dim-2)}
.s4-rail{width:min(100%,360px);height:2px;border-radius:2px;background:var(--line-2);
  margin:clamp(16px,2.2vw,24px) auto 0;overflow:hidden}
.s4-fill{display:block;height:100%;width:0;background:var(--acc);border-radius:2px}
.s4-steps span{padding:7px 13px;border-radius:100px;border:1px solid transparent;transition:.5s var(--ease-out);
  cursor:pointer;user-select:none}
.s4-steps span:hover{color:var(--ink)}
.s4-steps span.on{background:var(--lime);color:var(--ink);border-color:var(--lime)}
.s4-steps i{width:clamp(10px,2vw,22px);height:1px;background:var(--line-2);display:block}
@media(max-width:860px){
  .s4-card{aspect-ratio:4/3.8}
  .s4-steps span{padding:6px 10px;font-size:10px}
}
@media(max-width:560px){.s4-card{aspect-ratio:4/4.6}}

/* =========================================================
   PROBLEMA 02 — el teléfono
   ========================================================= */

/* =========================================================
   PUENTE hacia SISTEMA
   ========================================================= */
.bridge{position:relative;text-align:center;padding:clamp(60px,9vh,110px) 0 clamp(30px,5vh,56px);
  background:linear-gradient(180deg,var(--paper),var(--mint))}
.bridge-h{font-size:clamp(1.5rem,3.6vw,2.9rem);font-weight:700;letter-spacing:-.035em;line-height:1.1;
  max-width:min(100%,34ch);margin-inline:auto}
.bridge-arrow{display:block;width:2px;height:clamp(34px,5vh,56px);margin:clamp(22px,3vh,34px) auto 0;
  background:linear-gradient(var(--acc),rgba(76,122,27,0));position:relative}
.bridge-arrow::after{content:"";position:absolute;left:-4px;bottom:6px;width:10px;height:10px;
  border-bottom:2px solid var(--acc);border-right:2px solid var(--acc);transform:rotate(45deg);opacity:.5}
.sec#sistema{background:linear-gradient(180deg,var(--mint),var(--paper) 42%)}

/* =========================================================
   CARRUSEL DE CASOS
   ========================================================= */
.carousel{overflow:hidden;padding-block:clamp(6px,1.4vw,16px) clamp(20px,3vw,34px)}
.car-track{display:flex;transition:transform .8s var(--ease-out);will-change:transform;touch-action:pan-y}
.car-slide{flex:0 0 100%;min-width:100%;padding-block:clamp(20px,3vw,34px);
  transition:opacity .6s var(--ease),filter .6s var(--ease)}
.car-slide:not(.active){opacity:.35;filter:saturate(.6)}
.car-ui{display:flex;align-items:center;gap:14px}
.car-btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--line-2);background:#fff;
  display:grid;place-items:center;font-size:22px;line-height:1;color:var(--ink);
  transition:.4s var(--ease-out);box-shadow:var(--shadow)}
.car-btn:hover{border-color:var(--acc);color:var(--acc);transform:translateY(-2px)}
.car-btn[data-dir="1"]{background:var(--lime);border-color:var(--lime);color:var(--ink)}
.car-btn[data-dir="1"]:hover{background:#A9EA55;border-color:#A9EA55;color:var(--ink)}
.car-btn[disabled]{opacity:.35;pointer-events:none}
.car-dots{display:flex;gap:8px;align-items:center}
.car-dot{width:8px;height:8px;border-radius:100px;background:var(--line-2);transition:.45s var(--ease-out)}
.car-dot.on{width:26px;background:var(--acc)}
@media(max-width:640px){.car-btn{width:38px;height:38px;font-size:19px}}

/* la web se mueve sola dentro del mockup */
.shot.loop,.loop-img{animation:shotloop var(--dur,38s) var(--ease) infinite;animation-play-state:paused}
.carousel.seen .car-slide.active .shot.loop,
.carousel.seen .car-slide.active .loop-img{animation-play-state:running}
.loop-img{--dur:32s}
@keyframes shotloop{
  0%,9%    {transform:translate3d(0,0,0)}
  47%,57%  {transform:translate3d(0,var(--shift,-60%),0)}
  95%,100% {transform:translate3d(0,0,0)}
}
@media (prefers-reduced-motion:reduce){.shot.loop,.loop-img{animation:none}}
html:not(.js) .car-track{display:block}
html:not(.js) .car-slide{opacity:1;filter:none;min-width:0}
html:not(.js) .car-ui{display:none}

/* =========================================================
   SERVICIOS — punto · red · ecosistema
   ========================================================= */
.svc-intro{margin-bottom:clamp(40px,6.5vw,92px)}
.svc-intro .lead{margin-top:18px}
.lv{position:relative}
.lv-sticky{position:static}
.lv-grid{display:block}
.lv-copy{position:static}
/* los tres niveles, uno debajo del otro */
.lv-c{position:relative;display:grid;grid-template-columns:1fr;gap:clamp(18px,3vw,30px)}
.lv-c+.lv-c{margin-top:clamp(44px,6.5vw,96px);padding-top:clamp(44px,6.5vw,96px);border-top:1px solid var(--line)}
.lv-txt{display:grid;align-content:start;gap:9px;min-width:0}
@media(min-width:901px){
  .lv-c{grid-template-columns:1fr 1.02fr;column-gap:clamp(30px,4.6vw,68px);align-items:center}
}
.lv-eyebrow{display:flex;align-items:baseline;gap:12px;color:var(--acc);
  font-size:clamp(1.05rem,1.9vw,1.5rem);font-weight:800;letter-spacing:.09em;line-height:1}
.lv-eyebrow span{color:var(--dim-2);font-size:11px;font-weight:600;letter-spacing:.11em}
.lv-h{font-size:clamp(1.35rem,2.4vw,2rem);font-weight:700;letter-spacing:-.035em;line-height:1.08;max-width:20ch}
.lv-who{color:var(--dim);font-size:clamp(.92rem,1.05vw,1rem);line-height:1.55;max-width:44ch}
.lv-list{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:11px}
.lv-list li b{display:block;font-weight:600}
.lv-list li span{display:block;margin-top:3px;font-size:12.5px;line-height:1.5;color:var(--dim-2)}
.lv-inc{display:inline-flex;align-items:center;justify-self:start;align-self:start;width:max-content;max-width:100%;
  margin-top:13px;padding:5px 12px;border-radius:100px;
  background:var(--lime-soft);border:1px solid rgba(76,122,27,.22);color:var(--acc);
  font-size:9.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;white-space:nowrap}
.lv-list li{position:relative;padding-left:22px;font-size:clamp(.9rem,1.02vw,.98rem);color:var(--ink)}
.lv-list li::before{content:"";position:absolute;left:0;top:.55em;width:9px;height:9px;border-radius:50%;
  background:var(--lime);box-shadow:0 0 0 3px rgba(183,243,107,.3)}
.lv-foot{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:14px}
.lv-price{font-size:clamp(1.15rem,1.7vw,1.5rem);font-weight:700;letter-spacing:-.03em}
.lv-tech{font-size:11.5px;color:var(--dim-2);margin-top:6px;letter-spacing:.01em}
.lv-plan{margin-top:14px;padding-top:14px;border-top:1px dashed var(--line)}
.lv-plan-h{display:flex;align-items:center;flex-wrap:wrap;gap:9px;
  font-size:clamp(.95rem,1.15vw,1.06rem);font-weight:700;letter-spacing:-.02em;color:var(--ink)}
.lv-plan-h .mono{font-size:9.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  color:var(--acc);padding:4px 10px;border-radius:100px;
  background:var(--lime-soft);border:1px solid rgba(76,122,27,.22)}
.lv-plan-h i{font-style:normal;font-weight:400;color:var(--dim-2);font-size:12px;letter-spacing:0}
.lv-plan-d{margin-top:4px;font-size:13px;color:var(--dim);line-height:1.5}
.lv-note{margin:clamp(46px,6vw,76px) 0 0;padding-top:clamp(20px,2.4vw,28px);
  border-top:1px solid var(--line)}
.lv-note-g{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(22px,3.2vw,50px);
  margin-top:16px}
.lv-note p{font-size:13px;line-height:1.7;color:var(--dim-2)}
.lv-note b{font-weight:650;color:var(--ink)}
.lv-note-h{font-size:9.5px!important;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--acc)!important}
@media(max-width:900px){
  .lv-note-g{grid-template-columns:1fr;gap:11px}
}

/* visualización */
.lv-viz{position:relative;aspect-ratio:1/1.08;padding-bottom:54px;width:100%;display:grid;place-items:center}
.lv-svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.lv-svg line{stroke:rgba(120,180,40,.55);stroke-width:1.2;stroke-linecap:round;
  stroke-dasharray:var(--len,300);stroke-dashoffset:var(--len,300);
  transition:stroke-dashoffset .9s var(--ease-out),opacity .5s}
.lv-svg line.on{stroke-dashoffset:0}
.lv-svg line.dim{stroke:rgba(20,23,15,.16)}
.lv-core{position:relative;z-index:4;width:clamp(96px,13vw,140px);aspect-ratio:1;border-radius:50%;
  display:grid;place-items:center;text-align:center;padding:8px;
  background:radial-gradient(circle at 38% 32%,#fff,var(--lime-soft));
  border:1px solid rgba(120,180,40,.5);box-shadow:0 22px 54px -22px rgba(120,180,40,.8);
  transition:transform .7s var(--ease-out)}
.lv-core b{font-size:clamp(.78rem,1.05vw,.95rem);font-weight:700;letter-spacing:-.03em;line-height:1.14;text-wrap:balance}
.lv-node{position:absolute;z-index:3;padding:7px 12px;border-radius:100px;border:1px solid var(--line);
  background:#fff;box-shadow:var(--shadow);left:0;top:0;transform:scale(.72);
  font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--dim);
  opacity:0;white-space:nowrap;
  transition:transform .85s var(--ease-out),opacity .5s var(--ease-out),
             background .5s,border-color .5s,color .5s}
.lv-node.on{opacity:1}
.lv-node.g0{background:var(--lime);color:var(--ink);border-color:var(--lime)}
.lv-node.g1{border-color:rgba(23,60,53,.45);color:var(--deep)}
.lv-node.g2{background:var(--mint);border-color:rgba(120,180,40,.3);color:var(--ink)}
.lv-node.pv{background:var(--paper);border-color:var(--line);color:var(--dim-2);font-weight:600}
/* niveles 02 y 03: el núcleo se achica para dejar lugar al anillo interior */
.lv-vm.is2 .lv-core,.lv-vm.is3 .lv-core{width:clamp(78px,9.4vw,102px)}
.lv-vm.is2 .lv-core b,.lv-vm.is3 .lv-core b{font-size:clamp(.7rem,.88vw,.82rem)}
@media(max-width:980px){
  .lv-viz .lv-core{width:clamp(64px,10vw,92px)}
  .lv-viz .lv-core b{font-size:clamp(.58rem,1.4vw,.76rem)}
  .lv-vm.is2 .lv-node,.lv-vm.is3 .lv-node{font-size:8.5px;padding:4px 8px;letter-spacing:.03em}
  .lv-vm.is2 .lv-node.pv,.lv-vm.is3 .lv-node.pv{font-size:7.5px;padding:3px 6px}
}
.lv-node.pv{padding:4px 8px;font-size:8.5px;letter-spacing:.05em}
@media(max-width:640px){.lv-node.pv{font-size:7.5px;padding:3px 6px}}
.lv-node.g3{border-color:rgba(120,180,40,.55);color:var(--acc)}
.lv-node.sm{padding:5px 9px;font-size:9.5px}
.lv-legend{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);display:flex;gap:clamp(8px,1.4vw,16px);
  flex-wrap:nowrap;white-space:nowrap;justify-content:center;font-size:10px;font-weight:600;letter-spacing:.08em;
  text-transform:uppercase;color:var(--dim-2);opacity:0;transition:opacity .6s var(--ease)}
.lv-legend.on{opacity:1}
.lv-legend span{display:inline-flex;align-items:center;gap:5px}
.lv-legend span::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--lime)}
.lv-legend .g1::before{background:var(--deep)}
.lv-legend .g2::before{background:#B9DFC7}
.lv-legend .pv::before{background:#fff;border:1px solid var(--line-2)}
.lv-legend .g3::before{background:#fff;border:1px solid var(--acc)}

.lv-vm{display:block;min-width:0}
.lv-vm .lv-viz{max-width:420px;margin-inline:auto;aspect-ratio:1/.84;padding-bottom:30px}
.lv-vm.is3 .lv-viz{aspect-ratio:1/1.06;padding-bottom:52px}
.lv-vm.is2 .lv-viz{aspect-ratio:1/1.06;padding-bottom:56px}
@media(max-width:1240px){.lv-vm.is3 .lv-node{font-size:9.5px;padding:5px 9px;letter-spacing:.03em}
  .lv-vm.is3 .lv-node.sm{font-size:8.5px;padding:4px 7px}}
@media(max-width:520px){.lv-vm.is3 .lv-viz{aspect-ratio:1/1.16}
  .lv-vm.is3 .lv-node{font-size:8px;padding:3.5px 7px;letter-spacing:.02em}
  .lv-vm.is3 .lv-node.sm{font-size:7.5px;padding:3px 6px}}
@media(min-width:901px){
  .lv-vm .lv-viz{max-width:none;aspect-ratio:1/.92}
  .lv-vm.is2 .lv-viz,.lv-vm.is3 .lv-viz{aspect-ratio:1/1}
}
@media(max-width:900px){.lv-vm.is2 .lv-node{font-size:8.5px;padding:4px 8px;letter-spacing:.03em}}
.lv-vm-t{text-align:center;color:var(--dim-2);font-size:10.5px;letter-spacing:.12em;margin-top:-18px}
.lv-vm.is2 .lv-vm-t,.lv-vm.is3 .lv-vm-t{margin-top:4px}
.lv-vm.is3 .lv-vm-t{margin-top:10px}
@media(max-width:900px){
  .lv-c+.lv-c{margin-top:34px;padding-top:34px}
  .lv-vm{margin:6px 0 2px}
  .lv-h{font-size:clamp(1.2rem,4.6vw,1.6rem)}
  .lv-list{grid-template-columns:1fr}
}
@media(max-width:640px){
  .lv-node{font-size:9.5px;padding:5px 9px;letter-spacing:.04em}
  .lv-node.sm{font-size:8.5px;padding:3px 7px}
  .lv-legend{font-size:8.5px;gap:7px}
  .lv-viz{padding-bottom:44px;aspect-ratio:1/1.02}
}

/* ---------- Problema 01 · micro-mensajes de la web genérica ---------- */

.prob-lead{margin-top:18px;max-width:54ch}

/* ---------- carrusel: que se note que hay más ---------- */
.car-ui{flex-wrap:wrap;justify-content:flex-end}
.car-count{font-size:12px;font-weight:600;letter-spacing:.06em;color:var(--dim-2);
  font-variant-numeric:tabular-nums;margin-right:4px}
.car-count b{color:var(--ink);font-size:15px}
.car-hint{flex-basis:100%;text-align:right;font-size:10.5px;font-weight:600;letter-spacing:.08em;
  text-transform:uppercase;color:var(--dim-2);margin-top:8px}
.car-slide:not(.active){opacity:.55;filter:none;transform:scale(.965)}
.car-slide{transform-origin:center left;
  transition:opacity .6s var(--ease),transform .6s var(--ease-out)}
.carousel{position:relative}
.carousel::after{content:"";position:absolute;top:0;bottom:0;right:0;width:clamp(40px,7vw,110px);
  pointer-events:none;z-index:5;
  background:linear-gradient(90deg,rgba(247,247,241,0),var(--paper) 88%)}
/* controles flotantes del carrusel */
.car-side{position:absolute;top:50%;transform:translateY(-50%);z-index:7;
  display:inline-flex;align-items:center;gap:9px;height:52px;padding:0 10px;border-radius:100px;
  background:var(--deep);color:#fff;border:1px solid rgba(255,255,255,.16);
  font-size:22px;line-height:1;cursor:pointer;
  box-shadow:0 20px 40px -16px rgba(20,23,15,.85),0 0 0 6px rgba(247,247,241,.75);
  transition:background .35s var(--ease-out),transform .35s var(--ease-out)}
.car-side b{font-family:"Inter Tight",sans-serif;font-size:11.5px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase}
.car-side:hover{background:#0F2A25;transform:translateY(-50%) scale(1.04)}
.car-side .ico{width:32px;height:32px;border-radius:50%;background:var(--lime);color:var(--ink);
  display:grid;place-items:center;font-size:20px;flex:0 0 auto}
.car-next{right:clamp(6px,1.4vw,22px);padding-left:18px;animation:nudge 3s var(--ease) infinite}
.car-prev{left:clamp(6px,1.4vw,22px);width:52px;justify-content:center;padding:0}
.car-prev .ico{background:#fff}
@keyframes nudge{0%,100%{transform:translate(0,-50%)}50%{transform:translate(6px,-50%)}}
@media(max-width:900px){
  .car-side{height:46px}
  .car-next b{display:none}
  .car-next{padding:0 10px}
  .car-prev{width:46px}
  .car-side .ico{width:30px;height:30px;font-size:18px}
}
@media(max-width:640px){.car-hint{text-align:left}.car-ui{justify-content:flex-start}}
html:not(.js) .car-side,html:not(.js) .carousel::after{display:none}

/* el mockup no debe pegarse al borde del carrusel */
@media(min-width:961px){.car-slide .device-stack{margin-right:clamp(18px,5.2vw,100px)}}

/* ---------- pie legal ---------- */
.foot-bottom{align-items:center}
.foot-legal{display:flex;flex-wrap:wrap;gap:6px 20px;align-items:center}
.foot-legal a{color:var(--dim-2);transition:color .3s;text-transform:none;letter-spacing:.02em;font-size:12px}
.foot-legal a:hover{color:var(--acc)}

/* ---------- páginas legales ---------- */
.legal{padding-block:clamp(96px,12vh,150px) clamp(56px,8vh,90px);background:var(--paper)}
.legal .wrap{max-width:min(100%,760px)}
.legal h1{font-size:clamp(1.9rem,4vw,3rem);letter-spacing:-.04em;line-height:1.05;margin-bottom:14px}
.legal .updated{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim-2);margin-bottom:clamp(30px,4vw,48px)}
.legal h2{font-size:clamp(1.1rem,1.8vw,1.35rem);letter-spacing:-.025em;margin:clamp(30px,4vw,44px) 0 12px;
  padding-top:clamp(22px,3vw,32px);border-top:1px solid var(--line)}
.legal h2:first-of-type{border-top:0;padding-top:0}
.legal h3{font-size:15.5px;font-weight:700;letter-spacing:-.015em;margin:22px 0 8px}
.legal p,.legal li{font-size:15px;line-height:1.68;color:var(--dim)}
.legal p+p{margin-top:12px}
.legal strong{color:var(--ink);font-weight:600}
.legal ul,.legal ol{margin:12px 0 0;padding-left:20px;display:grid;gap:8px}
.legal a{color:var(--acc);border-bottom:1px solid rgba(76,122,27,.35)}
.legal .box{margin-top:20px;padding:clamp(18px,2.4vw,26px);border:1px solid var(--line);border-radius:16px;
  background:var(--paper-2);box-shadow:var(--shadow)}
.legal .box p{font-size:14px}
.legal .back{display:inline-flex;align-items:center;gap:9px;margin-bottom:clamp(26px,3.4vw,40px);
  font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;color:var(--dim-2)}
.legal .back:hover{color:var(--acc)}
.legal .back::before{content:"\2190"}
.legal-dl{display:grid;gap:4px;margin-top:14px}
.legal-dl div{display:flex;gap:10px;flex-wrap:wrap;font-size:14.5px}
.legal-dl dt{color:var(--dim-2);min-width:120px}
.legal-dl dd{margin:0;color:var(--ink)}

.qz-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---------- encabezado: piezas sueltas + menú a pantalla completa ---------- */
.nav{background:none;border-bottom:0;backdrop-filter:none;height:auto;padding-top:clamp(12px,1.5vw,16px)}
.nav.stuck{background:none;border-bottom-color:transparent;backdrop-filter:none}
.nav .wrap{justify-content:space-between;gap:12px;align-items:center}
.nav-right{display:flex;align-items:center;gap:10px}
.nav-links{display:none}

.pieza{border:1px solid var(--line);background:rgba(255,255,255,.88);backdrop-filter:blur(10px) saturate(140%);
  border-radius:100px;box-shadow:0 12px 30px -22px rgba(20,23,15,.55);
  transition:border-color .35s var(--ease-out),background .35s var(--ease-out),
             box-shadow .35s var(--ease-out),transform .35s var(--ease-out)}
.nav .brand{padding:11px 20px}
.nav .brand:hover{transform:translateY(-1px)}
.nav.stuck .pieza{background:rgba(255,255,255,.95)}

.navx{display:inline-flex;align-items:center;gap:11px;padding:12px 20px;cursor:pointer;
  font-family:"Inter Tight",-apple-system,sans-serif;font-size:11.5px;font-weight:700;
  letter-spacing:.13em;text-transform:uppercase;color:var(--ink)}
.navx:hover{border-color:var(--line-2);transform:translateY(-1px)}
.navx:focus-visible{outline:none;box-shadow:0 0 0 4px rgba(183,243,107,.55)}
.navx-i{display:grid;gap:4px;width:16px}
.navx-i b{display:block;width:16px;height:1.7px;background:var(--ink);border-radius:2px;
  transition:transform .4s var(--ease-out)}
.navx[aria-expanded="true"] .navx-i b:first-child{transform:translateY(2.85px) rotate(45deg)}
.navx[aria-expanded="true"] .navx-i b:last-child{transform:translateY(-2.85px) rotate(-45deg)}
.nav .btn--sm{box-shadow:0 14px 32px -22px rgba(20,23,15,.75)}

.ovl{position:fixed;inset:0;z-index:64;background:var(--paper);display:grid;align-content:center;
  opacity:0;transition:opacity .42s var(--ease-out)}
.ovl::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(46% 52% at 88% 8%,rgba(183,243,107,.4),transparent 66%),
             radial-gradient(40% 44% at 4% 96%,rgba(253,246,227,.9),transparent 70%)}
.ovl.on{opacity:1}
.ovl-in{position:relative;z-index:2}
.ovl-nav{display:grid;justify-items:start}
.ovl-nav a{display:flex;align-items:baseline;gap:clamp(14px,1.8vw,22px);
  font-size:clamp(2.1rem,6vw,4.2rem);font-weight:700;letter-spacing:-.045em;line-height:1.16;color:var(--ink);
  opacity:0;transform:translateY(18px);
  transition:opacity .5s var(--ease-out),transform .5s var(--ease-out),color .35s var(--ease-out)}
.ovl.on .ovl-nav a{opacity:1;transform:none}
.ovl.on .ovl-nav a:nth-child(1){transition-delay:.06s}
.ovl.on .ovl-nav a:nth-child(2){transition-delay:.12s}
.ovl.on .ovl-nav a:nth-child(3){transition-delay:.18s}
.ovl.on .ovl-nav a:nth-child(4){transition-delay:.24s}
.ovl-nav a em{font-style:normal;font-family:"Inter Tight",sans-serif;font-size:clamp(10px,.9vw,12px);
  font-weight:600;letter-spacing:.14em;color:var(--dim-2);transition:color .35s}
.ovl-nav a:hover,.ovl-nav a:focus-visible{color:var(--acc);outline:none}
.ovl-nav a:hover em{color:var(--acc)}
.ovl-foot{display:flex;align-items:center;gap:clamp(18px,2.6vw,34px);flex-wrap:wrap;
  margin-top:clamp(34px,5vh,58px);opacity:0;transform:translateY(14px);
  transition:opacity .5s var(--ease-out) .3s,transform .5s var(--ease-out) .3s}
.ovl.on .ovl-foot{opacity:1;transform:none}
.ovl-mail{color:var(--dim-2);transition:color .3s}
.ovl-mail:hover{color:var(--acc)}
.ovl[hidden]{display:none}
body.menu-abierto{overflow:hidden}
body.menu-abierto .mcta{opacity:0!important;pointer-events:none;transform:translateY(20px)}
body.menu-abierto .progress{opacity:0}
body.menu-abierto .nav .btn--sm{opacity:0;pointer-events:none;transition:opacity .3s var(--ease-out)}
@media (prefers-reduced-motion:reduce){.ovl,.ovl-nav a,.ovl-foot{transition-duration:.01ms!important}}
@media(max-width:900px){.nav .btn--sm{display:none}}
@media(max-width:640px){
  .nav .brand{padding:9px 15px}
  .navx{padding:10px 15px;font-size:10.5px;gap:9px}
  .ovl-nav a{font-size:clamp(1.9rem,10vw,2.7rem)}
}

.legal mark{background:var(--lime-soft);border:1px dashed rgba(76,122,27,.55);border-radius:6px;
  padding:2px 9px;color:var(--acc);font-weight:600;font-size:.9em}
.legal-dl{display:grid;gap:6px;margin-top:16px}
.legal-dl div{display:flex;gap:12px;flex-wrap:wrap;font-size:14.5px;align-items:baseline}
.legal-dl dt{color:var(--dim-2);min-width:150px}
.legal-dl dd{margin:0;color:var(--ink)}

/* =========================================================
   PREGUNTAS FRECUENTES
   ========================================================= */
.faq{display:grid;gap:0;margin-top:clamp(24px,3vw,36px);max-width:min(100%,860px)}
.faq details{border-top:1px solid var(--line)}
.faq details:last-child{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:clamp(18px,2.2vw,24px) 44px clamp(18px,2.2vw,24px) 0;
  position:relative;font-size:clamp(1rem,1.5vw,1.18rem);font-weight:600;letter-spacing:-.02em;
  transition:color .35s var(--ease-out)}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--acc)}
.faq summary::after{content:"";position:absolute;right:8px;top:50%;width:11px;height:11px;
  border-right:2px solid var(--acc);border-bottom:2px solid var(--acc);
  transform:translateY(-70%) rotate(45deg);transition:transform .35s var(--ease-out)}
.faq details[open] summary::after{transform:translateY(-20%) rotate(-135deg)}
.faq .a{padding:0 44px clamp(20px,2.4vw,26px) 0;color:var(--dim);font-size:15px;line-height:1.6;
  max-width:62ch}

/* ================= DEMO PROBLEMA 01 ================= */
/* =========================================================
   NODO — DEMO "PROBLEMA 01"  ·  Antes / Con NODO
   Todo va con prefijo .nd- y anidado bajo .nd-demo
   para poder pegarlo dentro de la web sin colisiones.
   ========================================================= */

.nd-demo{
  /* si se integra en la web de NODO, estas variables ya existen;
     se redeclaran acá para que la demo funcione sola. */
  --nd-paper:#F7F7F1;
  --nd-surface:#FFFFFF;
  --nd-band:#EFEFE7;
  --nd-mint:#E9F6DE;
  --nd-cream:#FDF6E3;
  --nd-ink:#14170F;
  --nd-lime:#B7F36B;
  --nd-acc:#4C7A1B;
  --nd-deep:#173C35;
  --nd-line:rgba(20,23,15,.10);
  --nd-line-2:rgba(20,23,15,.18);
  --nd-dim:rgba(20,23,15,.60);
  --nd-dim-2:rgba(20,23,15,.46);
  --nd-shadow:0 18px 40px -24px rgba(20,23,15,.28);
  --nd-shadow-lg:0 40px 80px -40px rgba(20,23,15,.42);
  --nd-ease:cubic-bezier(.16,1,.3,1);

  font-family:"Inter Tight",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--nd-ink);
  -webkit-font-smoothing:antialiased;
}
.nd-demo *,.nd-demo *::before,.nd-demo *::after{box-sizing:border-box}.nd-demo p, .nd-demo h1, .nd-demo h2, .nd-demo h3, .nd-demo h4, .nd-demo ul, .nd-demo ol, .nd-demo figure, .nd-demo .nd-h1{margin:0;padding:0}
.nd-demo ul,.nd-demo ol{list-style:none}
.nd-demo button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.nd-demo a{color:inherit;text-decoration:none}
.nd-demo img{max-width:100%;display:block}

.nd-mono{font-size:11px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;font-variant-numeric:tabular-nums}

/* ---------- barra de control ---------- */
.nd-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:16px}

.nd-switch{position:relative;display:inline-flex;align-items:center;padding:5px;gap:4px;
  background:var(--nd-surface);border:1px solid var(--nd-line-2);border-radius:100px;box-shadow:var(--nd-shadow)}
.nd-switch .nd-thumb{position:absolute;top:5px;left:5px;height:calc(100% - 10px);border-radius:100px;
  background:var(--nd-ink);transition:transform .62s var(--nd-ease),width .62s var(--nd-ease),background .4s;
  z-index:0;pointer-events:none}
.nd-demo[data-v="nodo"] .nd-switch .nd-thumb{background:var(--nd-deep)}
.nd-tab{position:relative;z-index:1;display:inline-flex;align-items:center;gap:9px;
  padding:11px 22px;border-radius:100px;font-size:13.5px;font-weight:600;letter-spacing:-.01em;
  color:var(--nd-dim);transition:color .45s var(--nd-ease)}
.nd-tab[aria-selected="true"]{color:#F7F7F1}
.nd-tab i{width:7px;height:7px;border-radius:50%;background:currentColor;opacity:.35;transition:opacity .4s,background .4s;flex:none}
.nd-tab[aria-selected="true"] i{opacity:1}
.nd-tab[data-t="nodo"][aria-selected="true"] i{background:var(--nd-lime)}

/* ---------- foco: solo se ve en color la sección que estás mirando ---------- */
.nd-w section,.nd-w .nd-strip,.nd-w .nd-foot{
  transition:opacity .55s var(--nd-ease),filter .55s var(--nd-ease)}
.nd-focus .nd-w section:not(.is-focus),
.nd-focus .nd-w .nd-strip,
.nd-focus .nd-w .nd-foot{opacity:.26;filter:grayscale(1)}
@media (prefers-reduced-motion:reduce){
  .nd-focus .nd-w section:not(.is-focus),
  .nd-focus .nd-w .nd-strip,
  .nd-focus .nd-w .nd-foot{opacity:.4}
}

/* ---------- marcas de anotación sobre la maqueta ---------- */
.nd-mark{position:absolute;z-index:7;display:inline-flex;align-items:center;gap:7px;padding:6px 13px;border-radius:100px;
  background:var(--nd-lime);color:var(--nd-ink);font-size:9.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;
  white-space:nowrap;box-shadow:0 14px 28px -18px rgba(76,122,27,.9);
  opacity:0;transform:translateY(7px);transition:opacity .7s var(--nd-ease),transform .7s var(--nd-ease)}
.nd-mark i{font-style:normal;font-weight:700;letter-spacing:0;line-height:1;color:var(--nd-acc);flex:none}
.nd-site.nd-on .nd-mark{opacity:1;transform:none}
.nd-mark::before,.nd-mark::after{content:"";position:absolute;background:var(--nd-acc);opacity:.9}
.nd-mark::after{width:5px;height:5px;border-radius:50%}
/* línea hacia la izquierda */
.nd-mark--l::before{top:50%;right:100%;width:var(--l,42px);height:1px;margin-right:7px}
.nd-mark--l::after{top:50%;margin-top:-2px;right:calc(100% + var(--l,42px) + 6px)}
/* línea hacia arriba */
.nd-mark--u::before{bottom:100%;left:17px;width:1px;height:var(--l,26px);margin-bottom:6px}
.nd-mark--u::after{bottom:calc(100% + var(--l,26px) + 7px);left:15px}
/* sin línea */
.nd-mark--n::before,.nd-mark--n::after{display:none}
@media (prefers-reduced-motion:reduce){.nd-mark{opacity:1;transform:none}}

/* ---------- marco tipo navegador ---------- */
.nd-frame{position:relative;border-radius:20px;overflow:hidden;background:var(--nd-surface);
  border:1px solid var(--nd-line);box-shadow:var(--nd-shadow-lg);
  transition:box-shadow .6s var(--nd-ease),border-color .6s var(--nd-ease)}
.nd-demo[data-v="nodo"] .nd-frame{border-color:rgba(120,180,40,.35)}

.nd-chrome{display:flex;align-items:center;gap:14px;padding:11px 16px;background:var(--nd-band);
  border-bottom:1px solid var(--nd-line);position:relative;z-index:3}
.nd-dots{display:flex;gap:6px;flex:none}
.nd-dots i{width:9px;height:9px;border-radius:50%;background:rgba(20,23,15,.16);display:block}
.nd-url{flex:1;min-width:0;display:flex;align-items:center;gap:8px;justify-content:center;
  background:var(--nd-surface);border:1px solid var(--nd-line);border-radius:100px;padding:6px 14px;
  font-size:11.5px;color:var(--nd-dim-2);max-width:340px;margin-inline:auto}
.nd-url svg{flex:none;opacity:.5}
.nd-badge{flex:none;padding:5px 12px;border-radius:100px;border:1px solid var(--nd-line-2);
  background:var(--nd-surface);color:var(--nd-dim);transition:all .5s var(--nd-ease)}
.nd-demo[data-v="nodo"] .nd-badge{background:var(--nd-lime);border-color:var(--nd-lime);color:var(--nd-ink)}

/* pila de las dos webs */
.nd-stage{position:relative;display:grid;grid-template-columns:minmax(0,1fr);aspect-ratio:4/2.72;height:auto}
.nd-stage::after{content:"";position:absolute;left:0;right:0;bottom:0;height:56px;z-index:3;pointer-events:none;
  background:linear-gradient(to top,rgba(255,255,255,.92),rgba(255,255,255,0))}
.nd-site{grid-area:1/1;min-width:0;overflow:hidden auto;overscroll-behavior:contain;position:relative;
  background:var(--nd-surface);
  opacity:0;transform:scale(.988) translateY(10px);pointer-events:none;
  transition:opacity .5s var(--nd-ease),transform .62s var(--nd-ease),filter .5s var(--nd-ease);
  filter:blur(3px);scrollbar-width:thin;scrollbar-color:rgba(20,23,15,.2) transparent}
.nd-site.nd-on{opacity:1;transform:none;pointer-events:auto;filter:none;z-index:2}
.nd-site::-webkit-scrollbar{width:9px}
.nd-site::-webkit-scrollbar-thumb{background:rgba(20,23,15,.16);border-radius:100px;border:3px solid transparent;background-clip:content-box}

/* pista de scroll */
.nd-hint{display:flex;align-items:center;gap:9px;margin-top:15px;color:var(--nd-dim-2);font-size:11px}
.nd-hint i{width:16px;height:16px;border:1px solid var(--nd-line-2);border-radius:100px;position:relative;flex:none}
.nd-hint i::after{content:"";position:absolute;left:50%;top:3px;width:1px;height:4px;background:currentColor;
  transform:translateX(-50%);animation:nd-scroll 1.9s var(--nd-ease) infinite}
@keyframes nd-kenburns{
  from{transform:scale(1) translate3d(0,0,0)}
  to{transform:scale(1.09) translate3d(-1.2%,-1.4%,0)}
}
@keyframes nd-scroll{0%,100%{opacity:0;transform:translate(-50%,0)}35%{opacity:1}70%{opacity:0;transform:translate(-50%,5px)}}

/* =========================================================
   LA WEB FICTICIA  (compartido por las dos versiones)
   ========================================================= */
/* la web de ejemplo tiene su propia tipografía: NO es la de NODO */
.nd-w{--px:clamp(20px,4.2%,54px);font-size:13px;line-height:1.6;color:var(--nd-ink)}
.nd-old{font-family:"Poppins",-apple-system,"Segoe UI",sans-serif}/* genérica, de plantilla */
.nd-old h1, .nd-old h2, .nd-old h3, de plantilla */
.nd-old .nd-h1{letter-spacing:-.018em}
.nd-w section{position:relative;padding:clamp(26px,3.6vw,44px) var(--px)}.nd-w h1, .nd-w .nd-h1{font-size:clamp(21px,2.6vw,33px);line-height:1.06;letter-spacing:-.035em;font-weight:700}
.nd-w h2{font-size:clamp(15px,1.5vw,19px);line-height:1.15;letter-spacing:-.028em;font-weight:700}
.nd-w h3{font-size:13.5px;letter-spacing:-.02em;font-weight:700;line-height:1.25}
.nd-w p{font-size:12.5px;line-height:1.65;color:var(--nd-dim)}
.nd-w .nd-k{font-size:9.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase}

/* nav de la web ficticia */
.nd-w .nd-nav{position:sticky;top:0;z-index:12;display:flex;align-items:center;gap:18px;
  padding:13px var(--px);background:var(--nd-surface);
  border-bottom:1px solid var(--nd-line)}
.nd-w .nd-logo{display:flex;flex-direction:column;line-height:1.15;flex:none;margin-right:auto}
.nd-w .nd-logo b{font-size:13.5px;font-weight:700;letter-spacing:-.03em}
.nd-w .nd-logo span{font-size:8.5px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--nd-dim-2)}
.nd-old .nd-logo b{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:400;font-size:16px;letter-spacing:0}
.nd-old .nd-logo span{letter-spacing:.18em;font-size:8px}
.nd-new .nd-logo{flex-direction:row;align-items:center;gap:10px}
.nd-new .nd-logo .nd-logo-txt{display:flex;flex-direction:column;line-height:1.15;
  text-transform:none;letter-spacing:normal;font-size:inherit;color:var(--nd-ink)}
.nd-w .nd-links{display:flex;gap:16px;font-size:11.5px;color:var(--nd-dim)}
.nd-w .nd-burger{display:none;flex-direction:column;gap:3px;flex:none;margin-left:auto;margin-right:2px}
.nd-w .nd-burger i{display:block;width:16px;height:1.5px;background:var(--nd-ink);opacity:.7;border-radius:2px}
.nd-w .nd-links a{padding:4px 0;border-bottom:1px solid transparent;transition:color .3s,border-color .3s;cursor:pointer}
.nd-w .nd-links a:hover{color:var(--nd-ink);border-bottom-color:var(--nd-line-2)}
.nd-w .nd-cta{display:inline-flex;align-items:center;gap:8px;padding:8px 15px;border-radius:100px;
  font-size:11.5px;font-weight:600;flex:none;white-space:nowrap;transition:transform .4s var(--nd-ease),box-shadow .4s var(--nd-ease)}
.nd-w .nd-cta:hover{transform:translateY(-1px)}
.nd-w .nd-cta--ghost{border:1px solid var(--nd-line-2);color:var(--nd-ink)}
.nd-w .nd-cta--flat{background:#E4E4DC;color:var(--nd-ink)}
.nd-w .nd-cta--lime{background:var(--nd-lime);color:var(--nd-ink);box-shadow:0 10px 22px -14px rgba(120,180,40,.95)}
.nd-w .nd-cta--deep{background:var(--nd-deep);color:#F7F7F1;box-shadow:0 10px 22px -14px rgba(23,60,53,.9)}
.nd-w .nd-cta--lime i,.nd-w .nd-cta--deep i{width:6px;height:6px;border-radius:50%;flex:none}
.nd-w .nd-cta--lime i{background:var(--nd-deep)}
.nd-w .nd-cta--deep i{background:var(--nd-lime)}

/* retratos / imágenes ficticias */
.nd-ph{position:relative;border-radius:12px;overflow:hidden;background:linear-gradient(150deg,#E4E4DC,#D6D6CC)}
.nd-ph svg{position:absolute;inset:0;width:100%;height:100%}
.nd-ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 30%);
  opacity:0;transition:opacity .7s var(--nd-ease)}
.nd-ph img.nd-ready{opacity:1}
.nd-ph--warm{background:linear-gradient(150deg,var(--nd-cream),var(--nd-mint))}
/* la versión "antes" usa la misma foto, sin recorte pensado y con menos contraste */
.nd-old .nd-ph img{filter:saturate(.88) contrast(.96)}
.nd-foot{padding:20px var(--px);border-top:1px solid var(--nd-line);
  display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:var(--nd-dim-2);font-size:10.5px}

/* =========================================================
   VERSIÓN "ANTES"
   ========================================================= */
.nd-old .nd-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:center;
  padding-top:clamp(28px,4vw,46px);padding-bottom:clamp(28px,4vw,46px)}
.nd-old .nd-hero p{margin-top:12px;max-width:46ch}
.nd-old .nd-btns{position:relative;display:flex;gap:9px;margin-top:20px;flex-wrap:wrap}
.nd-old .nd-hero .nd-ph{aspect-ratio:4/3.1}
.nd-old .nd-strip{display:flex;gap:26px;flex-wrap:wrap;justify-content:center;
  padding:13px var(--px);background:var(--nd-band);color:var(--nd-dim-2)}
.nd-old .nd-txt{max-width:none}
.nd-old .nd-txt p+p{margin-top:11px}
.nd-old .nd-two{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.nd-old h2{margin-bottom:12px}
.nd-old .nd-grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}
.nd-old .nd-card{border:1px solid var(--nd-line);border-radius:10px;padding:15px;background:var(--nd-surface)}
.nd-old .nd-card h3{margin-bottom:6px}
.nd-old .nd-card p{font-size:11.5px}
.nd-old .nd-card .nd-more{margin-top:10px;display:inline-block;font-size:11px;color:var(--nd-dim-2);border-bottom:1px solid var(--nd-line-2);padding-bottom:2px}
.nd-old .nd-band{background:var(--nd-band)}
.nd-old .nd-tst{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}
.nd-old .nd-tst p{font-size:11.5px;font-style:italic}
.nd-old .nd-tst span{display:block;margin-top:8px;color:var(--nd-dim-2);font-size:10.5px}
.nd-old .nd-post{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}
.nd-old .nd-post .nd-ph{aspect-ratio:16/9;margin-bottom:9px}
.nd-old .nd-post h3{font-size:12.5px}
.nd-old .nd-post span{font-size:10.5px;color:var(--nd-dim-2)}
.nd-old .nd-ig{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:16px}
.nd-old .nd-ig i{position:relative;display:block;aspect-ratio:1;border-radius:8px;overflow:hidden;
  background:linear-gradient(150deg,#E7E7DF,#DADAD1)}
.nd-old .nd-ig i img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s}
.nd-old .nd-ig i img.nd-ready{opacity:1}
.nd-old .nd-ct{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:start}
.nd-old .nd-ct ul{display:grid;gap:7px;margin-top:12px;font-size:12px;color:var(--nd-dim)}
.nd-old .nd-fields{display:grid;gap:8px;margin-top:12px}
.nd-old .nd-fields i{display:block;height:30px;border:1px solid var(--nd-line);border-radius:7px;background:var(--nd-surface)}
.nd-old .nd-fields i:last-of-type{height:56px}

/* =========================================================
   VERSIÓN "CON NODO"
   Mismo sistema que la web de Nadia (therapy-with-nadia):
   hero inmersivo con foto y velo, cabeceras con eyebrow,
   listas numeradas 01-06, pasos, ficha flotante y FAQ.
   Paleta y tipografía propias de Laura — NO las de NODO.
   ========================================================= */
.nd-new{
  --l-ink:#241610;        /* fondo oscuro */
  --l-ink-2:#33201A;
  --l-acc:#A8543A;        /* terracota (el "violeta" de Nadia) */
  --l-acc-lt:#D89C82;
  --l-mist:#F7EDE7;
  --l-cream:#FDFAF7;
  --l-text:#3B2A22;
  --l-muted:#7C6558;
  --l-line:rgba(168,84,58,.16);
  --l-r:18px;
  background:var(--l-cream);color:var(--l-text);
  font-family:"Inter",-apple-system,"Segoe UI",sans-serif;line-height:1.62;
}.nd-new h1, .nd-new h2, .nd-new h3, .nd-new .nd-dm, .nd-new .nd-h1{
  font-family:"DM Sans",-apple-system,sans-serif;font-weight:500;line-height:1.12;letter-spacing:-.035em}
.nd-new p{color:var(--l-muted)}
.nd-new .nd-eyebrow2{display:block;font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--l-acc);font-weight:600;margin-bottom:10px}
.nd-new .nd-lead{font-size:12.5px;color:var(--l-muted);max-width:56ch}
.nd-new .nd-sec-head{margin-bottom:20px}
.nd-new .nd-sec-head h2{font-size:clamp(17px,2vw,25px)}
.nd-new .nd-sec-head .nd-lead{margin-top:11px}
.nd-new .nd-center{text-align:center}
.nd-new .nd-center .nd-lead{margin-inline:auto}

/* --- nav: fijo arriba; transparente sobre el hero y sólido al bajar --- */
.nd-new{--nav-h:56px}
.nd-new .nd-nav{position:sticky;top:0;z-index:12;background:transparent;border-bottom:1px solid transparent;
  transition:background .45s var(--nd-ease),border-color .45s var(--nd-ease),box-shadow .45s var(--nd-ease)}
.nd-new .nd-nav.nd-solid{background:rgba(253,250,247,.94);backdrop-filter:blur(12px);
  border-bottom-color:var(--l-line);box-shadow:0 10px 30px -26px rgba(36,22,16,.7)}
.nd-new .nd-nav.nd-solid .nd-links{color:var(--l-muted)}
.nd-new .nd-nav.nd-solid .nd-links a:hover{color:var(--l-ink)}
.nd-new .nd-nav.nd-solid .nd-logo-txt{color:var(--l-ink)}
.nd-new .nd-nav.nd-solid .nd-logo-txt span{color:var(--l-muted)}
.nd-new .nd-nav.nd-solid .nd-logo-mark{background:var(--l-mist);box-shadow:none}
.nd-new .nd-nav.nd-solid .nd-burger i{background:var(--l-ink);opacity:.75}
.nd-new .nd-nav.nd-solid .nd-cta--hero{background:var(--l-acc);color:#FCF6F1;
  box-shadow:0 10px 24px -14px rgba(168,84,58,.95)}
.nd-new .nd-nav .nd-links{color:rgba(255,255,255,.84)}
.nd-new .nd-nav .nd-links a:hover{color:#fff;border-bottom-color:rgba(255,255,255,.5)}
.nd-new .nd-logo .nd-logo-txt{color:#fff}
.nd-new .nd-logo .nd-logo-txt span{color:rgba(255,255,255,.62)}
.nd-new .nd-logo .nd-logo-mark{width:30px;height:30px;border-radius:50%;background:#FDFAF7;color:var(--l-acc);
  flex:none;display:grid;place-items:center;box-shadow:0 6px 18px -8px rgba(12,6,3,.6)}
.nd-new .nd-logo .nd-logo-mark svg{width:19px;height:19px}
.nd-new .nd-logo .nd-logo-txt b{font-family:"DM Sans",sans-serif;font-weight:500;font-size:14px;letter-spacing:-.03em}
.nd-new .nd-logo .nd-logo-txt span{font-size:8px;letter-spacing:.17em;font-weight:500}
.nd-new .nd-burger i{background:#fff;opacity:.85}
.nd-new .nd-cta{font-family:"DM Sans",sans-serif;font-weight:500;letter-spacing:-.01em;border-radius:99px;
  padding:9px 18px;font-size:11.5px}
.nd-new .nd-cta--hero{background:#fff;color:var(--l-ink);box-shadow:0 10px 26px rgba(12,6,3,.34)}
.nd-new .nd-cta--ghost2{border:1px solid rgba(255,255,255,.34);color:#fff;background:rgba(255,255,255,.10)}
.nd-new .nd-cta--g{border:1px solid var(--l-line);color:var(--l-text);background:#fff}
/* en las secciones claras el botón vuelve a ser terracota */
.nd-new .nd-plan .nd-cta--hero{background:var(--l-acc);color:#FCF6F1;box-shadow:0 10px 24px -14px rgba(168,84,58,.95)}

/* --- hero inmersivo: foto oscurecida, texto al centro --- */
.nd-new .nd-hero{position:relative;isolation:isolate;overflow:hidden;background:#20140E;
  min-height:310px;display:flex;align-items:center;text-align:center;
  margin-top:calc(-1 * var(--nav-h));padding:calc(var(--nav-h) + 24px) var(--px) 62px}
.nd-new .nd-hero-media{position:absolute;inset:0;z-index:0;
  background:#20140E url("data:image/jpeg;base64,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") center/cover no-repeat}
.nd-new .nd-hero-media img{position:absolute;inset:-4%;z-index:0;width:108%;height:108%;object-fit:cover;
  object-position:50% 50%;filter:blur(1.4px) saturate(.9) brightness(.9);
  opacity:0;transition:opacity .9s var(--nd-ease);
  animation:nd-kenburns 30s ease-in-out infinite alternate}
.nd-new .nd-hero-media img.nd-ready{opacity:1}
.nd-new .nd-hero-scrim{position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,rgba(18,9,5,.58) 0%,rgba(18,9,5,.46) 30%,rgba(18,9,5,.46) 62%,
    rgba(30,17,11,.58) 82%,rgba(30,17,11,.88) 95%,var(--l-ink) 100%),
    radial-gradient(76% 60% at 50% 46%,rgba(14,7,4,.40) 0%,rgba(14,7,4,0) 100%)}
.nd-new .nd-hero-in{position:relative;z-index:2;max-width:600px;margin-inline:auto;width:100%}.nd-new .nd-hero h1, .nd-new .nd-hero .nd-h1{font-size:clamp(20px,2.7vw,31px);margin:0 0 12px;color:#fff;text-wrap:balance;
  text-shadow:0 2px 30px rgba(8,4,2,.7),0 1px 3px rgba(8,4,2,.5)}.nd-new .nd-hero h1 em, .nd-new .nd-hero .nd-h1 em{font-style:normal;font-weight:400;color:var(--l-acc-lt)}
.nd-new .nd-hero-q{font-family:"DM Sans",sans-serif;font-weight:400;letter-spacing:-.025em;
  font-size:14px;line-height:1.35;color:#fff;max-width:31ch;margin:0 auto 10px;
  text-shadow:0 1px 20px rgba(8,4,2,.8)}
.nd-new .nd-hero .nd-lead{color:rgba(255,255,255,.86);max-width:52ch;margin-inline:auto;font-size:12px;
  text-shadow:0 1px 16px rgba(8,4,2,.85)}
.nd-new .nd-hero-cta{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:22px}

/* --- ¿te suena familiar? --- */
.nd-new .nd-feel{background:linear-gradient(180deg,var(--l-ink) 0%,var(--l-cream) 15%)}
.nd-new .nd-feel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}
.nd-new .nd-feel-card{background:#fff;border:1px solid var(--l-line);border-radius:var(--l-r);padding:16px;
  display:grid;gap:7px;align-content:start}
.nd-new .nd-feel-ic{width:28px;height:28px;border-radius:9px;background:var(--l-mist);color:var(--l-acc);
  display:grid;place-items:center;margin-bottom:3px}
.nd-new .nd-feel-card h3{font-size:12.5px}
.nd-new .nd-feel-card p{font-size:11px;line-height:1.5}
.nd-new .nd-feel-note{margin-top:20px;text-align:center;font-family:"DM Sans",sans-serif;font-size:14px;
  letter-spacing:-.03em;color:var(--l-text)}
.nd-new .nd-feel-note b{font-weight:500;color:var(--l-acc)}

/* --- en qué te ayudo (01-06) --- */
.nd-new .nd-spec{display:grid;grid-template-columns:repeat(3,1fr);gap:2px 26px}
.nd-new .nd-spec>div{padding:16px 0;border-top:1px solid var(--l-line)}
.nd-new .nd-spec .nd-n{display:block;font-family:"DM Sans",sans-serif;font-size:10px;font-weight:500;
  letter-spacing:.06em;color:var(--l-acc);margin-bottom:7px}
.nd-new .nd-spec h3{font-size:12.5px;margin-bottom:5px}
.nd-new .nd-spec p{font-size:11px;line-height:1.5}

/* --- cómo trabajo --- */
.nd-new .nd-appr{background:var(--l-mist)}
.nd-new .nd-appr-top{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(20px,3vw,38px);align-items:center;
  margin-bottom:24px}
.nd-new .nd-appr-img{border-radius:var(--l-r);overflow:hidden;aspect-ratio:16/10;position:relative;background:#EADCD1}
.nd-new .nd-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.nd-new .nd-step{background:#fff;border:1px solid var(--l-line);border-radius:var(--l-r);padding:16px;display:grid;gap:6px;align-content:start}
.nd-new .nd-step .nd-k2{font-family:"DM Sans",sans-serif;font-size:10px;font-weight:500;letter-spacing:.06em;color:var(--l-acc)}
.nd-new .nd-step h3{font-size:12.5px}
.nd-new .nd-step p{font-size:11px;line-height:1.5}

/* --- consultas --- */
.nd-new .nd-svc{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.nd-new .nd-plan{border:1px solid var(--l-line);border-radius:var(--l-r);padding:20px;background:#fff;
  display:grid;gap:11px;align-content:start}
.nd-new .nd-plan--hi{background:var(--l-ink);border-color:var(--l-ink)}
.nd-new .nd-plan--hi h3,.nd-new .nd-plan--hi .nd-res{color:#fff}
.nd-new .nd-plan--hi ul{color:rgba(255,255,255,.72)}
.nd-new .nd-plan--hi li::before{background:var(--l-acc-lt)}
.nd-new .nd-plan--hi .nd-res{border-top-color:rgba(255,255,255,.18)}
.nd-new .nd-plan .nd-for{display:inline-flex;padding:4px 11px;border-radius:99px;background:var(--l-mist);
  color:var(--l-acc);font-size:8.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;width:fit-content}
.nd-new .nd-plan--hi .nd-for{background:rgba(255,255,255,.14);color:#fff}
.nd-new .nd-plan h3{font-size:14px}
.nd-new .nd-plan ul{display:grid;gap:6px;font-size:11px;color:var(--l-muted)}
.nd-new .nd-plan li{display:flex;gap:8px}
.nd-new .nd-plan li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--l-acc);flex:none;margin-top:6px}
.nd-new .nd-plan .nd-res{padding-top:10px;border-top:1px solid var(--l-line);font-size:11px;color:var(--l-text);font-weight:500}
.nd-new .nd-plan .nd-cta{width:fit-content}

/* --- sobre mí --- */
.nd-new .nd-about{background:var(--l-mist);display:grid;grid-template-columns:.42fr .58fr;
  gap:clamp(22px,3vw,40px);align-items:center}
.nd-new .nd-about-img{position:relative;border-radius:var(--l-r);overflow:hidden;aspect-ratio:4/4.6;background:#EADCD1}
.nd-new .nd-about-img img,.nd-new .nd-appr-img img{position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:var(--pos,50% 22%);opacity:0;transition:opacity .8s var(--nd-ease)}
.nd-new .nd-about-img img.nd-ready,.nd-new .nd-appr-img img.nd-ready{opacity:1}
.nd-new .nd-badge2{position:absolute;z-index:2;left:12px;bottom:12px;background:#fff;border-radius:12px;padding:9px 13px;
  box-shadow:0 16px 34px -14px rgba(36,22,16,.4);font-size:9px;line-height:1.4;color:var(--l-muted)}
.nd-new .nd-badge2 b{display:block;font-family:"DM Sans",sans-serif;font-size:11px;font-weight:500;color:var(--l-text)}
.nd-new .nd-quote{margin:12px 0;padding-left:13px;border-left:2px solid var(--l-acc);
  font-family:"DM Sans",sans-serif;font-size:12.5px;letter-spacing:-.02em;color:var(--l-text);line-height:1.45}
.nd-new .nd-about .nd-mini{font-size:10.5px;margin-top:12px;padding-top:11px;border-top:1px solid var(--l-line)}

/* --- FAQ --- */
.nd-new .nd-faq{display:grid;gap:0}
.nd-new .nd-faq div{border-top:1px solid var(--l-line);padding:13px 0;display:flex;gap:14px;align-items:flex-start}
.nd-new .nd-faq div:last-child{border-bottom:1px solid var(--l-line)}
.nd-new .nd-faq h3{font-size:12px;flex:0 0 34%}
.nd-new .nd-faq p{font-size:11px;line-height:1.5;margin:0}

/* --- contacto --- */
.nd-new .nd-contact{background:var(--l-ink);text-align:center;display:grid;justify-items:center;gap:14px}
.nd-new .nd-contact .nd-eyebrow2{color:var(--l-acc-lt)}
.nd-new .nd-contact h2{color:#fff;font-size:clamp(16px,2vw,23px);max-width:20ch}
.nd-new .nd-contact p{color:rgba(255,255,255,.66);max-width:44ch;font-size:11.5px}
.nd-new .nd-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:2px}
.nd-new .nd-chips span{border:1px solid rgba(255,255,255,.24);color:rgba(255,255,255,.86);border-radius:99px;
  padding:7px 14px;font-size:10.5px}
.nd-new .nd-chips span:first-child{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.4);color:#fff}
.nd-new .nd-foot{background:var(--l-ink);border-top:1px solid rgba(255,255,255,.10);color:rgba(255,255,255,.42)}

/* ---------- en pantallas anchas la maqueta se achica y deja aire ---------- */
@media(min-width:1080px){
  .nd-main{max-width:748px;margin-inline:auto}
  .nd-w{zoom:.72}                      /* la web se ve como una maqueta, no a tamaño real */
  .nd-mark{font-size:13px;padding:8px 16px}
}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media(max-width:900px){
  .nd-w{font-size:12.5px}
  .nd-w .nd-links{display:none}
  .nd-w .nd-burger{display:flex}
  .nd-old .nd-hero,.nd-old .nd-two,.nd-old .nd-ct{grid-template-columns:1fr}
  .nd-old .nd-grid3,.nd-old .nd-tst,.nd-old .nd-post{grid-template-columns:1fr 1fr}
  .nd-old .nd-hero .nd-ph{aspect-ratio:16/8}
  .nd-old .nd-ig{grid-template-columns:repeat(3,1fr)}
  .nd-new .nd-feel-grid,.nd-new .nd-spec,.nd-new .nd-steps{grid-template-columns:1fr 1fr}
  .nd-new .nd-appr-top,.nd-new .nd-about,.nd-new .nd-svc{grid-template-columns:1fr}

  .nd-new .nd-about-img{aspect-ratio:16/9}
  .nd-new .nd-faq div{flex-direction:column;gap:5px}
  .nd-new .nd-faq h3{flex:none}
}
@media(min-width:1080px){
  .nd-main{max-width:748px;margin-inline:auto}
  .nd-w{zoom:.72}                      /* la web se ve como una maqueta, no a tamaño real */
  .nd-mark{font-size:13px;padding:8px 16px}
}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media(max-width:900px){
  .nd-w{font-size:12.5px}
  .nd-w .nd-links{display:none}
  .nd-w .nd-burger{display:flex}
  .nd-old .nd-hero,.nd-old .nd-two,.nd-old .nd-ct,.nd-new .nd-hero,
  .nd-new .nd-offer .nd-body,.nd-new .nd-about{grid-template-columns:1fr}
  .nd-old .nd-grid3,.nd-old .nd-tst,.nd-old .nd-post,.nd-new .nd-3,.nd-new .nd-quotes{grid-template-columns:1fr 1fr}
  .nd-new .nd-steps{grid-template-columns:1fr 1fr}
  .nd-new .nd-steps li{border-bottom:1px solid var(--nd-line);padding-left:16px}
  .nd-new .nd-steps li:nth-child(2n){border-right:0}
  .nd-new .nd-steps li:first-child{padding-left:16px}
  .nd-new .nd-svc{grid-template-columns:1fr}
  .nd-old .nd-hero .nd-ph{aspect-ratio:16/8}
  .nd-new .nd-hero .nd-ph{aspect-ratio:16/8.5;order:-1}
  .nd-new .nd-about .nd-ph{aspect-ratio:16/8}
  .nd-old .nd-ig{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
  /* en celular las etiquetas dejan de flotar: se acomodan en el flujo, donde toca */
  .nd-mark{position:static;transform:none;opacity:1;
    display:inline-flex;width:max-content;max-width:100%;align-self:flex-start;justify-self:start;
    margin:10px 0 0;font-size:9px;padding:5px 10px;letter-spacing:.07em;white-space:normal;
    box-shadow:0 8px 18px -12px rgba(76,122,27,.8)}
  .nd-btns .nd-mark{margin:0 0 4px}
  /* el héroe de la versión NODO es una fila: la etiqueta se lleva un renglón entero */
  .nd-new .nd-hero{flex-wrap:wrap}
  .nd-new .nd-hero .nd-mark{flex:0 0 100%;width:auto;justify-content:flex-start;margin:0 0 10px}
  .nd-mark::before,.nd-mark::after{display:none}
  .nd-site.nd-on .nd-mark{opacity:1}
}
@media(max-width:600px){
  .nd-w .nd-nav .nd-cta{display:none}   /* en móvil la barra deja solo logo + menú */
  .nd-bar{flex-direction:column;align-items:flex-start;gap:14px}
  .nd-switch{width:100%}
  .nd-tab{flex:1;justify-content:center;padding:11px 14px}
  .nd-stage{aspect-ratio:auto;height:clamp(400px,62vh,520px)}
  .nd-old .nd-grid3,.nd-old .nd-tst,.nd-old .nd-post{grid-template-columns:1fr}
  .nd-new .nd-feel-grid,.nd-new .nd-spec,.nd-new .nd-steps{grid-template-columns:1fr}
  .nd-url{display:none}.nd-w h1, .nd-w .nd-h1{font-size:20px}
}
@media (prefers-reduced-motion:reduce){
  .nd-demo *{transition-duration:.001s!important;animation:none!important}
}

/* ---- página de muestra (solo cuando la demo se abre suelta) ---- */
body.nd-standalone{margin:0;background:#F7F7F1;font-family:"Inter Tight",sans-serif}
body.nd-standalone .nd-wrap{width:min(1180px,100% - 48px);margin-inline:auto;padding:clamp(40px,7vh,90px) 0}

/* =========================================================
   DEMO 01 · el toggle tiene que gritar "tocame"
   ========================================================= */
.nd-demo .nd-bar{align-items:center}
.nd-demo .nd-switch{border-color:var(--nd-ink);border-width:1.5px;padding:5px}
.nd-demo .nd-tab{color:var(--nd-ink);font-weight:700}
.nd-demo .nd-tab[aria-selected="true"]{color:#F7F7F1}

/* mientras estás en "Antes", la otra pestaña se ve como el botón a tocar */
.nd-demo[data-v="old"] .nd-tab[data-t="nodo"]{
  background:var(--nd-lime);color:var(--nd-ink);
  box-shadow:0 0 0 0 rgba(120,180,40,.6);
  animation:ndLatido 2.2s var(--nd-ease) infinite}
.nd-demo[data-v="old"] .nd-tab[data-t="nodo"] i{background:var(--nd-acc);opacity:1}
/* una flecha dentro del propio botón: la señal viaja con el control */
.nd-tab[data-t="nodo"]::after{
  content:"";width:0;margin-left:0;opacity:0;
  font-weight:700;transition:opacity .35s var(--nd-ease),width .35s var(--nd-ease),margin .35s var(--nd-ease)}
.nd-demo[data-v="old"] .nd-tab[data-t="nodo"]::after{
  content:"→";width:auto;margin-left:2px;opacity:1;
  animation:ndFlecha 1.6s var(--nd-ease) infinite}
@keyframes ndLatido{
  0%,100%{box-shadow:0 0 0 0 rgba(120,180,40,.6)}
  55%    {box-shadow:0 0 0 10px rgba(120,180,40,0)}
}
@keyframes ndFlecha{
  0%,100%{transform:translateX(0)}
  50%    {transform:translateX(3px)}
}

/* la ayuda pegada al control, no en el extremo opuesto de la barra */
.nd-bar{justify-content:flex-start;gap:clamp(10px,1.4vw,18px)}
.nd-demo .nd-bar::after{
  content:"← Tocá acá y mirá la diferencia";
  font-size:13.5px;font-weight:650;letter-spacing:-.01em;color:var(--nd-acc);
  display:inline-flex;align-items:center;
  opacity:0;transform:translateX(-10px);
  transition:opacity .5s var(--nd-ease),transform .5s var(--nd-ease)}
.nd-demo[data-v="old"] .nd-bar::after{opacity:1;transform:none}
@media(max-width:640px){
  .nd-demo .nd-bar::after{content:"Tocá «Con NODO» y mirá la diferencia";font-size:12.5px;
    transform:translateY(-8px)}
  .nd-demo[data-v="old"] .nd-bar::after{transform:none}
}
@media(prefers-reduced-motion:reduce){
  .nd-demo[data-v="old"] .nd-tab[data-t="nodo"],
  .nd-demo[data-v="old"] .nd-tab[data-t="nodo"]::after{animation:none}
}

/* =========================================================
   DEMO 01 · "ANTES": plantilla barata de hace quince años
   ========================================================= */
.nd-demo .nd-old{
  --vieja-azul:#1a5490; --vieja-teal:#3f8f96; --vieja-naranja:#e07b00;
  font-family:Arial,Helvetica,sans-serif;background:#fff;color:#3a3a3a}

/* barra superior con degradado y logo en Times */
.nd-demo .nd-old .nd-nav{
  background:linear-gradient(#4a9aa2,#2f767e);border-bottom:3px solid var(--vieja-naranja);
  padding:10px 16px;box-shadow:inset 0 -1px 0 rgba(255,255,255,.25)}
.nd-demo .nd-old .nd-logo b{
  font-family:Georgia,"Times New Roman",serif;font-style:italic;font-weight:700;
  color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.35);letter-spacing:0}
.nd-demo .nd-old .nd-logo span{color:#dff0f2;letter-spacing:.02em;text-transform:none}
.nd-demo .nd-old .nd-links a{
  color:#eaf6f7;text-decoration:underline;font-size:11.5px;letter-spacing:0}
.nd-demo .nd-old .nd-cta--flat{
  background:linear-gradient(#ffb43a,#e07b00);color:#fff;border:1px solid #b06000;
  border-radius:4px;text-shadow:0 -1px 0 rgba(0,0,0,.3);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 1px 2px rgba(0,0,0,.25);
  font-weight:700;letter-spacing:0}

/* héroe centrado, con el texto justificado y sin aire */
.nd-demo .nd-old .nd-hero{background:#eef4f5;border-bottom:1px solid #cfd9da}
.nd-demo .nd-old .nd-h1{
  font-family:Georgia,"Times New Roman",serif;font-weight:700;color:var(--vieja-azul);
  font-size:clamp(22px,2.8vw,34px);letter-spacing:0;line-height:1.18;
  text-align:center;text-shadow:1px 1px 0 #fff;margin-bottom:10px}
.nd-demo .nd-old .nd-hero > div > p:not(.nd-h1){
  text-align:justify;line-height:1.35;color:#555;font-size:12.5px}
.nd-demo .nd-old .nd-btns{justify-content:center}
.nd-demo .nd-old .nd-cta--ghost{
  background:linear-gradient(#fdfdfd,#e6e6e6);border:1px solid #b5b5b5;border-radius:4px;
  color:var(--vieja-azul);text-decoration:underline;font-weight:700;letter-spacing:0}
.nd-demo .nd-old .nd-ph{
  border:1px solid #bbb;border-radius:0;box-shadow:3px 3px 0 #d8d8d8;background:#e9e9e9}

/* franja de "palabras clave" */
.nd-demo .nd-old .nd-strip{
  background:var(--vieja-naranja);color:#fff;border-block:1px solid #b06000;letter-spacing:.04em}
.nd-demo .nd-old .nd-strip span{color:#fff;opacity:.95}

/* títulos de sección centrados con subrayado decorativo */
.nd-demo .nd-old h2{
  font-family:Georgia,"Times New Roman",serif;color:var(--vieja-azul);
  text-align:center;letter-spacing:0;font-weight:700;
  border-bottom:2px double #c3ced0;padding-bottom:8px;margin-bottom:12px}
.nd-demo .nd-old .nd-txt p{text-align:justify;line-height:1.35;font-size:12px;color:#555}
.nd-demo .nd-old .nd-band{background:#eef4f5;border-block:1px solid #d4dfe0}

/* tarjetas con borde gris y fondo grisáceo */
.nd-demo .nd-old .nd-card{
  background:#f6f6f6;border:1px solid #c9c9c9;border-radius:3px;
  box-shadow:inset 0 1px 0 #fff, 2px 2px 0 #e3e3e3}
.nd-demo .nd-old .nd-card h3{
  font-family:Georgia,"Times New Roman",serif;color:var(--vieja-azul);letter-spacing:0}
.nd-demo .nd-old .nd-card p{font-size:11.5px;line-height:1.35;color:#666;text-align:justify}
.nd-demo .nd-old .nd-more{
  color:#0645ad;text-decoration:underline;font-weight:400;letter-spacing:0}
.nd-demo .nd-old .nd-post h3{
  font-family:Georgia,"Times New Roman",serif;color:var(--vieja-azul);letter-spacing:0}
.nd-demo .nd-old .nd-tst{background:#fffbe8;border:1px dashed #d9c37a;border-radius:3px}

/* formulario y pie */
.nd-demo .nd-old .nd-fields i,.nd-demo .nd-old .nd-fields span{
  background:#fff;border:1px solid #b5b5b5;border-radius:2px}
.nd-demo .nd-old .nd-foot{
  background:#2f767e;color:#dff0f2;border-top:3px solid var(--vieja-naranja);text-align:center}
.nd-demo .nd-old .nd-foot span{color:#dff0f2}

/* =========================================================
   AJUSTES UX — agosto 2026
   ========================================================= */

/* contraste: el gris secundario estaba por debajo de AA */
:root{--dim-2:rgba(20,23,15,.56)}

/* foco visible en todo lo interactivo */
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,
.btn:focus-visible,.nd-tab:focus-visible{outline:none;border-radius:12px;
  box-shadow:0 0 0 3px var(--paper),0 0 0 6px rgba(76,122,27,.75)}

/* los anclajes no quedan debajo del encabezado */
section[id],#top{scroll-margin-top:96px}

/* ---------- encabezado ---------- */
.nav-inline{display:none;align-items:center;gap:clamp(14px,1.6vw,26px);padding:11px 22px}
.nav-inline a{font-size:13px;font-weight:500;color:var(--dim);white-space:nowrap;position:relative;
  transition:color .3s var(--ease-out)}
.nav-inline a::after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:1.5px;
  background:var(--acc);transition:right .35s var(--ease-out)}
.nav-inline a:hover{color:var(--ink)}
.nav-inline a:hover::after{right:0}
@media(min-width:1120px){
  .nav-inline{display:inline-flex}
  .navx{display:none}
}
/* el encabezado se retira al bajar y vuelve al subir, para no tapar los títulos */
.nav{transition:transform .42s var(--ease-out),opacity .32s var(--ease-out)}
body.nav-hide .nav{transform:translateY(calc(-100% - 10px));opacity:0;pointer-events:none}
@media (prefers-reduced-motion:reduce){.nav{transition:none}}

/* ---------- datos de servicio en el hero ---------- */
.facts{list-style:none;margin:clamp(26px,3.4vw,42px) 0 0;padding:0;
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.4vw,38px);max-width:900px;
  border-top:1px solid var(--line);padding-top:clamp(18px,2.2vw,26px)}
.facts li{min-width:0}
.facts b{display:block;font-family:"Inter Tight",-apple-system,sans-serif;
  font-size:clamp(1.5rem,2.3vw,2rem);font-weight:700;letter-spacing:-.035em;line-height:1.04;
  white-space:nowrap}
.facts span{display:block;margin-top:9px;font-size:clamp(.88rem,1vw,.96rem);line-height:1.5;
  color:var(--dim);max-width:23ch}
@media(max-width:860px){.facts{grid-template-columns:1fr;gap:20px}}

/* ---------- nivel: plazo y qué mueve el precio ---------- */
.lv-meta{margin-top:12px;font-size:13px;line-height:1.6;color:var(--dim);max-width:52ch}
.lv-meta b{color:var(--ink);font-weight:650}

/* ---------- WhatsApp ---------- */
.btn .wa-i{display:inline-flex;align-items:center;color:#25A164}
.wa-fab{position:fixed;right:22px;bottom:22px;z-index:63;display:inline-flex;align-items:center;gap:10px;
  height:54px;padding:0 20px;border-radius:100px;background:#1E3B12;color:#fff;
  box-shadow:0 18px 34px -18px rgba(20,23,15,.75);
  font-family:"Inter Tight",-apple-system,sans-serif;font-size:14px;font-weight:600;letter-spacing:-.01em;
  transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out)}
.wa-fab svg{color:#B7F36B}
.wa-fab:hover{transform:translateY(-2px);box-shadow:0 22px 40px -18px rgba(20,23,15,.8)}
@media(max-width:900px){.wa-fab{display:none}}

/* ---------- barra fija en móvil ---------- */
.mcta{display:none}
@media(max-width:900px){
  .mcta{position:fixed;left:16px;right:16px;bottom:16px;z-index:64;
    display:flex;align-items:center;gap:10px;
    opacity:0;transform:translateY(14px);pointer-events:none;
    transition:opacity .45s var(--ease-out),transform .45s var(--ease-out)}
  body.show-mcta .mcta{opacity:1;transform:none;pointer-events:auto}
  .mcta .btn{flex:1;justify-content:center}
  .mcta-wa{flex:none;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;
    background:#1E3B12;color:#B7F36B;box-shadow:0 14px 28px -16px rgba(20,23,15,.8)}
  body{padding-bottom:0}
  body.show-mcta{padding-bottom:86px}
}
html:not(.js) .mcta{opacity:1;transform:none;pointer-events:auto}

/* ---------- diagnóstico ---------- */
.qz-alt{margin-top:16px;font-size:13.5px;color:var(--dim)}
.qz-alt a{color:var(--acc);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.qz-sub--2{margin-top:22px}
.qz-formd{margin-top:-6px;margin-bottom:14px;font-size:13.5px;line-height:1.55;color:var(--dim);max-width:56ch}
.qz-break{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:8px}
.qz-break li{display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  padding:11px 15px;border-radius:13px;background:rgba(20,23,15,.035);
  font-size:13.5px;line-height:1.4;color:var(--ink)}
.qz-break li b{font-family:"Inter Tight",-apple-system,sans-serif;font-weight:700;white-space:nowrap;color:var(--acc)}

/* ---------- pie ---------- */
.foot-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.foot-legal{display:flex;gap:18px}
.foot-legal a{color:var(--dim-2)}
.foot-legal a:hover{color:var(--ink)}
body.wa-off .wa-fab{opacity:0;transform:translateY(12px) scale(.96);pointer-events:none}
.wa-fab{transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out),opacity .3s var(--ease-out)}

/* ---------- selector de idioma ---------- */
.lang{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;
  padding:0 13px;font-family:"Inter Tight",-apple-system,sans-serif;font-size:12px;font-weight:700;
  letter-spacing:.1em;color:var(--dim);transition:color .3s var(--ease-out)}
.lang:hover{color:var(--ink)}
.ovl-lang{margin-top:10px;color:var(--dim)}
.ovl-lang:hover{color:var(--acc)}

/* la ayuda del comparador, en la versión en inglés */
html[lang="en"] .nd-demo .nd-bar::after{content:"← Tap here and see the difference"}
@media(max-width:640px){
  html[lang="en"] .nd-demo .nd-bar::after{content:"Tap “With NODO” and see the difference"}
}

/* ---------- barra superior en pantallas chicas ---------- */
@media(max-width:560px){
  .nav .brand{padding:10px 15px;white-space:nowrap}
  .nav .brand span{display:none}          /* "by Lucila Glom" queda en el pie y en el menú */
  .navx{padding:11px 15px;gap:9px}
  .lang{min-width:40px;height:40px;padding:0 10px;font-size:11.5px}
  .nav .wrap{gap:8px}
}
@media(max-width:380px){
  .navx-t{display:none}                   /* el ícono de menú se explica solo */
  .navx{padding:12px 13px}
}

/* ---------- idioma dentro del menú: su propia fila, no pegado al mail ---------- */
.ovl-lang-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  margin-top:clamp(20px,3vh,30px);padding-top:clamp(16px,2.4vh,22px);
  border-top:1px solid var(--line);
  opacity:0;transform:translateY(14px);
  transition:opacity .5s var(--ease-out) .38s,transform .5s var(--ease-out) .38s}
.ovl.on .ovl-lang-row{opacity:1;transform:none}
.ovl-lang-k{font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--dim-2)}
.ovl-lang-set{display:inline-flex;align-items:center;gap:4px;padding:4px;
  border:1px solid var(--line-2);border-radius:100px;background:rgba(255,255,255,.7)}
.ovl-lang-set b,.ovl-lang-set a{display:inline-flex;align-items:center;height:32px;padding:0 15px;
  border-radius:100px;font-family:"Inter Tight",-apple-system,sans-serif;
  font-size:13px;font-weight:600;letter-spacing:-.01em;transition:background .3s var(--ease-out),color .3s var(--ease-out)}
.ovl-lang-set b{background:var(--ink);color:var(--paper)}
.ovl-lang-set a{color:var(--dim)}
.ovl-lang-set a:hover,.ovl-lang-set a:focus-visible{background:var(--lime-soft);color:var(--acc);outline:none}
/* con el menú abierto, el selector de la barra sobra: el menú ya lo tiene */
body.menu-abierto .lang{opacity:0;pointer-events:none;transition:opacity .3s var(--ease-out)}

/* =========================================================
   CASOS — carrusel
   ========================================================= */
.cx{position:relative;margin-top:clamp(34px,4.6vw,60px)}
.works{
  display:flex;gap:clamp(22px,3.4vw,48px);
  margin-top:0;
  overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x mandatory;scroll-behavior:smooth;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  padding-bottom:6px}
.works::-webkit-scrollbar{display:none}
.works:focus-visible{outline:none;box-shadow:0 0 0 3px var(--paper),0 0 0 6px rgba(76,122,27,.75);border-radius:20px}
.work{flex:0 0 calc((100% - clamp(22px,3.4vw,48px)) / 2);scroll-snap-align:start;min-width:0}
@media(max-width:900px){
  .work{flex:0 0 100%}
}
@media (prefers-reduced-motion:reduce){.works{scroll-behavior:auto}}

.cx-ui{display:flex;align-items:center;justify-content:flex-end;gap:20px;
  margin-top:clamp(20px,2.6vw,30px)}
.cx-arrows{display:flex;gap:10px}
.cx-a{width:46px;height:46px;flex:none;display:grid;place-items:center;cursor:pointer;
  border:1px solid var(--line-2);border-radius:100px;background:var(--paper-2);color:var(--ink);
  transition:border-color .3s var(--ease-out),background .3s var(--ease-out),
             transform .3s var(--ease-out),opacity .3s var(--ease-out)}
.cx-a:hover:not(:disabled){border-color:var(--acc);color:var(--acc);transform:translateY(-1px)}
.cx-a:disabled{opacity:.3;cursor:default}
.cx-a:focus-visible{outline:none;box-shadow:0 0 0 3px var(--paper),0 0 0 6px rgba(76,122,27,.75)}
.cx-hint{margin-top:12px;font-size:11px;color:var(--dim-2);letter-spacing:.1em;text-transform:uppercase}
@media(min-width:901px){.cx-hint{display:none}}
html:not(.js) .cx-ui{display:none}
html:not(.js) .works{overflow-x:visible;flex-wrap:wrap}
html:not(.js) .work{flex:1 1 320px}

/* =========================================================
   PROYECTOS (reemplaza a Casos, sep 2026)
   ========================================================= */
.anchor-alias{position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden}
.pj-list{margin-top:clamp(40px,5vw,72px);border-top:1px solid var(--line)}
.pj{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  grid-template-areas:"head media" "body media";
  column-gap:clamp(36px,6vw,104px);align-items:center;
  padding-block:clamp(60px,8vw,112px);border-bottom:1px solid var(--line)}
.pj:nth-child(even){grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);grid-template-areas:"media head" "media body"}
.pj-head{grid-area:head;align-self:end}
.pj-body{grid-area:body;align-self:start;margin-top:26px}
.pj-media{grid-area:media;padding-bottom:40px}
.pj-media .device-stack{display:block;transition:transform .7s var(--ease-out)}
.pj-media .device-stack:hover{transform:translateY(-4px)}
.pj-num{display:inline-flex;align-items:center;gap:9px;color:var(--acc)}
.pj-num::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--lime);
  box-shadow:0 0 0 3px rgba(183,243,107,.35);flex:none}
.pj-name{font-size:clamp(1.9rem,3.7vw,3.1rem);letter-spacing:-.045em;line-height:1.02;margin-top:18px}
.pj-type{margin-top:12px;font-size:clamp(1rem,1.3vw,1.14rem);font-weight:500;color:var(--acc);letter-spacing:-.01em}
.pj-desc{color:var(--dim);font-size:clamp(.98rem,1.1vw,1.05rem);line-height:1.62;max-width:42ch}
.pj-tags{display:flex;flex-wrap:wrap;gap:6px;margin:20px 0 0;padding:0;list-style:none;max-width:46ch}
.pj-tags li{font-size:11.5px;font-weight:500;color:var(--dim);background:var(--paper-2);
  border:1px solid var(--line);border-radius:100px;padding:5px 11px;line-height:1.3}
.pj-link{display:inline-flex;align-items:center;gap:10px;margin-top:28px;padding-bottom:4px;
  font-size:15px;font-weight:600;color:var(--ink);border-bottom:1px solid var(--line-2);
  transition:color .3s var(--ease-out),border-color .3s var(--ease-out)}
.pj-link span{transition:transform .35s var(--ease-out)}
.pj-link:hover{color:var(--acc);border-color:var(--acc)}
.pj-link:hover span{transform:translateX(4px)}
.pj-link:focus-visible{outline:none;box-shadow:0 0 0 3px var(--paper),0 0 0 6px rgba(76,122,27,.75);border-radius:4px}
@media(max-width:960px){
  .pj,.pj:nth-child(even){grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "media" "body"}
  .pj-media{margin-top:30px;padding-bottom:30px}
  .pj-body{margin-top:24px}
}
.pj-cta{display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px;
  margin-top:clamp(56px,7vw,96px)}
.pj-cta-h{font-size:clamp(1.5rem,2.8vw,2.3rem);letter-spacing:-.04em;line-height:1.1;max-width:22ch}
.pj-cta-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px 22px}
.pj-call{font-size:14.5px;color:var(--dim)}
.pj-call a{color:var(--ink);font-weight:600;border-bottom:1px solid var(--line-2);padding-bottom:2px;transition:color .3s,border-color .3s}
.pj-call a:hover{color:var(--acc);border-color:var(--acc)}

/* llamada de 15 min: Servicios y pantalla final del diagnóstico */
.svc-call{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:22px 48px;
  margin-top:clamp(40px,5vw,64px);padding:clamp(22px,3vw,34px);
  border:1px solid var(--line);border-radius:20px;background:var(--paper-2)}
.svc-call>div{flex:1 1 420px;min-width:0}
.svc-call-h{font-weight:700;font-size:clamp(1.1rem,1.6vw,1.35rem);letter-spacing:-.03em;line-height:1.2}
.svc-call-p{margin-top:8px;color:var(--dim);font-size:15px;line-height:1.6;max-width:64ch}
.svc-call .btn{flex:0 0 auto}
@media(max-width:640px){.svc-call .btn{width:100%;justify-content:center}}
.qz-call-p{margin-top:6px}
