.services-page{
  background:
    radial-gradient(circle at 79% 8%,rgba(126,177,255,.25),transparent 23%),
    radial-gradient(circle at 16% 47%,rgba(219,231,255,.45),transparent 27%),
    linear-gradient(180deg,#fff 0%,#fbfcff 33%,#f8fbff 68%,#fff 100%);
  color:#101a32;
}

.services-hero-ref{
  min-height:330px;display:block;padding-top:30px;padding-bottom:26px;position:relative;isolation:isolate;overflow:visible;
}
.services-hero-ref:before{
  content:"";position:absolute;z-index:-2;inset:-24px -8vw -30px 40%;
  background:
    radial-gradient(ellipse at 68% 44%,rgba(101,160,255,.30),transparent 35%),
    radial-gradient(ellipse at 86% 54%,rgba(203,220,255,.42),transparent 45%),
    radial-gradient(ellipse at 52% 26%,rgba(240,225,255,.28),transparent 36%);
  filter:blur(2px);pointer-events:none;
}
.services-hero-copy{position:relative;z-index:3;max-width:650px;padding-right:24px}
.services-breadcrumbs{display:flex;gap:12px;align-items:center;color:#8390a9;font-size:12px;margin-bottom:32px}
.services-hero-copy h1{font-size:clamp(38px,4.6vw,64px);letter-spacing:-.05em;line-height:1.08;margin:0;color:#111827;font-weight:500}
.services-hero-copy h1 span{color:#5d85e8}
.services-hero-copy p{font-size:15px;line-height:1.65;color:#53627f;margin:24px 0 0}
.services-hero-art{
  position:absolute;z-index:1;right:-2.5%;top:8px;width:55%;height:310px;display:flex;align-items:center;justify-content:flex-end;pointer-events:none;overflow:visible;
}
.services-hero-art:before{content:"";position:absolute;width:84%;height:72%;border-radius:50%;background:rgba(95,155,255,.20);filter:blur(48px);right:0;top:16%}
.services-hero-art img{
  width:min(100%,560px);height:auto;position:relative;filter:saturate(.96) brightness(1.045);
  -webkit-mask-image:radial-gradient(ellipse 72% 70% at 58% 48%,#000 47%,rgba(0,0,0,.86) 62%,transparent 100%);
  mask-image:radial-gradient(ellipse 72% 70% at 58% 48%,#000 47%,rgba(0,0,0,.86) 62%,transparent 100%);
}

.services-catalog{padding:18px 0 26px}
.services-ref-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.service-ref-card{
  position:relative;min-height:326px;overflow:hidden;text-align:left;padding:21px 20px 18px;border-radius:27px;
  border:1px solid rgba(183,199,226,.63);box-shadow:0 12px 30px rgba(62,89,132,.045),inset 0 1px 0 rgba(255,255,255,.9);
  color:#111827;font:inherit;cursor:pointer;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;background:#fafdff;
}
.service-ref-card.tone-blue{background:linear-gradient(145deg,#f7fbff 0%,#f3f8ff 55%,#fbfdff 100%)}
.service-ref-card.tone-ice{background:linear-gradient(145deg,#fbfdff 0%,#f7fbff 55%,#f3f9ff 100%)}
.service-ref-card.tone-lilac{background:linear-gradient(145deg,#fbfbff 0%,#faf7ff 57%,#f8fbff 100%)}
.service-ref-card.tone-cream{background:linear-gradient(145deg,#fffdfa 0%,#fdf9f3 57%,#fbfcff 100%)}
.service-ref-card.tone-pink{background:linear-gradient(145deg,#fffafd 0%,#fdf7fb 57%,#f8faff 100%)}
.service-ref-card:after{content:"";position:absolute;width:5px;height:5px;border-radius:50%;right:27px;top:84px;background:#78aaff;box-shadow:0 0 10px #78aaff,38px 30px 0 -1px rgba(122,170,255,.58);opacity:.7}
.service-ref-tag{position:absolute;top:68px;left:20px;right:auto;font-size:9px;letter-spacing:.02em;text-transform:uppercase;color:#6184d9;background:#edf3ff;border-radius:999px;padding:7px 11px;z-index:4}
.service-ref-card h2{font-size:18px;line-height:1.25;margin:0;font-weight:700;letter-spacing:-.025em;position:absolute;z-index:4;top:20px;left:20px;right:20px;max-width:none;min-height:0}
.service-ref-visual{position:absolute;left:5%;right:5%;top:92px;bottom:auto;width:90%;height:182px;object-fit:contain;z-index:1;transition:transform .38s cubic-bezier(.2,.8,.2,1),filter .38s ease;filter:saturate(.96)}
.service-ref-more{position:absolute;z-index:3;right:19px;bottom:16px;color:#53658e;font-size:11px;display:flex;align-items:center;gap:12px}
.service-ref-more b{font-size:18px;font-weight:500;color:#324a77}
@media (hover:hover) and (pointer:fine){
  .service-ref-card:hover{transform:translateY(-4px);border-color:rgba(107,148,224,.82);box-shadow:0 18px 38px rgba(72,102,153,.10),0 0 0 1px rgba(111,159,240,.08) inset}
  .service-ref-card:hover .service-ref-visual{transform:translateY(-5px) scale(1.025);filter:saturate(1.02) drop-shadow(0 12px 22px rgba(91,134,204,.12))}
  .service-ref-card:nth-child(2):hover .service-ref-visual,.service-ref-card:nth-child(8):hover .service-ref-visual,.service-ref-card:nth-child(9):hover .service-ref-visual{transform:translateY(-4px) rotate(1.5deg) scale(1.02)}
  .service-ref-card:nth-child(4):hover .service-ref-visual{transform:translateY(-8px) scale(1.02)}
  .service-ref-card:nth-child(7):hover .service-ref-visual{filter:saturate(1.05) brightness(1.04) drop-shadow(0 0 18px rgba(255,206,109,.22))}
}

.services-choice{margin-top:4px;margin-bottom:22px;min-height:108px;border:1px solid rgba(125,160,222,.72);border-radius:22px;background:linear-gradient(90deg,#fbfdff,#f8fbff 50%,#fbfdff);display:grid;grid-template-columns:190px 1fr auto;gap:28px;align-items:center;padding:18px 28px;overflow:hidden;box-shadow:inset 0 1px 0 #fff}
.services-choice img{width:150px;max-height:80px;object-fit:contain;mix-blend-mode:multiply;opacity:.82}
.services-choice h2{font-size:18px;margin:0 0 7px;color:#273b6e}
.services-choice p{font-size:12px;color:#5f6f90;margin:0;line-height:1.5}
.choice-btn{display:inline-flex;align-items:center;justify-content:center;min-width:198px;padding:15px 22px;border-radius:999px;background:#0f1e38;color:#fff;font-weight:700;font-size:13px;box-shadow:0 10px 24px rgba(15,30,56,.12);transition:.2s ease}
.choice-btn:hover{transform:translateY(-2px)}
.services-contact{min-height:86px;border:1px solid rgba(193,207,231,.68);border-radius:20px;margin-bottom:16px;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;background:rgba(255,255,255,.72)}
.services-contact h2{font-size:16px;color:#273b6e;margin:0 0 5px}.services-contact p{margin:0;font-size:11px;color:#8995aa}
.contact-telegram{display:inline-flex;align-items:center;gap:9px;padding:11px 16px;border:1px solid #d6e0f1;border-radius:14px;background:#fff;color:#526483;font-size:11px;font-weight:600}.contact-telegram span{color:#4c80e6;font-size:15px}
.services-footer{min-height:110px}

.service-placeholder-modal{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:22px;background:rgba(20,40,72,.26);backdrop-filter:blur(12px)}
.service-placeholder-modal.is-open{display:flex}.service-placeholder-card{width:min(520px,100%);position:relative;padding:34px;border-radius:28px;background:rgba(255,255,255,.97);border:1px solid #ccd9ee;box-shadow:0 28px 80px rgba(35,61,105,.2)}
.service-placeholder-close{position:absolute;top:14px;right:16px;width:38px;height:38px;border-radius:50%;border:1px solid #d6e0ef;background:#fff;color:#324a74;font-size:24px;cursor:pointer}.service-placeholder-label{display:inline-flex;padding:7px 10px;border-radius:999px;background:#eef4ff;color:#5d7bb3;text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:800}.service-placeholder-card h2{font-size:30px;line-height:1.15;margin:18px 0 12px}.service-placeholder-card p{margin:0;color:#667694;line-height:1.65}

@media (max-width:980px){.services-ref-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.services-hero-ref{grid-template-columns:1fr .8fr}.services-choice{grid-template-columns:130px 1fr}.services-choice .choice-btn{grid-column:2;justify-self:start}.services-choice img{grid-row:1 / 3}}
@media (max-width:680px){.services-hero-ref{padding-top:22px;min-height:390px;overflow:hidden}.services-breadcrumbs{margin-bottom:22px}.services-hero-art{width:92%;right:-24%;top:155px;height:220px;justify-content:center;opacity:.82}.services-hero-art img{width:100%;max-width:430px}.services-ref-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.service-ref-card{min-height:275px;padding:17px 14px 14px;border-radius:22px}.service-ref-card h2{font-size:18px;line-height:1.25;margin:0;font-weight:700;letter-spacing:-.025em;position:absolute;z-index:4;top:20px;left:20px;right:20px;max-width:none;min-height:0}.service-ref-tag{position:absolute;top:68px;left:20px;right:auto;font-size:9px;letter-spacing:.02em;text-transform:uppercase;color:#6184d9;background:#edf3ff;border-radius:999px;padding:7px 11px;z-index:4}.service-ref-visual{height:155px;top:92px;bottom:auto}.service-ref-more{font-size:9px;right:14px}.services-choice{grid-template-columns:1fr;padding:20px;text-align:center}.services-choice img{grid-row:auto;margin:auto}.services-choice .choice-btn{grid-column:auto;justify-self:stretch}.services-contact{flex-direction:column;align-items:flex-start}.contact-telegram{width:100%;justify-content:center}}
@media (max-width:430px){.services-ref-grid{grid-template-columns:1fr}.service-ref-card{min-height:310px}.service-ref-visual{height:190px}.services-hero-copy h1{font-size:36px}}
@media (prefers-reduced-motion:reduce){.service-ref-card,.service-ref-visual,.choice-btn{transition:none!important}}

.service-ref-card.has-tag h2{margin-top:0;max-width:none}
.service-ref-card:not(.has-tag) h2{padding-top:0}
.services-page .site-topbar{background:rgba(255,255,255,.86)}

/* v12 — reference-matched integrated services background */
.services-page{
  background:
    radial-gradient(ellipse 58% 34% at 82% 8%, rgba(122,174,255,.30) 0%, rgba(178,208,255,.18) 34%, rgba(232,240,255,.08) 58%, transparent 78%),
    radial-gradient(ellipse 44% 30% at 8% 22%, rgba(210,229,255,.25) 0%, rgba(238,245,255,.12) 52%, transparent 82%),
    radial-gradient(ellipse 52% 34% at 52% 56%, rgba(218,233,255,.20) 0%, rgba(245,248,255,.08) 58%, transparent 84%),
    radial-gradient(ellipse 42% 24% at 17% 78%, rgba(225,218,255,.16) 0%, rgba(249,247,255,.06) 62%, transparent 84%),
    radial-gradient(ellipse 40% 24% at 86% 88%, rgba(203,226,255,.18) 0%, rgba(247,251,255,.06) 62%, transparent 84%),
    linear-gradient(180deg,#ffffff 0%,#f8fbff 22%,#f7fbff 52%,#fbfcff 76%,#ffffff 100%);
  background-attachment: scroll;
}
.services-hero-ref{
  min-height:330px;
  position:relative;
  isolation:isolate;
  overflow:visible;
}
.services-hero-ref:before{
  content:"";
  position:absolute;
  z-index:-2;
  inset:-80px -12vw -70px 34%;
  background:
    radial-gradient(ellipse 62% 58% at 70% 43%,rgba(112,166,255,.23),transparent 55%),
    radial-gradient(ellipse 48% 52% at 48% 50%,rgba(200,221,255,.20),transparent 62%),
    radial-gradient(ellipse 38% 40% at 82% 22%,rgba(239,226,255,.16),transparent 64%);
  filter:blur(16px);
  pointer-events:none;
}
.services-hero-art{
  position:absolute;
  z-index:1;
  right:-7%;
  top:0;
  width:61%;
  height:320px;
  display:flex;
  align-items:flex-start;
  justify-content:flex-end;
  pointer-events:none;
  overflow:visible;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.services-hero-art:before{
  content:"";
  position:absolute;
  width:92%;
  height:88%;
  right:0;
  top:2%;
  border-radius:50%;
  background:radial-gradient(ellipse,rgba(110,167,255,.22) 0%,rgba(173,204,255,.10) 45%,transparent 74%);
  filter:blur(30px);
}
.services-hero-art img{
  width:min(100%,760px);
  height:auto;
  position:relative;
  display:block;
  opacity:.98;
  filter:saturate(.98) brightness(1.025);
  -webkit-mask-image:none;
  mask-image:none;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
@media (max-width:980px){
  .services-hero-art{right:-14%;width:68%;opacity:.9}
}
@media (max-width:680px){
  .services-page{
    background:
      radial-gradient(ellipse 80% 22% at 82% 10%,rgba(126,176,255,.24),transparent 72%),
      radial-gradient(ellipse 90% 30% at 10% 45%,rgba(215,232,255,.22),transparent 78%),
      linear-gradient(180deg,#fff 0%,#f7fbff 52%,#fff 100%);
  }
  .services-hero-art{width:105%;right:-44%;top:150px;height:210px;opacity:.72}
  .services-hero-art img{width:100%;max-width:560px}
}

/* v13 — full-page pastel blue/lilac cosmic background, reference matched */
.services-page{
  position:relative;
  isolation:isolate;
  min-height:100%;
  background:
    radial-gradient(ellipse 54% 30% at 83% 7%, rgba(108,155,255,.48) 0%, rgba(135,160,255,.32) 24%, rgba(176,164,255,.22) 44%, rgba(223,226,255,.10) 64%, transparent 82%),
    radial-gradient(ellipse 52% 34% at 50% 24%, rgba(222,208,255,.28) 0%, rgba(236,227,255,.16) 46%, transparent 78%),
    radial-gradient(ellipse 55% 30% at 9% 46%, rgba(192,222,255,.30) 0%, rgba(226,240,255,.17) 48%, transparent 78%),
    radial-gradient(ellipse 48% 26% at 84% 58%, rgba(211,199,255,.22) 0%, rgba(231,222,255,.12) 48%, transparent 78%),
    radial-gradient(ellipse 60% 28% at 34% 78%, rgba(183,216,255,.22) 0%, rgba(225,239,255,.13) 48%, transparent 80%),
    linear-gradient(180deg,#fbfdff 0%,#f7f8ff 24%,#f5f8ff 52%,#f8f7ff 74%,#fbfdff 100%);
  background-attachment:scroll;
  color:#101a32;
}
.services-page::before,
.services-page::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
}
.services-page::before{
  opacity:.58;
  background-image:
    radial-gradient(circle at 7% 13%,rgba(255,255,255,.95) 0 1.2px,transparent 1.8px),
    radial-gradient(circle at 16% 34%,rgba(129,170,255,.70) 0 1px,transparent 1.6px),
    radial-gradient(circle at 24% 8%,rgba(255,255,255,.82) 0 1.1px,transparent 1.8px),
    radial-gradient(circle at 39% 19%,rgba(177,157,255,.65) 0 1px,transparent 1.7px),
    radial-gradient(circle at 47% 7%,rgba(255,255,255,.92) 0 1.3px,transparent 1.9px),
    radial-gradient(circle at 61% 31%,rgba(112,164,255,.62) 0 1px,transparent 1.6px),
    radial-gradient(circle at 72% 15%,rgba(255,255,255,.88) 0 1.2px,transparent 1.9px),
    radial-gradient(circle at 84% 42%,rgba(161,142,255,.60) 0 1px,transparent 1.6px),
    radial-gradient(circle at 91% 20%,rgba(255,255,255,.90) 0 1.2px,transparent 1.9px),
    radial-gradient(circle at 12% 66%,rgba(119,169,255,.52) 0 1px,transparent 1.6px),
    radial-gradient(circle at 31% 57%,rgba(255,255,255,.78) 0 1px,transparent 1.7px),
    radial-gradient(circle at 53% 72%,rgba(156,137,255,.48) 0 1px,transparent 1.6px),
    radial-gradient(circle at 69% 84%,rgba(255,255,255,.78) 0 1px,transparent 1.8px),
    radial-gradient(circle at 89% 73%,rgba(118,166,255,.50) 0 1px,transparent 1.6px);
}
.services-page::after{
  opacity:.42;
  background:
    radial-gradient(circle at 79% 14%,rgba(255,255,255,.98) 0 2px,rgba(255,255,255,.30) 2.6px,transparent 5px),
    radial-gradient(circle at 88% 23%,rgba(255,255,255,.98) 0 2.4px,rgba(168,198,255,.30) 3px,transparent 6px),
    radial-gradient(circle at 67% 9%,rgba(255,255,255,.95) 0 1.8px,transparent 4px),
    radial-gradient(circle at 94% 36%,rgba(255,255,255,.92) 0 2px,transparent 5px),
    radial-gradient(circle at 8% 52%,rgba(255,255,255,.82) 0 1.7px,transparent 4px),
    radial-gradient(circle at 96% 82%,rgba(255,255,255,.82) 0 1.8px,transparent 4px);
}

/* Keep the hero as one continuous background composition */
.services-hero-ref{
  min-height:350px;
  padding-top:30px;
  padding-bottom:30px;
  overflow:visible;
  isolation:isolate;
}
.services-hero-ref::before{
  content:"";
  position:absolute;
  z-index:-1;
  left:36%;
  right:-11vw;
  top:-92px;
  height:475px;
  background:
    radial-gradient(ellipse 60% 65% at 70% 44%,rgba(104,149,255,.30) 0%,rgba(133,155,255,.22) 31%,rgba(172,159,255,.16) 49%,rgba(220,225,255,.08) 67%,transparent 84%);
  filter:blur(4px);
  pointer-events:none;
}
.services-hero-copy{position:relative;z-index:4;max-width:610px;padding-right:22px}
.services-hero-art{
  position:absolute;
  z-index:2;
  right:-9%;
  top:-56px;
  width:69%;
  height:390px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  pointer-events:none;
  overflow:visible;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.services-hero-art::before{
  content:"";
  position:absolute;
  width:104%;
  height:112%;
  right:-2%;
  top:-4%;
  border-radius:50%;
  background:
    radial-gradient(ellipse at 64% 46%,rgba(100,145,255,.33) 0%,rgba(131,155,255,.23) 35%,rgba(176,157,255,.16) 55%,rgba(236,231,255,.07) 72%,transparent 84%);
  filter:blur(32px);
}
.services-hero-art img{
  width:min(100%,920px)!important;
  max-width:none!important;
  height:auto!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  position:relative;
  display:block;
  opacity:1;
  transform:none!important;
  filter:saturate(1.04) brightness(1.05) drop-shadow(0 18px 42px rgba(109,130,221,.10));
  -webkit-mask-image:radial-gradient(ellipse 78% 78% at 55% 48%,#000 58%,rgba(0,0,0,.82) 72%,transparent 100%);
  mask-image:radial-gradient(ellipse 78% 78% at 55% 48%,#000 58%,rgba(0,0,0,.82) 72%,transparent 100%);
}

/* Let cards sit lightly in the same cosmic atmosphere */
.service-ref-card{
  background-color:rgba(255,255,255,.66);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.service-ref-card.tone-blue{background:linear-gradient(145deg,rgba(248,252,255,.88),rgba(239,246,255,.74))}
.service-ref-card.tone-ice{background:linear-gradient(145deg,rgba(252,254,255,.89),rgba(243,249,255,.74))}
.service-ref-card.tone-lilac{background:linear-gradient(145deg,rgba(253,251,255,.89),rgba(246,241,255,.72))}
.service-ref-card.tone-cream{background:linear-gradient(145deg,rgba(255,253,249,.90),rgba(250,245,255,.72))}
.service-ref-card.tone-pink{background:linear-gradient(145deg,rgba(255,251,254,.90),rgba(247,240,255,.72))}
.services-choice,
.services-contact{
  background:linear-gradient(100deg,rgba(255,255,255,.74),rgba(241,247,255,.67) 48%,rgba(248,242,255,.70));
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

@media (max-width:980px){
  .services-hero-art{right:-17%;top:-22px;width:72%;height:350px}
  .services-hero-art img{width:min(100%,760px)!important}
}
@media (max-width:680px){
  .services-page{
    background:
      radial-gradient(ellipse 86% 22% at 86% 8%,rgba(118,161,255,.36),transparent 72%),
      radial-gradient(ellipse 88% 26% at 20% 38%,rgba(216,203,255,.24),transparent 74%),
      radial-gradient(ellipse 92% 30% at 85% 68%,rgba(198,220,255,.20),transparent 78%),
      linear-gradient(180deg,#fbfdff 0%,#f6f7ff 48%,#fbfdff 100%);
  }
  .services-hero-ref{min-height:470px;padding-top:22px;overflow:hidden}
  .services-hero-copy{max-width:100%;padding-right:0}
  .services-hero-art{width:115%;right:-52%;top:170px;height:270px;opacity:.92}
  .services-hero-art img{width:100%!important;max-width:700px!important}
}

/* v14 — simplified services background: soft blue/lilac glow + stars only */
.services-page{
  position:relative;
  isolation:isolate;
  min-height:100%;
  background:
    radial-gradient(ellipse 58% 34% at 82% 8%, rgba(136,170,255,.34) 0%, rgba(176,188,255,.24) 30%, rgba(219,211,255,.17) 52%, transparent 78%),
    radial-gradient(ellipse 58% 36% at 20% 30%, rgba(197,224,255,.28) 0%, rgba(226,238,255,.16) 48%, transparent 80%),
    radial-gradient(ellipse 52% 34% at 74% 48%, rgba(208,194,255,.24) 0%, rgba(232,222,255,.14) 48%, transparent 80%),
    radial-gradient(ellipse 62% 36% at 26% 72%, rgba(188,217,255,.22) 0%, rgba(225,236,255,.13) 50%, transparent 82%),
    radial-gradient(ellipse 54% 30% at 82% 88%, rgba(217,200,255,.20) 0%, rgba(239,231,255,.10) 52%, transparent 82%),
    linear-gradient(180deg,#fcfdff 0%,#f7f8ff 28%,#f5f8ff 52%,#f8f6ff 76%,#fcfdff 100%);
  color:#101a32;
}
.services-page::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  opacity:.62;
  background-image:
    radial-gradient(circle at 7% 13%,rgba(255,255,255,.95) 0 1.2px,transparent 1.9px),
    radial-gradient(circle at 16% 34%,rgba(123,171,255,.72) 0 1px,transparent 1.7px),
    radial-gradient(circle at 24% 8%,rgba(255,255,255,.85) 0 1.1px,transparent 1.8px),
    radial-gradient(circle at 39% 19%,rgba(179,158,255,.68) 0 1px,transparent 1.7px),
    radial-gradient(circle at 47% 7%,rgba(255,255,255,.92) 0 1.2px,transparent 1.9px),
    radial-gradient(circle at 61% 31%,rgba(112,164,255,.64) 0 1px,transparent 1.6px),
    radial-gradient(circle at 72% 15%,rgba(255,255,255,.90) 0 1.2px,transparent 1.9px),
    radial-gradient(circle at 84% 42%,rgba(161,142,255,.62) 0 1px,transparent 1.6px),
    radial-gradient(circle at 91% 20%,rgba(255,255,255,.90) 0 1.2px,transparent 1.9px),
    radial-gradient(circle at 12% 66%,rgba(119,169,255,.54) 0 1px,transparent 1.6px),
    radial-gradient(circle at 31% 57%,rgba(255,255,255,.80) 0 1px,transparent 1.7px),
    radial-gradient(circle at 53% 72%,rgba(156,137,255,.50) 0 1px,transparent 1.6px),
    radial-gradient(circle at 69% 84%,rgba(255,255,255,.80) 0 1px,transparent 1.8px),
    radial-gradient(circle at 89% 73%,rgba(118,166,255,.52) 0 1px,transparent 1.6px);
}
.services-page::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  opacity:.34;
  background:
    radial-gradient(circle at 79% 14%,rgba(255,255,255,.98) 0 2px,rgba(177,198,255,.26) 2.8px,transparent 5px),
    radial-gradient(circle at 88% 23%,rgba(255,255,255,.96) 0 2.2px,rgba(179,162,255,.22) 3px,transparent 6px),
    radial-gradient(circle at 94% 36%,rgba(255,255,255,.92) 0 1.8px,transparent 4px),
    radial-gradient(circle at 8% 52%,rgba(255,255,255,.82) 0 1.7px,transparent 4px),
    radial-gradient(circle at 96% 82%,rgba(255,255,255,.82) 0 1.8px,transparent 4px);
}
/* Remove all planet artwork from the hero for now */
.services-hero-art{display:none!important;}
.services-hero-ref::before{display:none!important;}
.services-hero-copy{max-width:720px;padding-right:0;}
.services-hero-ref{min-height:auto;padding-top:30px;padding-bottom:46px;overflow:visible;}

@media (max-width:680px){
  .services-page{
    background:
      radial-gradient(ellipse 92% 26% at 86% 8%,rgba(140,174,255,.30),transparent 74%),
      radial-gradient(ellipse 96% 32% at 12% 38%,rgba(211,200,255,.22),transparent 76%),
      radial-gradient(ellipse 94% 30% at 86% 70%,rgba(194,220,255,.18),transparent 78%),
      linear-gradient(180deg,#fcfdff 0%,#f6f7ff 50%,#fbfdff 100%);
  }
  .services-hero-ref{min-height:auto;padding-top:22px;padding-bottom:34px;overflow:visible;}
}


/* v15 — exact responsive title breaks requested by client */
.services-title{max-width:none!important;}
.services-title-desktop{display:inline!important;color:inherit!important;}
.services-title-mobile{display:none!important;color:inherit!important;}
.services-title em{font-style:normal;color:#5d85e8;}
@media (min-width:761px){
  .services-hero-copy{max-width:900px!important;}
  .services-title{font-size:clamp(38px,4vw,60px)!important;line-height:1.08!important;}
  .services-title-desktop{display:inline!important;}
  .services-title-mobile{display:none!important;}
}
@media (max-width:760px){
  .services-title-desktop{display:none!important;}
  .services-title-mobile{display:inline!important;}
  .services-title{font-size:clamp(31px,9vw,42px)!important;line-height:1.12!important;}
}

/* v16 — detailed service modal */
.service-detail-modal,.training-choice-modal{
  position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;
  padding:28px;background:rgba(21,31,58,.26);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)
}
.service-detail-modal.is-open,.training-choice-modal.is-open{display:flex}
body.modal-open{overflow:hidden}
.service-detail-card{
  width:min(900px,calc(100vw - 56px));max-height:calc(100vh - 56px);display:flex;flex-direction:column;position:relative;
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(244,248,255,.94) 55%,rgba(249,245,255,.96));
  border:1px solid rgba(141,176,224,.42);border-radius:30px;box-shadow:0 28px 90px rgba(56,78,130,.24);overflow:hidden;color:#111a30
}
.service-detail-scroll{overflow:auto;padding:38px 42px 20px;overscroll-behavior:contain}
.service-detail-close,.training-choice-close{position:absolute;z-index:3;right:18px;top:16px;width:44px;height:44px;border:0;border-radius:50%;background:rgba(239,245,255,.9);color:#50627f;font-size:28px;line-height:1;cursor:pointer}
.service-detail-label{display:inline-flex;padding:7px 12px;border-radius:999px;background:#eaf3ff;color:#4875b6;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.service-detail-card h2{font-size:clamp(28px,4vw,44px);line-height:1.08;margin:16px 56px 10px 0;letter-spacing:-.035em}
.service-detail-lead{font-size:17px;line-height:1.65;color:#56657d;margin:0 0 24px;max-width:760px}
.service-detail-section{padding:20px 0;border-top:1px solid rgba(145,168,205,.24)}
.service-detail-section h3{font-size:16px;margin:0 0 10px;color:#1a2d4f}
.service-detail-section p{margin:0;color:#586980;line-height:1.65}
.service-detail-section ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 22px}
.service-detail-section li{position:relative;padding-left:18px;color:#4d5f78;line-height:1.5;font-size:14px}
.service-detail-section li::before{content:"";position:absolute;left:0;top:.7em;width:6px;height:6px;border-radius:50%;background:#75aaf0;box-shadow:0 0 0 4px rgba(117,170,240,.10)}
.service-detail-note{margin:4px 0 12px;padding:13px 15px;border-radius:14px;background:rgba(230,239,255,.72);color:#50647f;font-size:13px;line-height:1.55}
.service-detail-footer{border-top:1px solid rgba(145,168,205,.28);padding:20px 42px 22px;display:grid;grid-template-columns:minmax(170px,1fr) auto;gap:14px 18px;align-items:center;background:rgba(255,255,255,.72)}
.service-price-wrap span{display:block;font-size:12px;color:#7a8aa2;margin-bottom:4px}.service-price-wrap strong{font-size:24px;line-height:1.15;color:#14233e}
.service-detail-actions{display:flex;gap:10px}.service-action-primary,.service-action-phone{min-height:46px;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;border-radius:13px;text-decoration:none;font-weight:800;font-size:13px}
.service-action-primary{background:#78aef3;color:white;box-shadow:0 9px 24px rgba(75,129,203,.22)}.service-action-phone{background:#fff;color:#38679f;border:1px solid rgba(98,143,203,.34)}
.service-phone-copy{grid-column:1/-1;color:#4e6688;font-size:13px;text-decoration:underline;text-underline-offset:3px;width:max-content;max-width:100%;user-select:text;-webkit-user-select:text}
.training-choice-card{width:min(620px,calc(100vw - 48px));position:relative;padding:34px;background:linear-gradient(145deg,#fff,#f4f8ff 58%,#faf6ff);border:1px solid rgba(141,176,224,.42);border-radius:28px;box-shadow:0 28px 90px rgba(56,78,130,.24)}
.training-choice-card h2{font-size:30px;margin:14px 50px 8px 0}.training-choice-card p{color:#63728a;line-height:1.6}.training-choice-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.training-choice-actions button{min-height:66px;padding:13px;border:1px solid rgba(112,153,210,.30);border-radius:16px;background:rgba(255,255,255,.84);color:#254a79;font-weight:800;cursor:pointer}
@media(max-width:680px){
  .service-detail-modal,.training-choice-modal{padding:12px;align-items:center}.service-detail-card{width:calc(100vw - 24px);max-height:calc(100vh - 24px);border-radius:22px}.service-detail-scroll{padding:28px 20px 14px}.service-detail-card h2{font-size:29px;margin-right:42px}.service-detail-lead{font-size:15px}.service-detail-section ul{grid-template-columns:1fr}.service-detail-footer{padding:16px 20px 18px;grid-template-columns:1fr}.service-detail-actions{display:grid;grid-template-columns:1fr}.service-action-primary,.service-action-phone{width:100%}.service-phone-copy{grid-column:1}.training-choice-card{width:calc(100vw - 24px);padding:28px 20px}.training-choice-card h2{font-size:26px}.training-choice-actions{grid-template-columns:1fr}
}
