/* Rasha Network 2.0 — experience layer
   Loaded after brand.css so the legacy markup can evolve without breaking page content. */
:root{
  --bg:#f4f1e9;
  --bg-alt:#ebe6da;
  --panel:#fffdfa;
  --panel-border:#d8d0c1;
  --ink:#111713;
  --ink-soft:#58625c;
  --accent:#1f8a63;
  --accent-ink:#0e553d;
  --accent-soft:#dceee6;
  --maxw:1200px;
  --radius:18px;
  --shadow-sm:0 8px 30px rgba(17,23,19,.06);
  --shadow-lg:0 28px 80px rgba(17,23,19,.12);
}
html{scroll-padding-top:112px;background:var(--bg)}
body{font-size:16px;letter-spacing:.002em;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-2;background:linear-gradient(rgba(17,23,19,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(17,23,19,.018) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.45),transparent 72%)}
.wrap{padding-inline:clamp(20px,4vw,48px)}
a{text-underline-offset:3px}.skip-link{position:fixed;left:12px;top:12px;transform:translateY(-180%);z-index:999;background:var(--ink);color:#fff;padding:10px 14px;border-radius:8px;text-decoration:none}.skip-link:focus{transform:none}
.network-bar{border:0;background:#0c120f}.network-bar .wrap{min-height:34px;padding-block:6px;font-size:.68rem;letter-spacing:.12em}.network-bar a{font-weight:700}.network-bar a:hover{color:#9ce7c4}
.site-header{background:rgba(244,241,233,.86);border-color:rgba(17,23,19,.09);box-shadow:0 1px 0 rgba(255,255,255,.5);backdrop-filter:blur(18px) saturate(130%)}
.nav{min-height:72px;padding-block:12px}.brand-logo{height:38px}.nav-links{align-items:center}.nav-links a{position:relative;opacity:.72;font-weight:650}.nav-links a::after{content:"";position:absolute;height:2px;left:0;right:100%;bottom:-8px;background:var(--accent);transition:right .2s ease}.nav-links a:hover::after,.nav-links a[aria-current="page"]::after{right:0}.nav-links a[aria-current="page"]{opacity:1;color:var(--accent-ink)}
.btn{border-radius:9px;padding:13px 22px;font-weight:750;box-shadow:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(17,23,19,.11)}.btn-gold{background:var(--ink);color:#fff}.btn-gold:hover{background:#28322c}.btn-outline{background:rgba(255,255,255,.4)}
.mobile-toggle{display:none;width:44px;height:44px;border:1px solid var(--panel-border);background:var(--panel);border-radius:10px;align-items:center;justify-content:center;cursor:pointer}.mobile-toggle svg{width:22px}.mobile-menu{display:none;position:absolute;left:16px;right:16px;top:calc(100% + 8px);padding:10px;background:rgba(255,253,250,.98);border:1px solid var(--panel-border);border-radius:14px;box-shadow:var(--shadow-lg)}.mobile-menu.open{display:grid}.mobile-menu a{padding:12px 14px;border-radius:8px;text-decoration:none;font-weight:700}.mobile-menu a:hover{background:var(--accent-soft);color:var(--accent-ink)}
.scroll-progress{position:fixed;z-index:120;top:0;left:0;height:2px;width:0;background:var(--accent);transition:width .08s linear}
.hero{padding:clamp(82px,10vw,132px) 0 clamp(74px,8vw,106px);isolation:isolate}.hero::after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(31,138,99,.14);border-radius:50%;right:-280px;top:-220px;box-shadow:0 0 0 50px rgba(31,138,99,.025),0 0 0 110px rgba(31,138,99,.018);z-index:-1}.hero-overlay{background:radial-gradient(circle at 50% 0,rgba(31,138,99,.14),transparent 46%),linear-gradient(to bottom,rgba(255,255,255,.18),transparent)}.hero-content{max-width:840px}.hero h1{font-size:clamp(2.65rem,7vw,5.5rem);line-height:.98;letter-spacing:-.045em}.hero-sub{font-size:clamp(1.04rem,2vw,1.28rem);max-width:720px;line-height:1.65}.badge{border-radius:6px;background:rgba(255,255,255,.4);backdrop-filter:blur(8px);font-size:.7rem}.hero-ctas{margin-top:34px}
.page-hero{padding:76px 0 54px;background:radial-gradient(circle at 70% -20%,rgba(31,138,99,.14),transparent 42%);border-bottom:1px solid var(--panel-border)}.page-hero h1{font-size:clamp(2.2rem,5vw,4rem);letter-spacing:-.03em}.page-hero p{max-width:700px;color:var(--ink-soft);font-size:1.08rem}
.section{padding:clamp(68px,8vw,106px) 0}.section.alt{background:linear-gradient(180deg,var(--bg-alt),#eee9de)}.section h2{font-size:clamp(2rem,4vw,3.3rem);letter-spacing:-.035em}.section-intro{font-size:1.04rem;max-width:700px}
.card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:18px}.card{position:relative;overflow:hidden;border-radius:var(--radius);padding:30px;background:rgba(255,253,250,.9);box-shadow:var(--shadow-sm);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.card::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--accent),transparent);opacity:0;transition:opacity .2s ease}.card:hover{transform:translateY(-4px);border-color:rgba(31,138,99,.45);box-shadow:0 18px 44px rgba(17,23,19,.09)}.card:hover::before{opacity:1}.card h3{font-size:1.25rem}.card .icon-badge{border-radius:12px;background:var(--accent-soft);border:0;width:46px;height:46px;font-size:20px}
.cross-promo{border:1px solid var(--panel-border);border-left:0;border-radius:22px;padding:clamp(28px,5vw,50px);box-shadow:var(--shadow-sm);background:linear-gradient(135deg,var(--panel),rgba(220,238,230,.7));position:relative;overflow:hidden}.cross-promo::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent)}
.two-col{gap:clamp(34px,6vw,76px)}.step-card,.for-item,.solution-row{border-radius:16px}.step-num{background:var(--accent-soft);color:var(--accent-ink);border:1px solid rgba(31,138,99,.25)}
.service-switch{padding-top:26px}.service-switch a{border-radius:7px;background:rgba(255,255,255,.4)}.service-switch a.active{background:var(--ink)}
.form-card{border-radius:22px;box-shadow:var(--shadow-sm);background:var(--panel);border:1px solid var(--panel-border);padding:clamp(24px,5vw,48px)}.form-field label{font-weight:750}.form-field input,.form-field select,.form-field textarea{border-radius:10px;border:1px solid #cfc7b8;background:#fffefb;padding:13px 14px;transition:border .15s ease,box-shadow .15s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(31,138,99,.12);outline:0}.check-item,.radio-item{border-radius:10px;transition:background .15s ease,border .15s ease}.check-item:hover,.radio-item:hover{background:var(--accent-soft);border-color:rgba(31,138,99,.35)}
.site-footer{background:#0e1511;color:#c9d0cb;padding-top:70px;border:0}.site-footer h4{color:#f7f5f0}.site-footer a:hover{color:#91dfbb}.footer-bottom{border-top-color:rgba(255,255,255,.12)}.footer-logo{filter:brightness(0) invert(1);opacity:.92}
.back-to-top{border-radius:10px!important;box-shadow:var(--shadow-sm)!important}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.reveal.is-visible{opacity:1;transform:none}
/* New homepage building blocks */
.signal-strip{border-block:1px solid var(--panel-border);background:rgba(255,255,255,.46)}.signal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.signal{padding:24px;text-align:center;border-right:1px solid var(--panel-border)}.signal:last-child{border:0}.signal strong{display:block;font-family:'Playfair Display',serif;font-size:1.75rem;letter-spacing:-.03em}.signal span{display:block;color:var(--ink-soft);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}
.feature-panel{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;align-items:stretch}.feature-panel>div{background:var(--panel);border:1px solid var(--panel-border);border-radius:22px;padding:clamp(28px,5vw,52px);box-shadow:var(--shadow-sm)}.feature-panel .feature-dark{background:#111713;color:#dfe6e1;border-color:#111713}.feature-dark h2,.feature-dark h3{color:#fff}.feature-dark p{color:#b8c2bc}.eyebrow{font-size:.72rem;text-transform:uppercase;letter-spacing:.13em;font-weight:800;color:var(--accent-ink);margin-bottom:14px}.feature-dark .eyebrow{color:#8bd9b5}.mini-list{display:grid;gap:12px;margin:24px 0 0;padding:0;list-style:none}.mini-list li{padding-left:26px;position:relative;color:var(--ink-soft)}.mini-list li::before{content:"✓";position:absolute;left:0;color:var(--accent-ink);font-weight:900}.feature-dark .mini-list li{color:#c6cec9}.feature-dark .mini-list li::before{color:#8bd9b5}
.quote-panel{max-width:920px;margin:0 auto;padding:clamp(28px,5vw,54px);border-left:3px solid var(--accent);background:rgba(255,255,255,.45);border-radius:0 20px 20px 0}.quote-panel blockquote{margin:0;font:700 clamp(1.55rem,3vw,2.45rem)/1.24 'Playfair Display',serif;letter-spacing:-.025em}.quote-panel cite{display:block;margin-top:20px;color:var(--ink-soft);font-style:normal}
@media(max-width:859px){.nav-links{display:none}.site-header .nav>.btn{display:none}.mobile-toggle{display:flex}.site-header .nav{position:relative}.signal-grid{grid-template-columns:1fr 1fr}.signal:nth-child(2){border-right:0}.signal:nth-child(-n+2){border-bottom:1px solid var(--panel-border)}.feature-panel{grid-template-columns:1fr}.hero h1{max-width:680px;margin-inline:auto}}
@media(max-width:560px){.network-bar .wrap>span:first-child{display:none}.hero{padding-top:66px}.signal-grid{grid-template-columns:1fr}.signal{border-right:0!important;border-bottom:1px solid var(--panel-border)!important}.signal:last-child{border-bottom:0!important}.form-row.two{grid-template-columns:1fr}.card{padding:24px}.brand-logo{max-width:190px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/* Compatibility aliases for older page-level styles retained during the redesign. */
:root{--text:var(--ink);--text-dim:var(--ink-soft);--cream:var(--ink);--accent-bright:var(--accent-ink)}
\n\n/* 2026-08-07 masthead consistency contract */
/* Keep the family bar and primary navigation physically stable from page to page.
   Page content may change; the masthead dimensions, typography and CTA footprint do not. */
.network-bar{font-family:'Source Sans 3',system-ui,sans-serif;}
.network-bar .wrap{
  box-sizing:border-box;
  min-height:36px;
  padding-top:6px!important;
  padding-bottom:6px!important;
  line-height:1.4;
}
.site-header{font-family:'Source Sans 3',system-ui,sans-serif;}
.site-header .nav{
  box-sizing:border-box;
  min-height:76px;
  padding-top:12px!important;
  padding-bottom:12px!important;
}
.site-header .brand{min-width:0;}
.site-header .brand-logo{height:38px!important;width:auto;max-width:220px;object-fit:contain;}
.site-header .nav-links{line-height:1.4;}
.site-header .nav-links a{font-size:14px;font-weight:650;line-height:1.4;}
.site-header .nav > .btn{
  box-sizing:border-box;
  min-width:198px;
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
  line-height:1.2;
  padding:10px 16px;
}
@media(min-width:1021px){
  .site-header .nav:not(.rr-unified-nav){
    display:grid;
    grid-template-columns:220px minmax(0,1fr) 198px;
    column-gap:24px;
    align-items:center;
  }
  .site-header .nav:not(.rr-unified-nav) .brand{justify-self:start;}
  .site-header .nav:not(.rr-unified-nav) .nav-links{
    display:flex!important;
    justify-content:center;
    align-items:center;
    gap:clamp(14px,1.6vw,26px);
    min-width:0;
  }
  .site-header .nav:not(.rr-unified-nav) > .btn{justify-self:end;width:198px;}
}
@media(max-width:1020px){
  .site-header .nav:not(.rr-unified-nav) .nav-links{display:none!important;}
  .site-header .nav:not(.rr-unified-nav) > .btn{display:none!important;}
  .site-header .nav:not(.rr-unified-nav) .mobile-toggle{display:flex!important;}
}
@media(max-width:560px){
  .network-bar .wrap{min-height:36px;}
  .site-header .nav{min-height:68px;}
  .site-header .brand-logo{height:34px!important;max-width:190px;}
}
