/* =====================================================================
   Bubble DMA — Redesign v2 "Marketing Console"
   Layered on top of the original styles. Remove the <link> to revert.
   ===================================================================== */

/* ---------- HERO: calmer background ---------- */
.hero .bubble,.hero .gdot{display:none}
.hero .orb{top:-220px;right:-180px;width:680px;height:680px;filter:blur(8px)}
.hero::after{content:"";position:absolute;left:-200px;bottom:-260px;width:560px;height:560px;border-radius:50%;
  background:radial-gradient(circle,rgba(31,167,207,.12),transparent 65%);pointer-events:none;z-index:0}
.hero{background-image:
  linear-gradient(rgba(11,18,32,.035) 1px,transparent 1px),
  linear-gradient(90deg,rgba(11,18,32,.035) 1px,transparent 1px);
  -webkit-mask-image:none}
.hero-inner{align-items:center}
@media(min-width:1024px){.hero-inner{grid-template-columns:1fr 1fr}}

/* ---------- HERO: console stack ---------- */
.hero-visual{max-width:500px;width:100%;position:relative;gap:0}
.hero-visual .terminal{position:relative;z-index:2;margin-left:auto;width:min(100%,420px);min-height:196px}
.terminal .term-line.rd-hide{visibility:hidden}
.terminal .rd-typed::after{content:"";display:inline-block;width:7px;height:13px;margin-left:2px;vertical-align:-2px;background:#1FA7CF;animation:blink 1.1s steps(1) infinite}

.rd-ga{position:relative;z-index:3;width:min(100%,400px);margin-top:-34px;
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);
  box-shadow:0 18px 40px rgba(11,18,32,.12),0 2px 6px rgba(11,18,32,.05);padding:16px 18px 14px}
