/* Home danielgarciadecelis.com · maquetación (usa tokens.css y bundle.css del sistema) */
a{color:var(--ink)}a:hover{color:var(--ink-accent)}
.pg{background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}
.wrap{max-width:1560px;margin:0 auto;padding:0 56px;box-sizing:border-box}
.row{display:grid;grid-template-columns:152px minmax(0,1fr)}
.rail{border-right:1px solid var(--line);padding-top:96px;white-space:nowrap}
.cnt{padding:96px 0 96px 48px;min-width:0}
.sec{border-top:1px solid var(--line)}
.cnt-hero{padding-top:72px;padding-bottom:80px}
.h-hero{margin:0;font-family:var(--font-display);font-weight:900;font-stretch:80%;font-size:clamp(44px,5vw,96px);line-height:.9;letter-spacing:-.04em;text-wrap:balance}
.h-sec{margin:0 0 40px;font-family:var(--font-display);font-weight:800;font-stretch:88%;font-size:clamp(30px,3vw,40px);line-height:1.05;letter-spacing:-.02em;max-width:22ch}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'head head' 'txt photo';column-gap:64px;row-gap:44px;align-items:start}
.hero-head{grid-area:head}
.hero-txt{grid-area:txt;display:flex;flex-direction:column;gap:32px;align-items:flex-start}
.hero-photo{grid-area:photo;width:clamp(300px,24vw,420px);padding:6px 0 14px 14px}
.hero-photo img{object-position:50% 22%}
.clients{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.videos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 20px}
.videos > a:first-child{grid-column:span 2;grid-row:span 2}
.quotes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 64px}
.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px}
.course{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:56px;align-items:start}
.course-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.vid{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:var(--ink)}
.vid .th{position:relative;aspect-ratio:16/9;overflow:hidden;background:var(--bg-sunken)}
.vid img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(1);transition:filter .2s ease}
.vid:hover img{filter:none}
.vid .play{position:absolute;left:0;bottom:0;width:52px;height:52px;background:var(--accent);display:grid;place-items:center}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.navp{padding:14px 44px}
.foot a{color:var(--ink-subtle);text-decoration:none}.foot a:hover{color:var(--ink)}
@media (max-width:820px){
.wrap{padding:0 20px}
.navp{padding:12px 20px}
.row{grid-template-columns:minmax(0,1fr)}
.rail{border-right:0;padding-top:56px}
.cnt{padding:20px 0 56px}
.cnt-hero{padding-top:24px}
.clients .dg-cliente{grid-template-columns:minmax(0,1fr);gap:10px}
.hero-photo{width:auto;max-width:340px;padding:0 0 14px 14px}
.hero-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:'head' 'txt' 'photo';row-gap:32px}
.clients{grid-template-columns:repeat(2,minmax(0,1fr))}
.videos{grid-template-columns:minmax(0,1fr)}
.videos > a:first-child{grid-column:auto;grid-row:auto}
.quotes{grid-template-columns:minmax(0,1fr);gap:40px}
.stats{grid-template-columns:minmax(0,1fr);gap:28px}
.course{grid-template-columns:minmax(0,1fr);gap:36px}
.course-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.dg-nav .dg-nav__nombre{font-size:12px}
.dg-stat--grande .dg-stat__num{font-size:60px}
}
/* Pop-up de salida */
.popup-fondo{position:fixed;inset:0;background:rgba(4,4,6,.86);z-index:100;display:flex;align-items:center;justify-content:center;padding:24px}
.popup-caja{position:relative;background:var(--bg-raised);border:1px solid var(--line-strong);max-width:560px;width:100%;padding:44px 40px 40px;box-sizing:border-box}
.popup-cerrar{position:absolute;top:10px;right:16px;font-family:var(--font-mono);font-size:26px;line-height:1;color:var(--ink-subtle);background:none;border:0;padding:4px;cursor:pointer}
.popup-cerrar:hover{color:var(--ink)}
.legal-nota a{color:inherit;text-decoration:underline}
#la-lista{scroll-margin-top:72px}
@media (max-width:520px){.popup-caja{padding:40px 22px 28px}}
.vid-nombre{font-family:var(--font-display);font-size:18px;font-weight:700;font-stretch:92%}
.vid-rol{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--ink-subtle);margin-top:4px}
.btn-invertido{background:var(--on-accent);color:var(--accent);border-color:var(--on-accent)}
.btn-invertido:hover{background:var(--bg-raised);color:var(--accent);border-color:var(--bg-raised)}
.popup-caja .dg-label{display:flex}

