/* ── Buttons ────────────────────────────────────────────────── */
.rj-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:var(--rj-pad-btn);border:1px solid transparent;border-radius:var(--rj-radius-btn);font-family:var(--rj-font-display);font-weight:var(--rj-weight-medium);font-size:var(--rj-button-size);line-height:var(--rj-button-lh);letter-spacing:var(--rj-button-ls);text-transform:uppercase;white-space:nowrap;cursor:pointer;background:transparent;color:var(--rj-text-primary);transition:background-color var(--rj-dur-base) var(--rj-ease-standard),color var(--rj-dur-base) var(--rj-ease-standard),border-color var(--rj-dur-base) var(--rj-ease-standard),box-shadow var(--rj-dur-base) var(--rj-ease-standard),transform var(--rj-dur-fast) var(--rj-ease-standard);position:relative}
.rj-btn:hover{text-decoration:none}
.rj-btn--sm{height:42px;padding:0 20px;font-size:.8125rem;letter-spacing:.08em}
.rj-btn--lg{height:60px;padding:0 36px;font-size:.9375rem}
.rj-btn--block{width:100%}
.rj-btn--primary{background:var(--rj-gold-500);color:var(--rj-text-on-gold);box-shadow:var(--rj-shadow-sm)}
.rj-btn--primary:hover{background:var(--rj-gold-400);box-shadow:var(--rj-shadow-gold)}
.rj-btn--primary:active{background:var(--rj-gold-600);transform:scale(var(--rj-press-scale));box-shadow:none}
.rj-btn--secondary{background:var(--rj-white-08);color:var(--rj-text-primary);border-color:var(--rj-border-default)}
.rj-btn--secondary:hover{background:var(--rj-white-12);border-color:var(--rj-border-accent)}
.rj-btn--secondary:active{background:var(--rj-white-16);transform:scale(var(--rj-press-scale))}
.rj-btn--outline{border-color:var(--rj-border-emphasis);color:var(--rj-text-primary)}
.rj-btn--outline:hover{border-color:var(--rj-gold-500);color:var(--rj-gold-300)}
.rj-btn--outline:active{background:var(--rj-gold-12);transform:scale(var(--rj-press-scale))}
.rj-btn--ghost{color:var(--rj-text-secondary)}
.rj-btn--ghost:hover{background:var(--rj-white-06);color:var(--rj-text-primary)}
.rj-btn--ghost:active{background:var(--rj-white-12)}
.rj-btn--link{height:auto;padding:0;border-radius:0;color:var(--rj-gold-400);letter-spacing:.06em}
.rj-btn--link::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform var(--rj-dur-base) var(--rj-ease-standard)}
.rj-btn--link:hover{color:var(--rj-gold-300)}
.rj-btn--link:hover::after{transform:scaleX(1)}
.rj-btn[disabled],.rj-btn[aria-disabled=true]{opacity:var(--rj-opacity-disabled);cursor:not-allowed;box-shadow:none;transform:none}
.rj-btn.is-loading{color:transparent;pointer-events:none}
.rj-btn.is-loading::before{content:"";position:absolute;width:16px;height:16px;border-radius:50%;border:1.5px solid currentColor;border-top-color:transparent;color:var(--rj-text-on-gold);animation:rj-spin var(--rj-dur-slower) linear infinite}
.rj-btn--secondary.is-loading::before,.rj-btn--outline.is-loading::before,.rj-btn--ghost.is-loading::before{color:var(--rj-text-primary)}
.rj-btn__icon{display:inline-flex;width:16px;height:16px;flex:none}
.rj-btn--primary .rj-btn__icon,.rj-btn--outline:hover .rj-btn__icon{transition:transform var(--rj-dur-base) var(--rj-ease-standard)}
.rj-btn:hover .rj-btn__icon--arrow{transform:translateX(3px)}

