/* =====================================================================
   ULYSTA — Service Detail page styles (builds on home2.css tokens)
   ===================================================================== */

/* breadcrumb */
.crumb{display:flex;align-items:center;gap:9px;font-size:.85rem;color:var(--muted);margin-bottom:20px;flex-wrap:wrap}
.crumb a{color:var(--muted)}.crumb a:hover{color:var(--orange)}
.crumb svg{width:13px;height:13px;opacity:.55}
.crumb .cur{color:var(--ink);font-weight:600}

/* ---- SERVICE HERO ---- */
.svc-hero{position:relative;padding:128px 0 72px;background:var(--mesh);overflow:hidden}
.svc-hero .blob-a{width:480px;height:480px;background:var(--grad-blob);opacity:.5;top:-110px;right:-70px}
.svc-hero .blob-b{width:320px;height:320px;background:linear-gradient(135deg,#cfe6fb,#ffe3d6);opacity:.45;bottom:-130px;left:-110px;animation-delay:-4s}
.svc-hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.06fr .94fr;gap:50px;align-items:center}
.svc-no{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);margin-bottom:14px}
.svc-no b{width:30px;height:30px;border-radius:9px;background:var(--grad-orange);color:#fff;display:grid;place-items:center;font-size:.85rem;box-shadow:var(--sh-orange)}
.svc-hero h1{font-size:clamp(2.1rem,4.4vw,3.3rem);letter-spacing:-.035em;line-height:1.06;margin-bottom:18px}
.svc-hero .lead{font-size:1.16rem;color:var(--muted);max-width:52ch;margin-bottom:28px}
.svc-hero-actions{display:flex;gap:15px;flex-wrap:wrap;margin-bottom:30px}
.svc-hero-meta{display:flex;gap:30px;flex-wrap:wrap;padding-top:24px;border-top:1px solid var(--line)}
.svc-hero-meta .m b{display:block;font-size:1.3rem;font-weight:750;color:var(--ink);letter-spacing:-.02em}
.svc-hero-meta .m span{font-size:.8rem;color:var(--muted)}
.svc-hero-media{position:relative;padding:14px}
.svc-hero-media .shot{position:relative;z-index:1;border-radius:var(--r-xl);overflow:hidden;border:6px solid #fff;box-shadow:var(--sh-l);aspect-ratio:4/3}
.svc-hero-media .shot img{width:100%;height:100%;object-fit:cover}
.svc-hero-media::before{content:"";position:absolute;right:-10px;top:-16px;width:60%;height:74%;z-index:0;background:var(--grad-blob);
  opacity:.55;border-radius:46% 54% 58% 42%/45% 49% 51% 55%;filter:blur(5px);animation:morph 18s ease-in-out infinite}
.svc-hero-media .fbadge{position:absolute;left:-8px;bottom:24px;z-index:2;display:flex;align-items:center;gap:10px;background:#fff;
  border:1px solid var(--line);border-radius:14px;padding:11px 14px;box-shadow:var(--sh);animation:floaty2 8s ease-in-out infinite}
.svc-hero-media .fbadge .bi{width:34px;height:34px;border-radius:9px;background:var(--grad-blue);display:grid;place-items:center}
.svc-hero-media .fbadge .bi svg{width:18px;height:18px;stroke:#fff}
.svc-hero-media .fbadge b{display:block;font-size:.85rem;color:var(--ink);line-height:1.15}
.svc-hero-media .fbadge span{font-size:.72rem;color:var(--muted)}
@media(max-width:920px){.svc-hero-grid{grid-template-columns:1fr;gap:40px}.svc-hero-media{max-width:480px}}

/* ---- OVERVIEW ---- */
.ov-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.ov-grid h2{font-size:clamp(1.7rem,3vw,2.3rem);margin:14px 0 14px;letter-spacing:-.03em}
.ov-grid p{color:var(--muted);font-size:1.06rem;margin-bottom:14px}
.ov-points{display:grid;gap:12px;margin-top:8px}
.ov-points .op{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px 16px;box-shadow:var(--sh-s)}
.ov-points .op svg{width:20px;height:20px;stroke:var(--orange);flex:0 0 auto;margin-top:2px}
.ov-points .op b{display:block;font-size:.96rem;color:var(--ink)}
.ov-points .op span{font-size:.86rem;color:var(--muted)}
@media(max-width:860px){.ov-grid{grid-template-columns:1fr;gap:30px}}

/* ---- WHAT WE DELIVER (capability cards) ---- */
.deliver-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.dcard{position:relative;border:1px solid var(--line);border-radius:var(--r-lg);padding:30px;background:#fff;box-shadow:var(--sh-s);
  transition:.35s var(--ease);overflow:hidden}
.dcard:hover{transform:translateY(-6px);box-shadow:var(--sh-l)}
.dcard .blob-s{position:absolute;width:150px;height:150px;border-radius:50%;right:-46px;top:-46px;opacity:.45;filter:blur(8px)}
.dcard>*{position:relative;z-index:1}
.dcard .dic{width:50px;height:50px;border-radius:13px;display:grid;place-items:center;margin-bottom:16px}
.dcard .dic svg{width:24px;height:24px;stroke:#fff}
.dcard h3{font-size:1.2rem;margin-bottom:9px}
.dcard p{font-size:.94rem;color:var(--muted)}
.dcard.b .dic{background:var(--grad-blue)}.dcard.b .blob-s{background:var(--sky)}
.dcard.o .dic{background:var(--grad-orange)}.dcard.o .blob-s{background:var(--peach)}
.dcard.m .dic{background:linear-gradient(135deg,#7c5cff,#2779c5)}.dcard.m .blob-s{background:#e2dcff}
@media(max-width:780px){.deliver-grid{grid-template-columns:1fr}}

/* ---- SUB-SERVICES list ---- */
.subsvc{background:var(--soft);border:1px solid var(--line);border-radius:var(--r-lg);padding:34px 32px}
.subsvc h3{font-size:1.3rem;margin-bottom:8px}
.subsvc p{color:var(--muted);margin-bottom:22px;max-width:60ch}
.sub-chips{display:flex;flex-wrap:wrap;gap:10px}
.sub-chips span{display:inline-flex;align-items:center;gap:8px;font-size:.86rem;color:var(--ink-2);background:#fff;border:1px solid var(--line-2);
  padding:9px 14px;border-radius:var(--r-pill);transition:.2s}
.sub-chips span:hover{border-color:var(--orange);color:var(--orange)}
.sub-chips span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--orange)}

/* ---- PROCESS ---- */
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.pstep{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:26px 22px;box-shadow:var(--sh-s);transition:.3s var(--ease)}
.pstep:hover{transform:translateY(-5px);box-shadow:var(--sh)}
.pstep .pn{font-size:.78rem;font-weight:700;color:var(--orange);letter-spacing:.1em}
.pstep h4{font-size:1.06rem;margin:9px 0 7px}
.pstep p{font-size:.88rem;color:var(--muted)}
@media(max-width:820px){.pgrid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.pgrid{grid-template-columns:1fr}}

/* ---- BENEFITS ---- */
.ben-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ben{display:flex;gap:14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;box-shadow:var(--sh-s)}
.ben .bic{width:44px;height:44px;border-radius:12px;background:var(--blue-soft);display:grid;place-items:center;flex:0 0 auto}
.ben .bic svg{width:21px;height:21px;stroke:var(--blue)}
.ben h4{font-size:1.04rem;margin-bottom:6px}
.ben p{font-size:.88rem;color:var(--muted)}
@media(max-width:820px){.ben-grid{grid-template-columns:1fr}}

/* ---- RELATED SERVICES ---- */
.rel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.rcard{display:block;border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;background:#fff;box-shadow:var(--sh-s);transition:.32s var(--ease)}
.rcard:hover{transform:translateY(-5px);box-shadow:var(--sh-l);border-color:transparent}
.rcard .ric{width:44px;height:44px;border-radius:12px;background:var(--soft-2);display:grid;place-items:center;margin-bottom:14px;transition:.3s}
.rcard .ric svg{width:22px;height:22px;stroke:var(--blue)}
.rcard:hover .ric{background:var(--grad-orange)}.rcard:hover .ric svg{stroke:#fff}
.rcard h4{font-size:1.02rem;margin-bottom:6px}
.rcard span{font-size:.82rem;color:var(--muted)}
.rcard .go{margin-top:12px;display:inline-flex;align-items:center;gap:6px;font-size:.82rem;font-weight:600;color:var(--blue)}
.rcard .go svg{width:13px;height:13px;transition:.3s var(--ease)}
.rcard:hover .go{color:var(--orange)}.rcard:hover .go svg{transform:translateX(4px)}
@media(max-width:920px){.rel-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.rel-grid{grid-template-columns:1fr}}

/* ---- CTA band (reused look) ---- */
.svc-cta{padding:20px 0 90px}
.svc-cta .card{position:relative;overflow:hidden;border-radius:var(--r-xl);padding:54px 48px;text-align:center;background:linear-gradient(135deg,#0f2a44,#1c4a72);box-shadow:var(--sh-l)}
.svc-cta .card .blob-c{width:340px;height:340px;background:var(--grad-orange);opacity:.3;top:-120px;right:-70px;filter:blur(10px)}
.svc-cta .card .blob-c2{width:300px;height:300px;background:linear-gradient(135deg,#3a8fd6,#2779c5);opacity:.3;bottom:-130px;left:-70px;filter:blur(10px);animation-delay:-5s}
.svc-cta .card .in{position:relative;z-index:1;max-width:680px;margin-inline:auto}
.svc-cta .card h2{color:#fff;font-size:clamp(1.7rem,3.4vw,2.6rem);letter-spacing:-.03em;margin-bottom:14px}
.svc-cta .card p{color:#bcd3e6;font-size:1.1rem;margin-bottom:28px}
.svc-cta .card .acts{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.svc-cta .card .btn-soft{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.25);box-shadow:none}
.svc-cta .card .btn-soft:hover{background:#fff;color:var(--ink)}
