.ri-nav-icon,
.ri-menu-backdrop,
.ri-home-art {display: none;}
html[data-page] .site-header .ri-nav-icon {display: none;}
html[data-page] .ri-common-footer,
html[data-page] .ri-common-brands {font-family: Inter, Arial, sans-serif; line-height: normal; --max: 1240px; box-sizing: border-box; clear: both;}
html[data-page] .ri-common-footer *,
html[data-page] .ri-common-brands * {box-sizing: border-box;}
html[data-page] .ri-common-footer .section-shell,
html[data-page] .ri-common-brands .section-shell {width: min(1240px, 100% - 48px); max-width: none; margin-inline: auto;}
html[data-page] .ri-common-brands {position: relative; border-top: 1px solid rgba(16, 41, 57, 0.05); border-bottom: 1px solid rgba(16, 41, 57, 0.05); overflow: hidden; background: rgb(255, 255, 255) !important; color: rgb(16, 41, 57) !important; padding: 52px 0px !important;}
html[data-page] .ri-common-brands .brand-strip-inner {flex-direction: column; gap: 32px; display: flex !important;}
html[data-page] .ri-common-brands .brand-group {width: 100%; min-width: 0px; display: flex; flex-direction: column; align-items: center; gap: 22px;}
html[data-page] .ri-common-brands .brand-title-pill {letter-spacing: 0.1em; font-weight: 700; text-transform: uppercase; text-align: center; margin: 0px !important; padding: 0px !important; border: 0px !important; background: none !important; box-shadow: none !important; color: rgb(67, 85, 102) !important; font-size: 13px !important; line-height: 1.4 !important;}
html[data-page] .ri-common-brands .brand-title-pill::before,
html[data-page] .ri-common-brands .brand-title-pill::after {display: none !important;}
html[data-page] .ri-common-brands .brand-logos {width: 100%; align-items: center; display: grid !important; gap: 20px !important; margin: 0px !important; padding: 0px !important;}
html[data-page] .ri-common-brands .institution-logos {grid-template-columns: repeat(5, minmax(0px, 1fr)) !important;}
html[data-page] .ri-common-brands .developed-logos {max-width: 1010px; grid-template-columns: repeat(4, minmax(0px, 1fr)) !important;}
html[data-page] .ri-common-brands .brand-logo-card {display: flex; align-items: center; justify-content: center; width: 100%; min-width: 0px; height: 110px !important; padding: 20px !important; border: 1px solid rgb(226, 235, 239) !important; border-radius: 16px !important; background: rgb(255, 255, 255) !important; box-shadow: none !important;}
html[data-page] .ri-common-brands .brand-logo-card img {display: block; margin: auto; width: auto !important; height: auto !important; max-width: 100% !important; max-height: 70px !important; object-fit: contain !important; filter: none !important; opacity: 1 !important;}
html[data-page] .ri-common-brands .brand-strip-divider {display: block; width: 100%; height: 1px; background: rgb(231, 238, 242); margin: 0px !important;}
html[data-page] .ri-common-footer {margin: 0px; border: 0px; padding: 0px !important; background: rgb(6, 25, 39) !important; color: rgb(214, 230, 238) !important;}
html[data-page] .ri-common-footer a {text-decoration: none; color: inherit;}
html[data-page] .ri-common-footer .footer-main {align-items: start; display: grid !important; grid-template-columns: 240px minmax(0px, 1fr) !important; gap: 48px !important; padding: 58px 0px 38px !important;}
html[data-page] .ri-common-footer .footer-brand {width: 100%; max-width: none; margin: 0px; padding: 0px;}
html[data-page] .ri-common-footer .footer-brand > a {display: inline-flex; width: 240px; max-width: 100%;}
html[data-page] .ri-common-footer .footer-brand img {display: block; max-width: 100%; opacity: 0.94; width: 240px !important; height: auto !important; filter: brightness(0) invert(1) !important;}
html[data-page] .ri-common-footer .socials {display: flex; flex-wrap: wrap; gap: 10px; margin: 26px 0px 0px;}
html[data-page] .ri-common-footer .socials > a,
html[data-page] .ri-common-footer .socials > span {display: grid; place-items: center; width: 42px; height: 42px; padding: 0px; border: 1px solid rgba(208, 230, 241, 0.145); border-radius: 50%; background: transparent; color: rgb(179, 203, 215); transition: 0.2s;}
html[data-page] .ri-common-footer .socials > a:hover {color: rgb(255, 255, 255); border-color: rgb(75, 217, 199); background: rgba(0, 179, 136, 0.094); transform: translateY(-3px);}
html[data-page] .ri-common-footer .socials svg {width: 21px; height: 21px;}
html[data-page] .ri-common-footer .footer-links {display: grid !important; grid-template-columns: 1.2fr 0.85fr 1.1fr 1fr !important; gap: 26px !important;}
html[data-page] .ri-common-footer .footer-links > div {display: flex; flex-direction: column; align-items: flex-start; gap: 10px; min-width: 0px;}
html[data-page] .ri-common-footer .footer-links h3 {font-weight: 700; letter-spacing: 0px; color: rgb(247, 250, 252); text-transform: none; font-size: 17px !important; line-height: 1.4 !important; margin: 0px 0px 12px !important;}
html[data-page] .ri-common-footer .footer-links a {display: block; font-weight: 400; color: rgb(167, 190, 205); overflow-wrap: anywhere; font-size: 15px !important; line-height: 1.6 !important;}
html[data-page] .ri-common-footer .footer-links a:hover {color: rgb(88, 221, 201);}
html[data-page] .ri-common-footer .footer-contact {display: flex; flex-wrap: wrap; gap: 14px 30px; align-items: center; border-top: 1px solid rgba(207, 232, 243, 0.11); color: rgb(172, 196, 209); font-size: 13px; line-height: 1.6; padding: 25px 0px !important;}
html[data-page] .ri-common-footer .footer-contact a {overflow-wrap: anywhere;}
html[data-page] .ri-common-footer .footer-bottom {border-top: 1px solid rgba(207, 232, 243, 0.08); background: none;}
html[data-page] .ri-common-footer .footer-bottom > div {display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; min-height: 72px; padding-block: 22px; color: rgb(136, 166, 183); height: auto !important; font-size: 12px !important; line-height: 1.6 !important;}
@media (min-width: 1280px) {
html[data-page] .site-header .nav-shell {grid-template-columns: 220px minmax(0px, 1fr) 152px;}
html[data-page] .site-header .main-nav {justify-self: center;}
html[data-page] .ri-common-footer,
html[data-page] .ri-common-brands {zoom: 0.9 !important;}
html[data-page="index"] .hero .hero-message h1 em,
html[data-page="medprovas"] .mp-hero h1 .mp-title-line {white-space: normal;}
}
@media (max-width: 1279px) {
html[data-page] {--ri-header-height: 74px; scroll-padding-top: 94px;}
html[data-page] body.menu-open {overscroll-behavior: none; overflow: hidden !important;}
html[data-page] .site-header {height: 74px; z-index: 200; background: var(--surface); backdrop-filter: none; isolation: isolate;}
html[data-page] .site-header .nav-shell {position: static; display: flex; align-items: center; justify-content: space-between; width: calc(100% - 40px); height: 100%; gap: 20px;}
html[data-page] .site-header .brand {display: flex; flex: 0 1 auto; min-width: 0px;}
html[data-page] .site-header .brand img {width: 190px; max-width: 100%; height: auto;}
html[data-page] .site-header .nav-actions {display: flex; gap: 9px; flex: 0 0 auto; margin-left: auto; position: relative; z-index: 3;}
html[data-page] .site-header .theme-toggle,
html[data-page] .site-header .menu-toggle {width: 44px; height: 44px; border-radius: 13px; display: grid; color: var(--ink); background: var(--surface-soft);}
html[data-page] .site-header .menu-toggle svg {transition: transform 0.3s;}
html[data-page] .site-header .menu-toggle[aria-expanded="true"] {background: linear-gradient(130deg, rgb(47, 128, 237), rgb(0, 179, 136)); color: rgb(255, 255, 255); border-color: transparent; box-shadow: rgba(0, 157, 169, 0.17) 0px 7px 18px;}
html[data-page] .site-header .menu-toggle[aria-expanded="true"] svg {transform: rotate(90deg);}
html[data-page] .site-header .main-nav {position: fixed; z-index: 2; inset: 86px 20px auto auto; width: min(440px, 100% - 40px); height: auto; max-height: calc(-104px + 100dvh); margin: 0px; padding: 20px; display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 6px; border: 1px solid var(--border); border-radius: 22px; background: var(--surface); box-shadow: rgba(0, 21, 35, 0.27) 0px 30px 80px; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: rgb(43, 169, 182) transparent; opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-12px) scale(0.98); transform-origin: right top; transition: opacity 0.24s, transform 0.3s, visibility 0.3s;}
html[data-page] .site-header .main-nav.is-open {opacity: 1; visibility: visible; pointer-events: auto; transform: none;}
html[data-page] .site-header .ri-menu-backdrop {display: block; position: fixed; inset: 74px 0px 0px; z-index: 1; background: rgba(0, 20, 34, 0.56); backdrop-filter: blur(4px); visibility: hidden; opacity: 0; pointer-events: none; transition: opacity 0.25s, visibility 0.25s;}
html[data-page] .site-header:has(.main-nav.is-open) .ri-menu-backdrop {visibility: visible; opacity: 1; pointer-events: auto;}
html[data-page] .site-header .main-nav > a,
html[data-page] .site-header .courses-trigger {display: flex; align-items: center; gap: 13px; position: relative; width: 100%; min-height: 56px; padding: 10px 12px; font-size: 16px; font-weight: 650; line-height: 1.35; text-align: left; white-space: normal; border: 0px; border-radius: 13px; color: var(--ink); background: var(--surface-soft); transition: background 0.2s, transform 0.2s;}
html[data-page] .site-header .main-nav > a::after,
html[data-page] .site-header .courses-trigger::after {display: none;}
html[data-page] .site-header .main-nav > a:hover,
html[data-page] .site-header .courses-trigger:hover {background: color-mix(in srgb,var(--green) 10%,var(--surface-soft)); transform: translateX(2px);}
html[data-page] .site-header .ri-nav-icon {display: grid; place-items: center; flex: 0 0 auto; width: 32px; height: 32px; border-radius: 10px; color: var(--green); background: rgba(0, 179, 136, 0.05);}
html[data-page] .site-header .ri-nav-icon svg {width: 21px; height: 21px; transform: none !important;}
html[data-page] .site-header .nav-dropdown {display: block; align-self: stretch; width: 100%; position: relative;}
html[data-page] .site-header .courses-trigger {justify-content: flex-start;}
html[data-page] .site-header .courses-trigger > svg {flex: 0 0 auto; margin-left: auto; transform: rotate(90deg);}
html[data-page] .site-header .nav-dropdown:is(.open, .is-open) > .courses-trigger {color: var(--green); background: color-mix(in srgb,var(--green) 10%,var(--surface-soft));}
html[data-page] .site-header .nav-dropdown:is(.open, .is-open) > .courses-trigger > svg {transform: rotate(270deg);}
html[data-page] .site-header .courses-panel,
html[data-page] .site-header .login-dropdown .courses-panel {position: static; display: grid; grid-template-columns: 1fr; width: 100%; min-width: 0px; max-height: 0px; gap: 3px; left: auto; right: auto; margin: 0px; padding: 0px 8px; border-width: 0px 0px 0px 2px; border-top-style: initial; border-right-style: initial; border-bottom-style: initial; border-top-color: initial; border-right-color: initial; border-bottom-color: initial; border-image: initial; border-left-style: solid; border-left-color: rgba(22, 180, 169, 0.2); border-radius: 0px 0px 13px 13px; box-shadow: none; background: var(--surface); overflow: hidden; opacity: 0; visibility: hidden; pointer-events: none; transition: max-height 0.35s, padding 0.35s, opacity 0.25s, visibility 0.25s; transform: none !important;}
html[data-page] .site-header .nav-dropdown:is(.open, .is-open) .courses-panel {max-height: 700px; padding: 10px 8px; margin-bottom: 5px; opacity: 1; visibility: visible; pointer-events: auto;}
html[data-page] .site-header .courses-panel a {display: flex; align-items: center; min-height: 46px; padding: 11px 16px; border-radius: 10px; font-size: 14px; font-weight: 550; line-height: 1.45; color: var(--muted); white-space: normal;}
html[data-page] .site-header .courses-panel a::after {display: none;}
html[data-page] .site-header .courses-panel a:hover {color: var(--ink); background: var(--surface-soft);}
html[data-page] .site-header .main-nav > .login-dropdown {position: relative; top: auto; right: auto; width: 100%; transform: none; margin-top: 8px;}
html[data-page] .site-header .login-nav-trigger {min-height: 56px; width: 100%; text-align: left; font-size: 16px; padding: 12px !important; justify-content: flex-start !important;}
html[data-page] .site-header .login-nav-trigger .ri-nav-icon {color: rgb(255, 255, 255); background: rgba(255, 255, 255, 0.09);}
html[data-page] .site-header .main-nav.is-open > :is(a, .nav-dropdown) {animation: 0.32s ease 0s 1 normal both running ri-menu-item;}
html[data-page] .site-header .main-nav.is-open > :nth-child(3) {animation-delay: 0.025s;}
html[data-page] .site-header .main-nav.is-open > :nth-child(4) {animation-delay: 0.05s;}
html[data-page] .site-header .main-nav.is-open > :nth-child(5) {animation-delay: 0.075s;}
html[data-page] .site-header .main-nav.is-open > :nth-child(6) {animation-delay: 0.1s;}
html[data-page] .site-header .main-nav.is-open > :nth-child(7) {animation-delay: 0.125s;}
html[data-page] .site-header .main-nav.is-open > :nth-child(8) {animation-delay: 0.15s;}
html[data-page] body > main > :not(.site-header),
html[data-page] body > footer,
html[data-page] body > .floating-contact {zoom: 1 !important;}
html[data-page] .section-shell {width: calc(100% - 40px); max-width: 1160px; margin-inline: auto;}
html[data-page] .ri-common-footer,
html[data-page] .ri-common-brands {zoom: 1 !important;}
html[data-page] .ri-common-footer .footer-main {grid-template-columns: 1fr !important; gap: 35px !important; padding-top: 42px !important;}
html[data-page] .ri-common-footer .footer-brand {display: flex; justify-content: space-between; align-items: center; gap: 20px;}
html[data-page] .ri-common-footer .socials {margin: 0px;}
html[data-page] .ri-common-footer .footer-links {grid-template-columns: repeat(4, minmax(0px, 1fr)) !important; gap: 28px !important;}
html[data-page] .ri-common-brands .brand-logos {gap: 14px !important;}
html[data-page] .ri-common-brands .brand-logo-card {height: 96px !important; padding: 16px !important;}
html[data-page] .ri-common-brands .brand-logo-card img {max-height: 64px !important;}
html[data-page][data-page] [data-ri-hero] {overflow: hidden; height: auto !important; min-height: 0px !important; zoom: 1 !important; margin-top: 74px !important; padding: 36px 0px 44px !important;}
html[data-page][data-page] [data-ri-hero-grid] {position: relative !important; display: grid !important; grid-template-columns: minmax(0px, 1fr) !important; align-items: start !important; gap: 32px !important; width: calc(100% - 40px) !important; max-width: 760px !important; height: auto !important; min-height: 0px !important; margin-inline: auto !important; padding: 0px !important;}
html[data-page][data-page] [data-ri-hero-copy] {flex-direction: column; align-items: stretch; position: relative !important; inset: auto !important; width: 100% !important; min-width: 0px !important; max-width: 100% !important; height: auto !important; min-height: 0px !important; padding: 0px !important; margin: 0px !important; transform: none !important; text-align: left !important; display: flex !important;}
html[data-page][data-page] [data-ri-hero-copy] > h1 {overflow-wrap: normal; max-width: 100% !important; margin: 16px 0px !important; font-size: 38px !important; line-height: 1.13 !important; font-weight: 400 !important; letter-spacing: -0.035em !important;}
html[data-page][data-page] [data-ri-hero-copy] > h1 span {font-size: inherit !important; font-weight: inherit !important; line-height: inherit !important; white-space: normal !important;}
html[data-page][data-page] [data-ri-hero-copy] > p {max-width: 100%; font-size: 16px; line-height: 1.65; margin: 0px 0px 20px;}
html[data-page][data-page] [data-ri-hero-prices] {width: 100%; max-width: none; display: grid; grid-template-columns: 1fr 1fr 0.75fr; gap: 12px; margin: 4px 0px 20px;}
html[data-page][data-page] [data-ri-hero-prices] > div {min-height: 74px; padding: 14px 16px;}
html[data-page][data-page] [data-ri-hero-prices] > b {min-height: 0px; padding: 14px; grid-column: auto;}
html[data-page][data-page] [data-ri-hero-prices] strong {font-size: 18px; line-height: 1.4; overflow-wrap: normal;}
html[data-page][data-page] [data-ri-hero-actions] {display: flex; flex-wrap: wrap; gap: 12px; justify-content: flex-start; margin: 0px 0px 18px;}
html[data-page][data-page] [data-ri-hero-actions] > a {display: flex; align-items: center; justify-content: center; min-height: 52px; padding: 14px 20px; font-size: 14px; line-height: 1.4; text-align: center; margin: 0px; max-width: 100%; white-space: normal;}
html[data-page][data-page] [data-ri-hero-proof] {display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 8px 14px; line-height: 1.5; margin: 0px !important; font-size: 12px !important;}
html[data-page][data-page] [data-ri-hero-proof] span {font-size: 12px; min-height: 0px; line-height: 1.5;}
html[data-page][data-page] [data-ri-hero-visual] {order: 2; align-self: start; overflow: visible; position: relative !important; inset: auto !important; width: 100% !important; max-width: 680px !important; min-width: 0px !important; min-height: 0px !important; margin: 0px auto !important; transform: none !important;}
html[data-page][data-page] .cex-hero-visual {height: 410px !important;}
html[data-page][data-page] .r1e-platform-card,
html[data-page][data-page] .cex-platform-card {position: absolute !important; inset: 15px auto auto 0px !important; width: 88% !important; max-width: none !important; transform: none !important;}
html[data-page][data-page] .r1e-students {object-fit: contain; width: 73% !important; max-height: 390px !important; height: auto !important; right: -10px !important; bottom: 0px !important; top: auto !important;}
html[data-page][data-page] .cex-hero-students {object-fit: contain; width: 92% !important; max-height: 360px !important; height: auto !important; right: -5px !important; bottom: 0px !important; top: auto !important;}
html[data-page][data-page] .r1e-floating-chip,
html[data-page][data-page] .cex-floating-chip {max-width: 85%; font-size: 11px; z-index: 4;}
html[data-page][data-page] .r1e-chip-one,
html[data-page][data-page] .cex-chip-one {left: 10px; top: 0px;}
html[data-page][data-page] .r1e-chip-two,
html[data-page][data-page] .cex-chip-two {right: 6px; bottom: 10px;}
html[data-page][data-page] .ri-float-screen {position: relative; inset: auto; width: 100%; height: auto; transform: none; margin: 0px; animation: auto ease 0s 1 normal none running none;}
html[data-page][data-page] .hero-visual .video-shell {position: relative; width: 100%; max-width: 100%; transform: none; margin: 0px;}
html[data-page][data-page] .hero-visual .video-frame {width: 100%; height: auto; aspect-ratio: 16 / 9; padding: 0px; position: relative;}
html[data-page][data-page] .hero-visual .video-frame iframe {position: absolute; inset: 0px; width: 100%; height: 100%;}
html[data-page][data-page] .ecd-media-wrap {padding-top: 18px;}
html[data-page][data-page] .ecd-floating-stat {left: 15px; top: 0px; max-width: calc(100% - 30px);}
html[data-page][data-page] .mp-hero-visual {padding: 0px; height: auto !important;}
html[data-page][data-page] .mp-device-stage {position: relative; inset: auto; width: 100%; height: auto; margin: 0px; transform: none !important;}
html[data-page][data-page] .mp-device-stage img {width: 100%; height: auto; transform: none !important;}
html[data-page][data-page] .mp-visual-ring {display: none;}
html[data-page="index"] .hero {min-height: 0px; overflow: hidden; padding-bottom: 0px; background: rgb(6, 29, 47); height: auto !important; margin-top: 74px !important; zoom: 1 !important;}
html[data-page="index"] .hero-slide {position: relative; inset: auto; display: none; flex-direction: column; width: 100%; height: auto; background-color: rgb(6, 29, 47); background-image: none !important; transform: none !important;}
html[data-page="index"] .hero-slide.is-active {display: flex;}
html[data-page="index"] .hero-grid {display: none;}
html[data-page="index"] .hero .hero-container {position: relative; display: block; width: calc(100% - 40px); max-width: 760px; height: auto; margin: 0px auto; padding: 30px 0px 20px !important;}
html[data-page="index"] .hero .hero-copy {text-align: left; max-width: 100% !important; width: 100% !important; height: auto !important; min-height: 0px !important; display: block !important; padding: 0px !important; margin: 0px !important;}
html[data-page="index"] .hero .hero-message {width: 100%; min-width: 0px; margin: 0px; align-self: auto;}
html[data-page="index"] .hero .hero-message h1 {letter-spacing: -0.035em; margin: 0px 0px 18px; font-size: 36px !important; font-weight: 400 !important; line-height: 1.13 !important; max-width: 100% !important;}
html[data-page="index"] .hero .hero-message h1 em {max-width: 100%; font-size: inherit !important; font-weight: inherit !important; white-space: normal !important;}
html[data-page="index"] .hero .hero-resource-list {margin: 0px; padding: 0px; display: grid; gap: 7px; list-style: none;}
html[data-page="index"] .hero .hero-resource-list li {font-size: 15px; line-height: 1.45; letter-spacing: 0px; padding-left: 17px; white-space: normal;}
html[data-page="index"] .hero .hero-resource-list li::before {width: 7px; height: 7px; top: 0.48em;}
html[data-page="index"] .hero .hero-action-group {width: 100%; display: block; margin: 20px 0px 0px !important;}
html[data-page="index"] .hero .hero-buttons {display: flex; gap: 10px; flex-wrap: wrap; margin: 0px;}
html[data-page="index"] .hero .hero-buttons a {min-height: 52px; padding: 14px 22px; font-size: 14px; line-height: 1.4; display: flex; align-items: center; justify-content: center; gap: 15px;}
html[data-page="index"] .hero .hero-journey-note {font-size: 16px; line-height: 1.5; margin: 15px 0px 0px; max-width: 100%; width: auto; white-space: normal;}
html[data-page="index"] .hero .ri-home-art {display: block; position: relative; width: calc(100% - 40px); max-width: 760px; height: auto; aspect-ratio: 12 / 7; margin: 0px auto 65px; border-radius: 22px; overflow: hidden;}
html[data-page="index"] .hero .ri-home-art img {display: block; width: 100%; height: 100%; object-fit: cover; object-position: right center;}
html[data-page="index"] .hero .slider-arrow {display: grid; place-items: center; top: auto; bottom: 14px; transform: none; width: 38px; height: 38px;}
html[data-page="index"] .hero .slider-arrow.prev {left: calc(50% - 118px);}
html[data-page="index"] .hero .slider-arrow.prev svg {transform: rotate(180deg);}
html[data-page="index"] .hero .slider-arrow.next {right: calc(50% - 118px);}
html[data-page="index"] .hero .slider-controls {position: absolute; inset: auto auto 17px 50%; transform: translateX(-50%); width: auto;}
html[data-page] .floating-contact {bottom: max(16px,env(safe-area-inset-bottom)); right: 16px; z-index: 80; width: 54px; height: 54px; padding: 0px; display: grid; place-items: center; border-radius: 18px;}
html[data-page] .floating-contact > span {display: none;}
html[data-page] .r1e-pillar-grid {grid-template-columns: repeat(2, minmax(0px, 1fr));}
}
@media (max-width: 900px) {
html[data-page] .ri-common-footer .footer-links {grid-template-columns: repeat(2, minmax(0px, 1fr)) !important; gap: 30px !important;}
html[data-page] .ri-common-brands .institution-logos {grid-template-columns: repeat(3, minmax(0px, 1fr)) !important;}
html[data-page] .ri-common-brands .developed-logos {max-width: 580px; grid-template-columns: repeat(2, minmax(0px, 1fr)) !important;}
html[data-page] .ri-legal-layout {grid-template-columns: 1fr; gap: 28px;}
html[data-page] .ri-legal-index {position: static; grid-template-columns: 1fr 1fr;}
}
@media (max-width: 600px) {
html[data-page] .r1e-pillar-grid {grid-template-columns: 1fr;}
html[data-page] .site-header .nav-shell {width: calc(100% - 32px); gap: 16px;}
html[data-page] .site-header .brand img {width: 174px;}
html[data-page] .site-header .main-nav {right: 12px; top: 84px; width: calc(100% - 24px); max-height: calc(-98px + 100dvh); padding: 14px;}
html[data-page] .site-header .main-nav > a,
html[data-page] .site-header .courses-trigger {font-size: 15px;}
html[data-page] .section-shell {width: calc(100% - 32px);}
html[data-page] .ri-common-footer .section-shell,
html[data-page] .ri-common-brands .section-shell {width: calc(100% - 32px);}
html[data-page] .ri-common-footer .footer-brand {display: block;}
html[data-page] .ri-common-footer .socials {margin-top: 22px;}
html[data-page] .ri-common-footer .footer-main {gap: 32px !important;}
html[data-page] .ri-common-footer .footer-links {gap: 30px 20px !important;}
html[data-page] .ri-common-footer .footer-links > div {gap: 3px;}
html[data-page] .ri-common-footer .footer-links a {padding: 7px 0px; min-height: 38px; font-size: 14px !important;}
html[data-page] .ri-common-footer .footer-contact {flex-direction: column; align-items: flex-start; gap: 12px;}
html[data-page] .ri-common-footer .footer-bottom > div {flex-direction: column; align-items: flex-start;}
html[data-page] .ri-common-brands {padding: 38px 0px !important;}
html[data-page] .ri-common-brands .brand-strip-inner {gap: 27px;}
html[data-page] .ri-common-brands .brand-logos {gap: 12px !important;}
html[data-page] .ri-common-brands .institution-logos {grid-template-columns: repeat(2, minmax(0px, 1fr)) !important;}
html[data-page] .ri-common-brands .institution-logos > a:last-child {grid-column: 1 / -1; width: calc(50% - 6px); justify-self: center;}
html[data-page] .ri-common-brands .brand-logo-card {height: 88px !important; padding: 15px !important;}
html[data-page] .ri-common-brands .brand-logo-card img {max-height: 58px !important;}
html[data-page][data-page] [data-ri-hero] {padding: 26px 0px 34px !important;}
html[data-page][data-page] [data-ri-hero-grid] {width: calc(100% - 32px) !important; gap: 28px !important;}
html[data-page][data-page] [data-ri-hero-copy] > h1 {font-size: 31px !important; line-height: 1.14 !important; margin: 13px 0px 16px !important;}
html[data-page][data-page] [data-ri-hero-copy] > p {margin: 0px 0px 18px; font-size: 15px !important; line-height: 1.65 !important;}
html[data-page][data-page] [data-ri-hero-copy] > :is(.r1e-eyebrow, .r3x-eyebrow, .cbx-eyebrow, .enx-eyebrow, .cex-kicker, .eyebrow, .ri-hero-kicker) {font-size: 10px; letter-spacing: 0.09em; margin: 0px; min-height: 0px; line-height: 1.5;}
html[data-page][data-page] [data-ri-hero-actions] {display: grid; grid-template-columns: 1fr; width: 100%; gap: 9px; margin: 0px 0px 16px;}
html[data-page][data-page] [data-ri-hero-actions] > a {width: 100%; min-width: 0px; min-height: 50px; padding: 12px 15px; font-size: 13px; line-height: 1.5;}
html[data-page][data-page] [data-ri-hero-actions] > a:nth-child(2) {min-height: 44px;}
html[data-page][data-page] [data-ri-hero-prices] {grid-template-columns: 1fr 1fr; gap: 9px; margin: 0px 0px 18px;}
html[data-page][data-page] [data-ri-hero-prices] > div {min-height: 69px; padding: 12px;}
html[data-page][data-page] [data-ri-hero-prices] > b {grid-column: 1 / -1; min-height: 38px; padding: 10px; display: flex; flex-direction: row; gap: 7px; font-size: 12px;}
html[data-page][data-page] [data-ri-hero-prices] strong {font-size: 16px; line-height: 1.35;}
html[data-page][data-page] [data-ri-hero-prices] span {font-size: 10px;}
html[data-page][data-page] .cex-hero-visual {height: 310px !important;}
html[data-page][data-page] .r1e-platform-card,
html[data-page][data-page] .cex-platform-card {width: 94% !important;}
html[data-page][data-page] .r1e-students {width: 90% !important; max-height: 280px !important; right: -8px !important;}
html[data-page][data-page] .cex-hero-students {width: 105% !important; max-height: 280px !important; right: -10px !important;}
html[data-page="index"] .hero .hero-container {width: calc(100% - 32px); padding: 24px 0px 18px !important;}
html[data-page="index"] .hero .hero-message h1 {margin-bottom: 18px; font-size: 31px !important; line-height: 1.12 !important;}
html[data-page="index"] .hero .hero-message h1 br {display: none;}
html[data-page="index"] .hero .hero-resource-list {gap: 7px;}
html[data-page="index"] .hero .hero-resource-list li {font-size: 13px; line-height: 1.5;}
html[data-page="index"] .hero .hero-buttons a {width: 100%; font-size: 13px; min-height: 50px; padding: 12px 14px;}
html[data-page="index"] .hero .hero-journey-note {font-size: 14px; line-height: 1.5; margin-top: 14px;}
html[data-page="index"] .hero .ri-home-art {height: auto; width: 100%; margin-bottom: 62px; border-radius: 0px;}
html[data-page="index"] .hero .ri-home-art img {object-position: right center;}
html[data-page] .r1e-teacher-dots {flex-wrap: wrap; gap: 9px;}
html[data-page] .r1e-teacher-dots button {min-width: 11px; min-height: 11px;}
html[data-page] .ri-legal-hero .section-shell {width: calc(100% - 32px);}
html[data-page] .ri-legal-hero h1 {font-size: 31px;}
html[data-page] .ri-legal-index {grid-template-columns: 1fr; gap: 11px;}
}
@media (max-width: 359px) {
html[data-page] .site-header .brand img {width: 148px;}
html[data-page] .site-header .nav-actions {gap: 7px;}
html[data-page][data-page] [data-ri-hero-copy] > h1,
html[data-page="index"] .hero .hero-message h1 {font-size: 28px !important;}
html[data-page] .ri-common-footer .footer-links {gap: 25px 15px !important;}
}
@keyframes ri-menu-item { 
  0% { opacity: 0; transform: translateY(7px); }
  100% { opacity: 1; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
html[data-page] .site-header *,
html[data-page] .hero-slide,
html[data-page] [data-ri-hero-visual],
html[data-page] .ri-common-brands * {animation: auto ease 0s 1 normal none running none !important; transition: none !important; scroll-behavior: auto !important;}
}
