/* Service explanations use real text, native disclosure controls and local SVG icons. */
.service-page-title{padding-bottom:30px}
.service-page-title .breadcrumbs{margin-bottom:20px}
.service-page-title .eyebrow{margin-top:15px;margin-bottom:12px}
.service-page-title h1{font-size:clamp(30px,3.2vw,44px)}
.service-intro{display:grid;grid-template-columns:1fr 1.08fr;align-items:center;gap:65px;padding-block:45px 55px}
.service-intro-copy h2{font-size:clamp(27px,2.6vw,36px);line-height:1.2;max-width:550px}
.service-intro-copy>p:not(.eyebrow):not(.service-phone){font-size:16px;line-height:1.85;color:#526259}
.service-intro-copy>.button{font-size:13px;border-radius:5px;min-height:46px;max-width:100%;text-align:center}
.service-brief-link{display:flex;align-items:center;gap:8px;width:fit-content;min-height:44px;font-size:13px;margin-top:10px;line-height:1.5}
.service-brief-link .icon{width:17px;height:17px}
.service-intro-copy .service-phone{font-size:13px;color:#526259;margin:8px 0 0}
.service-phone a{font-weight:700}
.service-map{padding:26px 28px;background:linear-gradient(140deg,#173e2b,#102820);border:1px solid #315640;border-radius:14px;color:#fff;box-shadow:10px 10px 0 #f0f6ed}
.service-map-brand{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}
.service-map-brand>span:first-child{font:700 14px var(--heading);letter-spacing:2px;color:#fff}
.service-map-brand>span:last-child{font-size:8px;letter-spacing:1px;color:#bdd6c3}
.service-map h3{font-size:22px;line-height:1.25;color:#fff;letter-spacing:-.3px;margin-bottom:22px}
.service-map-nodes{position:relative;display:grid;gap:10px;list-style:none;padding:0;margin:0 0 19px}
.service-map-nodes::before{content:'';position:absolute;top:25px;bottom:25px;left:24px;width:1px;background:#76ac68}
.service-map-nodes li{position:relative;display:flex;align-items:center;gap:14px;margin:0;padding:0;min-width:0}
.map-node-icon{display:grid;place-items:center;flex:0 0 49px;height:49px;width:49px;border:1px solid #5a8261;border-radius:10px;background:#234d35;color:#c0eeb2;z-index:1}
.map-node-icon .icon{width:25px;height:25px}
.service-map-nodes li>div{padding:10px 14px;border:1px solid #41624b;border-radius:7px;background:#ffffff07;flex:1;min-width:0}
.service-map-nodes strong{display:block;font:400 17px/1.4 var(--heading);color:#fff;margin-bottom:3px}
.service-map-nodes li>div>span{display:block;font-size:12px;line-height:1.5;color:#c6d9cd}
.service-map figcaption{font-size:11px;line-height:1.7;color:#bfd0c3;margin:0;border-top:1px solid #45634d;padding-top:15px}
.service-scenarios{padding-block:48px}
.service-scenarios .section-heading{align-items:end;gap:30px;margin-bottom:25px}
.service-scenarios .section-heading>p{font-size:14px;max-width:260px;margin:0;color:#526259}
.service-scenarios h2{font-size:30px;margin:0}
.scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.scenario-grid details{border:1px solid #d8e4d9;border-radius:10px;background:#fff;overflow:hidden}
.scenario-grid summary{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:96px;padding:21px;font:700 18px/1.4 var(--heading);cursor:pointer;color:#273d2d;list-style:none}
.scenario-grid summary::-webkit-details-marker{display:none}
.scenario-grid summary>span{position:relative;flex:0 0 26px;height:26px;border:1px solid #c9ddc4;border-radius:50%;background:#f1f8ed}
.scenario-grid summary>span::before,.scenario-grid summary>span::after{content:'';position:absolute;top:11px;left:7px;width:10px;height:2px;background:#176b38}
.scenario-grid summary>span::after{transform:rotate(90deg);transition:transform .2s}
.scenario-grid details[open] summary>span::after{transform:rotate(0)}
.scenario-grid summary:hover,.scenario-grid details[open] summary{background:#f3f9ef}
.scenario-grid summary:focus-visible{outline:3px solid #137a3e;outline-offset:-4px}
.scenario-grid details>div{padding:20px 21px;border-top:1px solid #e0eadb}
.scenario-grid details p{font-size:14px;line-height:1.8;color:#526259;margin:0 0 12px}
.scenario-grid details a{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:12px;font-weight:700}
.scenario-grid details a .icon{width:16px;height:16px}
.service-workflow{padding-block:55px}
.service-workflow .section-heading{margin-bottom:32px}
.service-workflow h2{font-size:32px}
.service-workflow-steps{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;list-style:none;padding:0;margin:0 0 36px}
.service-workflow-steps::before{content:'';position:absolute;left:24px;right:24px;top:23px;height:1px;background:#d0e2c9}
.service-workflow-steps li{position:relative;margin:0}
.workflow-number{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#f0f8ec;border:1px solid #a6ce97;color:#176b38;font:700 16px var(--heading);margin-bottom:20px;position:relative}
.service-workflow-steps h3{font-size:22px;line-height:1.3;margin-bottom:12px}
.service-workflow-steps p{font-size:14px;line-height:1.8;color:#526259;margin:0}
.service-conversation{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:27px 30px;background:#f2f8ee;border:1px solid #d6e5cf;border-left:3px solid #28d603;border-radius:8px}
.service-conversation strong{font:700 21px/1.4 var(--heading);color:#23432b}
.service-conversation p{max-width:660px;font-size:14px;line-height:1.7;margin:8px 0 0;color:#526259}
.service-conversation .button{flex-shrink:0;border-radius:5px;font-size:13px}
.service-scope{padding-top:20px;border-top:1px solid #e4ebe0}
.service-scope .service-aside{top:95px}
.service-context{border-top:1px solid #dce7df;margin-top:30px;padding-top:15px}
.service-context summary{cursor:pointer;padding:8px 0;color:#176b38;font-size:15px;font-weight:600}
.service-context p{font-size:15px;margin:18px 0 0;line-height:1.85}
.service-scope .related-link{display:flex;align-items:center;gap:10px;min-height:44px;margin:5px 0;font-size:13px;line-height:1.6}
.service-scope .related-link .icon{width:21px;height:21px}
@media(max-width:1100px){.service-intro{gap:32px}.service-map{padding:23px}.service-intro-copy h2{font-size:29px}.scenario-grid summary{font-size:16px;padding:18px;min-height:108px}.service-workflow-steps{gap:26px}}
@media(max-width:991px){.service-scope .service-aside{top:155px}.service-conversation{gap:20px;padding:23px}.service-conversation .button{padding:12px 16px}}
@media(max-width:767px){
  .service-page-title{padding-bottom:25px}
  .service-page-title h1{font-size:32px}
  .service-intro{grid-template-columns:1fr;gap:30px;padding-block:30px 40px}
  .service-intro-copy h2{font-size:29px}
  .service-intro-copy>p:not(.eyebrow):not(.service-phone){font-size:15px}
  .service-map{padding:22px 19px;box-shadow:5px 5px 0 #f0f6ed}
  .service-map-brand>span:last-child{font-size:7px;letter-spacing:.5px}
  .service-map h3{font-size:22px}
  .service-map-nodes li{gap:10px}
  .map-node-icon{flex-basis:40px;width:40px;height:44px}
  .service-map-nodes::before{left:20px}
  .service-map-nodes li>div{padding:10px}
  .service-map-nodes strong{font-size:16px}
  .service-map-nodes li>div>span{font-size:12px}
  .service-scenarios{padding-block:36px}
  .service-scenarios .section-heading>p{margin-top:14px;max-width:none}
  .scenario-grid{grid-template-columns:1fr;gap:12px}
  .scenario-grid summary{min-height:75px;font-size:18px;padding:19px}
  .service-workflow{padding-block:40px}
  .service-workflow h2{font-size:29px}
  .service-workflow-steps{grid-template-columns:1fr;gap:25px}
  .service-workflow-steps::before{left:23px;top:24px;bottom:24px;width:1px;height:auto}
  .service-workflow-steps li{padding-left:67px;min-height:70px}
  .workflow-number{position:absolute;left:0;top:0;margin:0}
  .service-workflow-steps h3{font-size:21px;margin-bottom:9px}
  .service-conversation{display:block;padding:23px}
  .service-conversation .button{margin-top:20px}
  .service-scope{padding-top:25px}
  .service-scope .service-aside{position:static}
}

/* One local intake: open from any service CTA, continue to review only at the end. */
.service-intake{margin-block:0 48px;scroll-margin-top:112px}
.service-intake>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 24px;border:1px solid #b8d9c5;border-radius:12px;background:linear-gradient(120deg,#f5faf7,#e7f3eb);color:#163d2d;cursor:pointer;list-style:none;transition:background-color .3s,border-color .3s,box-shadow .3s}
.service-intake>summary::-webkit-details-marker{display:none}
.service-intake>summary strong{display:block;font-size:20px;font-weight:600;line-height:1.35}
.service-intake>summary small{display:block;margin-top:4px;color:#526f61;font-size:14px;line-height:1.5}
.service-intake>summary:hover{border-color:#3ca36a;box-shadow:0 4px 20px #12804410}
.service-intake>summary:focus-visible{outline:2px solid #138045;outline-offset:4px}
.service-intake-toggle{width:28px;height:28px;position:relative;flex:none}
.service-intake-toggle::before,.service-intake-toggle::after{content:"";position:absolute;inset:13px 5px;height:2px;background:#147b42}
.service-intake-toggle::after{transform:rotate(90deg);transition:transform .25s}
.service-intake[open]>.service-intake-toggle::after,.service-intake[open]>summary .service-intake-toggle::after{transform:rotate(0)}
.service-intake>.service-jobs{padding-block:28px 0}
.service-intake .job-question{scroll-margin-top:120px}
@media(max-width:767px){.service-intake{margin-bottom:30px;scroll-margin-top:96px}.service-intake>summary{padding:14px 16px;gap:12px}.service-intake>summary strong{font-size:18px}.service-intake>.service-jobs{padding-top:22px}}