/* assets/css/services-inner.css */
/* Shared structural CSS extracted from inner pages */

/* Base Panels */
.card, .article-panel, .diagram, .visual-panel, .product-card, .course-card {
  position:relative;border-radius:34px;padding:22px;
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.028));
  border:1px solid rgba(255,255,255,.11);
  box-shadow:0 30px 80px rgba(0,0,0,.32),0 0 55px rgba(255,102,0,.08);
  overflow:hidden;
}
.card::before, .article-panel::before, .diagram::before, .visual-panel::before, .product-card::before, .course-card::before {
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 20% 16%,rgba(255,102,0,.14),transparent 24%),
    radial-gradient(circle at 84% 20%,rgba(90,174,255,.12),transparent 24%);
}
.card > *, .article-panel > *, .diagram > *, .visual-panel > *, .product-card > *, .course-card > * {
  position:relative;z-index:1;
}

/* Image Band */
.image-band {
  min-height:390px;border-radius:34px;overflow:hidden;position:relative;border:1px solid rgba(255,255,255,.11);
  display:flex;align-items:flex-end;padding:34px;
}
.image-band h2 { font-size:44px;line-height:1;letter-spacing:-.065em;margin:0 0 12px; }
.image-band p { max-width:720px;color:var(--muted);line-height:1.75;margin:0; }

.card-icon {
  width: 56px; 
  height: 56px; 
  border-radius: 20px; 
  display: grid; 
  place-items: center; 
  margin-bottom: 22px;
  background: linear-gradient(180deg, rgba(255,102,0,.22), rgba(90,174,255,.10));
  border: 1px solid rgba(255,255,255,.11);
  box-shadow: 0 0 28px rgba(255,102,0,.13);
  color: var(--orange);
  font-weight: 900;
}

