/* luka — mismo lenguaje que fidelya.cl (claro, vidrio, manchas que respiran, la mascota viva), en la familia verde y dorada de LUKA */
@font-face{font-family:'Plus Jakarta Sans';font-weight:400 800;font-style:normal;src:url(fonts/jakarta-var-latin.woff2) format('woff2');font-display:swap}
@font-face{font-family:'JetBrains Mono';font-weight:500 700;font-style:normal;src:url(fonts/jetbrains-var-latin.woff2) format('woff2');font-display:swap}
@font-face{font-family:SG;font-weight:600;src:url(fonts/space-grotesk-600-latin.woff2) format('woff2');font-display:swap}
@font-face{font-family:SG;font-weight:700;src:url(fonts/space-grotesk-700-latin.woff2) format('woff2');font-display:swap}
:root{color-scheme:only light;--bg:#F5FBF7;--ink:#0F2A1E;--ink2:#4C6457;--ink3:#93A79B;--line:rgba(15,42,30,.08);
  --verde:#10B26C;--verde2:#0B9A5B;--hondo:#0A6B42;--menta:#D7F7E5;--oro:#F4B731;--oro2:#B87F06;--coral:#E8553F;
  --vid-bg:rgba(255,255,255,.68);--vid-bd:rgba(255,255,255,.92);
  --sh:0 1px 1px rgba(10,80,50,.04),0 24px 60px -28px rgba(10,90,55,.3);--sh-s:0 1px 2px rgba(10,80,50,.06),0 10px 24px -14px rgba(10,90,55,.22);
  --g:24px;--ease:cubic-bezier(.22,.8,.24,1)}
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
a,button,summary,input,label,[data-video]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
:focus:not(:focus-visible){outline:none}
html{overflow-x:clip;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif;font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}
a{color:inherit;text-decoration:none}
img,video,svg{display:block;max-width:100%}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.wrap{max-width:1200px;margin:0 auto;padding:0 var(--g)}
h1,h2,h3{font-weight:700;letter-spacing:-.035em;line-height:1.06;color:var(--ink)}
h2{font-size:clamp(30px,4vw,52px);margin:16px 0}
.v{color:var(--verde2)}
.o{color:var(--oro2)}
.sub{font-size:clamp(16.5px,1.4vw,19px);color:var(--ink2);max-width:600px}
.mono{font-family:'JetBrains Mono',ui-monospace,monospace}
.badge{display:inline-flex;align-items:center;gap:9px;padding:6px 14px 6px 10px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid var(--vid-bd);box-shadow:var(--sh-s);font-size:13px;font-weight:600;color:var(--ink2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.badge i{width:8px;height:8px;border-radius:50%;background:var(--verde);box-shadow:0 0 0 4px rgba(16,178,108,.16)}
.vidrio{background:var(--vid-bg);border:1px solid var(--vid-bd);border-radius:24px;box-shadow:var(--sh);backdrop-filter:blur(18px) saturate(1.5);-webkit-backdrop-filter:blur(18px) saturate(1.5)}
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9px;height:52px;padding:0 24px;border-radius:999px;font-weight:700;font-size:15.5px;white-space:nowrap;transition:box-shadow .3s var(--ease),background .3s,transform .3s var(--ease)}
.btn svg{width:17px;height:17px}
.btn-p{color:#fff;background:var(--verde2);box-shadow:0 12px 30px -10px rgba(11,154,91,.6),inset 0 1px 0 rgba(255,255,255,.28)}
.btn-p:hover{background:#0A8C52;box-shadow:0 18px 40px -10px rgba(11,154,91,.72),inset 0 1px 0 rgba(255,255,255,.28)}
.btn-g{color:var(--ink);background:rgba(255,255,255,.75);border:1px solid var(--vid-bd);box-shadow:var(--sh-s);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.btn-s{height:42px;padding:0 18px;font-size:14.5px}
.sec{position:relative;padding:clamp(80px,11vw,140px) 0}
.cab{max-width:760px}.cab.c{margin:0 auto;text-align:center}.cab.c .sub{margin:0 auto}
.rev{opacity:0;transform:translateY(22px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.rev.in{opacity:1;transform:none}
.ic-s{width:38px;height:38px;flex:none;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;background:var(--menta);color:var(--verde2)}
.ic-s svg{width:19px;height:19px}
.ic-s.oro{background:#FFF1CC;color:var(--oro2)}.ic-s.coral{background:#FDE4DF;color:var(--coral)}
.fila{display:flex;align-items:center;gap:12px}
.fila b,.fila small{display:block;line-height:1.3}.fila b{font-weight:700}
.fila small{color:var(--ink3);font-size:13.5px}

/* fondo vivo */
#fondo{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}
#fondo i{position:absolute;border-radius:50%;opacity:.75;background:radial-gradient(closest-side,var(--c),transparent);will-change:transform;transition:--c 1.6s}
#fondo .b1{width:46vw;height:46vw;left:-8vw;top:-10vw;--c:var(--c1,#BDF1D4);animation:flota1 22s ease-in-out infinite}
#fondo .b2{width:40vw;height:40vw;right:-10vw;top:10vh;--c:var(--c2,#D5F5E3);animation:flota2 26s ease-in-out infinite}
#fondo .b3{width:34vw;height:34vw;left:30vw;bottom:-14vw;--c:var(--c3,#FFEFC2);animation:flota1 30s ease-in-out infinite reverse}
#fondo .b4{width:26vw;height:26vw;left:40%;top:30%;--c:var(--c4,#C9F3DC);opacity:.45;transition:transform 1.4s var(--ease),background 1.6s var(--ease)}
@keyframes flota1{50%{transform:translate(6vw,5vh) scale(1.08)}}
@keyframes flota2{50%{transform:translate(-5vw,7vh) scale(.94)}}
#luz{position:fixed;left:0;top:0;width:460px;height:460px;margin:-230px 0 0 -230px;border-radius:50%;background:radial-gradient(closest-side,rgba(46,220,134,.2),rgba(244,183,49,.07) 60%,transparent);pointer-events:none;z-index:0;opacity:0;transition:opacity .5s}
@media(hover:hover) and (pointer:fine){#luz{opacity:1}}
@media(max-width:920px){#fondo .b1{width:90vw;height:90vw}#fondo .b2{width:80vw;height:80vw}#fondo .b3{width:70vw;height:70vw}}

/* nav */
nav{position:sticky;top:0;z-index:100;transition:transform .45s cubic-bezier(.22,.8,.24,1),background .3s,box-shadow .3s}
nav.oculto{transform:translateY(-100%)}
nav.sc{background:rgba(245,251,247,.72);backdrop-filter:blur(18px) saturate(1.5);-webkit-backdrop-filter:blur(18px) saturate(1.5);box-shadow:0 1px 0 var(--line)}
nav .wrap{display:flex;align-items:center;height:68px;gap:30px}
.logo{display:flex;align-items:center;gap:8px;font-weight:800;font-size:17px;letter-spacing:.06em}
.logo svg{width:30px;height:30px;overflow:visible}
nav ul{display:flex;gap:26px;list-style:none;font-size:14.5px;font-weight:600;color:var(--ink2)}
nav ul a:hover{color:var(--ink)}
.nav-d{margin-left:auto;display:flex;align-items:center;gap:18px;font-size:14.5px;font-weight:600}
.hamb{display:none;margin-left:auto;width:42px;height:42px;border-radius:12px;align-items:center;justify-content:center;background:rgba(255,255,255,.7);border:1px solid var(--vid-bd)}
.menu-m{position:fixed;top:68px;left:12px;right:12px;z-index:99;display:flex;flex-direction:column;gap:4px;padding:14px;border-radius:22px;background:rgba(255,255,255,.95);box-shadow:var(--sh);opacity:0;transform:translateY(-10px);pointer-events:none;transition:.3s var(--ease)}
.menu-m.on{opacity:1;transform:none;pointer-events:auto}
.menu-m a{padding:12px 14px;border-radius:12px;font-weight:600}
.menu-m .btn{margin-top:6px}
@media(max-width:920px){nav ul,.nav-d{display:none}.hamb{display:inline-flex}}

/* héroe */
#hero{padding:clamp(30px,6vw,70px) 0 40px}
#hero .wrap{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center;min-height:calc(100vh - 140px)}
#hero h1{font-size:clamp(42px,6vw,80px);margin:22px 0 22px;letter-spacing:-.045em}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.garantias{display:flex;flex-wrap:wrap;gap:8px 22px;list-style:none;margin-top:26px;font-size:13.5px;font-weight:600;color:var(--ink2)}
.garantias li{display:flex;align-items:center;gap:8px}
.garantias li::before{content:"";width:16px;height:16px;border-radius:50%;background:var(--menta) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B9A5B' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12l4 4 8-8'/%3E%3C/svg%3E") center/10px no-repeat}
.h-vis{position:relative;height:620px}
.h-luka{pointer-events:none;max-width:none;position:absolute;left:50%;top:50%;width:600px;height:600px;margin:-300px 0 0 -300px;overflow:visible;cursor:pointer}
.hc{position:absolute;padding:14px 16px;border-radius:20px;font-size:14px;transition:transform .6s var(--ease)}
.hc small{color:var(--ink3);font-size:12.5px}
.hc .big{display:block;font-size:30px;font-weight:800;letter-spacing:-.04em;line-height:1.1}
.hc1{left:-2%;top:6%;width:230px}
.hc2{right:0;top:2%;width:200px}
.hc3{left:2%;bottom:12%;width:250px}
.hc4{right:-2%;bottom:6%;width:236px}
.hc .barra{height:7px;border-radius:4px;background:#E6F3EB;margin-top:10px;overflow:hidden}.hc .barra i{display:block;height:100%;width:62%;border-radius:4px;background:var(--verde)}
.hc .fila b{font-size:14.5px}
#hero .h-txt{text-align:center}#hero .sub{margin:0 auto}#hero .ctas,#hero .garantias{justify-content:center}
@media(max-width:1080px){#hero{padding-top:6px}#hero .wrap{display:flex;flex-direction:column;gap:0;min-height:0}.h-vis{order:-1;height:340px;max-width:560px;margin:0 auto;width:100%}.hc{display:none}
  .h-luka{width:440px;height:440px;margin:-226px 0 0 -220px}#hero h1{margin-top:16px}}
@media(max-width:600px){.h-vis{height:280px}.h-luka{width:350px;height:350px;margin:-172px 0 0 -175px}#hero h1{font-size:clamp(36px,10.5vw,46px)}#hero .ctas .btn{width:100%}}

/* cinta de bancos */
.bancos{padding:10px 0 40px;text-align:center}
.bancos p{font-size:13px;font-weight:600;color:var(--ink3);letter-spacing:.02em;margin-bottom:16px}
.marq-w{overflow:hidden;mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.marq{display:flex;gap:46px;width:max-content;animation:marq 40s linear infinite;will-change:transform}
.marq span{font-weight:700;font-size:17px;color:#9DB3A6;white-space:nowrap;letter-spacing:-.01em}
@keyframes marq{to{transform:translateX(-50%)}}

/* gastos hormiga */
.hormiga{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.calc{padding:32px}
.calc label{display:flex;justify-content:space-between;font-weight:700;font-size:15px;margin:18px 0 10px}
.calc label span{color:var(--verde2)}
.calc input[type=range]{width:100%;accent-color:var(--verde2);height:28px}
.calc .opc{display:flex;flex-wrap:wrap;gap:8px}
.calc .opc button{padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.8);border:1px solid var(--line);font-weight:600;font-size:14px;color:var(--ink2)}
.calc .opc button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.res{margin-top:26px;padding-top:22px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:16px}
.res small{display:block;font-size:12.5px;color:var(--ink3);font-weight:600}
.res b{display:block;font-size:clamp(30px,3.6vw,44px);font-weight:800;letter-spacing:-.045em;line-height:1.1;font-variant-numeric:tabular-nums}
.res .anual b{color:var(--verde2)}
.calc .nota{font-size:13px;color:var(--ink3);margin-top:14px}
.puntos{display:grid;grid-template-columns:repeat(24,1fr);gap:5px;max-width:540px}
.puntos i{aspect-ratio:1;border-radius:50%;background:#DCEBE2;transition:background .5s,transform .5s var(--ease)}
.puntos i.on{background:var(--oro)}
.pts-ley{display:flex;gap:18px;margin-top:16px;font-size:13px;color:var(--ink3);font-weight:600}
.pts-ley span{display:flex;align-items:center;gap:7px}.pts-ley i{width:10px;height:10px;border-radius:50%;background:var(--oro)}.pts-ley i.g{background:#DCEBE2}
@media(max-width:920px){.hormiga{grid-template-columns:1fr;gap:34px}.puntos{max-width:none}}

/* la historia: el comercial vivo a pantalla completa */
.historia{position:relative;height:100vh;height:100svh;min-height:560px}
.historia iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;background:#F5FBF7}
.historia iframe.full{position:fixed;inset:0;width:100vw;height:100vh;height:100dvh;z-index:500}

/* el video (mismos controles que NOVA: sonido, pausa, pantalla completa + barra con tiempo) */
.film-esc{position:relative;margin:40px auto 0;max-width:1120px;padding-bottom:44px}
.film{position:relative;width:100%;aspect-ratio:16/9;border-radius:30px;overflow:hidden;background:#EAF6EF;box-shadow:0 1px 1px rgba(10,80,50,.05),0 50px 100px -50px rgba(10,90,55,.45);border:1px solid #fff;cursor:pointer}
.film video{width:100%;height:100%;object-fit:cover;display:block}
@media(max-width:760px){.film-esc{max-width:min(100%,calc(76svh * 9 / 16))}.film{aspect-ratio:9/16;border-radius:26px}}
.h-aviso{position:absolute;top:17px;right:144px;z-index:4;padding:8px 14px;border-radius:14px 14px 4px 14px;background:var(--verde2);color:#fff;font:700 13.5px 'Plus Jakarta Sans',sans-serif;opacity:0;transform:translateX(8px);transition:opacity .5s var(--ease),transform .5s var(--ease);pointer-events:none;white-space:nowrap}
.h-aviso.on{opacity:1;transform:none}
.h-ctl3{position:absolute;top:14px;right:14px;z-index:4;display:flex;gap:8px}
.h-ctl3 button{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(15,42,30,.72);border:1px solid rgba(255,255,255,.18);color:#fff;transition:background .25s,border-color .25s,transform .25s var(--ease)}
.h-ctl3 button:hover{background:rgba(15,42,30,.9);border-color:rgba(92,240,166,.6)}
.h-ctl3 button:active{transform:scale(.92)}
.h-ctl3 svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
#hPlay .p2{display:none;fill:currentColor}#hPlay.pausa .p1{display:none}#hPlay.pausa .p2{display:inline}
#hSon .on{display:none}#hSon[aria-pressed="true"] .on{display:inline}#hSon[aria-pressed="true"] .off{display:none}
#hSon[aria-pressed="true"]{background:var(--verde2);border-color:var(--verde2)}
#hFull .co{display:none}#hFull.dentro .ex{display:none}#hFull.dentro .co{display:inline}
.h-pie{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:16px;height:28px;font:600 12px 'JetBrains Mono',monospace;color:var(--ink3);letter-spacing:.06em}
.h-prog{flex:1;height:14px;cursor:pointer;background:linear-gradient(#D5E7DC,#D5E7DC) center/100% 2px no-repeat;position:relative}
.h-prog i{position:absolute;left:0;top:6px;display:block;height:2px;width:0;background:var(--verde2)}
.h-prog:hover{background-size:100% 4px}.h-prog:hover i{top:5px;height:4px}
/* pantalla completa: en PC la del navegador; en teléfono, propia y con el video horizontal girado (como NOVA) */
.film-esc:fullscreen{max-width:none;margin:0;padding:0;background:#071a10;display:grid;place-items:center}
.film-esc:fullscreen .film{border-radius:0;border:0;aspect-ratio:auto;width:100%;height:100%;box-shadow:none}
.film-esc:fullscreen .film video{object-fit:contain;background:#071a10}
.film-esc:fullscreen .h-pie{bottom:8px;padding:0 18px;color:#cfe9da}
.film-esc.full{position:fixed;inset:0;z-index:300;max-width:none;margin:0;padding:0;background:#071a10}
.film-esc.full .film{position:absolute;left:50%;top:50%;aspect-ratio:auto;border-radius:0;border:0;box-shadow:none}
.film-esc.full .film video{object-fit:contain;background:#071a10}
.film-esc.full .h-pie{bottom:8px;padding:0 16px;color:#cfe9da;z-index:5}

/* historia: pasos que scrollean + teléfono quieto */
#historia .cab{margin-bottom:30px}
.hist{display:grid;grid-template-columns:1fr 400px;gap:70px}
.pasos{padding:10vh 0 30vh}
.paso{min-height:78vh;display:flex;flex-direction:column;justify-content:center;transition:opacity .6s var(--ease)}
.paso .n{font-family:'JetBrains Mono',monospace;font-weight:700;font-size:13px;color:var(--verde2);letter-spacing:.14em;display:flex;align-items:center;gap:10px}
.paso .n::after{content:"";width:28px;height:2px;background:var(--verde2)}
.paso h3{font-size:clamp(30px,3.4vw,46px);margin:14px 0 14px}
.paso p{color:var(--ink2);font-size:18px;max-width:470px}
.paso ul{list-style:none;margin-top:18px;display:grid;gap:8px}
.paso li{display:flex;gap:10px;align-items:baseline;font-size:15.5px;color:var(--ink2)}
.paso li::before{content:"";flex:none;width:7px;height:7px;border-radius:2px;background:var(--verde);transform:translateY(-2px)}
.paso:not(.on){opacity:.28}
.paso .tel-m{display:none}
.fijo{position:sticky;top:calc(50vh - 400px);height:800px;display:flex;align-items:center;justify-content:center}
.riel{position:absolute;left:-34px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:10px}
.riel i{width:6px;height:6px;border-radius:50%;background:#C8DDD0;transition:.4s var(--ease)}
.riel i.on{height:26px;border-radius:4px;background:var(--verde2)}
@media(max-width:980px){.hist{grid-template-columns:1fr}.fijo{display:none}.pasos{padding:0}.paso{min-height:0;padding:50px 0;opacity:1!important}.paso .tel-m{display:flex;justify-content:center;margin-top:34px}}

/* iPhone */
.tel{position:relative;width:340px;height:700px;border-radius:56px;padding:12px;background:#0F2A1E;box-shadow:0 0 0 1.5px #2E4A3C inset,0 50px 90px -40px rgba(10,70,45,.55),0 20px 40px -24px rgba(10,70,45,.4)}
.tel::before{content:"";position:absolute;left:50%;top:22px;width:104px;height:30px;margin-left:-52px;border-radius:20px;background:#0F2A1E;z-index:5}
.pant{position:relative;width:100%;height:100%;border-radius:44px;overflow:hidden;background:#F7FBF9}
.tel-m .tel{transform:scale(.86);transform-origin:top center;margin-bottom:-98px}
.esc{position:absolute;inset:0;padding:62px 18px 18px;opacity:0;transform:translateY(16px) scale(.985);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.esc.on{opacity:1;transform:none}
.tel-m .esc{position:relative;inset:auto;height:100%;opacity:1;transform:none}
.e-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.e-top b{font-size:20px;letter-spacing:-.03em}
.e-top small{font-size:11.5px;color:var(--ink3);font-weight:600}
.e-luka{width:38px;height:38px;overflow:visible}
.e-et{font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.14em;color:var(--ink3);text-transform:uppercase}
.tj{background:#fff;border-radius:20px;padding:14px;border:1px solid #E7F0EA;margin-bottom:10px}
.tj.verde{background:var(--hondo);color:#fff;border-color:transparent}
.tj.verde .e-et{color:#9EE7C2}
.gr{font-size:40px;font-weight:800;letter-spacing:-.05em;line-height:1.05;font-variant-numeric:tabular-nums}
.e-bar{height:7px;border-radius:4px;background:rgba(255,255,255,.18);margin:12px 0 6px;overflow:hidden}
.e-bar i{display:block;height:100%;width:0;border-radius:4px;background:#5CF0A6;transition:width 1.2s var(--ease) .2s}
.esc.on .e-bar i,.tel-m .e-bar i{width:var(--w)}
.e-fila{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid #EEF4F0;font-size:13px}
.e-fila:first-of-type{border-top:0}
.e-fila .fila{gap:10px}.e-fila .fila b{font-size:13px}.e-fila .fila small{font-size:11px}
.e-fila>b{font-weight:700;font-variant-numeric:tabular-nums}
.e-fila>b.neg{color:var(--coral)}
.lg{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;font-weight:800;font-size:13px;color:#fff;flex:none}
.e-ent{opacity:0;transform:translateY(12px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.esc.on .e-ent,.tel-m .e-ent{opacity:1;transform:none}
.esc.on .e-ent:nth-child(2){transition-delay:.12s}.esc.on .e-ent:nth-child(3){transition-delay:.24s}.esc.on .e-ent:nth-child(4){transition-delay:.36s}.esc.on .e-ent:nth-child(5){transition-delay:.48s}.esc.on .e-ent:nth-child(6){transition-delay:.6s}
.fuente{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:#fff;border:1px solid #E7F0EA;margin-bottom:8px;font-size:12.5px}
.fuente b{font-size:13px;display:block}.fuente small{color:var(--ink3);font-size:11px}
.fuente .ok{margin-left:auto;font-family:'JetBrains Mono',monospace;font-size:9.5px;font-weight:700;color:var(--verde2);background:var(--menta);padding:4px 7px;border-radius:999px;letter-spacing:.06em}
.meses{display:flex;align-items:flex-end;gap:7px;height:96px;margin-top:10px}
.meses div{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:5px}
.meses i{width:100%;border-radius:7px 7px 4px 4px;background:#C9EBD7;height:0;transition:height 1s var(--ease)}
.meses i.oro{background:var(--oro)}
.esc.on .meses i,.tel-m .meses i{height:var(--h)}
.meses span{font-size:9.5px;color:var(--ink3);font-weight:700}
.alerta{border-radius:18px;padding:12px 14px;background:#fff;border:1px solid #E7F0EA;margin-bottom:9px;box-shadow:0 12px 26px -18px rgba(10,70,45,.4)}
.alerta .fila b{font-size:13px}.alerta .fila small{font-size:11.5px;color:var(--ink2)}
.alerta.roja{border-color:#F7CFC6;background:#FFF7F5}
.burb{max-width:84%;padding:10px 13px;border-radius:18px;font-size:13px;line-height:1.42;margin-bottom:8px}
.burb.yo{margin-left:auto;background:var(--ink);color:#fff;border-bottom-right-radius:6px}
.burb.ella{background:#fff;border:1px solid #E7F0EA;border-bottom-left-radius:6px}
.mini{background:#fff;border:1px solid #E7F0EA;border-radius:16px;padding:11px 12px;margin-bottom:8px;max-width:86%}
.mini .e-et{color:var(--verde2)}
.mb{display:flex;align-items:center;gap:8px;font-size:11.5px;margin-top:6px;color:var(--ink2)}.mb span{width:64px}.mb i{height:6px;border-radius:3px;background:var(--verde);width:0;transition:width 1s var(--ease) .5s}
.esc.on .mb i,.tel-m .mb i{width:var(--w)}
.voz{position:absolute;left:18px;right:18px;bottom:18px;height:50px;border-radius:999px;background:#fff;border:1px solid #E7F0EA;display:flex;align-items:center;gap:10px;padding:0 8px 0 16px;font-size:13px;color:var(--ink3)}
.voz span{margin-left:auto;width:36px;height:36px;border-radius:50%;background:var(--verde2);display:grid;place-items:center}
.voz svg{width:17px;height:17px}
.anillo{position:relative;width:118px;height:118px;flex:none}
.anillo svg{width:100%;height:100%;transform:rotate(-90deg)}
.anillo circle{fill:none;stroke-width:11}
.anillo .arco{stroke:var(--verde);stroke-linecap:round;stroke-dasharray:314;stroke-dashoffset:314;transition:stroke-dashoffset 1.4s var(--ease) .2s}
.esc.on .anillo .arco,.tel-m .anillo .arco{stroke-dashoffset:var(--o)}
.anillo b{position:absolute;inset:0;display:grid;place-items:center;font-size:24px;font-weight:800;letter-spacing:-.04em}
.avs{display:flex}.avs i{width:28px;height:28px;border-radius:50%;border:2px solid #fff;display:grid;place-items:center;font-style:normal;font-weight:800;font-size:11px;color:#fff}.avs i+i{margin-left:-8px}

/* videos */
.filtros{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:34px 0 30px}
.filtros button{padding:9px 16px;border-radius:999px;font-weight:600;font-size:14px;color:var(--ink2);background:rgba(255,255,255,.75);border:1px solid var(--vid-bd)}
.filtros button.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.carrusel{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(var(--g)*-1);padding:10px var(--g) 30px}
.carrusel::-webkit-scrollbar{display:none}
.galeria{display:flex;gap:20px;width:max-content;margin:0 auto}
.vcard{position:relative;width:300px;flex:none;scroll-snap-align:center;scroll-snap-stop:always;cursor:pointer}
.vcard .vc-m{position:relative;aspect-ratio:4/5;border-radius:26px;overflow:hidden;background:#0B1F15;box-shadow:var(--sh)}
.vcard video,.vcard img{width:100%;height:100%;object-fit:cover}
.vcard .play{position:absolute;left:16px;bottom:16px;width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.92);display:grid;place-items:center;transition:transform .3s var(--ease)}
.vcard:hover .play{transform:scale(1.08)}
.vcard .play svg{width:18px;height:18px;margin-left:3px;fill:var(--ink)}
.vcard .dur{position:absolute;right:14px;bottom:20px;font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;color:#fff;background:rgba(0,0,0,.4);padding:4px 8px;border-radius:999px}
.vcard h4{font-size:16px;font-weight:700;letter-spacing:-.01em;margin:14px 4px 2px}
.vcard p{font-size:13.5px;color:var(--ink3);margin:0 4px}
.vcard.pronto .vc-m{background:#fff;border:1.5px dashed #C9DDD1;box-shadow:none;display:grid;place-items:center;text-align:center;color:var(--ink3);font-weight:600;font-size:14px}
.vcard.pronto svg.mini-l{width:90px;height:90px;margin:0 auto 8px;overflow:visible}
.modal{position:fixed;inset:0;z-index:200;background:rgba(8,28,19,.72);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:grid;place-items:center;opacity:0;pointer-events:none;transition:opacity .35s}
.modal.on{opacity:1;pointer-events:auto}
.m-marco{width:min(92vw,calc(86vh*.8));aspect-ratio:4/5;border-radius:28px;overflow:hidden;background:#000;box-shadow:0 40px 100px -30px rgba(0,0,0,.6);transform:scale(.96);transition:transform .4s var(--ease)}
.modal.on .m-marco{transform:none}
.modal.ancho .m-marco{width:min(92vw,calc(84vh * 16 / 9));aspect-ratio:16/9}.modal.alto .m-marco{width:min(92vw,calc(84vh * 9 / 16));aspect-ratio:9/16}
.modal.ancho video,.modal.alto video{object-fit:contain;background:#F5FBF7}
.m-marco video{width:100%;height:100%;object-fit:cover}
.m-cerrar{position:absolute;top:20px;right:20px;width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.9);font-size:18px;font-weight:700}

/* seguridad */
.seg{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:46px}
.seg article{padding:26px}
.seg h3{font-size:19px;margin:16px 0 8px;letter-spacing:-.02em}
.seg p{font-size:15px;color:var(--ink2);line-height:1.5}
@media(max-width:980px){.seg{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.seg{grid-template-columns:1fr}}

/* preguntas */
.faq{max-width:780px;margin:40px auto 0;padding:10px 28px}
.faq details{border-bottom:1px solid var(--line)}
.faq details:last-child{border:0}
.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 0;font-weight:700;font-size:17px;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq summary i{width:28px;height:28px;flex:none;border-radius:50%;background:var(--menta);position:relative;transition:transform .3s var(--ease)}
.faq summary i::before,.faq summary i::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;background:var(--verde2);border-radius:2px}
.faq summary i::after{transform:rotate(90deg);transition:transform .3s var(--ease)}
.faq details[open] summary i::after{transform:none}
.faq details p{padding:0 0 22px;color:var(--ink2);font-size:16px;max-width:660px}

/* cierre */
.cierre{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:30px;padding:clamp(34px,5vw,64px);border-radius:36px}
.cierre h2{font-size:clamp(32px,4vw,52px)}
.lk-w{position:relative;display:flex;flex-direction:column;align-items:center;width:100%}.cierre .lk{width:100%;max-width:340px;aspect-ratio:1;margin:0 auto;overflow:visible;pointer-events:none;user-select:none;-webkit-user-select:none}
.lk-hint{display:inline-block;margin-top:-10px;font:700 11px 'JetBrains Mono',monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--ink3)}
@media(max-width:860px){.cierre{grid-template-columns:minmax(0,1fr);text-align:center;padding:34px 22px}.cierre>div{min-width:0;width:100%}.cierre .ctas{width:100%}.cierre .ctas .btn{width:100%}.cierre .sub{margin:0 auto}.cierre .ctas{justify-content:center}.lk-w{order:-1}.cierre .lk{width:min(260px,70vw);max-width:none}.cierre>div{display:flex;flex-direction:column;align-items:center}.cierre .badge{align-self:center}}

/* pie */
footer{padding:60px 0 40px;border-top:1px solid var(--line)}
footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}
footer p{font-size:14px;color:var(--ink3);margin-top:12px;max-width:280px}
footer h5{font-size:13px;font-weight:700;margin-bottom:12px}
footer ul{list-style:none;display:grid;gap:8px;font-size:14px;color:var(--ink2)}
.copy{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;margin-top:30px;padding-top:24px;border-top:1px solid var(--line);font-size:13px;color:var(--ink3)}
.copy img{height:18px;filter:brightness(0);opacity:.45}
@media(max-width:760px){footer .wrap{grid-template-columns:1fr 1fr}footer .wrap>div:first-child{grid-column:1/-1}}

/* LUKA flotante + chat (el agente, igual que AURA en fidelya.cl) */
.luka-fab{position:fixed;right:16px;bottom:16px;z-index:120;border:0;padding:0;background:none;opacity:0;cursor:pointer;transform-origin:50% 80%;will-change:transform}
.luka-fab svg{pointer-events:none;width:100%;height:100%;overflow:visible;filter:drop-shadow(0 14px 18px rgba(10,110,65,.32))}
@media(min-width:921px){.luka-fab{right:26px;bottom:24px}}
.fab-globo{position:absolute;right:calc(100% + 6px);top:50%;transform:translateY(-50%) translateX(8px) scale(.9);transform-origin:right center;white-space:nowrap;padding:9px 14px;border-radius:16px 16px 4px 16px;background:#fff;color:var(--ink);font:700 14px 'Plus Jakarta Sans',sans-serif;box-shadow:0 12px 28px -12px rgba(10,90,55,.45);opacity:0;pointer-events:none;transition:opacity .4s,transform .5s var(--ease)}
.fab-globo.on{opacity:1;transform:translateY(-50%);pointer-events:auto}
.chat-velo{position:fixed;inset:0;z-index:130;background:rgba(15,42,30,.28);opacity:0;pointer-events:none;transition:opacity .35s}
.chat-velo.on{opacity:1;pointer-events:auto}
.chat-hoja{display:flex;flex-direction:column;position:fixed;left:0;right:0;bottom:0;z-index:140;height:min(80svh,680px);border-radius:28px 28px 0 0;background:linear-gradient(180deg,#FFFFFF,#F4FBF7);box-shadow:0 -20px 50px -20px rgba(10,80,50,.35);transform:translateY(105%);transition:transform .5s var(--ease),height .25s ease,bottom .25s ease;padding-bottom:env(safe-area-inset-bottom)}
.chat-hoja.on{transform:none}
.chat-hoja::before{content:'';position:absolute;left:50%;top:8px;width:40px;height:4px;margin-left:-20px;border-radius:2px;background:rgba(15,42,30,.15)}
@media(min-width:921px){.chat-hoja{left:auto;right:34px;top:50px;bottom:auto;width:440px;height:min(700px,calc(100vh - 90px));border-radius:28px;transform:translateY(24px) scale(.96);opacity:0;pointer-events:none;transition:transform .45s var(--ease),opacity .35s}.chat-hoja.on{transform:none;opacity:1;pointer-events:auto}.chat-hoja::before{display:none}.chat-velo{background:transparent}}
.ch-cab{display:flex;align-items:center;gap:12px;padding:20px 18px 14px;border-bottom:1px solid var(--line);touch-action:none;cursor:grab}
.ch-av{width:46px;height:46px;border-radius:14px;background:var(--menta);display:flex;align-items:center;justify-content:center;overflow:visible}
.ch-av svg{pointer-events:none;width:46px;height:46px;overflow:visible}
.ch-cab b{display:block;font-size:16px;font-weight:800}.ch-cab small{display:block;font-size:12.5px;color:var(--verde2);font-weight:600}
.ch-x{margin-left:auto;width:36px;height:36px;border-radius:50%;background:rgba(15,42,30,.06);font-size:15px}
.ch-msgs{flex:1;overflow-y:auto;padding:16px 16px 8px;display:flex;flex-direction:column;gap:8px;overscroll-behavior:contain}
.ch-b{max-width:84%;padding:11px 14px;font-size:15px;line-height:1.45;animation:chEntra .35s var(--ease)}
.ch-b.luka{align-self:flex-start;background:#fff;border:1px solid var(--line);border-radius:18px 18px 18px 6px}
.ch-b.yo{align-self:flex-end;background:var(--verde2);color:#fff;border-radius:18px 18px 6px 18px;font-weight:600}
.ch-b.esc{display:flex;gap:4px;padding:14px 16px}.ch-b.esc i{width:7px;height:7px;border-radius:50%;background:#B9D6C5;animation:chPunto 1s infinite}.ch-b.esc i:nth-child(2){animation-delay:.15s}.ch-b.esc i:nth-child(3){animation-delay:.3s}
.ch-tj{width:84%}.ch-tj .t1{font:700 10.5px 'JetBrains Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--verde2)}
.ch-cifras{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0 4px}.ch-cifras small{display:block;font-size:12px;color:var(--ink3);font-weight:600}.ch-cifras b{display:block;font-size:24px;font-weight:800;letter-spacing:-.04em}.ch-cifras b.v{color:var(--verde2)}
.ch-tj .nota{font-size:12.5px;color:var(--ink3)}
.ch-pie{display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px 16px}.ch-pie:empty{display:none}
.ch-chip{padding:9px 14px;border-radius:999px;border:1px solid rgba(11,154,91,.28);background:#fff;font:600 14px 'Plus Jakarta Sans',sans-serif;animation:chEntra .35s var(--ease) backwards}
.ch-in{display:flex;gap:8px;width:100%}
.ch-in input{flex:1;height:48px;padding:0 16px;border-radius:999px;border:1px solid rgba(15,42,30,.14);background:#fff;font:500 16px 'Plus Jakarta Sans',sans-serif;color:var(--ink);outline:none}
.ch-in input:focus{border-color:var(--verde2)}
.ch-in button{width:48px;height:48px;border-radius:50%;background:var(--verde2);display:flex;align-items:center;justify-content:center}
.ch-in svg{width:20px;height:20px}
.ch-wa{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:52px;border-radius:999px;background:#25D366;color:#fff;font-weight:800;font-size:16px;box-shadow:0 12px 26px -12px rgba(37,211,102,.7)}
.ch-wa svg{width:22px;height:22px}
.ch-menu{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:4px}
.ch-menu .ch-op.prim,.ch-menu .ch-menu-t,.ch-menu .ch-op.ancho{grid-column:1/-1}
.ch-menu .ch-op:not(.prim):not(.ancho){padding:12px 11px;gap:9px;font-size:14px;align-items:center}
.ch-menu .ch-op:not(.prim):not(.ancho) .fl{display:none}
.ch-menu .ch-op:not(.prim):not(.ancho) .e{width:32px;height:32px;font-size:16px}
.ch-menu-t{margin:8px 2px 0;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink3)}
.ch-op{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-radius:18px;border:1px solid var(--line);background:#fff;text-align:left;font:600 15px 'Plus Jakarta Sans',sans-serif;box-shadow:0 6px 16px -12px rgba(10,90,55,.35);animation:chEntra .4s var(--ease) backwards;transition:transform .15s}
.ch-op:active{transform:scale(.98)}
.ch-op .e{width:36px;height:36px;flex:none;border-radius:12px;background:var(--menta);display:flex;align-items:center;justify-content:center;font-size:18px}
.ch-op .tx{flex:1;line-height:1.3}.ch-op .tx b{display:block;font-weight:800}.ch-op .tx small{display:block;font-size:12.5px;font-weight:600;opacity:.85}
.ch-op .fl{font-size:22px;color:#B9D6C5;line-height:1}
.ch-op.prim{background:var(--verde2);color:#fff;border-color:transparent;box-shadow:0 14px 28px -14px rgba(11,154,91,.75)}
.ch-op.prim .e{background:rgba(255,255,255,.2)}.ch-op.prim .fl{color:rgba(255,255,255,.8)}
@keyframes chPunto{50%{transform:translateY(-4px);background:var(--verde2)}}@keyframes chEntra{from{opacity:0;transform:translateY(8px) scale(.97)}}

/* teléfono liviano: sin desenfoques de vidrio */
@media(max-width:920px){.vidrio,.badge,.btn-g,nav.sc,.menu-m,.modal{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.vidrio{background:rgba(255,255,255,.86)}nav.sc{background:rgba(245,251,247,.95)}#luz{display:none}}
@media(prefers-reduced-motion:reduce){.rev{opacity:1;transform:none;filter:none}.marq,#fondo i{animation:none}}
