/*
Theme Name: Rawasikh
Theme URI: https://rawasikh-sa.com
Author: Faisal Alsaedi
Description: Custom WordPress theme for Rawasikh.
Version: 2.0.0
Requires PHP: 8.1
Text Domain: rawasikh
*/

:root{
  --primary:#0A2342;
  --secondary:#0066FF;
  --accent:#37D9F6;
  --gold:#C8A45D;
  --bg:#F8FAFC;
  --white:#FFFFFF;
  --text:#1F2937;
  --muted:#64748B;
  --dark:#071A33;
  --radius:18px;
  --container:1200px;
  --header-h:82px;
}

*{margin:0;padding:0;box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  font-family:"Poppins","IBM Plex Sans Arabic",sans-serif;
  background:var(--bg);
  color:var(--text);
  overflow-x:hidden;
}

body.lang-ar{
  font-family:"IBM Plex Sans Arabic","Poppins",sans-serif;
}

body.no-scroll{ overflow:hidden; }

a{text-decoration:none;color:inherit}
ul{list-style:none}
button{font-family:inherit;cursor:pointer}
img{max-width:100%;display:block}

.container{
  width:min(var(--container),92%);
  margin:auto;
}

/* ================= Header ================= */
.site-header{
  position:fixed;
  top:0;
  inset-inline:0;
  width:100%;
  z-index:999;
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(10,35,66,.08);
  transition:.3s ease;
}

.site-header.is-scrolled{
  background:rgba(255,255,255,.95);
  box-shadow:0 10px 30px rgba(10,35,66,.08);
}

.header-inner{
  height:var(--header-h);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  transition:.3s ease;
}

.site-header.is-scrolled .header-inner{
  height:66px;
}

.logo{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}

.logo-mark-img{
  display:block;
  height:38px;
  width:auto;
  aspect-ratio:432/618;
  transition:.3s ease;
}

.site-header.is-scrolled .logo-mark-img{ height:30px; }

/* "Written by hand" reveal animation for the raster logo fallback (custom uploaded logos) */
.logo-draw{
  clip-path:inset(0 100% 0 0);
}

.logo-draw.is-drawing{
  animation:logoDraw 1.6s cubic-bezier(.65,0,.35,1) forwards;
}

@keyframes logoDraw{
  to{ clip-path:inset(0 0 0 0); }
}

/* Real pen-stroke draw animation for the bundled vector logo mark,
   using stroke-dasharray / stroke-dashoffset with precomputed path lengths.
   Loops forever: draw -> hold filled -> erase -> redraw. */
.logo-draw-svg{ overflow:visible; }

.logo-draw-svg .rk-stroke,
.logo-draw-svg .rk-body,
.logo-draw-svg .rk-foot,
.logo-draw-svg .rk-accent{
  fill-opacity:0;
  animation-timing-function:ease-in-out;
  animation-iteration-count:infinite;
  animation-play-state:paused;
}

.logo-draw-svg .rk-stroke{
  stroke-dasharray:9040;
  stroke-dashoffset:9040;
  animation-name:rkDraw-stroke;
  animation-duration:4.2s;
  animation-delay:0s;
}

.logo-draw-svg .rk-body{
  stroke-dasharray:24236;
  stroke-dashoffset:24236;
  animation-name:rkDraw-body;
  animation-duration:4.2s;
  animation-delay:.35s;
}

.logo-draw-svg .rk-foot{
  stroke-dasharray:6296;
  stroke-dashoffset:6296;
  animation-name:rkDraw-foot;
  animation-duration:4.2s;
  animation-delay:1.1s;
}

.logo-draw-svg .rk-accent{
  stroke-dasharray:2358;
  stroke-dashoffset:2358;
  animation-name:rkDraw-accent;
  animation-duration:4.2s;
  animation-delay:1.3s;
}

.logo-draw-svg.is-drawing .rk-stroke,
.logo-draw-svg.is-drawing .rk-body,
.logo-draw-svg.is-drawing .rk-foot,
.logo-draw-svg.is-drawing .rk-accent{
  animation-play-state:running;
}

@keyframes rkDraw-stroke{
  0%   { stroke-dashoffset:9040; fill-opacity:0; }
  15%  { stroke-dashoffset:0;    fill-opacity:0; }
  22%  { stroke-dashoffset:0;    fill-opacity:1; }
  70%  { stroke-dashoffset:0;    fill-opacity:1; }
  88%  { stroke-dashoffset:9040; fill-opacity:0; }
  100% { stroke-dashoffset:9040; fill-opacity:0; }
}

@keyframes rkDraw-body{
  0%   { stroke-dashoffset:24236; fill-opacity:0; }
  15%  { stroke-dashoffset:0;     fill-opacity:0; }
  22%  { stroke-dashoffset:0;     fill-opacity:1; }
  70%  { stroke-dashoffset:0;     fill-opacity:1; }
  88%  { stroke-dashoffset:24236; fill-opacity:0; }
  100% { stroke-dashoffset:24236; fill-opacity:0; }
}

@keyframes rkDraw-foot{
  0%   { stroke-dashoffset:6296; fill-opacity:0; }
  15%  { stroke-dashoffset:0;    fill-opacity:0; }
  22%  { stroke-dashoffset:0;    fill-opacity:1; }
  70%  { stroke-dashoffset:0;    fill-opacity:1; }
  88%  { stroke-dashoffset:6296; fill-opacity:0; }
  100% { stroke-dashoffset:6296; fill-opacity:0; }
}

@keyframes rkDraw-accent{
  0%   { stroke-dashoffset:2358; fill-opacity:0; }
  15%  { stroke-dashoffset:0;    fill-opacity:0; }
  22%  { stroke-dashoffset:0;    fill-opacity:1; }
  70%  { stroke-dashoffset:0;    fill-opacity:1; }
  88%  { stroke-dashoffset:2358; fill-opacity:0; }
  100% { stroke-dashoffset:2358; fill-opacity:0; }
}

.logo img{ max-height:52px; width:auto; transition:.3s ease; }
.site-header.is-scrolled .logo img{ max-height:40px; }

.logo-text-stack{
  display:flex;
  flex-direction:column;
  line-height:1.15;
}

.logo-text{
  font-size:22px;
  font-weight:700;
  color:var(--primary);
  letter-spacing:.4px;
}

.logo-subtext{
  font-size:11px;
  font-weight:500;
  color:var(--muted);
  letter-spacing:.2px;
}

.logo-text.light{ color:#fff; }

.main-nav ul{
  display:flex;
  gap:22px;
}

.main-nav a{
  color:var(--primary);
  font-size:14.5px;
  font-weight:500;
  position:relative;
}

.main-nav li.is-active a,
.main-nav li.current-menu-item a{
  color:var(--secondary);
}

.main-nav li.is-active a::after,
.main-nav li.current-menu-item a::after{
  width:100%;
}

.main-nav a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-6px;
  width:0;
  height:2px;
  background:var(--secondary);
  transition:.25s ease;
}

.main-nav a:hover::after{ width:100%; }

.header-actions{
  display:flex;
  align-items:center;
  gap:16px;
}

.lang-switch{
  display:flex;
  align-items:center;
  gap:6px;
  font-size:13px;
  font-weight:600;
  color:var(--primary);
  padding:9px 12px;
  border-radius:999px;
  border:1px solid rgba(10,35,66,.14);
  transition:.2s ease;
}

.lang-switch:hover{
  border-color:var(--secondary);
  color:var(--secondary);
}

.lang-switch svg{ width:16px; height:16px; }
.lang-switch .lang-chevron{ width:13px; height:13px; opacity:.6; }

.header-btn,
.btn-primary{
  background:linear-gradient(135deg,var(--secondary),var(--accent));
  color:white;
  padding:14px 24px;
  border:none;
  border-radius:999px;
  font-weight:600;
  font-size:15px;
  display:inline-block;
  box-shadow:0 14px 35px rgba(0,102,255,.25);
  transition:transform .25s ease, box-shadow .25s ease;
}

.header-btn:hover,
.btn-primary:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 45px rgba(0,102,255,.32);
}

.btn-secondary{
  border:1px solid rgba(10,35,66,.18);
  color:var(--primary);
  padding:14px 24px;
  border-radius:999px;
  font-weight:600;
  display:inline-block;
  transition:.25s ease;
}

