/* RC11-B — SEO service system: cleaner tab architecture, stage visual swap, refined icons, and progressive disclosure. */
.nhs .nhs-service-stage-shell{margin:0 0 clamp(20px,3vw,34px)}
.nhs .nhs-service-stage{
  position:relative;overflow:hidden;border-radius:32px;aspect-ratio:16/6.6;
  border:1px solid rgba(125,207,255,.18);background:rgba(5,16,28,.66);
  box-shadow:0 32px 76px rgba(0,0,0,.20),inset 0 1px rgba(255,255,255,.05)
}
.nhs .nhs-service-stage::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.03),transparent 32%,rgba(255,255,255,.015) 72%,rgba(255,255,255,.04));
  z-index:2
}
.nhs .nhs-service-visual{position:absolute;inset:0;opacity:0;transform:translateY(12px) scale(1.018);transition:opacity .34s ease,transform .42s ease;pointer-events:none}
.nhs .nhs-service-visual.is-active{opacity:1;transform:none;pointer-events:auto}
.nhs .nhs-service-visual-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center center}
.nhs .nhs-service-visual-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,10,18,.22),transparent 38%,rgba(4,10,18,.30) 100%),linear-gradient(180deg,rgba(4,10,18,.05),rgba(4,10,18,.16) 62%,rgba(4,10,18,.34));pointer-events:none}
.nhs .nhs-service-visual figcaption{position:absolute;right:18px;bottom:18px;left:18px;z-index:3;display:flex;align-items:flex-end;justify-content:space-between;gap:12px}
.nhs .nhs-service-visual-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:11px 14px;border:1px solid rgba(174,221,248,.22);border-radius:999px;background:rgba(6,14,24,.54);backdrop-filter:blur(12px);color:#eff8ff;font:800 11px/1 Inter,Arial,sans-serif;letter-spacing:.12em}
.nhs .nhs-service-visual-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--nh-accent);box-shadow:0 0 0 7px rgba(8,126,255,.10)}
.nhs .nhs-service-visual-tags{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.nhs .nhs-service-visual-tags span{padding:9px 11px;border:1px solid rgba(174,221,248,.18);border-radius:999px;background:rgba(7,15,24,.58);backdrop-filter:blur(12px);color:#d8f0ff;font:800 10px/1 Inter,Arial,sans-serif;letter-spacing:.08em}

.nhs .nhs-service-layout{grid-template-columns:minmax(320px,.76fr) minmax(0,1.24fr);gap:20px;align-items:start}
.nhs .nhs-service-tabs-shell{padding:12px;border:1px solid var(--nhs-line);border-radius:30px;background:linear-gradient(180deg,rgba(6,16,28,.76),rgba(8,17,29,.58));box-shadow:0 24px 60px rgba(0,0,0,.16)}
.nhs .nhs-service-index{gap:10px;padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none}
.nhs .nhs-service-index button{position:relative;grid-template-columns:44px 1fr;gap:14px;min-height:68px;padding:12px 14px;border-radius:18px;border:1px solid rgba(154,217,255,.08);background:rgba(255,255,255,.012)}
.nhs .nhs-service-index button::after{content:"";position:absolute;inset:auto 14px 0 14px;height:1px;background:linear-gradient(90deg,rgba(154,217,255,.12),transparent);opacity:.8}
.nhs .nhs-service-index button:last-child::after{display:none}
.nhs .nhs-service-index button:hover,.nhs .nhs-service-index button:focus-visible{transform:translateY(-1px);border-color:rgba(141,211,255,.22);background:rgba(255,255,255,.025)}
.nhs .nhs-service-index button.is-active{border-color:rgba(125,206,255,.28);background:linear-gradient(135deg,rgba(17,45,76,.66),rgba(8,17,29,.92));box-shadow:0 14px 34px rgba(7,20,34,.28)}
.nhs .nhs-service-index button.is-active::before{content:"";position:absolute;right:9px;top:50%;transform:translateY(-50%);width:4px;height:32px;border-radius:999px;background:linear-gradient(180deg,#98e3ff,var(--nh-accent))}
.nhs .nhs-service-index svg,.nhs .nhs-service-panel-icon svg,.nhs .nhs-icon svg{width:22px;height:22px;fill:none;stroke:var(--nh-accent);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.nhs .nhs-service-index>button>svg{align-self:center;justify-self:center;padding:10px;border:1px solid rgba(126,209,255,.18);border-radius:14px;background:rgba(255,255,255,.035);width:44px;height:44px;box-shadow:inset 0 1px rgba(255,255,255,.06)}
.nhs .nhs-service-index button.is-active>svg{background:linear-gradient(180deg,rgba(20,55,88,.78),rgba(9,23,38,.95));border-color:rgba(152,229,255,.24);box-shadow:0 10px 22px rgba(4,12,20,.24),inset 0 1px rgba(255,255,255,.08)}
.nhs .nhs-service-index span{grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px}
.nhs .nhs-service-index b{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:rgba(255,255,255,.04);font:800 10px/1 Inter,Arial,sans-serif;color:#b8e9ff;letter-spacing:.1em}
.nhs .nhs-service-index em{font-size:1rem;line-height:1.55;color:var(--nhs-t1)}

.nhs .nhs-service-panels{position:relative;min-height:0;border-radius:30px;background:linear-gradient(180deg,rgba(8,18,30,.82),rgba(8,17,29,.70));border-color:rgba(132,209,255,.14);box-shadow:0 28px 72px rgba(0,0,0,.18)}
.nhs .nhs-service-panel{padding:28px 28px 30px}
.nhs .nhs-service-panel-head{display:grid;gap:12px;margin-bottom:10px}
.nhs .nhs-service-panel-mark{display:flex;align-items:center;justify-content:space-between;gap:10px}
.nhs .nhs-service-panel .panel-no{margin:0;color:#a7dbff;font:800 10px/1 Inter,Arial,sans-serif;letter-spacing:.15em;direction:ltr}
.nhs .nhs-service-panel-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;border:1px solid rgba(148,220,255,.18);background:rgba(255,255,255,.03)}
.nhs .nhs-service-panel h3{margin:0;font-size:clamp(1.52rem,2.2vw,2.32rem);line-height:1.24}
.nhs .nhs-service-panel>p{margin:0;color:var(--nhs-t2);line-height:1.92}
.nhs .nhs-service-summary-pills{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}
.nhs .nhs-service-summary-pills span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:40px;align-content:center;padding:10px 12px;border-radius:16px;border:1px solid rgba(136,204,248,.16);background:rgba(255,255,255,.03);color:var(--nhs-t1);line-height:1.55}
.nhs .nhs-service-expand{margin-top:18px;border:1px solid rgba(134,206,247,.16);border-radius:22px;background:rgba(255,255,255,.022);overflow:hidden}
.nhs .nhs-service-expand summary{display:flex;align-items:center;justify-content:space-between;gap:14px;list-style:none;cursor:pointer;padding:17px 18px}
.nhs .nhs-service-expand summary::-webkit-details-marker{display:none}
.nhs .nhs-service-expand summary>div{display:grid;gap:5px}
.nhs .nhs-service-expand summary span{font-size:.98rem;font-weight:780;color:var(--nhs-t1)}
.nhs .nhs-service-expand summary b{font-size:.78rem;font-weight:700;color:var(--nhs-t3)}
.nhs .nhs-service-expand summary svg{width:22px;height:22px;fill:none;stroke:var(--nh-accent);stroke-width:1.6;transition:transform .24s ease}
.nhs .nhs-service-expand[open] summary svg{transform:rotate(180deg)}
.nhs .nhs-service-expand-body{padding:0 18px 18px}
.nhs .nhs-service-expand ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 18px;margin:4px 0 0}
.nhs .nhs-service-expand li{min-height:100%;padding:12px 13px 12px 17px;border:1px solid rgba(129,201,245,.12);border-radius:16px;background:rgba(255,255,255,.02);line-height:1.85;color:var(--nhs-t2)}
.nhs .nhs-service-expand li::before{top:1.2em;width:6px;height:6px;border-radius:50%;background:var(--nh-accent)}
.nhs .nhs-service-expand .mini-note{margin-top:14px;padding:14px 16px;border-radius:18px;border-right:0;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.018));box-shadow:inset 4px 0 0 0 var(--nh-accent)}
.nhs .nhs-service-cta-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:14px;padding:16px 17px;border:1px solid rgba(130,204,248,.14);border-radius:18px;background:linear-gradient(135deg,rgba(16,42,71,.32),rgba(255,255,255,.018))}
.nhs .nhs-service-cta-card--solo{margin-top:18px}
.nhs .nhs-service-cta-card span{display:block;margin-bottom:7px;color:#a9d8f0;font:800 9px/1 Inter,Arial,sans-serif;letter-spacing:.14em}
.nhs .nhs-service-cta-card strong{display:block;font-size:.98rem;line-height:1.8;color:var(--nhs-t1)}
.nhs .nhs-service-cta-card .nhs-btn{white-space:nowrap;min-width:156px}

/* Small polish for the galaxy to feel cleaner and more aligned with the modern service section. */
.nhs .nhs-seo-galaxy{filter:drop-shadow(0 30px 64px rgba(4,12,20,.20))}
.nhs .nhs-data-core{background:radial-gradient(circle at 50% 40%,rgba(110,219,255,.16),rgba(8,32,54,.92));border:1px solid rgba(166,231,255,.20);box-shadow:0 0 0 10px rgba(80,180,255,.05),0 26px 62px rgba(5,13,22,.26)}
.nhs .nhs-galaxy-node{box-shadow:0 16px 36px rgba(0,0,0,.16),inset 0 1px rgba(255,255,255,.06)}

html[data-theme="light"] .nhs .nhs-service-stage,
body.light-mode .nhs .nhs-service-stage{background:rgba(255,255,255,.72);box-shadow:0 28px 66px rgba(21,57,92,.10),inset 0 1px rgba(255,255,255,.7)}
html[data-theme="light"] .nhs .nhs-service-stage::before,
body.light-mode .nhs .nhs-service-stage::before{background:linear-gradient(180deg,rgba(255,255,255,.18),transparent 38%,rgba(255,255,255,.10) 70%,rgba(255,255,255,.22))}
html[data-theme="light"] .nhs .nhs-service-tabs-shell,
body.light-mode .nhs .nhs-service-tabs-shell{background:linear-gradient(180deg,rgba(255,255,255,.76),rgba(247,252,255,.66));box-shadow:0 22px 56px rgba(20,56,90,.10)}
html[data-theme="light"] .nhs .nhs-service-index button,
body.light-mode .nhs .nhs-service-index button{background:rgba(255,255,255,.36);border-color:rgba(82,146,198,.10)}
html[data-theme="light"] .nhs .nhs-service-index button.is-active,
body.light-mode .nhs .nhs-service-index button.is-active{background:linear-gradient(135deg,rgba(224,242,253,.98),rgba(244,250,255,.92));border-color:rgba(70,148,206,.18);box-shadow:0 12px 28px rgba(31,87,132,.10)}
html[data-theme="light"] .nhs .nhs-service-index button>svg,
body.light-mode .nhs .nhs-service-index button>svg{background:rgba(255,255,255,.72)}
html[data-theme="light"] .nhs .nhs-service-panels,
body.light-mode .nhs .nhs-service-panels{background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(247,251,255,.72));box-shadow:0 24px 60px rgba(22,58,92,.10)}
html[data-theme="light"] .nhs .nhs-service-summary-pills span,
html[data-theme="light"] .nhs .nhs-service-expand,
html[data-theme="light"] .nhs .nhs-service-expand li,
html[data-theme="light"] .nhs .nhs-service-cta-card,
body.light-mode .nhs .nhs-service-summary-pills span,
body.light-mode .nhs .nhs-service-expand,
body.light-mode .nhs .nhs-service-expand li,
body.light-mode .nhs .nhs-service-cta-card{background:rgba(255,255,255,.5)}
html[data-theme="light"] .nhs .nhs-service-visual-eyebrow,
html[data-theme="light"] .nhs .nhs-service-visual-tags span,
body.light-mode .nhs .nhs-service-visual-eyebrow,
body.light-mode .nhs .nhs-service-visual-tags span{background:rgba(255,255,255,.68);color:#163954}

@media(max-width:1100px){
  .nhs .nhs-service-stage{aspect-ratio:16/8.2}
  .nhs .nhs-service-layout{grid-template-columns:1fr;gap:16px}
  .nhs .nhs-service-tabs-shell{padding:10px 10px 12px;border-radius:26px}
  .nhs .nhs-service-panels{border-radius:26px}
}
@media(max-width:782px){
  .nhs .nhs-service-stage-shell{margin-bottom:18px}
  .nhs .nhs-service-stage{aspect-ratio:4/3;border-radius:24px}
  .nhs .nhs-service-visual figcaption{right:12px;left:12px;bottom:12px;gap:8px;align-items:flex-start;flex-direction:column}
  .nhs .nhs-service-visual-eyebrow{padding:9px 11px;font-size:9px}
  .nhs .nhs-service-visual-tags{gap:6px;justify-content:flex-start}
  .nhs .nhs-service-visual-tags span{padding:7px 8px;font-size:8px}
  .nhs .nhs-service-tabs-shell{padding:9px;border-radius:24px}
  .nhs .nhs-service-index{gap:9px}
  .nhs .nhs-service-index button{flex-basis:min(82vw,308px)!important;max-width:min(82vw,308px)!important;min-height:74px;padding:12px 14px;border-radius:17px}
  .nhs .nhs-service-index button>svg{width:42px;height:42px;padding:9px;border-radius:13px}
  .nhs .nhs-service-index em{font-size:.95rem;line-height:1.55}
  .nhs .nhs-service-panels{border-radius:24px}
  .nhs .nhs-service-panel{padding:22px 18px 20px}
  .nhs .nhs-service-panel h3{font-size:1.5rem;line-height:1.35}
  .nhs .nhs-service-summary-pills{display:grid;grid-template-columns:1fr;gap:8px}
  .nhs .nhs-service-summary-pills span{min-height:0;padding:10px 11px;font-size:.92rem}
  .nhs .nhs-service-expand{margin-top:14px;border-radius:18px}
  .nhs .nhs-service-expand summary{padding:15px 14px}
  .nhs .nhs-service-expand-body{padding:0 14px 14px}
  .nhs .nhs-service-expand ul{grid-template-columns:1fr;gap:10px;margin-top:2px}
  .nhs .nhs-service-expand li{padding:11px 11px 11px 15px;border-radius:14px}
  .nhs .nhs-service-cta-card{display:grid;gap:12px;padding:14px}
  .nhs .nhs-service-cta-card .nhs-btn{width:100%;min-width:0}
}
@media(max-width:430px){
  .nhs .nhs-service-index button{flex-basis:84vw!important;max-width:84vw!important}
  .nhs .nhs-service-index span{grid-template-columns:30px 1fr;gap:8px}
  .nhs .nhs-service-index b{width:28px;height:28px}
  .nhs .nhs-service-panel-icon{width:40px;height:40px}
}
