.section,.section-alt,.section-cta{padding:var(--s-5) 0;border-bottom:1px solid var(--line-hard);background:0 0;border-top:none}.section-cta h2{color:var(--ink)}.sub-hero{padding-top:var(--s-5);border-bottom:1px solid var(--line-hard)}.sub-hero h1{font-family:var(--font-grotesk);font-weight:var(--fw-display);font-size:var(--fs-hero);line-height:var(--lh-hero);letter-spacing:var(--ls-hero);color:var(--ink);margin:.5rem 0 1rem}.section--flush{padding-top:0}.kicker{font-family:var(--font-mono);font-size:var(--fs-mono);letter-spacing:var(--ls-mono);text-transform:uppercase;color:var(--accent);font-weight:var(--fw-mono);margin-bottom:.6rem;display:block}.section-head{border-bottom:1px solid var(--line);margin-bottom:var(--s-4);padding-bottom:.6rem}.section-head h2,.section h2{font-family:var(--font-grotesk);font-weight:var(--fw-head);font-size:var(--fs-h2);letter-spacing:var(--ls-tight)}.section-lede{color:var(--ink-muted);font-size:var(--fs-lede);max-width:62ch;line-height:1.55}.measure{max-width:62ch}.topic-cards{border:1px solid var(--line-hard);border-radius:0;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:0;display:grid}.topic-card{border-right:1px solid var(--line-hard);border-bottom:1px solid var(--line-hard);padding:var(--s-3);box-shadow:none;transition:background var(--dur-fast);background:0 0;border-radius:0;flex-direction:column;gap:.5rem;display:flex}.topic-card:hover{border-color:var(--line-hard);box-shadow:none;background:var(--surface);transform:none}.topic-card .en{font-family:var(--font-mono);font-size:var(--fs-mono);color:var(--accent);letter-spacing:var(--ls-mono);font-weight:var(--fw-mono)}.topic-card h3{font-family:var(--font-grotesk);font-size:1.15rem;font-weight:var(--fw-semibold);letter-spacing:var(--ls-tight);margin:.3rem 0}.topic-card p{color:var(--ink-muted);font-size:var(--fs-small)}.speaking-grid{gap:var(--grid-gap);grid-template-columns:1.6fr 1fr;align-items:start;display:grid}.speaking-grid h2{font-family:var(--font-grotesk);font-weight:var(--fw-head);font-size:var(--fs-h2);letter-spacing:var(--ls-tight);margin-bottom:.6rem}.method-box{border:1px solid var(--accent-line);border-top:1px solid var(--accent-line);background:var(--accent-soft);padding:var(--s-3);border-radius:0}.section-alt .method-box{background:var(--accent-soft)}.method-box h2,.method-box h3{font-family:var(--font-grotesk);font-size:var(--fs-h3);font-weight:var(--fw-head);color:var(--ink);letter-spacing:var(--ls-tight);margin-bottom:.6rem}.method-box>p{color:var(--ink-muted);font-size:var(--fs-small);margin-bottom:0;line-height:1.6}.method-steps{flex-direction:column;list-style:none;display:flex}.method-steps li{font-size:var(--fs-small);color:var(--ink-muted);border-top:0;border-bottom:1px solid var(--line);align-items:baseline;gap:.5rem;padding:.4rem 0;display:flex}.method-steps li:last-child{border-bottom:0}.method-steps .en{font-family:var(--font-mono);font-size:var(--fs-mono);color:var(--accent);letter-spacing:var(--ls-mono);font-weight:var(--fw-mono)}[data-theme=light] .method-steps .en{color:var(--accent-deep)}.client-list{margin-top:var(--s-2);flex-wrap:wrap;gap:.5rem;padding:0;display:flex}.client-list li{font-family:var(--font-mono);font-size:var(--fs-mono-sm);color:var(--ink-muted);border:1px solid var(--line);text-transform:uppercase;letter-spacing:.04em;border-radius:0;padding:.3rem .6rem;list-style:none}.section-foot{margin-top:var(--s-3)}.sample-badge{font-family:var(--font-mono);font-size:var(--fs-mono-sm);letter-spacing:.1em;text-transform:uppercase;border:1px dashed var(--ink-faint);color:var(--ink-faint);border-radius:0;padding:.25rem .5rem}.contact-cta-row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;display:flex}@media (width<=860px){.speaking-grid,.topic-cards{grid-template-columns:1fr}}html.reveal-static .reveal{opacity:1;transition:none;transform:none}@media (prefers-reduced-motion:no-preference){html.js .sub-hero>.wrap{animation:speaking-hero-rise .65s var(--ease-emphasized) both}}@keyframes speaking-hero-rise{0%{transform:translateY(12px)}to{transform:none}}html.reveal-static .sub-hero>.wrap{animation:none;transform:none}
