.rl-page { --rl-navy:#071c3b; --rl-teal:#00aa98; --rl-muted:#63738e; overflow:hidden; color:var(--rl-navy); background:#fff; font-family:Inter,Arial,sans-serif; }
.rl-page *, .rl-page *::before, .rl-page *::after { box-sizing:border-box; }
.rl-page a { color:inherit; }
.rl-header { height:64px; position:relative; z-index:20; border-bottom:1px solid rgba(13,45,74,.06); background:rgba(255,255,255,.94); }
.rl-header__inner { width:min(1390px,calc(100% - 64px)); height:100%; margin:auto; display:grid; grid-template-columns:230px minmax(0,1fr) auto; align-items:center; gap:36px; }
.rl-header--no-actions .rl-header__inner { grid-template-columns:230px minmax(0,1fr) 230px; }
.rl-brand { width:144px; display:block; }
.rl-brand img { width:100%; height:auto; display:block; }
.rl-nav { display:flex; justify-content:center; align-items:center; gap:38px; }
.rl-nav a { display:inline-flex; align-items:center; gap:5px; color:#071d69; font-size:14px; text-decoration:none; }
.rl-nav a:hover { color:#008d81; }
.rl-nav .icon { width:13px; height:13px; }
.rl-header__actions { display:flex; align-items:center; gap:28px; }
.rl-header__actions .rl-button { min-height:40px; padding-inline:20px; gap:14px; font-size:14px; }
.rl-header__language { display:inline-flex; align-items:center; gap:6px; min-height:24px; padding-left:16px; border-left:1px solid #dce7ea; color:#536780; font-size:13px; font-weight:600; line-height:1; white-space:nowrap; }
.rl-header__language .icon { width:16px; height:16px; flex:none; }
.rl-header__language abbr { border:0; text-decoration:none; }
.rl-login { color:#071d69; font-size:14px; text-decoration:none; white-space:nowrap; }
.rl-button { min-height:52px; padding:0 26px; display:inline-flex; align-items:center; justify-content:center; gap:19px; border:1px solid transparent; border-radius:8px; font-size:15px; font-weight:700; text-decoration:none; white-space:nowrap; transition:transform .18s ease,box-shadow .18s ease,background .18s ease; }
.rl-button:hover { transform:translateY(-2px); }
.rl-button--dark { color:#fff!important; background:linear-gradient(135deg,#092849,#03172e); box-shadow:0 10px 24px rgba(3,23,46,.16); }
.rl-button--outline { border-color:#cbd7e4; color:#102a55!important; background:#fff; }
.rl-button--outline .icon { width:25px; height:25px; }
.rl-button--light { color:#06253b!important; background:#fff; }
.rl-page :is(a,button):focus-visible { outline:3px solid rgba(0,170,152,.35); outline-offset:4px; }

.rl-hero { min-height:clamp(620px,43vw,740px); position:relative; isolation:isolate; overflow:hidden; color:#fff; background:#061e37; }
.rl-hero__video { position:absolute; inset:0; width:100%; height:100%; display:block; object-fit:cover; object-position:center; pointer-events:none; }
/* Navy stays dense behind the copy, then opens up over the interview scene. */
.rl-hero__scrim { position:absolute; inset:0; z-index:1; pointer-events:none; background:linear-gradient(0deg,rgba(3,23,44,.76),transparent 32%),linear-gradient(90deg,rgba(4,28,52,.88) 0%,rgba(5,29,53,.77) 25%,rgba(5,29,53,.4) 45%,rgba(5,29,53,.08) 72%,rgba(5,29,53,.12) 100%); }
.rl-hero__inner { width:min(1434px,calc(100% - 128px)); min-width:0; min-height:inherit; margin:auto; padding:78px 0 150px; position:relative; z-index:2; display:flex; align-items:center; pointer-events:none; }
.rl-hero__copy { width:100%; max-width:760px; min-width:0; pointer-events:auto; }
.rl-hero h1 { margin:0; color:#fff; font-size:clamp(48px,5vw,72px); line-height:1.05; letter-spacing:-.045em; font-weight:750; }
.rl-hero h1 span { color:#00e0c3; white-space:nowrap; }
.rl-hero__lead { max-width:575px; margin:34px 0; color:#fff; font-size:19px; font-weight:500; line-height:1.6; }
.rl-hero__actions { display:flex; flex-wrap:wrap; gap:24px; }
.rl-hero__actions .rl-button { border-color:rgba(255,255,255,.45); }
.rl-hero__actions .rl-button--outline { border-color:#dce4ed; box-shadow:0 4px 16px rgba(3,23,44,.12); }
.rl-proof { width:min(1390px,calc(100% - 64px)); margin:48px auto 0; padding:0 0 38px; display:grid; grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr); border-bottom:1px solid #d5dfe9; }
.rl-proof > section { min-width:0; display:flex; flex-direction:column; }
.rl-proof h2 { margin:0 0 18px; color:var(--rl-navy); font-size:clamp(22px,1.85vw,28px); line-height:1.25; letter-spacing:-.035em; font-weight:800; }
.rl-evidence { padding-right:40px; }
.rl-proof .rl-proof__link { display:inline-flex; align-self:flex-start; align-items:center; min-height:28px; margin-top:20px; gap:7px; color:#008e80; font-size:15px; font-weight:750; text-decoration:none; }
.rl-proof__link:hover { text-decoration:underline; text-underline-offset:4px; }
.rl-proof__link > span[aria-hidden] { font-size:21px; line-height:1; }
.rl-proof a:focus-visible { outline:2px solid #008e80; outline-offset:4px; border-radius:2px; }
.rl-outcomes { width:100%; margin:0; padding:0; display:grid; flex:1; }
.rl-outcomes > div { min-width:0; min-height:92px; padding:18px 0; display:grid; grid-template-columns:minmax(148px,.75fr) minmax(0,1.25fr); align-items:center; gap:22px; }
.rl-outcomes > div + div { border-top:1px solid #d5dfe9; }
.rl-outcomes dt { color:#071b3a; font-size:clamp(42px,3.4vw,52px); line-height:1.1; font-weight:850; letter-spacing:-.045em; white-space:nowrap; }
.rl-outcomes dt sup { margin-left:4px; font-size:19px; line-height:0; vertical-align:super; }
.rl-outcomes dt sup a { color:#008b80; text-decoration:none; }
.rl-outcomes dt sup a:is(:hover,:focus-visible) { color:#071b3a; text-decoration:underline; }
.rl-outcomes dd { margin:0; color:#455f80; font-size:17px; line-height:1.45; }
.rl-outcomes dd > span { display:block; color:var(--rl-navy); }
.rl-outcomes dd small { display:block; margin-top:3px; font-size:14px; line-height:1.45; }
.rl-outcomes-source { max-width:600px; margin:14px 0 0; color:#536b91; font-size:11px; line-height:1.5; }
.rl-outcomes-source a { text-decoration:underline; text-underline-offset:2px; }

.rl-assurances { width:min(1390px,calc(100% - 64px)); min-height:148px; margin:auto; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-items:stretch; }
.rl-assurances__title { position:absolute; overflow:hidden; width:1px; height:1px; margin:-1px; padding:0; border:0; clip:rect(0,0,0,0); white-space:nowrap; }
.rl-assurances article { min-width:0; padding:28px 24px; display:grid; grid-template-columns:48px minmax(0,1fr); align-items:center; gap:15px; }
.rl-assurances article + article { border-left:1px solid #e3ecef; }
.rl-assurances__icon { width:48px; height:48px; display:grid; place-items:center; border:0; border-radius:0; color:#000; background:#fff; box-shadow:none; }
.rl-assurances__icon .icon { width:25px; height:25px; stroke-width:1.8; }
.rl-assurances h3 { margin:0; color:#0a2448; font-size:15px; font-weight:800; line-height:1.28; letter-spacing:-.01em; }
.rl-assurances p { margin:6px 0 0; color:#63738e; font-size:12.5px; line-height:1.45; }
.rl-standards { padding-left:46px; border-left:1px solid #d5dfe9; }
.rl-standards__list { margin:0; padding:0; display:grid; flex:1; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:28px; list-style:none; }
.rl-standards__list > li { min-width:0; min-height:92px; padding:18px 0; display:flex; align-items:center; gap:19px; line-height:1.4; }
.rl-standards__list > li:nth-child(-n+4) { border-bottom:1px solid #d5dfe9; }
.rl-standards__list > li > div { min-width:0; }
.rl-standards__list strong { display:block; color:var(--rl-navy); font-size:18px; line-height:1.35; letter-spacing:-.025em; font-weight:800; }
.rl-standards__list li > div > span { display:block; margin-top:3px; color:#455f80; font-size:15px; }
.rl-standards__icon { display:grid; place-items:center; flex:0 0 34px; width:34px; height:38px; color:#111; }
.rl-standards__icon .icon { width:32px; height:32px; stroke-width:1.6; }
.rl-standards__list abbr { border:0; text-decoration:none; }
.rl-why { padding:48px max(32px,calc((100% - 1390px)/2)) 100px; background:linear-gradient(180deg,#fff,#f8fcfb); }
.rl-why__heading { display:grid; grid-template-columns:1.1fr .9fr; align-items:end; gap:90px; }
.rl-why h2 { margin:0; color:#071b3a; font-size:clamp(36px,3.8vw,54px); line-height:1.05; letter-spacing:-.055em; }
.rl-why__heading > p { max-width:560px; margin:0 0 8px; color:#61718d; font-size:18px; line-height:1.55; }
.rl-value-grid { margin-top:58px; display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.rl-value-grid article { min-width:0; overflow:hidden; border:1px solid #dce7ea; border-radius:18px; background:#fff; box-shadow:0 16px 42px rgba(17,54,80,.08); transition:transform .25s ease,box-shadow .25s ease; }
.rl-value-grid article:hover { transform:translateY(-5px); box-shadow:0 22px 55px rgba(17,54,80,.13); }
.rl-value-grid figure { aspect-ratio:3/2; margin:0; position:relative; overflow:hidden; background:#eaf7f4; }
.rl-value-grid figure::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 52%,rgba(3,25,48,.22)); pointer-events:none; }
.rl-value-grid figure img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .5s ease; }
.rl-value-grid article:hover figure img { transform:scale(1.035); }
.rl-value-grid article > div { padding:25px 27px 29px; }
.rl-value-grid h3 { margin:0 0 8px; font-size:21px; }
.rl-value-grid p { margin:0; color:#65748c; line-height:1.6; }
.rl-features { padding:32px 0 84px; background:radial-gradient(ellipse at 20% 55%,rgba(198,245,235,.25),transparent 62%),radial-gradient(ellipse at 90% 20%,rgba(214,242,249,.28),transparent 58%),#f8fcfb; }
.rl-features__heading { width:min(1390px,calc(100% - 64px)); margin:0 auto; text-align:center; }
.rl-features h2 { margin:0; color:var(--rl-navy); font-size:clamp(36px,4.1vw,58px); line-height:1.12; letter-spacing:-.045em; }
.rl-features h2 span { color:#00af9b; }
.rl-features__heading > p { max-width:1050px; margin:24px auto 0; color:#536780; font-size:clamp(17px,1.5vw,21px); line-height:1.55; }
.rl-features [hidden] { display:none!important; }
.rl-features__viewport { --rl-feature-fade:clamp(24px,5vw,100px); padding:20px 0 28px; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:none; -webkit-mask-image:linear-gradient(to right,transparent,#000 var(--rl-feature-fade),#000 calc(100% - var(--rl-feature-fade)),transparent); mask-image:linear-gradient(to right,transparent,#000 var(--rl-feature-fade),#000 calc(100% - var(--rl-feature-fade)),transparent); }
.rl-features__viewport::-webkit-scrollbar { display:none; }
.rl-features__viewport:focus-visible { outline:2px solid #008f83; outline-offset:-4px; }
.rl-features__track { display:flex; width:max-content; }
.rl-features__group { display:flex; align-items:stretch; gap:18px; width:max-content; margin:0; padding:0 18px 0 0; list-style:none; }
.rl-features__card { flex:0 0 clamp(260px,21vw,300px); width:clamp(260px,21vw,300px); min-height:316px; padding:26px 24px 28px; border:1px solid #d8e5eb; border-radius:18px; color:var(--rl-navy); background:rgba(255,255,255,.94); box-shadow:0 8px 24px rgba(17,54,80,.035); }
.rl-features__icon { display:flex; justify-content:center; margin-bottom:24px; color:#092849; }
.rl-features__icon .icon { width:54px; height:54px; stroke-width:1.45; }
.rl-features h3 { min-height:2.35em; margin:0 0 14px; font-size:24px; line-height:1.18; letter-spacing:-.025em; font-weight:750; }
.rl-features__card p { margin:0; color:#536780; font-size:16px; line-height:1.55; }
.rl-features__actions { display:flex; justify-content:center; padding:12px 20px 0; }
.rl-features__actions .rl-button { max-width:100%; white-space:normal; text-align:center; }
.rl-faq { padding:12px max(32px,calc((100% - 1390px)/2)) 100px; background:#f8fcfb; }
.rl-faq__inner { max-width:1040px; margin:auto; }
.rl-faq h2 { margin:0 0 36px; color:var(--rl-navy); font-size:clamp(32px,4vw,46px); line-height:1.15; letter-spacing:-.04em; text-align:center; }
.rl-faq__items { display:grid; gap:12px; }
.rl-faq details { min-width:0; border:1px solid #dce7ea; border-radius:14px; background:#fff; }
.rl-faq summary { min-height:76px; padding:20px 24px; display:flex; align-items:center; justify-content:space-between; gap:24px; border-radius:13px; color:var(--rl-navy); font-size:17px; line-height:1.45; font-weight:650; list-style:none; cursor:pointer; transition:background .18s ease,color .18s ease; }
.rl-faq summary::-webkit-details-marker { display:none; }
.rl-faq summary::marker { content:""; }
.rl-faq summary:hover { color:#007f75; background:#f1faf7; }
.rl-faq summary:focus-visible { outline:3px solid #008f83; outline-offset:3px; }
.rl-faq__toggle { position:relative; flex:0 0 30px; width:30px; height:30px; border-radius:50%; background:#e7f6f2; color:#00877b; }
.rl-faq__toggle::before,.rl-faq__toggle::after { content:""; position:absolute; top:14px; left:9px; width:12px; height:2px; border-radius:1px; background:currentColor; }
.rl-faq__toggle::after { transform:rotate(90deg); transition:transform .18s ease; }
.rl-faq details[open] summary { color:#007f75; background:#fff; border-radius:13px 13px 0 0; }
.rl-faq details[open] .rl-faq__toggle::after { transform:rotate(0); }
.rl-faq__answer { padding:0 24px 24px; background:#fff; border-radius:0 0 13px 13px; }
.rl-faq__answer p { max-width:890px; margin:0; color:#536780; font-size:16px; line-height:1.7; }
.rl-faq .rl-faq__answer a { color:#007f75; text-decoration:underline; text-underline-offset:3px; }
.rl-demo { padding:90px 32px; color:#fff; background:radial-gradient(circle at 80% 20%,rgba(18,188,173,.26),transparent 28%),#061b35; text-align:center; }
.rl-demo h2 { max-width:850px; margin:0 auto; font-size:clamp(36px,5vw,62px); line-height:1.03; letter-spacing:-.055em; }
.rl-demo > p { max-width:680px; margin:22px auto 30px; color:#bdcbd9; font-size:17px; line-height:1.55; }
.rl-footer { min-height:150px; padding:35px max(32px,calc((100% - 1390px)/2)); display:grid; grid-template-columns:190px 1fr auto; align-items:center; gap:35px; color:#b9c6d4; background:#031326; }
.rl-footer img { display:block; object-fit:contain; }
.rl-footer p { margin:0; font-size:13px; }
.rl-footer nav { display:flex; gap:25px; }
.rl-footer nav a { color:#c9d5e0; font-size:12px; text-decoration:none; }

@media (max-width:1180px) {
    .rl-evidence { padding-right:28px; }
    .rl-standards { padding-left:28px; }
    .rl-outcomes > div { grid-template-columns:142px minmax(0,1fr); gap:15px; }
    .rl-standards__list { column-gap:20px; }
    .rl-standards__list > li { gap:12px; }
    .rl-standards__list strong { font-size:16px; }
    .rl-standards__list li > div > span { font-size:14px; }
    .rl-header__inner,.rl-hero__inner { width:calc(100% - 40px); }
    .rl-header__inner { grid-template-columns:180px 1fr auto; gap:18px; }
    .rl-header--no-actions .rl-header__inner { grid-template-columns:180px minmax(0,1fr) 180px; }
    .rl-nav { gap:20px; }
    .rl-header__actions { gap:14px; }
    .rl-hero__inner { width:calc(100% - 80px); }
    .rl-why__heading { gap:45px; }
}
@media (max-width:850px) {
    .rl-header { height:auto; min-height:64px; }
    .rl-header__inner { min-height:64px; grid-template-columns:1fr auto; }
    .rl-header--no-actions .rl-header__inner { grid-template-columns:1fr; }
    .rl-nav { grid-column:1/-1; grid-row:2; padding:0 0 14px; justify-content:flex-start; overflow-x:auto; }
    .rl-header__actions .rl-login { display:none; }
    .rl-header__actions .rl-button { min-height:40px; padding-inline:14px; }
    .rl-hero h1 { font-size:clamp(44px,6vw,56px); }
    .rl-hero__scrim { background:linear-gradient(0deg,rgba(3,23,44,.8),transparent 38%),linear-gradient(90deg,rgba(4,28,52,.9),rgba(5,29,53,.65) 55%,rgba(5,29,53,.25)); }
    .rl-proof { grid-template-columns:1fr; margin-top:32px; gap:34px; }
    .rl-proof h2 { font-size:25px; }
    .rl-evidence { padding:0; }
    .rl-standards { padding:30px 0 0; border-left:0; border-top:1px solid #d5dfe9; }
    .rl-outcomes > div { grid-template-columns:minmax(148px,.75fr) minmax(0,1.25fr); gap:22px; }
    .rl-assurances { grid-template-columns:repeat(2,minmax(0,1fr)); padding:12px 0; }
    .rl-assurances article { padding:20px; }
    .rl-assurances article:nth-of-type(odd) { border-left:0; }
    .rl-assurances article:nth-of-type(n+3) { border-top:1px solid #e3ecef; }
    .rl-why__heading { grid-template-columns:1fr; gap:24px; }
    .rl-value-grid { grid-template-columns:1fr; }
    .rl-footer { grid-template-columns:1fr; text-align:center; }
    .rl-footer > a,.rl-footer nav { justify-self:center; }
    .rl-footer nav { flex-wrap:wrap; justify-content:center; }
}
@media (max-width:640px) {
    .rl-header__inner,.rl-assurances { width:calc(100% - 28px); }
    .rl-hero__inner { width:calc(100% - 40px); padding:58px 0 112px; }
    .rl-brand { width:128px; }
    .rl-header__actions .rl-button { font-size:12px; gap:8px; }
    .rl-header__language { padding-left:12px; font-size:12px; }
    .rl-nav { gap:18px; }
    .rl-nav a { font-size:12px; }
    .rl-hero { min-height:660px; }
    .rl-hero h1 { font-size:clamp(36px,9.3vw,46px); }
    .rl-hero__video { object-position:43% center; }
    .rl-hero__lead { font-size:17px; }
    .rl-hero__actions { display:grid; gap:12px; }
    .rl-hero__actions .rl-button { width:100%; }
    .rl-proof { width:calc(100% - 40px); padding-bottom:28px; }
    .rl-proof h2 { margin-bottom:12px; font-size:23px; }
    .rl-outcomes > div { grid-template-columns:124px minmax(0,1fr); gap:16px; }
    .rl-outcomes dt { font-size:40px; }
    .rl-outcomes dd { font-size:15px; }
    .rl-outcomes dd small { font-size:13px; }
    .rl-proof .rl-proof__link { font-size:14px; }
    .rl-assurances { margin-top:0; }
    .rl-why { padding:60px 20px 75px; }
    .rl-why h2 { font-size:36px; }
    .rl-features { padding:12px 0 60px; }
    .rl-features__heading { width:calc(100% - 40px); }
    .rl-features h2 { font-size:34px; }
    .rl-features__heading > p { margin-top:20px; font-size:17px; }
    .rl-features__card { flex-basis:260px; width:260px; }
    .rl-faq { padding:4px 20px 72px; }
    .rl-faq h2 { margin-bottom:28px; }
    .rl-faq summary { min-height:76px; padding:18px; gap:16px; font-size:16px; }
    .rl-faq__answer { padding:0 18px 22px; }
    .rl-faq__answer p { font-size:15px; }
    .rl-demo { padding:70px 20px; }
}
@media (max-width:360px) {
    .rl-header__inner { gap:8px; }
    .rl-brand { width:120px; }
    .rl-header__actions .rl-button { padding-inline:12px; }
}
@media (max-width:520px) {
    .rl-standards__list { grid-template-columns:1fr; }
    .rl-standards__list > li { min-height:78px; padding:16px 0; gap:20px; }
    .rl-standards__list > li + li { border-top:1px solid #d5dfe9; }
    .rl-standards__list > li:nth-child(-n+4) { border-bottom:0; }
    .rl-assurances { grid-template-columns:1fr; padding:10px 0; }
    .rl-assurances article { min-height:82px; padding:14px 8px; }
    .rl-assurances article:nth-of-type(n+2) { border-top:1px solid #e3ecef; }
    .rl-assurances article:nth-of-type(even) { border-left:0; }
    .rl-assurances__icon { width:44px; height:44px; }
    .rl-assurances__icon .icon { width:23px; height:23px; }
}
@media (prefers-reduced-motion:reduce) {
    .rl-page .rl-button,.rl-page .rl-value-grid article,.rl-page .rl-value-grid figure img { transition:none; transform:none; }
    .rl-faq summary,.rl-faq__toggle::after { transition:none; }
}