.btn-secondary:hover{
  border-color:var(--secondary);
  color:var(--secondary);
}

/* Hamburger */
.hamburger{
  display:none;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  width:38px;
  height:38px;
  background:none;
  border:none;
  padding:0;
}

.hamburger span{
  display:block;
  height:2px;
  width:100%;
  background:var(--primary);
  border-radius:2px;
  transition:.3s ease;
}

.hamburger.is-open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.hamburger.is-open span:nth-child(2){ opacity:0; }
.hamburger.is-open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

.nav-overlay{
  position:fixed;
  inset:0;
  background:rgba(7,26,51,.5);
  opacity:0;
  visibility:hidden;
  transition:.3s ease;
  z-index:998;
}

.nav-overlay.is-open{ opacity:1; visibility:visible; }

/* ================= Hero ================= */
.hero{
  min-height:100vh;
  display:flex;
  align-items:center;
  padding-top:90px;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 80% 20%, rgba(55,217,246,.25), transparent 30%),
    radial-gradient(circle at 20% 80%, rgba(0,102,255,.16), transparent 28%),
    linear-gradient(135deg,#ffffff,#f8fafc);
}

.hero::before{
  content:"";
  position:absolute;
  inset:-20%;
  background-image:
    linear-gradient(rgba(10,35,66,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(10,35,66,.05) 1px, transparent 1px);
  background-size:70px 70px;
  transform:rotate(-8deg);
}

.hero-inner{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:60px;
  align-items:center;
}

.eyebrow{
  display:inline-flex;
  color:var(--secondary);
  background:rgba(0,102,255,.08);
  padding:9px 16px;
  border-radius:999px;
  font-weight:600;
  margin-bottom:22px;
}

.hero h1{
  font-size:clamp(38px,6vw,82px);
  line-height:1.25;
  color:var(--primary);
  letter-spacing:-1px;
  margin-bottom:24px;
  text-wrap:balance;
  max-width:720px;
}

.text-highlight{ color:var(--secondary); }

.hero-ring{
  position:absolute;
  border-radius:50%;
  border:1.5px dashed rgba(10,35,66,.14);
  top:50%;
  inset-inline-start:50%;
}

.hero-ring-outer{
  width:440px;
  height:440px;
  transform:translate(-50%,-50%);
}

[dir="rtl"] .hero-ring-outer{ transform:translate(50%,-50%); }

.hero-ring-inner{
  width:330px;
  height:330px;
  transform:translate(-50%,-50%);
}

[dir="rtl"] .hero-ring-inner{ transform:translate(50%,-50%); }

.hero-dot{
  position:absolute;
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--secondary);
  opacity:.5;
}

.hero-dot-1{ top:8%; inset-inline-start:12%; }
.hero-dot-2{ top:48%; inset-inline-end:2%; width:6px; height:6px; }
.hero-dot-3{ bottom:14%; inset-inline-start:6%; width:5px; height:5px; }

body.lang-ar .hero h1{ letter-spacing:0; }

.hero p{
  font-size:19px;
  line-height:1.8;
  color:var(--muted);
  max-width:620px;
  margin-bottom:34px;
}

.hero-actions{
  display:flex;
  gap:16px;
  flex-wrap:wrap;
}

.hero-visual{
  min-height:320px;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
}

.logo-badge{
  position:relative;
  width:220px;
  height:220px;
  z-index:3;
  display:flex;
  align-items:center;
  justify-content:center;
}

.logo-badge-ring{
  position:absolute;
  inset:0;
  border-radius:50%;
  background:conic-gradient(from 0deg, var(--secondary), var(--accent), var(--gold), var(--secondary));
  animation:spin 10s linear infinite;
  filter:blur(.3px);
}

.logo-badge-ring::after{
  content:"";
  position:absolute;
  inset:5px;
  border-radius:50%;
  background:#fff;
}

.logo-badge-img{
  position:relative;
  z-index:2;
  display:block;
  width:130px;
  height:auto;
  max-width:70%;
  max-height:70%;
  aspect-ratio:432/618;
  filter:drop-shadow(0 10px 24px rgba(10,35,66,.18));
  animation:bob 4.5s ease-in-out infinite;
}

.services-visual{
  position:relative;
  min-height:280px;
  flex:0 0 340px;
}

.services-visual .orb{
  position:absolute;
  border-radius:50%;
  filter:blur(1px);
  animation:float 6s ease-in-out infinite;
}

.services-visual .orb-one{
  width:220px;
  height:220px;
  background:linear-gradient(135deg,var(--secondary),var(--accent));
  inset-inline-end:20px;
  top:0;
  box-shadow:0 40px 100px rgba(0,102,255,.35);
}

.services-visual .orb-two{
  width:120px;
  height:120px;
  background:linear-gradient(135deg,var(--gold),#fff3c4);
  inset-inline-start:0;
  bottom:30px;
  animation-delay:1.5s;
}

.services-visual .glass-card{
  position:absolute;
  inset-inline-start:10%;
  bottom:0;
  width:280px;
  padding:26px;
  border-radius:24px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(255,255,255,.65);
  backdrop-filter:blur(22px);
  box-shadow:0 35px 90px rgba(10,35,66,.18);
}

.services-visual .glass-card h3{ font-size:22px; }

.glass-card{
  position:absolute;
  inset-inline-end:20px;
  bottom:80px;
  width:390px;
  padding:32px;
  border-radius:28px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(255,255,255,.65);
  backdrop-filter:blur(22px);
  box-shadow:0 35px 90px rgba(10,35,66,.18);
}

.glass-card h3{ color:var(--primary); font-size:28px; margin-bottom:12px; }
.glass-card p{ margin:0; font-size:15px; }

/* ================= How It Works ================= */
.how-it-works{
  background:linear-gradient(160deg,var(--dark),#0c2749 60%,var(--dark));
  padding:100px 0;
  position:relative;
  overflow:hidden;
}

.how-it-works::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:radial-gradient(rgba(255,255,255,.05) 1px, transparent 1px);
  background-size:26px 26px;
  opacity:.5;
}

.how-header{
  position:relative;
  text-align:center;
  max-width:640px;
  margin:0 auto 50px;
}

.how-label{ color:var(--accent); font-weight:700; font-size:14px; }

.how-header h2{
  color:#fff;
  font-size:clamp(28px,3.6vw,42px);
  margin-top:12px;
  margin-bottom:16px;
}

.how-header p{ color:#94a3b8; font-size:16px; line-height:1.8; }

.how-layout{
  position:relative;
  display:grid;
  grid-template-columns:1fr 320px;
  gap:32px;
  align-items:start;
}

.how-panel{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.1);
  border-radius:28px;
  padding:36px;
}

.how-steps{
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;
  align-items:start;
  gap:14px;
  margin-bottom:32px;
}

.how-step{ display:flex; flex-direction:column; gap:14px; text-align:center; }

.how-step-title{ color:#e2e8f0; font-weight:600; font-size:14px; }

.how-step-card{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  aspect-ratio:1;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--accent);
}

.how-step-card svg{ width:34%; height:34%; }

.how-step p{ color:#94a3b8; font-size:12.5px; line-height:1.7; }

.how-arrow{
  color:rgba(255,255,255,.25);
  font-size:20px;
  align-self:center;
  margin-top:34px;
}

[dir="ltr"] .how-arrow{ display:inline-block; transform:scaleX(-1); }

.how-video{
  display:flex;
  align-items:center;
  gap:16px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.1);
  border-radius:16px;
  padding:14px 20px;
}

.how-video-play{
  width:36px;
  height:36px;
  min-width:36px;
  border-radius:50%;
  background:var(--secondary);
  color:#fff;
  border:none;
  display:flex;
  align-items:center;
  justify-content:center;
}

.how-video-play svg{ width:16px; height:16px; }

.how-video-time{ color:#cbd5e1; font-size:13px; white-space:nowrap; }

.how-video-bar{
  flex:1;
  height:5px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  overflow:hidden;
}

.how-video-fill{
  display:block;
  height:100%;
  width:8%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--secondary),var(--accent));
  animation:howVideoFill 8s ease-in-out infinite;
}

@keyframes howVideoFill{
  0%{ width:4%; }
  50%{ width:70%; }
  100%{ width:4%; }
}

.how-timeline{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:30px;
  padding-inline-start:26px;
  border-inline-start:1.5px dotted rgba(255,255,255,.2);
}

