.service-page{max-width:1180px;margin:0 auto;padding:24px 0 72px}.service-breadcrumb{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--muted-2);font-size:.72rem;margin:10px 0 34px}.service-breadcrumb a{color:var(--muted);transition:color .2s}.service-breadcrumb a:hover{color:var(--accent)}.service-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:42px;align-items:end;padding:48px 0 56px}.service-eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--accent);font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.service-eyebrow:before{content:"";width:28px;height:1px;background:var(--accent)}.service-hero h1{font-size:clamp(3rem,6.8vw,6.4rem);line-height:.9;letter-spacing:-.07em;margin:18px 0 26px;max-width:900px}.service-hero .lead{max-width:760px;color:var(--muted);font-size:1.08rem;line-height:1.8;margin:0}.service-hero-panel{padding:24px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,rgba(0,173,181,.10),rgba(255,255,255,.025));box-shadow:0 24px 60px rgba(0,0,0,.16)}.service-hero-panel small{display:block;color:var(--muted-2);font-size:.7rem;text-transform:uppercase;letter-spacing:.12em}.service-hero-panel strong{display:block;font-size:1.25rem;line-height:1.25;margin:12px 0 10px}.service-hero-panel p{color:var(--muted);font-size:.84rem;line-height:1.65;margin:0}.service-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.service-section{padding:72px 0;border-top:1px solid var(--line)}.service-section-header{max-width:760px;margin-bottom:30px}.service-section-header .kicker{color:var(--accent);font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.service-section-header h2{font-size:clamp(2.2rem,5vw,4.2rem);line-height:.98;letter-spacing:-.055em;margin:12px 0 14px}.service-section-header p{color:var(--muted);line-height:1.75;margin:0}.problem-grid,.solution-grid,.process-grid,.faq-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.service-card{padding:25px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.025);min-height:190px;transition:transform .2s,border-color .2s,background .2s}.service-card:hover{transform:translateY(-4px);border-color:rgba(0,173,181,.35);background:rgba(0,173,181,.045)}.service-card .number{color:var(--accent);font-size:.7rem;font-weight:800;letter-spacing:.12em}.service-card h3{font-size:1.1rem;line-height:1.25;margin:18px 0 10px}.service-card p{color:var(--muted);font-size:.86rem;line-height:1.7;margin:0}.solution-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.solution-card{padding:28px;border-radius:24px;background:linear-gradient(145deg,var(--panel),rgba(16,29,37,.72));border:1px solid var(--line)}.solution-card h3{margin:0 0 10px;font-size:1.3rem}.solution-card p{color:var(--muted);line-height:1.7;margin:0}.solution-card ul{margin:18px 0 0;padding-left:18px;color:var(--muted);line-height:1.8;font-size:.88rem}.process-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.process-grid .service-card{min-height:210px}.service-cta{padding:34px;border-radius:28px;background:linear-gradient(120deg,var(--accent),#49d3d8);color:#061417;display:flex;align-items:center;justify-content:space-between;gap:24px}.service-cta h2{margin:0;font-size:clamp(1.8rem,4vw,3rem);line-height:1}.service-cta p{margin:10px 0 0;max-width:650px;color:rgba(6,20,23,.75);line-height:1.6}.faq-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.faq-item{padding:22px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.02)}.faq-item h3{font-size:1rem;line-height:1.35;margin:0 0 9px}.faq-item p{color:var(--muted);font-size:.84rem;line-height:1.7;margin:0}.service-footer-link{display:inline-flex;margin-top:24px;color:var(--accent);font-weight:700;font-size:.8rem}.service-page .topbar{position:sticky;top:8px;z-index:100}.service-page .primary-btn.dark{background:#061417;color:#fff;box-shadow:none}.service-page .primary-btn.dark:hover{filter:brightness(1.15)}
@media(max-width:900px){.service-page{padding:16px 0 50px}.service-hero{grid-template-columns:1fr;gap:28px;padding:32px 0 44px}.service-hero h1{font-size:clamp(3rem,10vw,5rem)}.problem-grid,.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-section{padding:56px 0}}
@media(max-width:620px){.service-page{padding:10px 0 36px}.service-breadcrumb{margin-bottom:22px}.service-hero{padding:22px 0 36px;gap:22px}.service-hero h1{font-size:clamp(2.7rem,14vw,4rem);line-height:.94}.service-hero .lead{font-size:.94rem;line-height:1.7}.service-actions{display:grid;grid-template-columns:1fr;width:100%}.service-actions .primary-btn,.service-actions .secondary-btn{width:100%;min-height:50px}.service-section{padding:46px 0}.service-section-header h2{font-size:clamp(2.2rem,11vw,3.2rem)}.problem-grid,.solution-grid,.process-grid,.faq-grid{grid-template-columns:1fr}.service-card,.solution-card{min-height:0;padding:22px}.service-cta{padding:26px 20px;display:block}.service-cta .primary-btn{width:100%;margin-top:20px}.service-hero-panel{padding:21px}.service-page .mobile-nav{left:0;right:0}}
@media(prefers-reduced-motion:reduce){.service-card:hover{transform:none}}


/* --------------------------------------------------------------------------
   Service pages — UI/UX refinement
   -------------------------------------------------------------------------- */
.service-page main { position: relative; }
.service-page main::before {
  content: "";
  position: absolute;
  width: 420px;
  height: 420px;
  top: 40px;
  right: -180px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0,173,181,.10), transparent 68%);
  pointer-events: none;
}
.service-hero { position: relative; }
.service-hero > div:first-child { position: relative; z-index: 1; }
.service-hero-panel { position: relative; overflow: hidden; }
.service-hero-panel::after {
  content: "";
  position: absolute;
  width: 120px;
  height: 120px;
  right: -48px;
  top: -48px;
  border-radius: 50%;
  border: 1px solid rgba(0,173,181,.24);
}
.service-value-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 1px;
  margin: 8px 0 10px;
  border: 1px solid var(--line);
  border-radius: 22px;
  overflow: hidden;
  background: var(--line);
}
.service-value-strip > div {
  min-height: 112px;
  padding: 22px;
  background: rgba(255,255,255,.025);
}
.service-value-strip span {
  display: block;
  color: var(--accent);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .12em;
  margin-bottom: 13px;
}
.service-value-strip strong { display:block; font-size:.9rem; line-height:1.35; }
.service-value-strip small { display:block; margin-top:6px; color:var(--muted-2); line-height:1.45; font-size:.72rem; }
.service-section { position: relative; }
.service-section-header { position: relative; }
.service-section-header::after {
  content: "";
  display: block;
  width: 54px;
  height: 2px;
  margin-top: 22px;
  background: var(--accent);
  opacity: .8;
}
.problem-grid .service-card,
.process-grid .service-card { position: relative; overflow:hidden; }
.problem-grid .service-card::after,
.process-grid .service-card::after {
  content:"";
  position:absolute;
  width:90px;height:90px;right:-36px;bottom:-36px;border-radius:50%;
  border:1px solid rgba(0,173,181,.10);
}
.solution-card { transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease; }
.solution-card:hover { transform: translateY(-4px); border-color: rgba(0,173,181,.30); box-shadow: 0 24px 50px rgba(0,0,0,.18); }
.solution-card ul { list-style: none; padding-left: 0; }
.solution-card li { position:relative; padding-left:22px; }
.solution-card li::before { content:"✓"; position:absolute; left:0; color:var(--accent); font-weight:800; }
.service-cta { position:relative; overflow:hidden; }
.service-cta::after { content:""; position:absolute; width:240px;height:240px;right:-100px;top:-100px;border:1px solid rgba(6,20,23,.12);border-radius:50%; }
.service-related { padding-top: 64px; }
.service-related-head { display:grid; grid-template-columns: 1fr .8fr; gap:32px; align-items:end; margin-bottom:26px; }
.service-related-head h2 { font-size:clamp(2.1rem,4vw,3.7rem); line-height:1; letter-spacing:-.055em; margin:12px 0 0; }
.service-related-head p { margin:0; color:var(--muted); line-height:1.7; max-width:560px; }
.related-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.related-grid a { display:flex; flex-direction:column; min-height:190px; padding:22px; border:1px solid var(--line); border-radius:20px; background:rgba(255,255,255,.02); transition:transform .22s,border-color .22s,background .22s; }
.related-grid a:hover { transform:translateY(-4px); border-color:rgba(0,173,181,.35); background:rgba(0,173,181,.045); }
.related-grid span { color:var(--accent); text-transform:uppercase; letter-spacing:.12em; font-weight:800; font-size:.64rem; }
.related-grid strong { margin-top:18px; font-size:1rem; line-height:1.3; }
.related-grid small { margin-top:8px; color:var(--muted); line-height:1.55; font-size:.76rem; }
.service-site-footer { margin-top: 8px; }
.service-footer-top { display:flex; flex-wrap:wrap; justify-content:space-between; gap:42px; width:100%; }
.service-site-footer .footer-brand { max-width:320px; }
.service-site-footer .footer-brand p { font-size:.86rem; }
.footer-primary-link { display:inline-flex; margin-top:18px; color:var(--accent); font-size:.78rem; font-weight:800; }
.footer-primary-link span { margin-left:8px; transition:transform .2s; }
.footer-primary-link:hover span { transform:translateX(4px); }
.service-site-footer .footer-links { min-width:min(100%,650px); }
.service-site-footer .footer-links > div { padding-left:18px; }
.service-site-footer .footer-links a { font-size:.78rem; }
.service-site-footer .footer-bottom { margin-top:8px; }

