/* Dani Elhelou — estilos del sitio */
:root{
  --ink:#1d1a1c;
  --ink-2:#3a3538;
  --muted:#6f6a66;
  --line:#e4ddd3;
  --paper:#fbf8f4;
  --cream:#f3ece2;
  --bordo:#8b1a1a;
  --bordo-2:#9b2335;
  --dark:#1a1618;
  --dark-2:#2a2427;
  --radius:14px;
  --max:1180px;
  --serif:"Fraunces", Georgia, "Times New Roman", serif;
  --sans:"Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);font-size:17px;line-height:1.65;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
img,video{display:block;max-width:100%;height:auto}
a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 28px}
.eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--bordo)}
h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.01em;line-height:1.1}
h2{font-size:clamp(2rem,3.6vw,3rem);margin:.4em 0 .5em}
h3{font-size:1.45rem;line-height:1.2}
p.lead{font-size:1.2rem;color:var(--ink-2);max-width:40em}
section{padding:110px 0}

/* Botones */
.btn{display:inline-flex;align-items:center;gap:.5em;padding:.9em 1.5em;border-radius:999px;font-weight:500;font-size:.95rem;text-decoration:none;transition:transform .15s ease, background .2s ease, color .2s ease;border:1.5px solid transparent;cursor:pointer;font-family:inherit}
.btn:hover{transform:translateY(-1px)}
.btn-primary{background:var(--bordo);color:#fff}
.btn-primary:hover{background:var(--bordo-2)}
.btn-ghost{border-color:currentColor;color:var(--ink)}
.btn-ghost:hover{background:var(--ink);color:var(--paper)}
.btn-light{background:#fff;color:var(--ink)}
.link-arrow{font-weight:500;text-decoration:none;border-bottom:1.5px solid var(--bordo);padding-bottom:2px}
.link-arrow:hover{color:var(--bordo)}

/* Navegación */
.nav{position:sticky;top:0;z-index:50;background:rgba(251,248,244,.92);backdrop-filter:saturate(1.2) blur(10px);border-bottom:1px solid transparent;transition:border-color .2s}
.nav.scrolled{border-bottom-color:var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:74px}
.brand{font-family:var(--serif);font-size:1.45rem;text-decoration:none;letter-spacing:-.01em}
.brand span{color:var(--bordo)}
.menu{display:flex;align-items:center;gap:28px;list-style:none}
.menu a{text-decoration:none;font-size:.93rem;color:var(--ink-2)}
.menu a:hover{color:var(--bordo)}
.menu .dc{color:var(--muted)}
.menu .btn{color:#fff;padding:.65em 1.2em}
.burger{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer}
.burger span{display:block;width:24px;height:2px;background:var(--ink);margin:5px auto;transition:.2s}

/* Hero */
.hero{padding:56px 0 90px}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:center}
.hero h1{font-size:clamp(3rem,6.6vw,5.6rem);margin:.25em 0 .35em}
.hero h1 em{font-style:italic;color:var(--bordo)}
.hero .lead{font-size:1.32rem;margin-bottom:2em}
.hero .ctas{display:flex;gap:14px;flex-wrap:wrap}
.hero .creds{margin-top:2.6em;padding-top:1.6em;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,auto);justify-content:start;gap:36px;flex-wrap:wrap;font-size:.9rem;color:var(--muted)}
.hero .creds strong{display:block;font-family:var(--serif);font-size:1.7rem;font-weight:500;color:var(--ink)}
.hero-photo{position:relative}
.hero-photo img{border-radius:var(--radius);aspect-ratio:4/5;object-fit:cover;width:100%}
.hero-photo .tag{position:absolute;left:-28px;bottom:36px;background:#fff;padding:14px 18px;border-radius:12px;box-shadow:0 12px 30px rgba(29,26,28,.12);font-size:.88rem;max-width:250px;line-height:1.4}
.hero-photo .tag b{color:var(--bordo);font-weight:600}

/* Franja de confianza */
.trust{padding:34px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--cream)}
.trust .wrap{display:flex;align-items:center;gap:36px;flex-wrap:wrap;justify-content:center}
.trust p{font-size:.85rem;color:var(--muted);letter-spacing:.04em}
.trust ul{display:flex;gap:34px;flex-wrap:wrap;list-style:none;justify-content:center}
.trust li{font-family:var(--serif);font-size:1.25rem;color:var(--ink-2)}
.trust p.pymes{flex-basis:100%;text-align:center;max-width:820px;margin:4px auto 0;line-height:1.6;letter-spacing:0;font-size:.92rem}
.trust p.pymes b{color:var(--ink-2);font-weight:500}

/* Frases */
.quotes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}
.quote{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 26px;font-family:var(--serif);font-size:1.3rem;line-height:1.35;position:relative}
.quote::before{content:"“";position:absolute;top:6px;left:18px;font-size:3rem;color:var(--bordo);opacity:.25;line-height:1}
.quotes-foot{margin-top:34px;font-size:1.15rem;color:var(--ink-2)}
.quotes-foot strong{color:var(--ink)}

