/* Analizador facial · análisis avanzado de piel */
#s-intro[hidden],#s-cap[hidden],#s-check[hidden],#s-run[hidden],#s-res[hidden],.ap [hidden]{display:none!important}
.ap{background:var(--bg)}
.ap-eyebrow{font:500 .75rem/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--silver);margin:0 0 14px}

/* Cabecera oscura */
.ap-hero{background:radial-gradient(120% 90% at 85% 10%,#3a2e26 0%,var(--graphite) 55%);color:var(--ivory);padding:clamp(56px,9vw,128px) 0 clamp(120px,14vw,190px)}
.ap-hero h1{font-size:var(--step-display);margin:0 0 18px;color:var(--ivory);max-width:12ch}
.ap-lead{font-size:clamp(1.0625rem,1.4vw,1.25rem);line-height:1.55;color:#D9D2C7;max-width:56ch;margin:0}
.ap-chips{list-style:none;margin:clamp(26px,3vw,40px) 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ap-chips li{margin:0;border:1px solid var(--line-d);padding:.5em .95em;font:400 .875rem/1 var(--sans);color:#E9E3D9}

/* Tarjeta principal */
.ap-app{position:relative;margin:calc(-1 * clamp(80px,10vw,140px)) auto clamp(96px,11vw,170px);scroll-margin-top:84px}
.ap-card,.ap-check,.ap-run,.ap-res,.ap-cap{background:var(--ivory);box-shadow:0 30px 80px -40px rgba(30,27,23,.45)}
.ap-card{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.ap-card__art{background:radial-gradient(60% 55% at 50% 50%,rgba(176,58,46,.28),rgba(21,19,16,0) 70%),linear-gradient(180deg,rgba(21,19,16,.72),rgba(21,19,16,.9)),url(assets/video/hero/luz-roja-tecnologias.webp) center/cover #151310;display:grid;place-items:center;padding:clamp(28px,4vw,56px);min-height:380px}
.ap-card__art svg{width:min(78%,300px);overflow:visible}
.ap-oval{fill:none;stroke:rgba(238,234,227,.55);stroke-width:1.4;stroke-dasharray:6 6}
.ap-scan{stroke:#D9B66A;stroke-width:1.6;animation:apscan 3.2s ease-in-out infinite}
.ap-dots circle{fill:#D9B66A;opacity:.85;animation:apdot 3.2s ease-in-out infinite}
.ap-dots circle:nth-child(2n){animation-delay:.6s}.ap-dots circle:nth-child(3n){animation-delay:1.2s}
@keyframes apscan{0%,100%{transform:translateY(-110px)}50%{transform:translateY(110px)}}
@keyframes apdot{0%,100%{opacity:.2}50%{opacity:1}}
.ap-card__body{padding:clamp(26px,4vw,56px)}
.ap-steps{list-style:none;margin:0 0 28px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ap-steps li{margin:0;display:flex;flex-direction:column;gap:8px;font:400 .875rem/1.35 var(--sans);color:var(--muted)}
.ap-steps b{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--line);font:500 .8125rem var(--sans);color:var(--ink)}
.ap-h2{font-size:clamp(1.5rem,2.4vw,2.1rem);margin:0 0 12px;line-height:1.15}
.ap-h3{font-size:clamp(1.25rem,1.8vw,1.6rem);margin:clamp(36px,4vw,56px) 0 16px}
.ap-tips{list-style:none;margin:0 0 24px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ap-tips li{margin:0;padding:12px 14px 12px 34px;background:var(--surface);position:relative;font:400 .9375rem/1.4 var(--sans)}
.ap-tips li::before{content:"";position:absolute;left:14px;top:1.05em;width:8px;height:8px;border-radius:50%;background:#B8945A}
.ap-ok{display:flex;gap:12px;align-items:flex-start;font:400 .875rem/1.5 var(--sans);color:var(--muted);margin:0 0 22px;cursor:pointer}
.ap-ok input{margin-top:.2rem;width:1.2rem;height:1.2rem;flex:none;accent-color:var(--graphite)}
.ap-ok a{color:inherit}
.ap-acts{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.ap .lb-btn[disabled],.ap .lb-btn.is-off{opacity:.4;cursor:not-allowed}
.ap-small{font:400 .8125rem/1.5 var(--sans);color:var(--muted);margin:16px 0 0}
.ap-again{background:transparent;border:0;border-bottom:1px solid currentColor;padding:.2em 0;font:400 .9375rem var(--sans);color:var(--ink);cursor:pointer}

/* Cámara */
.ap-cap{background:#151310;color:var(--ivory);padding:18px 18px 22px;display:flex;flex-direction:column;align-items:center;gap:16px}
.ap-cap__view{position:relative;width:min(100%,520px,calc((100svh - 200px) * .75));aspect-ratio:3/4;overflow:hidden;background:#000}
.ap-cap__view video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}
.ap-guide{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.ap-guide ellipse{fill:none;stroke:#EEEAE3;stroke-width:2;stroke-dasharray:7 6;vector-effect:non-scaling-stroke}
.ap-cap__hint{position:absolute;top:12px;left:12px;right:12px;margin:0;text-align:center;font:400 .9375rem/1.4 var(--sans);max-width:none}
.ap-cap__hint span{background:rgba(20,16,14,.72);padding:.3em .7em}
.ap-count{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:7rem;font-weight:300;pointer-events:none;color:var(--ivory)}
.ap-cap__bar{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.ap-btn-light{background:var(--ivory);color:var(--graphite);border-color:var(--ivory)}.ap-btn-light:hover{background:#fff}
.ap-ghost{background:transparent;color:var(--ivory);border:1px solid rgba(238,234,227,.35);font:400 .9375rem var(--sans);padding:1em 1.3em;cursor:pointer}

/* Comprobar foto */
.ap-check{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center}
.ap-check__img{background:#151310;padding:clamp(18px,3vw,36px);display:grid;place-items:center}
.ap-check__img img{max-width:100%;max-height:70svh;display:block}
.ap-check__body{padding:clamp(26px,4vw,56px)}
.ap-check__body p{color:var(--muted);margin:0 0 24px}

/* Analizando */
.ap-run{background:#151310;color:var(--ivory);padding:clamp(24px,4vw,56px);display:flex;flex-direction:column;align-items:center;gap:22px}
.ap-run__img{position:relative;width:min(100%,380px);overflow:hidden}
.ap-run__img img{display:block;width:100%;filter:saturate(.85) brightness(.85)}
.ap-run__line{position:absolute;left:0;right:0;height:2px;background:#D9B66A;box-shadow:0 0 24px 6px rgba(217,182,106,.45);animation:aprun 2.4s ease-in-out infinite}
@keyframes aprun{0%,100%{top:4%}50%{top:94%}}
.ap-run__t{margin:0;font:400 1.0625rem var(--sans);color:#E9E3D9;min-height:1.5em;text-align:center}

/* Informe */
.ap-res{padding:clamp(24px,4vw,60px)}
.ap-sum{display:flex;gap:clamp(20px,3vw,40px);align-items:center;padding-bottom:clamp(24px,3vw,40px);border-bottom:1px solid var(--line);margin-bottom:clamp(24px,3vw,40px)}
.ap-sum p{margin:0;color:var(--muted);max-width:60ch}
.ap-ring{--v:60;flex:none;width:clamp(112px,12vw,150px);aspect-ratio:1;border-radius:50%;background:conic-gradient(#B8945A calc(var(--v)*1%),var(--surface) 0);display:grid;place-items:center;position:relative}
.ap-ring::before{content:"";position:absolute;inset:10px;border-radius:50%;background:var(--ivory)}
.ap-ring b,.ap-ring span{position:relative;grid-area:1/1}
.ap-ring b{font:300 clamp(2.4rem,4vw,3.2rem)/1 var(--serif);margin-top:-14px}
.ap-ring span{font:400 .75rem var(--sans);color:var(--muted);margin-top:44px}
.ap-res__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(20px,3vw,48px);align-items:start}
.ap-viewer{position:sticky;top:90px}
.ap-img{position:relative;background:#151310}
.ap-img img{display:block;width:100%;height:auto}
.ap-img img[data-m]{position:absolute;inset:0}
.ap-img__lab{position:absolute;left:12px;top:12px;margin:0;background:rgba(20,16,14,.75);color:var(--ivory);font:400 .8125rem var(--sans);padding:.35em .7em}
.ap-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.ap-tabs button{font:400 .875rem var(--sans);padding:.55em .85em;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}
.ap-tabs button[aria-selected=true]{background:var(--graphite);color:var(--ivory);border-color:var(--graphite)}
.ap-scores{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ap-scores li{margin:0}
.ap-scores button{width:100%;height:100%;text-align:left;background:var(--surface);border:0;padding:16px 16px 18px;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:4px 10px;color:var(--ink);font-family:var(--sans);transition:background .2s}
.ap-scores button:hover{background:#DAD3C7}
.ap-scores__n{font:500 1rem var(--sans)}
.ap-scores b{grid-row:1/3;grid-column:2;font:300 2.1rem/1 var(--serif);align-self:center}
.ap-scores__l{font:400 .8125rem var(--sans);color:var(--muted)}
.ap-scores__l.is-hi{color:#8A3B2A}.ap-scores__l.is-mid{color:#7A5C2A}.ap-scores__l.is-ok{color:#3F5B3A}
.ap-scores i{grid-column:1/-1;height:4px;background:rgba(30,27,23,.1);position:relative;margin:8px 0 4px}
.ap-scores i::after{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--w);background:var(--graphite)}
.ap-scores i.is-hi::after{background:#A65A3F}.ap-scores i.is-mid::after{background:#B8945A}.ap-scores i.is-ok::after{background:#5E7A57}
.ap-scores small{grid-column:1/-1;font:400 .8125rem/1.4 var(--sans);color:var(--muted)}
.ap-recs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.ap-recs li{margin:0;padding:18px;background:var(--graphite);color:var(--ivory);display:flex;flex-direction:column;gap:8px}
.ap-recs span{font:500 .75rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--silver)}
.ap-recs a{color:var(--ivory);font:400 1.0625rem/1.35 var(--serif);text-decoration:none;border-bottom:1px solid rgba(238,234,227,.35);align-self:flex-start}
.ap-recs a:hover{border-color:var(--ivory)}
.ap-acts--end{margin-top:clamp(28px,3vw,44px)}
.ap-note{font:400 .8125rem/1.55 var(--sans);color:var(--muted);margin:24px 0 0;max-width:none}
.ap-msg{max-width:60ch}.ap-msg p{color:var(--muted);margin:0 0 22px}

@media (max-width:900px){
  .ap-card,.ap-check,.ap-res__grid{grid-template-columns:1fr}
  .ap-card__art{min-height:220px;padding:24px}
  .ap-card__art svg{width:min(52%,200px)}
  .ap-viewer{position:static}
  .ap-check__img img{max-height:52svh}
}
@media (max-width:560px){
  .ap-tips{grid-template-columns:1fr}
  .ap-steps{gap:6px}.ap-steps li{font-size:.8125rem}
  .ap-sum{flex-direction:column;align-items:flex-start}
  .ap-scores{grid-template-columns:1fr}
  .ap-acts .lb-btn{width:100%}
}
@media (prefers-reduced-motion:reduce){.ap-scan,.ap-dots circle,.ap-run__line{animation:none}}

/* Plan sugerido: compra opcional tras una orientación, no una prescripción. */
.ap-plan{margin-top:clamp(36px,4vw,56px);scroll-margin-top:90px}
.ap-plan .ap-h3{margin-top:0}
.ap-plan__lead{color:var(--muted);max-width:66ch;margin:0 0 24px}
.ap-plan__k{font:500 .75rem/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin:26px 0 12px}
.ap-plan__l{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr));gap:10px}
.ap-plan__i{margin:0;padding:20px;background:var(--surface);color:var(--ink);display:flex;flex-direction:column;gap:6px}
.ap-plan__i.is-prio{background:var(--graphite);color:var(--ivory)}
.ap-plan__h{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.ap-plan__h span{font:500 .75rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.ap-plan__i.is-prio .ap-plan__h span{color:var(--silver)}
.ap-plan__h b{font:400 1.25rem/1 var(--serif)}
.ap-plan__t{font:400 1.125rem/1.3 var(--serif);margin:6px 0 0}
.ap-plan__p{font:400 .875rem var(--sans);color:var(--muted);margin:0}
.ap-plan__i.is-prio .ap-plan__p{color:var(--silver)}
.ap-plan__a{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:12px}
.ap-plan__a .lb-btn{padding:.85em 1.4em}
.ap-plan__i:not(.is-prio) .lb-btn--light{background:var(--graphite);color:var(--ivory);border-color:var(--graphite)}
.ap-plan__i:not(.is-prio) .lb-btn--light:hover{background:var(--accent-hover)}
.ap-plan__more{font:500 .875rem var(--sans);color:inherit;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:1px}
.ap-plan__alt{font:400 .8125rem/1.45 var(--sans);color:var(--muted);margin:10px 0 0}
.ap-plan__i.is-prio .ap-plan__alt{color:var(--silver)}
.ap-plan__alt a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.ap-demo{padding:14px 18px;border:1px solid var(--stone);font:500 .875rem/1.5 var(--sans);margin:0 0 24px}
@media (max-width:560px){.ap-plan__a .lb-btn{width:auto;flex:1}}

/* Aviso de límite diario */
.ap-limit{margin:20px 0;padding:16px 18px;border:1px solid #b3261e;border-left-width:4px;background:#fbf3f2}
.ap-limit b{display:block;margin-bottom:6px;color:#8c1d17}
.ap-limit p{margin:0 0 6px;font-size:.9375rem;line-height:1.5}
.ap-limit__n{font-weight:600;font-size:.9375rem;margin:8px 0 0}
.ap-limit__n.is-zero{color:#8c1d17}
#btn-go:disabled{opacity:.5;cursor:not-allowed}

/* Resumen para enviar por WhatsApp */
.ap-share{margin-top:clamp(32px,4vw,56px)}
.ap-share__card{background:#fff;border:1px solid var(--line,rgba(30,27,23,.14));padding:clamp(22px,3vw,36px)}
.ap-share__logo{display:block;width:min(260px,70%);height:auto;margin-bottom:16px}
.ap-share__k{font:500 .75rem/1.4 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--muted,#5E584F);margin:0 0 10px}
.ap-share__p{margin:10px 0 18px;max-width:62ch}
.ap-wa{background:#1F7A4D!important;border-color:#1F7A4D!important;color:#fff!important}
.ap-share__fine{font:400 .6875rem/1.5 var(--sans);color:#8B857C;margin:18px 0 0;max-width:80ch}
.ap-share__fine a{color:inherit;text-decoration:underline}
.ap-share__note{margin:12px 0 0;padding:12px 14px;background:#F4F1EB;border-left:3px solid #1F7A4D;font-size:.875rem;line-height:1.45;color:#1E1B17}