/* ===== Home v2 (auditoría) · añadidos sobre home.css ===== */
.hero2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.82fr);grid-template-areas:'head head' 'txt vid';column-gap:64px;row-gap:44px;align-items:start}
.hero2 .h-hero{font-size:clamp(42px,4.6vw,88px)}
.hero2-head{grid-area:head}
.hero2-txt{grid-area:txt;display:flex;flex-direction:column;gap:28px;align-items:flex-start}
.hero2-vid{grid-area:vid}
.precio-nota{font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--ink-subtle);line-height:1.6}
.precio-nota b{color:var(--ink);font-weight:500}
.cred{display:flex;gap:14px;align-items:flex-start;max-width:56ch;padding-top:24px;border-top:1px solid var(--line);font-size:15px;line-height:1.5;color:var(--ink-muted)}
.cred::before{content:"";flex:none;width:4px;align-self:stretch;background:var(--accent)}
.vid-hero .th{aspect-ratio:16/9}
.vid-hero .play{width:72px;height:72px}
.vid-pie{display:flex;justify-content:space-between;gap:16px;align-items:baseline}
.videos4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 20px}
.aud-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:end;margin-bottom:64px}
.aud-intro .lead2{margin:0;font-size:20px;line-height:1.55;color:var(--ink-muted);max-width:52ch}
.entrega{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.entrega > div{padding:28px 28px 32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.entrega .n{font-family:var(--font-mono);font-size:12px;color:var(--ink-accent);letter-spacing:.04em}
.entrega h3{margin:14px 0 10px;font-family:var(--font-display);font-size:21px;line-height:1.25;font-weight:700;letter-spacing:-.01em}
.entrega p{margin:0;font-size:15px;line-height:1.55;color:var(--ink-muted)}
.sub-h{margin:72px 0 28px;font-family:var(--font-display);font-weight:800;font-stretch:88%;font-size:27px;letter-spacing:-.015em}
.pasos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;counter-reset:p}
.pasos li{position:relative;padding-top:22px;border-top:2px solid var(--line-strong)}
.pasos li:first-child{border-top-color:var(--accent)}
.pasos .t{display:block;font-family:var(--font-display);font-weight:700;font-size:18px;line-height:1.25;margin:10px 0 8px}
.pasos .d{display:block;font-size:14.5px;line-height:1.55;color:var(--ink-muted)}
.pasos .k{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--ink-subtle)}
.encaje{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:72px}
.encaje > div{padding:32px;background:var(--bg-raised);border:1px solid var(--line)}
.encaje h3{margin:0 0 20px;font-family:var(--font-display);font-size:24px;font-weight:800;letter-spacing:-.015em}
.encaje ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.encaje li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;font-size:16px;line-height:1.5;color:var(--ink)}
.encaje li::before{font-family:var(--font-mono);font-size:14px;line-height:1.6}
.encaje .si li::before{content:"✓";color:var(--ink-accent)}
.encaje .no li::before{content:"×";color:var(--ink-subtle)}
.encaje .no li{color:var(--ink-muted)}
.encaje .no a{color:var(--ink)}
.precio-box{margin-top:20px;display:flex;flex-wrap:wrap;gap:24px 48px;align-items:center;justify-content:space-between;padding:32px;border:1px solid var(--accent)}
.precio-box .cifra{font-family:var(--font-display);font-weight:900;font-stretch:80%;font-size:56px;line-height:1;letter-spacing:-.03em}
.precio-box .cifra small{font-family:var(--font-mono);font-size:13px;font-weight:500;letter-spacing:.04em;color:var(--ink-subtle);margin-left:12px;font-stretch:100%}
.precio-box p{margin:10px 0 0;font-size:15px;line-height:1.55;color:var(--ink-muted);max-width:58ch}
.quotes3{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 64px}
.puertas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.puerta{display:flex;flex-direction:column;gap:14px;padding:36px;border:1px solid var(--line-strong)}
.puerta .k{font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--ink-accent)}
.puerta h3{margin:0;font-family:var(--font-display);font-weight:900;font-stretch:82%;font-size:40px;line-height:1;letter-spacing:-.03em}
.puerta p{margin:0;font-size:16px;line-height:1.6;color:var(--ink-muted)}
.puerta .precio{margin-top:auto;padding-top:20px;border-top:1px solid var(--line);font-family:var(--font-mono);font-size:13px;letter-spacing:.02em;color:var(--ink)}
.nota-puertas{margin:24px 0 0;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--ink-subtle)}
.quien{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:64px;align-items:start}
.quien .stats{margin-top:40px}
.quien-foto{max-width:520px;padding:6px 0 14px 14px}
.quien-foto img{object-position:50% 22%}
.quien .clients{grid-template-columns:repeat(2,minmax(0,1fr))}
.clients-h{margin:56px 0 18px;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--ink-subtle)}
.antes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:40px}
.antes > div{padding:32px;background:var(--bg-raised);border:1px solid var(--line);display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.antes h3{margin:0;font-family:var(--font-display);font-size:27px;font-weight:800;letter-spacing:-.015em}
.antes p{margin:0;font-size:16px;line-height:1.6;color:var(--ink-muted)}
.solicitud{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:64px;align-items:start}
.sol-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}
.sol-form .full{grid-column:1 / -1}
.campo{display:flex;flex-direction:column;gap:8px}
.campo label{font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--ink-muted)}
.campo .dg-input,.campo select,.campo textarea{flex:none;width:100%;border-right:1px solid var(--line-strong);border-radius:var(--radius-1);font-family:var(--font-sans);font-size:16px;color:var(--ink);background:var(--bg-sunken);border:1px solid var(--line-strong);box-sizing:border-box}
.campo select{height:52px;padding:0 14px;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink-subtle) 50%),linear-gradient(135deg,var(--ink-subtle) 50%,transparent 50%);background-position:calc(100% - 20px) 23px,calc(100% - 15px) 23px;background-size:5px 5px;background-repeat:no-repeat}
.campo textarea{min-height:110px;padding:14px 16px;resize:vertical}
.maqueta{display:inline-block;margin-top:24px;padding:6px 10px;border:1px dashed var(--line-strong);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--ink-subtle)}
@media (max-width:820px){
.hero2{grid-template-columns:minmax(0,1fr);grid-template-areas:'head' 'txt' 'vid';row-gap:32px}
.videos4{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}
.aud-intro{grid-template-columns:minmax(0,1fr);gap:24px;margin-bottom:40px}
.entrega{grid-template-columns:minmax(0,1fr)}
.entrega > div{padding:22px 20px 24px}
.pasos{grid-template-columns:minmax(0,1fr);gap:24px}
.encaje,.puertas,.antes,.quien,.solicitud,.quotes3{grid-template-columns:minmax(0,1fr)}
.encaje{margin-top:48px}
.encaje > div,.puerta,.antes > div{padding:24px 20px}
.precio-box{padding:24px 20px}
.precio-box .cifra{font-size:44px}
.puerta h3{font-size:34px}
.quien{gap:40px}
.sol-form{grid-template-columns:minmax(0,1fr)}
.sub-h{margin-top:56px}
.cred{font-size:14px}
}

