/* Raadhaye Elements | "Our Work" widgets. Font: Poppins. */
.rw, .rw *, .rw *::before, .rw *::after { box-sizing:border-box; }
.rw {
  --rw-red:#f21e2b; --rw-bg:#0e0e10; --rw-text:#fff; --rw-mute:#b9b4b4; --rw-card:#18181b; --rw-line:rgba(255,255,255,.14);
  position:relative; display:block; width:100%; margin:0; padding:clamp(56px,8vw,104px) 0;
  background-color:var(--rw-bg); color:var(--rw-text);
  font-family:"Poppins",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif; font-size:15px; line-height:1.7; overflow-wrap:anywhere;
}
.rw--light { --rw-bg:#fff; --rw-text:#131313; --rw-mute:#5b5655; --rw-card:#f8f4f1; --rw-line:#e6dfda; }
.rw--red { --rw-bg:linear-gradient(135deg,#5c0a12,#b01022 55%,#e5212f); --rw-text:#fff; --rw-mute:rgba(255,255,255,.88); --rw-card:rgba(255,255,255,.12); --rw-line:rgba(255,255,255,.3); --rw-red:#fff; background:var(--rw-bg); }
.rw--full { left:50%; width:100vw; max-width:100vw; margin-left:-50vw; }
.rw[id] { scroll-margin-top:90px; }
.rw-wrap { width:100%; max-width:1280px; margin:0 auto; padding-inline:clamp(18px,4vw,48px); }
.rw a { text-decoration:none; }
.rw a:focus-visible, .rw button:focus-visible { outline:2px solid var(--rw-red); outline-offset:3px; }
.rw img { display:block; max-width:100%; height:auto; }
.rw [hidden] { display:none!important; }

/* headings */
.rw-head { max-width:760px; margin:0 0 clamp(28px,4vw,48px); }
.rw-head--c { margin-inline:auto; text-align:center; }
.rw-eyebrow { display:inline-flex; align-items:center; gap:12px; margin:0 0 14px; color:var(--rw-red); font-size:12px; font-weight:700; letter-spacing:.26em; text-transform:uppercase; }
.rw-eyebrow::before, .rw-eyebrow::after { content:""; width:34px; height:2px; background:currentColor; }
.rw-eyebrow--l::after { display:none; }
.rw-title, .rw-h1 { margin:0 0 14px; color:var(--rw-text); font-family:inherit; font-weight:700; line-height:1.15; letter-spacing:-.01em; }
.rw-title { font-size:clamp(28px,4vw,46px); }
.rw-h1 { font-size:clamp(34px,5.4vw,64px); line-height:1.08; }
.rw-title em, .rw-h1 em { font-style:normal; color:var(--rw-red); }
.rw--red .rw-title em { text-decoration:underline; text-decoration-thickness:3px; text-underline-offset:6px; }
.rw-lead { margin:0; color:var(--rw-mute); font-size:clamp(15px,1.4vw,17px); line-height:1.8; }

/* buttons */
.rw-btns { display:flex; flex-wrap:wrap; gap:14px; margin-top:30px; }
.rw-btns--c { justify-content:center; }
.rw-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding:0 28px; border:1.5px solid transparent; border-radius:12px; font-family:inherit; font-size:15px; font-weight:600; line-height:1; cursor:pointer; transition:transform .2s,box-shadow .2s,background .2s,color .2s,border-color .2s; }
.rw-btn:hover { transform:translateY(-2px); }
.rw-btn i, .rw-btn svg { width:1.1em; height:1.1em; fill:currentColor; }
.rw-btn--red { background:var(--rw-red); color:#fff!important; box-shadow:0 16px 30px -16px var(--rw-red); }
.rw-btn--ghost { background:transparent; border-color:var(--rw-text); color:var(--rw-text)!important; }
.rw-btn--ghost:hover { background:var(--rw-text); color:var(--rw-bg)!important; }
.rw--red .rw-btn--ghost:hover { color:#b01022!important; }
.rw-btn--white { background:#fff; color:#b01022!important; box-shadow:0 16px 30px -16px rgba(0,0,0,.5); }
.rw-empty { padding:24px; border:2px dashed var(--rw-line); border-radius:14px; color:var(--rw-mute); text-align:center; }

/* hero */
.rw-hero { background-image:radial-gradient(60% 80% at 92% 40%,rgba(176,16,34,.5),transparent 65%); }
.rw-hero-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:clamp(32px,5vw,72px); align-items:center; }
.rw-hero .rw-lead { max-width:520px; }
.rw-stats { display:flex; flex-wrap:wrap; gap:18px 44px; margin:34px 0 0; padding:26px 0 0; list-style:none; border-top:1px solid var(--rw-line); }
.rw-stats li { margin:0; padding:0; }
.rw-stats b { display:block; font-size:clamp(24px,2.6vw,32px); font-weight:700; line-height:1.2; }
.rw-stats span { color:var(--rw-mute); font-size:12.5px; }
.rw-collage { position:relative; width:100%; aspect-ratio:1/1.08; }
.rw-c { position:absolute; margin:0; overflow:hidden; border:3px solid rgba(255,255,255,.9); border-radius:20px; background:var(--rw-card); box-shadow:0 30px 60px -24px rgba(0,0,0,.7); }
.rw-c img { width:100%; height:100%; object-fit:cover; }
.rw-c1 { left:0; top:9%; width:58%; aspect-ratio:3/4; transform:rotate(-3deg); z-index:1; }
.rw-c2 { right:0; top:0; width:44%; aspect-ratio:4/5; transform:rotate(4deg); z-index:2; }
.rw-c3 { right:3%; bottom:0; width:44%; aspect-ratio:4/5; transform:rotate(-2deg); z-index:3; }
.rw-chip { position:absolute; z-index:4; display:inline-flex; align-items:center; gap:8px; padding:9px 15px; border-radius:999px; background:#fff; color:#131313; font-size:12.5px; font-weight:600; line-height:1; box-shadow:0 14px 30px -12px rgba(0,0,0,.5); }
.rw-chip::before { content:""; width:8px; height:8px; border-radius:50%; background:var(--rw-red); }
.rw-chip1 { right:6%; top:52%; }
.rw-chip2 { left:2%; bottom:5%; }

/* deity cards */
.rw-dgrid { display:grid; gap:clamp(12px,2vw,22px); }
.rw-dcard { display:flex; flex-direction:column; gap:4px; padding:10px 10px 14px; border:1px solid var(--rw-line); border-radius:18px; background:var(--rw-card); color:var(--rw-text)!important; text-align:center; transition:transform .25s,box-shadow .25s,border-color .25s; }
.rw-dcard:hover { transform:translateY(-4px); border-color:var(--rw-red); box-shadow:0 22px 40px -26px rgba(0,0,0,.45); }
.rw-dimg { display:block; aspect-ratio:1/1; margin-bottom:10px; overflow:hidden; border-radius:12px; background:rgba(0,0,0,.06); }
.rw-dimg img { width:100%; height:100%; object-fit:cover; transition:transform .5s; }
.rw-dcard:hover .rw-dimg img { transform:scale(1.06); }
.rw-dcard strong { font-size:15px; font-weight:600; line-height:1.3; }
.rw-dcard small { color:var(--rw-mute); font-size:12px; }

/* gallery */
.rw-tabs, .rw-types { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin:0 0 20px; }
.rw-tabs button, .rw-types button { display:inline-flex; align-items:center; gap:6px; padding:10px 18px; border:1px solid var(--rw-line); border-radius:999px; background:transparent; color:var(--rw-text); font-family:inherit; font-size:13.5px; font-weight:500; line-height:1.2; cursor:pointer; transition:background .2s,border-color .2s,color .2s; }
.rw-tabs button:hover, .rw-types button:hover { border-color:var(--rw-red); }
.rw-tabs button.is-on, .rw-types button.is-on { border-color:var(--rw-red); background:var(--rw-red); color:#fff; }
.rw-tabs i, .rw-types i { font-style:normal; opacity:.7; font-size:.9em; }
.rw-types { margin-top:-6px; }
.rw-types button { padding:7px 16px; font-size:12.5px; }
.rw-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.rw-tile { position:relative; display:block; aspect-ratio:4/5; overflow:hidden; border-radius:16px; background:var(--rw-card); color:#fff!important; cursor:zoom-in; isolation:isolate; }
.rw-tile.is-hidden { display:none; }
.rw-media, .rw-media img, .rw-media video { position:absolute; inset:0; width:100%; height:100%; }
.rw-media img, .rw-media video { object-fit:cover; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
.rw-tile:hover .rw-media img, .rw-tile:hover .rw-media video { transform:scale(1.06); }
.rw-cap { position:absolute; left:0; right:0; bottom:0; z-index:1; display:flex; flex-direction:column; gap:2px; padding:42px 14px 13px; background:linear-gradient(transparent,rgba(0,0,0,.78)); pointer-events:none; }
.rw-cap small { color:#ff8a93; font-size:10.5px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
.rw-cap b { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; font-size:13.5px; font-weight:500; line-height:1.35; }
.rw-count { position:absolute; top:12px; right:12px; z-index:2; display:inline-flex; align-items:center; gap:5px; padding:5px 10px; border-radius:999px; background:rgba(0,0,0,.6); backdrop-filter:blur(4px); color:#fff; font-size:12px; font-weight:600; line-height:1; }
.rw-count--l { right:auto; left:12px; }
.rw-play { position:absolute; top:12px; right:12px; z-index:2; width:36px; height:36px; border-radius:50%; background:rgba(0,0,0,.55); backdrop-filter:blur(4px); }
.rw-play::after { content:""; position:absolute; left:14px; top:11px; border-left:11px solid #fff; border-top:7px solid transparent; border-bottom:7px solid transparent; }
.rw-more-wrap { display:flex; justify-content:center; margin-top:34px; }

/* process */
.rw-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(18px,2.4vw,30px); margin:0; padding:0; list-style:none; }
.rw-step { margin:0; padding:0; }
.rw-step-img { position:relative; display:block; aspect-ratio:4/3; margin-bottom:18px; overflow:hidden; border-radius:18px; background:var(--rw-card); }
.rw-step-img img { width:100%; height:100%; object-fit:cover; }
.rw-step-img em { position:absolute; left:14px; top:14px; display:grid; place-items:center; width:42px; height:42px; border-radius:50%; background:var(--rw-red); color:#fff; font-size:14px; font-style:normal; font-weight:700; box-shadow:0 10px 20px -8px rgba(0,0,0,.5); }
.rw-step h3 { margin:0 0 8px; color:var(--rw-text); font-family:inherit; font-size:18px; font-weight:600; line-height:1.3; }
.rw-step p { margin:0; color:var(--rw-mute); font-size:14px; line-height:1.75; }

/* cta */
.rw-cta .rw-wrap { max-width:900px; text-align:center; }
.rw-cta .rw-head { margin-bottom:0; }

/* lightbox (shared, appended to body) */
html.rwlb-lock { overflow:hidden; }
.rwlb { position:fixed; inset:0; z-index:2147483000; display:none; flex-direction:column; align-items:center; justify-content:center; padding:56px 64px 96px; background:rgba(8,8,10,.95); font-family:"Poppins",system-ui,sans-serif; color:#fff; }
.rwlb.is-open { display:flex; }
.rwlb-stage { display:flex; align-items:center; justify-content:center; width:100%; height:100%; min-height:0; }
.rwlb-stage img, .rwlb-stage video { max-width:100%; max-height:100%; border-radius:10px; box-shadow:0 30px 80px -20px rgba(0,0,0,.8); background:#000; }
.rwlb button { position:absolute; display:grid; place-items:center; width:46px; height:46px; padding:0; border:0; border-radius:50%; background:rgba(255,255,255,.14); color:#fff; font-size:26px; line-height:1; cursor:pointer; transition:background .2s; }
.rwlb button:hover { background:#f21e2b; }
.rwlb button:focus-visible, .rwlb a:focus-visible { outline:2px solid #fff; outline-offset:3px; }
.rwlb-x { top:14px; right:14px; }
.rwlb-p { left:12px; top:50%; transform:translateY(-50%); }
.rwlb-n { right:12px; top:50%; transform:translateY(-50%); }
.rwlb-bar { position:absolute; left:0; right:0; bottom:0; display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px clamp(16px,4vw,48px) 18px; background:linear-gradient(transparent,rgba(0,0,0,.7)); }
.rwlb-meta { display:flex; flex-direction:column; min-width:0; }
.rwlb-meta small { color:#ff8a93; font-size:11px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; }
.rwlb-meta b { font-size:15px; font-weight:500; }
.rwlb-count { margin-left:auto; color:#cfc8c4; font-size:13px; white-space:nowrap; }
.rwlb-wa { display:inline-flex; align-items:center; padding:12px 20px; border-radius:999px; background:#25d366; color:#fff!important; font-size:13.5px; font-weight:600; line-height:1; text-decoration:none; white-space:nowrap; }
.rwlb-wa:hover { filter:brightness(.92); }

/* responsive */
@media (max-width:1024px) {
  .rw-hero-grid { grid-template-columns:minmax(0,1fr); }
  .rw-collage { max-width:560px; margin-inline:auto; }
  .rw-steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:600px) {
  .rw { font-size:14px; }
  .rw-grid { gap:10px; }
  .rw-tile { border-radius:12px; }
  .rw-cap { padding:30px 10px 10px; }
  .rw-cap b { font-size:12px; }
  .rw-cap small { font-size:9.5px; }
  .rw-btn { min-height:50px; padding:0 22px; }
  .rw-btns .rw-btn { flex:1 1 100%; }
  .rw-stats { gap:16px 28px; }
  .rw-tabs { flex-wrap:nowrap; justify-content:flex-start; margin-inline:calc(clamp(18px,4vw,48px) * -1); padding:0 clamp(18px,4vw,48px) 6px; overflow-x:auto; scrollbar-width:none; }
  .rw-tabs::-webkit-scrollbar { display:none; }
  .rw-tabs button { flex:0 0 auto; }
  .rw-steps { grid-template-columns:minmax(0,1fr); }
  .rwlb { padding:56px 10px 104px; }
  .rwlb-p, .rwlb-n { top:auto; bottom:62px; transform:none; width:42px; height:42px; }
  .rwlb-p { left:14px; }
  .rwlb-n { right:14px; }
  .rwlb-bar { flex-wrap:wrap; padding-bottom:16px; }
  .rwlb-count { order:3; }
  .rwlb-wa { margin-inline:auto; padding:11px 16px; }
}
@media (prefers-reduced-motion:reduce) { .rw *, .rw *::before, .rw *::after, .rwlb * { transition:none!important; animation:none!important; } }
