
.service-page { background: var(--bg-primary); color: var(--text-primary); }
.service-header { background: rgba(7,7,10,.96); border-bottom: 1px solid var(--border-subtle); position: fixed; inset: 0 0 auto; z-index: var(--z-header); }
.service-header__inner { align-items:center; display:flex; justify-content:space-between; gap:1rem; margin-inline:auto; min-height:76px; width:min(calc(100% - (var(--page-gutter)*2)),var(--container-max)); }
.service-header__logo img { width:clamp(165px,18vw,220px); }
.service-header__nav { align-items:center; display:flex; gap:1rem; }
.service-header__nav a { color:var(--text-secondary); font-size:.78rem; font-weight:700; letter-spacing:.08em; text-decoration:none; text-transform:uppercase; }
.service-header__nav a:hover { color:var(--text-primary); }
.service-page main { padding-top:0; }
.service-hero { background:radial-gradient(circle at 84% 18%, rgba(65,71,251,.22), transparent 28%),radial-gradient(circle at 72% 60%, rgba(255,0,106,.12), transparent 30%),var(--bg-primary); padding:var(--space-7) 0 var(--space-8); }
.service-hero__grid { align-items:end; display:grid; gap:clamp(2rem,6vw,6rem); grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr); }
.service-hero h1 { font-family:var(--font-display); font-size:clamp(4rem,8vw,7.5rem); font-weight:700; line-height:.93; margin:.6rem 0 1.25rem; max-width:10ch; text-transform:uppercase; }
.service-hero__lead { color:#d8dbe2; font-size:clamp(1.08rem,1.7vw,1.35rem); max-width:720px; }
.service-hero__side { border-left:1px solid var(--border-strong); padding-left:clamp(1.25rem,3vw,2.5rem); }
.service-hero__side strong { display:block; font-family:var(--font-display); font-size:1.55rem; line-height:1.05; margin-bottom:.7rem; }
.service-hero__side p { color:var(--text-secondary); margin:0; }
.service-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.7rem; }
.service-section { padding-block:var(--section-standard); }
.service-section--light { background:var(--bg-secondary); color:var(--text-inverse); }
.service-section--dark { background:var(--bg-primary); color:var(--text-primary); }
.service-section__head { display:grid; gap:1rem; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); margin-bottom:2.5rem; }
.service-section h2 { font-family:var(--font-display); font-size:clamp(2.8rem,5vw,4.8rem); font-weight:700; line-height:.95; margin:.3rem 0 0; text-transform:uppercase; }
.service-section__intro { font-size:clamp(1rem,1.35vw,1.18rem); max-width:680px; }
.service-section--light .service-section__intro { color:var(--text-muted); }
.service-section--dark .service-section__intro { color:var(--text-secondary); }
.service-grid { display:grid; gap:1px; grid-template-columns:repeat(3,minmax(0,1fr)); background:var(--border-strong-light); border:1px solid var(--border-strong-light); }
.service-grid article { background:var(--surface-light); padding:clamp(1.5rem,3vw,2.25rem); }
.service-grid article span { color:var(--accent-pink-text); font-size:.72rem; font-weight:800; letter-spacing:.12em; }
.service-grid h3 { font-size:1.15rem; margin:.8rem 0 .55rem; }
.service-grid p { color:var(--text-muted); margin:0; }
.service-section--dark .service-grid { background:var(--border-strong); border-color:var(--border-strong); }
.service-section--dark .service-grid article { background:var(--surface-dark); }
.service-section--dark .service-grid p { color:var(--text-secondary); }
.service-list { display:grid; gap:1rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.service-list article { border:1px solid currentColor; border-color:var(--border-strong-light); padding:1.5rem; }
.service-section--dark .service-list article { border-color:var(--border-strong); }
.service-list h3 { margin:0 0 .5rem; }
.service-list p { margin:0; color:var(--text-muted); }
.service-section--dark .service-list p { color:var(--text-secondary); }
.service-faq details { border-top:1px solid var(--border-strong-light); padding:1rem 0; }
.service-faq details:last-child { border-bottom:1px solid var(--border-strong-light); }
.service-faq summary { cursor:pointer; font-weight:800; list-style:none; }
.service-faq summary::-webkit-details-marker { display:none; }
.service-faq summary::after { content:'+'; float:right; color:var(--accent-pink-text); }
.service-faq details[open] summary::after { content:'−'; }
.service-faq p { color:var(--text-muted); max-width:760px; }
.service-cta { background:var(--gradient-brand); color:#fff; padding-block:clamp(4rem,7vw,6.5rem); text-align:center; }
.service-cta h2 { color:#fff; font-family:var(--font-display); font-size:clamp(3rem,6vw,5.5rem); font-weight:700; line-height:.94; margin:.45rem auto 1rem; max-width:12ch; text-transform:uppercase; }
.service-cta p { margin-inline:auto; max-width:650px; }
.service-footer { background:#050507; border-top:1px solid var(--border-subtle); padding:2.25rem 0; }
.service-footer__inner { align-items:center; display:flex; justify-content:space-between; gap:1.25rem; margin-inline:auto; width:min(calc(100% - (var(--page-gutter)*2)),var(--container-max)); }
.service-footer__inner p { color:var(--text-secondary); font-size:.78rem; margin:0; }
.service-footer__links { display:flex; gap:var(--space-4); flex-wrap:wrap; }
.service-footer__links a { color:var(--text-secondary); font-size:.78rem; text-decoration:none; }
.service-footer__links a:hover { color:#fff; }
@media (max-width: 820px) {
 .service-header__inner { min-height:68px; }
 .service-header__nav a:not(.button-primary) { display:none; }
 .service-hero__grid,.service-section__head { grid-template-columns:1fr; }
 .service-hero__side { border-left:0; border-top:1px solid var(--border-strong); padding:1.25rem 0 0; }
 .service-grid { grid-template-columns:1fr; }
 .service-list { grid-template-columns:1fr; }
 .service-footer__inner { align-items:flex-start; flex-direction:column; }
}

.guide-index-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.guide-card { background:var(--surface-light); border:1px solid var(--border-strong-light); color:var(--text-inverse); padding:1.7rem; text-decoration:none; }
.guide-card:hover { border-color:var(--accent-pink); transform:translateY(-2px); }
.guide-card small { color:var(--accent-pink-text); font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.guide-card h2 { font-family:var(--font-display); font-size:2rem; line-height:1; margin:.65rem 0; text-transform:uppercase; }
.guide-card p { color:var(--text-muted); }
.guide-article { background:var(--bg-secondary); color:var(--text-inverse); padding-block:var(--section-standard); }
.guide-article__inner { margin-inline:auto; max-width:820px; width:min(calc(100% - (var(--page-gutter)*2)),820px); }
.guide-article h2 { font-family:var(--font-display); font-size:clamp(2.2rem,4vw,3.6rem); line-height:.98; margin:2.5rem 0 .8rem; text-transform:uppercase; }
.guide-article h3 { font-size:1.25rem; margin:2rem 0 .65rem; }
.guide-article p,.guide-article li { color:var(--text-muted); font-size:1.05rem; }
.guide-callout { border-left:4px solid var(--accent-pink); margin:2rem 0; padding:1rem 1.25rem; background:#fff; }
@media(max-width:820px){.guide-index-grid{grid-template-columns:1fr}}


/* v27: editorial guide system */
.guide-hero {
  background:
    radial-gradient(circle at 85% 22%, rgba(65,71,251,.18), transparent 28%),
    radial-gradient(circle at 78% 74%, rgba(255,0,106,.12), transparent 30%),
    var(--bg-primary);
  overflow:hidden;
  padding:var(--space-7) 0 var(--space-8);
}
.guide-hero__grid {
  align-items:center;
  display:grid;
  gap:clamp(2.5rem,6vw,6rem);
  grid-template-columns:minmax(0,.95fr) minmax(360px,1.05fr);
}
.guide-hero__copy h1 {
  font-family:var(--font-display);
  font-size:clamp(3.5rem,6.8vw,6.7rem);
  font-weight:700;
  line-height:.94;
  margin:.65rem 0 1.2rem;
  max-width:11ch;
  text-transform:uppercase;
}
.guide-hero__copy .service-hero__lead { max-width:620px; }
.guide-hero__visual {
  background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
  border:1px solid var(--border-strong);
  border-radius:var(--radius-xl);
  box-shadow:0 28px 80px rgba(0,0,0,.28);
  min-height:420px;
  overflow:hidden;
  padding:clamp(1.25rem,3vw,2rem);
  position:relative;
}
.guide-hero__visual::before {
  background:var(--gradient-brand);
  content:"";
  height:2px;
  inset:0 0 auto;
  position:absolute;
}
.guide-visual-kicker { color:var(--accent-pink); font-size:.68rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.guide-visual-title { color:#fff; font-family:var(--font-display); font-size:clamp(1.7rem,3vw,2.6rem); line-height:1; margin:.55rem 0 1.4rem; text-transform:uppercase; }
.guide-flow { display:grid; gap:.7rem; }
.guide-flow__row { align-items:center; display:grid; gap:.75rem; grid-template-columns:auto 1fr auto; }
.guide-flow__num { align-items:center; background:rgba(255,255,255,.055); border:1px solid var(--border-strong); border-radius:999px; color:#fff; display:flex; font-size:.72rem; font-weight:800; height:34px; justify-content:center; width:34px; }
.guide-flow__bar { background:rgba(255,255,255,.055); border:1px solid var(--border-strong); border-radius:999px; overflow:hidden; padding:.62rem .8rem; }
.guide-flow__bar strong { color:#fff; display:block; font-size:.78rem; }
.guide-flow__bar small { color:var(--text-secondary); display:block; margin-top:.15rem; }
.guide-flow__tag { border:1px solid rgba(255,0,106,.35); border-radius:999px; color:#ff6ca9; font-size:.65rem; font-weight:800; padding:.38rem .55rem; text-transform:uppercase; }
.guide-orbit { border:1px solid rgba(81,110,255,.22); border-radius:50%; height:270px; position:absolute; right:-100px; top:80px; width:270px; }
.guide-orbit::after { border:1px solid rgba(255,0,106,.18); border-radius:50%; content:""; inset:28px; position:absolute; }
.guide-decision-grid { display:grid; gap:.75rem; grid-template-columns:repeat(3,minmax(0,1fr)); }
.guide-decision-card { background:rgba(255,255,255,.04); border:1px solid var(--border-strong); border-radius:var(--radius-lg); min-height:160px; padding:1rem; position:relative; z-index:1; }
.guide-decision-card svg { height:26px; width:26px; }
.guide-decision-card h3 { color:#fff; font-size:.92rem; margin:.85rem 0 .35rem; }
.guide-decision-card p { color:var(--text-secondary); font-size:.72rem; line-height:1.45; margin:0; }
.guide-path { align-items:center; display:grid; gap:.55rem; grid-template-columns:repeat(4,1fr); margin-top:1rem; position:relative; z-index:1; }
.guide-path::before { background:linear-gradient(90deg,#ff2566,#bd22ff,#008cff); content:""; height:2px; left:10%; position:absolute; right:10%; top:24px; }
.guide-path__step { text-align:center; position:relative; z-index:2; }
.guide-path__dot { align-items:center; background:#0b0b12; border:2px solid currentColor; border-radius:999px; color:#ff2f78; display:flex; height:48px; justify-content:center; margin:0 auto .65rem; width:48px; }
.guide-path__step:nth-child(2) .guide-path__dot { color:#d24cff; }
.guide-path__step:nth-child(3) .guide-path__dot { color:#705bff; }
.guide-path__step:nth-child(4) .guide-path__dot { color:#1c9fff; }
.guide-path__step strong { color:#fff; display:block; font-size:.72rem; }
.guide-path__step small { color:var(--text-secondary); display:block; font-size:.65rem; margin-top:.2rem; }

.guide-article { background:var(--bg-secondary); color:var(--text-inverse); padding-block:clamp(4rem,7vw,6.5rem); }
.guide-article__inner { margin-inline:auto; max-width:var(--container-max); width:min(calc(100% - (var(--page-gutter)*2)),var(--container-max)); }
.guide-intro-band { align-items:center; background:#fff; border:1px solid var(--border-strong-light); display:grid; gap:1.5rem; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); margin-bottom:clamp(3rem,6vw,5rem); padding:clamp(1.5rem,3vw,2.25rem); }
.guide-intro-band strong { font-family:var(--font-display); font-size:clamp(1.9rem,3vw,3rem); line-height:1; text-transform:uppercase; }
.guide-intro-band p { color:var(--text-muted); margin:0; max-width:660px; }
.guide-section-grid { align-items:center; display:grid; gap:clamp(2rem,5vw,5rem); grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr); margin:clamp(4rem,8vw,7rem) 0; }
.guide-section-grid--reverse > :first-child { order:2; }
.guide-section-grid--reverse > :last-child { order:1; }
.guide-copy .eyebrow { margin-bottom:.55rem; }
.guide-copy h2 { color:var(--ink); font-family:var(--font-display); font-size:clamp(2.4rem,4.7vw,4.4rem); line-height:.96; margin:0 0 1rem; text-transform:uppercase; }
.guide-copy p,.guide-copy li { color:var(--text-muted); font-size:1rem; line-height:1.7; }
.guide-copy ul { padding-left:1.2rem; }
.guide-visual-panel { background:#0a0a10; border-radius:var(--radius-xl); color:#fff; min-height:330px; overflow:hidden; padding:clamp(1.25rem,3vw,2rem); position:relative; }
.guide-visual-panel::before { background:var(--gradient-brand); content:""; height:2px; left:0; position:absolute; right:0; top:0; }
.guide-visual-panel h3 { color:#fff; font-family:var(--font-display); font-size:1.8rem; line-height:1; margin:.4rem 0 1rem; text-transform:uppercase; }
.guide-visual-panel p { color:var(--text-secondary); }
.guide-chip-row { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1.1rem; }
.guide-chip { background:rgba(255,255,255,.055); border:1px solid var(--border-strong); border-radius:999px; color:#fff; font-size:.72rem; font-weight:700; padding:.55rem .7rem; }
.guide-stack { display:grid; gap:.65rem; margin-top:1rem; }
.guide-stack__item { align-items:center; background:rgba(255,255,255,.045); border:1px solid var(--border-strong); border-radius:var(--radius-lg); display:grid; gap:.8rem; grid-template-columns:auto 1fr; padding:.85rem; }
.guide-stack__icon { align-items:center; background:linear-gradient(135deg,rgba(255,0,106,.18),rgba(0,140,255,.16)); border-radius:12px; display:flex; height:42px; justify-content:center; width:42px; }
.guide-stack__item strong { color:#fff; display:block; font-size:.82rem; }
.guide-stack__item small { color:var(--text-secondary); display:block; margin-top:.15rem; }
.guide-matrix { display:grid; gap:1px; grid-template-columns:repeat(2,minmax(0,1fr)); background:var(--border-strong); border:1px solid var(--border-strong); margin-top:1rem; }
.guide-matrix div { background:#111119; padding:1rem; }
.guide-matrix strong { color:#fff; display:block; font-size:.78rem; margin-bottom:.3rem; }
.guide-matrix span { color:var(--text-secondary); font-size:.72rem; }
.guide-keyline { background:var(--gradient-brand); height:2px; margin:1.5rem 0; width:84px; }
.guide-final-cta { align-items:center; background:#08080e; border-radius:var(--radius-xl); color:#fff; display:grid; gap:2rem; grid-template-columns:minmax(0,1.1fr) auto; margin-top:clamp(4rem,7vw,6rem); padding:clamp(1.75rem,4vw,3rem); }
.guide-final-cta h2 { color:#fff; font-family:var(--font-display); font-size:clamp(2.4rem,4vw,4rem); line-height:.95; margin:.4rem 0 .7rem; text-transform:uppercase; }
.guide-final-cta p { color:var(--text-secondary); margin:0; max-width:680px; }
.guide-index-hero .guide-hero__visual { min-height:380px; }
.guide-index-grid { gap:1rem; }
.guide-card { border-radius:var(--radius-xl); min-height:330px; padding:1.5rem; position:relative; overflow:hidden; transition:transform var(--motion-standard) var(--ease-standard), box-shadow var(--motion-standard) var(--ease-standard); }
.guide-card::before { background:var(--gradient-brand); content:""; height:2px; left:0; position:absolute; right:0; top:0; }
.guide-card__visual { align-items:center; background:#0b0b12; border-radius:var(--radius-lg); display:flex; height:110px; justify-content:center; margin-bottom:1.25rem; overflow:hidden; position:relative; }
.guide-card__visual svg { height:68px; width:68px; }
.guide-card h2 { font-size:1.65rem; text-transform:none; }
.guide-card span { color:var(--accent-pink-text); font-size:.78rem; font-weight:800; }
@media (max-width: 980px) {
  .guide-hero__grid,.guide-section-grid,.guide-intro-band { grid-template-columns:1fr; }
  .guide-hero__visual { min-height:340px; }
  .guide-section-grid--reverse > :first-child,.guide-section-grid--reverse > :last-child { order:initial; }
  .guide-decision-grid { grid-template-columns:1fr; }
  .guide-final-cta { grid-template-columns:1fr; }
}
@media (max-width: 640px) {
  .guide-hero { padding:var(--space-6) 0 var(--space-7); }
  .guide-hero__copy h1 { font-size:clamp(3rem,15vw,4.6rem); }
  .guide-hero__visual { min-height:300px; }
  .guide-path { grid-template-columns:repeat(2,1fr); row-gap:1.25rem; }
  .guide-path::before { display:none; }
  .guide-matrix { grid-template-columns:1fr; }
}