/* ===== Home v3 (lista) ===== */
.coments{columns:3 300px;column-gap:20px}
.coment{break-inside:avoid;margin:0 0 20px;padding:24px;background:var(--bg-raised);border:1px solid var(--line);display:flex;flex-direction:column;gap:18px}
.coment blockquote{margin:0;font-size:16px;line-height:1.6;color:var(--ink)}
.coment blockquote p{margin:0 0 10px}
.coment blockquote p:last-child{margin:0}
.coment figcaption{display:flex;align-items:center;gap:12px}
.coment figcaption img,.coment .ini{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none;filter:grayscale(1)}
.coment .ini{display:grid;place-items:center;background:var(--bg-sunken);border:1px solid var(--line-strong);font-family:var(--font-mono);font-size:13px;font-weight:600;color:var(--ink)}
.coment .q{font-weight:700;font-size:15px}
.coment .d{font-family:var(--font-mono);font-size:11px;letter-spacing:.03em;color:var(--ink-subtle);margin-top:2px}
.coment.top{border-color:var(--accent)}
.coment.top blockquote{font-size:19px;line-height:1.5}
.clients4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.regalo{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:56px;align-items:center}
.regalo-caja{background:var(--bg-raised);border:1px solid var(--accent);padding:32px;display:flex;flex-direction:column;gap:16px}
.regalo ul{margin:0;padding-left:20px;color:var(--ink-muted);font-size:17px;line-height:1.6}
.regalo li{margin-bottom:8px}
.borrador{display:inline-block;padding:5px 9px;border:1px dashed var(--accent);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--ink-accent)}
.trabaja{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr);gap:64px;align-items:start}
.desglose-banda{display:flex;flex-wrap:wrap;gap:20px 40px;align-items:center;justify-content:space-between}
@media (max-width:820px){
.clients4{grid-template-columns:repeat(2,minmax(0,1fr))}
.regalo,.trabaja{grid-template-columns:minmax(0,1fr);gap:32px}
.regalo-caja{padding:24px 20px}
.coment{padding:20px}
}

