/* Shared expertise showcase; stacked items reserve the tallest full name. */
.hero-service-line{position:relative;isolation:isolate;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:20px;max-width:640px;margin:24px 0 25px;padding:23px 24px 22px 20px;border-left:2px solid var(--a19-amethyst);border-radius:0 18px 18px 0;background:linear-gradient(105deg,#7b2cbf20,#7b2cbf06 68%,transparent);box-shadow:inset 0 -1px 0 #c77dff16}
.hero-service-line::after{content:"";position:absolute;right:10px;top:0;width:80px;height:80px;pointer-events:none;border:1px solid #c77dff0b;border-radius:50%;translate:15% -20%;z-index:-1}


.service-rotator{position:relative;display:grid;min-width:0;overflow:hidden;padding:0 0 14px;text-align:left}
.service-word{grid-area:1/1;display:flex;flex-direction:column;gap:8px;white-space:normal;opacity:0;transform:translateY(12px);transition:opacity .55s ease,transform .7s cubic-bezier(.16,1,.3,1);pointer-events:none}
.service-word:first-child{opacity:1;transform:none}
.service-name{display:block;font-size:clamp(1.25rem,1.9vw,1.75rem);line-height:1.25;letter-spacing:-.045em;font-weight:650;font-style:normal;color:var(--a19-white);background:var(--a19-gradient-text);background-clip:text;-webkit-text-fill-color:transparent;text-wrap:balance}
.service-detail{display:block;color:var(--a19-text-secondary);font-size:.79rem;line-height:1.65;letter-spacing:0;font-style:normal;font-weight:400;max-width:38ch}
.service-rotator.is-ready .service-word{opacity:0;transform:translateY(12px)}
.service-rotator.is-ready .service-word.is-current{opacity:1;transform:translateY(0)}
.service-rotator.is-ready .service-word.is-leaving{opacity:0;transform:translateY(-10px)}
.service-progress{grid-area:2/1;display:block;height:2px;margin-top:14px;border-radius:4px;background:#c77dff18;overflow:hidden;max-width:95px}
.service-progress i{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--a19-violet),var(--a19-amethyst));transform:scaleX(0);transform-origin:left;border-radius:inherit}
.a19-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:1100px) and (min-width:761px){.hero-service-line{grid-template-columns:1fr;gap:13px;padding:18px}.service-name{font-size:1.3rem}}
@media(max-width:760px){.hero-service-line{grid-template-columns:1fr;gap:13px;margin:22px 0;padding:17px 17px 13px}.service-name{font-size:1.35rem;max-width:100%;line-height:1.25}.service-detail{font-size:.78rem;line-height:1.6;max-width:34ch}.service-progress{margin-top:12px}.service-rotator{padding-bottom:3px}}
@media(max-width:360px){.service-name{font-size:1.2rem}.service-detail{font-size:.74rem}}
@media(prefers-reduced-motion:reduce){.service-word{transition:none!important}.service-progress{display:none}}

.service-with{display:inline-flex;align-items:center;gap:8px;padding:5px 10px;border:1px solid #c77dff2b;border-radius:30px;color:var(--a19-amethyst);font-size:.94rem;line-height:1.4;font-style:italic;font-weight:500;background:#0d0c1040;margin-top:2px}.service-with svg{width:12px;height:12px;fill:currentColor}.service-with{justify-self:start}@media(max-width:760px){.service-with{font-size:.85rem;padding:3px 9px}}