.how-timeline li{
  display:flex;
  gap:16px;
  align-items:flex-start;
  position:relative;
}

.how-timeline-icon{
  width:40px;
  height:40px;
  min-width:40px;
  border-radius:50%;
  background:rgba(255,255,255,.06);
  border:1.5px solid var(--accent);
  color:var(--accent);
  display:flex;
  align-items:center;
  justify-content:center;
  margin-inline-start:-46px;
  box-shadow:0 0 0 6px var(--dark);
}

.how-timeline-icon svg{ width:18px; height:18px; }

.how-timeline h4{ color:#fff; font-size:15px; margin-bottom:6px; }
.how-timeline p{ color:#94a3b8; font-size:13px; line-height:1.7; }

/* ================= Stats ================= */
.stats-section{ padding:60px 0; }

.stats-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:24px;
  background:white;
  border-radius:var(--radius);
  padding:44px 30px;
  box-shadow:0 20px 60px rgba(10,35,66,.08);
  border:1px solid rgba(10,35,66,.06);
}

.stat{
  text-align:center;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.stat-num{
  font-size:38px;
  font-weight:700;
  color:var(--secondary);
}

.stat-label{
  color:var(--muted);
  font-size:14px;
  font-weight:500;
}

/* ================= Sections ================= */
.section{ padding:110px 0; }

.section-title{ max-width:760px; margin-bottom:55px; }
.section-title span{ color:var(--secondary); font-weight:700; }
.section-title h2{ font-size:clamp(30px,4vw,56px); color:var(--primary); margin-top:14px; }

.section-title-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:40px;
  margin-bottom:55px;
}

.section-title-row .section-title{ margin-bottom:0; }

.cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

.cards.two-col{ grid-template-columns:repeat(2,1fr); }

.card{
  background:white;
  border-radius:var(--radius);
  padding:34px;
  box-shadow:0 20px 60px rgba(10,35,66,.08);
  border:1px solid rgba(10,35,66,.06);
  transition:.35s ease;
}

.card:hover{ transform:translateY(-8px); }

.card-icon{
  width:52px;
  height:52px;
  border-radius:14px;
  background:linear-gradient(135deg,rgba(0,102,255,.12),rgba(55,217,246,.12));
  color:var(--secondary);
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:18px;
}

.card-icon svg{ width:26px; height:26px; }

.card h3{ color:var(--primary); margin-bottom:14px; font-size:22px; }
.card p{ color:var(--muted); line-height:1.8; }

.card-col{
  display:flex;
  flex-direction:column;
  gap:16px;
}

.card-tag{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:16px 20px;
  border-radius:14px;
  background:linear-gradient(135deg,rgba(0,102,255,.08),rgba(55,217,246,.1));
  border:1px solid rgba(0,102,255,.15);
}

.card-tag strong{ color:var(--primary); font-size:15px; }
.card-tag span{ color:var(--muted); font-size:13px; }

/* ================= Reveal animation ================= */
.reveal{
  opacity:0;
  transform:translateY(30px);
  transition:opacity .7s ease, transform .7s ease;
}
.reveal.is-visible{ opacity:1; transform:translateY(0); }

/* ================= Page hero (inner pages) ================= */
.page-hero{
  padding:170px 0 70px;
  background:
    radial-gradient(circle at 80% 10%, rgba(55,217,246,.18), transparent 30%),
    linear-gradient(135deg,#ffffff,#f8fafc);
}

.page-hero h1{
  font-size:clamp(34px,5vw,58px);
  color:var(--primary);
  margin-bottom:18px;
  line-height:1.2;
}

.page-hero-desc{
  color:var(--muted);
  font-size:18px;
  line-height:1.8;
  max-width:680px;
}

/* ================= Portfolio ================= */
.portfolio-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}

.portfolio-card{
  background:white;
  border-radius:var(--radius);
  overflow:hidden;
  border:1px solid rgba(10,35,66,.06);
  box-shadow:0 20px 60px rgba(10,35,66,.08);
  display:block;
  transition:.35s ease;
}

.portfolio-card:hover{ transform:translateY(-8px); }

.portfolio-thumb{ aspect-ratio:4/3; overflow:hidden; }

.portfolio-thumb img{ width:100%; height:100%; object-fit:cover; }

.portfolio-thumb-placeholder{
  width:100%; height:100%;
  background:linear-gradient(135deg,var(--secondary),var(--accent));
  opacity:.85;
}

.portfolio-body{ padding:26px; }
.portfolio-body h3{ color:var(--primary); font-size:19px; margin-bottom:8px; }
.portfolio-body p{ color:var(--muted); font-size:14px; line-height:1.7; margin-bottom:14px; }
.portfolio-link{ color:var(--secondary); font-weight:600; font-size:14px; }

.portfolio-card.is-placeholder{ opacity:.65; }

/* ================= Contact ================= */
.contact-grid{
  display:grid;
  grid-template-columns:1.4fr .8fr;
  gap:40px;
}

.contact-form{
  background:white;
  border-radius:var(--radius);
  padding:40px;
  box-shadow:0 20px 60px rgba(10,35,66,.08);
  border:1px solid rgba(10,35,66,.06);
  display:flex;
  flex-direction:column;
  gap:20px;
}

.form-row{ display:flex; flex-direction:column; gap:8px; }

.form-row label{ font-weight:600; color:var(--primary); font-size:14px; }

.form-row input,
.form-row textarea{
  border:1px solid rgba(10,35,66,.15);
  border-radius:12px;
  padding:14px 16px;
  font-family:inherit;
  font-size:15px;
  color:var(--text);
  background:var(--bg);
  transition:.2s ease;
  resize:vertical;
}

.form-row input:focus,
.form-row textarea:focus{
  outline:none;
  border-color:var(--secondary);
  box-shadow:0 0 0 3px rgba(0,102,255,.12);
}

.contact-form .btn-primary{ border:none; }

.hp-field{ position:absolute; left:-9999px; opacity:0; }

.form-status{ font-size:14px; font-weight:600; min-height:20px; }
.form-status.is-success{ color:#16a34a; }
.form-status.is-error{ color:#dc2626; }

.contact-info{ display:flex; flex-direction:column; gap:30px; }

.info-item h4{ color:var(--primary); margin-bottom:10px; font-size:16px; }
.info-item p{ color:var(--muted); margin-bottom:4px; }
.info-item a{ color:var(--secondary); font-weight:500; }

/* ================= CTA ================= */
.cta{
  background:linear-gradient(135deg,var(--primary),var(--dark));
  color:white;
  border-radius:32px;
  padding:70px;
  text-align:center;
}

.cta h2{ font-size:clamp(28px,4vw,44px); margin-bottom:18px; }
.cta p{ color:#cbd5e1; margin-bottom:28px; }

/* ================= Footer ================= */
.site-footer{ background:var(--primary); color:white; padding:70px 0 0; }

.footer-grid{
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr;
  gap:40px;
  padding-bottom:50px;
  border-bottom:1px solid rgba(255,255,255,.1);
}

.footer-brand p{ color:#94a3b8; line-height:1.8; margin-top:16px; max-width:340px; }

.footer-col h4{ font-size:15px; margin-bottom:18px; color:#e2e8f0; }
.footer-col ul{ display:flex; flex-direction:column; gap:12px; }
.footer-col a{ color:#94a3b8; font-size:14px; transition:.2s ease; }
.footer-col a:hover{ color:var(--accent); }

.footer-bottom{
  padding:24px 0;
  text-align:center;
  color:#64748b;
  font-size:13px;
}

/* ================= Animation ================= */
@keyframes float{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-22px)}
}

@keyframes spin{
  from{transform:rotate(0deg)}
  to{transform:rotate(360deg)}
}

@keyframes bob{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-8px)}
}

/* ================= RTL adjustments ================= */
[dir="rtl"] .main-nav a::after{ left:auto; right:0; }
[dir="rtl"] .portfolio-link{ direction:rtl; }
[dir="rtl"] .hp-field{ left:auto; right:-9999px; }

/* ================= Responsive ================= */
@media(max-width:1024px){
  .stats-grid{ grid-template-columns:repeat(2,1fr); }
  .contact-grid{ grid-template-columns:1fr; }
  .services-visual{ flex-basis:280px; }
  .how-layout{ grid-template-columns:1fr; }
  .how-timeline{
    border-inline-start:none;
    padding-inline-start:0;
    flex-direction:row;
    flex-wrap:wrap;
    gap:24px;
  }
  .how-timeline li{ flex:1 1 220px; }
  .how-timeline-icon{ margin-inline-start:0; box-shadow:none; }
}

@media(max-width:1080px){
  .section-title-row{ flex-direction:column; align-items:flex-start; }
  .services-visual{ width:100%; flex-basis:auto; min-height:240px; }
  .services-visual .glass-card{ width:min(280px,90%); }
  .main-nav{
    position:fixed;
    top:0;
    inset-inline-end:0;
    height:100vh;
    width:min(320px,84%);
    background:white;
    box-shadow:-20px 0 60px rgba(10,35,66,.15);
    padding:110px 32px 40px;
    transform:translateX(100%);
    transition:transform .35s ease;
    z-index:999;
  }

  [dir="rtl"] .main-nav{ transform:translateX(-100%); }

  .main-nav.is-open{ transform:translateX(0); }

  .main-nav ul{ flex-direction:column; gap:22px; }
  .main-nav a{ font-size:18px; }

  .header-btn{ display:none; }
  .hamburger{ display:flex; }
  .header-inner{ height:72px; }

  .hero-inner{ grid-template-columns:1fr; }
  .hero-visual{ min-height:360px; }
  .logo-badge{ width:150px; height:150px; }
  .logo-badge-img{ width:90px; }
  .hero-ring-outer{ width:260px; height:260px; }
  .hero-ring-inner{ width:190px; height:190px; }
  .how-panel{ padding:22px; }
  .how-steps{ grid-template-columns:1fr; gap:28px; }
  .how-arrow{ transform:rotate(90deg); margin:0 auto; }
  [dir="ltr"] .how-arrow{ transform:rotate(90deg) scaleX(-1); }
  .how-video{ flex-wrap:wrap; }
  .cards, .cards.two-col{ grid-template-columns:1fr; }
  .portfolio-grid{ grid-template-columns:1fr; }
  .cta{ padding:44px 24px; }
  .footer-grid{ grid-template-columns:1fr; gap:34px; }
}

@media(max-width:560px){
  .stats-grid{ grid-template-columns:1fr; }
  .lang-switch{ display:none; }
}

/* =========================================================
   Rawasikh final fix: animated full-page data background (100% scale)
   - Keeps existing content/layout/logo/workflow.
   - Adds visible dynamic data panels + network background across the whole page.
   - Uses scroll-linked parallax and continuous floating animation.
   ========================================================= */
:root{ --rawasikh-scroll:0px; --rawasikh-dark:#020b18; }
html{ background:var(--rawasikh-dark); }
body{
  background:var(--rawasikh-dark) !important;
  color:#eef7ff;
  min-width:320px;
  overflow-x:hidden !important;
  position:relative;
  isolation:isolate;
}
.container{
  width:min(var(--container),92vw) !important;
  max-width:var(--container) !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
/* IMPORTANT: positive z-index keeps the background visible behind content. */
body::before{
  content:"";
  position:fixed;
  inset:-8vh -6vw;
  z-index:0;
  pointer-events:none;
  background-image:
    linear-gradient(90deg, rgba(2,11,24,.78) 0%, rgba(2,11,24,.50) 38%, rgba(2,11,24,.72) 100%),
    radial-gradient(circle at 50% 30%, rgba(55,217,246,.20), transparent 34%),
    url('assets/images/bg-dashboard.jpeg'),
    url('assets/images/bg-network.jpeg');
  background-repeat:no-repeat,no-repeat,no-repeat,no-repeat;
  background-size:cover,cover, 100vw auto, cover;
  background-position:center,center, left 11vw top calc(110px - (var(--rawasikh-scroll) * .10)), center calc(0px - (var(--rawasikh-scroll) * .045));
  opacity:.95;
  filter:saturate(1.15) contrast(1.05) brightness(.70) blur(.6px);
  transform:translate3d(0, calc(var(--rawasikh-scroll) * -.018), 0) scale(1);
  transform-origin:45% 30%;
  animation:rawasikhDataBgFloat 13s ease-in-out infinite alternate;
  will-change:transform, background-position, filter;
}
/* moving particles, grid and glow layer */
body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(circle at 15% 20%, rgba(55,217,246,.55) 0 2px, transparent 5px),
    radial-gradient(circle at 38% 72%, rgba(0,102,255,.55) 0 2px, transparent 5px),
    radial-gradient(circle at 82% 26%, rgba(55,217,246,.42) 0 2px, transparent 5px),
    radial-gradient(circle at 68% 78%, rgba(255,205,105,.34) 0 2px, transparent 5px),
    linear-gradient(rgba(55,217,246,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(55,217,246,.05) 1px, transparent 1px),
    radial-gradient(circle at 78% 40%, rgba(0,196,255,.18), transparent 28%);
  background-size:auto,auto,auto,auto,84px 84px,84px 84px,auto;
  opacity:.80;
  mix-blend-mode:screen;
  animation:rawasikhParticlesMove 20s linear infinite;
}
.site-header, main, .site-footer, .nav-overlay{ position:relative; }
.site-header, main, .site-footer{ z-index:2; }
.nav-overlay{ z-index:998; }
@keyframes rawasikhDataBgFloat{
  0%{
    transform:translate3d(-.25vw, calc(var(--rawasikh-scroll) * -.012), 0) scale(1);
    filter:saturate(1.08) contrast(1.03) brightness(.64) blur(.6px);
  }
  50%{
    transform:translate3d(.45vw, calc(var(--rawasikh-scroll) * -.018), 0) scale(1.012);
    filter:saturate(1.20) contrast(1.08) brightness(.76) blur(.6px);
  }
  100%{
    transform:translate3d(-.45vw, calc(var(--rawasikh-scroll) * -.022), 0) scale(1.02);
    filter:saturate(1.12) contrast(1.04) brightness(.70) blur(.6px);
  }
}
@keyframes rawasikhParticlesMove{
  from{ background-position:0 0,0 0,0 0,0 0,0 0,0 0,0 0; }
  to{ background-position:28px -34px,-24px 30px,18px 42px,-34px -20px,0 84px,84px 0,0 0; }
}
/* make original sections sit on the same background, not white blocks */
.hero,.section,.how-it-works,.stats-section,.page-hero,.site-footer{
  background:transparent !important;
  position:relative;
}
.hero::before,.how-it-works::before,.page-hero::before{ opacity:.10; }
.hero{
  min-height:100vh !important;
  padding-top:calc(var(--header-h) + 60px) !important;
}
.hero h1,.section-title h2,.how-header h2,.cta h2,.page-hero h1{ color:#fff !important; text-shadow:0 18px 55px rgba(0,0,0,.42); }
.hero p,.how-header p,.section-title p,.card p,.cta p,.page-hero-desc{ color:rgba(230,245,255,.84) !important; }
.text-highlight,.eyebrow,.section-title span,.how-label{ color:#38dffc !important; }
/* header with slightly lighter logo area so logo shows */
.site-header{
  background:linear-gradient(90deg, rgba(5,18,37,.92), rgba(5,18,37,.74), rgba(5,18,37,.55)) !important;
  border-bottom:1px solid rgba(55,217,246,.14) !important;
  box-shadow:0 12px 46px rgba(0,0,0,.22);
}
.site-header.is-scrolled{ background:rgba(4,15,31,.94) !important; }
.logo{
  padding:8px 12px;
  border-radius:18px;
  background:linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,.045));
  border:1px solid rgba(255,255,255,.10);
}
.logo-text,.logo-subtext,.main-nav a,.lang-switch,.lang-switch a{ color:#f6fbff !important; }
.logo img,.logo-mark-img{ filter:drop-shadow(0 0 14px rgba(55,217,246,.45)); }
/* remove circular logo decoration in hero, keep logo mark only */
.logo-badge-ring,.hero-ring{ display:none !important; }
.logo-badge{ background:transparent !important; border:0 !important; box-shadow:none !important; }
.logo-badge-img{ filter:drop-shadow(0 0 18px rgba(55,217,246,.44)); }
/* cards/panels readable on moving background */
.card,.card-tag,.stats-grid,.cta,.contact-form,.portfolio-card{
  background:linear-gradient(145deg, rgba(7,26,51,.78), rgba(5,15,32,.62)) !important;
  border:1px solid rgba(55,217,246,.20) !important;
  box-shadow:0 28px 80px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.04) !important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.card h3,.card strong,.stat-num,.stat-label,.footer-col h4{ color:#fff !important; }
/* exact workflow picture restored, but without breaking page width */
.how-it-works{ padding:100px 0 !important; overflow:hidden; }
.rawasikh-exact-workflow-layout{
  display:block !important;
  width:100% !important;
  max-width:1063px !important;
  margin:0 auto !important;
}
.rawasikh-exact-workflow-card{
  width:100% !important;
  aspect-ratio:1063/396;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(37,194,255,.55);
  background:rgba(5,18,37,.72);
  box-shadow:0 22px 90px rgba(0,0,0,.42), 0 0 45px rgba(0,178,255,.16);
  animation:rawasikhWorkflowMotion 5.6s ease-in-out infinite;
}
.rawasikh-exact-workflow-card img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  display:block !important;
}
@keyframes rawasikhWorkflowMotion{
  0%,100%{ transform:translate3d(0,0,0) scale(1); filter:brightness(.98) saturate(1.05); }
  50%{ transform:translate3d(0,-5px,0) scale(1.012); filter:brightness(1.12) saturate(1.18); }
}
.site-footer{
  background:rgba(2,11,24,.78) !important;
  border-top:1px solid rgba(55,217,246,.16) !important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
@media (max-width:900px){
  body::before{
    background-size:cover, cover, 100vw auto, cover;
    background-position:center, center, center top calc(105px - (var(--rawasikh-scroll) * .08)), center calc(0px - (var(--rawasikh-scroll) * .035));
    opacity:.88;
  }
  .rawasikh-exact-workflow-card{ border-radius:12px; }
  .hero-inner{ gap:30px !important; }
}
@media (prefers-reduced-motion:reduce){
  body::before,body::after,.rawasikh-exact-workflow-card{ animation:none !important; }
}


/* Final logo visibility + simplified navigation update */
.site-header .logo{
  position:relative;
  isolation:isolate;
  padding:9px 14px !important;
  border-radius:20px !important;
  background:
    radial-gradient(circle at 76% 48%, rgba(56,217,255,.20), transparent 46%),
    linear-gradient(135deg, rgba(232,244,255,.18), rgba(46,126,255,.055)) !important;
  border:1px solid rgba(232,244,255,.18) !important;
  box-shadow:
    0 0 0 1px rgba(46,126,255,.08),
    0 16px 42px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.16) !important;
  backdrop-filter:blur(12px) saturate(1.2);
  -webkit-backdrop-filter:blur(12px) saturate(1.2);
}
.site-header .logo::before{
  content:"";
  position:absolute;
  inset:-10px;
  border-radius:26px;
  background:radial-gradient(circle at 70% 50%, rgba(56,217,255,.28), transparent 58%);
  opacity:.75;
  z-index:-1;
  pointer-events:none;
  filter:blur(10px);
}
.site-header .logo img,
.site-header .logo svg,
.site-header .logo-mark-img{
  filter:drop-shadow(0 0 16px rgba(56,217,255,.55)) drop-shadow(0 10px 26px rgba(0,0,0,.25)) !important;
}
.site-footer .logo,
.footer-brand .logo{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
.main-nav ul{
  gap:30px !important;
}

/* === Logo visibility refinement: keeps same logo shape, adds only a soft readable glow behind it === */
.site-header .logo{
  position:relative !important;
  isolation:isolate;
  background:linear-gradient(135deg, rgba(232,244,255,.18), rgba(46,126,255,.08)) !important;
  border:1px solid rgba(232,244,255,.18) !important;
  box-shadow:0 14px 40px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.12) !important;
}
.site-header .logo::before{
  content:"";
  position:absolute;
  inset:-10px -12px;
  z-index:-1;
  border-radius:22px;
  background:radial-gradient(circle at 58% 50%, rgba(232,244,255,.20), rgba(56,217,255,.12) 38%, transparent 72%);
  filter:blur(7px);
  opacity:.95;
  pointer-events:none;
}
.site-header .logo .logo-mark-img,
.site-header .logo img{
  opacity:1 !important;
  filter:drop-shadow(0 0 8px rgba(56,217,255,.62)) drop-shadow(0 0 18px rgba(232,244,255,.18)) !important;
}
.logo-badge{
  position:relative !important;
  isolation:isolate;
  width:230px !important;
  height:230px !important;
}
.logo-badge::before{
  content:"";
  position:absolute;
  inset:18px 6px;
  z-index:0;
  border-radius:34px;
  background:
    radial-gradient(circle at 45% 45%, rgba(232,244,255,.22), rgba(56,217,255,.12) 42%, transparent 72%),
    linear-gradient(135deg, rgba(232,244,255,.10), rgba(46,126,255,.06));
  box-shadow:0 0 55px rgba(46,126,255,.22), 0 0 110px rgba(56,217,255,.13);
  filter:blur(8px);
  opacity:1;
  pointer-events:none;
  animation:logoGlowPulse 5.5s ease-in-out infinite;
}
.logo-badge::after{
  content:"";
  position:absolute;
  inset:36px 20px;
  z-index:0;
  border-radius:28px;
  background:rgba(232,244,255,.055);
  border:1px solid rgba(232,244,255,.08);
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
  pointer-events:none;
}
.logo-badge-img{
  position:relative !important;
  z-index:2 !important;
  width:138px !important;
  max-width:72% !important;
  opacity:1 !important;
  filter:drop-shadow(0 0 10px rgba(56,217,255,.72)) drop-shadow(0 0 24px rgba(46,126,255,.36)) !important;
}
.logo-badge .logo-draw-svg .rk-body,
.logo-badge .logo-draw-svg .rk-foot{
  stroke:#E8F4FF !important;
  fill:#E8F4FF !important;
  filter:drop-shadow(0 0 8px rgba(46,126,255,.50));
}
.logo-badge .logo-draw-svg .rk-stroke{
  stroke:#38D9FF !important;
  fill:#38D9FF !important;
}
.logo-badge .logo-draw-svg .rk-accent{
  stroke:#2E7EFF !important;
  fill:#2E7EFF !important;
}
@keyframes logoGlowPulse{
  0%,100%{ opacity:.78; transform:scale(.98); }
  50%{ opacity:1; transform:scale(1.03); }
}
@media (max-width:768px){
  .logo-badge{ width:190px !important; height:190px !important; }
  .logo-badge-img{ width:112px !important; }
}


/* holographic animated logo */
.hero-logo img{animation:holoFloat 6s ease-in-out infinite;filter:drop-shadow(0 0 20px rgba(46,126,255,.45));}
@keyframes holoFloat{
0%{transform:translateY(0) rotate(0deg) scale(1)}
25%{transform:translateY(-8px) rotate(1deg) scale(1.02)}
50%{transform:translateY(-14px) rotate(0deg) scale(1.03)}
75%{transform:translateY(-8px) rotate(-1deg) scale(1.02)}
100%{transform:translateY(0) rotate(0deg) scale(1)}
}


/* === Exact holographic globe logo update ===
   Uses the uploaded globe image directly, removes prior badge ring and blue/gold decorative circles. */
.logo-badge-holographic{
  width:260px !important;
  height:260px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  isolation:isolate;
  animation:holoGlobeFloat 6.5s ease-in-out infinite;
}
.logo-badge-holographic::before,
.logo-badge-holographic::after,
.logo-badge-holographic .logo-badge-ring{
  display:none !important;
  content:none !important;
}
.logo-badge-holographic .logo-holo-img,
.logo-badge-img.logo-holo-img{
  width:230px !important;
  max-width:100% !important;
  max-height:100% !important;
  height:auto !important;
  aspect-ratio:1/1 !important;
  object-fit:contain !important;
  border-radius:0 !important;
  opacity:1 !important;
  filter:drop-shadow(0 0 16px rgba(46,126,255,.50)) drop-shadow(0 0 34px rgba(0,229,212,.22)) !important;
  animation:holoGlobePulse 4.8s ease-in-out infinite !important;
}
.services-visual,
.services-visual .orb,
.services-visual .orb-one,
.services-visual .orb-two{
  display:none !important;
}
@keyframes holoGlobeFloat{
  0%,100%{ transform:translate3d(0,0,0) rotate(0deg) scale(1); }
  35%{ transform:translate3d(0,-10px,0) rotate(.8deg) scale(1.015); }
  70%{ transform:translate3d(0,5px,0) rotate(-.8deg) scale(1.005); }
}
@keyframes holoGlobePulse{
  0%,100%{ filter:drop-shadow(0 0 16px rgba(46,126,255,.50)) drop-shadow(0 0 34px rgba(0,229,212,.22)); }
  50%{ filter:drop-shadow(0 0 24px rgba(46,126,255,.78)) drop-shadow(0 0 46px rgba(0,229,212,.34)); }
}
@media (max-width:768px){
  .logo-badge-holographic{ width:190px !important; height:190px !important; }
  .logo-badge-holographic .logo-holo-img{ width:180px !important; }
}


/* === FINAL: transparent animated holographic globe logo, no square image === */
.logo-badge-holographic.rawasikh-holo-logo{
  width:280px !important;
  height:300px !important;
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  overflow:visible !important;
  isolation:isolate !important;
  animation:holoLogoFloat 7.5s ease-in-out infinite !important;
}
.logo-badge-holographic.rawasikh-holo-logo::before,
.logo-badge-holographic.rawasikh-holo-logo::after{
  display:none !important;
  content:none !important;
}
.rawasikh-holo-logo .holo-sphere{
  position:relative;
  width:245px;
  height:245px;
  border-radius:50%;
  background:
    radial-gradient(circle at 48% 42%, rgba(56,217,255,.18) 0 16%, rgba(46,126,255,.12) 32%, rgba(0,15,34,.25) 62%, transparent 74%),
    radial-gradient(circle at 56% 50%, rgba(2,24,52,.65), rgba(1,12,29,.14) 58%, transparent 74%);
  box-shadow:
    0 0 26px rgba(56,217,255,.30),
    0 0 72px rgba(46,126,255,.24),
    inset 0 0 34px rgba(56,217,255,.18);
  transform-style:preserve-3d;
}
.rawasikh-holo-logo .holo-sphere::before{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:50%;
  background:
    radial-gradient(circle at 20% 25%, rgba(232,244,255,.92) 0 1.4px, transparent 2.2px),
    radial-gradient(circle at 65% 18%, rgba(56,217,255,.85) 0 1.3px, transparent 2.1px),
    radial-gradient(circle at 74% 58%, rgba(232,244,255,.78) 0 1.2px, transparent 2px),
    radial-gradient(circle at 42% 72%, rgba(46,126,255,.85) 0 1.4px, transparent 2.2px),
    repeating-radial-gradient(circle at 50% 50%, rgba(56,217,255,.20) 0 1px, transparent 1px 18px),
    repeating-linear-gradient(28deg, transparent 0 18px, rgba(56,217,255,.18) 19px, transparent 20px),
    repeating-linear-gradient(150deg, transparent 0 22px, rgba(46,126,255,.13) 23px, transparent 24px);
  opacity:.72;
  mix-blend-mode:screen;
  animation:holoGridSpin 17s linear infinite;
  filter:drop-shadow(0 0 8px rgba(56,217,255,.45));
}
.rawasikh-holo-logo .holo-sphere::after{
  content:"";
  position:absolute;
  inset:22px 6px;
  border-radius:50%;
  border:1px solid rgba(56,217,255,.32);
  transform:rotateX(64deg) rotateZ(-8deg);
  box-shadow:0 0 16px rgba(56,217,255,.25);
  animation:holoOrbitSpin 9s linear infinite;
}
.rawasikh-holo-logo .holo-orbit{
  position:absolute;
  left:50%;
  top:50%;
  width:280px;
  height:70px;
  margin-left:-140px;
  margin-top:-35px;
  border-radius:50%;
  border:1.3px solid rgba(56,217,255,.46);
  box-shadow:0 0 12px rgba(56,217,255,.26);
  pointer-events:none;
  mix-blend-mode:screen;
}
.rawasikh-holo-logo .holo-orbit-1{ transform:rotate(-12deg); animation:holoOrbitA 8s linear infinite; }
.rawasikh-holo-logo .holo-orbit-2{ transform:rotate(24deg) scale(.92); border-color:rgba(46,126,255,.38); animation:holoOrbitB 10s linear infinite reverse; }
.rawasikh-holo-logo .holo-orbit-3{ transform:rotate(72deg) scale(.78); border-color:rgba(232,244,255,.24); animation:holoOrbitC 12s linear infinite; }
.rawasikh-holo-logo .holo-node{
  position:absolute;
  width:6px;
  height:6px;
  border-radius:50%;
  background:#38d9ff;
  box-shadow:0 0 14px #38d9ff,0 0 26px rgba(46,126,255,.5);
  animation:holoNodePulse 2.8s ease-in-out infinite;
  z-index:4;
}
.rawasikh-holo-logo .holo-node-1{ left:32px; top:70px; animation-delay:.2s; }
.rawasikh-holo-logo .holo-node-2{ right:38px; top:95px; animation-delay:1.1s; }
.rawasikh-holo-logo .holo-node-3{ left:122px; bottom:24px; animation-delay:1.8s; }
.rawasikh-holo-logo .holo-logo-r{
  position:absolute;
  inset:20px 44px 22px 42px;
  width:auto !important;
  height:auto !important;
  z-index:5;
  overflow:visible !important;
  filter:
    drop-shadow(0 0 8px rgba(56,217,255,.95))
    drop-shadow(0 0 22px rgba(46,126,255,.68))
    drop-shadow(0 16px 28px rgba(0,0,0,.38));
  animation:holoRFloat 5.2s ease-in-out infinite !important;
}
.rawasikh-holo-logo .holo-logo-r .rk-stroke{
  fill:url(#rawasikhStrokeGrad) !important;
  stroke:url(#rawasikhStrokeGrad) !important;
}
.rawasikh-holo-logo .holo-logo-r .rk-body,
.rawasikh-holo-logo .holo-logo-r .rk-foot{
  fill:#062a4f !important;
  stroke:#062a4f !important;
}
.rawasikh-holo-logo .holo-logo-r .rk-accent{
  fill:#2e7eff !important;
  stroke:#2e7eff !important;
}
.rawasikh-holo-logo .holo-base-glow{
  position:absolute;
  left:50%;
  bottom:18px;
  width:150px;
  height:22px;
  transform:translateX(-50%);
  border-radius:50%;
  background:radial-gradient(ellipse at center, rgba(56,217,255,.9), rgba(46,126,255,.38) 42%, transparent 72%);
  filter:blur(2px);
  opacity:.85;
  animation:holoBasePulse 3.5s ease-in-out infinite;
  z-index:0;
}
@keyframes holoLogoFloat{
  0%,100%{ transform:translate3d(0,0,0) rotate(0deg) scale(1); }
  50%{ transform:translate3d(0,-10px,0) rotate(.7deg) scale(1.015); }
}
@keyframes holoRFloat{
  0%,100%{ transform:translate3d(0,0,0) rotate(0deg); }
  50%{ transform:translate3d(0,-4px,0) rotate(-.8deg); }
}
@keyframes holoGridSpin{ to{ transform:rotate(360deg); } }
@keyframes holoOrbitSpin{ to{ transform:rotateX(64deg) rotateZ(352deg); } }
@keyframes holoOrbitA{ to{ transform:rotate(348deg); } }
@keyframes holoOrbitB{ to{ transform:rotate(384deg) scale(.92); } }
@keyframes holoOrbitC{ to{ transform:rotate(432deg) scale(.78); } }
@keyframes holoNodePulse{
  0%,100%{ opacity:.45; transform:scale(.75); }
  50%{ opacity:1; transform:scale(1.2); }
}
@keyframes holoBasePulse{
  0%,100%{ opacity:.55; transform:translateX(-50%) scaleX(.9); }
  50%{ opacity:.95; transform:translateX(-50%) scaleX(1.12); }
}
@media (max-width:768px){
  .logo-badge-holographic.rawasikh-holo-logo{ width:210px !important; height:230px !important; }
  .rawasikh-holo-logo .holo-sphere{ width:185px; height:185px; }
  .rawasikh-holo-logo .holo-orbit{ width:215px; height:54px; margin-left:-107.5px; margin-top:-27px; }
  .rawasikh-holo-logo .holo-logo-r{ inset:16px 35px 18px 32px; }
  .rawasikh-holo-logo .holo-base-glow{ width:118px; bottom:15px; }
}

/* =========================================================
   Rawasikh Premium Animated Workflow Section
   Replaces old raster workflow picture with live HTML/CSS UI.
   ========================================================= */
.how-layout.rawasikh-exact-workflow-layout,
.rawasikh-exact-workflow-card,
.rawasikh-exact-workflow-card img{display:none !important;}
.how-it-works{padding:90px 0 110px !important;}
.rawasikh-workflow-pro{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  width:min(1180px,100%);
  margin:38px auto 0;
  padding:46px 52px 42px;
  border:1px solid rgba(0,191,255,.45);
  border-radius:28px;
  background:
    radial-gradient(circle at 18% 12%, rgba(46,126,255,.18), transparent 35%),
    radial-gradient(circle at 85% 85%, rgba(0,229,212,.12), transparent 40%),
    linear-gradient(135deg, rgba(4,18,35,.92), rgba(5,14,29,.96));
  box-shadow:0 30px 90px rgba(0,0,0,.38), inset 0 0 42px rgba(36,180,255,.08);
  direction:rtl;
}
.rawasikh-workflow-pro *{box-sizing:border-box;}
.rw-pro-title{text-align:center; margin-bottom:34px;}
.rw-pro-title h3{font-size:clamp(28px,3.4vw,46px); line-height:1.25; margin:0 0 12px; color:#fff; text-shadow:0 0 32px rgba(56,217,255,.22);}
.rw-pro-title p{margin:0; color:rgba(232,244,255,.72); font-size:clamp(14px,1.25vw,18px);}
.rw-pro-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:34px; align-items:stretch; margin-inline-end:315px;}
.rw-pro-stage{position:relative; min-height:360px; padding:28px 22px 24px; border:1px solid rgba(0,191,255,.34); border-radius:18px; background:linear-gradient(180deg, rgba(9,30,57,.76), rgba(4,13,27,.62)); box-shadow:inset 0 0 36px rgba(0,120,255,.06), 0 18px 45px rgba(0,0,0,.22); overflow:hidden;}
.rw-pro-stage::before{content:""; position:absolute; inset:-1px; border-radius:18px; background:linear-gradient(120deg, transparent, rgba(0,229,255,.16), transparent); transform:translateX(120%); animation:rwCardSheen 6s ease-in-out infinite; pointer-events:none;}
.rw-pro-stage:nth-of-type(3)::before{animation-delay:1s}.rw-pro-stage:nth-of-type(5)::before{animation-delay:2s}.rw-pro-stage:nth-of-type(7)::before{animation-delay:3s}
@keyframes rwCardSheen{0%,70%,100%{transform:translateX(120%)} 82%{transform:translateX(-120%)}}
.rw-stage-head{color:#35ddff; font-weight:800; font-size:20px; margin-bottom:24px; text-align:center;}
.rw-pro-stage p{position:absolute; left:20px; right:20px; bottom:22px; margin:0; color:rgba(232,244,255,.78); line-height:1.75; font-size:14.5px; text-align:center;}
.rw-flow-arrow{position:relative; width:0; height:0; display:none;}
.rw-flow-arrow::after{content:""; position:absolute; top:160px; right:-27px; width:34px; height:20px; clip-path:polygon(0 0,100% 50%,0 100%,22% 50%); background:#12cfff; filter:drop-shadow(0 0 14px #0ccfff); animation:rwArrowPulse 1.8s ease-in-out infinite;}
@keyframes rwArrowPulse{50%{opacity:.55; transform:translateX(-6px)}}
.rw-gauge{width:172px; height:172px; margin:10px auto 24px; border-radius:50%; display:grid; place-items:center; background:conic-gradient(#27d9ff 0 72%, #1265ff 72% 92%, rgba(23,62,105,.36) 92% 100%); position:relative; box-shadow:0 0 42px rgba(30,174,255,.28); animation:rwGaugeGlow 2.7s ease-in-out infinite;}
.rw-gauge::after{content:""; position:absolute; inset:18px; border-radius:50%; background:#07182f; box-shadow:inset 0 0 24px rgba(16,140,255,.22);}
.rw-gauge span,.rw-gauge small{position:relative; z-index:2; display:block; text-align:center;}
.rw-gauge span{font-size:43px; font-weight:800; color:#fff; line-height:1;}
.rw-gauge small{font-size:14px; color:#a9dfff; margin-top:8px;}
@keyframes rwGaugeGlow{50%{filter:brightness(1.22)}}
.rw-mini-chart{width:100%; height:86px; margin-top:8px; overflow:visible;}
.rw-mini-chart polyline{fill:none; stroke:#20c9ff; stroke-width:4; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 0 8px #20c9ff); stroke-dasharray:280; animation:rwLineDraw 4s ease-in-out infinite;}
.rw-mini-chart circle{fill:#3de5ff; filter:drop-shadow(0 0 8px #3de5ff); animation:rwDotPulse 1.8s ease-in-out infinite;}
@keyframes rwLineDraw{0%{stroke-dashoffset:280} 45%,100%{stroke-dashoffset:0}}@keyframes rwDotPulse{50%{opacity:.45; transform:scale(.9)}}
.rw-auto-map{position:relative; height:188px; margin-top:20px;}
.rw-auto-map .node{position:absolute; width:62px; height:62px; display:grid; place-items:center; border:2px solid #08caff; border-radius:12px; background:rgba(7,33,65,.68); box-shadow:0 0 18px rgba(0,200,255,.38); animation:rwNodeFloat 3s ease-in-out infinite;}
.rw-auto-map .node svg{width:32px; height:32px; fill:none; stroke:#28dbff; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;}
.rw-auto-map .n1{right:20px; top:5px}.rw-auto-map .n2{left:22px; top:5px; border-radius:50%}.rw-auto-map .n3{right:20px; bottom:12px}.rw-auto-map .n4{left:22px; bottom:12px; border-radius:50%}
.rw-auto-map .line{position:absolute; display:block; background:linear-gradient(90deg, transparent, #16d5ff, transparent); height:2px; filter:drop-shadow(0 0 8px #16d5ff); animation:rwFlowLine 2.2s linear infinite;}
.rw-auto-map .l1{right:86px; top:36px; width:80px}.rw-auto-map .l2{right:50px; top:92px; width:150px; transform:rotate(90deg)}.rw-auto-map .l3{right:86px; bottom:42px; width:80px}
@keyframes rwFlowLine{0%{opacity:.25; background-position:-80px 0} 50%{opacity:1} 100%{opacity:.25; background-position:80px 0}}@keyframes rwNodeFloat{50%{transform:translateY(-5px)}}
.rw-approval-list{display:grid; gap:22px; margin-top:22px;}
.rw-approval-list span{display:flex; align-items:center; justify-content:space-between; padding:16px 18px; border-radius:14px; background:linear-gradient(90deg, rgba(0,0,0,.34), rgba(0,191,255,.05)); box-shadow:inset 0 0 18px rgba(0,197,255,.05);}
.rw-approval-list b{font-size:17px; color:#2fff8c}.rw-approval-list .waiting b{color:#ffbf24}.rw-approval-list i{font-style:normal; width:34px; height:34px; border-radius:50%; display:grid; place-items:center; color:#0dffef; border:2px solid #0bdfff; box-shadow:0 0 16px rgba(0,220,255,.35); animation:rwIconPop 2s ease-in-out infinite;}
@keyframes rwIconPop{50%{transform:scale(1.08)}}
.rw-bars{height:146px; display:flex; gap:14px; align-items:flex-end; justify-content:center; margin-top:26px;}
.rw-bars i{width:24px; border:2px solid #1ccfff; border-radius:4px 4px 0 0; background:linear-gradient(180deg, rgba(41,217,255,.65), rgba(46,126,255,.15)); box-shadow:0 0 18px rgba(0,200,255,.22); animation:rwBarUp 1.8s ease-in-out infinite;}
.rw-bars i:nth-child(1){height:42px}.rw-bars i:nth-child(2){height:66px; animation-delay:.12s}.rw-bars i:nth-child(3){height:88px; animation-delay:.24s}.rw-bars i:nth-child(4){height:112px; animation-delay:.36s}.rw-bars i:nth-child(5){height:136px; animation-delay:.48s}
@keyframes rwBarUp{50%{transform:scaleY(.78); filter:brightness(1.35)}}
.rw-pie{width:70px; height:70px; border-radius:50%; margin:18px auto 0; background:conic-gradient(#14d7ff 0 75%, rgba(46,126,255,.38) 75% 100%); box-shadow:0 0 24px rgba(20,215,255,.24); animation:rwSpin 6s linear infinite;}
@keyframes rwSpin{to{transform:rotate(360deg)}}
.rw-pro-benefits{position:absolute; top:155px; bottom:150px; right:auto; left:52px; width:270px; display:grid; gap:18px; align-content:space-between; padding-inline-start:24px; border-inline-start:1px solid rgba(44,199,255,.28);}
.rw-benefit-track{position:absolute; right:-18px; top:0; bottom:0; width:2px; background:linear-gradient(#21dcff,#386bff,#21dcff); opacity:.65; box-shadow:0 0 18px #1fd8ff;}
.rw-benefit-track i{position:absolute; right:50%; transform:translateX(50%); width:14px; height:14px; background:#27d9ff; border-radius:50%; box-shadow:0 0 20px #27d9ff; animation:rwTrackPulse 2.6s ease-in-out infinite;}
.rw-benefit-track i:nth-child(1){top:0}.rw-benefit-track i:nth-child(2){top:33%; animation-delay:.4s}.rw-benefit-track i:nth-child(3){top:66%; animation-delay:.8s}.rw-benefit-track i:nth-child(4){bottom:0; animation-delay:1.2s}
@keyframes rwTrackPulse{50%{transform:translateX(50%) scale(1.35); opacity:.6}}
.rw-pro-benefits article{display:flex; gap:18px; align-items:flex-start;}
.rw-benefit-icon{flex:0 0 72px; width:72px; height:72px; border:1px solid rgba(44,199,255,.62); border-radius:50%; display:grid; place-items:center; background:radial-gradient(circle, rgba(18,179,255,.22), rgba(5,14,29,.66)); box-shadow:0 0 28px rgba(31,184,255,.2); animation:rwIconRing 4s ease-in-out infinite;}
.rw-benefit-icon svg{width:36px; height:36px; fill:none; stroke:#eaf5ff; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(0 0 10px #24d3ff);}
.rw-pro-benefits h4{color:#fff; margin:0 0 8px; font-size:18px;}
.rw-pro-benefits p{color:rgba(232,244,255,.72); margin:0; line-height:1.7; font-size:14px;}
@keyframes rwIconRing{50%{box-shadow:0 0 40px rgba(31,184,255,.38)}}
.rw-particle-wave{position:relative; height:100px; margin:22px 310px 24px 0; overflow:hidden;}
.rw-particle-wave::before,.rw-particle-wave::after{content:""; position:absolute; left:0; right:0; height:70px; bottom:12px; background:repeating-radial-gradient(circle at 50% 50%, rgba(41,217,255,.75) 0 2px, transparent 3px 28px); mask-image:linear-gradient(90deg, transparent, #000 10%, #000 90%, transparent); opacity:.7; animation:rwWaveMove 10s linear infinite;}
.rw-particle-wave::after{background:repeating-radial-gradient(circle at 50% 50%, rgba(255,166,35,.7) 0 2px, transparent 3px 32px); opacity:.42; animation-duration:13s; transform:translateY(14px)}
.rw-particle-wave span{position:absolute; width:100%; height:1px; bottom:44px; background:linear-gradient(90deg, transparent, rgba(39,217,255,.7), transparent); box-shadow:0 0 14px rgba(39,217,255,.8); transform:translateY(calc(var(--i,0) * 8px)); animation:rwWaveLine 4s ease-in-out infinite;}
.rw-particle-wave span:nth-child(1){--i:-3}.rw-particle-wave span:nth-child(2){--i:-2; animation-delay:.2s}.rw-particle-wave span:nth-child(3){--i:-1; animation-delay:.4s}.rw-particle-wave span:nth-child(4){--i:1; animation-delay:.6s}.rw-particle-wave span:nth-child(5){--i:2; animation-delay:.8s}.rw-particle-wave span:nth-child(6){--i:3; animation-delay:1s}
@keyframes rwWaveMove{to{background-position:260px 0}}@keyframes rwWaveLine{50%{transform:translateY(calc(var(--i,0) * 8px - 8px)); opacity:.35}}
.rw-bottom-icons{display:grid; grid-template-columns:repeat(4,1fr); gap:34px; margin-inline-end:310px; text-align:center;}
.rw-bottom-icons span{display:grid; place-items:center; gap:10px; color:#2addff; font-weight:800;}
.rw-bottom-icons svg{width:58px; height:58px; padding:12px; border-radius:50%; fill:none; stroke:#26d7ff; stroke-width:1.7; background:radial-gradient(circle, rgba(36,193,255,.16), transparent 70%); filter:drop-shadow(0 0 14px #16c8ff); animation:rwNodeFloat 3.8s ease-in-out infinite;}
.rw-bottom-icons b{font-size:16px; color:#2addff;}
.rw-pro-glow{position:absolute; width:360px; height:360px; border-radius:50%; pointer-events:none; z-index:-1; filter:blur(40px); opacity:.24; animation:rwGlowDrift 12s ease-in-out infinite;}.rw-glow-1{background:#066cff; top:-170px; right:10%;}.rw-glow-2{background:#00e5d4; bottom:-180px; left:10%; animation-delay:4s}@keyframes rwGlowDrift{50%{transform:translate3d(34px,22px,0) scale(1.08)}}
html[dir="ltr"] .rawasikh-workflow-pro{direction:ltr;}html[dir="ltr"] .rw-pro-grid{margin-inline-end:0; margin-inline-start:315px;}html[dir="ltr"] .rw-pro-benefits{left:auto; right:52px; border-inline-start:0; border-inline-end:1px solid rgba(44,199,255,.28); padding-inline-start:0; padding-inline-end:24px;}html[dir="ltr"] .rw-particle-wave,html[dir="ltr"] .rw-bottom-icons{margin-inline-end:0;margin-inline-start:310px;}
@media (max-width:1100px){.rawasikh-workflow-pro{padding:34px 24px}.rw-pro-grid{margin:0; grid-template-columns:repeat(2,1fr)}.rw-pro-benefits{position:relative; inset:auto; width:auto; margin-top:34px; padding:0; border:0; grid-template-columns:repeat(2,1fr)}.rw-benefit-track{display:none}.rw-particle-wave,.rw-bottom-icons{margin:26px 0 0}.rw-bottom-icons{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){.rawasikh-workflow-pro{border-radius:20px;padding:28px 16px}.rw-pro-grid{grid-template-columns:1fr; gap:18px}.rw-pro-stage{min-height:310px}.rw-pro-benefits{grid-template-columns:1fr}.rw-bottom-icons{grid-template-columns:1fr 1fr; gap:22px}.rw-pro-title h3{font-size:28px}.rw-gauge{width:145px;height:145px}.rw-gauge span{font-size:34px}}
@media (prefers-reduced-motion:reduce){.rawasikh-workflow-pro *,.rawasikh-workflow-pro::before,.rawasikh-workflow-pro::after{animation:none!important;transition:none!important}}


/* Workflow alignment improvements */
.workflow-section .workflow-grid,
.workflow-grid{
display:grid;
grid-template-columns:320px 1fr;
gap:56px;
align-items:center;
}
.workflow-features{
display:flex;
flex-direction:column;
gap:34px;
}
.workflow-feature{
display:flex;
align-items:flex-start;
gap:18px;
}
.workflow-feature .icon{
width:72px;
height:72px;
flex:0 0 72px;
display:flex;
align-items:center;
justify-content:center;
}
.workflow-feature h3{
margin:0 0 10px;
font-size:30px;
line-height:1.2;
font-weight:700;
}
.workflow-feature p{
margin:0;
font-size:18px;
line-height:1.9;
opacity:.9;
max-width:340px;
}
.workflow-cards{
display:flex;
gap:22px;
align-items:stretch;
}
.workflow-card{
padding:28px 22px;
display:flex;
flex-direction:column;
justify-content:space-between;
text-align:center;
}
.workflow-card h4{
font-size:28px;
margin:0 0 18px;
line-height:1.3;
}
.workflow-card p{
font-size:17px;
line-height:1.8;
margin-top:18px;
}
.badge{
display:inline-flex;
align-items:center;
justify-content:center;
padding:10px 18px;
margin:10px auto;
}
