/* ===== merged from preplingo-mobile-fixes.css ===== */
/* =========================================================
   PrepLingo mobile safety layer
   Added after page CSS so every standalone page stays usable
   on phones, even though pages were designed separately.
   ========================================================= */

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

img,
svg,
video,
canvas,
iframe {
  max-width: 100%;
}

img,
video {
  height: auto;
}

iframe {
  border: 0;
}

table {
  width: 100%;
  max-width: 100%;
  display: block;
  overflow-x: auto;
}

h1,
h2,
h3,
h4,
p,
a,
span,
li,
strong,
small {
  overflow-wrap: break-word;
}

/* Keep embedded data-image logos/cards from forcing horizontal scroll. */
.brand img,
.brand-logo,
.hero img,
.hero-card img,
.hero-photo-card img,
.footer-brand img {
  max-width: 100%;
  height: auto;
}

@media (max-width: 980px) {
  .container,
  .about-container,
  .footer-container,
  .pl-seo-cluster .pl-seo-wrap {
    width: min(100% - 28px, 1180px) !important;
  }

  .header-container,
  .header-wrap,
  .header-row,
  .header {
    min-height: auto !important;
    gap: 12px !important;
  }

  .header-wrap,
  .header-row,
  .header {
    flex-wrap: wrap !important;
  }

  .brand,
  .brand a {
    min-width: 0 !important;
  }

  .brand img,
  .brand-logo {
    width: min(132px, 42vw) !important;
    max-width: 132px !important;
  }

  /* Pages with the advanced header already have a proper mobile panel. */
  .header-container .nav-area {
    display: none !important;
  }

  .header-container .mobile-toggle {
    display: block !important;
    flex: 0 0 auto !important;
  }

  .mobile-panel.open {
    display: block !important;
  }

  .mobile-courses,
  .dropdown-grid,
  .pl-seo-links {
    grid-template-columns: 1fr !important;
  }

  /* Pages with the simpler header had the nav hidden on mobile;
     show it as swipeable chips instead of losing navigation. */
  .site-header .nav {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    gap: 8px !important;
    padding: 4px 0 8px !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .site-header .nav::-webkit-scrollbar {
    display: none;
  }

  .site-header .nav a,
  .site-header .nav button {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
    font-size: 13px !important;
    padding: 9px 12px !important;
  }

  .header-btn,
  .header-btn.btn,
  .btn,
  .demo-btn,
  .btn-primary,
  .btn-secondary,
  .header-actions a {
    white-space: nowrap;
  }

  .hero-grid,
  .about-hero-grid,
  .contact-hero-grid,
  .contact-grid,
  .terms-grid,
  .footer-grid,
  .testimonials-shell,
  .intro-grid,
  .two-col,
  .score-showcase,
  .cta-box,
  .result-card,
  .hero-proof,
  .quick-strip,
  .quick-facts,
  .facts,
  .facts-grid,
  .focus-grid,
  .inside-grid,
  .benefit-grid,
  .skills-grid,
  .skill-grid,
  .result-grid,
  .cards-grid,
  .modules-grid,
  .task-grid,
  .journey-grid,
  .path-grid,
  .compare-grid,
  .course-grid,
  .courses-grid,
  .service-grid,
  .faq-layout,
  .reports-grid,
  .story-grid,
  .value-grid,
  .map-grid,
  .office-grid,
  .form-grid,
  .newsletter-row,
  .footer-main-grid {
    grid-template-columns: 1fr !important;
  }

  .hero,
  .about-hero,
  .contact-hero,
  .terms-hero,
  .section,
  .section-pad,
  .testimonials-section,
  .intro-section,
  .focus-section,
  .choose-section,
  .skills-section,
  .journey-section,
  .modules-section,
  .path-section,
  .compare-section,
  .exam-section,
  .problems-section,
  .why-section,
  .task-section,
  .result-section,
  .pl-seo-cluster {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .dropdown-menu {
    max-width: calc(100vw - 28px) !important;
  }
}

@media (max-width: 760px) {
  .container,
  .about-container,
  .footer-container,
  .pl-seo-cluster .pl-seo-wrap {
    width: min(100% - 24px, 760px) !important;
  }

  h1 {
    font-size: clamp(34px, 10vw, 46px) !important;
    line-height: 1.04 !important;
  }

  h2,
  .section-head h2,
  .section-title h2,
  .cta-panel h2,
  .cta h2 {
    font-size: clamp(27px, 8vw, 38px) !important;
    line-height: 1.12 !important;
  }

  h3 {
    font-size: clamp(21px, 6vw, 30px) !important;
    line-height: 1.18 !important;
  }

  p,
  li {
    font-size: 14.5px;
  }

  .hero,
  .about-hero,
  .contact-hero,
  .terms-hero {
    padding-top: 42px !important;
    padding-bottom: 52px !important;
  }

  .section,
  .section-pad,
  .testimonials-section,
  .intro-section,
  .focus-section,
  .choose-section,
  .skills-section,
  .journey-section,
  .modules-section,
  .path-section,
  .compare-section,
  .exam-section,
  .problems-section,
  .why-section,
  .task-section,
  .result-section,
  .pl-seo-cluster {
    padding-top: 46px !important;
    padding-bottom: 46px !important;
  }

  .card,
  .course-card,
  .stat-box,
  .fact-card,
  .module-card,
  .skill-card,
  .benefit-card,
  .result-card,
  .review-card,
  .testimonial-slide,
  .left-story-panel,
  .slider-panel,
  .reports-panel,
  .cta-panel,
  .cta-box,
  .dark-board,
  .big-copy,
  .pl-seo-cluster .pl-seo-wrap {
    border-radius: 24px !important;
    padding: 22px 18px !important;
  }

  .btn-row,
  .hero-actions,
  .cta-actions,
  .button-row,
  .actions,
  .header-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
  }

  .btn-row a,
  .hero-actions a,
  .cta-actions a,
  .button-row a,
  .actions a {
    flex: 1 1 220px !important;
    justify-content: center !important;
    text-align: center !important;
  }

  /* Convert decorative floating elements into normal flow on very small screens
     so text and score badges do not overlap. */
  .floating-stars,
  .floating-note,
  .floating-card,
  .floating-proof,
  .floating-proof-label,
  .hero-badge,
  .score-badge,
  .mini-card,
  .mock-card,
  .proof-card {
    max-width: 100% !important;
  }

  .mobile-panel {
    width: min(100% - 24px, 760px) !important;
  }

  .mobile-courses {
    grid-template-columns: 1fr !important;
  }

  .footer-grid {
    gap: 24px !important;
  }
}

@media (max-width: 520px) {
  .container,
  .about-container,
  .footer-container,
  .pl-seo-cluster .pl-seo-wrap {
    width: min(100% - 20px, 520px) !important;
  }

  .site-header .nav a,
  .site-header .nav button {
    font-size: 12.5px !important;
    padding: 8px 11px !important;
  }

  .header-btn,
  .btn,
  .demo-btn,
  .btn-primary,
  .btn-secondary {
    min-height: 42px !important;
    padding: 10px 14px !important;
    font-size: 13px !important;
  }

  .brand img,
  .brand-logo {
    width: min(122px, 46vw) !important;
  }

  .hero,
  .about-hero,
  .contact-hero,
  .terms-hero {
    padding-top: 34px !important;
    padding-bottom: 44px !important;
  }

  .section,
  .section-pad,
  .testimonials-section,
  .intro-section,
  .focus-section,
  .choose-section,
  .skills-section,
  .journey-section,
  .modules-section,
  .path-section,
  .compare-section,
  .exam-section,
  .problems-section,
  .why-section,
  .task-section,
  .result-section,
  .pl-seo-cluster {
    padding-top: 38px !important;
    padding-bottom: 38px !important;
  }

  .hero-proof,
  .quick-strip,
  .quick-facts,
  .facts,
  .facts-grid,
  .stats-grid {
    grid-template-columns: 1fr !important;
  }

  .pl-seo-links a {
    padding: 13px 14px !important;
  }
}

@media (max-width: 640px) {
  body * {
    max-width: 100%;
  }

  body *::before,
  body *::after {
    max-width: 100vw !important;
  }

  .score-card,
  .duo-score-card,
  .duo-lesson-card,
  .duo-speak-card,
  .lecture-card,
  .speaking-card,
  .writing-card,
  .format-pill,
  .mission-card,
  .visual-card,
  .phone-card,
  .result-card,
  .hero-card {
    width: auto !important;
    max-width: calc(100vw - 24px) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .hero-visual,
  .toefl-visual,
  .pte-visual,
  .ielts-visual,
  .duo-panel,
  .mission-board,
  .phone-mockup,
  .globe-inner,
  .stage-bg {
    max-width: calc(100vw - 24px) !important;
    overflow: hidden;
  }
}


/* ===== merged from preplingo-mobile-polish.css ===== */
/* =========================================================
   PrepLingo mobile polish + performance layer
   Scope: mobile/tablet stability only. Desktop layout untouched.
   ========================================================= */

html, body { overflow-x: hidden !important; }

/* Keep footer logos/contact blocks from stretching on course pages with different CSS systems. */
.site-footer .footer-brand,
.site-footer .footer-brand p,
.site-footer .footer-brand .preplingo-footer-contact,
.site-footer .footer-brand .preplingo-footer-socials {
  max-width: 100% !important;
}
.site-footer .footer-brand img,
.footer-brand img {
  width: 132px !important;
  max-width: 132px !important;
  height: auto !important;
  max-height: 52px !important;
  object-fit: contain !important;
}

/* Mobile page-speed help: below-fold sections render lazily where supported. */
@supports (content-visibility: auto) {
  section:not(.hero):not(.about-hero):not(.contact-hero):not(.terms-hero):not(#sec-hero),
  .pl-seo-cluster,
  .site-footer {
    content-visibility: auto;
    contain-intrinsic-size: 1px 720px;
  }
}

@media (max-width: 980px) {
  .pl-header-container { min-height: 70px !important; }
  .pl-brand img { width: 120px !important; max-width: 120px !important; max-height: 48px !important; }
  .pl-mobile-panel { max-height: 72vh; overflow-y: auto; -webkit-overflow-scrolling: touch; }

  /* Horizontal course journeys looked like broken overflow on phones. Stack only on mobile/tablet. */
  .journey-line,
  .path-track {
    display: grid !important;
    grid-template-columns: 1fr !important;
    overflow: visible !important;
    gap: 14px !important;
    padding: 0 !important;
  }
  .journey-step,
  .path-card {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    transform: none !important;
  }
  .journey-step::after,
  .journey-step:not(:last-child)::after { display: none !important; }

  /* Decorative blobs/bubbles should not create perceived overlap or side overflow on mobile. */
  .blob,
  .blob.two,
  .blob-one,
  .blob-two,
  .duo-bubble,
  .stat-bubble {
    display: none !important;
  }
}

@media (max-width: 760px) {
  .pl-header-container {
    width: min(100% - 24px, 760px) !important;
    min-height: 66px !important;
    gap: 10px !important;
  }
  .pl-brand img { width: 112px !important; max-width: 112px !important; }
  .pl-header-whatsapp { width: 40px !important; min-height: 40px !important; }
  .pl-mobile-toggle { width: 40px !important; height: 40px !important; }

  /* Duolingo hero: keep all score/map cards visible and separated on phones. */
  body .duo-hero { min-height: auto !important; }
  body .duo-panel {
    min-height: 735px !important;
    overflow: hidden !important;
    padding: 18px !important;
    border-radius: 30px !important;
  }
  body .duo-topbars { left: 44px !important; right: 22px !important; gap: 10px !important; }
  body .duo-owl {
    left: 50% !important;
    top: 78px !important;
    transform: translateX(-50%) scale(.86) !important;
  }
  body .duo-mock-card {
    left: 50% !important;
    top: 34px !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    max-width: calc(100% - 38px) !important;
    white-space: normal !important;
  }
  body .duo-score-card {
    left: 18px !important;
    right: 18px !important;
    top: 314px !important;
    width: auto !important;
  }
  body .duo-lesson-card {
    left: 18px !important;
    right: 18px !important;
    top: 458px !important;
    width: auto !important;
  }
  body .duo-speak-card {
    left: 18px !important;
    right: 18px !important;
    bottom: 26px !important;
    width: auto !important;
  }

  /* TOEFL hero: separate mission board floating cards on phones. */
  body .mission-board {
    min-height: 840px !important;
    overflow: hidden !important;
    border-radius: 30px !important;
    padding: 18px !important;
  }
  body .format-pill {
    left: 50% !important;
    right: auto !important;
    top: 42px !important;
    transform: translateX(-50%) !important;
    max-width: calc(100% - 38px) !important;
    white-space: normal !important;
  }
  body .main-task-card {
    left: 18px !important;
    right: 18px !important;
    top: 112px !important;
    width: auto !important;
  }
  body .score-card {
    left: 24px !important;
    right: 24px !important;
    top: 438px !important;
    width: auto !important;
  }
  body .speaking-card {
    left: 24px !important;
    right: 24px !important;
    top: 594px !important;
    width: auto !important;
  }
  body .writing-card {
    left: 24px !important;
    right: 24px !important;
    bottom: 32px !important;
    width: auto !important;
  }

  /* Footer columns should never sit side-by-side on phones. */
  .site-footer .footer-grid,
  .footer-grid {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }
}

@media (max-width: 520px) {
  .pl-brand img { width: 106px !important; max-width: 106px !important; }
  body .duo-panel { min-height: 760px !important; }
  body .mission-board { min-height: 870px !important; }
  .lesson-item { grid-template-columns: 58px 1fr 30px !important; }
}

/* =========================================================
   PrepLingo mobile header/menu v2
   Desktop is intentionally untouched: every rule below is mobile/tablet only.
   ========================================================= */
@media (max-width: 760px) {
  .pl-global-header {
    background: rgba(255,255,255,.96) !important;
    border-bottom: 1px solid rgba(220,235,246,.82) !important;
    box-shadow: 0 8px 22px rgba(0,44,92,.045) !important;
  }

  .pl-header-container {
    width: calc(100% - 28px) !important;
    min-height: 64px !important;
    padding: 0 !important;
    gap: 8px !important;
  }

  .pl-brand {
    min-width: 0 !important;
  }

  .pl-brand img {
    width: 106px !important;
    max-width: 106px !important;
    max-height: 44px !important;
  }

  /* Clean mobile header: logo + menu only. Phone/demo actions stay inside the menu. */
  .pl-header-actions {
    display: none !important;
  }

  .pl-mobile-toggle {
    display: grid !important;
    place-items: center !important;
    width: 42px !important;
    height: 42px !important;
    margin-left: auto !important;
    border-radius: 15px !important;
    background: #eef7ff !important;
    border: 1px solid rgba(220,235,246,.96) !important;
    box-shadow: 0 10px 22px rgba(0,87,125,.08) !important;
    z-index: 99999 !important;
  }

  .pl-mobile-toggle:active {
    transform: scale(.96) !important;
  }

  .pl-mobile-toggle span {
    left: 11px !important;
    width: 20px !important;
    height: 2.2px !important;
    background: #00577d !important;
  }

  .pl-mobile-toggle span:nth-child(1) { top: 13px !important; }
  .pl-mobile-toggle span:nth-child(2) { top: 20px !important; }
  .pl-mobile-toggle span:nth-child(3) { top: 27px !important; }
  .pl-mobile-toggle.active span:nth-child(1) { top: 20px !important; transform: rotate(45deg) !important; }
  .pl-mobile-toggle.active span:nth-child(2) { opacity: 0 !important; }
  .pl-mobile-toggle.active span:nth-child(3) { top: 20px !important; transform: rotate(-45deg) !important; }

  /* Premium off-canvas mobile menu */
  .pl-mobile-panel {
    position: fixed !important;
    top: 76px !important;
    right: 12px !important;
    left: auto !important;
    width: min(86vw, 340px) !important;
    max-height: calc(100vh - 94px) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    margin: 0 !important;
    padding: 14px !important;
    border-radius: 26px !important;
    background: rgba(255,255,255,.98) !important;
    border: 1px solid rgba(220,235,246,.96) !important;
    box-shadow: 0 28px 70px rgba(0,44,92,.18) !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateX(18px) translateY(-4px) scale(.98) !important;
    transition: opacity .22s ease, transform .22s ease, visibility .22s ease !important;
    z-index: 99998 !important;
  }

  .pl-mobile-panel.open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateX(0) translateY(0) scale(1) !important;
  }

  .pl-mobile-panel a {
    min-height: 44px !important;
    padding: 12px 14px !important;
    border-radius: 16px !important;
    background: #f7fbff !important;
    border: 1px solid rgba(220,235,246,.82) !important;
    color: #17324d !important;
    font-size: 13.5px !important;
    font-weight: 750 !important;
    line-height: 1.2 !important;
  }

  .pl-mobile-panel a:active {
    transform: scale(.985) !important;
    background: #eef7ff !important;
  }

  /* Make the contact actions inside the menu look intentional. */
  .pl-mobile-panel a[href*="wa.me"] {
    margin-top: 6px !important;
    background: #eafaf1 !important;
    border-color: rgba(20,160,90,.22) !important;
    color: #087a45 !important;
  }

  .pl-mobile-panel a[href="/contact/"],
  .pl-mobile-panel a[href$="/contact/"] {
    background: #00577d !important;
    border-color: #00577d !important;
    color: #fff !important;
    justify-content: center !important;
    box-shadow: 0 14px 26px rgba(0,87,125,.16) !important;
  }

  /* Mobile readability and friendlier first screen, without changing desktop. */
  .hero,
  .hero-page,
  .course-hero,
  .service-hero,
  .ielts-hero {
    padding-top: 28px !important;
  }

  h1,
  .hero h1,
  .hero-title,
  .course-hero h1,
  .service-hero h1 {
    line-height: 1.08 !important;
    letter-spacing: -0.02em !important;
  }

  p,
  .hero p,
  .hero-subtitle,
  .course-hero p,
  .service-hero p {
    line-height: 1.72 !important;
  }

  .btn,
  .button,
  .primary-btn,
  .hero-cta,
  .cta-button,
  a[class*="btn"] {
    min-height: 46px !important;
    border-radius: 999px !important;
    touch-action: manipulation !important;
  }
}

@media (max-width: 420px) {
  .pl-header-container {
    min-height: 62px !important;
  }

  .pl-brand img {
    width: 100px !important;
    max-width: 100px !important;
  }

  .pl-mobile-toggle {
    width: 40px !important;
    height: 40px !important;
  }

  .pl-mobile-panel {
    top: 72px !important;
    right: 10px !important;
    width: min(88vw, 330px) !important;
    border-radius: 24px !important;
  }

  .pl-mobile-panel a {
    min-height: 43px !important;
    font-size: 13px !important;
  }
}


/* =========================================================
   FINAL MASTER OVERRIDES — 2026-07-20
   This block is authoritative and intentionally loaded last.
   ========================================================= */
html { scroll-behavior: smooth; }
html, body { max-width: 100%; overflow-x: hidden; }
img { max-width: 100%; height: auto; }

/* Consistent logo dimensions. */
.pl-brand { display:flex !important; align-items:center !important; flex:0 0 auto !important; }
.pl-brand img,
header img[alt*="PrepLingo" i] {
  display:block !important;
  width:150px !important;
  max-width:150px !important;
  height:auto !important;
  max-height:60px !important;
  object-fit:contain !important;
}

/* First content must never depend on animation/observer execution. */
main,
main > section:first-child,
main > div:first-child,
main > section:first-child *,
main > div:first-child * {
  visibility:visible !important;
}

@media (max-width: 760px) {
  body { min-width:0 !important; }
  .pl-global-header { position:relative !important; top:auto !important; }
  .pl-header-container {
    min-height:68px !important;
    width:calc(100% - 24px) !important;
    padding:8px 0 !important;
  }
  .pl-brand img,
  header img[alt*="PrepLingo" i] {
    width:126px !important;
    max-width:126px !important;
    max-height:50px !important;
  }

  /* Never allow the opening section to become an empty viewport. */
  main { display:block !important; padding-top:0 !important; margin-top:0 !important; }
  main > section:first-child,
  main > div:first-child,
  section.hero:first-of-type,
  #sec-hero,
  #sec-hero .hero-page,
  #sec-hero .hero {
    min-height:0 !important;
    height:auto !important;
    margin-top:0 !important;
    padding-top:22px !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
  }
  main > section:first-child *,
  main > div:first-child * {
    animation-delay:0s !important;
  }

  /* Every course page: copy first, visual second. */
  .hero-grid,
  .course-hero-grid,
  .hero .container.hero-grid {
    display:flex !important;
    flex-direction:column !important;
    grid-template-columns:1fr !important;
    min-height:0 !important;
    height:auto !important;
    gap:24px !important;
  }
  .hero-copy,
  .hero-left,
  .hero-content,
  .hero-grid > div:first-child {
    order:1 !important;
    min-height:0 !important;
    height:auto !important;
    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
  }
  .hero-visual,
  .hero-ui-wrap,
  .academic-art,
  .core-art,
  .conversation-visual,
  .cert-visual,
  .toefl-visual,
  .duo-hero,
  .visual,
  .hero-grid > div:last-child {
    order:2 !important;
    min-height:0 !important;
    height:auto !important;
    margin-top:4px !important;
  }

  /* Complex absolutely-positioned dashboards were the source of the 700–900px blank area.
     Keep them on desktop, but hide them on narrow screens so content appears immediately. */
  .duo-panel,
  .mission-board,
  .talk-stage,
  .cert-board,
  .university-board,
  .core-board,
  .hero-ui-board,
  .mockup-stage,
  .visual-card {
    display:none !important;
  }

  .duo-hero,
  .toefl-visual,
  .conversation-visual,
  .cert-visual,
  .academic-art,
  .core-art,
  .hero-ui-wrap,
  .hero-visual,
  .visual {
    min-height:0 !important;
    height:auto !important;
  }

  /* Homepage keeps its illustration but removes false full-screen spacing. */
  #sec-hero .hero { display:flex !important; flex-direction:column !important; gap:28px !important; }
  #sec-hero .hero-left { order:1 !important; }
  #sec-hero .hero-right { order:2 !important; min-height:0 !important; height:auto !important; }
  #sec-hero .visual-stage { min-height:360px !important; height:360px !important; transform:none !important; }

  .lead-form { width:100% !important; max-width:100% !important; }
  .pl-mobile-panel { max-height:calc(100vh - 78px) !important; overflow-y:auto !important; }
}

@media (max-width: 480px) {
  .pl-brand img,
  header img[alt*="PrepLingo" i] { width:116px !important; max-width:116px !important; }
  #sec-hero .visual-stage { min-height:300px !important; height:300px !important; }
}

@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}

/* =========================================================
   HOMEPAGE DESKTOP HERO TOP-GAP FIX
   Homepage only; tablet and mobile remain unchanged.
   This file is loaded last, so this is the final authority.
   ========================================================= */
@media (min-width: 1121px) {
  body main #sec-hero .hero-page {
    min-height: 0 !important;
    height: auto !important;
    display: block !important;
    padding: 18px 20px 34px !important;
    margin: 0 !important;
  }

  body main #sec-hero .hero {
    min-height: 0 !important;
    height: auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
    align-items: center !important;
  }

  body main #sec-hero .hero-left,
  body main #sec-hero .hero-right,
  body main #sec-hero .visual-stage {
    margin-top: 0 !important;
  }
}