/* Article Layout */
.article-layout { display:grid;grid-template-columns:.78fr 1.22fr;gap:24px;align-items:start; }
.sticky-index { position:sticky;top:96px;border-radius:28px;padding:22px;background:rgba(7,12,28,.68);border:1px solid rgba(255,255,255,.10); }
.sticky-index strong { display:block;margin-bottom:14px; }
.sticky-index a { display:block;padding:11px 0;color:var(--muted);border-top:1px solid rgba(255,255,255,.07);font-size:14px; }
.sticky-index a:hover { color:#fff; }
html { scroll-behavior: smooth; }
[id] { scroll-margin-top: 120px; }

.article-panel { padding:34px; }
.article-panel h2 { font-size:38px;line-height:1.05;letter-spacing:-.055em;margin:0 0 16px; }
.article-panel h3 { font-size:26px;letter-spacing:-.04em;margin:34px 0 10px; }
.article-panel p { color:var(--muted);line-height:1.85;margin:0 0 16px; }
.article-panel .quote {
  margin:24px 0;padding:22px;border-left:3px solid var(--orange);border-radius:18px;
  background:rgba(255,102,0,.08);color:#fff;font-size:19px;line-height:1.65;font-weight:750;
}

/* Lists & Checklist */
.card ul { margin:18px 0 0; padding:0; list-style:none; display:grid; gap:10px; color:var(--muted); font-size:14px; }
.card li { display:flex; gap:9px; align-items:flex-start; }
.card li::before { 
    content:""; width:7px; height:7px; border-radius:50%; 
    background:var(--orange); box-shadow:0 0 12px rgba(255,102,0,.65); 
    margin-top:7px; flex:none; 
}
.hero-buttons { justify-content: flex-start; }

/* Checklist */
.checklist { columns:2;column-gap:24px;margin-top:12px; }
.checklist li { break-inside:avoid;margin-bottom:10px;color:var(--muted);line-height:1.7; }

/* Visual Panels (Hero Right) */
.visual-panel { padding:30px;min-height:520px; }
.visual-top { display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px; }
.visual-top strong { font-size:18px;letter-spacing:-.03em; }
.badge { font-size:10px;font-weight:900;letter-spacing:.08em;border-radius:99px;padding:7px 9px;background:rgba(24,201,139,.10);color:#baffdf;border:1px solid rgba(24,201,139,.22); }
.visual-metrics { display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px; }
.metric-pill { padding:12px;border-radius:16px;background:rgba(7,12,28,.72);border:1px solid rgba(255,255,255,.09); }
.metric-pill strong { display:block;font-size:13px; }
.metric-pill span { display:block;color:var(--muted2);font-size:11px;margin-top:4px; }

/* Diagram Base */
.diagram { padding:28px; }
.diagram h3 { font-size:30px;margin:0 0 18px;letter-spacing:-.05em; }

.diagram-canvas {
  position:relative;border-radius:28px;min-height:430px;padding:26px;background:rgba(7,12,28,.62);border:1px solid rgba(255,255,255,.09);overflow:hidden;
}

/* Unified Diagram Node */
.diagram-node {
  position:absolute;width:142px;padding:13px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);
  box-shadow:0 16px 30px rgba(0,0,0,.25);text-align:center;
}
.diagram-node strong { display:block;font-size:13px; }
.diagram-node span { display:block;color:var(--muted2);font-size:11px;margin-top:4px; }
.diagram-node.center { left:50%;top:45%;transform:translate(-50%,-50%);background:linear-gradient(180deg,rgba(255,102,0,.25),rgba(255,255,255,.05));border-color:rgba(255,102,0,.36); }

/* Unified Diagram Link */
.diagram-link {
  position:absolute;height:1px;background:linear-gradient(90deg,rgba(255,102,0,.9),rgba(90,174,255,.35));transform-origin:left center;left:50%;top:45%;opacity:.75;box-shadow:0 0 18px rgba(255,102,0,.45);
}

/* Grids (Metrics, Capacity, Routing) */
.metrics, .metrics-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px; }
.metric { border-radius:22px;padding:18px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08); }
.metric strong { font-size:28px;letter-spacing:-.06em;display:block;color:#fff; }
.metric span { color:var(--muted);font-size:13px;line-height:1.55; }

/* Timeline / Workflow */
.timeline { display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;position:relative; }
.timeline::before { content:"";position:absolute;left:5%;right:5%;top:31px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,102,0,.55),rgba(90,174,255,.42),transparent); }
.phase { position:relative;z-index:1;padding:18px;border-radius:20px;background:rgba(7,12,28,.78);border:1px solid rgba(255,255,255,.08); }
.phase-num { width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,var(--orange2),var(--orange));font-weight:900;font-size:12px;margin-bottom:12px; }
.phase strong { display:block;margin-bottom:7px; }
.phase span { color:var(--muted);font-size:13px;line-height:1.55; }

/* CTA Section */
.cta { padding:86px 0 110px;text-align:center; }
.cta-card {
  max-width:1000px;margin:auto;border-radius:34px;padding:44px;background:
    radial-gradient(circle at 18% 12%,rgba(255,102,0,.15),transparent 22%),
    linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.028));
  border:1px solid rgba(255,255,255,.12);box-shadow:0 28px 80px rgba(0,0,0,.30);
}
.cta-card h2 { margin:0 0 14px;font-size:clamp(38px,5.5vw,68px);line-height:.98;letter-spacing:-.07em; }
.cta-card p { max-width:760px;margin:0 auto 28px;color:var(--muted);line-height:1.8; }

/* Responsive Overrides */
@media(max-width:1120px) {
  .article-layout { grid-template-columns:1fr; }
  .sticky-index { position:relative;top:auto; }
  .timeline::before { display:none; }
  .metrics, .metrics-grid, .visual-metrics { grid-template-columns:repeat(2,1fr); }
}
@media(max-width:880px) {
  .grid-3, .grid-4, .metrics, .metrics-grid, .visual-metrics { grid-template-columns: 1fr !important; }
  .checklist { columns:1; }
  .diagram-node { position:relative;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;margin:10px auto; width:100%; }
  .diagram-link { display:none; }
  .diagram-canvas { display:grid;align-content:center;gap:8px; }
}
