/* DigiShelf editorial service system. Existing homepage runtime is intentionally untouched. */
@font-face{font-family:Montserrat;src:url(/v4/assets/montserrat.woff2);font-weight:100 900;font-display:swap}
[hidden]{display:none!important}
.ds-navigation{display:flex!important;align-items:center;gap:28px!important}.ds-disclosure{position:relative}.services-toggle{font:inherit;color:inherit;background:none;border:0;cursor:pointer;min-height:44px;padding:10px 0}.services-toggle:focus-visible,summary:focus-visible{outline:3px solid #71dbf2;outline-offset:4px}.services-links{position:absolute;top:100%;right:0;z-index:100;width:320px;padding:12px;background:#0b1220;border:1px solid #526173;box-shadow:0 16px 32px #0003}.services-links a{display:block!important;color:#fff!important;padding:12px!important;min-height:44px;font-size:14px!important;white-space:normal}.services-links a:hover{background:#203449}
.service-page{--ink:#0b1220;--cyan:#71dbf2;--line:#cbd2d6;background:#fff;color:var(--ink);font:400 16px/1.75 Montserrat,system-ui,sans-serif;margin:0}.service-page *{box-sizing:border-box}.service-page a{color:inherit;text-underline-offset:6px;text-decoration-thickness:1px}.service-page a:focus-visible{outline:3px solid #16778d;outline-offset:5px}.service-page .skip{position:absolute;left:-9999px}.service-page .skip:focus{left:24px;top:12px;background:white;color:#0b1220;z-index:200;padding:12px}
.service-header{background:var(--ink);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:18px max(32px,calc((100vw - 1280px)/2));border-bottom:1px solid #354553}.service-header a{display:inline-block;min-height:44px;padding:8px 0;text-decoration:none;font-size:14px}.service-brand{display:flex!important;align-items:center;font-size:25px!important;font-weight:700;letter-spacing:-1px}.shelf-mark{width:43px;height:43px;color:#71dbf2;flex:none}.service-main{max-width:1280px;margin:auto;padding:0 32px}.service-page .eyebrow{font-size:12px;font-weight:600;letter-spacing:.08em;line-height:1.6;margin:0;text-transform:uppercase;color:#374956}.service-hero{padding:68px 0 56px;border-bottom:1px solid var(--ink)}.service-hero>div{display:grid;grid-template-columns:1fr 1fr;column-gap:56px}.service-hero .eyebrow{grid-column:1/-1;border-left:4px solid var(--cyan);padding-left:14px}.service-page h1{grid-column:1/-1;font-size:clamp(40px,5.8vw,80px);font-weight:500;line-height:1.06;letter-spacing:-.055em;max-width:980px;margin:30px 0 40px;text-wrap:balance}.service-page .lead{grid-column:2;font-size:18px;line-height:1.7;margin:0;max-width:560px}.service-cta{display:inline-flex;align-items:center;gap:28px;min-height:48px;font-size:14px;font-weight:600;padding:8px 0;width:fit-content}.service-hero .service-cta{grid-column:2;margin-top:14px}.service-cta span{font-size:21px}
.service-editorial{display:grid;grid-template-columns:1fr 1fr;gap:56px;padding:56px 0 64px}.engagement{grid-column:1;grid-row:1}.benefits{grid-column:2;grid-row:1}.engagement h2{font-size:30px;font-weight:500;line-height:1.25;letter-spacing:-.035em;margin:16px 0 24px;max-width:330px}.engagement p{max-width:450px;font-size:15px;line-height:1.85}.engagement details{margin-top:28px;border-top:1px solid var(--line);max-width:450px}.engagement summary{cursor:pointer;min-height:48px;padding:14px 0;font-size:13px;font-weight:600}.engagement details p{font-size:14px}.benefit{display:grid;grid-template-columns:1fr 1.1fr;gap:24px;border-top:1px solid var(--line);padding:22px 0 28px}.benefit:first-child{border-color:var(--ink)}.benefit h2{font-size:18px;line-height:1.4;font-weight:500;letter-spacing:-.025em;margin:0}.benefit p{font-size:14px;line-height:1.8;margin:0}.practitioner{border-top:1px solid var(--line);padding:38px 0;display:grid;grid-template-columns:1fr 1fr;gap:56px}.outcome-art{width:76px;height:76px;color:#16778d;display:block}.practitioner h2{font-size:18px;font-weight:500;margin:0 0 16px;letter-spacing:-.025em}.practitioner p{font-size:14px;line-height:1.8;margin:8px 0}.service-contact{background:var(--ink);color:#fff;padding:42px 48px;margin:12px 0 48px;display:grid;grid-template-columns:1fr 1fr;column-gap:36px}.service-contact h2{font-weight:500;font-size:32px;line-height:1.2;letter-spacing:-.035em;grid-row:1/4;margin:0;max-width:360px}.service-contact p{font-size:14px;margin:0 0 12px}.service-contact .service-cta{color:var(--cyan)}.service-contact .email-note{font-size:11px;color:#c8d4df;margin-top:12px}.service-footer{max-width:1280px;padding:0 32px 32px;margin:auto}.service-footer nav{display:flex;gap:30px;flex-wrap:wrap}.service-footer a{display:inline-flex;align-items:center;min-height:44px;font-size:12px}
/* Training puts the human outcome before the engagement; delivery keeps the operational ledger. */
.service-training .service-editorial{grid-template-columns:1.15fr 1fr}.service-training .benefits{grid-column:1}.service-training .engagement{grid-column:2;padding-left:24px}.service-training .benefit:first-child{display:block;padding-top:20px}.service-training .benefit:first-child h2{font-size:32px;max-width:350px;line-height:1.2;margin-bottom:16px}.service-training .benefit:first-child p{max-width:350px}.service-salsify .service-hero h1{max-width:1100px}.service-salsify .benefit{grid-template-columns:1fr;gap:8px;padding:18px 0}.service-salsify .benefit p{max-width:420px}
/* A white editorial pause between the homepage's existing animated ink sections. */
.ds-services{background:#fff;color:#0b1220;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);column-gap:80px}.ds-services .eyebrow{color:#374956!important;font-size:12px;letter-spacing:.07em}.ds-services h2{font-size:clamp(30px,3vw,43px);font-weight:500;letter-spacing:-.045em;line-height:1.15;max-width:490px;margin:24px 0}.ds-services h2 span{color:#0b1220!important}.ds-services .ds-service-intro{font-size:15px;line-height:1.85;max-width:470px;color:#374956}.ds-service-list{border-top:1px solid #0b1220}.ds-service-row{padding:26px 0 30px;border-bottom:1px solid #cbd2d6}.ds-service-row a{display:flex;justify-content:space-between;gap:24px;color:#0b1220;font-size:21px;line-height:1.4;letter-spacing:-.025em;font-weight:500;text-decoration:none;min-height:44px}.ds-service-row a span{color:#16778d}.ds-service-row p{font-size:14px;line-height:1.85;color:#374956;max-width:480px;margin:12px 0 0}.ds-services>.ds-service-intro{grid-column:2;font-size:12px;margin-top:20px}.ds-services a:focus-visible{outline:3px solid #16778d;outline-offset:5px}.ds-service-row a:hover{text-decoration:underline;text-underline-offset:6px}
@media(max-width:800px){.service-header{padding:16px 24px;flex-wrap:wrap}.ds-navigation{gap:20px!important;font-size:13px}.services-links{left:0;right:auto;width:min(320px,calc(100vw - 48px));box-sizing:border-box}.service-main{padding:0 24px}.service-hero{padding:40px 0 34px}.service-hero>div{grid-template-columns:1fr;gap:0}.service-page h1{font-size:clamp(39px,8vw,60px);margin:24px 0 28px}.service-page .lead,.service-hero .service-cta{grid-column:1}.service-page .lead{font-size:16px}.service-editorial,.service-training .service-editorial{grid-template-columns:1fr;gap:36px;padding:36px 0}.engagement,.service-training .engagement{grid-column:1;grid-row:auto;padding:0}.benefits,.service-training .benefits{grid-column:1;grid-row:auto}.engagement h2{font-size:27px}.benefit{gap:20px;padding:20px 0}.benefit h2{font-size:17px}.benefit p{font-size:13px}.practitioner{grid-template-columns:48px 1fr;gap:20px;padding:30px 0}.outcome-art{width:48px;height:48px}.practitioner h2{font-size:17px}.practitioner p{font-size:13px}.service-contact{grid-template-columns:1fr;padding:30px 24px;margin-bottom:24px}.service-contact h2{grid-row:auto;font-size:29px;margin-bottom:24px}.service-footer{padding:0 24px 24px}.ds-services{grid-template-columns:1fr;gap:20px}.ds-services>.ds-service-intro{grid-column:1}.ds-services h2{font-size:34px}.ds-service-row a{font-size:20px}header:has(.ds-navigation){flex-wrap:wrap}.ds-navigation>a{min-height:44px;display:flex!important;align-items:center}}
/* Avoid a doubled rule at the top of the stacked outcome ledger. */
@media(max-width:800px){.benefit:first-child{border-top:0;padding-top:0}.service-training .benefit:first-child{padding-top:0}}
@media(max-width:360px){.benefit{grid-template-columns:1fr;gap:8px}.service-page h1{font-size:38px}.service-header .ds-navigation{gap:16px!important}}
@media(prefers-reduced-motion:reduce){.service-page{scroll-behavior:auto}}

/* Expressive shelf stories. Scoped to new services; original home motion remains intact. */
.service-main{max-width:none;padding:0}.service-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;background:#0b1220;color:#fff;padding:64px max(32px,calc((100vw - 1216px)/2));border:0}.service-hero>div{display:block}.service-hero .eyebrow{color:#71dbf2;border:0;padding:0}.service-page h1{font-size:clamp(40px,4.4vw,64px);font-weight:600;line-height:1.09;margin:24px 0;letter-spacing:-.045em}.service-page .lead{font-size:16px;max-width:470px;color:#d2dfeb}.service-hero .service-cta{color:#71dbf2;margin-top:24px;border-bottom:1px solid #71dbf2}.service-story{margin:0;position:relative;min-width:0;background:linear-gradient(135deg,#112237,#15394a);border-bottom:3px solid #71dbf2;padding:12px 8px 60px}.service-story svg{width:100%;height:auto;display:block;overflow:visible}.art-shelf{fill:none;stroke:#71dbf2;stroke-width:5}.art-caption{fill:#e8f8ff;font:500 14px Montserrat}.art-thread{fill:none;stroke:#71dbf2;stroke-width:2;stroke-dasharray:7 9;animation:thread 7s linear 1}.art-fragments{animation:cohere 6s ease-in-out 1;transform-origin:190px 180px}.art-product{animation:product 5s ease-in-out 1;transform-origin:277px 190px}.person{animation:ownership 5s ease-in-out 1;transform-origin:center bottom}.person-b{animation-delay:-1s}.person-c{animation-delay:-2s}.service-training .service-story{background:linear-gradient(125deg,#71dbf2,#c3f1f5);border-color:#1233ff}.service-training .art-caption{fill:#0b1220}.service-training .art-shelf,.service-training .art-thread{stroke:#1233ff}.service-training .service-hero{grid-template-columns:1.05fr 1fr;background:#f4fafb;color:#0b1220}.service-training .service-hero .eyebrow,.service-training .service-hero .service-cta{color:#1735a8}.service-training .lead{color:#374956}.service-salsify .service-hero{background:linear-gradient(110deg,#0b1220 60%,#163849)}
.service-editorial{padding:64px max(32px,calc((100vw - 1216px)/2));margin:0;gap:80px;background:#fff}.benefit{grid-template-columns:36px 1fr;gap:10px 18px;padding:22px 0}.benefit-icon{width:34px;height:34px;color:#1233ff;grid-column:1;grid-row:1/3}.benefit h2{grid-column:2;font-weight:600}.benefit p{grid-column:2}.service-training .benefit:first-child{display:grid}.service-training .benefit:first-child h2{font-size:23px;margin:0}.service-salsify .benefit{grid-template-columns:36px 1fr}.brand-callout{background:#71dbf2;color:#0b1220;padding:44px max(32px,calc((100vw - 1216px)/2));position:relative;display:grid;grid-template-columns:85px 1fr;column-gap:20px}.quote-mark{font-size:120px;line-height:1;font-weight:600}.brand-callout blockquote{font-size:clamp(30px,4vw,52px);line-height:1.14;letter-spacing:-.04em;font-weight:500;max-width:950px;margin:8px 0}.brand-callout p{grid-column:2;font-size:11px;text-transform:uppercase;letter-spacing:.09em}.service-training .brand-callout{background:#0b1220;color:#71dbf2}.service-salsify .brand-callout{background:linear-gradient(100deg,#71dbf2,#d5f5f6)}.practitioner{margin:0 auto;max-width:1216px;padding:46px 32px;grid-template-columns:76px 1fr;gap:40px;border:0}.practitioner>div{max-width:870px}.service-contact{margin:0;padding:48px max(32px,calc((100vw - 1216px)/2));background:#102a3a}.service-footer{padding-top:24px}.ds-services{background:#71dbf2}.ds-service-row{border-color:#497d89}.ds-service-row a span{color:#0b1220}.ds-service-list{border-color:#0b1220}.ds-services .ds-service-intro{color:#263b46}
@keyframes thread{to{stroke-dashoffset:-112}}@keyframes cohere{0%,100%{transform:translate(-8px,8px) rotate(-5deg);opacity:.6}50%{transform:translate(10px,-3px) rotate(0);opacity:1}}@keyframes product{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes ownership{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}.motion-paused *{animation-play-state:paused!important}
@media(max-width:800px){.service-hero,.service-training .service-hero{grid-template-columns:1fr;padding:36px 24px;gap:28px}.service-story{max-width:570px;width:100%;justify-self:center}.service-page h1{font-size:clamp(38px,8vw,58px)}.service-editorial,.service-training .service-editorial{padding:36px 24px;gap:30px}.brand-callout{padding:32px 24px;grid-template-columns:34px 1fr;gap:12px}.quote-mark{font-size:66px}.brand-callout blockquote{font-size:31px}.practitioner{padding:32px 24px;grid-template-columns:48px 1fr;gap:20px}.service-contact{padding:36px 24px}.service-training .engagement{padding:0}.service-training .benefit:first-child h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){.service-story *{animation:none!important}}

/* Iteration two: remove double CTA rules, make the human-led page lead visually. */
.service-hero .service-cta{text-decoration:none}.service-hero .service-cta:hover{text-decoration:underline}.service-training .service-story{grid-column:1;grid-row:1}.service-training .service-hero>div{grid-column:2;grid-row:1}.service-salsify .service-story{border-bottom:0;border-left:3px solid #71dbf2;background:linear-gradient(90deg,#15394a,#0b1220)}
@media(max-width:800px){.service-training .service-story,.service-training .service-hero>div{grid-column:auto;grid-row:auto}.service-story .art-caption{font-size:17px}.service-training .service-story .art-caption{font-size:16px}}

/* Iteration three: a coherent destination, not perpetual ambient float. */
@keyframes cohere{0%,15%,100%{transform:translate(-8px,8px) rotate(-5deg);opacity:.65}55%,75%{transform:translate(168px,24px) scale(.58);opacity:1}}
.service-salsify .service-story{border-left:0;border-bottom:3px solid #71dbf2}.service-training .service-hero .service-cta{border-color:#1735a8}
@media(max-width:800px){.service-story{padding-bottom:64px}.service-story .art-caption{font-size:18px}.service-training .service-story .art-caption{font-size:18px}}

/* One brief illustration cycle; CSS-enforced even with scripting unavailable. */
.service-story *{animation-duration:4s;animation-iteration-count:1;animation-fill-mode:forwards}
.engagement details ul{padding-left:20px;font-size:14px;line-height:1.85;max-width:450px}.engagement details li{margin:0 0 14px}
@media(prefers-reduced-motion:reduce){.service-story *{animation:none!important}}