@media(max-width:900px){
  .service-value-strip { grid-template-columns:1fr; }
  .service-value-strip > div { min-height:0; }
  .related-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .service-related-head { grid-template-columns:1fr; gap:14px; }
  .service-site-footer .footer-links { min-width:0; width:100%; }
}
@media(max-width:620px){
  .service-page { padding-bottom:24px; }
  .service-hero-panel { border-radius:20px; }
  .service-value-strip { border-radius:18px; }
  .service-value-strip > div { padding:18px; }
  .related-grid { grid-template-columns:1fr; }
  .service-related { padding-top:48px; }
  .service-site-footer { margin-top:0; border-radius:20px; padding:32px 20px 24px; }
  .service-footer-top { gap:28px; }
  .service-site-footer .footer-links { grid-template-columns:1fr 1fr; gap:24px 14px; }
  .service-site-footer .footer-links > div:last-child { grid-column:1 / -1; }
  .service-site-footer .footer-links > div { padding-left:14px; }
  .service-site-footer .footer-bottom { flex-direction:column; gap:7px; }
}


/* Service pages — header stability */
.service-page .topbar { position: sticky; top: 12px; z-index: 1000; flex-wrap: nowrap; }
.service-page .main-nav { flex-wrap: nowrap; white-space: nowrap; }
.service-page .mobile-nav { display: none !important; }
.service-page .menu-toggle { display: none !important; }
@media (max-width: 900px) {
  .service-page .main-nav,
  .service-page .topbar > .nav-cta { display: none !important; }
  .service-page .menu-toggle { display: inline-flex !important; }
  .service-page .mobile-nav { display: none !important; }
  .service-page .mobile-nav.is-open { display: grid !important; }
}