.rd-ga-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.rd-ga-title{font-family:var(--font-mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px}
.rd-ga-title b{display:inline-flex;width:18px;height:18px;border-radius:5px;background:var(--grad);align-items:center;justify-content:center}
.rd-ga-title b svg{width:11px;height:11px}
.rd-ga-range{font-family:var(--font-mono);font-size:.62rem;color:var(--muted);border:1px solid var(--border);border-radius:6px;padding:3px 8px}
.rd-ga-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-bottom:6px}
.rd-kpi{padding:6px 8px;border-radius:7px}
.rd-kpi.on{background:rgba(31,167,207,.07);box-shadow:inset 0 -2px 0 var(--cyan)}
.rd-kpi span{display:block;font-family:var(--font-mono);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.rd-kpi strong{font-family:var(--font-mono);font-size:1.05rem;font-weight:600;letter-spacing:-.02em;color:var(--ink)}
.rd-kpi em{font-style:normal;font-family:var(--font-mono);font-size:.62rem;font-weight:600;color:var(--cyan);margin-left:4px}
.rd-chart{width:100%;height:96px;display:block;overflow:visible}
.rd-chart .grid{stroke:#EEF1F5;stroke-width:1}
.rd-chart .prev{fill:none;stroke:#B8C2D0;stroke-width:1.4;stroke-dasharray:3 4}
.rd-chart .line{fill:none;stroke:url(#rdLine);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.rd-chart .area{fill:url(#rdArea)}
.rd-chart .dot{fill:#fff;stroke:#E62485;stroke-width:2}
.rd-ga-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;border-top:1px solid var(--border);margin-top:8px;padding-top:10px}
.rd-rt{display:flex;flex-direction:column;gap:2px}
.rd-rt span{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:6px}
.rd-rt span i{width:6px;height:6px;border-radius:50%;background:#22C55E;box-shadow:0 0 0 0 rgba(34,197,94,.5);animation:rdPulse 1.8s infinite}
.rd-rt strong{font-family:var(--font-mono);font-size:1.25rem;font-weight:600;letter-spacing:-.02em}
.rd-bars{display:flex;align-items:flex-end;gap:2px;height:30px;flex:1;max-width:190px}
.rd-bars i{flex:1;background:var(--cyan);opacity:.85;border-radius:1.5px;transition:height .6s ease}
.rd-bars i:nth-child(n+24){background:var(--accent)}
.rd-note{font-family:var(--font-mono);font-size:.55rem;letter-spacing:.08em;text-transform:uppercase;color:#9AA4B2;margin-top:8px;text-align:right}
@keyframes rdPulse{70%{box-shadow:0 0 0 6px rgba(34,197,94,0)}100%{box-shadow:0 0 0 0 rgba(34,197,94,0)}}
.hero-visual .chips{position:relative;z-index:1;margin-top:16px;width:min(100%,420px);margin-left:auto}
@media(max-width:1023px){.hero-visual{margin-inline:auto}.rd-ga{margin-top:-24px}}

/* ---------- STATS: sparklines ---------- */
.stat{position:relative}
.rd-spark{display:block;width:88px;height:22px;margin-top:10px;overflow:visible}
.rd-spark path{fill:none;stroke:url(#rdLine);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* ---------- TRUSTED BY marquee ---------- */
.rd-logos{background:var(--surface);border-bottom:1px solid var(--border);padding:26px 0;overflow:hidden}
.rd-logos-inner{display:flex;align-items:center;gap:28px}
.rd-logos-label{flex:none;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.rd-marquee{flex:1;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.rd-track{display:flex;align-items:center;gap:56px;width:max-content;animation:rdScroll 38s linear infinite}
.rd-marquee:hover .rd-track{animation-play-state:paused}
.rd-track a{display:flex;align-items:center;height:44px}
.rd-track img{max-height:30px;max-width:120px;width:auto;height:auto;opacity:.45;transition:opacity .3s ease,transform .3s ease}
.rd-track img.tall{max-height:42px}
.rd-track a:hover img{opacity:.95;transform:scale(1.06)}
@keyframes rdScroll{to{transform:translateX(-50%)}}
@media(max-width:640px){.rd-logos-label{display:none}}

/* ---------- SERVICES: bento ---------- */
@media(min-width:1024px){
  .services-grid{grid-template-columns:repeat(4,1fr)}
  .services-grid > .card:nth-child(3){order:-1;grid-column:span 2}
  .services-grid > .card:nth-child(6){grid-column:span 2}
}
.services-grid > .card{position:relative;overflow:hidden}
.services-grid > .card::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:var(--grad);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .25s ease;pointer-events:none}
.services-grid > .card:hover{border-color:transparent;transform:translateY(-4px);box-shadow:0 14px 34px rgba(11,18,32,.09)}
.services-grid > .card:hover::before{opacity:1}
.rd-kpis{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.rd-kpis span{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.06em;color:var(--muted);border:1px solid var(--border);border-radius:5px;padding:3px 7px;background:var(--bg)}
.rd-mini{display:none}
@media(min-width:1024px){
  .services-grid > .card:nth-child(3),.services-grid > .card:nth-child(6){display:grid;grid-template-columns:1fr 200px;column-gap:28px;align-content:start}
  .services-grid > .card:nth-child(3) > *,.services-grid > .card:nth-child(6) > *{grid-column:1}
  .services-grid > .card .rd-mini{display:block;grid-column:2;grid-row:1 / span 6;align-self:center;width:200px;height:120px}
}
.rd-mini .grid{stroke:#EEF1F5}
.rd-mini .bar{fill:url(#rdBar)}
.rd-mini .ln{fill:none;stroke:url(#rdLine);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.rd-mini .ar{fill:url(#rdArea)}

/* ---------- WORK: photo + overlays ---------- */
.proj-card .case-fig{position:relative;padding:0;min-height:0;aspect-ratio:16/10;background:#EEF1F5;border:none;box-shadow:0 10px 30px rgba(11,18,32,.10)}
.proj-card .case-fig img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:var(--radius);transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.proj-card:hover .case-fig img{transform:scale(1.04)}
.proj-card .case-fig svg:not(.rd-ov svg){padding:28px}
.rd-logo-chip{position:absolute;left:14px;bottom:14px;z-index:2;background:rgba(255,255,255,.94);backdrop-filter:blur(6px);
  border-radius:8px;padding:8px 12px;display:flex;align-items:center;box-shadow:0 6px 18px rgba(11,18,32,.15);max-width:46%}
.rd-logo-chip img{position:static!important;width:auto!important;height:26px!important;max-width:120px;object-fit:contain!important;transform:none!important;border-radius:0!important}
.rd-ov{position:absolute;right:14px;top:14px;z-index:2;background:rgba(11,18,32,.86);backdrop-filter:blur(6px);color:#fff;
  border-radius:8px;padding:10px 12px 8px;min-width:132px;box-shadow:0 8px 22px rgba(11,18,32,.25)}
.rd-ov small{display:block;font-family:var(--font-mono);font-size:.56rem;letter-spacing:.1em;text-transform:uppercase;color:#9FB0C3;max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rd-ov strong{display:block;font-family:var(--font-mono);font-size:1.15rem;font-weight:600;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;filter:brightness(1.25)}
.rd-ov svg{display:block;width:100%;height:22px;margin-top:4px}
.rd-ov svg path{fill:none;stroke:#1FA7CF;stroke-width:1.6;stroke-linecap:round}
@media(max-width:767px){.rd-ov{display:none}}
@media(min-width:768px){.slider .proj-card{padding-inline:76px}}
.rd-ov{transform:scale(.92);transform-origin:top right}

/* ---------- PROCESS: terminal steps + growth meter ---------- */
.step{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px 20px 20px;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.step:hover{border-color:var(--cyan);box-shadow:var(--shadow);transform:translateY(-3px)}
.step::before{top:-41px;left:20px}
.rd-cmd{display:block;font-family:var(--font-mono);font-size:.78rem;color:var(--accent);margin-bottom:8px}
.rd-cmd::before{content:"$ ";color:var(--muted)}
.rd-meter{height:4px;border-radius:4px;background:#EEF1F5;margin-top:16px;overflow:hidden}
.rd-meter i{display:block;height:100%;background:var(--grad);width:0;transition:width 1.2s cubic-bezier(.22,.8,.3,1)}
.process.in .rd-meter i{width:var(--w)}

/* ---------- TESTIMONIALS polish ---------- */
.quote{position:relative;overflow:hidden}
.quote::after{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s ease}
.quote:hover::after{transform:scaleX(1)}

/* ---------- CTA: dark terminal ---------- */
.cta{position:relative;overflow:hidden;background:#0B1220;color:#E6EBF2;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:48px 48px}
.cta::before{content:"";position:absolute;right:-180px;top:-200px;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(230,36,133,.25),rgba(31,167,207,.12) 45%,transparent 70%);pointer-events:none}
.cta-inner{position:relative;z-index:1;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:clamp(28px,5vw,48px);max-width:720px;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.cta-inner::before{content:"";display:block;height:9px;width:44px;margin-bottom:26px;
  background:radial-gradient(circle at 4.5px 4.5px,#E62485 4.5px,transparent 5px),radial-gradient(circle at 22px 4.5px,#1FA7CF 4.5px,transparent 5px),radial-gradient(circle at 39.5px 4.5px,#2A3648 4.5px,transparent 5px)}
.cta .eyebrow{color:#9FB0C3}
.cta h2{color:#fff}
.cta .lead{color:#9FB0C3}
.cta-form{position:relative}
.cta-form::before{content:"$ book --call";position:absolute;left:18px;top:26px;transform:translateY(-50%);font-family:var(--font-mono);font-size:.85rem;color:#1FA7CF;pointer-events:none;z-index:1}
.cta-form input{background:#0F1828;border-color:#24324A;color:#fff;font-family:var(--font-mono);padding-left:136px}
.cta-form input::placeholder{color:#5B6B82}
.cta-form input:focus{border-color:#1FA7CF;box-shadow:0 0 0 3px rgba(31,167,207,.2)}
.cta .privacy{color:#6B7A90}
.cta .form-success{background:rgba(31,167,207,.08);color:#E6EBF2}
.cta .form-error{color:#fff}

/* ---------- Motion safety ---------- */
@media (prefers-reduced-motion: reduce){
  .rd-track{animation:none}
  .rd-bars i{transition:none}
  .rd-rt span i{animation:none}
}

/* =====================================================================
   v3 — Bubbles · Glass dock nav · Buttons · Inner pages
   ===================================================================== */

/* ---------- Glass bubbles ---------- */
.hero .bubble,.page-hero .bubble{display:none}
.rd-has-bub{position:relative;overflow:hidden}
.rd-has-bub > .container{position:relative;z-index:1}
.rd-bub{position:absolute;width:var(--s);height:var(--s);z-index:0;pointer-events:none;will-change:transform}
.rd-bub i{position:absolute;inset:0;border-radius:50%;pointer-events:auto;cursor:default;opacity:var(--o,.85);
  background:
    radial-gradient(circle at 70% 76%,rgba(255,255,255,.75) 0 4%,rgba(255,255,255,0) 10%),
    radial-gradient(circle at 50% 45%,rgba(31,167,207,.05) 0%,rgba(31,167,207,.08) 45%,rgba(230,36,133,.16) 78%,rgba(31,167,207,.28) 100%);
  box-shadow:inset -6px -8px 16px rgba(31,167,207,.18),inset 5px 6px 14px rgba(230,36,133,.12),0 10px 26px -8px rgba(11,18,32,.12);
  animation:rdFloat var(--d,14s) ease-in-out var(--dl,0s) infinite;transition:transform .35s cubic-bezier(.2,.8,.3,1.4),opacity .35s ease}
.rd-bub i::before{content:"";position:absolute;inset:0;border-radius:50%;padding:1.5px;
  background:conic-gradient(from 210deg,#E62485,#B98BE8,#1FA7CF,#8EE3F5,#F6A6CF,#E62485);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.95}
.rd-bub i::after{content:"";position:absolute;inset:11%;border-radius:50%;border-top:2px solid rgba(255,255,255,.98);border-left:1.5px solid rgba(255,255,255,.7);
  border-right:1.5px solid transparent;border-bottom:1.5px solid transparent;transform:rotate(-18deg);filter:drop-shadow(0 0 1px rgba(255,255,255,.9))}
.rd-bub.dark i{background:
    radial-gradient(circle at 30% 26%,rgba(255,255,255,.7) 0 5%,rgba(255,255,255,0) 15%),
    radial-gradient(circle at 50% 50%,rgba(255,255,255,0) 55%,rgba(230,36,133,.18) 75%,rgba(31,167,207,.30) 100%)}
.rd-bub.pop i{transform:scale(1.35);opacity:0}
.rd-bub.grow i{animation:none;transform:scale(0);opacity:0}
.rd-bub .rd-spray{position:absolute;inset:0;pointer-events:none}
.rd-bub .rd-spray b{position:absolute;left:50%;top:50%;width:4px;height:4px;margin:-2px;border-radius:50%;background:var(--grad);opacity:0}
.rd-bub.pop .rd-spray b{animation:rdSpray .5s ease-out forwards}
@keyframes rdFloat{0%,100%{transform:translate(0,0)}25%{transform:translate(6px,-10px)}50%{transform:translate(-4px,-20px)}75%{transform:translate(-8px,-8px)}}
@keyframes rdSpray{0%{opacity:1;transform:translate(0,0) scale(1)}100%{opacity:0;transform:translate(var(--x),var(--y)) scale(.4)}}
@media(max-width:767px){.rd-bub.lg{display:none}}

/* ---------- Logo mark = bubble ---------- */
.logo-dot{width:14px;height:14px;border-radius:50%;
  background:radial-gradient(circle at 32% 30%,#fff 0 12%,rgba(255,255,255,0) 32%),linear-gradient(135deg,#E62485,#1FA7CF);
  box-shadow:inset -2px -3px 5px rgba(11,18,32,.18),0 2px 6px rgba(230,36,133,.35)}

/* ---------- Floating glass dock nav ---------- */
.nav{top:12px;background:transparent!important;border:none!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;padding-inline:12px;margin-top:12px}
.nav > .container{max-width:1180px;padding-inline:0}
.nav .nav-inner{height:64px;padding:0 10px 0 18px;border-radius:16px;
  background:rgba(255,255,255,.72);backdrop-filter:blur(18px) saturate(1.7);-webkit-backdrop-filter:blur(18px) saturate(1.7);
  border:1px solid rgba(255,255,255,.75);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 0 0 1px rgba(11,18,32,.06),0 12px 32px -14px rgba(11,18,32,.22),0 2px 6px rgba(11,18,32,.04);
  transition:height .3s ease,background .3s ease,box-shadow .3s ease}
.nav.scrolled .nav-inner{height:56px;background:rgba(255,255,255,.84);
  box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(11,18,32,.07),0 18px 44px -16px rgba(11,18,32,.30),0 3px 8px rgba(11,18,32,.06)}
.nav-links{position:relative;gap:2px}
.nav-links a{position:relative;z-index:1;padding:8px 14px;border-radius:10px;font-size:.9rem}
.nav-links a::after{display:none}
.nav-links a.active{color:var(--ink)}
.rd-pill{position:absolute;top:50%;height:36px;margin-top:-18px;left:0;width:0;border-radius:10px;z-index:0;
  background:linear-gradient(#fff,#fff) padding-box,linear-gradient(90deg,rgba(230,36,133,.45),rgba(31,167,207,.45)) border-box;border:1px solid transparent;
  box-shadow:0 4px 12px -4px rgba(11,18,32,.15);opacity:0;transition:left .35s cubic-bezier(.3,.9,.3,1),width .35s cubic-bezier(.3,.9,.3,1),opacity .2s ease}
.rd-pill.on{opacity:1}
.nav .nav-cta{min-height:42px!important;padding:0 18px 0 14px!important;border-radius:12px;font-size:.86rem!important;gap:10px;
  background:#0B1220!important;color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 8px 18px -8px rgba(11,18,32,.55)!important}
.nav .nav-cta::before{content:"";width:10px;height:10px;border-radius:50%;flex:none;
  background:radial-gradient(circle at 32% 30%,#fff 0 14%,rgba(255,255,255,0) 34%),linear-gradient(135deg,#E62485,#1FA7CF);box-shadow:0 0 10px rgba(230,36,133,.6)}
.nav .nav-cta:hover{transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 0 0 3px rgba(230,36,133,.18),0 12px 24px -8px rgba(11,18,32,.6)!important}
.nav .hamburger{border:none;background:rgba(11,18,32,.05);border-radius:12px}
.nav .mobile-panel{margin:10px 0 0;border-radius:16px;border:1px solid rgba(255,255,255,.8);
  background:rgba(255,255,255,.9);backdrop-filter:blur(18px) saturate(1.6);-webkit-backdrop-filter:blur(18px) saturate(1.6);
  box-shadow:0 24px 50px -20px rgba(11,18,32,.35);padding:10px 18px 18px}
.nav .mobile-panel.open a{animation:rdIn .35s ease both}
.nav .mobile-panel.open a:nth-child(2){animation-delay:.04s}.nav .mobile-panel.open a:nth-child(3){animation-delay:.08s}
.nav .mobile-panel.open a:nth-child(4){animation-delay:.12s}.nav .mobile-panel.open a:nth-child(5){animation-delay:.16s}.nav .mobile-panel.open a:nth-child(6){animation-delay:.2s}
@keyframes rdIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.hero{margin-top:-76px;padding-top:calc(clamp(72px,9vw,120px) + 76px)}
.crumbs{margin-top:-76px;padding-top:76px}

/* ---------- Buttons ---------- */
.btn{border-radius:12px}
.btn-primary{position:relative;overflow:hidden;isolation:isolate;
  background:linear-gradient(90deg,#E62485 0%,#B23FA6 35%,#1FA7CF 70%,#E62485 100%);background-size:220% 100%;background-position:0 0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.38),inset 0 -2px 0 rgba(11,18,32,.14),0 10px 22px -10px rgba(230,36,133,.65),0 2px 4px rgba(11,18,32,.08);
  transition:background-position .6s ease,transform .2s ease,box-shadow .2s ease}
.btn-primary:hover{background-position:70% 0;transform:translateY(-2px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.42),inset 0 -2px 0 rgba(11,18,32,.14),0 16px 30px -12px rgba(230,36,133,.7),0 4px 10px rgba(31,167,207,.18)}
.btn-primary:active{transform:translateY(0);box-shadow:inset 0 2px 6px rgba(11,18,32,.25)}
.btn-primary .arrow{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-right:-8px;border-radius:50%;
  background:rgba(255,255,255,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.35);font-size:.85rem;transition:transform .2s ease,background .2s ease}
.btn-primary:hover .arrow{transform:translateX(3px);background:rgba(255,255,255,.32)}
.rd-btn-bub{position:absolute;bottom:-12px;width:var(--s);height:var(--s);border-radius:50%;pointer-events:none;z-index:-1;
  background:radial-gradient(circle at 32% 30%,rgba(255,255,255,.9) 0 12%,rgba(255,255,255,.15) 40%,rgba(255,255,255,.05) 70%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.55);animation:rdRise .9s ease-out forwards}
@keyframes rdRise{0%{transform:translateY(0) scale(.6);opacity:0}25%{opacity:1}100%{transform:translateY(-58px) scale(1);opacity:0}}
.btn-secondary{background:rgba(255,255,255,.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(11,18,32,.1);
  box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(11,18,32,.06)}
.btn-secondary:hover{border-color:transparent;background:linear-gradient(#fff,#fff) padding-box,var(--grad) border-box;box-shadow:0 10px 22px -12px rgba(11,18,32,.25)}

/* ---------- Inner pages ---------- */
.proj-grid .proj-card .case-fig{border-radius:var(--radius);overflow:hidden}
.proj-grid .proj-card:hover .case-fig img{transform:scale(1.05)}
.rd-case-media{position:relative;padding:0!important;aspect-ratio:16/10;overflow:hidden;min-height:0!important;border:none!important;box-shadow:0 20px 50px -18px rgba(11,18,32,.35)!important}
.rd-case-media > img{position:absolute;inset:0;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important}
.cta-band{position:relative;overflow:hidden;background:#0B1220!important;color:#E6EBF2;border:none!important;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px)!important;background-size:48px 48px!important}
.cta-band::before{content:"";position:absolute;right:-180px;top:-200px;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(230,36,133,.25),rgba(31,167,207,.12) 45%,transparent 70%);pointer-events:none}
.cta-band .cta-inner{position:relative;z-index:1;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:clamp(28px,5vw,48px);max-width:720px;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.cta-band .cta-inner::before{content:"";display:block;height:9px;width:44px;margin-bottom:26px;
  background:radial-gradient(circle at 4.5px 4.5px,#E62485 4.5px,transparent 5px),radial-gradient(circle at 22px 4.5px,#1FA7CF 4.5px,transparent 5px),radial-gradient(circle at 39.5px 4.5px,#2A3648 4.5px,transparent 5px)}
.cta-band h2{color:#fff}.cta-band .lead,.cta-band .eyebrow{color:#9FB0C3}
.cta-band .btn-secondary{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.14);box-shadow:none}

@media (prefers-reduced-motion: reduce){
  .rd-bub i{animation:none}
  .rd-btn-bub{display:none}
  .btn-primary{transition:none}
}

.nav .mobile-panel a.btn-primary{color:#fff;border-bottom:none;justify-content:center}

/* =====================================================================
   v4 — Dark footer
   ===================================================================== */
#footer{position:relative;overflow:hidden;background:#0B1220!important;color:#C9D3E0;border-top:1px solid rgba(255,255,255,.06)!important;padding:56px 0 0!important;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px)!important;background-size:48px 48px!important}
#footer::before{content:"";position:absolute;left:-220px;top:-240px;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(31,167,207,.16),transparent 65%);pointer-events:none}
#footer .container{position:relative;z-index:1}
.cta + #footer,.cta-band + #footer,.rd-has-bub + #footer{border-top:1px solid rgba(255,255,255,.07)!important}
.rd-ftop{display:grid;gap:22px;align-items:center;padding:20px 22px;margin-bottom:52px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.03);backdrop-filter:blur(6px)}
@media(min-width:900px){.rd-ftop{grid-template-columns:1fr 1.1fr}}
.rd-status{display:flex;flex-direction:column;gap:10px}
.rd-live{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-mono);font-size:.74rem;letter-spacing:.08em;color:#E6EBF2}
.rd-live i{width:8px;height:8px;border-radius:50%;background:#22C55E;box-shadow:0 0 0 0 rgba(34,197,94,.5);animation:rdPulse 1.8s infinite}
.rd-tags{display:flex;flex-wrap:wrap;gap:6px}
.rd-tags b{font-weight:500;font-family:var(--font-mono);font-size:.64rem;letter-spacing:.06em;color:#9FB0C3;border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:4px 8px;background:rgba(255,255,255,.03)}
.rd-news-l{display:block;font-size:.88rem;color:#E6EBF2;margin-bottom:10px}
.rd-news-row{position:relative;display:flex;gap:8px}
.rd-news-p{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-family:var(--font-mono);font-size:.8rem;color:#1FA7CF;pointer-events:none}
.rd-news-row input[type=email]{flex:1;min-width:0;min-height:46px;padding:0 14px 0 112px;border-radius:12px;border:1px solid #24324A;background:#0F1828;color:#fff;font-family:var(--font-mono);font-size:.85rem}
.rd-news-row input[type=email]::placeholder{color:#5B6B82}
.rd-news-row input[type=email]:focus{outline:none;border-color:#1FA7CF;box-shadow:0 0 0 3px rgba(31,167,207,.2)}
.rd-news-row .btn{min-height:46px;padding:0 18px}
.rd-news-msg{font-family:var(--font-mono);font-size:.72rem;margin-top:8px;min-height:1em;color:#9FB0C3}
.rd-news-msg.ok{color:#1FA7CF}.rd-news-msg.err{color:#F472B6}
@media(max-width:520px){.rd-news-row{flex-direction:column}.rd-news-p{top:23px}}
#footer .footer-grid{margin-bottom:44px}
#footer .logo{color:#fff}
#footer .footer-brand p{color:#9FB0C3}
#footer .footer-col h4{color:#6B7A90}
#footer .footer-col a,#footer .footer-col li{color:#C9D3E0}
#footer .footer-contact li{color:#9FB0C3}
#footer .footer-col a{position:relative;width:fit-content}
#footer .footer-col a::after{content:"";position:absolute;left:0;bottom:6px;height:1px;width:100%;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
#footer .footer-col a:hover{color:#fff}
#footer .footer-col a:hover::after{transform:scaleX(1)}
#footer .socials a{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.04);color:#C9D3E0;backdrop-filter:blur(6px)}
#footer .socials a:hover{border-color:transparent;background:linear-gradient(#111B2C,#111B2C) padding-box,var(--grad) border-box;color:#fff}
#footer .footer-bottom{border-top-color:rgba(255,255,255,.08);color:#6B7A90}
#footer .lang a:hover{color:#fff}
.rd-wordmark{font-family:var(--font-head);font-weight:700;letter-spacing:-.05em;line-height:.8;font-size:clamp(5rem,19vw,15rem);text-align:center;margin-top:28px;user-select:none;
  background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,0) 85%);-webkit-background-clip:text;background-clip:text;color:transparent;
  -webkit-mask-image:linear-gradient(180deg,#000 40%,transparent 95%);mask-image:linear-gradient(180deg,#000 40%,transparent 95%);margin-bottom:-.12em}
.cta + #footer .rd-ftop,.cta-band ~ #footer .rd-ftop{margin-top:0}

/* =====================================================================
   v5 — Mobile menu (open state) · form-free CTA
   ===================================================================== */
.nav .nav-inner{position:relative;z-index:3}
@media(max-width:767px){
  .nav .mobile-panel{position:fixed;inset:0;z-index:2;margin:0;border:none;border-radius:0;box-shadow:none;
    padding:104px 24px calc(24px + env(safe-area-inset-bottom));
    background:rgba(247,248,250,.88);backdrop-filter:blur(22px) saturate(1.6);-webkit-backdrop-filter:blur(22px) saturate(1.6);
    display:flex;flex-direction:column;justify-content:space-between;overflow-y:auto;
    opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .28s ease,transform .28s ease,visibility 0s linear .28s}
  .nav .mobile-panel.open{opacity:1;visibility:visible;transform:none;transition:opacity .28s ease,transform .28s ease}
  .nav .mobile-panel::before,.nav .mobile-panel::after{content:"";position:absolute;border-radius:50%;pointer-events:none;
    background:radial-gradient(circle at 70% 76%,rgba(255,255,255,.75) 0 4%,rgba(255,255,255,0) 10%),radial-gradient(circle at 50% 45%,rgba(31,167,207,.05),rgba(31,167,207,.08) 45%,rgba(230,36,133,.22) 76%,rgba(31,167,207,.40) 100%);
    box-shadow:inset 0 0 0 1.5px rgba(230,36,133,.35),inset -6px -8px 16px rgba(31,167,207,.18),inset 5px 6px 14px rgba(230,36,133,.12)}
  .nav .mobile-panel::before{width:150px;height:150px;right:-40px;top:22%}
  .nav .mobile-panel::after{width:44px;height:44px;left:10%;bottom:30%}
  .nav .mobile-panel a{border-bottom:none;min-height:0}
}
.rd-mnav{display:flex;flex-direction:column;gap:2px;position:relative;z-index:1}
.rd-mnav a{display:flex!important;align-items:baseline;gap:14px;padding:10px 4px!important;text-decoration:none;color:var(--ink)!important;
  font-family:var(--font-head)!important;font-weight:600!important;font-size:clamp(1.75rem,8.5vw,2.1rem)!important;letter-spacing:-.03em;line-height:1.1}
.rd-mnav a .n{font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.08em;color:var(--soft,#8A94A3);min-width:22px;transform:translateY(-.55em)}
.rd-mnav a .t{position:relative}
.rd-mnav a.active .t{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.rd-mnav a.active .t::after{content:"";position:absolute;right:-18px;top:.2em;width:10px;height:10px;border-radius:50%;
  background:radial-gradient(circle at 32% 30%,#fff 0 14%,rgba(255,255,255,0) 34%),linear-gradient(135deg,#E62485,#1FA7CF)}
.nav .mobile-panel.open .rd-mnav a{animation:rdMIn .45s cubic-bezier(.2,.8,.3,1) both;animation-delay:calc(var(--i) * 55ms + 60ms)}
@keyframes rdMIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.rd-mfoot{position:relative;z-index:1;display:flex;flex-direction:column;gap:16px;margin-top:28px;padding-top:20px;border-top:1px solid rgba(11,18,32,.08)}
.rd-mfoot .btn{width:100%;margin:0!important;color:#fff!important;justify-content:center;font-family:var(--font-head)}
.rd-mcontact{display:flex;flex-direction:column;gap:4px}
.rd-mcontact a{font-family:var(--font-mono)!important;font-size:.78rem!important;color:var(--muted)!important;padding:4px 0!important;font-weight:400!important}
.rd-msocial{display:flex;gap:10px}
.rd-msocial a{width:44px;height:44px;display:flex!important;align-items:center;justify-content:center;border-radius:12px;padding:0!important;
  background:rgba(255,255,255,.7);border:1px solid rgba(11,18,32,.08)!important;color:var(--ink)!important;box-shadow:inset 0 1px 0 #fff}
html.rd-lock,html.rd-lock body{overflow:hidden}
@media (prefers-reduced-motion: reduce){.nav .mobile-panel.open .rd-mnav a{animation:none}.nav .mobile-panel{transition:none}}

/* form-free CTA */
.rd-cta-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.cta .rd-cta-actions .btn-secondary{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.16);box-shadow:none;backdrop-filter:blur(6px)}
.cta .rd-cta-actions .btn-secondary:hover{background:linear-gradient(#111B2C,#111B2C) padding-box,var(--grad) border-box;border-color:transparent}
.rd-trust{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.06em;color:#6B7A90;margin-top:18px}
.rd-out{margin-top:22px;padding-top:14px;border-top:1px dashed rgba(255,255,255,.1);font-family:var(--font-mono);font-size:.78rem;color:#1FA7CF;text-align:right}
.rd-cur{display:inline-block;width:7px;height:13px;margin-left:4px;vertical-align:-2px;background:#1FA7CF;animation:blink 1.1s steps(1) infinite}
@media(max-width:520px){.rd-cta-actions .btn{width:100%}}
@media(max-width:767px){.nav .mobile-panel{overflow-x:hidden;background:rgba(247,248,250,.95)}}
.rd-mfoot .btn{min-height:52px!important;padding:0 22px!important}
@media(max-width:767px){.nav .mobile-panel{top:-24px;bottom:-24px;padding-top:128px;padding-bottom:calc(48px + env(safe-area-inset-bottom))}}

/* =====================================================================
   v6 — Brand: "bubble." wordmark logo
   ===================================================================== */
.logo{gap:0!important}
.logo .bdma-logo{height:26px;width:auto;display:block;overflow:visible}
.logo .logo-dot{display:none}
#footer .logo .bdma-logo{height:30px}
@media(max-width:767px){.logo .bdma-logo{height:23px}}
.rd-wordmark{text-transform:lowercase;letter-spacing:-.045em}
.rd-wm-dot{display:inline-block;width:.156em;height:.156em;border-radius:50%;margin-left:.045em;vertical-align:baseline;
  background:linear-gradient(135deg,#E62485 18%,#1FA7CF 88%);opacity:.55;-webkit-text-fill-color:initial}

/* Fix: newsletter honeypot was visible on inner pages (rule existed only in index.php/contact.php) */
.cta-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
