.hub-hero{min-height:470px;padding:95px 32px;position:relative;overflow:hidden;display:flex;align-items:center;color:#fff;background:#071449}
.hub-hero>img,.hub-hero>video,.hub-hero::after{position:absolute;inset:0;width:100%;height:100%}.hub-hero>img,.hub-hero>video{object-fit:cover}.hub-hero::after{content:"";background:linear-gradient(90deg,rgba(7,20,73,.98),rgba(7,20,73,.82) 52%,rgba(7,20,73,.28))}
.hub-hero-inner{width:100%;max-width:1240px;margin:0 auto;position:relative;z-index:1}.hub-kicker{color:#79d9ff;font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.hub-hero h1{max-width:760px;margin:18px 0 20px;font-size:clamp(48px,6vw,76px);line-height:1;letter-spacing:-.055em}.hub-hero p{max-width:660px;margin:0;color:#c5d2e7;font-size:18px;line-height:1.7}
.hub-hero--dreamforce{min-height:610px;background:#001c47}.dreamforce-hero-video{object-position:center center;filter:saturate(1.05) contrast(1.08)}.hub-hero--dreamforce::after{background:linear-gradient(90deg,rgba(0,24,63,.98) 0%,rgba(0,25,66,.88) 42%,rgba(0,25,66,.28) 72%,rgba(0,25,66,.06) 100%)}.hub-hero--dreamforce .hub-hero-inner{padding-top:18px}.dreamforce-mark{width:min(330px,65vw);height:auto;margin:24px 0 28px}.hub-hero--dreamforce h1{max-width:620px;margin:0 0 20px;font-size:clamp(42px,5vw,67px);text-shadow:0 10px 38px rgba(0,23,64,.35)}.dreamforce-signal{display:flex;align-items:center;gap:13px;margin-top:34px;color:#fff;font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.dreamforce-signal i{width:24px;height:1px;background:#79d9ff}
.hub-main{padding:84px 32px;background:#f2f7fb}.hub-inner{max-width:1240px;margin:0 auto}.hub-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;margin-bottom:44px;align-items:end}.hub-intro h2{margin:0;color:#071449;font-size:clamp(34px,4vw,50px);line-height:1.08;letter-spacing:-.045em}.hub-intro p{margin:0;color:#5d6982;font-size:16px;line-height:1.7}
.hub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.hub-card{min-height:240px;padding:28px 30px;display:flex;flex-direction:column;border:1px solid #dce4ef;background:#fff}.hub-card span{color:#0085ca;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.hub-card h3{margin:40px 0 12px;color:#071449;font-size:21px;letter-spacing:-.025em}.hub-card p{margin:0;color:#5d6982;font-size:14px;line-height:1.65}.hub-card b{margin-top:auto;padding-top:24px;color:#0085ca;font-size:12px}
.steps-list{display:grid;gap:1px;border:1px solid #dce4ef;background:#dce4ef}.step-row{display:grid;grid-template-columns:70px 1fr auto;gap:24px;align-items:center;padding:28px;background:#fff}.step-row>span{color:#0085ca;font-size:12px;font-weight:800}.step-row h3{margin:0 0 6px;color:#071449;font-size:18px}.step-row p{margin:0;color:#5d6982;font-size:13px;line-height:1.55}.step-row small{color:#7a879c;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.hub-footer{padding:34px 32px;text-align:center;color:#6e7b91;font-size:12px;border-top:1px solid #dce4ef;background:#fff}
@media(max-width:800px){.hub-intro{grid-template-columns:1fr;gap:20px}.hub-grid{grid-template-columns:1fr}.step-row{grid-template-columns:44px 1fr}.step-row small{grid-column:2}.hub-hero{padding:75px 20px}.hub-hero--dreamforce{min-height:560px}.dreamforce-hero-video{object-position:62% center}.hub-hero--dreamforce::after{background:linear-gradient(90deg,rgba(0,24,63,.98),rgba(0,25,66,.75))}.hub-main{padding:65px 20px}}

/* Dreamforce session library */
.session-library{background:linear-gradient(180deg,#f3f8fc 0,#fff 72%)}
.session-stack{display:grid;gap:22px}
.session-card{position:relative;display:grid;grid-template-columns:76px minmax(0,1fr) 235px;min-height:360px;overflow:hidden;border:1px solid #d9e4ef;background:#fff;box-shadow:0 18px 55px rgba(7,20,73,.07)}
.session-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#0085ca}
.session-card--featured::before{background:linear-gradient(180deg,#00a9e0,#0085ca)}
.session-card__number{padding-top:38px;text-align:center;color:#0085ca;font-size:12px;font-weight:800;letter-spacing:.14em}
.session-card__body{padding:36px 48px 38px 10px}
.session-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.session-meta span{padding:7px 10px;color:#526078;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;background:#edf5fa}
.session-card h3{max-width:760px;margin:0 0 18px;color:#071449;font-size:clamp(24px,2.8vw,34px);line-height:1.1;letter-spacing:-.04em}
.session-summary{max-width:780px;margin:0 0 24px;color:#5b6880;font-size:14px;line-height:1.7}
.session-relevance{padding:21px 24px;border-left:3px solid #79d9ff;background:#f5f9fc}
.session-relevance>span{display:block;margin-bottom:8px;color:#0085ca;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.session-relevance p,.session-relevance ul{margin:0;color:#33415b;font-size:13px;line-height:1.62}
.session-relevance ul{padding-left:18px}
.session-relevance li+li{margin-top:5px}
.session-topics{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.session-topics span{padding:8px 12px;border:1px solid #cddce8;color:#075d88;font-size:10px;font-weight:700;background:#fff}
.session-watch{display:flex;flex-direction:column;justify-content:flex-end;gap:14px;padding:38px 32px;color:#fff;text-decoration:none;background:linear-gradient(155deg,#071449 0,#063565 100%);transition:background .2s ease}
.session-watch:hover{background:linear-gradient(155deg,#0085ca 0,#075d88 100%)}
.session-watch span{max-width:130px;font-size:14px;font-weight:700;line-height:1.4}
.session-watch b{font-size:32px;font-weight:400;line-height:1}
.session-coming-next{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:22px;padding:23px 28px;border:1px solid #dce5ef;background:#eef6fa}
.session-coming-next span{color:#0085ca;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.session-coming-next p{margin:0;color:#5d6982;font-size:13px}
@media(max-width:960px){.session-card{grid-template-columns:60px minmax(0,1fr)}.session-card__body{padding-right:32px}.session-watch{grid-column:1/-1;flex-direction:row;align-items:center;justify-content:space-between;padding:22px 32px}.session-watch span{max-width:none}.session-watch b{font-size:28px}}
@media(max-width:620px){.session-card{display:block}.session-card__number{display:block;padding:25px 24px 0;text-align:left}.session-card__body{padding:22px 24px 28px}.session-card h3{font-size:28px}.session-watch{padding:20px 24px}.session-coming-next{align-items:flex-start;flex-direction:column;gap:8px}}
