/* The CCTV service page is the reference for every service heading, icon and route. */
.detail-page{--service-ink:#1c2a32;--service-orange:#f97121;--service-surface:#f6f8f9;--service-muted:#66757e}
.detail-page .dp-container{width:min(1300px,calc(100% - 64px))}
.detail-page .dp-hero{padding:30px 0 76px}
.detail-page .dp-hero-grid{min-height:338px;grid-template-columns:1.08fr .82fr;gap:8%}
.detail-page .dp-hero h1{font-size:clamp(48px,4.4vw,65px);line-height:1.18;letter-spacing:-.5px}
.detail-page .dp-hero-lead{font-size:15px;line-height:1.8}
.detail-page .dp-hero-panel{min-height:320px;padding:31px 36px}
.detail-page .dp-hero-panel>small{font-size:10px;letter-spacing:1.2px}
.detail-page .dp-hero-panel>strong,.detail-page .nw-hero-title{font-size:clamp(34px,3vw,43px);font-weight:500;line-height:1.3}
.detail-page .dp-section{padding:86px 0}
.detail-page .dp-section--tint{background:var(--service-surface)}
.detail-page .dp-head{gap:56px;margin-bottom:32px}
.detail-page .dp-kicker{font-size:10px;font-weight:600;letter-spacing:1.9px}
.detail-page .dp-head h2{max-width:800px;margin-top:13px;font-size:clamp(33px,3.15vw,44px);line-height:1.2;letter-spacing:-.45px;font-weight:600}
.detail-page .dp-head h2 .dp-num,.detail-page .dp-cta h2 .dp-num{display:inline-flex;width:52px;height:52px;flex:0 0 52px;align-items:center;justify-content:center;margin:0 15px 0 0;border:0;border-radius:11px;color:#fff;background:var(--service-orange);font-size:19px;font-weight:600;line-height:1;letter-spacing:0}
.detail-page .dp-head>p{max-width:370px;margin:0;color:var(--service-muted);font-size:15px;line-height:1.75}
.detail-page .dp-section--dark .dp-head>p{color:#c8d5db}
.detail-page .dp-cta{padding:66px 0}
.detail-page .dp-cta h2{display:flex;align-items:center;font-size:clamp(32px,3.15vw,44px);line-height:1.2}
.detail-page .dp-cta p{font-size:14px;line-height:1.75}

/* Every service-choice icon uses the same SVG sprite, line weight and tile scale. */
.detail-page .dp-icon-title{display:flex;align-items:center;gap:12px;margin:12px 0 10px}
.detail-page .dp-icon-title h3{min-width:0;margin:0;font-size:20px;line-height:1.3;font-weight:600}
.detail-page .dp-service-icon{display:block;width:46px;height:46px;flex:0 0 46px;padding:9px;border-radius:10px;color:#d65f20;background:#fff0e8}
.detail-page .dp-section--dark .dp-service-icon{color:#ffae7e;background:#ffffff16}
.detail-page .dp-card{box-shadow:0 8px 24px #182d3b08}

/* A connected route is reserved for real sequences; cards and checklists keep their own layouts. */
.detail-page .dp-route{--route-columns:4;position:relative;isolation:isolate;display:grid;grid-template-columns:repeat(var(--route-columns),minmax(0,1fr));gap:0;align-items:stretch;margin:0;padding:41px 25px 38px;border:0;border-radius:18px;color:#fff;background:#21343f;box-shadow:0 24px 42px #14263320;filter:none;overflow:visible}
.detail-page .dp-route--three{--route-columns:3}
.detail-page .dp-route:before{position:absolute;z-index:0;top:76px;right:9%;left:9%;height:4px;content:"";border-radius:4px;background:#ef7a3e}
.detail-page .dp-route:after{position:absolute;top:69px;right:8.3%;width:15px;height:15px;content:"";border-top:4px solid #ef7a3e;border-right:4px solid #ef7a3e;transform:rotate(45deg)}
.detail-page .dp-route>:is(article,div,li),.detail-page .dp-route>:is(article,div,li):first-child,.detail-page .dp-route>:is(article,div,li):last-child{position:relative;z-index:1;display:flex;min-width:0;min-height:200px;flex-direction:column;align-items:center;justify-content:flex-start;padding:0 12px;border:0;border-radius:0;color:#fff;background:transparent;box-shadow:none;text-align:center;clip-path:none;transform:none}
.detail-page .dp-route>:is(article,div,li)>b:first-child{position:relative;z-index:1;display:grid;width:74px;height:74px;flex:0 0 74px;place-items:center;margin:0;border:5px solid #21343f;border-radius:50%;color:#fff;background:#ed7134;box-shadow:0 0 0 2px #ffa16d;font-size:28px;font-weight:600;line-height:1;letter-spacing:0}
.detail-page .dp-route>:is(article,div,li)>div{display:flex;flex-direction:column;align-items:center}
.detail-page .dp-route>:is(article,div,li) h3,.detail-page .dp-route>:is(article,div,li)>strong{display:block;margin:24px 0 6px;color:#fff;font-size:20px;font-weight:600;line-height:1.35}
.detail-page .dp-route>:is(article,div,li) p,.detail-page .dp-route>:is(article,div,li)>small{max-width:185px;margin:0;color:#c9d7de;font-size:13px;line-height:1.6}
.detail-page .dp-route>:is(article,div)>div>:is(span,small),.detail-page .dp-route>div>span,.detail-page .dp-route>article>span{color:#ffae7e;font-size:10px;font-weight:600;letter-spacing:1px}
.detail-page .sv-process.dp-route article>strong{margin:12px 0 0;color:#ffae7e;font-size:11px}
.detail-page .sd-path{display:block}
.detail-page .sd-path-copy{margin-bottom:24px}
.detail-page .sd-path.dp-route{display:grid}
.detail-page .sd-path .dp-route{width:100%}
.detail-page .sd-path .dp-route>li>strong{margin:24px 0 6px}
.detail-page .sd-path .dp-route>li>small{color:#c9d7de;font-size:13px;letter-spacing:0}

@media(max-width:1100px){
  .detail-page .dp-route{display:block;padding:25px 28px 25px 30px}
  .detail-page .dp-route:before{top:65px;bottom:65px;left:65px;right:auto;width:4px;height:auto}
  .detail-page .dp-route:after{display:none}
  .detail-page .dp-route>:is(article,div,li),.detail-page .dp-route>:is(article,div,li):first-child,.detail-page .dp-route>:is(article,div,li):last-child{display:grid;min-height:108px;grid-template-columns:74px minmax(0,1fr);grid-template-rows:auto auto;align-items:start;justify-content:stretch;padding:12px 10px;text-align:left}
  .detail-page .dp-route>:is(article,div,li)>b:first-child{width:62px;height:62px;flex-basis:62px;grid-row:1/4;font-size:22px}
  .detail-page .dp-route>:is(article,div,li)>div{grid-column:2;align-items:flex-start}
  .detail-page .dp-route>:is(article,div,li) h3,.detail-page .dp-route>:is(article,div,li)>strong,.detail-page .sd-path .dp-route>li>strong{grid-column:2;margin:6px 0 2px;font-size:20px}
  .detail-page .dp-route>:is(article,div,li) p,.detail-page .dp-route>:is(article,div,li)>small{grid-column:2;max-width:none;margin:0;font-size:13px}
  .detail-page .sv-process.dp-route article>strong{grid-column:2;margin:5px 0 0;font-size:11px}
}
@media(max-width:800px){.detail-page .dp-hero-grid{grid-template-columns:1fr}.detail-page .dp-head{display:block}.detail-page .dp-head>p{max-width:650px;margin-top:12px}}
@media(max-width:620px){
  .detail-page .dp-container{width:calc(100% - 36px)}
  .detail-page .dp-hero{padding-bottom:58px}
  .detail-page .dp-hero h1{font-size:48px;line-height:1.19}
  .detail-page .dp-hero-panel{min-height:240px;padding:25px}
  .detail-page .dp-hero-panel>strong,.detail-page .nw-hero-title{font-size:30px}
  .detail-page .dp-section{padding:52px 0}
  .detail-page .dp-head h2{font-size:32px}
  .detail-page .dp-head h2 .dp-num,.detail-page .dp-cta h2 .dp-num{width:42px;height:42px;flex-basis:42px;margin-right:9px;border-radius:9px;font-size:16px}
  .detail-page .dp-head>p{font-size:13px}
  .detail-page .dp-icon-title h3{font-size:18px}
  .detail-page .dp-service-icon{width:46px;height:46px;flex-basis:46px;padding:9px}
  .detail-page .dp-cta h2{font-size:30px}
  .detail-page .dp-route{padding:21px 15px}
  .detail-page .dp-route:before{top:54px;bottom:54px;left:48px;width:3px}
  .detail-page .dp-route>:is(article,div,li),.detail-page .dp-route>:is(article,div,li):first-child,.detail-page .dp-route>:is(article,div,li):last-child{min-height:92px;grid-template-columns:61px minmax(0,1fr);padding:12px 0}
  .detail-page .dp-route>:is(article,div,li)>b:first-child{width:56px;height:56px;flex-basis:56px;font-size:20px}
  .detail-page .dp-route>:is(article,div,li) h3,.detail-page .dp-route>:is(article,div,li)>strong,.detail-page .sd-path .dp-route>li>strong{margin:4px 0 1px;font-size:18px}
}
