/* Service pages share the site's typography, palette, and pill buttons. */
.service-page { color:#063755; background:#fff; font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif; }
.service-page * { box-sizing:border-box; }
.service-wrap { width:min(1200px, calc(100% - 48px)); margin-inline:auto; }
.service-page h1,.service-page h2,.service-page h3 { color:inherit; line-height:1.25; margin:0 0 20px; font-weight:600; letter-spacing:-.025em; text-wrap:balance; }
.service-page h1 { font-size:clamp(32px,4.2vw,56px); max-width:1020px; margin-inline:auto; letter-spacing:-1.2px; }
.service-page h2 { font-size:clamp(26px,3vw,36px); text-align:center; }
.service-page h3 { font-size:21px; }
.service-page p { line-height:1.8; margin:0 0 18px; }
.service-detail-intro > p,.service-detail-outcome > p,.service-insight > article > p,.service-insight-closing > p { max-width:84ch; margin-inline:auto; }
.service-editorial-card > p { max-width:72ch; margin-inline:auto; }
.service-hero .service-lead { max-width:76ch; margin-inline:auto; }
.service-page a { color:inherit; text-decoration:none; }
.service-page a:focus-visible { outline:3px solid #4ea1e8; outline-offset:4px; }
.service-page p a { font-weight:650; }
.service-hero { position:relative; isolation:isolate; overflow:hidden; padding:190px 0 145px; text-align:center; color:#fff; background:linear-gradient(115deg,#062a3a 0%,#063755 64%,#174e70 100%); }
.service-hero-art { position:absolute; inset:0; width:100%; height:100%; z-index:-1; pointer-events:none; }
.service-hero .service-wrap { position:relative; }
.service-page .service-hero h1 { max-width:none; margin-bottom:32px; }
.service-hero-title { display:block; font-size:clamp(48px,6.5vw,84px); font-weight:600; line-height:1.06; letter-spacing:-2.5px; }
.service-hero-subtitle { display:block; margin-top:18px; font-family:inherit; font-size:clamp(22px,2.6vw,30px); font-style:normal; font-weight:400; line-height:1.35; letter-spacing:-.5px; color:#dbe8ec; }
.service-lead { font-size:19px; color:#e1edf4; }
.service-actions { display:flex; justify-content:center; flex-wrap:wrap; gap:14px; margin-top:28px; }
.service-page a.site-pill { color:#063755; }
.service-section { padding:76px 0; }
.service-intro { text-align:center; color:#49657a; font-size:17px; margin-bottom:34px !important; }
.service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.service-grid article { border:1px solid #ccdee8; border-radius:25px; padding:32px; background:#f2f7fa; }
.service-grid article:nth-child(2) { background:#eaf3f7; }
.service-grid article:nth-child(3) { background:#edf5f4; }
.service-grid h3 { text-align:center; }
.service-grid p { color:#436077; }
.service-grid p:last-child { margin-bottom:0; }
.service-tint { background:#f2f7fa; }
.service-agenda { display:grid; grid-template-columns:1fr 1fr; gap:0 44px; }
.service-agenda article { padding:26px 0; border-bottom:1px solid #cbdee8; }
.service-agenda p { color:#436077; }
.service-callout { margin-top:35px; padding:32px 38px; background:#fff; border:1px solid #c9dfe9; border-radius:24px; text-align:center; }
.service-callout p { margin:0; color:#436077; }
.service-dark { color:#fff; background:radial-gradient(ellipse at 100% 90%,#14567b,transparent 65%),#063755; }
.service-dark .service-intro,.service-product-note { color:#d7e7ef; }
.service-products { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.service-products article { background:#18547580; border:1px solid #a3ccdf40; border-radius:28px; padding:38px; text-align:center; }
.service-products img { width:220px; max-width:100%; height:auto; object-fit:contain; margin-bottom:20px; }
.service-products p { color:#e1edf5; }
.service-product-note { margin:30px 0 0 !important; text-align:center; }
.service-outcomes { text-align:center; }
.service-support { border-top:1px solid #cbdde7; margin-top:48px; padding-top:42px; text-align:center; }
.service-support p { color:#436077; }
.service-insight { border-top:1px solid #d7e5ec; background:linear-gradient(155deg,#f5f9fb 0%,#fff 45%); }
.service-insight h2 { margin-bottom:30px; }
.service-insight h3 { margin:36px 0 16px; text-align:center; }
.service-insight p { color:#436077; font-size:17px; }
.service-insight-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:38px; }
.service-insight-card { position:relative; isolation:isolate; overflow:hidden; padding:42px; border-radius:28px; background:#eaf2f6; border:1px solid #d4e2ea; }
.service-insight-card h3 { position:relative; margin:0 0 22px; font-size:25px; }
.service-insight-card p { position:relative; margin:0; }
.service-insight-card--data { grid-column:1 / -1; display:grid; grid-template-columns:1fr 1.6fr; align-items:center; gap:48px; background:#063755; color:#fff; padding:52px; }
.service-insight-card--data h3 { font-size:32px; margin:0; }
.service-insight-card--data p,.service-insight-card--support p { color:#e5f0f5; }
.service-insight-card--payroll { background:#f0f5f8; }
.service-insight-card--branch { background:#e9f1ef; }
.service-insight-card--application { background:#fff; }
.service-insight-card--support { background:linear-gradient(130deg,#063755,#205978); color:#fff; border-color:#205978; }
.service-insight-art { position:absolute; z-index:-1; width:320px; height:320px; right:-180px; bottom:-180px; border:1px solid #719bad40; border-radius:50%; pointer-events:none; }
.service-insight-art::before,.service-insight-art::after { content:""; position:absolute; border:1px solid #719bad40; border-radius:inherit; }
.service-insight-art::before { inset:24px; }
.service-insight-art::after { inset:48px; }
.service-insight-card--data .service-insight-art { width:480px; height:480px; left:-200px; bottom:-300px; }
.service-insight-card--branch .service-insight-art { border-radius:70px; transform:rotate(35deg); }
.service-insight-card--application .service-insight-art { border-radius:0; transform:rotate(-30deg); }
.service-insight-closing { padding-top:12px; }
.service-faqs { display:grid; grid-template-columns:1fr 1fr; gap:16px; align-items:start; }
.service-faqs details { border:1px solid #cbdde7; border-radius:18px; background:#fff; overflow:hidden; }
.service-faqs summary { padding:23px; cursor:pointer; font-weight:700; line-height:1.6; }
.service-faqs summary:focus-visible { outline:2px solid #063755; outline-offset:-4px; }
.service-faqs .faq-a { padding:0 23px 23px; color:#436077; }
.service-faqs .faq-a p { margin:0; }
.service-cta { text-align:center; background:#e4eef9; }
/* Consultation services use complementary editorial compositions. */
body:has(.service-detail) .navbar-wrap { background:#063755; }
.service-detail-intro p { margin:28px auto 0; color:#436077; font-size:18px; }
.service-editorial { padding-top:0; }
.service-editorial-grid { display:grid; grid-template-columns:1fr 1fr; gap:26px; }
.service-editorial-card { position:relative; isolation:isolate; overflow:hidden; padding:40px; border:1px solid #d5e3ea; border-radius:28px; background:#edf4f7; }
.service-editorial-card h3 { text-align:center; font-size:27px; margin-bottom:24px; }
.service-editorial-card p { color:#436077; }
.service-editorial-card p:last-child { margin-bottom:0; }
.service-editorial-card:last-child { grid-column:1 / -1; background:#063755; color:#fff; }
.service-editorial-card:last-child p { color:#e3edf3; }
.service-editorial-art { position:absolute; z-index:-1; width:300px; height:300px; border:1px solid #8eb3c22b; border-radius:50%; right:-180px; bottom:-160px; box-shadow:0 0 0 24px #8eb3c20a,0 0 0 48px #8eb3c208; }
.service-detail-outcome { border-top:1px solid #cddde5; padding-top:48px; }
.service-detail-outcome p { color:#436077; }
.service-related { display:flex; justify-content:center; gap:12px; flex-wrap:wrap; margin-top:28px; font-weight:650; }
.service-related a { max-width:100%; min-width:0; overflow-wrap:anywhere; }
.service-detail--2 .service-editorial-grid { grid-template-columns:1fr; }
.service-detail--2 .service-editorial-card { display:grid; grid-template-columns:1fr 1.3fr; gap:0 40px; }
.service-detail--2 .service-editorial-card h3 { grid-row:span 2; align-self:center; }
.service-detail--3 .service-editorial-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.service-detail--3 .service-editorial-card { grid-column:auto; padding:30px; }
.service-detail--3 .service-editorial-card:nth-child(2) { background:#e8f1ee; }
.service-detail--4 .service-editorial-card:first-child { grid-column:1 / -1; background:#fff; }
.service-detail--4 .service-editorial-card:last-child { grid-column:auto; }
.service-detail--5 .service-editorial-card:first-child { grid-column:1 / -1; background:#e8f1ee; }
.service-detail--5 .service-editorial-card:last-child { grid-column:auto; }
.service-detail--6 .service-editorial-grid { display:block; }
.service-detail--6 .service-editorial-card { margin-bottom:24px; width:92%; }
.service-detail--6 .service-editorial-card:nth-child(2) { margin-left:auto; background:#e8f1ee; }
.service-detail--7 .service-editorial-card:first-child { background:#e8f1ee; }
.service-detail--8 .service-editorial-grid { grid-template-columns:1fr; }
.service-detail--8 .service-editorial-card { padding-inline:60px; background:#fff; border-left:5px solid #8fb2c3; }
.service-detail--8 .service-editorial-card:last-child { background:#063755; }
/* Implementation pages retain the palette with their own visual rhythm. */
.service-implementation--1 .service-editorial-card:first-child { grid-column:1 / -1; background:#e9f2f0; }
.service-implementation--1 .service-editorial-card:last-child { grid-column:auto; }
.service-implementation--2 .service-editorial-card { border-radius:12px 40px 12px 40px; }
.service-implementation--3 .service-editorial-grid { grid-template-columns:1fr; }
.service-implementation--3 .service-editorial-card { display:grid; grid-template-columns:1fr 1.4fr; gap:0 48px; padding:40px; }
.service-implementation--3 .service-editorial-card h3 { grid-row:span 2; align-self:center; }
.service-implementation--4 .service-editorial-card:first-child { background:#063755; color:#fff; }
.service-implementation--4 .service-editorial-card:first-child p { color:#e3edf3; }
.service-implementation--4 .service-editorial-card:last-child { background:#e9f2f0; color:#063755; }
.service-implementation--4 .service-editorial-card:last-child p { color:#436077; }
.service-implementation--5 .service-editorial-card { border-radius:32px 12px 32px 12px; }
.service-implementation--6 .service-editorial-card:nth-child(2) { border-left:4px solid #79a7ac; }
.service-implementation--7 .service-editorial-grid { grid-template-columns:1fr; }
.service-implementation--7 .service-editorial-card { display:grid; grid-template-columns:1fr 1fr; gap:0 40px; }
.service-implementation--7 .service-editorial-card h3 { grid-column:1 / -1; }
.service-implementation--8 .service-editorial-card { border-left-color:#7baba4; }
.service-implementation--9 .service-editorial-card:last-child { background:#e9f2f0; color:#063755; }
.service-implementation--9 .service-editorial-card:last-child p { color:#436077; }
/* Migration articles alternate wide explanations and paired detail panels. */
.service-migration--1 .service-editorial-card:first-child { grid-column:1 / -1; background:#e8f1ee; }
.service-migration--1 .service-editorial-card:last-child { grid-column:auto; }
.service-migration--2 .service-editorial-card { border-radius:36px 12px 36px 12px; }
.service-migration--3 .service-editorial-grid { grid-template-columns:1fr; }
.service-migration--3 .service-editorial-card { display:grid; grid-template-columns:1fr 1.4fr; gap:0 40px; padding:40px; }
.service-migration--3 .service-editorial-card h3 { grid-row:span 2; align-self:center; }
.service-migration--4 .service-editorial-card:first-child { background:#063755; color:#fff; }
.service-migration--4 .service-editorial-card:first-child p { color:#e3edf3; }
.service-migration--4 .service-editorial-card:last-child { background:#e8f1ee; color:#063755; }
.service-migration--4 .service-editorial-card:last-child p { color:#436077; }
.service-migration--5 .service-editorial-card:first-child { background:#fff; border-left:4px solid #92b9be; }
.service-migration--6 .service-editorial-card:nth-child(2) { border-left:4px solid #92b9be; }
.service-migration--7 .service-editorial-card:first-child { background:#e8f1ee; }
.service-migration--8 .service-editorial-card { border-left-color:#92b9be; }
.service-migration--9 .service-editorial-card:last-child { background:#e8f1ee; color:#063755; }
.service-migration--9 .service-editorial-card:last-child p { color:#436077; }
/* User training uses broad lead stories, paired panels, and editorial rows. */
.service-training--1 .service-editorial-card:first-child { grid-column:1 / -1; background:#e8f1ee; }
.service-training--1 .service-editorial-card:last-child { grid-column:auto; }
.service-training--2 .service-editorial-card { border-radius:12px 38px 12px 38px; }
.service-training--3 .service-editorial-grid { grid-template-columns:1fr; }
.service-training--3 .service-editorial-card { display:grid; grid-template-columns:1fr 1.4fr; gap:0 40px; padding:40px; }
.service-training--3 .service-editorial-card h3 { grid-row:span 2; align-self:center; }
.service-training--4 .service-editorial-card:first-child { background:#063755; color:#fff; }
.service-training--4 .service-editorial-card:first-child p { color:#e3edf3; }
.service-training--4 .service-editorial-card:last-child { background:#e8f1ee; color:#063755; }
.service-training--4 .service-editorial-card:last-child p { color:#436077; }
.service-training--5 .service-editorial-card:first-child { background:#fff; border-left:4px solid #88adb9; }
.service-training--6 .service-editorial-card:nth-child(2) { border-left:4px solid #88adb9; }
.service-training--7 .service-editorial-grid { grid-template-columns:1fr; }
.service-training--7 .service-editorial-card { display:grid; grid-template-columns:1fr 1fr; gap:0 36px; }
.service-training--7 .service-editorial-card h3 { grid-column:1 / -1; }
.service-training--8 .service-editorial-card { border-left-color:#88adb9; }
.service-training--9 .service-editorial-card:last-child { background:#e8f1ee; color:#063755; }
.service-training--9 .service-editorial-card:last-child p { color:#436077; }
/* Support articles combine open reading space with strong brand panels. */
.service-support-pages--1 .service-editorial-card:first-child { grid-column:1 / -1; background:#063755; color:#fff; }
.service-support-pages--1 .service-editorial-card:first-child p { color:#e3edf3; }
.service-support-pages--1 .service-editorial-card:last-child { grid-column:auto; background:#e8f1ee; color:#063755; }
.service-support-pages--1 .service-editorial-card:last-child p { color:#436077; }
.service-support-pages--2 .service-editorial-card { border-radius:12px 42px 12px 42px; }
.service-support-pages--3 .service-editorial-grid { grid-template-columns:1fr; }
.service-support-pages--3 .service-editorial-card { display:grid; grid-template-columns:1fr 1.4fr; gap:0 40px; padding:40px; }
.service-support-pages--3 .service-editorial-card h3 { grid-row:span 2; align-self:center; }
.service-support-pages--4 .service-editorial-card:first-child { border-left:4px solid #8db3bf; }
.service-support-pages--5 .service-editorial-card:first-child { background:#fff; }
.service-support-pages--6 .service-editorial-card:nth-child(2) { border-left:4px solid #8db3bf; }
.service-support-pages--7 .service-editorial-grid { grid-template-columns:1fr; }
.service-support-pages--7 .service-editorial-card { display:grid; grid-template-columns:1fr 1fr; gap:0 36px; }
.service-support-pages--7 .service-editorial-card h3 { grid-column:1 / -1; }
.service-support-pages--8 .service-editorial-card { border-left-color:#8db3bf; }
.service-support-pages--9 .service-editorial-card:last-child { background:#e8f1ee; color:#063755; }
.service-support-pages--9 .service-editorial-card:last-child p { color:#436077; }
@media(max-width:1000px) {
    .service-detail--3 .service-editorial-grid { grid-template-columns:1fr; }
}
@media(max-width:800px) {
    .service-wrap { width:calc(100% - 36px); }
    .service-hero { padding:148px 0 95px; }
    .service-hero-title { letter-spacing:-2px; }
    .service-hero-subtitle { font-size:26px; }
    .service-grid,.service-products,.service-agenda,.service-faqs { grid-template-columns:1fr; }
    .service-insight-grid { grid-template-columns:1fr; gap:18px; }
    .service-insight-card,.service-insight-card--data { display:block; padding:28px; }
    .service-insight-card--data h3 { font-size:25px; margin-bottom:22px; }
    .service-section { padding:48px 0; }
    .service-grid article,.service-products article,.service-callout { padding:26px; }
    .service-detail .service-editorial-grid { display:block; }
    .service-detail .service-editorial-card { display:block; width:100%; margin:0 0 20px; padding:28px; }
    .service-editorial-card h3 { font-size:24px; }
}