/* ── Icon button ────────────────────────────────────────────── */
.rj-iconbtn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;border-radius:var(--rj-radius-circle);border:1px solid var(--rj-border-subtle);background:var(--rj-white-04);color:var(--rj-text-secondary);cursor:pointer;transition:var(--rj-transition-base)}
.rj-iconbtn:hover{color:var(--rj-gold-300);border-color:var(--rj-border-accent);background:var(--rj-gold-12)}
.rj-iconbtn:active{transform:scale(.94)}
.rj-iconbtn--sm{width:36px;height:36px}
.rj-iconbtn--lg{width:56px;height:56px}
.rj-iconbtn--solid{background:var(--rj-gold-500);border-color:transparent;color:var(--rj-text-on-gold)}
.rj-iconbtn--solid:hover{background:var(--rj-gold-400);color:var(--rj-text-on-gold)}
.rj-iconbtn--bare{border-color:transparent;background:transparent}
.rj-iconbtn[disabled]{opacity:var(--rj-opacity-disabled);cursor:not-allowed}

/* ── WhatsApp floating action ───────────────────────────────── */
.rj-fab{position:fixed;right:24px;bottom:24px;z-index:var(--rj-z-fab);display:inline-flex;align-items:center;gap:12px;height:56px;padding:0 8px;border:1px solid var(--rj-white-12);border-radius:var(--rj-radius-pill);background:var(--rj-surface-glass);backdrop-filter:var(--rj-glass);-webkit-backdrop-filter:var(--rj-glass);box-shadow:var(--rj-shadow-lg);color:var(--rj-text-primary);cursor:pointer;transition:var(--rj-transition-base)}
.rj-fab:hover{border-color:var(--rj-border-accent);transform:translateY(var(--rj-lift));text-decoration:none;color:var(--rj-text-primary)}
.rj-fab__dot{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#1F8A5B;color:#fff;flex:none}
.rj-fab__label{font-family:var(--rj-font-display);font-size:.8125rem;letter-spacing:.1em;text-transform:uppercase;padding-right:14px}

/* ── Badges & tags ──────────────────────────────────────────── */
.rj-badge{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:var(--rj-radius-sm);border:1px solid var(--rj-border-accent);background:var(--rj-gold-12);color:var(--rj-gold-300);font-family:var(--rj-font-display);font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
.rj-badge--neutral{border-color:var(--rj-border-default);background:var(--rj-white-06);color:var(--rj-text-secondary)}
.rj-badge--success{border-color:rgba(47,143,107,.4);background:rgba(47,143,107,.14);color:var(--rj-success-300)}
.rj-badge--warning{border-color:rgba(192,138,46,.4);background:rgba(192,138,46,.14);color:var(--rj-warning-300)}
.rj-badge--error{border-color:rgba(184,74,63,.4);background:rgba(184,74,63,.14);color:var(--rj-error-300)}
.rj-badge--solid{background:var(--rj-gold-500);border-color:transparent;color:var(--rj-text-on-gold)}
.rj-tag{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 14px;border-radius:var(--rj-radius-pill);border:1px solid var(--rj-border-subtle);background:transparent;color:var(--rj-text-secondary);font-size:var(--rj-small-size);cursor:default;transition:var(--rj-transition-colour)}
.rj-tag--interactive{cursor:pointer}
.rj-tag--interactive:hover{border-color:var(--rj-border-accent);color:var(--rj-gold-300)}
.rj-tag--active{background:var(--rj-white-08);border-color:var(--rj-border-accent);color:var(--rj-text-primary)}

/* ── Form fields ────────────────────────────────────────────── */
.rj-field{display:flex;flex-direction:column;gap:8px}
.rj-field__label{font-weight:var(--rj-weight-semibold);font-size:var(--rj-label-size);letter-spacing:var(--rj-label-ls);color:var(--rj-text-secondary)}
.rj-field__label .rj-req{color:var(--rj-gold-400);margin-left:2px}
.rj-field__msg{display:flex;align-items:center;gap:6px;font-size:var(--rj-caption-size);color:var(--rj-text-muted)}
.rj-field__msg--error{color:var(--rj-error-300)}
.rj-field__msg--success{color:var(--rj-success-300)}
.rj-control{width:100%;min-height:52px;padding:var(--rj-pad-field);border:1px solid var(--rj-border-default);border-radius:var(--rj-radius-field);background:var(--rj-surface-inset);color:var(--rj-text-primary);font-size:var(--rj-body-size);transition:var(--rj-transition-base);appearance:none}
.rj-control:hover{border-color:var(--rj-border-emphasis)}
.rj-control:focus{outline:none;border-color:var(--rj-gold-500);box-shadow:0 0 0 3px var(--rj-gold-12);background:rgba(4,5,20,.45)}
.rj-control[disabled]{opacity:var(--rj-opacity-disabled);cursor:not-allowed}
.rj-control.is-error{border-color:var(--rj-error-500)}
.rj-control.is-error:focus{box-shadow:0 0 0 3px rgba(184,74,63,.18)}
.rj-control.is-success{border-color:var(--rj-success-500)}
.rj-textarea{min-height:140px;resize:vertical;line-height:1.6}
.rj-select-wrap{position:relative;display:block}
.rj-select-wrap .rj-control{padding-right:44px;cursor:pointer}
.rj-select-wrap__chev{position:absolute;right:16px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--rj-text-muted)}
.rj-phone{display:grid;grid-template-columns:auto 1fr;gap:8px}
.rj-phone__code{display:flex;align-items:center;gap:8px;padding:0 14px;min-height:52px;border:1px solid var(--rj-border-default);border-radius:var(--rj-radius-field);background:var(--rj-surface-inset);cursor:pointer;white-space:nowrap;transition:var(--rj-transition-base)}
.rj-phone__code:hover{border-color:var(--rj-border-emphasis)}
.rj-choice{display:flex;align-items:flex-start;gap:12px;cursor:pointer;color:var(--rj-text-secondary);transition:var(--rj-transition-colour)}
.rj-choice:hover{color:var(--rj-text-primary)}
.rj-choice__box{position:relative;flex:none;width:20px;height:20px;margin-top:2px;border:1px solid var(--rj-border-emphasis);border-radius:var(--rj-radius-xs);background:var(--rj-surface-inset);transition:var(--rj-transition-base)}
.rj-choice__box--radio{border-radius:50%}
.rj-choice input{position:absolute;opacity:0;width:0;height:0}
.rj-choice input:checked+.rj-choice__box{background:var(--rj-gold-500);border-color:var(--rj-gold-500)}
.rj-choice input:checked+.rj-choice__box::after{content:"";position:absolute;inset:0;background:var(--rj-text-on-gold);clip-path:polygon(16% 52%,38% 74%,84% 26%,92% 36%,39% 89%,8% 58%);margin:3px}
.rj-choice input:checked+.rj-choice__box--radio::after{clip-path:none;border-radius:50%;margin:5px}
.rj-choice input:focus-visible+.rj-choice__box{box-shadow:var(--rj-focus-ring)}
.rj-choice input[disabled]+.rj-choice__box{opacity:var(--rj-opacity-disabled)}

/* ── Cards ──────────────────────────────────────────────────── */
.rj-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--rj-border-subtle);border-radius:var(--rj-radius-card);background:var(--rj-surface-card),var(--rj-ink-850,#141851);background-color:var(--rj-ink-800);box-shadow:var(--rj-shadow-inset-top);overflow:hidden;transition:transform var(--rj-dur-base) var(--rj-ease-standard),border-color var(--rj-dur-base) var(--rj-ease-standard),box-shadow var(--rj-dur-base) var(--rj-ease-standard)}
.rj-card--flat{background:transparent;background-color:transparent;box-shadow:none}
.rj-card--interactive{cursor:pointer}
.rj-card--interactive:hover{transform:translateY(var(--rj-lift));border-color:var(--rj-border-accent);box-shadow:var(--rj-shadow-md)}
.rj-card--interactive:active{transform:translateY(0) scale(var(--rj-press-scale))}
.rj-card__body{display:flex;flex-direction:column;gap:12px;padding:var(--rj-pad-card)}
.rj-card__body--sm{padding:var(--rj-pad-card-sm)}
.rj-card__media{position:relative;aspect-ratio:4/3;background:var(--rj-ink-950);overflow:hidden}
.rj-card__media img{width:100%;height:100%;object-fit:cover;transition:transform var(--rj-dur-slower) var(--rj-ease-standard)}
.rj-card--interactive:hover .rj-card__media img{transform:scale(1.04)}
.rj-card__overlay{position:absolute;inset:0;background:var(--rj-grad-veil);pointer-events:none}
.rj-card__meta{display:flex;align-items:center;gap:10px;font-size:var(--rj-caption-size);color:var(--rj-text-muted);letter-spacing:.01em}
.rj-card__title{font-family:var(--rj-font-display);font-weight:var(--rj-weight-medium);font-size:var(--rj-h4-size);line-height:var(--rj-h4-lh);letter-spacing:var(--rj-h4-ls);color:var(--rj-text-primary)}
.rj-card__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px var(--rj-pad-card);border-top:1px solid var(--rj-border-subtle)}
.rj-specs{display:flex;gap:20px;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.rj-specs li{display:flex;align-items:center;gap:7px;font-size:var(--rj-small-size);color:var(--rj-text-secondary)}

/* ── Navigation ─────────────────────────────────────────────── */
.rj-nav{position:sticky;top:0;z-index:var(--rj-z-nav);height:var(--rj-nav-height);display:flex;align-items:center;border-bottom:1px solid transparent;transition:var(--rj-transition-base)}
.rj-nav.is-stuck{height:var(--rj-nav-height-compact);background:var(--rj-surface-glass);backdrop-filter:var(--rj-glass);-webkit-backdrop-filter:var(--rj-glass);border-bottom-color:var(--rj-border-subtle)}
.rj-nav__inner{display:flex;align-items:center;gap:40px;width:100%}
.rj-nav__links{display:flex;align-items:center;gap:36px;list-style:none;margin:0;padding:0}
.rj-navlink{display:inline-flex;align-items:center;gap:6px;position:relative;padding:6px 0;font-size:var(--rj-small-size);font-weight:var(--rj-weight-medium);color:var(--rj-text-secondary);cursor:pointer;background:none;border:0;transition:var(--rj-transition-colour)}
.rj-navlink::after{content:"";position:absolute;left:0;bottom:0;height:1px;width:100%;background:var(--rj-gold-500);transform:scaleX(0);transform-origin:left;transition:transform var(--rj-dur-base) var(--rj-ease-standard)}
.rj-navlink:hover,.rj-navlink.is-active{color:var(--rj-text-primary);text-decoration:none}
.rj-navlink:hover::after,.rj-navlink.is-active::after{transform:scaleX(1)}
.rj-mega{position:absolute;left:0;right:0;top:100%;border-top:1px solid var(--rj-border-subtle);border-bottom:1px solid var(--rj-border-subtle);background:var(--rj-surface-glass);backdrop-filter:var(--rj-glass);-webkit-backdrop-filter:var(--rj-glass);box-shadow:var(--rj-shadow-xl);animation:rj-fade var(--rj-dur-base) var(--rj-ease-entrance) both}
.rj-mega__col{display:flex;flex-direction:column;gap:4px}
.rj-mega__item{display:flex;flex-direction:column;gap:2px;padding:14px 16px;border-radius:var(--rj-radius-lg);cursor:pointer;transition:var(--rj-transition-base)}
.rj-mega__item:hover{background:var(--rj-white-06);text-decoration:none}
.rj-crumbs{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:var(--rj-caption-size);letter-spacing:.02em;color:var(--rj-text-muted)}
.rj-crumbs a{color:var(--rj-text-muted)}
.rj-crumbs a:hover{color:var(--rj-gold-300);text-decoration:none}
.rj-crumbs__sep{opacity:.5}

/* ── Accordion / FAQ ────────────────────────────────────────── */
.rj-acc__item{border-bottom:1px solid var(--rj-border-subtle)}
.rj-acc__btn{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;padding:26px 0;background:none;border:0;text-align:left;cursor:pointer;color:var(--rj-text-primary);font-family:var(--rj-font-display);font-size:var(--rj-h5-size);font-weight:var(--rj-weight-medium);letter-spacing:-.004em;transition:var(--rj-transition-colour)}
.rj-acc__btn:hover{color:var(--rj-gold-300)}
.rj-acc__sign{position:relative;flex:none;width:20px;height:20px;color:var(--rj-gold-400)}
.rj-acc__sign::before,.rj-acc__sign::after{content:"";position:absolute;inset:0;margin:auto;background:currentColor;transition:transform var(--rj-dur-base) var(--rj-ease-standard)}
.rj-acc__sign::before{width:100%;height:1px}
.rj-acc__sign::after{width:1px;height:100%}
.rj-acc__item.is-open .rj-acc__sign::after{transform:scaleY(0)}
.rj-acc__panel{overflow:hidden;color:var(--rj-text-secondary);max-width:var(--rj-measure)}

/* ── Table & timeline ───────────────────────────────────────── */
.rj-table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--rj-small-size)}
.rj-table th,.rj-table td{padding:20px 24px;text-align:left;border-bottom:1px solid var(--rj-border-subtle);vertical-align:middle}
.rj-table thead th{font-family:var(--rj-font-display);font-weight:var(--rj-weight-medium);font-size:var(--rj-overline-size);letter-spacing:.16em;text-transform:uppercase;color:var(--rj-text-muted);border-bottom-color:var(--rj-border-default)}
.rj-table tbody tr{transition:background-color var(--rj-dur-fast) var(--rj-ease-standard)}
.rj-table tbody tr:hover{background:var(--rj-white-04)}
.rj-table__col--featured{background:var(--rj-gold-12)}
.rj-timeline{position:relative;list-style:none;margin:0;padding:0 0 0 40px}
.rj-timeline::before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:1px;background:linear-gradient(180deg,var(--rj-gold-40),var(--rj-border-subtle))}
.rj-timeline__item{position:relative;padding-bottom:44px}
.rj-timeline__item:last-child{padding-bottom:0}
.rj-timeline__dot{position:absolute;left:-40px;top:5px;width:15px;height:15px;border-radius:50%;border:1px solid var(--rj-gold-500);background:var(--rj-ink-900)}
.rj-timeline__item.is-current .rj-timeline__dot{background:var(--rj-gold-500);box-shadow:0 0 0 4px var(--rj-gold-12)}

/* ── Metrics, logos, misc ───────────────────────────────────── */
.rj-metric{display:flex;flex-direction:column;gap:10px}
.rj-metric__value{font-family:var(--rj-font-display);font-weight:var(--rj-weight-light);font-size:clamp(2.5rem,4vw,3.5rem);line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.rj-logocloud{display:flex;align-items:center;flex-wrap:wrap;gap:56px}
.rj-logocloud__item{font-family:var(--rj-font-display);font-size:1.125rem;letter-spacing:.14em;text-transform:uppercase;color:var(--rj-text-muted);opacity:.72;transition:var(--rj-transition-base)}
.rj-logocloud__item:hover{opacity:1;color:var(--rj-text-secondary)}
.rj-trust{display:flex;align-items:center;gap:12px}
.rj-trust__icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;border-radius:var(--rj-radius-md);border:1px solid var(--rj-border-accent);background:var(--rj-gold-12);color:var(--rj-gold-300)}
.rj-eyebrow-row{display:flex;align-items:center;gap:14px}
.rj-eyebrow-row::after{content:"";height:1px;width:56px;background:var(--rj-grad-rule)}
.rj-avatar{border-radius:50%;object-fit:cover;flex:none;border:1px solid var(--rj-border-default)}
