.talks-page { --talk-blue:#003c78; --talk-ink:#02355a; --talk-lime:#c6ff37; color:var(--talk-ink); background:#fff; font-family:'DM Sans',sans-serif; }
.talks-page *, .talks-page *::before, .talks-page *::after { box-sizing:border-box; }
.talks-page main { overflow:clip; }
.talks-page h1,.talks-page h2,.talks-page h3 { font-family:'Manrope',sans-serif; font-weight:800; letter-spacing:-.035em; margin:0; text-transform:none; }
.talks-page h2 { font-size:clamp(2rem,3.4vw,3.4rem); line-height:1.12; max-width:26ch; }
.talks-page h3 { font-size:1.2rem; line-height:1.35; }
.talks-page p { font-size:1.0625rem; line-height:1.7; margin:0 0 1.15em; }
.talk-container { width:min(1192px,calc(100% - 96px)); margin-inline:auto; }
.talk-section { padding-block:clamp(4rem,7vw,7rem); scroll-margin-top:100px; }
.talks-page .talk-eyebrow { font-size:.875rem; font-weight:700; line-height:1.6; letter-spacing:.1em; margin-bottom:1.8rem; }
.talk-hero { background:var(--talk-blue); color:#fff; padding:clamp(3.75rem,7vw,7rem) 0 4.5rem; }
.talks-page .talk-hero h1 { font-size:clamp(3rem,6.8vw,6.8rem); line-height:1.03; max-width:18ch; margin:0 0 3.5rem; color:#fff; }
.talk-hero h1 span { color:var(--talk-lime); }
.talk-hero-bottom { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr); gap:clamp(3rem,8vw,7rem); align-items:end; }
.talk-prose { max-width:65ch; }
.talk-prose p:last-child { margin-bottom:0; }
.talks-page .talk-button { display:inline-flex; align-items:center; justify-content:center; padding:1rem 1.4rem; min-height:52px; max-width:100%; background:var(--talk-blue); color:#fff; border:2px solid var(--talk-blue); font:800 .9375rem/1.4 'DM Sans',sans-serif; letter-spacing:.015em; text-align:center; text-decoration:none; cursor:pointer; border-radius:0; }
.talks-page .talk-button:hover { background:var(--talk-ink); border-color:var(--talk-ink); }
.talks-page .talk-button:disabled { opacity:.65; cursor:wait; }
.talks-page a:focus-visible,.talks-page button:focus-visible,.talks-page summary:focus-visible { outline:3px solid currentColor; outline-offset:5px; }
.talks-page .talk-hero .talk-button { background:var(--talk-lime); color:var(--talk-ink); border-color:var(--talk-lime); width:100%; }
.talks-page .talk-text-link { color:inherit; font-size:1rem; font-weight:700; text-underline-offset:.3em; }
.talk-hero-action .talk-text-link { display:block; margin-block:1.5rem 2rem; }
.talks-page .talk-hero-action p { font-size:1rem; opacity:.9; }
#temas > .talk-prose,.talk-prices h2 + .talk-prose,.talk-continuity > .talk-prose { margin-top:2rem; }
.talk-index { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:2.5rem; }
.talk-index a { color:var(--talk-blue); border:1px solid #b8cad8; padding:.8rem 1rem; font-size:.875rem; font-weight:700; text-decoration:none; }
.talk-index a:hover { background:var(--talk-lime); }
.talk-topic { border-top:1px solid #ccd8e3; }
.talk-topic-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(3rem,7vw,6rem); align-items:start; }
.talk-topic-heading { position:sticky; top:115px; }
.talk-number { display:inline-flex; width:3rem; height:3rem; justify-content:center; align-items:center; margin-right:1rem; color:var(--talk-blue); background:var(--talk-lime); font-size:1.1rem; letter-spacing:0; }
.talks-page .talk-audience { border-top:1px solid #ccd8e3; margin-top:2.2rem; padding-top:1.5rem; }
.talks-page .talk-audience h3 { font-size:.875rem; letter-spacing:.08em; margin-bottom:.5rem; }
.talks-page .talk-audience p { font-size:1rem; }
.talk-practice { margin-top:3rem; background:#f1f6f9; border-left:6px solid var(--talk-lime); padding:2.5rem; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(2rem,5vw,4rem); }
.talks-page .talk-practice h3 { font-size:clamp(1.5rem,2.2vw,2.2rem); line-height:1.2; }
.talks-page .talk-practice .talk-eyebrow { margin-bottom:1rem; }
.talk-practice .talk-button { margin-top:1.8rem; }
.talk-prices { background:var(--talk-blue); color:#fff; }
.talk-format-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; background:#537ea7; border:1px solid #537ea7; margin-top:3rem; }
.talk-format { padding:1.6rem; background:var(--talk-blue); display:flex; flex-direction:column; min-width:0; }
.talks-page .talk-format h3 { min-height:3.2rem; font-size:1rem; letter-spacing:.02em; }
.talks-page .talk-price { color:var(--talk-lime); font:800 clamp(2rem,3vw,2.8rem)/1.1 'Manrope',sans-serif; letter-spacing:-.04em; margin:.5rem 0 1.2rem; }
.talks-page .talk-duration { font-size:1rem; font-weight:700; min-height:5rem; }
.talks-page .talk-format > p:not(.talk-price) { font-size:1rem; }
.talks-page .talk-format .talk-button { background:var(--talk-lime); border-color:var(--talk-lime); color:var(--talk-ink); margin-top:auto; padding-inline:.7rem; font-size:.875rem; }
.talk-format > p:last-of-type { padding-bottom:1rem; }
.talks-page .talk-conditions { max-width:80ch; margin-top:3rem; }
.talks-page .talk-conditions h3 { font-size:.875rem; letter-spacing:.1em; margin-bottom:1rem; }
.talks-page .talk-conditions p { font-size:1rem; }
.talk-about { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(3rem,7vw,6rem); align-items:center; }
.talk-about img { width:140px; height:140px; object-fit:cover; margin-bottom:2rem; }
.talks-page .talk-about h2 { font-size:clamp(1.8rem,3vw,2.8rem); }
.talk-about .talk-text-link { display:inline-block; margin-top:1rem; }
.talk-process { background:#f1f6f9; }
.talk-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:3rem; counter-reset:step; list-style:none; margin:3rem 0 0; padding:0; }
.talk-steps li { counter-increment:step; border-top:2px solid var(--talk-blue); padding-top:1.3rem; }
.talk-steps li::before { content:'0' counter(step); display:block; font:800 2rem/1.2 'Manrope',sans-serif; color:var(--talk-blue); margin-bottom:1.5rem; }
.talk-steps h3 { margin-bottom:1rem; }
.talk-continuity-links { display:flex; gap:1rem 2rem; flex-wrap:wrap; margin-top:2rem; }
.talk-continuity-links a { color:var(--talk-blue); font-size:1rem; font-weight:700; text-underline-offset:.3em; }
.talk-faq { padding-top:0; }
.talk-faq h2 { margin-bottom:2rem; }
.talk-faq details { border-top:1px solid #b8cad8; padding-block:1.5rem; }
.talk-faq details:last-child { border-bottom:1px solid #b8cad8; }
.talk-faq summary { font:800 1rem/1.6 'Manrope',sans-serif; cursor:pointer; }
.talk-faq details p { margin:1rem 0 0; max-width:78ch; }
.talk-contact { background:#eef4f8; }
.talk-contact-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(3rem,6vw,5rem); }
.talk-contact h2 + .talk-prose { margin-top:2rem; }
.talk-contact .meeting-form { display:grid; gap:1.25rem; padding:2rem; background:white; margin:0; border:1px solid #ccd8e3; }
.talk-contact .meeting-form label { display:block; font-size:1rem; font-weight:700; }
.talk-contact label > span { font-size:.875rem; font-weight:400; }
.talk-contact .meeting-form input:not([type='checkbox']),.talk-contact .meeting-form select,.talk-contact .meeting-form textarea { display:block; width:100%; min-width:0; border:1px solid #9dafbf; background:white; border-radius:0; color:var(--talk-ink); font:400 1rem/1.5 'DM Sans',sans-serif; padding:.8rem; margin-top:.5rem; }
.talk-contact .meeting-form textarea { margin-top:-.8rem; resize:vertical; }
.talk-contact .meeting-form :is(input,select,textarea):focus-visible { outline:3px solid var(--talk-blue); outline-offset:2px; }
.talk-contact .meeting-form .meeting-consent { display:flex; align-items:flex-start; gap:.75rem; font-weight:400; }
.talk-contact .meeting-consent input { width:20px; height:20px; flex-shrink:0; margin-top:.1rem; accent-color:var(--talk-blue); }
.talk-contact .meeting-consent span { font-size:.875rem; line-height:1.55; }
.talk-contact .meeting-consent a { color:inherit; }
.talks-page .talk-help { font-size:.875rem; line-height:1.6; margin:-.4rem 0 0; }
.talks-page .talk-alternative { font-size:.9375rem; margin:0; overflow-wrap:anywhere; }
.talk-alternative a { color:var(--talk-blue); }
.talks-page .meeting-form-status { font-size:1rem; margin:0; white-space:pre-line; color:var(--talk-ink); }
.talks-page .meeting-form-status:empty { display:none; }
@media(max-width:1050px) { .talk-format-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.talks-page .talk-duration { min-height:0; }.talks-page .talk-format h3 { min-height:0; }.talk-format { padding:2rem; }.talk-hero-bottom { grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:3rem; } }
@media(max-width:760px) { .talk-container { width:calc(100% - 40px); }.talks-page .talk-hero h1 { font-size:clamp(2.6rem,9.2vw,4.6rem); margin-bottom:2.5rem; }.talk-hero-bottom,.talk-topic-grid,.talk-practice,.talk-about,.talk-contact-grid,.talk-steps { grid-template-columns:minmax(0,1fr); gap:2rem; }.talk-hero-action { max-width:32rem; }.talk-topic-heading { position:static; }.talk-practice { padding:1.6rem; }.talk-number { display:flex; margin-bottom:1rem; }.talks-page .talk-eyebrow { margin-bottom:1.2rem; }.talk-contact .meeting-form { padding:1.5rem; }.talk-section { scroll-margin-top:85px; }.talk-steps { gap:2rem; }.talks-page h2 { font-size:clamp(1.9rem,6.6vw,3rem); }.talks-page p { font-size:1rem; }.talk-format { padding:1.4rem; } }
@media(max-width:520px) { .talk-format-grid { grid-template-columns:minmax(0,1fr); }.talk-format { padding:1.75rem; }.talks-page .talk-price { font-size:2.8rem; }.talks-page .talk-format h3 { margin-bottom:.5rem; }.talks-page .talk-format .talk-button { align-self:flex-start; }.talk-contact .meeting-form { padding:1.2rem; }.talk-index { gap:.5rem; }.talk-index a { font-size:.8125rem; padding:.75rem; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
