/* Rapsite Clean — the approved visual direction. */
:root {
  --rs-accent: #e22638;
  --rs-bg: #f6f7f9; --rs-surface: #fff; --rs-text: #24262d;
  --rs-muted: #777c88; --rs-line: #eceef1; --rs-hover: #f3f4f6;
  --rs-active: #fff2f3; --rs-font-family: 'DM Sans', Arial, sans-serif;
}
:root[data-rs-theme="dark"] {
  --rs-bg: #101114; --rs-surface: #191a1e; --rs-text: #f1f2f5;
  --rs-muted: #9297a4; --rs-line: #2a2c32; --rs-hover: #22242a; --rs-active: #2c1e22;
}
:root[data-rs-sidebar="collapsed"] { --rs-sidebar-size: 74px; }
body[class*="elementor-kit-"] {
  --e-global-color-primary: var(--rs-text); --e-global-color-secondary: var(--rs-muted);
  --e-global-color-text: var(--rs-text); --e-global-color-accent: var(--rs-accent);
  --e-global-color-rsbg: var(--rs-bg); --e-global-color-rssurface: var(--rs-surface); --e-global-color-rsline: var(--rs-line);
}
body.rs-shell-active, .rs-scope { font-family: var(--rs-font-family); }
body.rs-shell-active { display: flex; flex-direction: column; min-height: calc(100vh - var(--rs-admin-offset)); }
body.rs-shell-active > .site-main { flex: 1; }
.rs-scope { font-size: 14px; line-height: 1.5; }
.rs-scope .rs-icon { stroke-width: 1.7; }
.rs-topbar { padding-left: var(--rs-sidebar-size); }
.rs-header-inner { max-width: calc(var(--rs-content-width) + 64px); margin-inline: auto; padding: 0 32px; }
@media(min-width:768px) {
  body.rs-header-full .rs-topbar { padding-left: 88px; }
  body.rs-header-full .rs-header-inner { max-width: none; margin-inline: 0; padding: 0 28px 0 0; }
}
.rs-header-center { gap: 42px; padding-right: 20px; }
.rs-toggle-cell { width: 76px; }
.rs-scope .rs-button { padding: 0; border: 0; width: 34px; height: 38px; border-radius: 7px; color: var(--rs-text); background: transparent; box-shadow: none; line-height: 1; }
.rs-scope .rs-button:hover, .rs-scope .rs-button:focus { background: var(--rs-hover); color: var(--rs-text); }
.rs-scope .rs-brand { color: var(--rs-text); gap: 11px; }
.rs-scope .rs-brand-symbol { width: 26px; height: 26px; color: var(--rs-accent); }
.rs-scope .rs-brand-symbol .rs-icon { width: 26px; height: 26px; stroke-width: 2.3; }
.rs-scope .rs-brand-word { font-size: 24px; font-weight: 700; letter-spacing: -1px; }
.rs-scope .rs-nav-rs_primary > .rs-menu { gap: 26px; }
.rs-scope .rs-nav-rs_primary > .rs-menu > li > a {
  min-height: 40px; padding: 8px 0; gap: 8px; border: 0; border-radius: 0;
  background: transparent; color: var(--rs-muted); font-size: 13px; font-weight: 500; box-shadow: none;
}
.rs-scope .rs-nav-rs_primary > .rs-menu > li > a[aria-current="page"] { color: var(--rs-text); border: 0; background: transparent; }
.rs-scope .rs-nav-rs_primary > .rs-menu > li > a[aria-current="page"] > .rs-icon { color: var(--rs-accent); }
.rs-scope .rs-nav-rs_primary > .rs-menu > li > a:hover { color: var(--rs-text); background: transparent; }
.rs-scope .rs-nav-rs_primary > .rs-menu > li > a .rs-icon { width: 17px; height: 17px; stroke-width: 1.8; }
.rs-scope .rs-nav-rs_primary > .rs-menu > .rs-has-children > a { padding-right: 26px; }
.rs-scope .rs-nav-rs_primary > .rs-menu > li > .rs-submenu-toggle { top: 4px; right: -7px; width: 26px; height: 32px; }
.rs-header-actions { gap: 12px; margin-right: 0; }
.rs-header-divider { width: 1px; height: 20px; background: var(--rs-line); margin: 0 4px; }
.rs-scope .rs-header-actions > .rs-theme-toggle { border: 0; border-radius: 7px; width: 34px; }
.rs-scope .rs-header-actions > .rs-button .rs-icon { width: 19px; height: 19px; }
.rs-scope .rs-login { padding: 8px 0; border: 0; background: transparent; color: var(--rs-text); font-size: 12px; font-weight: 500; border-radius: 7px; gap: 10px; }
.rs-scope .rs-login:hover { background: transparent; color: var(--rs-accent); }
.rs-scope .rs-login > .rs-icon { width: 19px; height: 19px; }
.rs-scope .rs-account-toggle { padding: 0; font-size: 12px; font-weight: 500; gap: 10px; }
.rs-scope .rs-account-name { font-size: 12px; font-weight: 500; }
.rs-scope .rs-avatar { width: 32px; height: 32px; background: var(--rs-hover); color: var(--rs-text); border: 0; font-size: 11px; font-weight: 500; }
.rs-scope .rs-account-caption { margin: 4px 10px 9px; }
.rs-scope .rs-account-dropdown { border-radius: 10px; top: calc(100% + 20px); }
.rs-scope .rs-account-dropdown a { color: var(--rs-text); font-size: 12px; }
.rs-scope .rs-sidebar-scroll { padding: 28px 18px 20px; }
.rs-scope .rs-sidebar-caption { margin: 0 12px 11px; height: auto; color: var(--rs-muted); font-size: 10px; font-weight: 500; letter-spacing: 1.6px; }
.rs-scope .rs-nav-rs_sidebar > .rs-menu { gap: 3px; }
.rs-scope .rs-nav-rs_sidebar a {
  min-height: 46px; padding: 10px 12px; gap: 14px; border: 0; border-radius: 7px;
  color: var(--rs-muted); background: transparent; box-shadow: none; font-size: 13px; font-weight: 400;
}
.rs-scope .rs-nav-rs_sidebar a > .rs-icon { width: 20px; height: 20px; padding: 0; border: 0; background: transparent; box-shadow: none; stroke-width: 1.7; }
.rs-scope .rs-nav-rs_sidebar a[aria-current="page"] { color: var(--rs-text); font-weight: 600; background: transparent; }
.rs-scope .rs-nav-rs_sidebar a[aria-current="page"] > .rs-icon { color: var(--rs-accent); stroke-width: 2; }
.rs-scope .rs-nav-rs_sidebar a[aria-current="page"]::after { content: ''; margin-left: auto; width: 4px; height: 4px; border-radius: 50%; background: var(--rs-accent); flex-shrink: 0; }
.rs-scope .rs-nav-rs_sidebar a:hover { background: var(--rs-hover); color: var(--rs-text); }
.rs-scope .rs-nav-rs_sidebar .rs-has-children > a { padding-right: 36px; }
.rs-scope .rs-nav-rs_sidebar .rs-submenu-toggle { top: 7px; right: 0; width: 28px; height: 32px; }
.rs-scope .rs-nav-rs_sidebar .rs-submenu a { min-height: 40px; font-size: 12px; }
.rs-scope .rs-nav-rs_personal > .rs-menu { display: flex; flex-direction: column; gap: 3px; }
.rs-sidebar-extra { margin-top: 26px; }
.rs-scope .rs-sidebar-bottom { padding: 15px 18px 18px; gap: 12px; min-height: 74px; justify-content: flex-start; }
.rs-scope .rs-sidebar-bottom .rs-side-settings { flex: 0 0 34px; color: var(--rs-muted); }
.rs-scope .rs-sidebar-bottom .rs-side-settings .rs-icon { width: 20px; height: 20px; }
.rs-scope .rs-sidebar-note { font-size: 10px; font-weight: 400; line-height: 1.6; letter-spacing: .4px; }
[data-rs-sidebar="collapsed"] .rs-scope .rs-sidebar-scroll { padding: 24px 15px 20px; }
[data-rs-sidebar="collapsed"] .rs-scope .rs-sidebar-caption { display: none; }
[data-rs-sidebar="collapsed"] .rs-scope .rs-nav-rs_sidebar a { padding: 12px 0; justify-content: center; }
[data-rs-sidebar="collapsed"] .rs-scope .rs-nav-rs_sidebar a::after { display: none; }
[data-rs-sidebar="collapsed"] .rs-scope .rs-nav-rs_sidebar a > .rs-icon { width: 20px; height: 20px; }
[data-rs-sidebar="collapsed"] .rs-scope .rs-sidebar-bottom { justify-content: center; }
.rs-tooltip { font-family: var(--rs-font-family); }
.rs-scope .rs-search-top h2 { font-family: var(--rs-font-family); font-size: 21px; color: var(--rs-text); }
body.rs-shell-active .rs-backdrop { background: rgb(7 10 17 / 54%); border: 0; border-radius: 0; box-shadow: none; }
body.rs-shell-active .site-main { margin-top: 34px; padding: 0; }
body.rs-shell-active .site-main > .page-header { padding: 0; margin: 0 0 25px; }
body.rs-shell-active .site-main > .page-header .entry-title { font-size: 25px; line-height: 1.3; font-weight: 600; letter-spacing: -.8px; margin: 0; }
body.rs-shell-active .site-main .page-content { padding: 0; }
body.rs-shell-active .site-main .page-content > article.post { padding: 26px 30px; background: var(--rs-surface); border: 1px solid var(--rs-line); border-radius: 12px; box-shadow: none; margin-bottom: 20px; }
body.rs-shell-active .site-main article.post .entry-title { font-size: 22px; line-height: 1.35; font-weight: 500; letter-spacing: -.3px; margin: 0 0 12px; }
body.rs-shell-active .site-main article.post .entry-title a { color: var(--rs-text); }
body.rs-shell-active .site-main article.post .entry-title a:hover { color: var(--rs-accent); }
body.rs-shell-active .site-main article.post p { max-width: 75ch; }
body.rs-shell-active .site-main article.post p:last-child { margin-bottom: 0; }
.rs-scope.rs-footer { font-size: 11px; color: var(--rs-muted); }
.rs-scope.rs-footer .rs-footer-note { font-size: 11px; }
.rs-content-placeholder { min-height: 220px; padding: 28px; border: 1px dashed var(--rs-line); border-radius: 12px; background: var(--rs-surface); color: var(--rs-muted); display: flex; align-items: center; justify-content: center; text-align: center; font-size: 14px; }
@media(min-width:901px) { .rs-header-center .rs-nav-rs_primary { display: block; } }
@media(max-width:1100px) { .rs-header-center { gap: 28px; } .rs-scope .rs-nav-rs_primary > .rs-menu { gap: 20px; } }
@media(max-width:900px) { .rs-header-center .rs-nav-rs_primary { display: none; } }
@media(max-width:767px) {
  .rs-topbar { padding-left: 62px; } .rs-header-inner { padding-left: 0; padding-right: 14px; } .rs-header-center { gap: 12px; padding-right: 6px; }
  .rs-scope .rs-brand-symbol { display: none; } .rs-scope .rs-brand-word { font-size: 22px; }
  .rs-header-actions { gap: 6px; } .rs-search-toggle, .rs-header-divider { display: none !important; }
  .rs-scope .rs-login { padding: 8px 2px; } .rs-scope .rs-sidebar-scroll { padding: 25px 18px 20px; }
  [data-rs-sidebar="collapsed"] .rs-scope .rs-sidebar-caption { display: block; }
  .rs-scope .rs-nav-rs_sidebar a { padding: 10px 12px !important; justify-content: flex-start !important; }
  .rs-scope .rs-nav-rs_sidebar a[aria-current="page"]::after { display: block; }
  body.rs-shell-active .site-main { margin-top: 28px; }
  body.rs-shell-active .site-main > .page-header .entry-title { font-size: 22px; }
  body.rs-shell-active .site-main .page-content > article.post { padding: 22px 20px; }
  body.rs-shell-active .site-main article.post .entry-title { font-size: 20px; }
}
