/* ── SHARED SERVICE PAGE STYLES ─────────────────────────────────────────── */
.sp-hero{background:var(--grad-hero);padding:6rem 0 4rem;position:relative;overflow:hidden;}
.sp-hero::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.045) 1px,transparent 1px);background-size:28px 28px;}
.sp-hero-inner{position:relative;z-index:1;max-width:780px;margin:0 auto;text-align:center;}
.sp-hero-title{font-size:clamp(1.875rem,3.5vw,2.75rem);font-weight:800;color:#fff;line-height:1.2;margin-bottom:1rem;}
.sp-hero-sub{font-size:.9375rem;color:rgba(255,255,255,.72);line-height:1.8;margin-bottom:1rem;}

/* two-column layout */
.sp-layout{display:grid;grid-template-columns:1fr 320px;gap:3.5rem;align-items:start;padding-top:72px;padding-bottom:72px;}
.sp-main{}
.sp-sidebar{position:sticky;top:96px;display:flex;flex-direction:column;gap:1.25rem;}

/* section blocks */
.sp-block{margin-bottom:3rem;padding-bottom:3rem;border-bottom:1px solid var(--border);}
.sp-block:last-child{border-bottom:none;margin-bottom:0;}
.sp-h2{font-size:1.375rem;font-weight:700;color:var(--dark);margin-bottom:.875rem;display:flex;align-items:center;gap:.625rem;}
.sp-h2::before{content:'';display:inline-block;width:4px;height:1.375rem;background:var(--blue);border-radius:2px;flex-shrink:0;}
.sp-p{font-size:.9375rem;color:var(--slate);line-height:1.8;margin-bottom:.875rem;}
.sp-p:last-child{margin-bottom:0;}

/* bullet list */
.sp-list{list-style:none;padding:0;margin:.75rem 0 0;display:flex;flex-direction:column;gap:.625rem;}
.sp-list li{display:flex;align-items:flex-start;gap:.625rem;font-size:.9375rem;color:var(--dark);line-height:1.55;}
.sp-list li::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--blue);flex-shrink:0;margin-top:.42rem;}
.sp-list--two{display:grid;grid-template-columns:1fr 1fr;gap:.5rem .875rem;}

/* numbered steps */
.sp-steps{display:flex;flex-direction:column;gap:1rem;margin-top:.875rem;}
.sp-step{display:flex;gap:1rem;align-items:flex-start;background:var(--off-white);border:1px solid var(--border);border-radius:12px;padding:1rem 1.125rem;}
.sp-step-num{width:32px;height:32px;border-radius:50%;background:var(--grad-brand);color:#fff;font-size:.8125rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.sp-step-title{font-size:.9375rem;font-weight:700;color:var(--dark);margin-bottom:.2rem;}
.sp-step-desc{font-size:.875rem;color:var(--slate);line-height:1.6;}

/* FAQ accordion */
.sp-faq{display:flex;flex-direction:column;gap:.625rem;margin-top:.875rem;}

/* sidebar cards */
.s-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:1.5rem;box-shadow:var(--shadow-sm);}
.s-card--tint{background:var(--grad-tint);border-color:rgba(46,50,126,.1);}
.s-card-title{font-size:.9375rem;font-weight:700;color:var(--dark);margin-bottom:.875rem;padding-bottom:.75rem;border-bottom:1px solid var(--border);}
.s-card-title--navy{color:var(--navy);border-bottom-color:rgba(46,50,126,.1);}
.s-links{display:flex;flex-direction:column;gap:.5rem;}
.s-link{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:var(--blue);}
.s-link::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--blue);flex-shrink:0;}
.s-link:hover{text-decoration:underline;}
.s-meta{display:flex;flex-direction:column;gap:.5rem;}
.s-meta-item{display:flex;align-items:flex-start;gap:.5rem;font-size:.8125rem;color:var(--slate);line-height:1.5;}
.s-meta-item::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--slate);flex-shrink:0;margin-top:.4rem;}

/* highlight box */
.sp-highlight{background:var(--grad-tint);border:1px solid rgba(46,50,126,.1);border-radius:14px;padding:1.5rem;margin:1.25rem 0;}
.sp-highlight-title{font-size:.9375rem;font-weight:700;color:var(--navy);margin-bottom:.5rem;}
.sp-highlight p{font-size:.875rem;color:var(--slate);line-height:1.7;}

/* warning/alert box */
.sp-alert{background:#FEF3C7;border:1px solid #FCD34D;border-radius:14px;padding:1.5rem;margin:1.25rem 0;}
.sp-alert-title{font-size:.9375rem;font-weight:700;color:#92400E;margin-bottom:.5rem;}
.sp-alert p{font-size:.875rem;color:#78350F;line-height:1.7;}

/* cta band */
.cta-band{background:var(--navy);padding:72px 0;text-align:center;position:relative;overflow:hidden;}
.cta-band::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:28px 28px;}
.cta-band-inner{position:relative;z-index:1;max-width:600px;margin:0 auto;}
.cta-band-title{font-size:clamp(1.5rem,3vw,2rem);font-weight:800;color:#fff;margin-bottom:.875rem;}
.cta-band-sub{font-size:.9375rem;color:rgba(255,255,255,.7);line-height:1.8;margin-bottom:2rem;}

/* disclaimer */
.sp-disclaimer{font-size:.8rem;color:#94A3B8;line-height:1.6;padding-top:1.5rem;border-top:1px solid var(--border);font-style:italic;}

@media(max-width:1024px){
  .sp-layout{grid-template-columns:1fr;padding-top:48px;padding-bottom:48px;}
  .sp-sidebar{position:static;}
  .sp-list--two{grid-template-columns:1fr;}
}
