/* Talea People · hoja de estilos principal. Fuentes autoalojadas (SIL Open Font License). */
@font-face{font-family:'Montserrat';font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/montserrat-latin-300-normal.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/montserrat-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/montserrat-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/montserrat-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/montserrat-latin-700-normal.woff2) format('woff2')}
@font-face{font-family:'Montserrat';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/montserrat-latin-400-italic.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/fraunces-latin-300-normal.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:300;font-display:swap;src:url(../fonts/fraunces-latin-300-italic.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/fraunces-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/fraunces-latin-400-italic.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/fraunces-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:500;font-display:swap;src:url(../fonts/fraunces-latin-500-italic.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/fraunces-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:600;font-display:swap;src:url(../fonts/fraunces-latin-600-italic.woff2) format('woff2')}
/* Layout: web corporativa de una columna ancha (máx. 1180px), secciones que alternan crema y blanco cálido; el verde se reserva para el bloque de proceso y el footer */
:root{
  --verde:#577F66; --verde-osc:#3F5E4B; --arena:#CFAF84; --arena-claro:#EFE3D2;
  --crema:#F7F4EE; --papel:#FDFBF7; --gris:#7C8179; --tinta:#2D332E; --linea:#E3DDD2;
  --display:"Fraunces", Georgia, "Times New Roman", serif;
  --body:"Montserrat", "Helvetica Neue", Arial, sans-serif;
  --w:1180px;
  color-scheme:light;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{background:var(--crema);color:var(--tinta);font-family:var(--body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{max-width:var(--w);margin-inline:auto;padding-inline:clamp(16px,4vw,40px)}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.12;text-wrap:balance;margin:0;color:var(--tinta)}
h1{font-size:clamp(2.4rem,5.6vw,4.4rem);letter-spacing:-.01em}
h2{font-size:clamp(1.9rem,3.6vw,2.9rem)}
h3{font-size:1.45rem}
p{margin:0;max-width:62ch}
em{font-style:italic;color:var(--verde)}
.eyebrow{font-size:.74rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--verde)}
.btn{display:inline-flex;align-items:center;gap:.6em;font-family:var(--body);font-weight:500;font-size:.92rem;padding:.95em 1.6em;border-radius:999px;text-decoration:none;border:1.5px solid var(--verde);transition:background .2s,color .2s}
.btn-solid{background:var(--verde);color:var(--crema)}
.btn-solid:hover{background:var(--verde-osc);border-color:var(--verde-osc)}
.btn-line{color:var(--verde)}
.btn-line:hover{background:var(--verde);color:var(--crema)}
:focus-visible{outline:2px solid var(--arena);outline-offset:3px}
section{padding-block:clamp(64px,9vw,120px)}

/* barra superior */
.topbar{background:var(--verde-osc);color:var(--crema);font-size:.8rem}
.topbar .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 24px;padding-block:8px}
.topbar .grp{display:flex;flex-wrap:wrap;gap:6px 22px}
.topbar a{text-decoration:none;opacity:.9}
.topbar a:hover{opacity:1;text-decoration:underline}

/* cabecera */
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:rgba(247,244,238,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--linea)}
header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:14px}
.logo img{height:46px;width:auto;display:block}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:26px;align-items:center}
nav a{text-decoration:none;font-size:.86rem;font-weight:500;letter-spacing:.02em}
nav a:hover{color:var(--verde)}
.has-sub{position:relative}
.sub{position:absolute;top:100%;left:-18px;min-width:290px;background:var(--papel);border:1px solid var(--linea);border-radius:14px;padding:10px;display:none;box-shadow:0 18px 40px -20px rgba(45,51,46,.35)}
.has-sub:hover .sub,.has-sub:focus-within .sub{display:block}
@media (min-width:1021px){.has-sub.shut .sub{display:none!important}}
.sub a{display:flex;justify-content:space-between;gap:16px;padding:9px 12px;border-radius:8px}
.sub a:hover{background:var(--crema)}
.sub small{color:var(--gris);font-family:var(--display);font-style:italic;font-size:.85rem}
.nav-cta{display:flex;gap:10px;align-items:center}
.nav-cta .btn{padding:.7em 1.2em;font-size:.82rem}
.menu-btn{display:none;background:none;border:1px solid var(--linea);border-radius:10px;padding:8px 12px;font:inherit;font-size:.85rem;color:var(--tinta)}
@media (max-width:1020px){
  nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--crema);border-bottom:1px solid var(--linea)}
  nav.open{display:block}
  nav ul{flex-direction:column;align-items:flex-start;gap:0;padding:8px clamp(16px,4vw,40px) 18px}
  nav li{width:100%;border-bottom:1px solid var(--linea)}
  nav a{display:block;padding:12px 0}
  .sub{position:static;display:block;border:0;box-shadow:none;background:none;padding:0 0 8px 12px}
  .sub a{padding:7px 0}
  .menu-btn{display:block}
  .nav-cta .btn-line{display:none}
}

