/* Distinct scale and material for each family, including large background bubbles. */
.service-body .service-art{isolation:isolate}
.service-body .service-art>.lm-art-decor{z-index:-1}
.service-body [data-lm-art="build"]{--art-size:220px;--art-top:-35px;--art-right:-38px;--art-satellite-size:32px;--art-satellite-top:190px;--art-satellite-right:calc(100% - 15px)}
.service-body [data-lm-art="build"]>.lm-art-decor .lm-art-orbit{left:auto;right:var(--art-right);opacity:.7}
.service-body [data-lm-art="build"] .lm-art-orb{border-radius:50%;background:radial-gradient(circle at 28% 22%,#ffffffd9,transparent 40%),radial-gradient(circle at 74% 78%,#8bea4d 0%,#5f8d42 37%,#142015 72%);animation-name:service-orb-breathe}
.service-body [data-lm-art="growth"]{--art-size:290px;--art-top:-84px;--art-right:30%;--art-satellite-size:40px;--art-satellite-top:150px;--art-satellite-right:-22px}
.service-body [data-lm-art="growth"] .lm-art-orb{opacity:.32;background:radial-gradient(circle at 30% 20%,#fff 1%,#bad88d80 30%,#6b966b 63%,#244b45);border-radius:50%;animation-name:service-orb-breathe}
.service-body [data-lm-art="growth"] .lm-art-ring{display:none}
.service-body [data-lm-art="messaging"]{--art-size:185px;--art-top:-10px;--art-right:-30px;--art-satellite-size:57px;--art-satellite-top:310px;--art-satellite-right:90%}
.service-body [data-lm-art="messaging"] .lm-art-orb{border-radius:50%;background:radial-gradient(circle at 30% 24%,#ffffffdb,transparent 26%),radial-gradient(circle at 70% 78%,#8bea4d 0%,#587d43 36%,#132015 74%);animation-name:service-orb-breathe}
.service-body [data-lm-art="systems"]{--art-size:280px;--art-top:-90px;--art-right:-70px;--art-satellite-size:24px;--art-satellite-top:300px;--art-satellite-right:110px}
.service-body [data-lm-art="systems"] .lm-art-orb{border-radius:50%;background:radial-gradient(circle at 30% 24%,#fff 1%,#dff3cf82 28%,#7da865 62%,#1b2c1c);opacity:.62;animation-name:service-orb-breathe}
@keyframes service-orb-breathe{from{transform:translateY(0) scale(1)}to{transform:translateY(-12px) scale(1.045)}}
.service-cta{position:relative;overflow:clip;isolation:isolate}
.service-consultation-in-view .floating-contact{opacity:0;visibility:hidden;pointer-events:none}
.service-cta>.site-shell{position:relative;display:grid;grid-template-columns:1fr .85fr;gap:5%;align-items:center}
.service-cta-copy{min-width:0}
.service-cta-art{position:relative;min-height:360px;isolation:isolate}
.service-cta-orb{position:absolute;width:280px;aspect-ratio:1;border-radius:50%;right:2%;top:10px;background:radial-gradient(circle at 27% 21%,#ffffffc7,transparent 27%),radial-gradient(circle at 70% 76%,#8bea4d 0%,#719d54 34%,#182719 72%);box-shadow:inset -25px -20px 50px #13201480,0 0 75px #8bea4d18;opacity:.8}
.service-cta-orb::after{content:"";position:absolute;inset:-14%;border:1px solid #bcdbac40;border-radius:50%;transform:rotate(-28deg) scaleY(.5)}
.service-brief-card{position:absolute;left:2%;right:20%;top:110px;border:1px solid #a6b7a575;background:#f7f2e8;color:#162012;border-radius:14px;padding:25px;transform:rotate(-7deg);box-shadow:0 25px 60px #0006}
.service-brief-card>span{display:block;font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#57604b}.service-brief-card strong{display:block;font-size:clamp(24px,2.6vw,40px);line-height:1.1;letter-spacing:-.05em;margin:18px 0 22px;max-width:11ch}.service-brief-card>i{display:block;height:1px;background:#c6cebc;margin-top:9px;width:85%}.service-brief-card>i:last-child{width:53%}
.service-brief-next{position:absolute;bottom:0;right:2%;padding:20px 25px;max-width:73%;background:#87e64b;color:#12200e;border-radius:11px;transform:rotate(5deg);display:flex;gap:30px;align-items:center;font-size:14px;line-height:1.3;font-weight:600;box-shadow:0 20px 40px #0003}.service-brief-next b{font-size:28px;font-weight:400}
.service-cta.is-in-view .service-brief-card{animation:service-brief-arrive 1s cubic-bezier(.16,1,.3,1) both}.service-cta.is-in-view .service-brief-next{animation:service-next-arrive 1s .18s cubic-bezier(.16,1,.3,1) both}.service-cta.is-in-view .service-cta-orb{animation:service-orb-breathe 7s ease-in-out infinite alternate}
@keyframes service-brief-arrive{from{transform:translateY(85px) rotate(-15deg);opacity:.2}to{transform:rotate(-7deg);opacity:1}}
@keyframes service-next-arrive{from{transform:translateX(100px) rotate(14deg);opacity:0}to{transform:rotate(5deg);opacity:1}}

/* Software gets an open product blueprint, distinct from the home-page screens. */
.software-blueprint-hero{position:relative;isolation:isolate;overflow:clip;background:#edf0e6;color:#111910;padding:calc(var(--header-height,82px) + 62px) 0 0}
.software-blueprint-hero .pd-kicker{color:#4d6740}
.software-blueprint-top{display:flex;justify-content:space-between;align-items:center;gap:30px;border-bottom:1px solid #aab69d;padding-bottom:20px;margin-bottom:55px}
.software-blueprint-top .pd-kicker{margin:0}.software-blueprint-top>span{font-size:11px;color:#56644c}
.software-blueprint-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:7%;align-items:center;padding-bottom:74px}
.software-blueprint-hero h1{font-size:clamp(50px,5.8vw,86px);line-height:1.03;letter-spacing:-.065em;max-width:11ch;margin:0;font-weight:600}.software-blueprint-hero h1 em{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;letter-spacing:-.03em;color:#47653b}
.software-blueprint-hero .pd-description{color:#535e4c;max-width:42ch}
.software-blueprint-hero .pd-button{background:#12200f;border-color:#12200f;color:#f7f5e9}
.software-blueprint-art{position:relative;min-height:500px;padding:65px 0 35px;isolation:isolate}
.software-blueprint-art::before{content:"";position:absolute;inset:4% -8%;background-image:radial-gradient(#5c795e55 1px,transparent 1px);background-size:20px 20px;z-index:-2;mask-image:radial-gradient(ellipse,#000 40%,transparent 71%)}
.software-blueprint-orb{position:absolute;z-index:-1;right:-7%;top:-25px;width:260px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 25% 22%,#ffffffed,transparent 28%),conic-gradient(from 20deg,#c9e7bb,#87b4af,#a4a9cf,#c9e7bb);box-shadow:inset -25px -22px 35px #2c5d4740;opacity:.8}
.software-blueprint-board{position:relative;background:#102017;color:#f6f7ef;border:1px solid #4b6450;border-radius:16px;transform:rotate(-3deg);box-shadow:0 25px 45px #34402c22;overflow:hidden}
.software-blueprint-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:9px;padding:18px 22px;border-bottom:1px solid #c2d0b833;letter-spacing:.07em}.software-blueprint-bar>span:first-child{display:flex;gap:5px}.software-blueprint-bar i{width:5px;height:5px;border-radius:50%;background:#87e64b}
.software-blueprint-content{padding:27px}.software-blueprint-content>small{font-size:9px;color:#b6d1aa;text-transform:uppercase;letter-spacing:.1em}.software-blueprint-content h2{font-size:35px;font-weight:500;letter-spacing:-.05em;line-height:1.1;margin:12px 0 25px}
.software-blueprint-modules{display:grid;grid-template-columns:1fr 1fr;gap:10px}.software-blueprint-module{padding:15px;background:#26382b;border:1px solid #a4c29a45;border-radius:7px;min-width:0}.software-blueprint-module:nth-child(1){background:#c1ee96;color:#142411}.software-blueprint-module span{display:block;font-size:9px;opacity:.7;margin-bottom:12px}.software-blueprint-module strong{font-size:13px;font-weight:500;display:block}.software-blueprint-module small{display:block;font-size:9px;opacity:.7;margin-top:5px}
.software-blueprint-footer{display:flex;justify-content:space-between;gap:20px;font-size:9px;border-top:1px solid #c2d0b833;padding:16px 22px;color:#b8cfae}
.software-blueprint-note{position:absolute;right:-5%;bottom:6px;max-width:70%;background:#fffaf0;border:1px solid #b4c0aa;border-radius:10px;padding:19px 23px;box-shadow:0 16px 35px #24332320;transform:rotate(5deg)}.software-blueprint-note span{font-size:9px;color:#617355;display:block;margin-bottom:9px}.software-blueprint-note strong{font-size:20px;line-height:1.1;letter-spacing:-.04em;font-weight:500}
.software-blueprint-legend{display:flex;align-items:center;gap:25px;flex-wrap:wrap;border-top:1px solid #aab69d;padding:24px 0;font-size:12px}.software-blueprint-legend>span{margin-right:auto;font-size:10px;color:#657259;text-transform:uppercase;letter-spacing:.1em}.software-blueprint-legend a{text-decoration:none;border-bottom:1px solid #788e68;padding:5px 0}
@media(prefers-reduced-motion:no-preference){.software-blueprint-board{animation:software-board-arrive 1.1s cubic-bezier(.16,1,.3,1) both}.software-blueprint-note{animation:software-note-arrive 1.15s .2s cubic-bezier(.16,1,.3,1) both}.software-blueprint-module{animation:software-module-arrive .8s .45s backwards}.software-blueprint-module:nth-child(2){animation-delay:.6s}.software-blueprint-module:nth-child(3){animation-delay:.75s}.software-blueprint-module:nth-child(4){animation-delay:.9s}}
@keyframes software-board-arrive{from{opacity:0;transform:translateY(110px) rotate(-8deg)}to{opacity:1;transform:rotate(-3deg)}}
@keyframes software-note-arrive{from{opacity:0;transform:translateX(80px) rotate(12deg)}to{opacity:1;transform:rotate(5deg)}}
@keyframes software-module-arrive{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}
@media(max-width:900px){.software-blueprint-grid{grid-template-columns:1fr;gap:45px;padding-bottom:45px}.software-blueprint-hero h1{max-width:14ch;font-size:clamp(48px,8vw,74px)}.software-blueprint-hero .pd-description{max-width:58ch}.software-blueprint-art{width:min(560px,90%);margin-inline:auto}.software-blueprint-top{margin-bottom:40px}.service-cta>.site-shell{grid-template-columns:1fr 1fr;gap:20px}.service-cta h2{font-size:clamp(36px,5vw,60px)}.service-cta-art{min-height:340px}.service-cta-orb{width:230px}.service-brief-card{right:10%;padding:20px}.service-brief-next{right:0;padding:16px;gap:16px}.service-body [data-lm-art="systems"]{--art-size:200px;--art-right:-25px;--art-top:-45px}.service-body [data-lm-art="growth"]{--art-size:220px}}
@media(max-width:600px){.service-cta>.site-shell{grid-template-columns:1fr;gap:25px}.service-cta-art{width:min(100%,390px);margin:5px auto 0;min-height:335px}.service-brief-card{left:4%;right:18%;top:105px}.service-brief-card strong{font-size:30px}.service-brief-next{bottom:5px;right:7%;max-width:75%}.service-cta h2{font-size:46px}.service-body [data-lm-art="build"]{--art-size:155px;--art-top:-17px;--art-right:-17px;--art-satellite-top:180px;--art-satellite-size:23px}.service-body [data-lm-art="growth"]{--art-size:180px;--art-top:-20px;--art-satellite-size:29px}.service-body [data-lm-art="messaging"]{--art-size:145px;--art-right:-20px;--art-satellite-size:36px;--art-satellite-top:250px}.service-body [data-lm-art="systems"]{--art-size:165px;--art-top:-30px;--art-right:-15px}.software-blueprint-hero{padding-top:calc(var(--header-height,72px) + 35px)}.software-blueprint-top{gap:20px;margin-bottom:35px}.software-blueprint-top>span{display:none}.software-blueprint-hero h1{font-size:clamp(47px,12.5vw,66px)}.software-blueprint-art{width:96%;min-height:440px;padding:40px 0}.software-blueprint-orb{width:180px;right:-7%;top:-10px}.software-blueprint-content{padding:22px 18px}.software-blueprint-content h2{font-size:29px}.software-blueprint-module{padding:12px}.software-blueprint-module strong{font-size:12px}.software-blueprint-note{right:-1%;padding:15px 18px;bottom:0}.software-blueprint-note strong{font-size:18px}.software-blueprint-legend{gap:13px 22px;font-size:11px}.software-blueprint-legend>span{flex-basis:100%}.software-blueprint-footer{padding:15px;font-size:8px}.software-blueprint-bar{padding:15px;font-size:8px}}
@media(prefers-reduced-motion:reduce){.service-cta :is(.service-brief-card,.service-brief-next,.service-cta-orb){animation:none!important}}

/* Keep the closing CTA focused: copy and one clear action, without stacked cards. */
body.service-body .service-cta>.site-shell{grid-template-columns:minmax(0,1fr);gap:0}
body.service-body .service-cta-copy{width:100%;max-width:920px;margin-inline:auto;text-align:center}
body.service-body .service-cta-copy h2{text-wrap:balance}
body.service-body .service-cta-copy p:not(.service-kicker){margin-inline:auto}
body.service-body .service-cta-art{display:none}
