    :root { --bg:#25274D; --surface:#f5f7fb; --surface-2:#AAABB8; --ink:#25274D; --muted:#464866; --gold:#29648A; --gold-2:#2E9CCA; --white:#f8fbff; --line:rgba(37,39,77,.12); --max:1120px; }
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body { margin:0; font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; background:var(--surface); color:var(--ink); line-height:1.5; }
    a { color:inherit; text-decoration:none; }
    .site-header { position:sticky; top:0; z-index:10; background:#29648A; color:var(--white); box-shadow:0 10px 34px rgba(37,39,77,.26); }
    .nav { max-width:var(--max); margin:0 auto; padding:18px 22px; display:flex; align-items:center; justify-content:space-between; gap:18px; }
    .brand { display:inline-flex; align-items:center; gap:12px; font-weight:760; letter-spacing:-.02em; }
    .brand-mark { width:34px; height:34px; display:grid; place-items:center; border:1px solid rgba(170,171,184,.58); font-size:13px; letter-spacing:.12em; }
    .brand-logo { display:block; height:50.4px; width:auto; max-width:228px; padding:0; border-radius:0; background:transparent; box-shadow:none; filter:drop-shadow(0 4px 10px rgba(37,39,77,.18)); }
    .nav-links { display:flex; gap:20px; align-items:center; font-size:14px; color:rgba(248,251,255,.78); }
    .nav-cta { background:var(--gold-2); color:var(--bg); padding:10px 14px; border-radius:999px; font-weight:700; box-shadow:0 8px 22px rgba(46,156,202,.28); }
    .hero { background:radial-gradient(circle at 78% 18%, rgba(46,156,202,.28), transparent 34%), var(--bg); color:var(--white); }
    .hero-inner { max-width:var(--max); margin:0 auto; padding:78px 22px; display:grid; grid-template-columns:minmax(0,1fr) 420px; gap:54px; align-items:center; }
    .eyebrow { display:inline-flex; gap:10px; align-items:center; color:var(--gold-2); font-size:12px; letter-spacing:.18em; text-transform:uppercase; font-weight:820; }
    .eyebrow::before { content:""; width:36px; height:1px; background:currentColor; }
    h1 { font-size:clamp(46px,6vw,82px); line-height:.94; letter-spacing:-.075em; margin:22px 0; max-width:760px; }
    .lead { max-width:720px; color:#AAABB8; font-size:20px; }
    .portrait { min-height:520px; border-radius:34px; border:1px solid rgba(170,171,184,.22); background:linear-gradient(to top,rgba(37,39,77,.88),rgba(37,39,77,.08) 58%), var(--speaker-image); background-size:cover; background-position:var(--speaker-position, center); display:flex; align-items:flex-end; padding:28px; box-shadow:0 34px 90px rgba(0,0,0,.34); }
    .portrait strong { font-size:42px; line-height:.95; letter-spacing:-.055em; }
    .section { max-width:var(--max); margin:0 auto; padding:70px 22px; }
    .intro { display:grid; grid-template-columns:minmax(0,.95fr) minmax(280px,.55fr); gap:44px; align-items:start; }
    h2 { font-size:clamp(38px,5vw,64px); line-height:.96; letter-spacing:-.065em; margin:0 0 18px; }
    .copy { color:var(--muted); font-size:19px; max-width:760px; }
    .themes { display:flex; flex-wrap:wrap; gap:9px; padding:0; margin:26px 0 0; list-style:none; }
    .themes li { border:1px solid var(--line); border-radius:999px; padding:9px 12px; background:#f8fbff; font-weight:700; font-size:14px; color:#25274D; }


    .proof-section { scroll-margin-top:120px; margin-top:52px; color:var(--ink); }
    .proof-head { max-width:760px; margin-bottom:22px; }
    .proof-kicker { display:inline-flex; align-items:center; gap:10px; color:var(--gold-2); font-size:12px; letter-spacing:.16em; text-transform:uppercase; font-weight:820; margin-bottom:10px; }
    .proof-kicker::before { content:""; width:34px; height:1px; background:currentColor; }
    .proof-head h2 { scroll-margin-top:120px; margin-bottom:0; }
    .proof-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
    .proof-card { display:grid; grid-template-columns:132px minmax(0,1fr); gap:18px; align-items:start; background:var(--white); border:1px solid var(--line); border-radius:28px; padding:18px; box-shadow:0 18px 42px rgba(0,0,0,.05); }
    .proof-card-feature, .proof-card:nth-child(4) { grid-column:span 2; }
    .proof-avatar { min-height:132px; border-radius:22px; background-image:linear-gradient(to top,rgba(0,0,0,.32),rgba(0,0,0,0)), var(--proof-image, url('../assets/marcio-flores-prova-social.png')); background-size:auto, var(--proof-size, 430% auto); background-position:center, var(--proof-position); background-repeat:no-repeat; border:1px solid var(--line); }
    .proof-body { display:flex; flex-direction:column; gap:12px; }
    .proof-name { display:block; font-size:24px; line-height:.95; letter-spacing:-.05em; font-weight:840; color:var(--ink); }
    .proof-role { display:block; color:var(--gold-2); font-size:13px; letter-spacing:.08em; margin-top:4px; }
    .proof-quote { color:var(--muted); font-size:16px; line-height:1.45; margin:0; }
    .talks-head { margin-top:46px; }
    .talk-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-top:20px; }
    .talk-card { background:#f8fbff; border:1px solid var(--line); border-radius:24px; padding:24px; box-shadow:0 18px 42px rgba(37,39,77,.06); }
    .talk-card-feature { grid-column:1 / -1; }
    .talk-card-placeholder { background:rgba(46,156,202,.08); border-style:dashed; }
    .talk-card span { color:#29648A; font-size:12px; letter-spacing:.14em; text-transform:uppercase; font-weight:820; }
    .talk-card h3 { font-size:26px; line-height:1.02; letter-spacing:-.045em; margin:14px 0 10px; }
    .talk-card p { color:var(--muted); margin:0; }
    .talk-card-feature h3 { font-size:clamp(30px,3.6vw,44px); max-width:900px; }
    .talk-title-highlight { margin:14px 0 18px; padding:22px 24px; border-radius:22px; background:linear-gradient(135deg, rgba(46,156,202,.16), rgba(248,251,255,.96)); border:1px solid rgba(46,156,202,.34); box-shadow:0 18px 42px rgba(37,39,77,.08); }
    .talk-title-highlight h3 { margin:0; color:var(--ink); }
    .talk-defense { display:grid; gap:13px; margin-top:18px; max-width:920px; }
    .talk-audience-title { margin:24px 0 10px; font-size:22px; letter-spacing:-.03em; }
    .talk-audience { display:grid; gap:9px; margin:0; padding-left:20px; color:var(--muted); }
    .note { border:1px solid rgba(46,156,202,.34); background:rgba(46,156,202,.12); border-radius:24px; padding:22px; color:#464866; }
    .actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:30px; }
    .social-link { margin:16px 0 0; color:#AAABB8; font-size:15px; font-weight:760; }
    .social-link a { color:var(--gold-2); text-decoration:none; }
    .social-link a:hover { text-decoration:underline; }
    .button { display:inline-flex; align-items:center; justify-content:center; border-radius:999px; padding:13px 18px; font-weight:780; border:1px solid var(--line); }
    .button.primary { background:var(--gold-2); color:var(--ink); border-color:transparent; }
    .button.secondary { background:#f8fbff; color:var(--ink); }
    footer { background:var(--bg); color:#AAABB8; padding:24px 22px; font-size:13px; }
    .footer-inner { max-width:var(--max); margin:0 auto; display:flex; justify-content:space-between; gap:18px; }
    @media (max-width:860px) { .hero-inner,.intro { grid-template-columns:1fr; } .portrait { min-height:420px; } .talk-grid,.proof-grid { grid-template-columns:1fr; } .proof-head { grid-template-columns:1fr; } .nav { align-items:flex-start; } .nav-links { flex-wrap:wrap; justify-content:flex-end; } }
