/* Rovexa Services directory and service navigation refresh. */
.rv-services-hero{
  padding:92px 0 88px;
  background:
    radial-gradient(circle at 86% 16%,rgba(135,92,255,.15),transparent 27%),
    radial-gradient(circle at 76% 78%,rgba(255,56,169,.09),transparent 23%),
    linear-gradient(180deg,#fff 0%,#fbf9ff 100%);
  overflow:hidden;
}
.rv-services-hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(430px,.95fr);gap:70px;align-items:center}
.rv-services-hero__copy{max-width:760px}
.rv-services-hero h1{font-size:clamp(52px,6.3vw,92px);line-height:.94;letter-spacing:-.075em;margin:18px 0 24px;max-width:820px}
.rv-services-hero__copy>p{max-width:690px;font-size:17px;line-height:1.7;color:#706d76;margin:0}
.rv-services-hero__actions{display:flex;align-items:center;gap:20px;margin-top:32px;flex-wrap:wrap}
.rv-services-hero__visual{min-height:500px;position:relative;display:grid;place-items:center}
.rv-services-hero__visual:before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(142,93,255,.34),rgba(111,52,255,.06) 52%,transparent 71%);filter:blur(10px)}
.rv-services-hero-card{position:absolute;border:1px solid rgba(255,255,255,.8);box-shadow:0 24px 70px rgba(33,25,49,.13);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.rv-services-hero-card--main{position:relative;z-index:3;width:min(100%,390px);min-height:300px;border-radius:34px;padding:34px;color:#fff;background:linear-gradient(145deg,#17171d,#2c2437);overflow:hidden}
.rv-services-hero-card--main:after{content:"";position:absolute;width:250px;height:250px;border-radius:50%;right:-95px;top:-105px;border:1px solid rgba(255,255,255,.14);box-shadow:0 0 0 44px rgba(255,255,255,.035),0 0 0 88px rgba(255,255,255,.025)}
.rv-services-hero-card__eyebrow{display:block;font-size:10px;letter-spacing:.18em;color:#aaa6b1;margin-bottom:42px;font-weight:800}
.rv-services-hero-card--main strong{display:block;font-size:92px;line-height:.82;letter-spacing:-.09em}
.rv-services-hero-card--main b{display:block;font-size:20px;letter-spacing:-.03em;margin-top:14px}
.rv-services-hero-card--main p{max-width:230px;color:#beb9c5;font-size:13px;line-height:1.5;margin:16px 0 0}
.rv-services-hero-card--mini{z-index:4;width:170px;border-radius:19px;padding:17px 18px;background:rgba(255,255,255,.92);color:#1b1821}
.rv-services-hero-card--mini span{display:block;font-size:10px;color:#8d8994;letter-spacing:.14em;font-weight:800}
.rv-services-hero-card--mini strong{display:block;font-size:18px;margin:9px 0 4px;letter-spacing:-.03em}
.rv-services-hero-card--mini small{display:block;color:#77737d;font-size:11px;line-height:1.35}
.rv-services-hero-card--one{left:0;top:72px;transform:rotate(-5deg)}
.rv-services-hero-card--two{right:-7px;top:26px;transform:rotate(4deg)}
.rv-services-hero-card--three{right:26px;bottom:40px;transform:rotate(-3deg)}

.rv-services-catalog{background:#f4f2ef;padding-top:94px;padding-bottom:110px}
.rv-services-catalog__head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:42px}
.rv-services-catalog__head h2{max-width:790px;font-size:clamp(42px,5vw,66px);line-height:.98;letter-spacing:-.06em;margin:14px 0 0}
.rv-services-catalog__head>p{max-width:360px;margin:0 0 4px;color:#77747c;font-size:13px;line-height:1.65}
.rv-services-catalog__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.rv-service-catalog-card{min-width:0;overflow:hidden;padding:0;border:1px solid #e5e2de;border-radius:29px;background:#fff;box-shadow:0 12px 35px rgba(26,22,30,.045);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.rv-service-catalog-card:hover{transform:translateY(-7px);border-color:#ddd7e5;box-shadow:0 26px 65px rgba(26,22,30,.10)}
.rv-service-catalog-card__media{height:220px;display:block;position:relative;overflow:hidden;background:linear-gradient(145deg,#17171c,#342747)}
.rv-service-catalog-card__media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s ease}
.rv-service-catalog-card:hover .rv-service-catalog-card__media img{transform:scale(1.045)}
.rv-service-catalog-card__media.is-generated:before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-40px;top:-95px;background:radial-gradient(circle at 40% 40%,#d2bbff 2%,#8350ff 38%,rgba(107,55,255,.22) 62%,transparent 72%);filter:blur(.2px)}
.rv-service-catalog-card__media.is-generated:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.02),rgba(255,42,166,.15))}
.rv-service-catalog-card__number,.rv-service-catalog-card__arrow{position:absolute;z-index:4;color:#fff}
.rv-service-catalog-card__number{left:20px;top:18px;font-size:10px;font-weight:800;letter-spacing:.17em}
.rv-service-catalog-card__arrow{right:18px;top:14px;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:rgba(16,15,20,.42);border:1px solid rgba(255,255,255,.17);font-size:20px;transition:transform .25s ease,background .25s ease}
.rv-service-catalog-card:hover .rv-service-catalog-card__arrow{transform:translate(2px,-2px);background:rgba(16,15,20,.62)}
.rv-service-catalog-card__glow{position:absolute;width:220px;height:220px;border-radius:50%;left:-110px;bottom:-170px;background:rgba(255,255,255,.06);filter:blur(8px)}
.rv-service-catalog-card__body{padding:22px 24px 25px;display:flex;flex-direction:column;min-height:270px}
.rv-service-catalog-card__meta{display:flex;justify-content:space-between;gap:10px;color:#8d8991;font-size:9px;letter-spacing:.13em;font-weight:800;text-transform:uppercase}
.rv-service-catalog-card__meta span:last-child{max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aaa6af;font-weight:700}
.rv-service-catalog-card h2{font-size:29px;line-height:1.03;letter-spacing:-.045em;margin:19px 0 10px}
.rv-service-catalog-card h2 a{color:inherit;text-decoration:none}
.rv-service-catalog-card p{color:#747079;font-size:13px;line-height:1.62;margin:0;max-width:420px}
.rv-service-catalog-card__footer{margin-top:auto;padding-top:22px}
.rv-service-catalog-card__plans{display:flex;flex-wrap:wrap;gap:7px}
.rv-service-catalog-card__plans span{border:1px solid #ebe7e2;border-radius:999px;background:#faf9f7;padding:6px 9px;color:#646069;font-size:10px}
.rv-service-catalog-card__link{display:inline-flex;margin-top:18px;font-size:12px;font-weight:800}

.rv-services-next{padding:0 0 110px;background:#f4f2ef}
.rv-services-next__inner{border:1px solid #e4dfeb;border-radius:31px;padding:42px 48px;background:linear-gradient(145deg,#fff,#faf8ff);display:flex;justify-content:space-between;align-items:center;gap:30px;box-shadow:0 22px 60px rgba(26,22,30,.055)}
.rv-services-next__inner h2{font-size:clamp(34px,4vw,52px);line-height:1;letter-spacing:-.055em;margin:13px 0 8px}
.rv-services-next__inner p{margin:0;color:#77747c;font-size:14px}
.rv-services-empty{padding:54px;border-radius:29px}
.rv-services-empty h2{font-size:35px;letter-spacing:-.04em;margin:20px 0 8px}
.rv-services-empty p{max-width:680px}

/* Single service page navigation. */
.rv-service-breadcrumb{display:flex;gap:8px;align-items:center;margin:0 0 19px;color:#88848e;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.rv-service-breadcrumb a{color:inherit;text-decoration:none}
.rv-service-breadcrumb a:hover{color:#1a1820}
.rv-single-service .rv-service-hero{padding-top:74px}

@media(max-width:1100px){
  .rv-services-hero__grid{grid-template-columns:1fr;gap:30px}
  .rv-services-hero__visual{min-height:460px;max-width:660px;width:100%;margin:0 auto}
  .rv-services-catalog__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .rv-services-hero{padding:65px 0 62px}
  .rv-services-hero h1{font-size:clamp(46px,12vw,66px)}
  .rv-services-hero__copy>p{font-size:15px}
  .rv-services-hero__visual{min-height:405px}
  .rv-services-hero-card--main{width:min(100%,340px);min-height:270px;padding:28px}
  .rv-services-hero-card--main strong{font-size:76px}
  .rv-services-hero-card--one{left:-3px;top:26px}
  .rv-services-hero-card--two{right:-2px;top:8px}
  .rv-services-hero-card--three{right:8px;bottom:11px}
  .rv-services-hero-card--mini{width:150px;padding:14px 15px}
  .rv-services-catalog{padding-top:72px;padding-bottom:82px}
  .rv-services-catalog__head{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:30px}
  .rv-services-catalog__head h2{font-size:42px}
  .rv-services-catalog__grid{grid-template-columns:1fr}
  .rv-services-next{padding-bottom:78px}
  .rv-services-next__inner{padding:31px;flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){.rv-service-catalog-card,.rv-service-catalog-card__media img,.rv-service-catalog-card__arrow{transition:none}}

/* Service card imagery */
.rv-service-catalog-card__media img{object-position:center center}


/* Digital products keep the same catalog card system, with a subtle one-time badge. */
.rv-service-catalog-card.is-one-time .rv-service-catalog-card__meta span:first-child{color:#7048d6}
.rv-service-catalog-card.is-one-time .rv-service-catalog-card__plans span{border-color:#e2d9ff;background:#faf8ff;color:#5e4d88}
.rv-service-catalog-card.is-one-time .rv-service-catalog-card__link{color:#6d49cf}
