
:root {
  
  --reo-sage:        #5ea485; 
  --reo-sage-light:  #7fd4af; 
  --reo-sage-deep:    #4d8a6e; 
  --reo-sage-on-dark: #6fb595; 

  --reo-sage-text:   #2e7359; 

  --reo-sage-cta-bg:    #357a5f; 
  --reo-sage-cta-hover: #2c6e52; 

  --reo-ink-muted:   #666666; 

  --reo-warning-text: #8a5a12; 

  --reo-ink:     #1f1f1f; 
  --reo-ui-900:  #1a1f25; 
  --reo-ui-950:  #0f1216; 

  --reo-on-dark:       #eaf2ee; 
  --reo-on-dark-muted: #9fb2a9; 

  --reo-danger-on-dark: #ff8888; 

  --reo-surface-0: #1f1f1f; 
  --reo-surface-1: #2a2a2a; 
  --reo-surface-2: #353535; 
  --reo-hairline:  #3a3a3a; 

  --reo-cta-primary:       #357a5f; 
  --reo-cta-primary-hover: #2c6e52; 
  --reo-cta-on-primary:    #ffffff; 

  --reo-surface-light-0: #d3e0f9; 
  --reo-surface-light-1: #ffffff; 
  --reo-surface-light-2: #eef2f0; 

  --reo-surface-warm:    #f7f5f1;
  
  --reo-surface-tint:    #e6efe9;
  --reo-on-light:        #1a1a1a; 
  --reo-on-light-muted:  #5a6b63; 
  
  --reo-muted-on-blue:   #4f5f57; 
  --reo-sage-on-blue:    #245c47; 
  --reo-hairline-light:  #e3e8e6; 

  --reo-focus-on-dark: #7fd4af; 
  
  --reo-focus-ring-backing: #1f1f1f;
  --reo-glow-sage: 0 0 0 1px rgba(94,164,133,.45), 0 10px 30px rgba(94,164,133,.12); 
  --reo-danger: #c53030; 
  --reo-disabled-light: #9aa8a1; 
  --reo-disabled-dark:  #5a6660; 
}

:root {
  
  --reo-font-sans: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; 

  --reo-fs-xs:  14px;  
  --reo-fs-sm:  16px;  
  --reo-fs-md:  16px;  
  --reo-fs-lg:  18px;  
  --reo-fs-xl:  22px;  
  --reo-fs-2xl: 26px;  
  --reo-fs-3xl: 32px;  

  --reo-lh-tight:  1.2;  
  --reo-lh-normal: 1.5;  
  --reo-lh-loose:  1.6;  

  --reo-fw-regular:  400; 
  --reo-fw-medium:   500; 
  --reo-fw-semibold: 600; 
  --reo-fw-bold:     700; 
  --reo-fw-extra:    800; 

  --reo-fs-display: clamp(36px, 5.2vw, 53px); 
  --reo-fs-h1:      clamp(32px, 4.2vw, 42px); 
  --reo-fs-h2:      34px;  
  --reo-fs-h3:      27px;  
  --reo-fs-h4:      21px;  
  --reo-fs-h5:      18px;  
  --reo-fs-body-lg: 18px;  
  --reo-fs-body:    17px;  
  --reo-fs-body-sm: 15px;  
  --reo-fs-caption: 16px;  
  --reo-fs-eyebrow: 14px;  
  --reo-lh-heading: 1.15;  
  --reo-lh-body:    1.55;  

  --reo-space-1: 4px;  
  --reo-space-2: 8px;  
  --reo-space-3: 12px; 
  --reo-space-4: 16px; 
  --reo-space-5: 24px; 
  --reo-space-6: 32px; 
  --reo-space-7: 48px; 
  --reo-space-8: 64px; 

  --reo-radius-sm:     8px;   
  --reo-radius-md:     12px;  
  --reo-radius-card:   16px;  
  --reo-radius-lg:     18px;  
  --reo-radius-pill:   100px; 
  --reo-radius-circle: 50%;   

  --reo-shadow-sm: 0 2px 8px rgba(31,31,31,0.05), 0 1px 3px rgba(31,31,31,0.03);    
  --reo-shadow-md: 0 8px 24px rgba(31,31,31,0.08), 0 2px 6px rgba(31,31,31,0.04);   
  --reo-shadow-lg: 0 16px 40px rgba(31,31,31,0.12), 0 4px 12px rgba(31,31,31,0.06); 
  --reo-shadow-xl: 0 24px 60px rgba(0,0,0,0.30), 0 8px 24px rgba(0,0,0,0.18);       

  --reo-header-h:        96px;  
  --reo-header-h-mobile: 68px;  

  --reo-container:        1140px; 
  --reo-container-narrow: 760px;  
  --reo-gutter:           24px;   

  --reo-dur-instant: 0.1s;  
  --reo-dur-fast:    0.15s; 
  --reo-dur-base:    0.2s;  
  --reo-dur-slow:    0.3s;  
  --reo-dur-panel:   0.26s; 
  --reo-dur-reveal:  0.4s;  
  --reo-ease-standard: cubic-bezier(0.4, 0, 0.2, 1); 
  --reo-ease-enter:    cubic-bezier(0.16, 1, 0.3, 1); 
  --reo-ease-exit:     cubic-bezier(0.4, 0, 1, 1);    
  --reo-ease-out:      ease-out;                      

  --reo-z-sticky-bar:    20;
  --reo-z-topbar:        200;
  --reo-z-dropdown:      1000;
  --reo-z-header:        1030;
  --reo-z-sticky-cta:    1200;
  --reo-z-overlay:       9990;
  --reo-z-modal:         9996;   
  --reo-z-cmdk:          9998;
  --reo-z-toast:         9999;
  --reo-z-skip:          100000;
}

