/* The campaign has its own space below the footage. Captions and controls
   remain inside the video, separate from the course text and actions. */
#conteudo-principal .rrmc-homepage-carousel {
  --leo-home-preview-height:176px;
  --leo-home-video-height:max(420px, calc(100svh - var(--leo-home-preview-height)));
}
/* The legacy fixed scroll decoration otherwise crosses the offer and its CTA. */
#conteudo-principal .rrmc-homepage-scroll-icon { display:none !important; }
#conteudo-principal [data-section-name="section0"] {
  height:calc(100vh - 176px) !important;
  height:var(--leo-home-video-height) !important;
  min-height:420px;
}
#conteudo-principal [data-section-name="section0"] .rrmc-home-carousel-video-js {
  height:100% !important;
  min-height:0 !important;
  padding-top:0 !important;
}
#conteudo-principal [data-section-name="section0"] .vjs-tech {
  height:100% !important;
  object-fit:cover;
}
#conteudo-principal [data-section-name="section0"] .leo-speaker-picker {
  max-height:calc(var(--leo-home-video-height) - 220px);
  overflow-y:auto;
}

.leo-home-offer {
  position:relative;
  color:var(--leo-text);
  background:var(--leo-bg);
  font-family:var(--leo-font-ui,"Riviera Nights",Helvetica,Arial,sans-serif);
  border-top:1px solid var(--leo-line);
}
.leo-home-offer *,.leo-home-offer *::before,.leo-home-offer *::after { box-sizing:border-box; }
.leo-home-offer-inner { max-width:var(--leo-content-max,1280px);margin-inline:auto;padding:var(--leo-page-space,48px) var(--leo-page-gutter,24px) 48px; }
.leo-home-offer :is(h1,h2,p) { margin:0;padding:0;color:inherit;font:inherit;text-transform:none;letter-spacing:normal; }
.leo-home-preview { display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,1fr);gap:32px 48px;align-items:start; }
.leo-home-intro { min-width:0; }
.leo-home-intro .leo-home-campaign-name { margin-bottom:20px;color:var(--leo-editorial);font-size:17px;font-weight:400;line-height:1.5; }
.leo-home-offer h1 { max-width:27ch;font-size:clamp(32px,3.7vw,50px);font-weight:300;line-height:1.16;letter-spacing:-.025em;text-wrap:balance; }
.leo-home-intro .leo-home-summary { max-width:58ch;margin-top:22px;color:var(--leo-muted);font-size:16px;line-height:1.75;text-wrap:pretty; }
.leo-home-intro .leo-home-investment { display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin-top:22px;color:var(--leo-muted);font-size:15px;line-height:1.5; }
.leo-home-investment strong { color:var(--leo-text);font-size:25px;font-weight:400; }
.leo-home-actions { display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:26px; }
.leo-home-offer a { color:var(--leo-action-text);text-underline-offset:5px;text-decoration-thickness:1px; }
.leo-home-offer a:focus-visible { outline:3px solid var(--leo-focus);outline-offset:5px; }
.leo-home-offer a.leo-home-primary { display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 28px;border:1px solid var(--leo-action-fill);border-radius:100px;background:var(--leo-action-fill);color:var(--leo-on-action);font-size:15px;line-height:1.4;text-decoration:none; }
.leo-home-offer a.leo-home-primary:hover { background:var(--leo-action-hover);border-color:var(--leo-action-hover); }
.leo-home-contact { display:inline-flex;align-items:center;min-height:48px;font-size:14px;line-height:1.5; }
.leo-home-schedule { min-width:0;padding:0;background:var(--leo-surface);color:var(--leo-text);border:1px solid var(--leo-line);border-radius:var(--leo-radius-panel,12px);overflow:hidden; }
.leo-home-art { margin:0; }
.leo-home-art img { display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain; }
.leo-home-schedule-info { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;padding:24px; }
.leo-home-schedule .leo-home-start-label { color:var(--leo-editorial-on-surface);font-size:14px;line-height:1.5; }
.leo-home-schedule time { display:block;margin-top:12px;font-size:30px;font-weight:300;line-height:1.2;letter-spacing:-.02em; }
.leo-home-schedule .leo-home-start-weekday { margin-top:8px;color:var(--leo-muted);font-size:13px;line-height:1.5; }
.leo-home-live-schedule { padding-left:20px;border-left:1px solid var(--leo-line); }
.leo-home-live-schedule p:first-child { font-size:16px;font-weight:400;line-height:1.5; }
.leo-home-live-schedule p+p { margin-top:6px;font-size:13px;line-height:1.65;color:var(--leo-muted); }
.leo-home-live-schedule .leo-home-timezone { font-size:14px; }
.leo-home-live-schedule .leo-home-weekend { margin-top:14px;padding-top:12px;border-top:1px solid var(--leo-line);font-size:14px; }
.leo-home-pillars { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:44px;padding:28px;background:var(--leo-surface);border-top:1px solid var(--leo-line);border-bottom:1px solid var(--leo-line); }
.leo-home-pillars article { min-width:0;padding-left:28px;border-left:1px solid var(--leo-line); }
.leo-home-pillars article:first-child { padding-left:0;border-left:0; }
.leo-home-pillars h2 { font-size:20px;font-weight:400;line-height:1.4;text-wrap:balance; }
.leo-home-pillars p { max-width:38ch;margin-top:12px;font-size:15px;line-height:1.75;color:var(--leo-muted); }
.leo-home-resources { margin-top:42px; }
.leo-home-resource-heading { display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 36px; }
.leo-home-resource-heading h2 { font-size:23px;font-weight:300;line-height:1.4; }
.leo-home-resource-heading p { max-width:56ch;color:var(--leo-muted);font-size:14px;line-height:1.7; }
.leo-home-offer ul { list-style:none;padding:0;margin:0;display:grid; }
.leo-home-offer li { margin:0;padding:0;min-width:0; }
.leo-home-resources ul { grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:22px; }
.leo-home-resources a { display:flex;flex-direction:column;gap:12px;height:100%;min-height:176px;padding:20px 18px;border:1px solid var(--leo-line);border-radius:8px;background:var(--leo-card);color:var(--leo-text);text-decoration:none; }
.leo-home-resources a:hover { border-color:var(--leo-action-text);background:var(--leo-hover,var(--leo-card)); }
.leo-home-resources strong { font-size:16px;line-height:1.45;font-weight:400; }
.leo-home-resource-description { font-size:13px;line-height:1.7;color:var(--leo-muted); }
.leo-home-resource-action { padding-top:4px;margin-top:auto;font-size:14px;line-height:1.5;color:var(--leo-action-on-card); }
@media(max-width:1000px) {
  .leo-home-preview { gap:30px;grid-template-columns:minmax(0,1.5fr) minmax(250px,1fr); }
  .leo-home-resources ul { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media(max-width:760px) {
  .leo-home-preview { grid-template-columns:1fr; }

}
@media(max-width:650px) {
  #conteudo-principal .rrmc-homepage-carousel { --leo-home-preview-height:190px; }
  .leo-home-offer-inner { padding:32px 24px 36px; }
  .leo-home-intro .leo-home-campaign-name { margin-bottom:16px;font-size:16px; }
  .leo-home-offer h1 { font-size:32px;max-width:25ch; }
  .leo-home-intro .leo-home-summary { font-size:15px;margin-top:18px; }
  .leo-home-actions { gap:8px 20px;margin-top:22px; }
  .leo-home-schedule-info { padding:20px;gap:16px; }
  .leo-home-schedule time { font-size:30px; }
  .leo-home-live-schedule { padding-left:20px; }
  .leo-home-pillars { grid-template-columns:1fr;gap:22px;margin-top:32px;padding:24px; }
  .leo-home-pillars article { padding:0;border-left:0; }
  .leo-home-pillars p { max-width:58ch;margin-top:8px; }
  .leo-home-resources { margin-top:30px; }
  .leo-home-resource-heading h2 { font-size:22px; }
  .leo-home-resources ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .leo-home-resources a { padding:18px 16px;min-height:166px; }
}
@media(max-width:420px) {
  .leo-home-schedule-info { grid-template-columns:1fr; }
  .leo-home-live-schedule { padding:16px 0 0;border-left:0;border-top:1px solid var(--leo-line); }
  .leo-home-live-schedule p+p { max-width:none; }
  .leo-home-resources ul { grid-template-columns:1fr;gap:10px; }
  .leo-home-resources a { min-height:0;padding:18px;gap:8px; }
}
@media(max-width:359px) {
  .leo-home-offer h1 { font-size:29px; }
  .leo-home-offer-inner { padding-inline:20px; }
  .leo-home-offer a.leo-home-primary { padding-inline:22px; }
}