/* Promesa */
.promise{background:var(--cream)}
.promise-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:48px;border-top:1px solid #d9cfc2}
.promise-item{padding:30px 26px 0 0}
.promise-item + .promise-item{padding-left:26px;border-left:1px solid #d9cfc2}
.promise-item .num{font-size:.8rem;color:var(--muted);letter-spacing:.1em}
.promise-item h3{margin:.5em 0 .5em;color:var(--bordo);font-style:italic}
.promise-item p{color:var(--ink-2);font-size:.98rem}

/* Caminos */
.paths-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:48px}
.path{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;transition:transform .2s ease, box-shadow .2s ease}
.path:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(29,26,28,.10)}
.path img{aspect-ratio:4/3;object-fit:cover;width:100%}
.path .body{padding:26px 26px 30px;display:flex;flex-direction:column;flex:1}
.path .for{font-size:.85rem;color:var(--muted);margin:.2em 0 .9em}
.path p{color:var(--ink-2);font-size:.98rem;flex:1}
.path .go{margin-top:1.3em;font-weight:500;color:var(--bordo)}

/* Conferencias */
.dark{background:var(--dark);color:#f3ece2}
.dark .eyebrow{color:#d98a8a}
.dark .lead{color:#cfc6bc}
.talks .wrap{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.talks-photos{display:grid;grid-template-columns:1.6fr 1fr;gap:14px}
.talks-photos img{border-radius:var(--radius);width:100%;height:100%;object-fit:cover}
.talks-photos img:nth-child(n+2){height:100%}
.talks-photos img:first-child{grid-column:1/3;aspect-ratio:3/2}
.talks-photos img:nth-child(2){aspect-ratio:4/3}
.talks-photos img:nth-child(3){aspect-ratio:3/4;object-position:top}
.topics{list-style:none;margin:28px 0 36px;border-top:1px solid #3d3538}
.topics li{padding:14px 0;border-bottom:1px solid #3d3538;font-family:var(--serif);font-size:1.25rem;display:flex;gap:16px;align-items:baseline}
.topics li span{font-family:var(--sans);font-size:.78rem;color:#9a8f86;min-width:22px}

/* Detrás del Legado */
.legado .wrap{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center}
.videos{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.videos{align-items:start}
.videos video{border-radius:var(--radius);width:100%;aspect-ratio:1/1;object-fit:cover;background:#000}

/* Sobre mí */
.about{background:var(--cream)}
.about .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:center}
.about img{border-radius:var(--radius);aspect-ratio:4/5;object-fit:cover;width:100%}
.about p{color:var(--ink-2);margin-bottom:1em}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:30px 0}
.stats div{font-size:.88rem;color:var(--muted)}
.stats strong{display:block;font-family:var(--serif);font-size:1.6rem;font-weight:500;color:var(--bordo);line-height:1.1}

/* Puente Dar Comienzo */
.bridge{padding:80px 0}
.bridge .card{border:1px solid var(--line);border-radius:22px;padding:48px 52px;display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center;background:#fff}
.bridge h3{font-size:1.9rem;margin:.3em 0 .5em}
.bridge p{color:var(--ink-2)}
.bridge .right{text-align:right}

/* Contacto */
.contact .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:start}
.contact .portrait{display:flex;gap:18px;align-items:center;margin-top:28px}
.contact .portrait img{width:84px;height:84px;border-radius:50%;object-fit:cover;object-position:top}
.contact .portrait p{font-size:.95rem;color:var(--ink-2);line-height:1.5}
form{display:grid;grid-template-columns:1fr 1fr;gap:18px}
form .full{grid-column:1/-1}
label{display:block;font-size:.85rem;font-weight:500;margin-bottom:6px;color:var(--ink-2)}
input,select,textarea{width:100%;font:inherit;font-size:1rem;padding:.85em 1em;border:1px solid #d6cdc1;border-radius:10px;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:2px solid var(--bordo);outline-offset:1px;border-color:transparent}
textarea{min-height:130px;resize:vertical}
.hidden{display:none}

/* Footer */
footer{background:var(--dark);color:#cfc6bc;padding:72px 0 36px;font-size:.93rem}
footer .top{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:48px;padding-bottom:48px;border-bottom:1px solid #3d3538}
footer .brand{color:#fff;font-size:1.6rem}
footer h4{font-family:var(--sans);font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:#9a8f86;margin-bottom:14px;font-weight:600}
footer ul{list-style:none}
footer li{margin:6px 0}
footer a{text-decoration:none}
footer a:hover{color:#fff}
.news{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.news input{flex:1;min-width:200px;background:#2a2427;border-color:#3d3538;color:#fff}
.news input::placeholder{color:#9a8f86}
footer .bottom{padding-top:28px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;color:#9a8f86;font-size:.85rem}

/* Animación suave al aparecer */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease, transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* Responsive */
@media (max-width: 980px){
  section{padding:80px 0}
  .hero .wrap,.talks .wrap,.legado .wrap,.about .wrap,.contact .wrap{grid-template-columns:1fr;gap:44px}
  .hero-photo{max-width:520px}
  .hero-photo .tag{left:16px}
  .quotes-grid{grid-template-columns:1fr 1fr}
  .promise-grid{grid-template-columns:1fr 1fr}
  .promise-item:nth-child(3){padding-left:0;border-left:0}
  .promise-item{padding-bottom:26px}
  .paths-grid{grid-template-columns:1fr}
  .path{display:grid;grid-template-columns:1fr 1.2fr}
  .path img{height:100%;aspect-ratio:auto}
  .bridge .card{grid-template-columns:1fr;padding:36px 30px}
  .bridge .right{text-align:left}
  footer .top{grid-template-columns:1fr 1fr}
}
@media (max-width: 860px){
  .burger{display:block}
  .menu{position:fixed;inset:74px 0 auto 0;background:var(--paper);flex-direction:column;align-items:flex-start;gap:0;padding:12px 28px 28px;border-bottom:1px solid var(--line);display:none}
  .menu.open{display:flex}
  .menu li{width:100%;border-bottom:1px solid var(--line)}
  .menu li:last-child{border:0;padding-top:16px}
  .menu a{display:block;padding:14px 0;font-size:1.05rem}
}
@media (max-width: 620px){
  body{font-size:16px}
  .wrap{padding:0 18px}
  .quotes-grid,.promise-grid{grid-template-columns:1fr}
  .promise-item + .promise-item{padding-left:0;border-left:0;border-top:1px solid #d9cfc2}
  .path{display:flex}
  .path img{aspect-ratio:4/3}
  form{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr;gap:14px}
  footer .top{grid-template-columns:1fr}
  .hero .creds{gap:18px;font-size:.8rem}
  .hero .creds strong{font-size:1.4rem}
}

/* ===== Páginas internas ===== */
.wrap.narrow{max-width:820px}
.page-hero{padding:48px 0 90px}
.page-hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center}
.page-hero h1{font-size:clamp(2.4rem,4.6vw,3.9rem);margin:.35em 0 .45em}
.page-hero h1 em{font-style:italic;color:var(--bordo)}
.page-hero .lead{margin-bottom:2em}
.page-hero .ctas{display:flex;gap:14px;flex-wrap:wrap}
.page-hero img{border-radius:var(--radius);aspect-ratio:4/5;object-fit:cover;width:100%}

.offer-head{display:grid;grid-template-columns:1.2fr .8fr;gap:64px;align-items:center}
.offer-head img{border-radius:var(--radius);aspect-ratio:4/5;object-fit:cover;width:100%}
.includes{margin-top:64px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:44px 48px}
.includes h3{margin-bottom:18px}
.includes ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:16px 40px}
.includes li{padding-left:28px;position:relative;color:var(--ink-2)}
.includes li::before{content:"";position:absolute;left:0;top:.62em;width:14px;height:2px;background:var(--bordo)}
.includes li b{color:var(--ink);font-weight:500}
.includes .note{margin-top:26px;padding-top:20px;border-top:1px solid var(--line);font-size:.95rem;color:var(--bordo);font-weight:500}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}
.step{border-top:2px solid var(--bordo);padding-top:22px}
.step .num{font-size:.8rem;color:var(--muted);letter-spacing:.1em}
.step h3{margin:.35em 0 .45em}
.step p{color:var(--ink-2);font-size:.98rem}

.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}
.pillar{background:#fff;border-radius:var(--radius);padding:32px 30px;border:1px solid #e3d9cc}
.pillar h3{color:var(--bordo);margin-bottom:.5em}
.pillar p{color:var(--ink-2);font-size:.98rem}

.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}
.case{border:1px solid var(--line);border-radius:var(--radius);padding:30px;background:#fff}
.case-name{font-family:var(--serif);font-size:1.5rem;margin-bottom:.5em}
.case p:not(.case-name){color:var(--ink-2);font-size:.98rem}
.cases .also{margin-top:30px;color:var(--ink-2)}
.cases .also b{color:var(--ink);font-weight:500}

.group .wrap{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.group img{border-radius:var(--radius);width:100%;aspect-ratio:4/3;object-fit:cover}

.faq h2{margin-bottom:28px}
.faq details{border-bottom:1px solid var(--line);padding:22px 0}
.faq details:first-of-type{border-top:1px solid var(--line)}
.faq summary{cursor:pointer;font-family:var(--serif);font-size:1.3rem;list-style:none;display:flex;justify-content:space-between;gap:20px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--bordo);font-family:var(--sans);font-size:1.5rem;line-height:1}
.faq details[open] summary::after{content:"–"}
.faq details p{margin-top:12px;color:var(--ink-2)}
.menu a.active{color:var(--bordo);font-weight:500}

@media (max-width: 980px){
  .page-hero .wrap,.offer-head,.group .wrap{grid-template-columns:1fr;gap:40px}
  .page-hero img,.offer-head img{max-width:520px}
  .includes ul{grid-template-columns:1fr}
  .steps,.pillars,.cases-grid{grid-template-columns:1fr}
  .includes{padding:32px 26px}
}
.pillars.four{grid-template-columns:repeat(4,1fr)}
.formats{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:56px}
.format{background:#fff;border:1px solid var(--line);border-radius:22px;padding:38px 40px}
.format .tag-line{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--bordo)}
.format h3{font-size:1.8rem;margin:.3em 0 .45em}
.format > p{color:var(--ink-2)}
.format ul{list-style:none;margin:22px 0 0;border-top:1px solid var(--line)}
.format li{padding:12px 0 12px 26px;border-bottom:1px solid var(--line);position:relative;color:var(--ink-2);font-size:.97rem}
.format li::before{content:"";position:absolute;left:0;top:1.3em;width:12px;height:2px;background:var(--bordo)}
.format .note{margin-top:18px;font-size:.92rem;color:var(--bordo);font-weight:500}
@media (max-width: 980px){.pillars.four{grid-template-columns:1fr 1fr}.formats{grid-template-columns:1fr}.format{padding:30px 26px}}
@media (max-width: 620px){.pillars.four{grid-template-columns:1fr}}
.cases-grid.four{grid-template-columns:repeat(4,1fr)}
.cases-grid.four .case-name{font-size:1.3rem}
@media (max-width: 980px){.cases-grid.four{grid-template-columns:1fr 1fr}}
@media (max-width: 620px){.cases-grid.four{grid-template-columns:1fr}}
.page-hero .creds{margin-top:2.4em;padding-top:1.4em;border-top:1px solid var(--line);display:flex;gap:40px;flex-wrap:wrap;font-size:.9rem;color:var(--muted)}
.page-hero .creds strong{display:block;font-family:var(--serif);font-size:1.9rem;font-weight:500;color:var(--bordo)}
.talk{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px}
.talk h3{margin-bottom:.45em}
.talk p{color:var(--ink-2);font-size:.98rem}
.talk.featured{margin-top:44px;display:grid;grid-template-columns:1fr 1.2fr;gap:40px;align-items:center;background:var(--cream);border-color:#e3d9cc;padding:44px 48px}
.talk.featured h3{font-size:2.2rem}
.talk.featured p{font-size:1.1rem}
.talk .tag-line,.format .tag-line{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--bordo);margin-bottom:.4em}
.talks-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:20px}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px}
.gallery img{width:100%;height:100%;aspect-ratio:3/2;object-fit:cover;border-radius:12px}
.gallery .g-wide{grid-column:span 2;aspect-ratio:auto}
.gallery img:last-child{object-position:center 30%}
@media (max-width: 980px){.talk.featured{grid-template-columns:1fr;gap:12px;padding:32px 28px}.talks-grid{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr}}
@media (max-width: 620px){.talks-grid,.gallery{grid-template-columns:1fr}.gallery .g-wide{grid-column:auto;aspect-ratio:3/2}}
.talks-grid .talk.wide{grid-column:1/-1;display:grid;grid-template-columns:1fr 2fr;gap:32px;align-items:center}
.gallery img:last-child{object-position:center}
@media (max-width: 980px){.talks-grid .talk.wide{grid-template-columns:1fr;gap:8px}}
.gallery{grid-auto-rows:250px}
.gallery img,.gallery .g-wide{aspect-ratio:auto;height:100%}
.gallery .g-wide{grid-row:span 2}
@media (max-width: 980px){.gallery{grid-auto-rows:200px}}
@media (max-width: 620px){.gallery .g-wide{grid-row:auto}}
.gallery{grid-auto-flow:dense}
.story p:not(.eyebrow){font-size:1.12rem;color:var(--ink-2);margin-bottom:1.1em}
.story h2{margin-bottom:.8em}
.milestones{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:44px;border-top:1px solid var(--line)}
.milestone{padding:26px 24px 28px 0;border-bottom:1px solid var(--line)}
.milestone:not(:nth-child(4n+1)){padding-left:24px;border-left:1px solid var(--line)}
.m-title{font-family:var(--serif);font-size:1.3rem;line-height:1.25;margin-bottom:.45em}
.milestone p:not(.m-title){color:var(--ink-2);font-size:.95rem}
.books .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:center}
.books img{border-radius:var(--radius);aspect-ratio:4/5;object-fit:cover;width:100%}
.book{border-top:1px solid #3d3538;padding:24px 0}
.book:last-child{border-bottom:1px solid #3d3538}
.b-year{font-size:.8rem;letter-spacing:.14em;color:#d98a8a;font-weight:600}
.book h3{margin:.3em 0 .4em;color:#fff}
.book p:not(.b-year){color:#cfc6bc}
.edu-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px}
ul.plain{list-style:none;margin-top:18px;border-top:1px solid var(--line)}
ul.plain li{padding:16px 0;border-bottom:1px solid var(--line);color:var(--ink-2)}
ul.plain b{color:var(--ink);font-weight:500}
@media (max-width: 980px){.milestones{grid-template-columns:1fr 1fr}.milestone:not(:nth-child(4n+1)){padding-left:0;border-left:0}.milestone:nth-child(even){padding-left:24px;border-left:1px solid var(--line)}.books .wrap,.edu-grid{grid-template-columns:1fr;gap:40px}.books img{max-width:420px}}
@media (max-width: 620px){.milestones{grid-template-columns:1fr}.milestone:nth-child(even){padding-left:0;border-left:0}}
.clients{background:var(--cream)}
.clients h2{max-width:22em}
.client-list{list-style:none;display:flex;flex-wrap:wrap;gap:12px 14px;margin-top:28px}
.client-list li{background:#fff;border:1px solid #e3d9cc;border-radius:999px;padding:.55em 1.2em;font-size:.98rem;color:var(--ink-2)}
.client-list.big li{font-family:var(--serif);font-size:1.45rem;color:var(--ink);padding:.5em 1.3em}
.client-label{margin-top:36px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--bordo)}
.clients .also{margin-top:28px;color:var(--ink-2)}
.clients .also b{color:var(--ink);font-weight:500}
@media (max-width: 620px){.client-list.big li{font-size:1.15rem}}
.ideas-hero .wrap{grid-template-columns:1fr;max-width:860px}
.news-inline{display:flex;gap:10px;flex-wrap:wrap;max-width:520px}
.news-inline input{flex:1;min-width:220px}
.pillar .tag-line{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--muted);margin-bottom:.5em}
h2 + .client-label{margin-top:4px}
.cases .client-label + .cases-grid{margin-top:24px}
.clients-intro{font-size:1.1rem;color:var(--ink-2);max-width:40em;margin-top:14px;line-height:1.6}
.group.dark .wrap.sprint-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px}
.sprint-strip img{border-radius:12px;width:100%;aspect-ratio:4/3;object-fit:cover}
@media (max-width: 620px){.group.dark .wrap.sprint-strip{grid-template-columns:1fr}}
.sprint-strip img:last-child{object-position:center 15%}
.sprint-strip img{aspect-ratio:1/1}
.sprint-strip img:last-child{object-position:center}
.group.dark .wrap.sprint-video{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;align-items:center;margin-top:56px}
.sprint-video h3{font-size:clamp(1.6rem,2.6vw,2.2rem);color:#fff;margin-top:.4em}
.sprint-video video{width:100%;max-width:340px;justify-self:end;border-radius:var(--radius);background:#000}
@media (max-width: 860px){.group.dark .wrap.sprint-video{grid-template-columns:1fr;gap:20px}.sprint-video video{justify-self:start}}
.moments-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}
.moments figure{margin:0}
.moments img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}
.moments figcaption{margin-top:8px;font-size:.88rem;color:var(--muted)}
.gallery-more{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}
.gallery-more img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px}
@media (max-width: 860px){.moments-grid{grid-template-columns:1fr 1fr}}
@media (max-width: 620px){.moments-grid,.gallery-more{grid-template-columns:1fr}}
.malawi{margin-top:48px;padding-top:28px;border-top:1px solid var(--line)}
.malawi-text{color:var(--ink-2);font-size:.95rem;margin:6px 0 16px}
.malawi-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}
.malawi-grid img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:8px}
@media (max-width: 860px){.malawi-grid{grid-template-columns:repeat(4,1fr)}}
@media (max-width: 520px){.malawi-grid{grid-template-columns:repeat(3,1fr)}}
/* Murales: siempre al menos dos fotos por fila */
.moments-grid{grid-template-columns:repeat(2,1fr);gap:14px}
.moments img{aspect-ratio:3/2}
@media (max-width: 620px){.moments-grid{grid-template-columns:repeat(2,1fr);gap:10px}.moments figcaption{font-size:.78rem}
  .malawi-grid{grid-template-columns:repeat(4,1fr);gap:6px}
  .gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px}.gallery .g-wide{grid-column:span 2;grid-row:span 1}}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.chips span{border:1px solid #e3d9cc;background:var(--cream);border-radius:999px;padding:.4em .95em;font-size:.9rem;color:var(--ink-2)}
.chips span:last-child{background:transparent;border-style:dashed;color:var(--bordo)}

/* Sobre mí: en los medios */
.press{background:var(--cream,#f3ece2);padding:88px 0}
.press .wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.press img{width:100%;border-radius:var(--radius);aspect-ratio:906/572;object-fit:cover}
.press blockquote{font-family:'Fraunces',serif;font-size:clamp(1.9rem,3.4vw,2.9rem);line-height:1.15;margin:.3em 0 .5em;color:var(--ink,#1d1a1c)}
.press-src{color:var(--ink-2);font-size:.98rem}
@media (max-width: 860px){.press{padding:64px 0}.press .wrap{grid-template-columns:1fr;gap:28px}}

/* Murales prolijos: 2 o 3 fotos por fila, todas 3:2 */
.photo-mural{display:grid;gap:20px;margin-top:56px}
.photo-mural.two{grid-template-columns:repeat(2,1fr)}
.photo-mural.three{grid-template-columns:repeat(3,1fr)}
.photo-mural figure{margin:0}
.photo-mural img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:12px;display:block}
.photo-mural figcaption{font-size:.84rem;margin-top:10px;color:var(--ink-2);line-height:1.4}
.dark .photo-mural figcaption{color:rgba(255,255,255,.62)}
@media (max-width: 860px){.photo-mural.three{grid-template-columns:repeat(2,1fr)}}
@media (max-width: 620px){.photo-mural{gap:12px;margin-top:36px}.photo-mural.two,.photo-mural.three{grid-template-columns:repeat(2,1fr)}.photo-mural figcaption{font-size:.74rem;margin-top:6px}}

/* Deporte de alto rendimiento */
.sport{padding:96px 0}
.sport h2{color:#fff;max-width:760px}
.sport-head{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;margin-top:36px}
.sport-text p{font-size:1.08rem;line-height:1.75;color:rgba(255,255,255,.82);text-align:justify;hyphens:auto;-webkit-hyphens:auto}
.sport-text .sport-note{margin-top:1.4em;padding-left:18px;border-left:3px solid var(--bordo-2);color:rgba(255,255,255,.7)}
.sport-video{margin:0}
.sport-video video{width:100%;aspect-ratio:752/464;border-radius:var(--radius);background:#000;display:block}
.sport-video figcaption{font-size:.82rem;color:rgba(255,255,255,.6);margin-top:10px}
@media (max-width: 860px){.sport{padding:72px 0}.sport-head{grid-template-columns:1fr;gap:32px}}
@media (max-width: 620px){.sport-text p{text-align:left;font-size:1rem}}

/* Equipos: murales más chicos, dos fotos por fila */
.photo-mural{max-width:820px;margin-left:auto;margin-right:auto}
.photo-mural.three{grid-template-columns:repeat(2,1fr)}
/* Sobre mí: Malawi, 6 miniaturas */
.malawi-grid{grid-template-columns:repeat(6,1fr)}
@media (max-width: 860px){.malawi-grid{grid-template-columns:repeat(3,1fr)}}
/* Conferencias: foto vertical en el mural */
.gallery .g-tall{grid-row:span 2;object-position:center top}
@media (max-width: 860px){.gallery .g-tall{grid-row:span 1;object-position:center 15%}}

/* Equipos: murales a todo el ancho, igual que Momentos en Sobre mí */
.photo-mural{max-width:none;gap:14px;margin-top:48px}
.photo-mural figcaption{margin-top:8px}
@media (max-width: 620px){.photo-mural{gap:10px}}

/* Contacto directo: WhatsApp y LinkedIn */
.direct{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.direct-link{display:flex;align-items:center;gap:12px;padding:12px 18px 12px 14px;border:1px solid #e3d9cc;border-radius:14px;background:#fff;color:var(--ink);text-decoration:none;transition:border-color .2s,transform .2s}
.direct-link:hover{border-color:var(--bordo);transform:translateY(-1px)}
.direct-link svg{width:24px;height:24px;fill:var(--bordo);flex:none}
.direct-link span{font-size:.86rem;line-height:1.35;color:var(--ink-2)}
.direct-link b{display:block;font-weight:600;color:var(--ink);font-size:.92rem}
.contact .privacy{font-size:.8rem;color:var(--muted);margin-top:-4px}
.news-note{font-size:.76rem;color:rgba(255,255,255,.5);margin-top:10px}
.tag-dest{font-style:normal;font-family:var(--sans,'Poppins');font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:#fbf8f4;background:var(--bordo);padding:.3em .7em;border-radius:999px;margin-left:10px;vertical-align:middle;white-space:nowrap}
.thanks{min-height:72vh;display:flex;align-items:center;padding:140px 0 100px;text-align:center}
.thanks h1{font-size:clamp(2.4rem,5vw,3.6rem);margin:.3em 0 .4em}
.thanks .lead{max-width:560px;margin:0 auto}
.thanks .ctas{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;margin-top:34px}

/* Ideas: reflexiones desplegables */
.essays .lead{margin-bottom:28px}
.essay{background:#fff;border:1px solid var(--line);border-radius:var(--radius);margin-top:16px;transition:border-color .2s}
.essay[open]{border-color:#d9c9b8}
.essay summary{list-style:none;cursor:pointer;padding:28px 32px;position:relative}
.essay summary::-webkit-details-marker{display:none}
.essay h3{font-size:1.5rem;margin:.35em 0 .3em;color:var(--ink)}
.essay .excerpt{color:var(--ink-2);font-size:.98rem;max-width:620px}
.essay .read{display:inline-block;margin-top:14px;font-size:.86rem;font-weight:600;color:var(--bordo);border-bottom:1px solid var(--bordo)}
.essay[open] .read{display:none}
.essay-body{padding:0 32px 30px}
.essay-body p{color:var(--ink-2);line-height:1.8;margin-top:1em}
.essay-body p:first-child{margin-top:0}
.essay-body .ask{margin-top:1.4em;padding-left:16px;border-left:3px solid var(--bordo);font-style:italic;color:var(--ink)}
@media (max-width: 620px){.essay summary{padding:22px 20px}.essay-body{padding:0 20px 24px}.essay h3{font-size:1.25rem}}
.essay .tag-line{display:block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--bordo)}