:root {
  
  --reo-gold:       #e4b54c; 
  --reo-gold-deep:  #c88a22; 
  --reo-gold-ink:   #7d6512; 
  --reo-gold-on:    #1f1f1f; 

  --reo-topbar-from:      #193e31; 
  --reo-topbar-to:        #31483d; 
  --reo-topbar-ink:       #eaf2ee; 
  --reo-topbar-ink-muted: #a7bab0; 
  --reo-nav-active:       #e4b54c; 

  --reo-fs-base-lg: 18px; 
}

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

a:focus-visible, button:focus-visible, [role="button"]:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible,
[tabindex]:not([tabindex="-1"]):focus-visible {
  outline: 2px solid var(--reo-sage-cta-bg, #357a5f);
  outline-offset: 2px;
  border-radius: 4px;
}

@media (forced-colors: active) {
  .reo-btn, .reo-btn-primary, .reo-btn-dark, .reo-sec-cta,
  .reo-auth-submit, .reo-auth-btn-primary { border: 1px solid ButtonText !important; }
  a:focus-visible, button:focus-visible, [role="button"]:focus-visible,
  input:focus-visible, select:focus-visible, textarea:focus-visible,
  [tabindex]:not([tabindex="-1"]):focus-visible { outline-color: Highlight !important; }
}

.reo-sec-head {
  display: inline-flex; align-items: center; gap: 7px;
  margin-bottom: 16px;
  padding: 5px 12px;
  font-family: var(--reo-font-sans, 'Inter', system-ui, sans-serif);
  font-size: var(--reo-fs-eyebrow, 12px); font-weight: 800; line-height: 1;
  letter-spacing: 1.6px; text-transform: uppercase;
  border: 1px solid transparent; border-radius: var(--reo-radius-pill, 100px);
  white-space: nowrap; vertical-align: middle;
}
.reo-sec-head i, .reo-sec-head svg { font-size: 14px; line-height: 1; }
.reo-sec-head--dark  { background: rgba(94,164,133,.12); border-color: rgba(94,164,133,.40); color: var(--reo-sage-light, #7fd4af); }
.reo-sec-head--blue  { background: rgba(46,115,89,.10);  border-color: rgba(46,115,89,.34);  color: var(--reo-sage-on-blue, #245c47); }
.reo-sec-head--white { background: rgba(46,115,89,.07);  border-color: rgba(46,115,89,.24);  color: var(--reo-sage-text, #2e7359); }

.reo-sec-head--muted { padding: 0; border: 0; background: none; letter-spacing: 1.4px; color: var(--reo-muted-on-blue, #4f5f57); }

@media (max-width: 380px) {
  .reo-sec-head { white-space: normal; text-align: center; max-width: 100%; }
}

.reo-sec-cta {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 12px 22px;
  font-family: var(--reo-font-sans, 'Inter', system-ui, sans-serif);
  font-size: 15px; font-weight: 800; letter-spacing: .4px;
  color: var(--reo-cta-on-primary, #fff);
  background: var(--reo-cta-primary, #357a5f);
  border: 0; border-radius: var(--reo-radius-pill, 100px);
  text-decoration: none; cursor: pointer;
  transition: background var(--reo-dur-base, .2s) var(--reo-ease-standard, ease), transform var(--reo-dur-base, .2s);
}
.reo-sec-cta:hover { background: var(--reo-cta-primary-hover, #2c6e52); color: #fff; transform: translateY(-1px); }
.reo-sec-cta i { font-size: 15px; }
@media (prefers-reduced-motion: reduce) { .reo-sec-cta { transition: none; } .reo-sec-cta:hover { transform: none; } }

.reo-tcell-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 16px 18px; }
.reo-tcell { display: flex; align-items: center; justify-content: center; gap: 13px; min-width: 0; text-decoration: none; }
.reo-tcell__ic { width: 44px; height: 44px; flex-shrink: 0; border-radius: 12px; display: flex; align-items: center; justify-content: center; font-size: 17px; }
.reo-tcell__txt { min-width: 0; display: flex; flex-direction: column; gap: 4px; line-height: 1.2; }
.reo-tcell__txt b, .reo-tcell__txt strong { font-size: 15px; font-weight: 800; line-height: 1.15; letter-spacing: -.1px; }
.reo-tcell__txt small, .reo-tcell__txt span { font-size: 14px; line-height: 1.2; }

.reo-tcell--light .reo-tcell__ic { background: #e8f1ec; color: var(--reo-sage-text, #2e7359); }
.reo-tcell--light .reo-tcell__txt b, .reo-tcell--light .reo-tcell__txt strong { color: #1f1f1f; }
.reo-tcell--light .reo-tcell__txt small, .reo-tcell--light .reo-tcell__txt span { color: var(--reo-muted-on-blue, #4f5f57); }

.reo-tcell--dark .reo-tcell__ic { background: rgba(94,164,133,.14); color: var(--reo-sage-light, #7fd4af); }
.reo-tcell--dark .reo-tcell__txt b, .reo-tcell--dark .reo-tcell__txt strong { color: var(--reo-on-dark, #eaf2ee); }
.reo-tcell--dark .reo-tcell__txt small, .reo-tcell--dark .reo-tcell__txt span { color: var(--reo-on-dark-muted, #9fb2a9); }
a.reo-tcell:hover .reo-tcell__ic { filter: brightness(1.08); }
@media (max-width: 480px) { .reo-tcell__ic { width: 40px; height: 40px; font-size: 15px; } }

.reo-surface-0 :focus-visible,
.reo-acta :focus-visible {
  outline-color: var(--reo-focus-on-dark, #7fd4af);
}

html body.reo-guest-shell a:focus-visible,
html body.reo-guest-shell button:focus-visible,
html body.reo-guest-shell [role="button"]:focus-visible,
html body.reo-guest-shell input:focus-visible,
html body.reo-guest-shell select:focus-visible,
html body.reo-guest-shell textarea:focus-visible,
html body.reo-guest-shell [tabindex]:not([tabindex="-1"]):focus-visible,
html body.reo-auth-shell a:focus-visible,
html body.reo-auth-shell button:focus-visible,
html body.reo-auth-shell [role="button"]:focus-visible,
html body.reo-auth-shell input:focus-visible,
html body.reo-auth-shell select:focus-visible,
html body.reo-auth-shell textarea:focus-visible,
html body.reo-auth-shell [tabindex]:not([tabindex="-1"]):focus-visible {
  outline-color: var(--reo-focus-ring, var(--reo-sage-cta-bg, #357a5f));
}

body.reo-guest-shell .header,          
body.reo-guest-shell .reo-skip-link,   
body.reo-guest-shell .footer-area,     
body.reo-guest-shell .reopc-card,      
body.reo-guest-shell .case-card,       
body.reo-guest-shell .reo-acta,        
body.reo-guest-shell .reo-conv,        
body.reo-guest-shell .reo-gi,          
body.reo-guest-shell .reo-mgr,         
body.reo-guest-shell .reo-trust,       
body.reo-guest-shell .reo-bc,          
body.reo-guest-shell #reoHero,        
body.reo-guest-shell .reo-top--calc,   
body.reo-guest-shell .reo-catalog-head, 

body.reo-guest-shell .reo-refcta__card, 
body.reo-guest-shell .reo-tm,          
body.reo-guest-shell .reo-rail {       
  --reo-focus-ring: var(--reo-focus-on-dark, #7fd4af);
}

body.reo-guest-shell .reo-gi__tier {   
  --reo-focus-ring: var(--reo-sage-cta-bg, #357a5f);
}

body.reo-guest-shell .case-card__title {   
  --reo-focus-ring: var(--reo-sage-cta-bg, #357a5f);
}

body.reo-guest-shell .client {         
  --reo-focus-ring: var(--reo-ink, #1f1f1f);
}

@media (min-width: 992px) {
  body.reo-auth-shell .reo-auth-brand { 
    --reo-focus-ring: var(--reo-focus-on-dark, #7fd4af);
  }
}

.reo-num { font-variant-numeric: tabular-nums; font-feature-settings: "tnum" 1; }

@media (max-width: 480px) {
  .reo-quick-amt, .reo-btn-sm { min-height: 44px; }
  .reo-ref-share-btn, .reo-invite__btn { min-width: 44px; min-height: 44px; }
}

.reo-bar { position: relative; height: 8px; background: var(--reo-surface-2, #262626); border: 1px solid var(--reo-hairline, #2e2e2e); border-radius: var(--reo-radius-pill, 100px); overflow: hidden; }
.reo-bar__fill { display: block; height: 100%; width: var(--reo-bar-pct, 0%); max-width: 100%; background: var(--reo-cta-primary, #357a5f); border-radius: inherit; transition: width var(--reo-dur-slow, 0.3s) var(--reo-ease-out, ease-out); }
.reo-bar--anchor .reo-bar__fill { background: var(--reo-sage-light, #7fd4af); }

.reo-ring { position: relative; width: var(--reo-ring-size, 96px); height: var(--reo-ring-size, 96px); border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; text-align: center; background: conic-gradient(var(--reo-sage-light, #7fd4af) calc(var(--reo-ring-pct, 0) * 1%), var(--reo-surface-2, #262626) 0); transition: background var(--reo-dur-slow, 0.3s) var(--reo-ease-out, ease-out); }
.reo-ring::before { content: ""; position: absolute; inset: var(--reo-ring-thick, 10px); border-radius: 50%; background: var(--reo-surface-1, #1c1c1c); }
.reo-ring__inner { position: relative; z-index: 1; }
.reo-ring__value { font-weight: 800; font-size: 22px; line-height: 1; color: var(--reo-sage-light, #7fd4af); font-variant-numeric: tabular-nums; }
.reo-ring__label { display: block; margin-top: 3px; font-size: 11px; font-weight: 700; letter-spacing: .4px; text-transform: uppercase; color: var(--reo-on-dark-muted, #9fb2a9); }

.reo-stat { background: var(--reo-surface-1, #1c1c1c); border: 1px solid var(--reo-hairline, #2e2e2e); border-radius: var(--reo-radius-lg, 18px); padding: var(--reo-space-5, 24px); }
.reo-stat__value { font-weight: 800; font-size: clamp(22px, 3vw, 30px); line-height: 1; color: var(--reo-on-dark, #eaf2ee); font-variant-numeric: tabular-nums; }
.reo-stat__value--anchor { color: var(--reo-sage-light, #7fd4af); }
.reo-stat__label { margin-top: 8px; font-size: 15px; font-weight: 600; letter-spacing: .4px; text-transform: uppercase; color: var(--reo-on-dark-muted, #9fb2a9); }

:root {

  --reo-surface-default: #ffffff; 
  --reo-surface-raised:  #ffffff; 
  --reo-surface-subtle:  #f3f4f3; 

  --reo-surface-default-on-dark: #1f1f1f; 
  --reo-surface-raised-on-dark:  #2a2a2a; 
  --reo-surface-subtle-on-dark:  #0f1216; 

  --reo-neutral-surface: #eef1f3; 

  --reo-text-primary:   #1f1f1f; 
  --reo-text-secondary: #4a4a4a; 
  --reo-text-muted:     #666666; 

  --reo-text-primary-on-dark:   #eaf2ee; 
  --reo-text-secondary-on-dark: #c6d2cc; 
  --reo-text-muted-on-dark:     #9fb2a9; 

  --reo-border-soft:   #e5e5e5; 
  --reo-border-strong: #767676; 

  --reo-border-soft-on-dark:   #3a3a3a; 
  --reo-border-strong-on-dark: #8a8a8a; 

  --reo-brand-primary: #357a5f; 
  --reo-brand-hover:   #2c6e52; 
  --reo-brand-focus:   #357a5f; 
  --reo-brand-on:      #ffffff; 
  --reo-brand-focus-on-dark: #7fd4af; 

  --reo-positive: #2e7359; 
  
  --reo-success:  #2e7359; 
  --reo-info:     #2d6896; 
  --reo-warning:  #8a5a12; 
  --reo-disabled: #9aa8a1; 
  --reo-disabled-on-dark: #5a6660; 

  --reo-positive-on-dark: #7fd4af; 
  --reo-danger-on-light:  #c53030; 

  --reo-positive-surface: #e8f1ec; 
  --reo-success-surface:  #e8f1ec; 
  --reo-info-surface:     #e8f1f6; 
  --reo-warning-surface:  #faedd5; 
  --reo-danger-surface:   #fbe9e9; 

  --reo-premium:         #e4b54c; 
  --reo-premium-on:      #1f1f1f; 
  --reo-premium-ink:     #7d6512; 
  --reo-premium-surface: #fdf4e0; 

  --reo-elevation-flat:   none;                    
  --reo-elevation-card:   var(--reo-shadow-sm);    
  --reo-elevation-hover:  var(--reo-shadow-md);    
  --reo-elevation-raised: var(--reo-shadow-lg);    
  --reo-elevation-modal:  var(--reo-shadow-xl);    

  --reo-fs-amount-lg: 32px; 
  --reo-fs-amount:    22px; 
  --reo-fs-amount-sm: 19px; 
  --reo-fs-table:     17px; 
  --reo-fs-table-head:14px; 
  --reo-fs-status:    16px; 
  --reo-fs-label:     16px; 

  --reo-lh-flat:    1.1;  
  --reo-lh-snug:    1.3;  
  --reo-lh-relaxed: 1.4;  

  --reo-font-mono: 'SF Mono', 'JetBrains Mono', Menlo, Consolas, ui-monospace, monospace; 

  --reo-bp-xs:    360px; 
  --reo-bp-sm:    480px; 
  --reo-bp-phone: 575px; 
  --reo-bp-md:    768px; 
  --reo-bp-lg:    991px; 
  --reo-bp-xl:   1280px; 

  --reo-container-wide:  1280px; 
  --reo-gutter-mobile:   16px;   

  --reo-table-cell-y:    16px;  
  --reo-table-cell-x:    22px;  
  --reo-table-head-y:    14px;  
  --reo-table-head-x:    22px;  
  --reo-table-row-min:   44px;  
  --reo-table-min-width: 720px; 

  --reo-field-pad-y:  13px;   
  --reo-field-pad-x:  16px;   
  --reo-field-border: 1.5px;  
  --reo-field-min-h:  44px;   
  --reo-field-gap:    18px;   
  --reo-label-gap:     8px;   
  --reo-control-min:  44px;   

  --reo-focus-width:  2px;      
  --reo-focus-offset: 2px;      
  --reo-focus-radius: 4px;      
  --reo-focus-color:         #357a5f; 
  --reo-focus-color-on-dark: #7fd4af; 

  --reo-z-float:     800; 
  --reo-z-bottomnav: 850; 
  --reo-z-fab:       900; 
}