/* hero */
.hero{padding-block:clamp(48px,7vw,96px) clamp(56px,8vw,104px)}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(32px,5vw,72px);align-items:center}
.hero-copy{display:grid;gap:26px;min-width:0}
.hero-copy p{font-size:1.08rem;color:#535a52}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.hero-art{position:relative;aspect-ratio:4/5;max-width:100%;border-radius:220px 220px 24px 24px;background:linear-gradient(170deg,var(--arena-claro),#E7D6BF);overflow:hidden;display:grid;place-items:center}
.hero-art .tag{position:absolute;left:22px;right:22px;bottom:22px;background:var(--papel);border-radius:16px;padding:16px 18px;font-size:.86rem;display:grid;gap:4px;box-shadow:0 14px 30px -18px rgba(45,51,46,.4)}
.hero-art .tag b{font-family:var(--display);font-weight:400;font-size:1.15rem}
.iso{position:absolute;left:50%;top:39%;width:52%;max-width:320px;height:auto;transform:translate(-50%,-50%);overflow:visible}
.iso-g{transform-box:fill-box;transform-origin:50% 100%;animation:sway 7s ease-in-out 3.4s infinite}
.iso .outl path{fill:none;stroke:#3F5E4B;stroke-width:2.5;stroke-dasharray:1;stroke-dashoffset:0;animation:draw 2s cubic-bezier(.45,.05,.3,1) .2s both}
.iso .ink{fill:#3F5E4B;animation:ink .9s ease 1.7s both}
.iso .lf{fill:#D8DBD7;transform-box:fill-box;transform-origin:30% 100%;animation:leafin 1s cubic-bezier(.3,1.4,.5,1) 2.2s both}
@keyframes draw{from{stroke-dashoffset:1}}
@keyframes ink{from{opacity:0}}
@keyframes leafin{from{opacity:0;transform:scale(.6)}}
@keyframes sway{0%,100%{transform:rotate(0)}30%{transform:rotate(-1.6deg)}70%{transform:rotate(1.3deg)}}
@media (max-width:860px){.hero .wrap{grid-template-columns:1fr}.hero-art{aspect-ratio:5/4;border-radius:180px 180px 20px 20px}}

/* líneas de servicio */
.lines{background:var(--papel)}
.sec-head{display:grid;grid-template-columns:1fr 1fr;gap:24px 64px;align-items:end;margin-bottom:56px}
.sec-head > *{min-width:0}
.sec-head p{color:#535a52}
@media (max-width:820px){.sec-head{grid-template-columns:1fr}}
.grid6{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--linea);border-left:1px solid var(--linea)}
.line{padding:34px 30px 30px;border-right:1px solid var(--linea);border-bottom:1px solid var(--linea);display:grid;grid-template-rows:auto auto 1fr auto;gap:12px;text-decoration:none;transition:background .25s;min-width:0}
.line:hover{background:var(--crema)}
.line .meta{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.line .meta span{font-family:var(--display);font-style:italic;color:var(--arena);font-size:1.02rem}
.line .meta svg{width:30px;height:30px;flex:none}
.line h3 b{font-weight:500;color:var(--verde)}
.line p{font-size:.93rem;color:#596058}
.line .more{font-size:.82rem;font-weight:600;color:var(--verde);letter-spacing:.04em}
.line:hover .more{text-decoration:underline}
@media (max-width:960px){.grid6{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.grid6{grid-template-columns:1fr}}

/* boutique */
.boutique .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,6vw,88px)}
.boutique .wrap > *{min-width:0}
.boutique .intro{display:grid;gap:22px;align-content:start;position:sticky;top:110px}
.pillars{display:grid;gap:0}
.pillar{display:grid;grid-template-columns:auto 1fr;gap:6px 22px;padding-block:28px;border-top:1px solid var(--linea)}
.pillar:last-child{border-bottom:1px solid var(--linea)}
.pillar .dot{width:12px;height:12px;border-radius:50%;background:var(--arena);margin-top:12px;grid-row:span 2}
.pillar h3{font-size:1.3rem}
.pillar p{color:#596058;font-size:.95rem}
@media (max-width:860px){.boutique .wrap{grid-template-columns:1fr}.boutique .intro{position:static}}

/* proceso / SLA */
.process{background:var(--verde);color:var(--crema)}
.process h2,.process h3{color:var(--crema)}
.process .eyebrow,.process h2 em{color:var(--arena)}
.process .sec-head p{color:#E6ECE7}
.sla{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.sla div{border:1px solid rgba(247,244,238,.25);border-radius:20px;padding:28px 26px;display:grid;gap:8px;min-width:0}
.sla strong{font-family:var(--display);font-weight:300;font-size:clamp(2.4rem,4vw,3.2rem);line-height:1;color:var(--arena);font-variant-numeric:tabular-nums}
.sla span{font-size:.92rem;color:#E6ECE7}
@media (max-width:760px){.sla{grid-template-columns:1fr}}

/* plataforma */
.platform{background:var(--crema)}
.pcards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.pcard{display:grid;grid-template-rows:auto 1fr;border:1px solid var(--linea);border-radius:24px;overflow:hidden;background:var(--papel);text-decoration:none;transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s,border-color .4s;min-width:0}
.pcard:hover{transform:translateY(-8px);border-color:var(--verde);box-shadow:0 30px 50px -34px rgba(45,51,46,.6)}
.pv{height:190px;position:relative;overflow:hidden;display:grid;place-items:center;padding:20px}
.pv-cli{background:linear-gradient(160deg,#E6EBE2,var(--arena-claro));align-content:center;gap:10px;place-items:stretch}
.pv-bar{display:flex;gap:5px}.pv-bar i{width:8px;height:8px;border-radius:50%;background:rgba(87,127,102,.35)}
.pv-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.pv-kpis span{background:#fff;border-radius:10px;padding:8px 10px;display:grid;box-shadow:0 8px 16px -12px rgba(45,51,46,.4)}
.pv-kpis small{font-size:.62rem;color:var(--gris)}.pv-kpis b{font-family:var(--display);font-weight:400;color:var(--verde);font-size:1.1rem}
.pv-chart{display:flex;align-items:flex-end;gap:7px;height:62px;background:#fff;border-radius:10px;padding:8px 10px}
.pv-chart i{flex:1;height:var(--h);background:var(--arena);border-radius:4px 4px 0 0;transform-origin:bottom;transition:transform .5s}
.pv-chart i:last-child{background:var(--verde)}
.pcard:hover .pv-chart i{animation:grow .9s cubic-bezier(.2,.7,.2,1) both}
.pv-emp{background:var(--verde)}
.pv-phone{width:150px;height:210px;margin-top:60px;background:var(--crema);border:6px solid var(--tinta);border-radius:26px;padding:16px 10px;display:grid;gap:6px;align-content:start;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.pcard:hover .pv-phone{transform:translateY(-34px)}
.pv-n{background:var(--verde);color:var(--arena-claro);border-radius:10px;padding:8px;font-size:.62rem;display:grid}.pv-n b{color:#fff;font-size:.8rem}
.pv-r{background:#fff;border-radius:10px;padding:6px 8px;display:flex;justify-content:space-between;font-size:.62rem;color:var(--gris)}.pv-r b{color:var(--tinta)}
.pv-ia{background:linear-gradient(160deg,var(--arena-claro),#E6EBE2);align-content:center;gap:8px;place-items:stretch}
.pv-msg{max-width:85%;font-size:.78rem;line-height:1.4;padding:8px 12px;border-radius:14px}
.pv-msg.u{justify-self:end;background:var(--verde);color:#fff;border-bottom-right-radius:4px}
.pv-msg.t{justify-self:start;background:#fff;border:1px solid var(--linea);border-bottom-left-radius:4px}
.pv-typing{justify-self:start;display:flex;gap:4px;background:#fff;border-radius:12px;padding:8px 10px}.pv-typing i{width:6px;height:6px;border-radius:50%;background:var(--gris);animation:blink 1s infinite}.pv-typing i:nth-child(2){animation-delay:.15s}.pv-typing i:nth-child(3){animation-delay:.3s}
.pc-txt{padding:22px 24px 24px;display:grid;gap:8px;align-content:start}
.pc-k{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--arena)}
.pc-txt h3{font-size:1.45rem}
.pc-txt p{font-size:.92rem;color:#596058}
.pc-txt .more{font-size:.84rem;font-weight:600;color:var(--verde)}
@media (max-width:900px){.pcards{grid-template-columns:1fr}}
@media (max-width:860px){.platform .wrap{grid-template-columns:1fr}}

/* valores */
.values{background:var(--papel);position:relative;overflow:hidden}
.values::before,.values::after{content:"";position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;pointer-events:none;animation:drift 18s ease-in-out infinite alternate}
.values::before{width:420px;height:420px;background:var(--arena-claro);left:-120px;top:-160px}
.values::after{width:360px;height:360px;background:#DCE7DF;right:-100px;bottom:-180px;animation-delay:-9s}
@keyframes drift{to{transform:translate(120px,60px) scale(1.15)}}
.values .wrap{position:relative;z-index:1}
.vals{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,3vw,32px)}
.val{display:grid;gap:14px;align-content:start;min-width:0;padding:30px 28px;border-radius:24px;border:1px solid transparent;transition:transform .45s cubic-bezier(.2,.7,.2,1),background .35s,border-color .35s,box-shadow .45s}
.val:hover{transform:translateY(-8px);background:rgba(255,255,255,.75);border-color:var(--linea);box-shadow:0 26px 44px -30px rgba(45,51,46,.5)}
.ring{width:72px;height:72px;transform:rotate(-90deg);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.val:hover .ring{transform:rotate(270deg)}
.ring circle{fill:none;stroke-width:3}
.ring .trk{stroke:var(--arena-claro)}
.ring .prog{stroke:var(--verde);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:0}
.ring .ico{fill:none;stroke:var(--arena);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transform:rotate(90deg);transform-origin:32px 32px}
.val .k{font-family:var(--display);font-size:clamp(2.2rem,3.4vw,2.8rem);font-weight:300;color:var(--verde);line-height:1.1;font-variant-numeric:tabular-nums}
.val .k i{color:var(--arena);font-style:italic;position:relative;display:table;margin-top:2px}
.val .k i::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;border-radius:2px;background:var(--arena);transform-origin:left;transform:scaleX(1);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.val p{color:#596058;font-size:.95rem}
.vals.go .val .prog{animation:ringdraw 1.8s cubic-bezier(.3,.6,.2,1) both;animation-delay:var(--d)}
.vals.go .val .k i::after{animation:under 1s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--d) + 1.2s)}
.vals.go .val{animation:rise .9s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--d)}
.vals.go .val .ico{animation:pop .6s cubic-bezier(.3,1.6,.5,1) both;animation-delay:calc(var(--d) + 1.4s)}
@keyframes ringdraw{from{stroke-dashoffset:100}}
@keyframes under{from{transform:scaleX(0)}}
@keyframes pop{from{transform:rotate(90deg) scale(.3);opacity:0}}
@media (max-width:860px){.vals{grid-template-columns:1fr}}


.vals.vpath{position:relative}
.vpath .vline{position:absolute;left:16.6%;width:66.8%;top:58px;height:40px;fill:none;stroke:var(--verde);stroke-width:2;stroke-dasharray:100;stroke-dashoffset:0;transition:stroke-dashoffset 2.2s cubic-bezier(.4,.1,.2,1);pointer-events:none;overflow:visible}
.vpath .vline path{vector-effect:non-scaling-stroke}
.vals.vpath.wait:not(.go) .vline{stroke-dashoffset:100}
.vpath .val{justify-items:center;text-align:center;position:relative;z-index:1}
.vpath .val .k i{margin-inline:auto}
.vpath .val p{max-width:30ch}
.vpath .ring{width:96px;height:96px;background:var(--papel);border-radius:50%}
.vpath .val:hover{transform:translateY(-6px);background:transparent;border-color:transparent;box-shadow:none}
@media (max-width:860px){.vpath .vline{display:none}}
/* certificaciones */
.certs .wrap{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(32px,6vw,80px);align-items:center}
.certs .wrap > *{min-width:0}
.badges{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.badge{background:var(--papel);border:1px solid var(--linea);border-radius:18px;padding:22px;display:grid;gap:6px;min-width:0}
.badge b{font-family:var(--display);font-weight:500;font-size:1.25rem;color:var(--verde)}
.badge.wide{grid-column:1/-1}
.seal{margin:0;display:grid;justify-items:center;gap:10px;padding:18px 12px;background:#fff;border:1px solid var(--linea);border-radius:18px;transition:transform .35s,box-shadow .35s;min-width:0}
.seal img{height:120px;width:auto;filter:drop-shadow(0 8px 12px rgba(45,51,46,.15))}
.seal figcaption{font-size:.8rem;color:var(--gris);text-align:center}
.seal:hover{transform:translateY(-4px) rotate(-1deg);box-shadow:0 18px 30px -22px rgba(45,51,46,.5)}
.badge span{font-size:.85rem;color:var(--gris)}
@media (max-width:860px){.certs .wrap{grid-template-columns:1fr}}
@media (max-width:420px){.badges{grid-template-columns:1fr}}

/* blog */
.blog{background:var(--papel)}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.post{display:grid;gap:14px;text-decoration:none;min-width:0}
.post .thumb{aspect-ratio:16/10;max-width:100%;border-radius:18px;background:var(--arena-claro);position:relative;overflow:hidden}
.post .thumb::after{content:"";position:absolute;inset:auto -20% -40% 30%;height:90%;border-radius:50%;background:var(--c,var(--verde));opacity:.85}
.post small{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gris)}
.post h3{font-size:1.25rem;transition:color .2s}
.post:hover h3{color:var(--verde)}
@media (max-width:860px){.posts{grid-template-columns:1fr}}

/* CTA */
.cta{text-align:center}
.cta .wrap{display:grid;justify-items:center;gap:22px}
.cta p{color:#535a52}

/* footer */
footer{background:var(--verde-osc);color:#E6ECE7;font-size:.9rem;padding-block:72px 28px}
footer .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:36px}
footer .cols > *{min-width:0}
footer h4,footer .fh{line-height:1.65;font-family:var(--body);font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--arena);margin:0 0 14px;font-weight:600}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
footer a{text-decoration:none}
footer a:hover{color:var(--crema);text-decoration:underline}
footer .brand{display:grid;gap:16px;align-content:start}
footer .brand img{height:52px;width:auto}
footer address{font-style:normal;display:grid;gap:10px;overflow-wrap:anywhere}
footer .legal{margin-top:56px;padding-top:22px;border-top:1px solid rgba(247,244,238,.18);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:.8rem;color:#DCE5DE}
footer .legal div{display:flex;flex-wrap:wrap;gap:6px 18px}
@media (max-width:900px){footer .cols{grid-template-columns:1fr 1fr}}
@media (max-width:520px){footer .cols{grid-template-columns:1fr}}

/* equipo */
.people{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.person{display:grid;gap:18px;align-content:start;min-width:0;padding:28px 26px;border:1px solid var(--linea);border-radius:20px;background:var(--crema);transition:transform .35s,border-color .35s,box-shadow .35s}
.person:hover{transform:translateY(-4px);border-color:var(--arena);box-shadow:0 18px 32px -24px rgba(45,51,46,.45)}
.person h3{font-size:1.5rem}
.person.join{background:var(--papel);border-style:dashed;border-color:var(--arena)}
.person .photo{aspect-ratio:4/5;max-width:100%;border-radius:160px 160px 18px 18px;background:linear-gradient(170deg,var(--arena-claro),#E3CFB3);display:grid;place-items:center;overflow:hidden}
.person .photo span{font-family:var(--display);font-size:4.5rem;font-weight:300;color:var(--verde)}
.person .photo svg{width:72px;height:72px}
.person.join .photo{background:var(--papel);border:1.5px dashed var(--arena)}
.pinfo{display:grid;gap:8px}
.role{font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--arena)}
.pinfo p{font-size:.93rem;color:#596058}
.li{font-size:.85rem;font-weight:600;color:var(--verde);text-decoration:none}
.li:hover{text-decoration:underline}
@media (max-width:860px){.people{grid-template-columns:1fr 1fr}}
@media (max-width:540px){.people{grid-template-columns:1fr}}

/* panel de servicio */
.panel-bg{position:fixed;inset:0;z-index:50;background:rgba(45,51,46,.45);display:flex;justify-content:flex-end}
.panel{background:var(--crema);width:min(620px,100%);height:100%;overflow-y:auto;padding:calc(28px + env(safe-area-inset-top,0px)) clamp(20px,4vw,48px) calc(40px + env(safe-area-inset-bottom,0px));display:grid;gap:22px;align-content:start;animation:slide .35s ease}
@keyframes slide{from{transform:translateX(40px);opacity:.4}to{transform:none;opacity:1}}
.panel .close{justify-self:end;background:none;border:1px solid var(--linea);border-radius:999px;padding:8px 16px;font:inherit;font-size:.85rem;color:var(--tinta);cursor:pointer}
.panel .metaphor{font-family:var(--display);font-style:italic;color:var(--arena);font-size:1.2rem}
.panel h2 b{font-weight:500;color:var(--verde)}
.panel .lead{font-size:1.05rem;color:#535a52}
.panel h4{margin:6px 0 0;font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;color:var(--verde)}
.panel ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.panel li{padding-left:22px;position:relative;font-size:.95rem}
.panel li::before{content:"";position:absolute;left:0;top:.6em;width:9px;height:9px;border-radius:50% 0;background:var(--arena);transform:rotate(-45deg)}

.post .more{font-size:.82rem;font-weight:600;color:var(--verde)}
.reader{width:min(760px,100%)}
.reader .body{display:grid;gap:14px}
.reader .body h3{font-size:1.3rem;margin-top:12px;color:var(--verde)}
.reader .body p{max-width:68ch;color:#3f463f}
.reader .endcta{margin-top:18px;padding:24px;border-radius:18px;background:var(--papel);border:1px solid var(--linea);display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between}

/* páginas */
.page .body{display:grid;gap:14px}
.page .body ul{padding-left:0}
.page .lead{font-size:1.05rem;color:#535a52}
.page .small{font-size:.82rem;color:var(--gris)}
.page a:not(.btn){color:var(--verde)}
.kv{display:grid;grid-template-columns:auto 1fr;gap:8px 20px;margin:0;padding:18px 20px;background:var(--papel);border:1px solid var(--linea);border-radius:14px}
.kv dt{font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gris);font-weight:600;padding-top:3px}
.kv dd{margin:0;overflow-wrap:anywhere}
@media (max-width:480px){.kv{grid-template-columns:1fr}.kv dd{margin-bottom:6px}}
.tbl{overflow-x:auto}
.tbl table{border-collapse:collapse;width:100%;font-size:.9rem}
.tbl th,.tbl td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--linea);vertical-align:top}
.tbl th{font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--verde)}
.faq{display:grid;gap:10px}
.faq details{background:var(--papel);border:1px solid var(--linea);border-radius:14px;padding:4px 18px;transition:background .2s}
.faq details[open]{background:#fff}
.faq summary{cursor:pointer;padding:14px 0;font-weight:500;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::after{content:"+";font-family:var(--display);font-size:1.4rem;line-height:1;color:var(--arena);transition:transform .3s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding-bottom:16px;color:#596058}
.res-grid{display:grid;gap:14px}
.res{background:var(--papel);border:1px solid var(--linea);border-radius:18px;padding:22px;display:grid;gap:8px;transition:transform .3s,box-shadow .3s}
.res:hover{transform:translateY(-3px);box-shadow:0 18px 30px -22px rgba(45,51,46,.45)}
.res-tag{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--arena);font-weight:600}
.res-cta{font-size:.85rem;font-weight:600;color:var(--verde);overflow-wrap:anywhere}
.cv-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cv-form label{display:grid;gap:6px;font-size:.82rem;font-weight:500;min-width:0}
.cv-form .full{grid-column:1/-1}
.cv-form input,.cv-form textarea{font:inherit;font-size:.95rem;padding:11px 13px;border:1px solid var(--linea);border-radius:10px;background:#fff;color:var(--tinta);width:100%}
.cv-form input:focus,.cv-form textarea:focus{outline:2px solid var(--arena);border-color:var(--arena)}
.cv-form .check{display:flex;gap:10px;align-items:flex-start;font-weight:400}
.cv-form .check input{width:auto;margin-top:3px}
.form-msg{font-size:.88rem;color:var(--verde);min-height:1.2em}
@media (max-width:560px){.cv-form{grid-template-columns:1fr}}

.qr{display:flex;flex-wrap:wrap;gap:20px;align-items:center;padding:22px;background:var(--papel);border:1px solid var(--linea);border-radius:18px}
.qr > div:last-child{flex:1 1 220px;min-width:0;display:grid;gap:6px}
.qr-img{width:170px;height:170px;flex:none;border-radius:12px;background:#fff;padding:8px;border:1px solid var(--linea)}
.qr .btn{justify-self:start;margin-top:6px}
.qr-box{width:150px;height:150px;flex:none;border:2px dashed var(--arena);border-radius:14px;display:grid;place-items:center;font-family:var(--display);font-size:1.6rem;color:var(--arena);background:#fff}

/* páginas de servicio */
.crumbs{position:static;display:flex;flex-wrap:wrap;gap:8px;font-size:.8rem;color:var(--gris);margin-bottom:28px}
.crumbs a{text-decoration:none;color:var(--verde)}
.crumbs a:hover{text-decoration:underline}
.s-hero{padding-block:clamp(36px,5vw,64px) clamp(56px,7vw,96px);background:radial-gradient(ellipse 70% 90% at 100% 0%,var(--arena-claro),transparent 70%),var(--crema)}
.s-hero-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:clamp(28px,5vw,72px);align-items:end}
.s-hero-grid:has(.s-media){grid-template-columns:1.05fr .95fr;align-items:center}
.s-media{padding:10px 30px 30px 0}
.s-media .frame .ill{aspect-ratio:4/3.4}
.s-facts.row{grid-template-columns:repeat(3,1fr);margin-top:6px}
.s-facts.row div{padding:14px 16px}
.s-facts.row strong{font-size:1.45rem}
.s-facts.row span{font-size:.8rem}
.s-hero-grid > *{min-width:0}
.s-hero-copy{display:grid;gap:22px}
.s-hero h1{font-size:clamp(2.2rem,4.8vw,3.9rem)}
.s-hero .lead{font-size:1.1rem;color:#535a52}
.s-hero h1,.s-hero-copy > *{animation:rise .9s cubic-bezier(.2,.7,.2,1) both}
.s-hero-copy > *:nth-child(2){animation-delay:.08s}.s-hero-copy > *:nth-child(3){animation-delay:.16s}.s-hero-copy > *:nth-child(4){animation-delay:.24s}
.s-facts{display:grid;gap:12px}
.s-facts div{background:var(--papel);border:1px solid var(--linea);border-radius:18px;padding:18px 22px;display:grid;gap:2px;animation:rise .9s cubic-bezier(.2,.7,.2,1) both}
.s-facts div:nth-child(1){animation-delay:.3s}.s-facts div:nth-child(2){animation-delay:.42s}.s-facts div:nth-child(3){animation-delay:.54s}
.s-facts strong{font-family:var(--display);font-weight:400;font-size:2rem;color:var(--verde);line-height:1.1}
.s-facts span{font-size:.88rem;color:var(--gris)}
@media (max-width:860px){.s-hero-grid,.s-hero-grid:has(.s-media){grid-template-columns:1fr}.s-facts{grid-template-columns:repeat(3,1fr)}.s-media{max-width:440px;padding:0 24px 24px 0}}
@media (max-width:560px){.s-facts{grid-template-columns:1fr}}
.s-why{background:var(--verde);color:var(--crema);padding-block:clamp(40px,5vw,64px)}
.s-why p{font-family:var(--display);font-size:clamp(1.25rem,2.4vw,1.7rem);font-weight:300;line-height:1.4;max-width:none}
.s-why .metaphor{display:block;font-family:var(--body);font-size:.74rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--arena);margin-bottom:12px}
.s-pains{background:var(--papel)}
.pains{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.pains li{position:relative;padding:24px 24px 24px 62px;border:1px solid var(--linea);border-radius:18px;background:var(--crema);font-family:var(--display);font-size:1.12rem;line-height:1.45;transition:border-color .3s,transform .3s}
.pains li::before{content:"“";position:absolute;left:20px;top:10px;font-size:3rem;color:var(--arena);line-height:1}
.pains li:hover{border-color:var(--arena);transform:translateY(-3px)}
@media (max-width:720px){.pains{grid-template-columns:1fr}}
.what{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--linea)}
.w-item{padding:28px 26px 28px 0;border-bottom:1px solid var(--linea);display:grid;gap:8px;align-content:start;min-width:0}
.w-item h3{font-size:1.3rem;position:relative;padding-left:22px}
.w-item h3::before{content:"";position:absolute;left:0;top:.45em;width:10px;height:10px;border-radius:50% 0;background:var(--arena);transform:rotate(-45deg);transition:transform .4s,background .3s}
.w-item:hover h3::before{transform:rotate(135deg) scale(1.3);background:var(--verde)}
.w-item p{color:#596058;font-size:.95rem;padding-left:22px}
@media (max-width:900px){.what{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.what{grid-template-columns:1fr}}
.s-steps{background:var(--verde);color:var(--crema)}
.s-steps h2,.s-steps h3{color:var(--crema)}
.s-steps .eyebrow{color:var(--arena)}
.s-steps .sec-head p{color:#E6ECE7}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px;counter-reset:s}
.steps li{display:grid;gap:10px;align-content:start;padding:26px 22px;border:1px solid rgba(247,244,238,.25);border-radius:20px;position:relative;min-width:0;transition:background .3s,transform .3s}
.steps li:hover{background:rgba(247,244,238,.07);transform:translateY(-4px)}
.steps .n{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--arena);color:var(--tinta);font-family:var(--display);font-size:1.3rem}
.steps p{color:#E6ECE7;font-size:.93rem}
@media (max-width:900px){.steps{grid-template-columns:repeat(2,1fr)}}
@media (max-width:540px){.steps{grid-template-columns:1fr}}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.plan{background:var(--papel);border:1px solid var(--linea);border-radius:22px;padding:30px 26px;display:grid;grid-template-rows:auto auto 1fr auto;gap:14px;min-width:0;transition:transform .35s,box-shadow .35s}
.plan:hover{transform:translateY(-6px);box-shadow:0 24px 40px -28px rgba(45,51,46,.55)}
.plan.featured{background:var(--verde);color:var(--crema);border-color:var(--verde)}
.plan.featured h3{color:var(--crema)}
.plan.featured p,.plan.featured li{color:#E6ECE7}
.plan.featured .btn-solid{background:var(--crema);color:var(--verde);border-color:var(--crema)}
.plan h3{font-size:1.8rem}
.plan{grid-template-rows:auto auto auto auto 1fr auto}
.pl-resp{justify-self:start;font-size:.8rem;font-weight:600;padding:.4em .9em;border-radius:999px;background:var(--arena-claro);color:var(--verde-osc)}
.plan.featured .pl-resp{background:rgba(247,244,238,.15);color:var(--crema)}
.pl-no{border-top:1px dashed var(--linea);padding-top:12px;display:grid;gap:6px;align-self:end}
.plan.featured .pl-no{border-color:rgba(247,244,238,.3)}
.pl-no b{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gris)}
.plan.featured .pl-no b{color:#E6ECE7}
.pl-no li{font-size:.82rem;color:var(--gris)}
.pl-no li::before{content:"–"!important;color:var(--gris)!important}
.plan.featured .pl-no li{color:#E6ECE7}
.pl-foot{margin-top:22px;font-size:.88rem;color:#596058;max-width:none}
.s-facts .f-une{display:flex;align-items:center;gap:10px}
.s-facts .f-une strong{font-size:1.2rem}
.f-une img{height:46px;width:auto}
.f-une > span{display:grid}
.plan p{color:#596058;font-size:.93rem}
.plan ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;align-content:start}
.plan li{font-size:.92rem;padding-left:22px;position:relative}
.plan li::before{content:"✓";position:absolute;left:0;color:var(--arena);font-weight:600}
@media (max-width:860px){.plans{grid-template-columns:1fr}}
.s-faq{background:var(--papel)}
.s-faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(28px,5vw,72px)}
.s-faq-grid > *{min-width:0}
.s-faq-grid p{color:#596058;overflow-wrap:anywhere}
@media (max-width:860px){.s-faq-grid{grid-template-columns:1fr}}
.s-cta{text-align:center;background:radial-gradient(ellipse 60% 80% at 50% 100%,var(--arena-claro),transparent 70%),var(--crema)}
.s-cta .wrap{display:grid;justify-items:center;gap:20px}
.s-cta h2{font-size:clamp(2rem,4vw,3.2rem)}
.s-cta p{color:#535a52}
.s-cta .hero-actions{align-items:center}
.cta-mail{font-size:.9rem;color:var(--gris);overflow-wrap:anywhere}
.s-others{padding-block:48px 72px}
.s-others .wrap{display:grid;gap:18px}
.others{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.others a{display:grid;gap:2px;padding:18px;border:1px solid var(--linea);border-radius:16px;text-decoration:none;background:var(--papel);transition:transform .3s,border-color .3s,background .3s;min-width:0}
.others a:hover{transform:translateY(-4px);border-color:var(--verde);background:#fff}
.others b{font-weight:600;font-size:.92rem;color:var(--verde)}
.others i{font-family:var(--display);color:var(--arena)}
@media (max-width:900px){.others{grid-template-columns:repeat(2,1fr)}}
.doc-hero{padding-block:clamp(36px,5vw,64px) 40px}
.doc-hero .wrap{display:grid;gap:14px}
.doc-hero h1{font-size:clamp(2rem,4vw,3.2rem);max-width:22ch}
.doc{padding-block:24px clamp(56px,8vw,96px)}
.doc-body{max-width:760px;display:grid;gap:16px}
.doc-body h3{font-size:1.35rem;margin-top:14px;color:var(--verde)}
.doc-body p,.doc-body li{color:#3f463f}
.doc-body ul{padding-left:20px;display:grid;gap:6px}
.doc-body .lead{font-size:1.08rem;color:#535a52}
.doc-body .small{font-size:.82rem;color:var(--gris)}
.doc-body a:not(.btn){color:var(--verde)}
#view{min-height:60vh}

/* plataforma */
.p-mod{padding-top:clamp(48px,6vw,80px)}
.tabs{display:flex;flex-wrap:wrap;gap:8px;padding:6px;background:var(--papel);border:1px solid var(--linea);border-radius:999px;width:fit-content;max-width:100%;margin-bottom:48px}
.tabs button{font:inherit;font-size:.9rem;font-weight:500;padding:.75em 1.4em;border-radius:999px;border:0;background:none;color:var(--tinta);cursor:pointer;transition:background .25s,color .25s}
.tabs button[aria-selected=true]{background:var(--verde);color:var(--crema)}
.tabs button:not([aria-selected=true]):hover{background:var(--arena-claro)}
.tp{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);align-items:center;animation:rise .6s cubic-bezier(.2,.7,.2,1) both}
.tp > *{min-width:0}
.tp-copy{display:grid;gap:18px}
.tp-copy p{color:#535a52}
.ticks{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ticks li{padding-left:28px;position:relative;font-size:.95rem;color:#4a5149}
.ticks li::before{content:"";position:absolute;left:0;top:.35em;width:16px;height:16px;border-radius:50%;background:var(--arena-claro);box-shadow:inset 0 0 0 5px var(--verde)}
.ticks b{color:var(--tinta);font-weight:600}
@media (max-width:900px){.tp{grid-template-columns:1fr}}
.sample{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gris);justify-self:end}
.mock{background:#fff;border:1px solid var(--linea);border-radius:20px;box-shadow:0 40px 70px -40px rgba(45,51,46,.5);overflow:hidden;transform:perspective(1200px) rotateY(-6deg) rotateX(2deg);transition:transform .6s}
.mock:hover{transform:none}
.mock-bar{display:flex;gap:6px;align-items:center;padding:12px 16px;background:var(--crema);border-bottom:1px solid var(--linea)}
.mock-bar i{width:10px;height:10px;border-radius:50%;background:var(--linea)}
.mock-bar span{margin-left:10px;font-size:.78rem;color:var(--gris)}
.mock-body{padding:22px;display:grid;gap:18px}
.mk-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:center}
.chip{font-size:.74rem;font-weight:600;padding:5px 10px;border-radius:999px}
.chip.ok{background:#E3EDE6;color:var(--verde-osc)}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.kpis div{background:var(--crema);border-radius:12px;padding:12px;display:grid;gap:2px;min-width:0}
.kpis small{font-size:.72rem;color:var(--gris)}
.kpis strong{font-family:var(--display);font-weight:400;font-size:1.5rem;color:var(--verde);font-variant-numeric:tabular-nums}
.bars{display:flex;align-items:flex-end;gap:8px;height:90px;padding:8px 4px;border-bottom:1px solid var(--linea)}
.bars span{flex:1;height:var(--h);background:linear-gradient(180deg,var(--arena),var(--arena-claro));border-radius:6px 6px 0 0;transform-origin:bottom;animation:grow 1.2s cubic-bezier(.2,.7,.2,1) both}
.bars span:nth-child(2){animation-delay:.06s}.bars span:nth-child(3){animation-delay:.12s}.bars span:nth-child(4){animation-delay:.18s}.bars span:nth-child(5){animation-delay:.24s}.bars span:nth-child(6){animation-delay:.3s}.bars span:nth-child(7){animation-delay:.36s;background:linear-gradient(180deg,var(--verde),#9DB8A7)}
@keyframes grow{from{transform:scaleY(.15)}}
.mk-list{display:grid;gap:8px}
.mk-list div{display:flex;align-items:center;gap:10px;font-size:.85rem;padding:10px 12px;border:1px solid var(--linea);border-radius:10px}
.mk-list em{margin-left:auto;font-style:normal;font-size:.75rem;color:var(--gris);white-space:nowrap}
.dot{width:8px;height:8px;border-radius:50%;flex:none}.dot.g{background:var(--verde)}.dot.a{background:var(--arena)}
.phone{justify-self:center;width:min(300px,100%);background:var(--tinta);border-radius:42px;padding:12px;box-shadow:0 40px 70px -40px rgba(45,51,46,.6);animation:float 7s ease-in-out infinite}
.ph-notch{width:90px;height:22px;background:var(--tinta);border-radius:0 0 14px 14px;margin:-12px auto 0;position:relative;z-index:1}
.ph-body{background:var(--crema);border-radius:32px;padding:30px 16px 18px;display:grid;gap:10px;margin-top:-10px}
.ph-body > small:first-child{font-family:var(--display);font-size:1.15rem;color:var(--tinta)}
.ph-card{background:#fff;border-radius:16px;padding:12px 14px;display:grid;gap:4px;border:1px solid var(--linea)}
.ph-card span{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gris)}
.ph-card b{font-weight:600;font-size:.95rem}
.ph-card em{font-style:normal;font-size:.78rem;color:var(--verde);font-weight:600}
.ph-card.hl{background:var(--verde);border-color:var(--verde)}.ph-card.hl span,.ph-card.hl em{color:var(--arena-claro)}.ph-card.hl b{color:#fff}
.meter{height:6px;background:var(--arena-claro);border-radius:6px;overflow:hidden}.meter i{display:block;height:100%;width:var(--w);background:var(--arena);border-radius:6px}
.chat{background:#fff;border:1px solid var(--linea);border-radius:22px;box-shadow:0 40px 70px -40px rgba(45,51,46,.5);display:grid;grid-template-rows:auto 1fr auto auto;overflow:hidden}
.chat-head{display:flex;gap:12px;align-items:center;padding:14px 18px;background:var(--verde);color:var(--crema)}
.chat-head small{display:block;color:var(--arena-claro);font-size:.75rem}
.av{width:38px;height:38px;border-radius:50%;background:var(--arena);color:var(--tinta);display:grid;place-items:center;font-family:var(--display);font-size:1.2rem}
.chat-body{height:340px;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:10px;background:var(--crema)}
.msg{max-width:82%;padding:10px 14px;border-radius:16px;font-size:.9rem;line-height:1.5;animation:rise .4s cubic-bezier(.2,.7,.2,1) both}
.msg.u{align-self:flex-end;background:var(--verde);color:#fff;border-bottom-right-radius:4px}
.msg.t{align-self:flex-start;background:#fff;border:1px solid var(--linea);border-bottom-left-radius:4px}
.typing{display:flex;gap:4px}.typing i{width:6px;height:6px;border-radius:50%;background:var(--gris);animation:blink 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes blink{50%{opacity:.25}}
.chat-input{display:flex;justify-content:space-between;align-items:center;margin:12px;padding:10px 14px;border:1px solid var(--linea);border-radius:999px;color:var(--gris);font-size:.88rem}
.chat-input i{font-style:normal;width:28px;height:28px;border-radius:50%;background:var(--verde);color:#fff;display:grid;place-items:center}
.chat .sample{padding:0 16px 12px}
.p-trust{background:var(--papel)}
.trust{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.trust div{border:1px solid var(--linea);background:var(--crema);border-radius:18px;padding:22px;display:grid;gap:6px;transition:transform .3s,border-color .3s;min-width:0}
.trust div:hover{transform:translateY(-4px);border-color:var(--arena)}
.trust b{font-family:var(--display);font-weight:500;font-size:1.3rem;color:var(--verde)}
.trust span{font-size:.9rem;color:#596058}
@media (max-width:860px){.trust{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.trust{grid-template-columns:1fr}.kpis{grid-template-columns:1fr 1fr}}

/* equipo, blog, contacto */
.team-page{padding-top:clamp(40px,5vw,72px)}
.post .ex{font-size:.92rem;color:#596058}
.blog-page{padding-top:clamp(36px,4vw,56px)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px}
.chip-f{font:inherit;font-size:.85rem;font-weight:500;padding:.6em 1.2em;border-radius:999px;border:1px solid var(--linea);background:var(--papel);color:var(--tinta);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.chip-f:hover{border-color:var(--verde)}
.chip-f.on{background:var(--verde);color:var(--crema);border-color:var(--verde)}
.newsletter{background:var(--verde);color:var(--crema)}
.newsletter .wrap{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}
.newsletter .wrap > *{min-width:0}
.newsletter h2{color:var(--crema)}.newsletter .eyebrow{color:var(--arena)}.newsletter p{color:#E6ECE7}
.newsletter .wrap > div{display:grid;gap:14px}
.nl-form{display:flex;flex-wrap:wrap;gap:10px}
.nl-form input{flex:1 1 220px;min-width:0;font:inherit;padding:.9em 1.2em;border-radius:999px;border:1px solid rgba(247,244,238,.4);background:rgba(247,244,238,.08);color:var(--crema)}
.nl-form input::placeholder{color:#E6ECE7}
.nl-form .btn-solid{background:var(--crema);color:var(--verde);border-color:var(--crema)}
.nl-form .form-msg{flex-basis:100%;color:var(--arena-claro)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media (max-width:820px){.newsletter .wrap{grid-template-columns:1fr}}
.contact-page{padding-top:clamp(36px,4vw,56px)}
.contact-grid{display:grid;grid-template-columns:1.4fr .9fr;gap:clamp(28px,4vw,56px);align-items:start}
.contact-grid > *{min-width:0}
.ct-form{background:var(--papel);border:1px solid var(--linea);border-radius:24px;padding:clamp(20px,3vw,36px)}
.cv-form select{font:inherit;font-size:.95rem;padding:11px 13px;border:1px solid var(--linea);border-radius:10px;background:#fff;color:var(--tinta);width:100%}
.ct-side{display:grid;gap:16px}
.ct-card{border:1px solid var(--linea);border-radius:20px;padding:24px;display:grid;gap:14px;background:var(--crema)}
.ct-card h3{font-size:1.3rem}
.ct-card .kv{background:none;border:0;padding:0}
.mini-steps{margin:0;padding-left:20px;display:grid;gap:10px;font-size:.92rem;color:#4a5149}
.mini-steps b{color:var(--tinta)}
@media (max-width:900px){.contact-grid{grid-template-columns:1fr}}
.gdpr{font-size:.8rem;line-height:1.5;color:#596058;background:var(--crema);border:1px solid var(--linea);border-radius:14px;padding:16px 18px;display:grid;gap:10px}
.gdpr b{font-size:.82rem;color:var(--tinta)}
.gdpr dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0}
.gdpr dt{font-weight:600;color:var(--verde);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;padding-top:1px}
.gdpr dd{margin:0;min-width:0}
.gdpr a,.cv-form .check a{color:var(--verde)}
.req{color:var(--gris);font-size:.78rem}
@media (max-width:520px){.gdpr dl{grid-template-columns:1fr}.gdpr dd{margin-bottom:4px}}

/* captación */
.nav-cta{gap:14px}
.client-link{font-size:.82rem;font-weight:500;text-decoration:none;color:var(--gris)}
.client-link:hover{color:var(--verde)}
.nav-quote{padding:.7em 1.2em;font-size:.82rem}
@media (max-width:1020px){.client-link{display:none}}
@media (max-width:420px){.nav-quote{padding:.6em .9em;font-size:.76rem}}
.wa{position:fixed;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:40;display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:999px;background:#25D366;color:#fff;text-decoration:none;font-weight:600;font-size:.88rem;box-shadow:0 14px 30px -14px rgba(0,0,0,.45);transition:transform .25s}
.wa:hover{transform:translateY(-3px)}
.wa svg{width:22px;height:22px;fill:#fff}
@media (max-width:600px){.wa span{display:none}.wa{padding:13px}}
.tools{background:var(--crema);padding-block:clamp(56px,7vw,96px)}
.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.tool{display:flex;gap:20px;align-items:flex-start;padding:28px;border-radius:22px;border:1px solid var(--linea);background:var(--papel);text-decoration:none;transition:transform .35s,border-color .35s,box-shadow .35s;min-width:0}
.tool > div{display:grid;gap:8px;min-width:0}
.tool:hover{transform:translateY(-5px);border-color:var(--verde);box-shadow:0 24px 40px -30px rgba(45,51,46,.55)}
.tool h3{font-size:1.4rem}
.tool p{font-size:.93rem;color:#596058}
.tool .more{font-size:.85rem;font-weight:600;color:var(--verde)}
.t-ic{flex:none;width:54px;height:54px;border-radius:16px;background:var(--verde);color:var(--crema);display:grid;place-items:center;font-family:var(--display);font-size:1.6rem;transition:transform .4s}
.tool:hover .t-ic{transform:rotate(-8deg) scale(1.06)}
@media (max-width:760px){.tool-grid{grid-template-columns:1fr}}
.doc-body .tool-grid{margin-bottom:12px}
.founder{background:var(--verde-osc);color:var(--crema);padding-block:clamp(56px,7vw,96px)}
.founder-grid{display:grid;grid-template-columns:auto 1fr auto;gap:clamp(24px,4vw,56px);align-items:center}
.founder-grid > *{min-width:0}
.mono{width:120px;height:120px;border-radius:50%;border:2px solid var(--arena);display:grid;place-items:center;font-family:var(--display);font-size:3.4rem;color:var(--arena)}
.founder blockquote{margin:0;display:grid;gap:16px}
.founder blockquote p{font-family:var(--display);font-weight:300;font-size:clamp(1.5rem,3vw,2.3rem);line-height:1.3;max-width:30ch;color:var(--crema)}
.founder footer{display:grid;gap:2px}.founder footer b{font-weight:600}.founder footer span{font-size:.85rem;color:#E6ECE7}
.founder .btn-line{color:var(--crema);border-color:var(--arena)}.founder .btn-line:hover{background:var(--arena);color:var(--tinta)}
@media (max-width:820px){.founder-grid{grid-template-columns:1fr}.mono{width:84px;height:84px;font-size:2.4rem}}
.calc-sec,.diag-sec{padding-top:clamp(32px,4vw,48px)}
.calc,.diag{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,4vw,48px);align-items:start}
.calc > *,.diag > *{min-width:0}
.calc-in{display:grid;gap:22px;background:var(--papel);border:1px solid var(--linea);border-radius:24px;padding:clamp(20px,3vw,34px)}
.fld{display:grid;gap:8px}
.fld label{font-weight:600;font-size:.92rem}
.fld small{font-size:.8rem;color:var(--gris)}
.dual{display:grid;grid-template-columns:1fr 96px;gap:14px;align-items:center}
.dual input[type=number]{font:inherit;font-size:1rem;padding:9px 10px;border:1px solid var(--linea);border-radius:10px;background:#fff;color:var(--tinta);width:100%;font-variant-numeric:tabular-nums}
input[type=range]{accent-color:var(--verde);width:100%}
.calc-out,.diag-out{position:sticky;top:96px;background:var(--verde);color:var(--crema);border-radius:24px;padding:clamp(22px,3vw,34px);display:grid;gap:16px}
.calc-out .eyebrow,.diag-out .eyebrow{color:var(--arena)}
.big{font-family:var(--display);font-weight:300;font-size:clamp(2.6rem,5vw,3.8rem);line-height:1;font-variant-numeric:tabular-nums}
.bar{display:flex;height:12px;border-radius:12px;overflow:hidden;background:rgba(247,244,238,.15)}
.bar i{display:block;height:100%;transition:width .5s cubic-bezier(.2,.7,.2,1)}
#bTime,.sw.t{background:var(--arena)}#bSoft,.sw.s{background:#E9DCC7}#bErr,.sw.e{background:#C77D5A}#bFric,.sw.f{background:#9DB8A7}
.flabel{font-weight:600;font-size:.92rem}
.calc-in .opts span{font-size:.82rem}
.fric{background:rgba(247,244,238,.1);border-radius:14px;padding:12px 14px;display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center}
.fric span{font-size:.78rem;color:#E6ECE7}.fric b{font-family:var(--display);font-weight:400;font-size:1.2rem;color:var(--arena)}
.fric p{grid-column:1/-1;font-size:.84rem;color:#E6ECE7}
.legend{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:.86rem}
.legend li{display:flex;align-items:center;gap:8px}.legend span{margin-left:auto;font-variant-numeric:tabular-nums}
.sw{width:10px;height:10px;border-radius:3px;display:inline-block}
.kpi2{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.kpi2 div{background:rgba(247,244,238,.08);border-radius:14px;padding:12px;display:grid;gap:2px;min-width:0}
.kpi2 strong{font-family:var(--display);font-weight:400;font-size:1.5rem;font-variant-numeric:tabular-nums}
.kpi2 span{font-size:.74rem;color:#E6ECE7}
.note{font-size:.92rem;color:#E6ECE7}
.lead-form{background:var(--crema);color:var(--tinta);border-radius:18px;padding:18px;display:grid;gap:10px}
.lead-form p{font-size:.86rem;color:#596058}
.lf-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.lead-form input[type=email],.lead-form input:not([type]),.res-form input[type=email]{font:inherit;font-size:.92rem;padding:10px 12px;border:1px solid var(--linea);border-radius:10px;background:#fff;color:var(--tinta);width:100%;min-width:0}
.lead-form .check,.res-form .check{display:flex;gap:8px;align-items:flex-start;font-size:.78rem;color:#596058}
.lead-form .check a,.res-form .check a{color:var(--verde)}
.lead-form .form-msg{color:var(--verde)}
@media (max-width:480px){.lf-row{grid-template-columns:1fr}.kpi2{grid-template-columns:1fr 1fr}}
.disclaimer{font-size:.78rem;color:var(--gris);margin-top:18px;max-width:80ch}
@media (max-width:900px){.calc,.diag{grid-template-columns:1fr}.calc-out,.diag-out{position:static}}
.diag-q{display:grid;gap:12px}
.dq{border:1px solid var(--linea);border-radius:18px;background:var(--papel);padding:18px 20px;margin:0;display:grid;gap:8px;transition:border-color .3s,opacity .3s}
.dq legend{font-weight:600;font-size:.98rem;display:flex;gap:10px;align-items:baseline;padding:0;float:left;width:100%}
.dq legend + *{clear:both}
.dn{font-family:var(--display);color:var(--arena);font-size:1.1rem}
.dq p{font-size:.82rem;color:var(--gris)}
.dq.na{opacity:.45}
.dq.answered{border-color:var(--arena)}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opts label{cursor:pointer}
.opts input{position:absolute;opacity:0;pointer-events:none}
.opts span{display:inline-block;padding:.5em 1.1em;border-radius:999px;border:1px solid var(--linea);font-size:.86rem;background:#fff;transition:background .2s,color .2s,border-color .2s}
.opts input:checked + span{background:var(--verde);color:var(--crema);border-color:var(--verde)}
.opts input:focus-visible + span{outline:2px solid var(--arena);outline-offset:2px}
.gauge{position:relative;width:150px;height:150px;justify-self:center}
.gauge svg{width:100%;height:100%;transform:rotate(-90deg)}
.gauge circle{fill:none;stroke-width:10}
.g-trk{stroke:rgba(247,244,238,.15)}
.g-val{stroke:var(--arena);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset .8s cubic-bezier(.2,.7,.2,1)}
.gauge > div{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
.gauge strong{font-family:var(--display);font-size:2.6rem;font-weight:300;line-height:1}
.gauge > div > span{font-size:.85rem;color:#E6ECE7}
.d-msg{font-size:.95rem}
.d-open{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:.86rem}
.d-open li{padding:8px 12px;border-radius:10px;background:rgba(247,244,238,.08)}
.d-open li b{color:var(--arena);font-weight:600}
.res-form{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:6px}
.res-form .check,.res-form .form-msg{grid-column:1/-1}
.res-form .btn{padding:.7em 1.1em;font-size:.82rem}
.res-form .form-msg{font-size:.82rem;color:var(--verde)}
@media (max-width:480px){.res-form{grid-template-columns:1fr}}

/* comparativa y método */
.compare{background:var(--papel)}
.cmp{border-radius:24px;overflow:hidden;border:1px solid var(--linea)}
.cr{display:grid;grid-template-columns:1fr 1fr}
.cr > div{padding:18px 24px;display:flex;gap:12px;align-items:baseline;font-size:.98rem;min-width:0}
.cr + .cr > div{border-top:1px solid var(--linea)}
.c-old{color:var(--gris);background:var(--crema)}
.c-new{background:#fff;color:var(--tinta);font-weight:500}
.c-old span{color:#C77D5A;font-weight:700}.c-new span{color:var(--verde);font-weight:700}
.ch > div{font-size:.74rem;letter-spacing:.2em;text-transform:uppercase;font-weight:600}
.ch .c-new{background:var(--verde);color:var(--crema)}
.cr:not(.ch) .c-new{transition:background .3s,padding-left .3s}
.cr:not(.ch):hover .c-new{background:var(--arena-claro);padding-left:30px}
@media (max-width:620px){.cr > div{padding:14px 14px;font-size:.88rem}}
.method{background:var(--crema)}
.orbit{display:grid;grid-template-columns:280px 1fr;gap:clamp(28px,5vw,64px);align-items:center}
.orbit > *{min-width:0}
.o-core{position:relative;width:100%;max-width:280px;aspect-ratio:1}
.o-core svg{width:100%;height:100%;transform:rotate(-90deg)}
.o-ring{fill:none;stroke:var(--arena-claro);stroke-width:6}
.o-run{fill:none;stroke:var(--verde);stroke-width:6;stroke-linecap:round;stroke-dasharray:25 75;animation:orbit 8s linear infinite}
@keyframes orbit{to{stroke-dashoffset:-100}}
.o-core > div{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
.o-core b{font-family:var(--display);font-weight:400;font-size:2rem;color:var(--verde)}
.o-core span{font-family:var(--display);font-style:italic;color:var(--arena);font-size:1.2rem}
.o-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:16px}
.o-steps li{background:var(--papel);border:1px solid var(--linea);border-radius:20px;padding:22px;display:grid;gap:6px;transition:transform .35s,border-color .35s,box-shadow .35s;min-width:0}
.o-steps li:hover{transform:translateY(-5px);border-color:var(--verde);box-shadow:0 20px 34px -26px rgba(45,51,46,.5)}
.mn{font-family:var(--display);font-size:1.6rem;color:var(--arena);line-height:1}
.o-steps h3{font-size:1.35rem}
.o-steps p{font-size:.92rem;color:#596058}
.o-steps em{font-family:var(--display);color:var(--verde);font-size:.95rem}
.o-steps li{animation:pulse 8s ease-in-out infinite}
.o-steps .m1{animation-delay:2s}.o-steps .m2{animation-delay:4s}.o-steps .m3{animation-delay:6s}
@keyframes pulse{0%,20%{border-color:var(--verde);box-shadow:0 0 0 3px rgba(87,127,102,.12)}25%,100%{border-color:var(--linea);box-shadow:none}}
@media (max-width:900px){.orbit{grid-template-columns:1fr}.o-core{max-width:200px;justify-self:center}}
@media (max-width:560px){.o-steps{grid-template-columns:1fr}}
.f-photo{margin:0;width:190px;aspect-ratio:4/5;border-radius:120px 120px 18px 18px;overflow:hidden;border:3px solid var(--arena);box-shadow:0 30px 50px -30px rgba(0,0,0,.6)}
.f-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.founder:hover .f-photo img{transform:scale(1.04)}
@media (max-width:820px){.f-photo{width:150px}}
.ill{aspect-ratio:4/3;max-width:100%;background-size:cover;background-position:center;border-radius:0;position:relative;z-index:1}
.frame{position:relative}
.frame .ill{box-shadow:26px 26px 0 #E6EBE2;transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s}
.frame:hover .ill{transform:translate(-4px,-4px);box-shadow:32px 32px 0 #E6EBE2}
.frame.f-g .ill{box-shadow:28px 28px 0 var(--verde-osc)}
.frame.f-g:hover .ill{transform:translate(-4px,-4px);box-shadow:32px 32px 0 var(--verde-osc)}
.frame.f-a .ill{box-shadow:26px 26px 0 var(--arena)}
.frame.f-a:hover .ill{box-shadow:32px 32px 0 var(--arena)}
.vlabel{position:absolute;z-index:2;left:-14px;bottom:28px;background:var(--verde);color:var(--crema);padding:12px 18px;font-size:.86rem;font-weight:500;box-shadow:0 14px 26px -16px rgba(0,0,0,.6)}
.vlabel b{font-family:var(--display);font-weight:400;font-size:1.35rem;color:var(--arena);display:block;line-height:1.1}
.chipbadge{position:absolute;z-index:2;top:-30px;right:-18px;transform:rotate(8deg);width:118px;height:118px;border-radius:50%;background:var(--arena);color:var(--tinta);display:grid;place-content:center;text-align:center;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1.3;padding:12px;box-shadow:0 16px 30px -18px rgba(0,0,0,.5);animation:spin-in 1s cubic-bezier(.3,1.4,.5,1) both}
@keyframes spin-in{from{transform:rotate(-30deg) scale(.6);opacity:0}to{transform:rotate(8deg)}}
.vl-seal{display:flex;align-items:center;gap:14px;padding:12px 20px 12px 12px;animation:sealin 1s cubic-bezier(.3,1.4,.5,1) .2s both}
.vl-seal img{height:74px;width:auto;background:#fff;border-radius:10px;padding:6px 8px}
.vl-seal b{font-size:1.25rem}
@keyframes sealin{from{transform:translateY(16px);opacity:0}}
.une-float{position:absolute;z-index:2;top:-26px;right:24px;margin:0;display:grid;justify-items:center;gap:6px;background:#fff;padding:12px 14px 10px;border-radius:16px;box-shadow:0 20px 34px -20px rgba(45,51,46,.55);transform:rotate(4deg);animation:sealin 1s cubic-bezier(.3,1.4,.5,1) both;transition:transform .4s}
.une-float:hover{transform:rotate(0) scale(1.04)}
.une-float img{height:96px;width:auto}
.une-float figcaption{font-size:.68rem;line-height:1.3;text-align:center;color:var(--gris);font-weight:500}

@media (max-width:600px){.une-float{top:-18px;right:8px;padding:8px 10px}.une-float img{height:64px}.une-float figcaption{display:none}}
/* filas de servicio con ilustración */
.feat-row{padding-block:clamp(64px,8vw,110px)}
.fr{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,6vw,90px);align-items:center}
.fr > *{min-width:0}
.fr.rev .frame{order:2}
.fr-copy{display:grid;gap:20px}
.fr-copy h2{font-size:clamp(2.1rem,4.2vw,3.4rem);line-height:1.05}
.fr-copy h2 em{font-style:italic}
.fr-copy .lead{color:#535a52;font-size:1.05rem}
.fr-list{display:grid;gap:0;border-top:1px solid var(--linea)}
.fr-item{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;padding:18px 0;border-bottom:1px solid var(--linea);text-decoration:none;transition:padding-left .3s}
.fr-item:hover{padding-left:8px}
.fr-item .ic{grid-row:span 2;width:40px;height:40px;border-radius:12px;background:var(--arena-claro);display:grid;place-items:center;font-family:var(--display);color:var(--verde);font-size:1.1rem}
.fr-item b{font-size:1.05rem}
.fr-item span{font-size:.9rem;color:#596058}
.fr-note{background:var(--verde);color:var(--crema);padding:14px 18px;border-radius:6px;font-size:.88rem}
.feat-row.green{background:var(--verde);color:var(--crema)}
.feat-row.green h2,.feat-row.green .fr-item b{color:var(--crema)}
.feat-row.green .lead,.feat-row.green .fr-item span{color:#E6ECE7}
.feat-row.green .eyebrow{color:var(--arena)}
.feat-row.green .fr-list,.feat-row.green .fr-item{border-color:rgba(247,244,238,.25)}
.feat-row.green .fr-item .ic{background:rgba(247,244,238,.12);color:var(--arena)}
.feat-row.green h2 em{color:var(--arena)}
@media (max-width:900px){.fr{grid-template-columns:1fr}.fr.rev .frame{order:0}.chipbadge{width:92px;height:92px;font-size:.6rem;right:-6px}}
.s-ill{padding-block:0 clamp(48px,6vw,80px);background:var(--crema)}
.s-ill .frame{max-width:940px;margin-inline:auto;padding-right:30px}
.cases{background:var(--crema)}
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.case{background:var(--papel);border:1px solid var(--linea);border-radius:24px;padding:26px;display:grid;gap:12px;align-content:start;position:relative;transition:transform .35s,box-shadow .35s,border-color .35s;min-width:0}
.case:hover{transform:translateY(-6px);border-color:var(--verde);box-shadow:0 26px 40px -30px rgba(45,51,46,.55)}
.case-top{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.chip-s{background:var(--verde);color:var(--crema);font-size:.74rem;font-weight:600;padding:.35em .9em;border-radius:999px}
.case-size{font-size:.8rem;color:var(--gris)}
.case-line{font-family:var(--display);font-style:italic;color:var(--arena);font-size:1.05rem}
.case dl{margin:0;display:grid;gap:4px}
.case dt{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--verde);margin-top:8px}
.case dd{margin:0;font-size:.92rem;color:#4a5149}
.case .res-txt{font-family:var(--display);font-size:1.12rem;color:var(--tinta);line-height:1.35}
.draft{justify-self:start;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:#C77D5A;border:1px dashed #C77D5A;border-radius:6px;padding:2px 8px}
@media (max-width:980px){.case-grid{grid-template-columns:1fr}}
.cal-btn{display:inline-flex;align-items:center;gap:8px}
.cal-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}
.story{background:var(--papel)}
.story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,72px);align-items:start}
.story-grid > *{min-width:0}
.story-k{display:grid;gap:16px;position:sticky;top:110px}
.story-t{display:grid;gap:18px}
.story-t p{font-size:1.05rem;color:#4a5149;max-width:60ch}
.story-t .sig{font-family:var(--display);font-style:italic;font-size:1.5rem;color:var(--verde)}
.mvv{background:var(--crema)}
.mvv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.mv{border-top:3px solid var(--verde);background:var(--papel);padding:26px;display:grid;gap:10px;align-content:start;min-width:0;transition:transform .35s,box-shadow .35s}
.mv:hover{transform:translateY(-5px);box-shadow:0 22px 36px -28px rgba(45,51,46,.5)}
.mv-k{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--arena)}
.mv h3{font-size:1.35rem}.mv p{font-size:.93rem;color:#596058}
.special{background:var(--papel)}
.esp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--linea)}
.esp{padding:28px 26px 28px 0;display:grid;gap:10px;align-content:start;border-bottom:1px solid var(--linea);min-width:0}
.esp + .esp{padding-left:26px;border-left:1px solid var(--linea)}
.esp-n{font-family:var(--display);font-size:2rem;color:var(--arena);line-height:1}
.esp h3{font-size:1.3rem}.esp p{font-size:.93rem;color:#596058}
.esp .more{font-size:.85rem;font-weight:600;color:var(--verde);text-decoration:none}
@media (max-width:860px){.story-grid,.mvv-grid,.esp-grid{grid-template-columns:1fr}.story-k{position:static}.esp + .esp{padding-left:0;border-left:0}}
.results{background:radial-gradient(ellipse 80% 70% at 50% 0%,#6E957C,transparent 70%),var(--verde);color:var(--crema);text-align:center;position:relative;overflow:hidden}
.results .wrap{display:grid;justify-items:center;gap:18px}
.results .eyebrow{color:var(--arena)}
.results h2{color:var(--crema);font-size:clamp(2.2rem,4.5vw,3.6rem)}
.results h2 em{color:var(--arena)}
.r-lead{color:#E6ECE7;max-width:62ch;font-size:1.05rem}
.rs-grid{display:grid;grid-template-columns:repeat(3,1fr);max-width:960px;gap:20px;width:100%;margin-top:26px}
.rs{display:grid;justify-items:center;gap:10px;padding:26px 18px;border-radius:22px;border:1px solid rgba(247,244,238,.18);background:rgba(247,244,238,.05);transition:transform .35s,background .35s;min-width:0}
.rs:hover{transform:translateY(-6px);background:rgba(247,244,238,.1)}
.rs svg{width:42px;height:42px;fill:none;stroke:var(--arena);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.rs strong{font-family:var(--display);font-weight:300;font-size:clamp(2.6rem,4.6vw,3.6rem);line-height:1;color:var(--crema);font-variant-numeric:tabular-nums}
.rs p{font-size:.9rem;color:#E6ECE7;max-width:24ch}
.rs-src{font-size:.78rem;color:#E6ECE7;margin-top:-4px}
.r-btn{margin-top:20px;background:var(--crema);color:var(--verde);border-color:var(--crema)}
.r-btn:hover{background:var(--arena);border-color:var(--arena);color:var(--tinta)}
@media (max-width:860px){.rs-grid{grid-template-columns:1fr}}
@media (max-width:440px){.rs-grid{grid-template-columns:1fr}}
.tl{text-transform:none;letter-spacing:.04em}

/* nosotros v2 */
.why-t{background:var(--papel)}
.why-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(28px,5vw,72px);align-items:start}
.why-grid > *{min-width:0}
.why-k{display:grid;gap:16px;position:sticky;top:110px}
.why-k h2{font-size:clamp(2rem,3.8vw,3rem)}
.why-b{display:grid;gap:18px}
.why-b p{font-size:1.05rem;color:#4a5149;max-width:60ch}
.why-b .sig{font-family:var(--display);font-style:italic;font-size:1.5rem;color:var(--verde)}
.jump{display:flex;flex-wrap:wrap;gap:10px}
.jump a{font-size:.85rem;font-weight:600;color:var(--verde);text-decoration:none;border:1px solid var(--verde);border-radius:999px;padding:8px 16px;transition:background .25s,color .25s}
.jump a:hover{background:var(--verde);color:var(--crema)}
.wwd{background:var(--crema)}
.wwd-list{display:grid;border-top:1px solid var(--linea)}
.wd{display:grid;grid-template-columns:80px 1fr auto;gap:28px;align-items:center;padding:30px 0;border-bottom:1px solid var(--linea);scroll-margin-top:120px;position:relative}
.wd > *{min-width:0}
.wd::before{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:0;background:var(--verde);transition:width .6s cubic-bezier(.2,.7,.2,1)}
.wd:hover::before{width:100%}
.wd-n{font-family:var(--display);font-size:2.6rem;color:var(--arena);line-height:1;transition:transform .4s}
.wd:hover .wd-n{transform:translateX(6px)}
.wd h3{font-size:1.45rem;margin-bottom:6px}.wd p{color:#596058;max-width:62ch}
.ahead{background:radial-gradient(ellipse 80% 60% at 50% 0%,#6E957C,transparent 70%),var(--verde);color:var(--crema);overflow:hidden}
.go-head{display:grid;justify-items:center;text-align:center;gap:14px;margin-bottom:46px}
.ahead .eyebrow,.manif .eyebrow{color:var(--arena)}
.ahead h2,.manif h2{color:var(--crema);font-size:clamp(2.2rem,4.5vw,3.6rem)}
.ahead h2 em,.manif h2 em{color:var(--arena)}
.go-head p{color:#E6ECE7;max-width:56ch}
.gpath{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-bottom:56px}
.gp-line{position:absolute;left:8%;right:8%;top:38px;width:84%;height:40px;fill:none;stroke:var(--arena);stroke-width:2;stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 2.2s cubic-bezier(.4,.1,.2,1);vector-effect:non-scaling-stroke}
.gpath.on .gp-line{stroke-dashoffset:0}
.gp{position:relative;display:grid;justify-items:center;text-align:center;gap:10px;min-width:0;opacity:.25;transform:translateY(20px);transition:opacity .8s,transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i)*.6s + .2s)}
.gpath.on .gp{opacity:1;transform:none}
.gp-ico{width:96px;height:96px;padding:14px;border-radius:50%;background:var(--verde);border:1.5px solid rgba(247,244,238,.35);fill:none;stroke:var(--crema);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;position:relative;z-index:1}
.gp-ico path{stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 1.4s ease;transition-delay:calc(var(--i)*.6s + .5s)}
.gpath.on .gp-ico path{stroke-dashoffset:0}
.gp:nth-child(4) .gp-ico{background:var(--arena);border-color:var(--arena)}
.gp:nth-child(4) .gp-ico{stroke:var(--tinta)}
.gp-k{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:var(--arena)}
.gp h3{color:var(--crema);font-size:1.4rem}
.gp p{color:#E6ECE7;font-size:.93rem;max-width:30ch}
.lt-head h2{font-size:clamp(2rem,4vw,3rem)}
.lt-head p{color:#596058;max-width:56ch}
.gpath.lt .gp:nth-child(2) .gp-ico{width:76px;height:76px;padding:9px;margin-top:10px;margin-bottom:10px}
.gpath.lt .gp:nth-child(3) .gp-ico{width:88px;height:88px;margin-top:4px;margin-bottom:4px}
.gpath.lt .gp:nth-child(4) .gp-ico{width:104px;height:104px;margin-top:-4px;margin-bottom:-4px}
.gpath.lt{margin-bottom:0}
.gpath.lt .gp-line{stroke:var(--verde)}
.gpath.lt .gp-ico{background:var(--papel);border-color:var(--verde);stroke:var(--verde)}
.gpath.lt .gp:nth-child(4) .gp-ico{background:var(--verde);border-color:var(--verde);stroke:var(--crema)}
.gpath.lt .gp-k{color:#A9875A}
.gpath.lt .gp h3{color:var(--tinta);font-size:1.35rem;max-width:22ch}
.gpath.lt .gp h3 em{color:var(--verde)}
.gpath.lt .gp p{color:#596058;max-width:34ch}
.jump-l{justify-content:center;margin-bottom:28px}
.jump-l a{color:var(--crema);border-color:rgba(247,244,238,.5)}
.jump-l a:hover{background:var(--crema);color:var(--verde)}
.bets{display:grid;gap:18px}
.bet{display:grid;grid-template-columns:90px 1fr auto;gap:28px;align-items:center;background:var(--crema);color:var(--tinta);border-radius:24px;padding:30px 34px;scroll-margin-top:120px;transition:transform .35s,box-shadow .35s}
.bet > *{min-width:0}
.bet:hover{transform:translateY(-5px);box-shadow:0 26px 40px -30px rgba(0,0,0,.6)}
.bet-n{font-family:var(--display);font-weight:300;font-size:4.2rem;line-height:1;color:var(--arena)}
.bet h3{font-size:1.5rem;margin-bottom:8px}.bet p{color:#4a5149;max-width:68ch}
.bet-btn{background:var(--verde);color:var(--crema);border-color:var(--verde);white-space:nowrap}
.bet-btn:hover{background:var(--verde-osc);border-color:var(--verde-osc)}
.nblog{background:var(--crema)}
@media (max-width:860px){.why-grid{grid-template-columns:1fr}.why-k{position:static}.wd,.bet{grid-template-columns:1fr;gap:12px}.gpath{grid-template-columns:1fr;gap:34px}.gp-line{display:none}.bet{padding:26px}.bet-n{font-size:3rem}}

/* propósito vertical */
.vtree{position:relative;max-width:980px;margin:0 auto;display:grid;gap:clamp(28px,5vw,56px);padding-block:10px}
.vt-stem{position:absolute;left:50%;top:0;width:40px;height:100%;transform:translateX(-50%);fill:none;stroke:var(--verde);stroke-width:2;overflow:visible}
.vt-stem path{vector-effect:non-scaling-stroke;stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 2.6s cubic-bezier(.4,.1,.2,1)}
.vtree.on .vt-stem path{stroke-dashoffset:0}
.vt-row{display:grid;grid-template-columns:1fr 130px 1fr;align-items:center;position:relative;z-index:1}
.vt-row > *{min-width:0}
.vt-row.l .vt-txt{grid-column:1;text-align:right;justify-items:end}
.vt-row.r .vt-txt{grid-column:3;text-align:left;justify-items:start}
.vt-row.r .vt-sp{grid-column:1;grid-row:1}
.vt-node{grid-column:2;grid-row:1;display:grid;place-items:center}
.vt-txt{display:grid;gap:10px;opacity:.2;transform:translateY(18px);transition:opacity .8s,transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i)*.75s + .3s)}
.vtree.on .vt-txt{opacity:1;transform:none}
.vt-txt h3{font-size:1.45rem;color:var(--tinta);max-width:22ch}
.vt-txt h3 em{color:var(--verde)}
.vt-txt p{color:#596058;max-width:36ch}
.vt-txt .gp-k{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-weight:600;color:#A9875A}
.vt-ico{width:84px;height:84px;padding:12px;border-radius:50%;background:var(--crema);border:1.5px solid var(--verde);fill:none;stroke:var(--verde);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transform:scale(.6);opacity:0;transition:transform .7s cubic-bezier(.3,1.5,.5,1),opacity .5s;transition-delay:calc(var(--i)*.75s + .2s)}
.vtree.on .vt-ico{transform:none;opacity:1}
.vt-row:nth-of-type(2) .vt-ico{width:100px;height:100px}
.vt-row:nth-of-type(3) .vt-ico{width:118px;height:118px;background:var(--verde);stroke:var(--crema)}
@media (max-width:760px){.vt-stem{left:44px}.vt-row{grid-template-columns:88px 1fr;gap:18px}.vt-row .vt-txt,.vt-row.l .vt-txt,.vt-row.r .vt-txt{grid-column:2;text-align:left;justify-items:start}.vt-node{grid-column:1}.vt-sp{display:none}.vt-ico{width:72px!important;height:72px!important}}
/* hacia dónde: paisaje */
.scape{margin-bottom:46px}
.sc-art{display:block;width:100%;height:auto;max-height:240px;fill:none;stroke:var(--crema);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.sc-art path{stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 1.6s ease}
.sc-ground{stroke:var(--arena)!important;transition-duration:1.4s!important}
.sc-p path{transition-delay:calc(var(--i)*.6s + .8s)}
.sc-p.big path{stroke:var(--arena)}
.scape.on .sc-art path{stroke-dashoffset:0}
.sc-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:22px}
.sc-col{display:grid;justify-items:center;text-align:center;gap:10px;min-width:0;opacity:.2;transform:translateY(16px);transition:opacity .8s,transform .8s;transition-delay:calc(var(--i)*.6s + 1s)}
.scape.on .sc-col{opacity:1;transform:none}
.sc-col h3{color:var(--crema);font-size:1.4rem}
.sc-col p{color:#E6ECE7;font-size:.93rem;max-width:30ch}
@media (max-width:760px){.sc-cols{grid-template-columns:1fr;gap:26px}}

/* valores v4 */
.values .lt-head{margin-bottom:34px}
.vals.v4{grid-template-columns:repeat(4,1fr)}
.vals.v4 .vline{left:12.5%;width:75%}
.vals.v4 .val .k{font-size:clamp(1.5rem,2.2vw,1.9rem);line-height:1.15}
.vals.v4 .val .k i{margin-top:4px}
@media (max-width:980px){.vals.v4{grid-template-columns:1fr 1fr}.vals.v4 .vline{display:none}}
@media (max-width:560px){.vals.v4{grid-template-columns:1fr}}
/* certs mini (inicio) */
.certs-mini{background:var(--papel);padding-block:clamp(40px,6vw,64px)}
.certs-mini .wrap{display:grid;justify-items:center;gap:20px;text-align:center}
.cm-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(16px,3vw,36px)}
.cm-row img{height:96px;width:auto;transition:transform .35s}
.cm-row img:hover{transform:translateY(-4px)}
.cm-sol{display:grid;gap:2px;text-align:left;border-left:2px solid var(--verde);padding-left:14px}
.cm-sol b{font-family:var(--display);font-weight:400;color:var(--verde);font-size:1.1rem}
.cm-sol span{font-size:.82rem;color:var(--gris)}
.certs-mini .more{font-size:.88rem;font-weight:600;color:var(--verde);text-decoration:none}
/* equipo valores */
.eq-vals{background:var(--crema)}
.eq-vals .wrap{display:grid;gap:28px;justify-items:start}
.eqv{display:flex;flex-wrap:wrap;gap:14px}
.eqv span{font-family:var(--display);font-size:1.35rem;color:var(--tinta);background:var(--papel);border:1px solid var(--linea);border-radius:999px;padding:12px 24px}
.eqv i{color:var(--verde)}
.s-steps h2 em,.newsletter h2 em{color:var(--arena)}

/* blog v2 */
.art{display:grid;gap:16px}
.art h2{font-size:clamp(1.45rem,2.4vw,1.8rem);font-weight:400;color:var(--tinta);margin-top:22px;line-height:1.2}
.art h3{font-size:1.3rem;font-weight:400;color:var(--verde);margin-top:12px}
.art h4{font-size:1.1rem;font-weight:500;color:var(--tinta);margin-top:8px}
.art h2 strong,.art h3 strong,.art h4 strong{font-weight:inherit}
.art p,.art li{font-size:1.02rem;line-height:1.7;color:#3f463f}
.art ul,.art ol{padding-left:22px;display:grid;gap:8px}
.art blockquote{border-left:3px solid var(--arena);padding-left:18px;font-family:var(--display);font-size:1.2rem;color:var(--verde)}
.art table{border-collapse:collapse;width:100%;font-size:.92rem}
.art td,.art th{border:1px solid var(--linea);padding:8px 10px;text-align:left}
.art .post-meta{margin-bottom:4px}

.blog-page .post .thumb,.post-rel .post .thumb{aspect-ratio:16/5}
.blog-tools{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;margin-bottom:10px}
.blog-tools .chips{margin-bottom:0}
.b-search input{font:inherit;font-size:.92rem;padding:.7em 1.1em;border-radius:999px;border:1px solid var(--linea);background:var(--papel);min-width:240px;color:var(--tinta)}
.b-search input:focus{outline:2px solid var(--verde);outline-offset:1px}
.b-count{font-size:.85rem;color:var(--gris);margin:14px 0 22px}
.b-more{display:flex;justify-content:center;margin-top:40px}
.b-empty{color:var(--gris)}
.post-meta{font-size:.85rem;color:var(--gris);letter-spacing:.02em;margin-bottom:10px}
.post-rel{margin-top:56px;padding-top:36px;border-top:1px solid var(--linea);display:grid;gap:24px}
.post-rel h2{font-size:1.8rem}
.post-rel .posts{grid-template-columns:repeat(3,1fr)}
@media (max-width:860px){.post-rel .posts{grid-template-columns:1fr}.b-search,.b-search input{width:100%;min-width:0}}
.s-hero-copy{min-width:0}.s-hero-copy > *{min-width:0}
.s-facts.row strong{overflow-wrap:anywhere}
@media (max-width:520px){.s-facts.row{grid-template-columns:1fr}.s-facts.row div{display:flex;align-items:baseline;gap:10px}}
.m-only{display:none}
@media (max-width:1020px){#nav .m-only{display:block}}
.nav-quote{white-space:nowrap}
@media (max-width:420px){.nav-quote{padding:.55em .8em;font-size:.72rem}.menu-btn{padding-inline:.7em}.nav-cta{gap:8px}}
@media (max-width:640px){.art table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.art td,.art th{white-space:nowrap;font-size:.85rem}}
.cta-note{display:block;font-size:.8rem;color:var(--gris);margin-top:-6px}
.s-cta .cta-note,.cta .cta-note{text-align:center;margin-top:12px}
.process .cta-note,.results .cta-note,.ahead .cta-note{color:#E6ECE7}

.nq-s{display:none}
@media (max-width:420px){.nq-l{display:none}.nq-s{display:inline}}
/* cookies */
.ft-btn{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-decoration:inherit}
.ft-btn:hover{text-decoration:underline}
.ck{position:fixed;left:16px;right:16px;bottom:16px;z-index:60;max-width:760px;margin:0 auto;background:var(--papel);border:1px solid var(--linea);border-radius:20px;box-shadow:0 24px 48px -24px rgba(45,51,46,.55);padding:20px 22px;display:grid;gap:14px}
.ck p{font-size:.9rem;color:var(--tinta);margin:0}
.ck p a{color:var(--verde)}
.ck-btns{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;align-items:center}
.ck-btns .btn{padding:.65em 1.3em;font-size:.86rem}
.ck-link{background:none;border:0;font:inherit;font-size:.86rem;color:var(--verde);text-decoration:underline;cursor:pointer;margin-right:auto;padding:0}
.ck-opts{display:grid;gap:8px;border-top:1px solid var(--linea);padding-top:12px}
.ck-opts label{display:flex;gap:10px;align-items:center;font-size:.9rem}
.ck-opts small{color:var(--gris)}
@media (max-width:520px){.ck-btns .btn{flex:1}.ck-link{width:100%}}
/* 404 */
.nf{min-height:60vh;display:grid;align-items:center}
.nf-links{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-wrap:wrap;gap:18px}
.nf-links a{color:var(--verde);font-weight:600;font-size:.92rem}
/* formularios */
.hp{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
[aria-invalid="true"]{border-color:#B4532F!important;outline-color:#B4532F!important}
.f-err{display:block;font-size:.78rem;color:#9C4526;margin-top:4px;font-weight:500}
/* trabaja */
.areas{background:var(--crema)}
.ar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ar{background:var(--papel);border-top:3px solid var(--verde);padding:26px;display:grid;gap:10px;align-content:start;min-width:0;transition:transform .35s,box-shadow .35s}
.ar:hover{transform:translateY(-5px);box-shadow:0 22px 36px -28px rgba(45,51,46,.5)}
.ar-tag{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--arena)}
.ar h3{font-size:1.3rem}.ar p{font-size:.93rem;color:#596058}
.ar ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:6px}
.ar li{font-size:.9rem;padding-left:18px;position:relative}
.ar li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:50%;background:var(--verde)}
.tips{background:var(--papel)}
.tips .steps li{border-color:var(--linea);background:var(--crema)}
.tips .steps li:hover{background:var(--arena-claro)}
.tips .steps p{color:#596058}
.tips .steps .n{color:var(--tinta)}
.first{background:var(--crema)}
.fs-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.fs{background:var(--papel);border-radius:24px;padding:30px;display:grid;gap:10px;min-width:0}
.fs h3{font-size:1.45rem}.fs p{color:#596058}
.culture-t{background:var(--papel)}
.esp-grid.c4{grid-template-columns:repeat(4,1fr)}
.manif{background:var(--verde);color:var(--crema)}
.mf{list-style:none;margin:0 auto;padding:0;counter-reset:m;display:grid;grid-template-columns:1fr 1fr;gap:0 48px;max-width:980px}
.mf li{counter-increment:m;display:grid;grid-template-columns:52px 1fr;align-items:baseline;padding:18px 0;border-bottom:1px solid rgba(247,244,238,.2);font-family:var(--display);font-size:1.25rem;color:var(--crema);transition:padding .3s,color .3s}
.mf li::before{content:counter(m,decimal-leading-zero);font-family:var(--body);font-size:.8rem;font-weight:600;color:var(--arena);letter-spacing:.1em}
.mf li:hover{padding-left:8px;color:var(--arena-claro)}
.tj-form{background:var(--crema);scroll-margin-top:90px}
.tj-form .cv-form{background:var(--papel);border-radius:24px;padding:clamp(22px,4vw,40px)}
@media (max-width:980px){.ar-grid{grid-template-columns:1fr 1fr}.esp-grid.c4{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.ar-grid,.fs-grid,.mf,.esp-grid.c4{grid-template-columns:1fr}}
/* movimiento */
.ribbon-wrap{overflow:hidden;padding-block:34px;margin-block:-10px;position:relative;z-index:2}
.ribbon{background:var(--verde);transform:rotate(-2deg);margin-inline:-3%;padding-block:18px;box-shadow:0 18px 30px -24px rgba(45,51,46,.6)}
.ribbon .track{display:flex;align-items:center;gap:34px;width:max-content;animation:marq 40s linear infinite}
.ribbon:hover .track{animation-play-state:paused}
.ribbon span{white-space:nowrap}
.ribbon .b{font-family:var(--body);font-weight:700;font-size:clamp(1.3rem,2.6vw,2rem);letter-spacing:.01em;color:var(--crema)}
.ribbon .i{font-family:var(--display);font-style:italic;font-weight:300;font-size:clamp(1.4rem,2.8vw,2.2rem);color:var(--arena)}
.ribbon .dot{color:var(--crema);font-size:.9rem;opacity:.8}
@keyframes marq{to{transform:translateX(-50%)}}
.split .w{display:inline-block;animation:rise .9s cubic-bezier(.2,.7,.2,1) both}
.split .w:nth-child(3){animation-delay:.08s}
h1 .h1-k{display:flex;font-family:var(--body);line-height:1.65;margin-bottom:26px;animation:rise .9s .3s cubic-bezier(.2,.7,.2,1) both}
.split em .w:nth-child(1){animation-delay:.18s}
.split em .w:nth-child(2){animation-delay:.26s}
@keyframes rise{from{transform:translateY(.45em);opacity:.25}to{transform:none;opacity:1}}
.hero-copy > *:not(h1){animation:rise .9s .3s cubic-bezier(.2,.7,.2,1) both}
.hero-art .tag{animation:float 6s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-6px)}}
.rv{transition:transform .9s cubic-bezier(.2,.7,.2,1),opacity .9s}
.rv.pre{transform:translateY(34px);opacity:.3}
header{transition:box-shadow .3s,background .3s}
header.scrolled{box-shadow:0 10px 30px -22px rgba(45,51,46,.5);background:rgba(247,244,238,.98)}
.line{position:relative;overflow:hidden}
.line::before{content:"";position:absolute;inset:auto 0 0 0;height:0;background:linear-gradient(0deg,rgba(207,175,132,.22),rgba(207,175,132,0));transition:height .45s ease;z-index:0}
.line:hover::before{height:100%}
.line > *{position:relative;z-index:1}
.line .meta svg{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.line:hover .meta svg{transform:scale(1.18) rotate(-8deg)}
.line .more{transition:letter-spacing .3s}
.line:hover .more{letter-spacing:.09em}
.pillar .dot{transition:transform .4s}
.pillar:hover .dot{transform:scale(1.8)}
.sla div{transition:transform .35s,background .35s}
.sla div:hover{transform:translateY(-4px);background:rgba(247,244,238,.06)}
.badge{transition:transform .35s,box-shadow .35s,border-color .35s}
.badge:hover{transform:translateY(-4px);border-color:var(--arena);box-shadow:0 16px 30px -22px rgba(45,51,46,.5)}
.person .photo{transition:transform .5s cubic-bezier(.2,.7,.2,1),border-radius .5s}
.person:hover .photo{transform:translateY(-6px);border-radius:18px 18px 160px 160px}
.post .thumb::after{transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.post:hover .thumb::after{transform:translate(-14%,-10%) scale(1.15)}
.btn{transition:background .2s,color .2s,transform .2s}
.btn:hover{transform:translateY(-2px)}
.panel-bg{animation:fade .25s ease}
@keyframes fade{from{opacity:0}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.rv.pre{transform:none;opacity:1}}

/* ===== Accesibilidad: contraste mínimo AA ===== */
:root{--verde:#476E57;--gris:#656A62;--arena-txt:#80633E;--arena-num:#9A7A4E;--arena-on-g:#EFE3D2;--arena-em-g:#E3CDA9}
.line .meta span,.pc-k,.role,.res-tag,.others i,.case-line,.mv-k,.ar-tag,.dn,.d-open li b,.o-core span,.gpath.lt .gp-k,.vt-txt .gp-k,.plan li::before,.faq summary::after{color:var(--arena-txt)}
.val .k i,.esp-n,.mn,.wd-n,.bet-n{color:var(--arena-num)}
.val .k i::after{background:var(--arena-num)}
.process .eyebrow,.s-steps .eyebrow,.newsletter .eyebrow,.calc-out .eyebrow,.diag-out .eyebrow,.feat-row.green .eyebrow,.results .eyebrow,.ahead .eyebrow,.manif .eyebrow,.ahead .gp-k,.gp-k,.panel .metaphor,.fric b,.mf li::before,.feat-row.green .fr-item .ic,footer h4,footer .fh,.vlabel b,.s-why .metaphor{color:var(--arena-on-g)}
.gpath.lt .gp-k,.vt-txt .gp-k{color:var(--arena-txt)}
.process h2 em,.s-steps h2 em,.newsletter h2 em,.feat-row.green h2 em,.results h2 em,.ahead h2 em,.manif h2 em,.sla strong,.ribbon .i,.lab .metaphor{color:var(--arena-em-g)}
.ribbon .i{color:var(--arena-on-g)}
.wa{background:#167A3E}

/* ===== Manual de marca final (oct 2026) ===== */
:root{--verde:#476E57;--verde-marca:#577F66;--verde-txt:#476E57;--bosque:#30453A;--bosque-2:#3A5546;--display:"Fraunces",Georgia,"Times New Roman",serif;--title:"Montserrat","Helvetica Neue",Arial,sans-serif;--body:"Montserrat","Helvetica Neue",Arial,sans-serif}
body{font-family:var(--body)}
h1,h2{font-family:var(--title);font-weight:300;letter-spacing:-.015em;line-height:1.14}
h3{font-family:var(--title);font-weight:500;letter-spacing:-.005em}
h1 em,h2 em,h3 em,.sig,blockquote p{font-family:var(--display);font-style:italic;font-weight:500;letter-spacing:0}
nav a,.btn,.eyebrow,.chip-f,.role,.gp-k,.mv-k,.ar-tag,.pc-k,.res-tag,footer h4,footer .fh,.menu-btn,.client-link,label{font-family:var(--title)}
/* textos verdes pequeños y botones: tono accesible; verde oficial para formas y títulos */
.btn-solid{background:var(--verde-txt);border-color:var(--verde-txt)}
.btn-solid:hover{background:var(--bosque);border-color:var(--bosque)}
.btn-line{color:var(--verde-txt);border-color:var(--verde)}
.eyebrow{color:var(--verde-txt)}
h1 em,h2 em{color:var(--verde-marca)}
.ring .prog,.vline,.gp-line,.vt-stem{stroke:var(--verde-marca)}
.btn-solid:not(.nav-quote):not(.cal-btn)::after{content:"→";font-family:var(--body);transition:transform .25s}
.btn-solid:not(.nav-quote):not(.cal-btn):hover::after{transform:translateX(4px)}
.eyebrow{display:inline-flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:26px;height:1.5px;background:var(--arena);flex:none}
/* secciones verdes: verde bosque del manual (versión sobre fondo) */
.s-why,.process,.results,.ahead,.manif,.s-steps,.newsletter,.feat-row.green{background:radial-gradient(ellipse 70% 80% at 85% 0%,var(--bosque-2),transparent 70%),var(--bosque)!important}

/* logos */
.logo img{height:68px;width:auto}
footer .brand img{height:111px;width:auto}
@media (max-width:640px){.logo img{height:60px}}
/* isotipo oficial en portada: sin círculo, sin balanceo */
.hero-art{background:var(--arena-claro)}
.iso-img{position:absolute;left:50%;top:40%;height:62%;width:auto;transform:translate(-50%,-50%);animation:isoin 1.4s cubic-bezier(.2,.7,.2,1) .2s both}
@keyframes isoin{from{opacity:0;transform:translate(-50%,-46%) scale(.94)}}
.hero-art .tag{animation:none}
/* textura de papel en cabeceras y portada */
.hero,.doc-hero,.s-hero{background:linear-gradient(rgba(247,244,238,.72),rgba(247,244,238,.72)),url(../images/marca/textura-papel.webp) center/cover}
.topbar{background:var(--bosque)!important}
footer:not(blockquote footer){background:var(--bosque)!important}
.r-btn,.founder .btn-solid{background:var(--crema)!important;border-color:var(--crema)!important;color:var(--bosque)!important}
.r-btn:hover{background:var(--arena)!important;border-color:var(--arena)!important}
@media (prefers-reduced-motion:reduce){.iso-img{animation:none}}

/* recursos a todo el ancho */
.doc-body:has(.tool-grid){max-width:none}
.doc-body:has(.tool-grid) .tool-grid{grid-template-columns:repeat(2,1fr)}
.doc-body:has(.tool-grid) .res-grid{grid-template-columns:repeat(3,1fr);gap:18px;align-items:stretch}
.doc-body:has(.tool-grid) .res{grid-template-rows:auto auto 1fr auto;padding:26px}
.doc-body:has(.tool-grid) .res-form{grid-template-columns:1fr}
.doc-body:has(.tool-grid) .res-form .btn{justify-self:start}
@media (max-width:960px){.doc-body:has(.tool-grid) .res-grid{grid-template-columns:1fr}.doc-body:has(.tool-grid) .res-form{grid-template-columns:1fr auto}}
@media (max-width:760px){.doc-body:has(.tool-grid) .tool-grid{grid-template-columns:1fr}}
@media (max-width:480px){.doc-body:has(.tool-grid) .res-form{grid-template-columns:1fr}}
/* ===== Añadidos de la versión estática ===== */
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--bosque,#30453A);color:#fff;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:600}
.skip:focus{top:12px}
main:focus{outline:none}
/* fotografías como <img> (carga diferida y srcset) */
img.ill{display:block;width:100%;height:auto;object-fit:cover;background:var(--arena-claro)}
.s-media .frame img.ill{aspect-ratio:4/3.4}
.hero-art .hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-art .tag{z-index:1}
/* formularios */
.form-msg[data-kind="error"],.form-msg[data-kind="error"] *{color:#9A2B1F}
.nl-form .form-msg[data-kind="error"]{color:#FFD9D2}
.form-off{flex-basis:100%;grid-column:1/-1;margin:8px 0 0;padding:10px 14px;border-radius:10px;background:#FFF4E5;color:#5A3D12!important;font-size:.85rem;border:1px solid #E9C995}
.form-off a{color:#5A3D12;text-decoration:underline}
button[disabled]{opacity:.55;cursor:not-allowed}
.nl-check{flex-basis:100%;display:flex;gap:8px;align-items:flex-start;font-size:.8rem;color:#E6ECE7}
.nl-check input{flex:none!important;width:auto;margin-top:3px}
.nl-check a{color:#fff}
.ts-box{grid-column:1/-1;flex-basis:100%;min-height:65px}
/* blog */
.b-empty{color:var(--gris)}
/* certificaciones y metodología */
.cm-link{display:inline-block;margin-left:10px;font-size:.82rem;font-weight:600;color:var(--verde)}
.rs-src a{color:#fff;font-weight:600}
.doc-body .doc-h2{font-size:clamp(1.5rem,2.6vw,2rem);margin-top:28px}
.cert-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.cert-card{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;background:var(--papel);border:1px solid var(--linea);border-radius:18px;padding:22px}
.cert-card h2{font-size:1.35rem;margin:0 0 10px}
.cert-card img{width:81px;height:auto}
.cert-card .kv{background:#fff}
.met-list{display:grid;gap:12px}
.met-list .kv{margin-top:8px}
@media (max-width:760px){.cert-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* ===== Ampliación: navegación ===== */
@media (min-width:1021px){nav ul{gap:22px}.has-sub .sub{min-width:260px}}
@media (max-width:1020px){nav .sub{display:none!important}}
/* tarjetas de enlace */
.lgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
.lcard{display:grid;gap:8px;align-content:start;padding:22px;border:1px solid var(--linea);border-radius:18px;background:var(--papel);text-decoration:none;color:var(--tinta);transition:transform .3s,box-shadow .3s,border-color .3s}
.lcard:hover{transform:translateY(-3px);border-color:var(--verde);box-shadow:0 18px 30px -22px rgba(45,51,46,.45)}
.lcard h3{font-size:1.15rem;color:var(--tinta)}
.lcard p{font-size:.92rem;color:#535a52}
.lc-k{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--arena-txt,#80633E)}
.lcard .more{font-size:.84rem;font-weight:600;color:var(--verde)}
.doc-body .lgrid{margin:6px 0 10px}
.s-rel,.s-start,.s-case,.s-cases,.s-compare,.s-cmp,.s-upd,.s-why-scope,.s-met,.s-certs,.s-soc,.s-spont,.s-case-detail{padding-block:clamp(48px,7vw,88px)}
.s-start,.s-case,.s-upd{background:var(--papel)}
.sec-more{margin-top:22px}
.sec-more .more,.case-more{font-size:.86rem;font-weight:600;color:var(--verde);text-decoration:none}
.sec-more .more:hover,.case-more:hover{text-decoration:underline}
.case .case-more{display:inline-block;margin-top:14px}
.case-grid-1{grid-template-columns:minmax(0,760px)!important}
.prose{max-width:72ch;display:grid;gap:14px}
.prose p,.prose li{color:#3f463f}
.prose ul{padding-left:20px;display:grid;gap:8px;margin:0}
.ticks{list-style:none;margin:0;padding:0;display:grid;gap:10px;max-width:80ch}
.ticks li{position:relative;padding-left:30px;color:#3f463f}
.ticks li::before{content:"✓";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;background:var(--verde);color:#fff;font-size:.72rem;display:grid;place-items:center;font-weight:700}
.toc{background:var(--papel);border-block:1px solid var(--linea);position:sticky;top:76px;z-index:5}
.toc .wrap{display:flex;flex-wrap:wrap;gap:6px 18px;padding-block:12px;font-size:.84rem;align-items:center}
.toc a{color:var(--verde);font-weight:600;text-decoration:none}.toc a:hover{text-decoration:underline}
.toc span{color:var(--gris)}
@media (max-width:760px){.toc{position:static}}
/* caso de éxito */
.cd-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.cd-block{background:var(--papel);border:1px solid var(--linea);border-radius:18px;padding:24px;display:grid;gap:10px;align-content:start}
.cd-block p{color:#3f463f}
.cd-res{background:var(--bosque,#30453A);border-color:var(--bosque,#30453A)}
.cd-res p{color:#fff;font-family:var(--display);font-size:1.15rem;line-height:1.45}
.cd-res .eyebrow{color:var(--arena)}
@media (max-width:860px){.cd-grid{grid-template-columns:1fr}}
.testi{margin:0;max-width:760px}.testi blockquote{margin:0;font-family:var(--display);font-size:1.4rem}
/* confianza */
.kv-stack{grid-template-columns:1fr;gap:2px 0}.kv-stack dd{margin-bottom:8px}
.cert-soc .cs-mark{width:60px;height:60px;border-radius:50%;background:var(--arena-claro);display:grid;place-items:center;color:var(--verde);font-size:1.4rem}
.cert-card h3{font-size:1.3rem;margin:0 0 10px}
.s-certs .cert-grid,.s-soc .cert-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}
.met-list{list-style:none;padding:0}
.met-list li{padding:14px 18px;border:1px solid var(--linea);border-radius:14px;background:var(--papel)}
.met-list b{font-family:var(--display);font-size:1.2rem;color:var(--verde);margin-right:6px}
/* cumplimiento */
.upd-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.upd-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;padding:14px 0;border-bottom:1px solid var(--linea)}
.upd-list a{color:var(--tinta);font-weight:500;text-decoration:none}.upd-list a:hover{color:var(--verde);text-decoration:underline}
.upd-list .pub{font-size:.82rem;color:var(--gris)}
/* comparativa */
.cmp-tbl table{min-width:640px}
.cmp-tbl caption{text-align:left;font-size:.85rem;color:var(--gris);padding-bottom:10px;caption-side:top}
.cmp-tbl th[scope=row]{font-weight:600;color:var(--tinta);text-transform:none;letter-spacing:0;font-size:.9rem}
.cmp-tbl thead th:last-child{color:var(--verde)}
/* vídeo de marca */
.brand-video{padding-block:clamp(28px,4vw,48px) 0}
.bv-frame{margin:0;aspect-ratio:16/9;max-width:980px;margin-inline:auto;border-radius:24px;overflow:hidden;background:var(--bosque,#30453A);position:relative}
.bv-frame video{width:100%;height:100%;display:block;object-fit:cover;background:#000}
.bv-frame figcaption{position:absolute;left:0;right:0;bottom:-34px;font-size:.82rem;color:var(--gris);text-align:center}
.bv-static .bv-frame{aspect-ratio:auto;min-height:0;display:flex;gap:28px;align-items:center;justify-content:center;padding:clamp(24px,4vw,40px);background:var(--bosque,#30453A) url(../images/marca/textura-papel.webp) center/cover;background-blend-mode:soft-light}
.bv-piece img{width:56px;height:auto;flex:none}
.bv-piece p{color:#E6ECE7;font-size:1rem;max-width:52ch;margin:0}
.bv-piece p span{display:block;font-family:var(--display);font-style:italic;font-size:clamp(1.4rem,2.6vw,1.9rem);color:#fff;margin-bottom:4px}
@media (max-width:560px){.bv-static .bv-frame{flex-direction:column;text-align:center}}
/* orientación de necesidades */
.needs-sec fieldset.miss{border-color:#9A2B1F}
.needs-go{display:grid;gap:8px;justify-items:start;margin-top:8px}
.needs-out:focus{outline:2px solid var(--arena);outline-offset:4px}
.needs-h{font-size:1.4rem}
.needs-list{padding-left:20px;display:grid;gap:14px;margin:12px 0}
.needs-list .nl-name{font-weight:600;color:var(--verde);font-size:1.05rem}
.needs-list p{margin:2px 0;color:#3f463f}
.needs-list ul{padding-left:18px;font-size:.88rem;color:#535a52}
.needs-more ul{padding-left:18px;margin:6px 0 0}
.needs-more a{color:var(--verde)}
.needs-urg{font-size:.92rem;color:#3f463f;margin:12px 0}
.needs-out .lead-form{margin-top:16px}
.disclaimer a{color:var(--verde)}
.diag-out.needs-out{background:var(--papel);color:var(--tinta);border:1px solid var(--linea);position:static}
.needs-out .eyebrow{color:var(--verde)}
.needs-out .d-msg{color:#3f463f}
@media (max-width:640px){
  .cmp-tbl table{min-width:0}
  .cmp-tbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .cmp-tbl tr{display:block;padding:14px 0;border-bottom:1px solid var(--linea)}
  .cmp-tbl th[scope=row],.cmp-tbl td{display:block;border:0;padding:4px 0}
  .cmp-tbl td::before{content:attr(data-label);display:block;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--verde);font-weight:600}
}
/* Franja de certificaciones del inicio: alineada a la izquierda, como el resto de secciones */
.certs-mini .wrap{justify-items:start;text-align:left}
.certs-mini .cm-row{justify-content:flex-start}
/* Recursos agrupados por área */
.doc-body:has(.res-area){max-width:none}
.ra-toc{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;font-size:.86rem;padding:12px 0;border-block:1px solid var(--linea)}
.ra-toc span{color:var(--gris)}.ra-toc a{color:var(--verde);font-weight:600;text-decoration:none}.ra-toc a:hover{text-decoration:underline}
.res-area{padding-top:18px;scroll-margin-top:110px}
.ra-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 24px;margin-bottom:14px}
.ra-head p{color:#535a52;margin:0}.ra-head a{color:var(--verde);font-weight:600}
.ra-grid{align-items:stretch}
.ra-grid .res{grid-template-rows:auto auto 1fr auto}
.ra-grid .res-form{grid-template-columns:1fr}
.ra-grid .res-form .btn{justify-self:start}
.doc-body .res-area{padding-block:20px 34px}
.ra-grid{align-items:start}
/* Pieza de marca junto a las certificaciones (cuando no hay vídeo) */
.certs-mini .wrap{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:28px clamp(24px,4vw,56px)}
.cm-left{display:grid;gap:20px;justify-items:start}
.cm-piece{display:flex;gap:22px;align-items:center;padding:clamp(22px,3vw,34px);border-radius:24px;background:var(--bosque,#30453A) url(../images/marca/textura-papel.webp) center/cover;background-blend-mode:soft-light}
.cm-piece img{width:48px;height:auto;flex:none}
.cm-piece p{color:#E6ECE7;font-size:.95rem;margin:0}
.cm-piece p span{display:block;font-family:var(--display);font-style:italic;font-size:clamp(1.3rem,2.2vw,1.7rem);color:#fff;margin-bottom:4px;line-height:1.2}
@media (max-width:900px){.certs-mini .wrap{grid-template-columns:1fr}}
.brand-video .bv-frame{aspect-ratio:auto;overflow:visible;background:none;border-radius:0}
.brand-video .bv-frame video{width:100%;height:auto;aspect-ratio:16/9;border-radius:24px;box-shadow:0 30px 60px -40px rgba(45,51,46,.6)}
.brand-video .bv-frame figcaption{position:static;margin-top:10px}
footer .cols{grid-template-columns:repeat(5,minmax(0,1fr));gap:28px 32px}
footer .cols > .brand{grid-column:1/-1;margin-bottom:8px}
footer .cols > .brand img{height:84px!important}
@media (max-width:1100px){footer .cols{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){footer .cols{grid-template-columns:1fr 1fr}}
@media (max-width:420px){footer .cols{grid-template-columns:1fr}}
.cm-txt{color:#535a52;max-width:52ch;margin:0}
/* Frase destacada */
.callout-line{max-width:760px;margin:0 auto;text-align:center;font-family:var(--display);font-size:clamp(1.15rem,2vw,1.4rem);line-height:1.5;color:var(--verde-txt)}
.callout-line a{color:inherit;text-decoration:underline;text-underline-offset:3px}
