/* Dedicated service pages; home presentation remains separate. */
body.service-page{padding:0;background-color:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.65}
.service-page .sp-header{position:relative;z-index:10;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px max(24px,calc((100vw - 1200px)/2));background:var(--ink);color:white}
.sp-header img{width:156px;height:auto;filter:url(#service-logo-alpha)}.sp-nav-contact{font-size:14px;padding:9px 20px;border:1px solid #ffffff65;border-radius:50px;min-height:44px;display:flex;align-items:center}.sp-nav-contact:hover{background:#ffffff12}
.sp-hero{margin:12px;padding:36px max(28px,calc((100vw - 1200px)/2 - 12px)) 64px;overflow:hidden;background:var(--ink);color:var(--paper);border-radius:5px;position:relative}
.sp-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;font-size:13px;color:#b8c3ca;margin-bottom:55px}.sp-breadcrumb a{text-decoration:underline;text-underline-offset:4px}.sp-kicker{display:block;font-size:12px;line-height:1.6;letter-spacing:.1em;font-weight:400;text-transform:uppercase;margin-bottom:20px;color:#476f61}.sp-hero .sp-kicker,.sp-contact .sp-kicker{color:#94dccb}
.service-page .sp-hero h1{font-family:LumyaDisplay,'Arial Narrow',sans-serif;font-size:clamp(90px,11vw,164px);line-height:1.1;letter-spacing:0;margin:0;max-width:100%;font-weight:700;animation:sp-enter .7s ease-out both}
.sp-hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-top:36px}.sp-hero-bottom p{font-size:clamp(22px,2.4vw,30px);line-height:1.35;letter-spacing:-.025em;max-width:600px}
.sp-button{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:54px;padding:14px 24px;border:1px solid #b2e0d4;background:#9cd9e0;color:var(--ink);border-radius:32px;font-size:14px;white-space:nowrap;transition:background .2s,transform .2s}.sp-button:hover{background:#c6eee8;transform:translateY(-2px)}
.sp-section{max-width:1200px;margin:auto;padding:88px 28px}.service-page .sp-section h2{font-size:clamp(44px,5.5vw,74px);line-height:1.15;letter-spacing:0;font-family:LumyaDisplay,'Arial Narrow',sans-serif;font-weight:700;margin-bottom:24px}.sp-section p{font-size:17px;line-height:1.75;max-width:65ch}.sp-section p+p{margin-top:20px}.sp-overview{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:9%;align-items:center}.sp-overview-copy{min-width:0}.sp-overview .sp-intro{font-size:21px;line-height:1.55;margin-bottom:22px}.sp-portrait{margin:0;min-width:0}.sp-portrait img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:5px}.sp-portrait figcaption{font-size:12px;line-height:1.6;letter-spacing:.025em;margin-top:16px;color:#476f61}.sp-brand-image{background:#07091b;border-radius:5px;padding:28px}.sp-brand-image img{aspect-ratio:2;object-fit:contain;filter:url(#service-logo-alpha)}.sp-brand-image figcaption{color:#b8c3ca}
.sp-deliverables{border-top:1px solid #c4cbc3;border-bottom:1px solid #c4cbc3}.sp-section-head{display:flex;justify-content:space-between;gap:40px;align-items:flex-start}.sp-section-head .sp-kicker{padding-top:12px}.sp-section-head h2{width:60%}.sp-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 64px;margin-top:30px}.sp-service-grid article{border-top:1px solid #bac7be;padding-top:22px;min-width:0}.sp-index{font-size:12px;color:#476f61;display:block;margin-bottom:14px}.sp-service-grid h3{font-size:24px;font-family:Arial,Helvetica,sans-serif;font-weight:500;line-height:1.3;letter-spacing:-.03em;margin-bottom:14px}.sp-service-grid p{font-size:16px;color:#41463f}
.sp-method p{max-width:800px}.sp-inline-link{display:inline-block;text-decoration:underline;text-underline-offset:6px;font-size:14px;line-height:1.6;margin-top:24px;min-height:44px;padding:9px 0;color:#355e50}.sp-inline-link:hover{color:var(--ink)}
.sp-case{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:9%;align-items:center;border-top:1px solid #c4cbc3}.sp-case figure{margin:0;aspect-ratio:1.1;display:grid;place-items:center;background:#dce7df;border-radius:6px;overflow:hidden;padding:38px}.sp-case figure img{width:100%;max-height:270px;object-fit:contain}.sp-case h2{overflow-wrap:anywhere}.sp-case div{min-width:0}
.sp-faq{border-top:1px solid #c4cbc3}.sp-faq>div{margin-top:36px}.sp-faq details{border-bottom:1px solid #bac7be;padding:0}.sp-faq details:first-child{border-top:1px solid #bac7be}.sp-faq summary{list-style:none;cursor:pointer;font-size:20px;line-height:1.45;padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:24px}.sp-faq summary::-webkit-details-marker{display:none}.sp-faq summary span{flex:none;font-size:25px;transition:transform .2s}.sp-faq details[open] summary span{transform:rotate(45deg)}.sp-faq details p{font-size:16px;margin:0;padding:0 40px 24px 0;max-width:850px}
.sp-contact{max-width:none;margin:0 12px;padding:64px max(28px,calc((100vw - 1200px)/2 - 12px));background:var(--ink);color:var(--paper);border-radius:5px}.service-page .sp-contact h2{font-size:clamp(64px,8vw,110px);line-height:1.1}.sp-contact p{max-width:650px;color:#bdc9cc}.sp-contact .sp-button{margin-top:28px}.sp-email{display:block;width:fit-content;margin-top:22px;font-size:16px;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:5px}
.sp-related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-top:55px;padding-bottom:55px}.sp-related>.sp-kicker{grid-column:1/-1;margin-bottom:0}.sp-related a{display:flex;gap:16px;align-items:center;min-height:64px;font-size:18px;line-height:1.4;border-top:1px solid #bac7be;padding:14px 0;text-decoration:underline;text-underline-offset:5px}.sp-related a span{font-size:12px;color:#476f61}.sp-related a:hover{color:#355e50}.sp-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:26px max(28px,calc((100vw - 1200px)/2));border-top:1px solid #c4cbc3;font-size:14px}.sp-footer>a:first-child{font-weight:700;letter-spacing:.05em}.sp-footer p{font-size:14px}.sp-footer>a:last-child{text-decoration:underline;text-underline-offset:5px}
@keyframes sp-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:760px){.service-page .sp-header{padding:16px 22px;gap:18px}.sp-header img{width:130px}.sp-nav-contact{padding:9px 16px}.sp-hero{margin:6px;padding:28px 20px 40px}.sp-breadcrumb{margin-bottom:36px;font-size:12px}.sp-kicker{font-size:12px;letter-spacing:.055em;margin-bottom:18px}.service-page .sp-hero h1{font-size:clamp(52px,15vw,100px);line-height:1.12;letter-spacing:0}.sp-hero-bottom{display:block;margin-top:24px}.sp-hero-bottom p{font-size:23px;line-height:1.4}.sp-hero-bottom .sp-button{margin-top:28px}.sp-button{white-space:normal;max-width:100%}.sp-section{padding:56px 26px}.service-page .sp-section h2{font-size:clamp(40px,11vw,65px);line-height:1.16}.sp-section p{font-size:16px;line-height:1.7}.sp-overview{display:flex;flex-direction:column;gap:30px;align-items:stretch}.sp-overview .sp-intro{font-size:20px;line-height:1.55}.sp-portrait{max-width:440px;width:100%;margin:auto}.sp-portrait img{aspect-ratio:1.15}.sp-portrait figcaption{font-size:12px}.sp-brand-image img{aspect-ratio:2}.sp-section-head{display:block}.sp-section-head h2{width:100%}.sp-section-head .sp-kicker{padding-top:0}.sp-service-grid{grid-template-columns:1fr;gap:28px;margin-top:28px}.sp-service-grid h3{font-size:23px}.sp-case{display:flex;flex-direction:column;gap:30px;align-items:stretch}.sp-case figure{aspect-ratio:1.4;padding:30px}.sp-case figure img{max-height:190px}.sp-faq summary{font-size:18px;gap:16px;padding:22px 0}.sp-faq details p{padding-right:0;font-size:16px}.sp-contact{margin:0 6px;padding:48px 20px}.service-page .sp-contact h2{font-size:clamp(52px,14vw,90px)}.sp-contact .sp-button{width:100%}.sp-email{font-size:16px}.sp-related{display:flex;flex-direction:column;gap:16px}.sp-related a{font-size:18px;min-height:54px}.sp-footer{padding:24px 26px;font-size:14px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}}
@media(prefers-reduced-motion:reduce){.service-page .sp-hero h1{animation:none}.sp-button{transition:none}.sp-button:hover{transform:none}}

/* Lumya chapter language: immersive opening, editorial rows and scroll-led method. */
.service-page .sp-header{position:fixed;top:12px;left:24px;right:24px;padding:14px 16px;background:transparent;pointer-events:none;z-index:30;transition:color .2s;color:white}.sp-header a{pointer-events:auto}.sp-header img{width:145px}.sp-header.sp-on-paper{color:var(--ink)}.sp-header.sp-on-paper img{filter:url(#service-logo-alpha) brightness(0)}.sp-header.sp-on-paper .sp-nav-contact{border-color:#07091b60}.sp-nav-contact{background:transparent;border-radius:30px}.sp-header.sp-on-paper .sp-nav-contact:hover{background:#07091b08}
.service-page .sp-hero{height:calc(100svh - 24px);min-height:670px;display:flex;flex-direction:column;justify-content:center;padding:120px 6% 130px;isolation:isolate;text-align:center;margin:12px;background:#06090b;overflow:hidden}.sp-hero::before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(#06090b45,#06090b65),url('/assets/hero.webp') center/cover no-repeat;transform:scale(var(--sp-hero-scale,1));will-change:transform}.sp-hero::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#06090ba0,transparent 40%);z-index:-1}.sp-hero .sp-breadcrumb{position:absolute;top:105px;left:6%;margin:0;text-align:left}.sp-hero>.sp-kicker{margin:0 0 22px;font-size:12px;letter-spacing:.15em;color:#efefed}.service-page .sp-hero h1{font-size:clamp(100px,13.5vw,205px);line-height:1.15;letter-spacing:-.01em;animation:none;transform:translateY(var(--sp-title-y,0px));opacity:var(--sp-title-opacity,1);will-change:transform,opacity}.sp-hero-bottom{position:absolute;bottom:34px;left:6%;right:6%;align-items:center;margin:0;text-align:left;gap:24px}.sp-hero-bottom p{font-size:17px;line-height:1.5;max-width:410px;letter-spacing:0}.sp-hero-bottom .sp-button{background:#9cd9e0;border-radius:0;clip-path:polygon(7% 0,100% 0,100% 100%,0 100%);padding:16px 25px 16px 32px;border:0}.sp-home-cue{display:flex;align-items:center;justify-content:center;gap:16px;color:#efefed;font-size:12px;letter-spacing:.08em;min-height:44px}.sp-home-cue:after{content:'';width:42px;height:1px;background:currentColor}.sp-hero-bottom p+.sp-home-cue{margin:0}
.sp-section{max-width:1400px;padding:100px 6%}.service-page .sp-section h2{font-size:clamp(60px,7vw,100px);line-height:1.15;letter-spacing:-.01em;text-transform:uppercase}.sp-section .sp-kicker{letter-spacing:.1em}.sp-overview{gap:8%;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}.sp-overview .sp-intro{font-size:22px;line-height:1.5}.sp-portrait{overflow:hidden}.sp-portrait img{aspect-ratio:.95;object-position:center 25%;border-radius:3px}.sp-brand-image img{aspect-ratio:2}.sp-brand-image{padding:40px}.sp-portrait figcaption{font-size:12px;line-height:1.6}
.sp-section-head{display:block}.sp-section-head h2{width:100%}.sp-service-grid{display:flex;flex-direction:column;gap:0;margin-top:46px}.sp-service-grid article{display:grid;grid-template-columns:40px minmax(0,.95fr) minmax(0,1.05fr);gap:32px;padding:28px 0;border-top:1px solid #aab9ae;align-items:start}.sp-service-grid article:last-child{border-bottom:1px solid #aab9ae}.sp-index{padding-top:7px;margin:0;transition:color .3s}.sp-service-grid h3{font-family:LumyaDisplay,'Arial Narrow',sans-serif;font-size:clamp(34px,3.5vw,48px);line-height:1.2;letter-spacing:0;text-transform:uppercase;margin:0}.sp-service-grid p{font-size:16px;line-height:1.7;margin:0;max-width:45ch}.sp-row-active .sp-index{color:#0b735d}.sp-service-grid article.sp-row-active{border-top-color:#355e50}
.sp-method{position:relative}.sp-method>p{max-width:600px}.sp-method .sp-inline-link{display:block;width:fit-content}.sp-orbit{position:relative;width:min(100%,410px);aspect-ratio:1;margin:36px auto 0;border:1px solid #9faf9e;border-radius:50%;display:grid;place-items:center}.sp-orbit:after{content:'';position:absolute;inset:10%;border:1px solid #9faf9e55;border-radius:50%;pointer-events:none}.sp-orbit-track{position:absolute;inset:0;pointer-events:none}.sp-orbit-marker{position:absolute;top:50%;left:50%;width:26px;height:26px;border:1px solid #8eab9b;border-radius:50%;background:var(--paper);font-size:12px;display:grid;place-items:center;color:#355e50}.sp-orbit-marker.active{background:#193e35;color:white}.sp-phase-copy{width:72%;position:relative;text-align:center;z-index:1}.sp-phase-copy .sp-kicker{font-size:12px;margin:0 0 14px;color:#476f61}.sp-phase-copy strong{display:block;font-size:26px;line-height:1.3;letter-spacing:-.025em;font-weight:400}.sp-phase-copy p{font-size:16px;line-height:1.5;margin-top:14px!important}.sp-method-hint{display:block;text-align:center;font-size:12px;letter-spacing:.08em;margin-top:24px;color:#476f61}
.sp-case{gap:8%;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.sp-case figure{aspect-ratio:1;background:#dce7df;border-radius:3px}.sp-case h2{font-size:clamp(58px,6vw,88px)!important}.sp-faq summary{font-size:21px;padding:28px 0}.sp-related{gap:32px}.sp-related a{font-family:LumyaDisplay,'Arial Narrow',sans-serif;font-size:clamp(28px,3vw,42px);text-transform:uppercase;text-decoration:none;line-height:1.2;min-height:100px}.sp-related a span{font-family:Arial,Helvetica,sans-serif}.sp-related a:hover{border-top-color:#355e50}.sp-contact{padding:90px 6%;max-width:none}.service-page .sp-contact h2{font-size:clamp(90px,11vw,160px);line-height:1.15}.sp-contact .sp-button{background:transparent;color:var(--paper);border-color:#ffffff65}.sp-contact .sp-button:hover{background:var(--paper);color:var(--ink)}.sp-footer>a:first-child{font-family:LumyaDisplay,'Arial Narrow',sans-serif;font-size:36px;letter-spacing:0}
.sp-animated .sp-hero-shell{height:155svh}.sp-animated .sp-hero{position:sticky;top:12px}.sp-animated [data-sp-reveal]{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .9s cubic-bezier(.19,1,.22,1)}.sp-animated [data-sp-reveal].sp-visible{opacity:1;transform:none}.sp-animated .sp-portrait[data-sp-reveal]{transform:translateY(30px);clip-path:inset(0 12% 0 12%);transition:clip-path 1s,transform 1s,opacity .8s}.sp-animated .sp-portrait.sp-visible{clip-path:inset(0);transform:none;opacity:1}
@media(min-width:1001px) and (min-height:701px){.sp-animated .sp-method-shell{height:260svh}.sp-animated .sp-method{position:sticky;top:105px;height:calc(100svh - 130px);max-width:1400px;padding-top:30px;padding-bottom:30px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:8%;align-content:center}.sp-method>.sp-kicker,.sp-method>h2,.sp-method>p,.sp-method>.sp-inline-link{grid-column:1}.sp-method>.sp-orbit{grid-column:2;grid-row:1/5;margin:auto;align-self:center;width:min(100%,410px,54svh)}.sp-method>.sp-method-hint{grid-column:2;margin-top:12px}.sp-method>h2{font-size:clamp(52px,5.7vw,80px)!important;margin-bottom:18px}.sp-method>p{font-size:16px;line-height:1.65}.sp-method>.sp-inline-link{margin-top:16px}}
@media(max-width:760px){.service-page .sp-header{top:8px;left:14px;right:14px;padding:10px 6px;gap:16px}.sp-header img{width:135px}.sp-nav-contact{font-size:14px;padding:9px 16px}.service-page .sp-hero{height:calc(100svh - 12px);min-height:590px;margin:6px;padding:135px 20px 190px}.sp-hero::before{background-position:62% center}.sp-hero .sp-breadcrumb{top:88px;left:20px;right:20px;gap:8px;font-size:12px;line-height:1.5}.sp-hero>.sp-kicker{font-size:12px;line-height:1.6;letter-spacing:.045em;max-width:270px;margin:0 auto 20px}.service-page .sp-hero h1{font-size:clamp(52px,16vw,105px);line-height:1.16;letter-spacing:0}.sp-hero-bottom{bottom:24px;left:20px;right:20px;display:flex;flex-direction:column;align-items:stretch;gap:18px}.sp-hero-bottom p{font-size:16px;line-height:1.45;max-width:34ch;text-align:left}.sp-hero-bottom .sp-button{clip-path:none;border-radius:30px;min-height:48px;margin:0;font-size:14px;padding:12px 20px}.sp-home-cue{font-size:12px;min-height:30px;justify-content:flex-start;margin:0}.sp-animated .sp-hero-shell{height:140svh}.sp-animated .sp-hero{top:6px}.sp-section{padding:64px 26px}.service-page .sp-section h2{font-size:clamp(44px,13vw,72px);line-height:1.15}.sp-overview{gap:30px}.sp-overview .sp-intro{font-size:20px;line-height:1.5}.sp-portrait img{aspect-ratio:1.1}.sp-brand-image img{aspect-ratio:2}.sp-brand-image{padding:28px}.sp-service-grid{margin-top:32px}.sp-service-grid article{grid-template-columns:24px minmax(0,1fr);gap:14px;padding:24px 0}.sp-service-grid h3{font-size:clamp(29px,8vw,40px);line-height:1.2}.sp-service-grid article p{grid-column:2;font-size:16px}.sp-index{padding-top:4px}.sp-case figure{aspect-ratio:1.2}.sp-case h2{font-size:clamp(44px,12vw,64px)!important}.sp-orbit{width:min(100%,360px);margin-top:32px}.sp-phase-copy strong{font-size:24px}.sp-phase-copy p{font-size:16px}.sp-orbit-marker{font-size:12px}.sp-faq summary{font-size:18px;line-height:1.5;padding:22px 0}.sp-related a{font-size:32px;min-height:80px}.sp-contact{padding:56px 20px}.service-page .sp-contact h2{font-size:clamp(52px,15vw,85px);line-height:1.15}.sp-footer>a:first-child{font-size:32px}}
@media(max-height:600px){.service-page .sp-hero{min-height:590px}.sp-animated .sp-hero-shell{height:auto}.sp-animated .sp-hero{position:relative;top:auto}.sp-hero .sp-breadcrumb{top:88px}}
@media(prefers-reduced-motion:reduce){.service-page .sp-hero h1{transform:none;opacity:1}.sp-hero::before{transform:none}.sp-orbit-track{transform:none!important}.sp-header{transition:none}}
@media(min-width:761px) and (max-height:700px){.service-page .sp-hero{min-height:760px}.service-page .sp-hero h1{font-size:clamp(90px,12vw,180px)}}
