
/* Services Page Art Direction, Edition 2. Scoped to .spnc-sv only. */
.spnc-sv{--sv-max:1280px}
.spnc-sv .spnc-sv-hero--refined{
  background:#102A43;color:#FFFFFF;position:relative;isolation:isolate;overflow:hidden;
  border-bottom:0;
}
.spnc-sv .spnc-sv-hero--refined:before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(90deg,transparent 0,transparent 47px,rgba(255,255,255,.03) 48px),linear-gradient(transparent 0,transparent 47px,rgba(255,255,255,.03) 48px);
  background-size:48px 48px;mask-image:linear-gradient(90deg,transparent 18%,#FFFFFF 85%);opacity:.8
}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__grid{
  display:grid;grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr);
  gap:70px;padding:60px 0 66px;min-height:560px;align-items:center;
}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__copy{max-width:650px}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-breadcrumb{margin:0 0 32px;color:#FFFFFF;opacity:.85;display:flex;gap:11px;font-size:12px}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-breadcrumb a{color:#FFFFFF}
.spnc-sv .spnc-sv-hero--refined h1{
  color:#FFFFFF!important;font-size:clamp(43px,4.45vw,68px)!important;line-height:1.075;letter-spacing:-.058em;
  font-weight:800;margin:0 0 25px;max-width:670px
}
.spnc-sv .spnc-sv-hero--refined h1 em{display:block;font-style:normal;color:#FFFFFF!important;position:relative}
.spnc-sv .spnc-sv-hero--refined h1 em:after{
  content:"";height:3px;max-width:66%;width:240px;background:#0C879F;display:block;margin-top:14px;
  border-radius:8px;animation:spnc-sv-refine-rule 1.1s .55s both;transform-origin:left center
}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__copy>p{
  color:#FFFFFF;opacity:.88;font-size:17px;line-height:1.7;max-width:560px;margin:0 0 28px
}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-actions{margin:0;gap:12px}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-btn{
  min-height:52px;padding:14px 21px;border-radius:8px;font-size:14px;
  display:inline-flex;align-items:center;justify-content:center;gap:16px;
}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-btn--primary{
  color:#102A43!important;background:#FFFFFF;border-color:#FFFFFF;box-shadow:0 10px 26px rgba(16,42,67,.2)
}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-btn--primary:hover{background:#F5F8FC;color:#102A43!important;transform:translateY(-3px)}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-btn--secondary{
  color:#FFFFFF!important;background:transparent;border-color:#FFFFFF;
}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-btn--secondary:hover{background:rgba(255,255,255,.12);color:#FFFFFF!important;transform:translateY(-2px)}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__visual{position:relative;min-width:0;padding:10px 3px 24px 0}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__photo{
  border:1px solid #FFFFFF;border-radius:13px;box-shadow:0 26px 60px rgba(0,0,0,.2);
  overflow:hidden;position:relative;background:#102A43
}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__photo img{
  width:100%;height:auto;aspect-ratio:1.18/1;object-fit:cover;
  display:block;transition:transform .7s cubic-bezier(.2,.8,.25,1)
}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__photo:hover img{transform:scale(1.025)}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__photo:after{
  content:"";position:absolute;inset:57% 0 0;
  background:linear-gradient(transparent,rgba(16,42,67,.82));pointer-events:none;
}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__photo figcaption{
  position:absolute;z-index:1;left:22px;bottom:23px;display:flex;gap:10px;align-items:center;
  color:#FFFFFF;font-size:10px;font-weight:800;letter-spacing:.105em
}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__caption-line{display:block;width:31px;height:2px;background:#FFFFFF}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__draft-tag{
  position:absolute;bottom:0;right:-13px;display:flex;align-items:center;gap:8px;
  padding:13px 17px;background:#FFFFFF;border:1px solid #D6E3EC;border-radius:9px;
  box-shadow:0 12px 30px rgba(16,42,67,.18);font-size:10px;font-weight:800;letter-spacing:.06em;color:#102A43;
}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__tag-separator{display:inline-block;width:18px;height:2px;background:#0C879F}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__copy,
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__visual{animation:spnc-sv-refine-in .88s cubic-bezier(.2,.8,.25,1) both}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__visual{animation-delay:.13s}
@keyframes spnc-sv-refine-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes spnc-sv-refine-rule{from{transform:scaleX(0)}to{transform:scaleX(1)}}
/* Trust bar: larger type and clean technical reading rhythm */
.spnc-sv .spnc-sv-assurance__grid{padding:22px 0}
.spnc-sv .spnc-sv-assurance__grid>div{padding:9px 16px;column-gap:11px}
.spnc-sv .spnc-sv-assurance__grid strong{font-size:13px;font-weight:800}
.spnc-sv .spnc-sv-assurance__grid small{font-size:11px}
.spnc-sv .spnc-sv-assurance__mark{background:#F5F8FC;color:#0C879F}
/* Balanced service directory with photo-led editorial rhythm */
.spnc-sv .spnc-sv-directory{background:#FFFFFF}
.spnc-sv .spnc-sv-directory .spnc-sv-sectionhead{margin-bottom:27px}
.spnc-sv .spnc-sv-directory .spnc-sv-sectionhead h2{font-size:clamp(34px,3.4vw,48px);margin-bottom:14px}
.spnc-sv .spnc-sv-directory .spnc-sv-sectionhead p{font-size:15px;max-width:620px}
.spnc-sv .spnc-sv-filter{display:flex;gap:10px;flex-wrap:wrap;padding:9px;background:#F5F8FC;
  border:1px solid #D6E3EC;border-radius:11px;width:max-content;max-width:100%;margin-bottom:14px}
.spnc-sv .spnc-sv-filter button{
  background:transparent;border-color:transparent;border-radius:7px;
  min-height:43px;padding:11px 16px;font-size:13px;transition:background .2s,box-shadow .2s,color .2s
}
.spnc-sv .spnc-sv-filter button:hover{background:#FFFFFF;border-color:#D6E3EC}
.spnc-sv .spnc-sv-filter button.is-current{background:#102A43;color:#FFFFFF;border-color:#102A43;box-shadow:0 3px 10px rgba(16,42,67,.13)}
.spnc-sv .spnc-sv-filter__result{margin:0 0 21px!important;font-size:12px}
.spnc-sv .spnc-sv-cards{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:19px;align-items:stretch}
.spnc-sv .spnc-sv-card{
  grid-column:span 6;border-radius:13px;overflow:hidden;background:#FFFFFF;
  border:1px solid #D6E3EC;box-shadow:none;transition:transform .25s,border-color .25s,box-shadow .25s
}
.spnc-sv .spnc-sv-card:hover{border-color:#176DB0;box-shadow:0 16px 34px rgba(16,42,67,.09);transform:translateY(-4px)}
.spnc-sv .spnc-sv-card--featured{grid-column:span 6;background:#F5F8FC}
.spnc-sv .spnc-sv-card__body{padding:24px 25px 27px}
.spnc-sv .spnc-sv-card__body h3{font-size:clamp(19px,1.8vw,25px);margin:0 0 9px}
.spnc-sv .spnc-sv-card__body p{font-size:13px}
.spnc-sv .spnc-sv-card__body .spnc-sv-card__tagline{font-size:14px;margin:0 0 9px;font-weight:750}
.spnc-sv .spnc-sv-card__body ul{margin:13px 0 21px}
.spnc-sv .spnc-sv-card__body li{font-size:12px;padding:6px 0}
.spnc-sv .spnc-sv-card__body .spnc-sv-link{margin-top:auto;font-size:13px}
.spnc-sv .spnc-sv-card__count{padding:8px 10px;border-radius:5px}
.spnc-sv .spnc-sv-card--featured .spnc-sv-card__media img{aspect-ratio:1.97/1}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured){
  display:grid;grid-template-columns:minmax(0,42%) minmax(0,58%);min-height:275px;
  flex-direction:unset
}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__media{height:100%;min-height:100%}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__media img{
  height:100%;width:100%;aspect-ratio:auto;object-fit:cover;position:absolute;inset:0
}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__body{padding:22px 20px 20px}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__body h3{font-size:clamp(17px,1.5vw,21px)}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__body>p:not(.spnc-sv-card__tagline){
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:12px
}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__body ul{
  display:none
}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__body .spnc-sv-link{margin-top:17px}
/* Stronger service-detail / deliverables explainer */
.spnc-sv .spnc-sv-feature{background:#F5F8FC}
.spnc-sv .spnc-sv-feature__grid{gap:75px}
.spnc-sv .spnc-sv-feature__content h2{font-size:clamp(35px,3.4vw,49px)}
.spnc-sv .spnc-sv-feature__content>p{font-size:16px;line-height:1.75}
.spnc-sv .spnc-sv-detail-list{margin:27px 0 29px}
.spnc-sv .spnc-sv-detail-list h3{font-size:16px}
.spnc-sv .spnc-sv-detail-list p{font-size:13px}
.spnc-sv .spnc-sv-feature__visual img{aspect-ratio:1.23/1;object-position:center}
.spnc-sv .spnc-sv-feature__label{bottom:38px;right:0}
/* Clearer interactive project preparation experience */
.spnc-sv .spnc-sv-readiness .spnc-sv-sectionhead{margin-bottom:30px}
.spnc-sv .spnc-sv-readiness__grid{min-height:455px;grid-template-columns:.95fr 1.05fr;box-shadow:0 12px 30px rgba(16,42,67,.045)}
.spnc-sv .spnc-sv-readiness__content{padding:38px 45px}
.spnc-sv .spnc-sv-readiness__content h3{font-size:26px}
.spnc-sv .spnc-sv-checklist label{padding:12px 14px;min-height:48px;line-height:1.4}
.spnc-sv .spnc-sv-checklist label:hover{border-color:#176DB0}
.spnc-sv .spnc-sv-check-result{margin:18px 0;background:#FFFFFF}
/* Custom scope contrast is intentional; maintain boxed content */
.spnc-sv .spnc-sv-custom{background:#102A43}
.spnc-sv .spnc-sv-custom__grid{gap:80px}
.spnc-sv .spnc-sv-custom h2{font-size:clamp(34px,3.5vw,50px);line-height:1.12}
.spnc-sv .spnc-sv-custom__types>div{padding:23px 0}
.spnc-sv .spnc-sv-custom__types strong{font-size:17px}
/* FAQ: larger hit areas and visible states */
.spnc-sv .spnc-sv-faq__items summary{padding:3px 32px 3px 0;min-height:30px;font-size:15px}
.spnc-sv .spnc-sv-faq__items details[open]{background:#FFFFFF;border-radius:9px}
.spnc-sv .spnc-sv-faq__items details p{font-size:14px;line-height:1.67}
.spnc-sv .spnc-sv-final__row{min-height:320px}
.spnc-sv .spnc-sv-final h2{font-size:clamp(35px,3.5vw,49px)}
@media(max-width:1130px){
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__grid{gap:40px}
.spnc-sv .spnc-sv-hero--refined h1{font-size:clamp(42px,5vw,60px)!important}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured){grid-template-columns:minmax(0,42%) minmax(0,58%)}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__body{padding:19px}
}
@media(max-width:900px){
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__grid{grid-template-columns:1fr;gap:32px;min-height:0;padding:53px 0 63px}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__copy{max-width:760px}
.spnc-sv .spnc-sv-hero--refined h1{font-size:clamp(44px,7vw,67px)!important}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__visual{max-width:740px;margin:0 auto;width:100%}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__photo img{aspect-ratio:1.65/1}
.spnc-sv .spnc-sv-cards{gap:16px}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured){display:flex;flex-direction:column;min-height:0}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__media{height:auto;min-height:0}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__media img{position:static;height:auto;aspect-ratio:1.7/1}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__body{padding:22px}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__body ul{display:block;margin:13px 0}
.spnc-sv .spnc-sv-feature__grid{gap:36px}
.spnc-sv .spnc-sv-readiness__grid{grid-template-columns:1fr}
}
@media(max-width:620px){
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__grid{width:calc(100% - 34px);padding:38px 0 49px;gap:25px}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-breadcrumb{margin-bottom:22px}
.spnc-sv .spnc-sv-hero--refined h1{font-size:clamp(36px,9.3vw,48px)!important;margin-bottom:20px}
.spnc-sv .spnc-sv-hero--refined h1 em:after{margin-top:10px}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__copy>p{font-size:15px;margin:0 0 23px}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-actions{display:grid;grid-template-columns:1fr;gap:9px}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-btn{width:100%;min-height:48px}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__visual{padding:0 0 15px}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__photo img{aspect-ratio:1.45/1}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__photo figcaption{font-size:9px;left:15px;bottom:14px}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__draft-tag{bottom:0;right:0;padding:10px 11px;font-size:9px}
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__tag-separator{width:12px}
.spnc-sv .spnc-sv-filter{flex-wrap:nowrap;overflow-x:auto;width:100%;max-width:100%;padding:6px;gap:5px;border-radius:8px}
.spnc-sv .spnc-sv-filter button{padding:10px 13px;white-space:nowrap;flex:none;font-size:12px}
.spnc-sv .spnc-sv-cards{grid-template-columns:1fr;gap:15px}
.spnc-sv .spnc-sv-card,.spnc-sv .spnc-sv-card--featured{grid-column:auto}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured){display:flex}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__media img,.spnc-sv .spnc-sv-card--featured .spnc-sv-card__media img{aspect-ratio:1.7/1}
.spnc-sv .spnc-sv-card__body{padding:23px}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__body h3{font-size:20px}
.spnc-sv .spnc-sv-card:not(.spnc-sv-card--featured) .spnc-sv-card__body ul{display:block}
.spnc-sv .spnc-sv-feature__visual img{aspect-ratio:1.38/1}
.spnc-sv .spnc-sv-readiness__content{padding:25px 18px}
.spnc-sv .spnc-sv-final__row{min-height:0}
}
@media(prefers-reduced-motion:reduce){
.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__copy,.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__visual,.spnc-sv .spnc-sv-hero--refined h1 em:after{animation:none!important;opacity:1!important;transform:none!important}
.spnc-sv .spnc-sv-card,.spnc-sv .spnc-sv-hero--refined .spnc-sv-hero__photo img{transition:none!important;transform:none!important}
}