/* ===== Home v3b: prueba repartida ===== */
.clients-flex{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.clients-flex .dg-cliente{flex:0 0 calc(25% - 7.5px);box-sizing:border-box}
.hcoms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:48px}
.hcom{margin:0;display:grid;grid-template-columns:72px minmax(0,1fr);gap:22px;align-items:start;padding:28px 30px;background:var(--bg-raised);border-left:4px solid var(--accent)}
.hcom img,.hcom .ini{width:72px;height:72px;border-radius:50%;object-fit:cover;filter:grayscale(1)}
.hcom .ini{display:grid;place-items:center;background:var(--bg-sunken);border:1px solid var(--line-strong);font-family:var(--font-mono);font-weight:600;font-size:18px;color:var(--ink)}
.hcom blockquote{margin:0 0 14px;font-size:16.5px;line-height:1.6;color:var(--ink)}
.hcom blockquote p{margin:0 0 10px}
.hcom blockquote p:last-child{margin:0}
.hcom .q{font-weight:700;font-size:15px}
.hcom .d{font-family:var(--font-mono);font-size:11px;letter-spacing:.03em;color:var(--ink-subtle);margin-left:8px}
.hcoms.uno{grid-template-columns:minmax(0,1fr)}
.cta-fila{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;margin-top:48px}
.banda-final{background:var(--accent);color:var(--on-accent)}
.contacto-linea{margin-top:36px;padding-top:24px;border-top:1px solid var(--line);font-size:17px;color:var(--ink-muted)}
.contacto-linea a{color:var(--ink)}
@media (max-width:820px){
.clients-flex .dg-cliente{flex:0 0 calc(50% - 5px)}
.hcoms{grid-template-columns:minmax(0,1fr)}
.hcom{grid-template-columns:52px minmax(0,1fr);gap:16px;padding:22px 20px}
.hcom img,.hcom .ini{width:52px;height:52px}
}

