/* ROPEBYTE — PREMIUM PORTFOLIO / archive-apps.php
   Standalone, archive-scoped stylesheet. Replaces older archive CSS entirely.
   Palette: #070709, #0f1014, #db0d15, #f84141, #fff, #9ca3af.
*/
body.post-type-archive-apps,
body.post-type-archive-apps #page.site {
  background: #070709 !important;
  background-image: none !important;
}
body.post-type-archive-apps #page.site { min-height: 100vh; }
body.post-type-archive-apps #content,
body.post-type-archive-apps #primary,
body.post-type-archive-apps #main.site-main {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}
body.post-type-archive-apps #main.site-main { padding-top: 0 !important; padding-bottom: 0 !important; }
body.post-type-archive-apps #main > .rbp { max-width:none !important; margin:0 !important; }

.rbp {
  --rbp-bg: #070709;
  --rbp-soft: #0f1014;
  --rbp-card: #101115;
  --rbp-line: rgba(255,255,255,.105);
  --rbp-white: #f7f7f9;
  --rbp-muted: #9ca3af;
  --rbp-red: #db0d15;
  --rbp-red-light: #f84141;
  --rbp-max: 1280px;
  --rbp-gutter: clamp(20px, 5.1vw, 76px);
  font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.55;
  color: var(--rbp-white);
  background: var(--rbp-bg);
  -webkit-font-smoothing: antialiased;
  overflow: clip;
  isolation: isolate;
  text-align: left;
}
.rbp, .rbp *, .rbp *::before, .rbp *::after { box-sizing: border-box; }
.rbp :is(h1,h2,h3,h4,p,figure) { margin: 0 !important; padding: 0; max-width: none !important; }
.rbp :is(h1,h2,h3,h4) {
  font-family: inherit !important;
  font-style: normal !important;
  font-weight: 760 !important;
  color: var(--rbp-white) !important;
  line-height: 1.07 !important;
  letter-spacing: -.056em !important;
  text-transform: none !important;
  text-wrap: balance;
}
.rbp :is(a,button) { font-family: inherit !important; }
.rbp a { color: inherit !important; text-decoration: none !important; background: none; }
.rbp a:hover { text-decoration: none !important; }
.rbp button { cursor: pointer; }
.rbp img, .rbp svg { display:block; max-width:100%; }
.rbp :is(a,button):focus-visible { outline: 2px solid #ff858c !important; outline-offset: 4px !important; }
.rbp ::selection { background: rgba(219,13,21,.5); color: white; }
.rbp .rbp-shell { width: min(calc(100% - 2 * var(--rbp-gutter)), var(--rbp-max)); margin-inline: auto; }
.rbp .rbp-eyebrow { display:flex; align-items:center; gap:11px; font-size:10px; letter-spacing:.2em; font-weight:780; color:#bcbcc4; line-height:1.4; text-transform:uppercase; }
.rbp .rbp-eyebrow-line { display:block; flex:none; width:22px; height:2px; background:var(--rbp-red-light); box-shadow:0 0 18px rgba(248,65,65,.3); }
.rbp .rbp-btn { all:unset; box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; gap:17px; min-height:55px; padding:12px 22px !important; border:1px solid transparent !important; border-radius:12px !important; font:700 13px/1.3 Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif !important; cursor:pointer; white-space:nowrap; transition:transform .24s ease, box-shadow .24s ease, background .24s ease, border-color .24s ease; }
.rbp .rbp-btn:hover { transform:translateY(-2px); }
.rbp a.rbp-btn-primary { color:#fff !important; background:#db0d15 !important; border-color:#df1b23 !important; box-shadow:0 14px 40px rgba(219,13,21,.22); }
.rbp a.rbp-btn-primary:hover { color:#fff !important; background:#f0222c !important; box-shadow:0 18px 48px rgba(219,13,21,.34); }
.rbp a.rbp-btn-secondary { color:#f0f0f3 !important; background:#151519 !important; border-color:rgba(255,255,255,.16) !important; }
.rbp a.rbp-btn-secondary:hover { background:#1c1c22 !important; border-color:rgba(255,255,255,.35) !important; }
.rbp .rbp-btn-icon { display:grid; place-items:center; margin-left:9px; }
.rbp .rbp-btn svg { width:17px; height:17px; flex:none; }

/* HERO: asymmetric editorial headline + real project art. */
.rbp .rbp-hero { position:relative; padding-top:clamp(68px,8vw,120px); background:radial-gradient(ellipse at 91% 6%,rgba(159,11,25,.13),transparent 42%),var(--rbp-bg); }
.rbp .rbp-hero::before { content:''; position:absolute; top:0; left:50%; width:1px; height:100%; background:rgba(255,255,255,.013); pointer-events:none; }
.rbp .rbp-hero-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(380px,.86fr); align-items:center; gap:clamp(34px,5.2vw,86px); }
.rbp .rbp-hero-copy { padding:22px 0 28px; min-width:0; }
.rbp .rbp-hero h1 { margin:32px 0 28px !important; font-size:clamp(45px,4.7vw,72px) !important; font-weight:780 !important; letter-spacing:-.064em !important; line-height:1.105 !important; }
.rbp .rbp-hero h1 span { display:block; color:#fb5961; }
.rbp .rbp-hero-lead { max-width:560px !important; color:#a9a9b4; font-size:clamp(15px,1.1vw,17px); line-height:1.88; }
.rbp .rbp-hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:11px; margin-top:35px; }
.rbp .rbp-hero-foot { display:flex; flex-wrap:wrap; column-gap:23px; row-gap:9px; margin-top:56px; padding-top:22px; border-top:1px solid var(--rbp-line); color:#9999a5; font-size:11px; font-weight:650; letter-spacing:.025em; }
.rbp .rbp-hero-foot span { display:inline-flex; align-items:center; gap:8px; }
.rbp .rbp-hero-foot span:not(:first-child)::before { content:''; display:inline-block; width:3px; height:3px; margin-right:11px; border-radius:50%; background:#f84141; }
.rbp .rbp-hero-foot i { display:block; height:6px; width:6px; border-radius:50%; background:#f84141; box-shadow:0 0 12px rgba(248,65,65,.55); }
.rbp a.rbp-spotlight { position:relative; display:block; width:100%; min-height:545px; aspect-ratio: .99; overflow:hidden; border-radius:25px; border:1px solid rgba(255,255,255,.16); background:#11131a; box-shadow:0 38px 95px rgba(0,0,0,.3); isolation:isolate; }
.rbp a.rbp-spotlight:hover { border-color:rgba(255,255,255,.33); }
.rbp .rbp-spotlight-photo { position:absolute; inset:0; overflow:hidden; }
.rbp .rbp-spotlight-photo img { height:100%; width:100%; object-fit:cover; object-position:center; transition:transform .85s cubic-bezier(.2,.8,.2,1); }
.rbp a.rbp-spotlight:hover img { transform:scale(1.045); }
.rbp .rbp-spotlight::before { content:''; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,rgba(0,0,0,.57),transparent 28%,rgba(0,0,0,.08) 45%,rgba(0,0,0,.76)); pointer-events:none; }
.rbp .rbp-spotlight-top, .rbp .rbp-spotlight-bottom { position:absolute; z-index:2; display:flex; justify-content:space-between; align-items:center; left:26px; right:26px; }
.rbp .rbp-spotlight-top { top:26px; font-size:10px; font-weight:760; letter-spacing:.16em; color:#f1f1f3; justify-content:flex-start; gap:9px; }
.rbp .rbp-spotlight-mark { width:7px; height:7px; border:1.5px solid #fff; border-radius:50%; }
.rbp .rbp-spotlight-id { margin-left:auto; opacity:.7; }
.rbp .rbp-spotlight-bottom { bottom:26px; gap:20px; }
.rbp .rbp-spotlight-bottom small, .rbp .rbp-spotlight-bottom strong { display:block; }
.rbp .rbp-spotlight-bottom small { font-size:11px; font-weight:620; letter-spacing:.11em; text-transform:uppercase; color:#dfdfe4; margin-bottom:5px; }
.rbp .rbp-spotlight-bottom strong { font-size:clamp(24px,3vw,39px); letter-spacing:-.045em; font-weight:780; line-height:1.2; }
.rbp .rbp-round-arrow { width:50px; height:50px; border:1px solid rgba(255,255,255,.45); border-radius:50%; display:grid; place-items:center; background:rgba(255,255,255,.12); backdrop-filter:blur(10px); transition:background .24s,transform .24s; flex:none; }
.rbp a.rbp-spotlight:hover .rbp-round-arrow { background:#db0d15; transform:rotate(45deg); border-color:#db0d15; }
.rbp .rbp-hero-divider { display:flex; align-items:center; gap:19px; padding-top:68px; padding-bottom:30px; color:#80808e; font-weight:700; font-size:10px; letter-spacing:.14em; }
.rbp .rbp-hero-rule { display:block; height:1px; background:var(--rbp-line); flex:1; }
.rbp .rbp-down { font:normal 21px/1 Arial,sans-serif; color:#fafafa; }

/* Work / filters */
.rbp #rbp-realizacje { scroll-margin-top: 88px; }
.rbp .rbp-work { position:relative; padding:clamp(68px,7vw,108px) 0 108px; background: #0b0b0e; border-top:1px solid rgba(255,255,255,.045); }
.rbp .rbp-section-head { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:33px; }
.rbp .rbp-section-head h2 { margin:20px 0 0 !important; font-size:clamp(37px,4vw,61px) !important; }
.rbp .rbp-red-period { color:#f84141; }
.rbp .rbp-section-head > p { max-width:325px !important; color:#9d9da9; line-height:1.8; font-size:14px; padding-bottom:5px; }
.rbp .rbp-tools { display:flex; justify-content:space-between; gap:18px; align-items:center; border-block:1px solid var(--rbp-line); padding:15px 0; margin-bottom:27px; }
.rbp .rbp-filters { display:flex; flex-wrap:wrap; gap:7px; }
.rbp button.rbp-filter { all:unset; display:inline-flex; box-sizing:border-box; align-items:center; gap:9px; padding:11px 17px !important; min-height:43px; border-radius:9px !important; background:transparent !important; border:1px solid transparent !important; color:#aaaab6 !important; font:690 12px/1.3 Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif !important; letter-spacing:.005em; cursor:pointer; transition:background .2s,border-color .2s,color .2s; }
.rbp button.rbp-filter:hover { background:#202027 !important; color:#fff !important; }
.rbp button.rbp-filter[aria-pressed="true"] { background:#252026 !important; border-color:#703038 !important; color:#fff !important; box-shadow:inset 0 -2px 0 #f84141; }
.rbp .rbp-filter span { display:inline-block; color:#d1b4b9; font-size:10px; }
.rbp .rbp-result { font-size:11px; white-space:nowrap; font-weight:650; color:#a0a0ac; }
.rbp .rbp-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.rbp .rbp-card { min-width:0; background:#101115; border:1px solid var(--rbp-line); border-radius:21px; overflow:hidden; transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease; }
.rbp .rbp-card:hover { border-color:rgba(255,255,255,.27); transform:translateY(-4px); box-shadow:0 22px 60px rgba(0,0,0,.18); }
.rbp .rbp-card[hidden] { display:none !important; }
.rbp .rbp-card-featured:not([hidden]), .rbp .rbp-card-filter-lead:not([hidden]), .rbp .rbp-card-last-wide:not([hidden]) { grid-column:1 / -1; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr); min-height:450px; }
.rbp a.rbp-card-media { position:relative; display:block; overflow:hidden; aspect-ratio:1.42; background:#17171d; isolation:isolate; }
.rbp .rbp-card-featured .rbp-card-media, .rbp .rbp-card-filter-lead .rbp-card-media, .rbp .rbp-card-last-wide .rbp-card-media { height:100%; min-height:450px; aspect-ratio:auto; }
.rbp .rbp-card-media img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; position:absolute; inset:0; transition:transform .6s cubic-bezier(.2,.7,.3,1); }
.rbp .rbp-card-media:hover img { transform:scale(1.05); }
.rbp .rbp-card-media::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.21),transparent 27%,rgba(0,0,0,.18)); pointer-events:none; }
.rbp .rbp-media-number { position:absolute; left:22px; top:20px; z-index:2; padding:7px 11px; background:rgba(8,8,12,.53); color:#fff; backdrop-filter:blur(14px); border:1px solid rgba(255,255,255,.13); border-radius:100px; font:720 10px/1.3 Inter,system-ui,sans-serif; letter-spacing:.08em; }
.rbp .rbp-media-arrow { width:44px; height:44px; display:grid; place-items:center; position:absolute; z-index:2; top:18px; right:19px; border-radius:50%; color:#fff; background:rgba(10,10,13,.48); border:1px solid rgba(255,255,255,.25); backdrop-filter:blur(12px); transition:background .2s,transform .2s; }
.rbp .rbp-card-media:hover .rbp-media-arrow { background:#db0d15; transform:rotate(45deg); }
.rbp .rbp-card-content { display:flex; flex-direction:column; align-items:stretch; padding:30px 32px 28px; min-height:290px; }
.rbp .rbp-card-featured .rbp-card-content, .rbp .rbp-card-filter-lead .rbp-card-content, .rbp .rbp-card-last-wide .rbp-card-content { padding:clamp(32px,4.1vw,60px); justify-content:center; }
.rbp .rbp-card-type { display:flex; align-items:center; gap:9px; font-size:10px; text-transform:uppercase; letter-spacing:.13em; color:#b3b3be; font-weight:720; }
.rbp .rbp-card-type-dot { width:6px; height:6px; border-radius:50%; background:#f84141; box-shadow:0 0 9px rgba(248,65,65,.4); }
.rbp .rbp-card h3 { margin:13px 0 11px !important; font-size:clamp(26px,2.7vw,39px) !important; font-weight:750 !important; letter-spacing:-.053em !important; overflow-wrap:anywhere; }
.rbp .rbp-card h3 a { color:#f7f7f9 !important; }
.rbp .rbp-card-featured h3, .rbp .rbp-card-filter-lead h3, .rbp .rbp-card-last-wide h3 { font-size:clamp(33px,3.2vw,49px) !important; margin-top:18px !important; }
.rbp .rbp-card-content > p { color:#aaabb6; font-size:13.5px; line-height:1.85; max-width:48ch !important; }
.rbp .rbp-tags { display:flex; gap:7px; flex-wrap:wrap; margin-top:20px; }
.rbp .rbp-tags span { display:inline-flex; align-items:center; min-height:28px; padding:5px 9px; border-radius:6px; background:#1b1b21; border:1px solid rgba(255,255,255,.09); color:#b9bac4; font-size:10px; font-weight:630; }
.rbp .rbp-card-footer { display:flex; flex-direction:column; align-items:stretch; gap:0; margin-top:auto; padding-top:25px; }
.rbp .rbp-project-link { display:inline-flex; align-items:center; gap:14px; color:#fafafa !important; font-size:12px; font-weight:760; min-height:35px; white-space:nowrap; }
.rbp .rbp-project-link svg { width:17px; height:17px; color:#fa6068; transition:transform .22s; }
.rbp .rbp-project-link:hover svg { transform:translateX(4px); }
/* V4.1: unmistakable mobile store downloads. Only rendered when actual store URLs exist. */
.rbp .rbp-download { width:100%; margin-top:23px; padding-top:19px; border-top:1px solid rgba(255,255,255,.105); }
.rbp .rbp-download .rbp-download-label { margin:0 0 12px !important; color:#c5c5cf; font-size:11px; font-weight:710; letter-spacing:.025em; line-height:1.4; }
.rbp .rbp-stores { display:flex; align-items:stretch; flex-wrap:wrap; gap:10px; }
.rbp a.rbp-store { all:unset; box-sizing:border-box; display:flex; align-items:center; gap:11px; flex:0 1 238px; min-width:0; min-height:69px; padding:10px 13px !important; background:linear-gradient(150deg,#222127,#17171d) !important; border:1px solid rgba(255,255,255,.2) !important; border-radius:12px !important; color:#fff !important; cursor:pointer; text-decoration:none !important; font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif !important; box-shadow:0 3px 16px rgba(0,0,0,.08); transition:background .22s ease,border-color .22s ease,box-shadow .22s ease,transform .22s ease; }
.rbp a.rbp-store:hover { color:#fff !important; background:linear-gradient(145deg,#302126,#1c191f) !important; border-color:rgba(248,65,65,.7) !important; transform:translateY(-2px); box-shadow:0 8px 26px rgba(219,13,21,.15); }
.rbp a.rbp-store:active { transform:translateY(0); }
.rbp .rbp-store-icon { display:grid; place-items:center; flex:0 0 39px; width:39px; height:39px; border:1px solid rgba(255,255,255,.09); border-radius:10px; background:rgba(255,255,255,.045); color:#fff; }
.rbp .rbp-store-icon .rbp-platform-svg { width:24px; height:24px; display:block; }
.rbp .rbp-store-copy { display:flex; flex:1; flex-direction:column; min-width:0; gap:4px; line-height:1.18; }
.rbp .rbp-store-copy strong { display:block; font-size:12.5px; font-weight:760; letter-spacing:-.014em; color:#fff !important; white-space:nowrap; }
.rbp .rbp-store-copy small { display:block; font-size:10px; font-weight:550; color:#b0b0bc !important; line-height:1.3; }
.rbp .rbp-store-go { display:grid; place-items:center; flex:0 0 16px; color:#fb777e; margin-left:auto; }
.rbp .rbp-store-go .rbp-store-arrow-svg { display:block; width:16px; height:16px; transition:transform .2s ease; }
.rbp a.rbp-store:hover .rbp-store-arrow-svg { transform:translate(2px,-2px); }
@media(max-width:530px) { .rbp a.rbp-store { flex:1 1 100%; width:100%; } }
@media(prefers-reduced-motion:reduce) { .rbp a.rbp-store, .rbp a.rbp-store .rbp-store-arrow-svg { transition:none !important; } }
.rbp .rbp-no-results, .rbp .rbp-no-posts { border:1px dashed #4b3740; background:#121116; padding:36px; border-radius:16px; font-size:14px; color:#c7c7d0; }
.rbp .rbp-no-results[hidden] { display:none !important; }
.rbp .rbp-no-posts a { color:#ff777e !important; text-decoration:underline !important; }

/* Honest visual fallbacks without artificial analytics or invented screenshots. */
.rbp .rbp-tone-game { background:radial-gradient(ellipse at 60% 37%,#16493d,#0b2526 48%,#080c14); }
.rbp .rbp-tone-web { background:radial-gradient(ellipse at 70% 20%,#433146,#15151f 50%,#0b0c13); }
.rbp .rbp-tone-mobile { background:radial-gradient(ellipse at 72% 31%,#302948,#151625 49%,#101015); }
.rbp .rbp-placeholder { position:absolute; inset:0; z-index:0; overflow:hidden; display:flex; flex-direction:column; justify-content:center; gap:18px; padding:clamp(25px,5vw,64px); isolation:isolate; }
.rbp .rbp-placeholder:before { position:absolute; content:''; inset:0; opacity:.2; background-image:linear-gradient(rgba(255,255,255,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.10) 1px,transparent 1px); background-size:55px 55px; mask-image:linear-gradient(90deg,#000,transparent); z-index:-1; }
.rbp .rbp-placeholder small { font:730 10px/1.4 Inter,system-ui,sans-serif; letter-spacing:.2em; color:#d6d6da; }
.rbp .rbp-placeholder strong { font-size:clamp(34px,4vw,71px); line-height:1.05; font-weight:850; letter-spacing:-.065em; max-width:80%; overflow-wrap:anywhere; color:white; text-shadow:0 10px 35px rgba(0,0,0,.15); }
.rbp .rbp-placeholder-orbit { position:absolute; right:-25%; top:10%; width:70%; aspect-ratio:1; border-radius:50%; border:1px solid rgba(255,255,255,.15); box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.02); transform:rotate(-20deg); z-index:-1; }
.rbp .rbp-spotlight-placeholder { display:flex; flex-direction:column; justify-content:center; align-items:center; height:100%; font-size:clamp(36px,5vw,65px); font-weight:860; letter-spacing:-.065em; }
.rbp .rbp-spotlight-placeholder span { font-size:14px; letter-spacing:.18em; color:#d47b82; text-transform:uppercase; font-weight:700; }

/* Closing contact block. */
.rbp .rbp-cta-area { padding:10px 0 110px; background:#0b0b0e; }
.rbp .rbp-cta { position:relative; overflow:hidden; isolation:isolate; padding:clamp(34px,5vw,74px); background:radial-gradient(circle at 95% 45%,rgba(183,23,34,.17),transparent 39%),linear-gradient(125deg,#1a1014,#101014 66%); border:1px solid rgba(255,255,255,.13); border-radius:24px; }
.rbp .rbp-cta-rings { position:absolute; width:440px; height:440px; right:-110px; top:-140px; border:1px solid rgba(248,65,65,.16); border-radius:50%; z-index:-1; pointer-events:none; }
.rbp .rbp-cta-rings span:first-child { position:absolute; inset:60px; border:1px solid rgba(248,65,65,.12); border-radius:50%; }
.rbp .rbp-cta-rings span:last-child { position:absolute; inset:125px; border:1px solid rgba(248,65,65,.1); border-radius:50%; }
.rbp .rbp-cta-main { display:flex; align-items:end; justify-content:space-between; gap:34px; margin-top:28px; }
.rbp .rbp-cta h2 { font-size:clamp(38px,4.2vw,62px) !important; }
.rbp .rbp-cta h2 span { color:#ff737b; }
.rbp .rbp-cta p { max-width:520px !important; color:#b0a7b0; font-size:14px; line-height:1.85; margin-top:22px !important; }
.rbp .rbp-cta-btn { flex:none; margin-bottom:5px; }

@media(max-width:1120px) {
 .rbp .rbp-hero-layout { grid-template-columns:minmax(0,1fr) minmax(340px,.82fr); gap:32px; }
 .rbp .rbp-hero h1 { font-size:clamp(43px,4.9vw,58px) !important; }
 .rbp a.rbp-spotlight { min-height:485px; }
 .rbp .rbp-hero-foot { column-gap:10px; }
 .rbp .rbp-hero-foot span:not(:first-child)::before { margin-right:6px; }
}
@media(max-width:860px) {
 .rbp .rbp-hero { padding-top:65px; }
 .rbp .rbp-hero-layout { grid-template-columns:1fr; gap:35px; }
 .rbp .rbp-hero-copy { padding:0; }
 .rbp .rbp-hero h1 { max-width:850px !important; font-size:clamp(44px,7vw,72px) !important; }
 .rbp .rbp-hero-foot { margin-top:31px; }
 .rbp a.rbp-spotlight { min-height:0; height:450px; aspect-ratio:auto; }
 .rbp .rbp-spotlight-photo img { object-position:center 40%; }
 .rbp .rbp-hero-divider { padding-top:36px; }
 .rbp .rbp-section-head { align-items:flex-start; flex-direction:column; gap:16px; }
 .rbp .rbp-section-head > p { max-width:620px !important; }
 .rbp .rbp-card-featured:not([hidden]), .rbp .rbp-card-filter-lead:not([hidden]), .rbp .rbp-card-last-wide:not([hidden]) { min-height:0; grid-template-columns:1fr; }
 .rbp .rbp-card-featured .rbp-card-media, .rbp .rbp-card-filter-lead .rbp-card-media, .rbp .rbp-card-last-wide .rbp-card-media { min-height:0; height:370px; }
 .rbp .rbp-card-featured .rbp-card-content, .rbp .rbp-card-filter-lead .rbp-card-content, .rbp .rbp-card-last-wide .rbp-card-content { padding:32px; min-height:270px; }
 .rbp .rbp-cta-main { align-items:start; flex-direction:column; gap:25px; }
}
@media(max-width:640px) {
 .rbp { --rbp-gutter:20px; }
 .rbp .rbp-hero { padding-top:43px; }
 .rbp .rbp-hero h1 { margin:22px 0 20px !important; font-size:clamp(39px,9.3vw,54px) !important; line-height:1.13 !important; letter-spacing:-.065em !important; }
 .rbp .rbp-hero-lead { font-size:14px; line-height:1.78; }
 .rbp .rbp-hero-actions { margin-top:25px; gap:9px; }
 .rbp .rbp-btn { min-height:49px; padding:11px 15px !important; gap:9px; font-size:12px !important; }
 .rbp .rbp-btn-icon { margin-left:3px; }
 .rbp .rbp-hero-foot { margin-top:27px; padding-top:15px; gap:7px 13px; font-size:10px; }
 .rbp .rbp-hero-foot span:not(:first-child)::before { margin-right:2px; }
 .rbp .rbp-hero-layout { gap:28px; }
 .rbp a.rbp-spotlight { height:370px; border-radius:18px; }
 .rbp .rbp-spotlight-top { top:19px; left:19px; right:19px; font-size:9px; }
 .rbp .rbp-spotlight-bottom { left:19px; right:19px; bottom:19px; }
 .rbp .rbp-round-arrow { width:41px; height:41px; }
 .rbp .rbp-spotlight-bottom strong { font-size:30px; }
 .rbp .rbp-hero-divider { padding-top:28px; padding-bottom:22px; font-size:9px; }
 .rbp .rbp-work { padding:65px 0 65px; }
 .rbp .rbp-section-head { margin-bottom:24px; }
 .rbp .rbp-section-head h2 { font-size:clamp(35px,8vw,49px) !important; margin-top:13px !important; }
 .rbp .rbp-section-head > p { font-size:13px; }
 .rbp .rbp-tools { flex-direction:column; align-items:stretch; gap:11px; margin-bottom:20px; }
 .rbp .rbp-filters { gap:5px; }
 .rbp button.rbp-filter { min-height:41px; padding:9px 11px !important; font-size:11px !important; }
 .rbp .rbp-result { text-align:right; font-size:10px; }
 .rbp .rbp-grid { grid-template-columns:1fr; gap:18px; }
 .rbp .rbp-card-featured:not([hidden]), .rbp .rbp-card-filter-lead:not([hidden]), .rbp .rbp-card-last-wide:not([hidden]) { grid-column:auto; }
 .rbp .rbp-card { border-radius:16px; }
 .rbp a.rbp-card-media { aspect-ratio:1.34; }
 .rbp .rbp-card-featured .rbp-card-media, .rbp .rbp-card-filter-lead .rbp-card-media, .rbp .rbp-card-last-wide .rbp-card-media { height:285px; }
 .rbp .rbp-card-content, .rbp .rbp-card-featured .rbp-card-content, .rbp .rbp-card-filter-lead .rbp-card-content, .rbp .rbp-card-last-wide .rbp-card-content { min-height:0; padding:24px 22px 23px; }
 .rbp .rbp-card h3, .rbp .rbp-card-featured h3, .rbp .rbp-card-filter-lead h3, .rbp .rbp-card-last-wide h3 { font-size:31px !important; margin:12px 0 9px !important; }
 .rbp .rbp-card-content > p { font-size:13px; }
 .rbp .rbp-card-footer { padding-top:23px; gap:7px 15px; }
 .rbp .rbp-media-number { top:14px; left:15px; }
 .rbp .rbp-media-arrow { top:12px; right:13px; width:41px; height:41px; }
 .rbp .rbp-cta-area { padding-bottom:60px; }
 .rbp .rbp-cta { padding:32px 24px; border-radius:19px; }
 .rbp .rbp-cta h2 { font-size:39px !important; }
 .rbp .rbp-cta p { font-size:13px; }
 .rbp .rbp-cta-rings { right:-290px; }
}
@media(max-width:370px) {
 .rbp { --rbp-gutter:16px; }
 .rbp .rbp-hero h1 { font-size:38px !important; }
 .rbp .rbp-hero-actions { align-items:stretch; }
 .rbp .rbp-hero-actions .rbp-btn { width:100%; }
 .rbp .rbp-hero-foot { gap:8px 12px; }
 .rbp .rbp-spotlight-top { letter-spacing:.08em; }
 .rbp .rbp-spotlight-bottom strong { font-size:25px; }
 .rbp .rbp-cta h2 { font-size:35px !important; }
}
/* Entry motion only: no infinite marquee, parallax or layout-shifting effects. */
@media (prefers-reduced-motion:no-preference) {
  @keyframes rbp-enter { from { opacity:.65; transform:translateY(16px); } to { opacity:1; transform:translateY(0); } }
  .rbp .rbp-hero-copy { animation:rbp-enter .75s cubic-bezier(.22,.7,.25,1) both; }
  .rbp .rbp-spotlight { animation:rbp-enter .85s cubic-bezier(.22,.7,.25,1) .09s both; }
}
@media(prefers-reduced-motion:reduce) {
 .rbp, .rbp *, .rbp *::before, .rbp *::after { scroll-behavior:auto !important; animation:none !important; transition:none !important; }
}
