/* Daimon Learning · sistema compartido por las tres propuestas.
   Paleta y mecanismo salen de brand/look-and-feel.md. Poppins en todo. */

:root{
  --negro:#0A0B0C; --negro-verdemar:#111819; --verdemar-oscuro:#1C2C2E;
  --aqua-claro:#AADFEB; --aqua:#9BD8DA; --verdemar:#92D3CD; --verdemar-medio:#72B4B9;
  --profundo:#2A6270; --papel:#F1F5F5; --blanco:#FFFFFF; --tenue:#5F6E70;
  --fuente:'Poppins','Helvetica Neue',Arial,sans-serif;
}
*{box-sizing:border-box;}
body{margin:0; background:var(--papel); color:var(--negro); font-family:var(--fuente); font-weight:400; -webkit-font-smoothing:antialiased;}

.caja{max-width:1180px; margin:0 auto; padding:0 clamp(22px,5.5vw,70px);}
.bloque{padding:clamp(62px,9vw,120px) 0;}

.tag{display:inline-block; font-size:11.5px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; padding:8px 17px; border-radius:999px; margin:0 0 clamp(24px,3vw,34px) 0;}
.tag-oscuro{background:var(--negro); color:var(--aqua);}
.tag-claro{background:rgba(10,11,12,.09); color:var(--profundo);}
.tag-linea{border:1.5px solid rgba(10,11,12,.22); color:var(--negro);}
.tag-aqua{background:var(--aqua); color:var(--negro);}
.tag-clara-osc{border:1.5px solid rgba(241,245,245,.3); color:#F1F5F5;}

.titular{margin:0; font-weight:700; font-size:clamp(32px,5.7vw,62px); line-height:1.04; letter-spacing:-.035em; text-wrap:balance; max-width:18ch;}
.titular .giro{display:block;}
.resalte{display:inline-block; background:var(--negro); color:var(--aqua); padding:.04em .22em .13em .22em;}
.resalte-aqua{background:var(--aqua); color:var(--negro);}
.resalte-verde{background:var(--verdemar); color:var(--negro);}

.dice{max-width:52ch; margin:clamp(28px,3.4vw,42px) 0 0 0; font-size:clamp(17px,1.75vw,21px); line-height:1.6;}
.dice p{margin:0 0 1.05em 0;}
.dice p:last-child{margin-bottom:0;}
.dice b{font-weight:600;}
.dice .suya{font-weight:500;}

.glosa{max-width:52ch; margin-top:clamp(26px,3vw,36px); padding-top:22px; border-top:2px solid rgba(10,11,12,.16); font-size:16px; line-height:1.62; color:#36474A;}
.glosa b{font-weight:600; color:var(--negro);}
.oscuro .glosa{border-top-color:rgba(241,245,245,.25); color:#B7C7C9;}
.oscuro .glosa b{color:var(--aqua-claro);}

.firma{margin-top:clamp(24px,2.8vw,34px); font-size:12px; font-weight:600; letter-spacing:.13em; text-transform:uppercase;}

/* nav */
header{position:sticky; top:0; z-index:50; background:rgba(241,245,245,.94); backdrop-filter:blur(10px); border-bottom:1.5px solid rgba(10,11,12,.1);}
.nav{max-width:1180px; margin:0 auto; padding:13px clamp(22px,5.5vw,70px); display:flex; align-items:center; gap:26px;}
.marca{display:flex; align-items:center; gap:11px; text-decoration:none; margin-right:auto;}
.gema{width:40px; height:30px; overflow:hidden; flex:0 0 auto;}
.gema img{width:40px; display:block;}
.palabra{font-weight:600; font-size:11px; letter-spacing:.3em; text-transform:uppercase; color:var(--negro); white-space:nowrap;}
.nav-links{display:flex; gap:24px; align-items:center;}
.nav-links a{font-size:13px; font-weight:500; color:var(--profundo); text-decoration:none;}
.nav-links a:hover{color:var(--negro);}
.idioma{display:flex; gap:5px; font-size:11px; font-weight:600;}
.idioma span{padding:5px 11px; border-radius:999px;}
.idioma .on{background:var(--negro); color:var(--aqua);}
.idioma .off{color:var(--tenue); border:1.5px solid rgba(10,11,12,.16);}
@media (max-width:920px){ .nav-links{display:none;} }

/* hero */
.hero{padding:clamp(44px,6vw,78px) 0 clamp(56px,7vw,92px) 0;}
.hero-fila{display:flex; gap:clamp(30px,5vw,70px); align-items:flex-end; justify-content:space-between;}
.hero .titular{font-size:clamp(36px,7.4vw,64px); max-width:15ch;}
.pie-hero{margin:clamp(26px,3.2vw,38px) 0 0 0; max-width:44ch; font-size:clamp(16.5px,1.7vw,20px); line-height:1.55; color:#2C3B3D;}
.pie-hero b{font-weight:600; color:var(--negro);}

.foto-sandra{flex:0 0 clamp(210px,26vw,318px); aspect-ratio:4/5; line-height:0; background:var(--verdemar);}
.foto-sandra img{width:100%; height:100%; display:block; object-fit:cover; object-position:50% 18%; filter:contrast(1.04) saturate(1.02);}
.pie-foto{margin:12px 0 0 0; line-height:1.65; font-size:11px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:var(--profundo);}
.columna-foto{display:flex; flex-direction:column;}
@media (max-width:860px){ .columna-foto{display:none;} }

.prueba-rapida{display:flex; flex-wrap:wrap; gap:10px 12px; margin-top:clamp(40px,4.6vw,56px); padding-top:clamp(26px,3vw,34px); border-top:1.5px solid rgba(10,11,12,.12);}
.prueba-rapida span{font-size:12.5px; font-weight:500; color:#36474A; padding:9px 18px; border-radius:999px; background:rgba(10,11,12,.055);}
.prueba-rapida b{font-weight:700; color:var(--negro);}

.con-gema{display:flex; gap:clamp(30px,5vw,72px); align-items:flex-start;}
.gema-grande{width:clamp(104px,12vw,158px); overflow:hidden; flex:0 0 auto;}
.gema-grande img{width:100%; display:block;}
@media (max-width:760px){ .con-gema{flex-direction:column; gap:26px;} }

/* botones */
.acciones{display:flex; flex-wrap:wrap; gap:12px; margin-top:clamp(32px,3.8vw,46px);}
.btn{font-size:14px; font-weight:600; padding:16px 30px; border-radius:999px; text-decoration:none; display:inline-block; border:1.5px solid transparent;}
.btn-aqua{background:var(--aqua); color:var(--negro);}
.btn-aqua:hover{background:var(--aqua-claro);}
.btn-negro{background:var(--negro); color:var(--aqua);}
.btn-negro:hover{background:#1C2C2E;}
.btn-linea-osc{border-color:rgba(10,11,12,.28); color:var(--negro);}
.btn-linea-osc:hover{border-color:var(--negro); background:rgba(10,11,12,.05);}
.btn-linea-clara{border-color:rgba(241,245,245,.35); color:var(--papel);}
.btn-linea-clara:hover{border-color:var(--aqua); color:var(--aqua);}

/* bloques de contenido */
.incluye{display:grid; gap:1px; grid-template-columns:repeat(auto-fit,minmax(252px,1fr)); background:rgba(10,11,12,.16); border:1px solid rgba(10,11,12,.16); margin-top:clamp(34px,4vw,48px);}
.incluye > div{background:var(--aqua-claro); padding:24px 22px 26px 22px;}
.incluye h3{margin:0 0 9px 0; font-size:15.5px; font-weight:700; letter-spacing:-.015em; color:var(--negro);}
.incluye p{margin:0; font-size:14.5px; line-height:1.55; color:#2A3A3D;}

.proceso{display:grid; gap:clamp(18px,2.2vw,26px); grid-template-columns:repeat(auto-fit,minmax(236px,1fr)); margin-top:clamp(40px,4.6vw,56px);}
.paso{background:var(--blanco); padding:26px 24px 30px 24px;}
.paso .n{display:block; font-size:12px; font-weight:700; letter-spacing:.16em; color:var(--verdemar-medio); margin-bottom:12px;}
.paso h3{margin:0 0 10px 0; font-size:19px; font-weight:700; letter-spacing:-.022em;}
.paso p{margin:0; font-size:15px; line-height:1.58; color:#3A4749;}
.paso em{font-style:normal; font-weight:500; color:var(--profundo);}

.programas{display:grid; gap:1px; grid-template-columns:repeat(auto-fit,minmax(246px,1fr)); background:rgba(10,11,12,.14); border-top:1px solid rgba(10,11,12,.14); border-bottom:1px solid rgba(10,11,12,.14); margin-top:clamp(38px,4.4vw,52px);}
.prog{background:var(--papel); padding:24px 22px 28px 22px;}
.prog h3{margin:0 0 8px 0; font-size:16.5px; font-weight:700; letter-spacing:-.018em;}
.prog p{margin:0 0 12px 0; font-size:14.5px; line-height:1.55; color:#3C494B;}
.prog .meta{font-size:12px; font-weight:600; letter-spacing:.04em; color:var(--profundo);}
.blanco .prog{background:var(--blanco);}

.practico{display:grid; gap:1px; grid-template-columns:repeat(auto-fit,minmax(192px,1fr)); background:rgba(10,11,12,.16); margin-top:clamp(20px,2.4vw,28px); border:1px solid rgba(10,11,12,.16);}
.practico > div{background:var(--aqua-claro); padding:22px 20px 24px 20px;}
.practico .rot{display:block; font-size:10.5px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; color:var(--profundo); margin-bottom:9px;}
.practico p{margin:0; font-size:15px; line-height:1.5; font-weight:500; color:#15262A;}

/* fotos */
.salon{position:relative; isolation:isolate; background:var(--aqua-claro); line-height:0; aspect-ratio:16/10;}
.salon img{width:100%; height:100%; object-fit:cover; display:block; filter:grayscale(1) contrast(1.16) brightness(1.03); mix-blend-mode:multiply;}
.salon::after{content:""; position:absolute; inset:0; background:#1C3A40; mix-blend-mode:lighten; pointer-events:none;}
.tira{display:grid; gap:clamp(16px,2vw,22px); grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); margin-top:clamp(34px,4vw,48px);}
.tira figure{margin:0;}
.tira figcaption{margin-top:12px; font-size:12.5px; line-height:1.55; color:#46585A;}
.banda-foto{margin:clamp(34px,4vw,48px) 0 0 0;}
.banda-foto img{width:100%; max-height:420px; object-fit:cover; object-position:46% 28%; display:block; filter:contrast(1.05) saturate(1.03);}
.banda-foto figcaption{margin-top:12px; font-size:12.5px; color:#2E4245;}

.retrato-mini{width:92px; height:92px; flex:0 0 auto; border-radius:999px; overflow:hidden; line-height:0;}
.retrato-mini img{width:100%; height:100%; object-fit:cover; object-position:50% 18%; display:block;}
.fila-firma{display:flex; align-items:center; gap:18px; margin-top:clamp(28px,3.2vw,38px);}
.fila-firma .firma{margin:0;}

/* testimonios */
.cita-alta{margin:0; font-weight:700; font-size:clamp(23px,3.4vw,42px); line-height:1.15; letter-spacing:-.032em; max-width:21ch;}
.citas{display:grid; gap:clamp(16px,2vw,22px); grid-template-columns:repeat(auto-fit,minmax(255px,1fr)); margin-top:clamp(40px,4.6vw,58px);}
.cita{background:var(--papel); padding:26px 24px 28px 24px;}
.blanco .cita{background:var(--papel);}
.cita p{margin:0 0 16px 0; font-size:15.5px; line-height:1.58; color:#232F31;}
.cita .quien{font-size:11px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--profundo); line-height:1.8;}

.oscuro{background:var(--negro); color:var(--papel);}
.oscuro .titular{color:var(--blanco);}
.oscuro .dice{color:#C6D3D5;}
.oscuro .dice b{color:var(--aqua-claro);}
.oscuro .firma{color:var(--verdemar-medio);}

.datos{display:flex; flex-wrap:wrap; gap:10px 30px; margin-top:clamp(28px,3.2vw,38px); font-size:14px; color:var(--verdemar-medio);}
.datos a{color:var(--aqua); text-decoration:none;}
.datos a:hover{color:var(--aqua-claro);}

.sello{background:var(--verdemar); padding:clamp(52px,6.5vw,86px) 0;}
.sello p{margin:0; font-weight:700; font-size:clamp(28px,4.6vw,56px); line-height:1.05; letter-spacing:-.035em; color:var(--negro); max-width:18ch;}
.sello .giro{display:block; color:var(--profundo);}

footer{background:var(--papel); padding:clamp(40px,4.6vw,58px) 0; border-top:1.5px solid rgba(10,11,12,.1);}
.pie{display:flex; flex-wrap:wrap; gap:22px 34px; align-items:center;}
.pie .logo-pie{width:92px; flex:0 0 auto; margin-right:auto; line-height:0;}
.pie .logo-pie img{width:100%; display:block;}
.pie a{font-size:13px; font-weight:500; color:var(--profundo); text-decoration:none;}
.pie a:hover{color:var(--negro);}
.pie span{font-size:13px; color:var(--tenue);}

a:focus-visible,.btn:focus-visible{outline:2.5px solid var(--profundo); outline-offset:3px;}
.oscuro a:focus-visible{outline-color:var(--aqua);}
@media (prefers-reduced-motion:reduce){*{transition:none!important; animation:none!important;}}