/* Foto de la cabecera: color al pasar el cursor, como los vídeos */
.hero-photo .dg-foto img{transition:filter .2s ease}
.hero-photo:hover .dg-foto img{filter:none}
.hero-sub{margin:0;font-size:clamp(20px,1.9vw,25px);line-height:1.5;color:var(--ink-muted);max-width:60ch}
.hero-sin{margin:0;font-size:clamp(20px,1.9vw,25px);line-height:1.35;font-weight:800;font-stretch:92%;letter-spacing:-.01em;color:var(--ink);max-width:60ch}

/* ===== Home final ===== */
.hero-puntos{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.hero-puntos li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:12px;align-items:baseline;font-size:clamp(18px,1.6vw,22px);font-weight:800;font-stretch:92%;line-height:1.3;letter-spacing:-.01em;color:var(--ink)}
.hero-puntos li::before{content:"";width:11px;height:11px;background:var(--accent)}
.ucoms{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ucoms.cuatro{grid-template-columns:repeat(2,minmax(0,1fr))}
.ucom{margin:0;display:flex;flex-direction:column;gap:16px;padding:26px;background:var(--bg-raised);border-top:4px solid var(--accent)}
.ucom blockquote{margin:0;font-size:18px;font-weight:600;font-stretch:94%;line-height:1.45;letter-spacing:-.005em;color:var(--ink)}
.ucom details summary{cursor:pointer;list-style:none;font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--ink-subtle)}
.ucom details summary::-webkit-details-marker{display:none}
.ucom details[open] summary{color:var(--ink)}
.ucom details p{margin:10px 0 0;font-size:15px;line-height:1.6;color:var(--ink-muted)}
.ucom figcaption{margin-top:auto;display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px solid var(--line)}
.ucom figcaption img{width:44px;height:44px;border-radius:50%;object-fit:cover;filter:grayscale(1)}
.ucom .q{font-weight:700;font-size:15px}
.ucom .d{font-family:var(--font-mono);font-size:11px;letter-spacing:.03em;color:var(--ink-subtle);margin-top:2px}
.fases7{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;position:relative}
.fases7::before{content:"";position:absolute;left:0;right:0;top:21px;height:2px;background:var(--accent)}
.fases7 li{position:relative;padding-right:16px}
.fases7 .n{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--accent);color:var(--on-accent);font-family:var(--font-mono);font-weight:600;font-size:13px;position:relative}
.fases7 .t{display:block;margin-top:16px;font-family:var(--font-display);font-weight:800;font-stretch:86%;font-size:18px;line-height:1.15;text-transform:uppercase;letter-spacing:-.01em;color:var(--ink)}
.fases7 .c{display:block;margin-top:8px;font-size:14.5px;line-height:1.5;color:var(--ink-muted)}
.enlace-suave{display:inline-block;margin-top:44px;font-size:17px;color:var(--ink-muted)}
.enlace-suave a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:4px}
.nav-logo svg{height:30px;width:auto;display:block;color:var(--ink)}
@media (max-width:1100px){.ucoms{grid-template-columns:minmax(0,1fr)}.ucoms.cuatro{grid-template-columns:minmax(0,1fr)}
.fases7{grid-template-columns:minmax(0,1fr);gap:22px}.fases7::before{left:21px;right:auto;top:0;bottom:0;width:2px;height:auto}
.fases7 li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:0 16px;padding:0}.fases7 .t{margin-top:10px}.fases7 .c{grid-column:2}}
@media (max-width:820px){.nav-logo svg{height:24px}}
/* 21-oct tarde: comentario suelto dentro de una sección */
.ucom-solo{max-width:620px}
.ucom-solo .ucom{background:var(--bg-sunken)}
.ucom-extra{margin:-4px 0 0;font-size:16px;font-weight:600;font-stretch:94%;line-height:1.5;color:var(--ink-muted)}

/* 21-oct: sin línea vertical del raíl ni líneas entre secciones; separa el cambio de fondo */
.rail{border-right:0}
.sec{border-top:0}

/* 21-oct: cifras de «Quién soy» sin línea encima, como el resto de la página */
.stats .dg-stat{border-top:0;padding-top:0}
