/* Site V2 service family: recurring operating cycle instead of generic card grids. */
.service-v2 { overflow-x: clip; }
.service-cycle-hero { padding: 68px 0 62px; background: radial-gradient(circle at 84% 22%,rgba(249,196,60,.18),transparent 28%),linear-gradient(145deg,#3c084b,#611776 58%,#731f87); color:#fff; }
.service-cycle-hero__grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr); gap:44px; align-items:center; }
.service-cycle-hero .breadcrumbs,.service-cycle-hero .breadcrumbs a { color:rgba(255,255,255,.72); }
.service-cycle-hero h1 { max-width:860px; margin:10px 0 18px; color:#fff; font-size:clamp(2.5rem,5vw,4.55rem); line-height:.99; }
.service-cycle-hero__lead { max-width:780px; margin:0; color:rgba(255,255,255,.86); font-size:clamp(1rem,1.5vw,1.18rem); line-height:1.72; }
.service-cycle-hero__panel { padding:30px; border:1px solid rgba(255,255,255,.2); border-radius:28px; background:rgba(255,255,255,.09); box-shadow:0 30px 74px rgba(25,0,34,.24); }
.service-cycle-hero__panel>p { margin:0 0 10px; color:#f5d368; font-size:.72rem; font-weight:900; letter-spacing:.14em; }
.service-cycle-hero__panel h2 { margin:0 0 20px; color:#fff; font-size:clamp(1.4rem,2.5vw,2.05rem); line-height:1.15; }
.service-cycle-hero__panel>div:not(.service-cycle-hero__pulse) { display:flex; flex-wrap:wrap; gap:8px; }
.service-cycle-hero__panel>div:not(.service-cycle-hero__pulse) span { padding:7px 10px; border:1px solid rgba(255,255,255,.2); border-radius:999px; background:rgba(255,255,255,.08); font-size:.76rem; font-weight:800; }
.service-cycle-hero__pulse { display:grid; grid-template-columns:repeat(6,1fr); gap:6px; margin-top:28px; }
.service-cycle-hero__pulse i { height:6px; border-radius:999px; background:linear-gradient(90deg,#f4cf59,rgba(255,255,255,.45)); }
.service-v2__heading { max-width:850px; }
.service-cycle__layout { display:grid; grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr); gap:54px; align-items:start; }
.service-cycle__intro { position:sticky; top:132px; }
.service-cycle__intro h2 { margin:8px 0 14px; }
.service-cycle__intro p:last-child { color:var(--muted); line-height:1.7; }
.service-cycle__timeline { position:relative; }
.service-cycle__timeline::before { content:""; position:absolute; left:25px; top:26px; bottom:26px; width:2px; background:linear-gradient(#741e88,#d8ac2f); }
.service-cycle__step { position:relative; display:grid; grid-template-columns:52px minmax(0,1fr); gap:20px; padding-bottom:24px; }
.service-cycle__step>span { position:relative; z-index:1; display:grid; width:52px; height:52px; place-items:center; border:3px solid #fff; border-radius:50%; background:#661777; color:#fff; font-size:.74rem; font-weight:900; box-shadow:0 5px 20px rgba(67,7,82,.1); }
.service-cycle__step>div { padding:3px 0 22px; border-bottom:1px solid var(--line); }
.service-cycle__step h3,.service-takeover__step h3 { margin:0 0 7px; font-size:1.1rem; }
.service-cycle__step p,.service-takeover__step p { margin:0; color:var(--muted); line-height:1.62; }
.service-layers__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:15px; margin-top:30px; }
.service-layers__grid article { padding:24px 21px; border:1px solid var(--line); border-top:4px solid #741e88; border-radius:19px; background:#fff; }
.service-layers__grid span { display:inline-flex; margin-bottom:14px; color:#741e88; font-size:.74rem; font-weight:900; letter-spacing:.08em; }
.service-layers__grid h3,.service-responsibility h3,.service-checkpoint h3 { margin:0 0 8px; font-size:1.03rem; }
.service-layers__grid p,.service-checkpoint p { margin:0; color:var(--muted); line-height:1.62; }
.service-responsibility__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:30px; }
.service-responsibility__grid article { padding:28px; border:1px solid var(--line); border-top:4px solid #d5a92f; border-radius:22px; background:#fff; }
.service-responsibility__grid .service-responsibility__logos { border-top-color:#741e88; background:linear-gradient(145deg,#fff,#faf6fc); }
.service-responsibility ul { display:grid; gap:10px; padding:0; margin:0; list-style:none; }
.service-responsibility li { position:relative; padding-left:23px; color:var(--muted); line-height:1.58; }
.service-responsibility li::before { content:""; position:absolute; left:2px; top:.65em; width:8px; height:8px; border-radius:50%; background:#d5a92f; }
.service-responsibility__logos li::before { background:#741e88; }
.service-checkpoint__layout { display:grid; grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr); gap:48px; align-items:start; }
.service-checkpoint__layout>div:first-child h2 { margin:8px 0 12px; }
.service-checkpoint__layout>div:first-child p:last-child { color:var(--muted); line-height:1.7; }
.service-checkpoint__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.service-checkpoint__grid article { padding:22px; border:1px solid var(--line); border-radius:17px; background:#fff; }
.service-checkpoint__grid article::before { content:""; display:block; width:32px; height:5px; margin-bottom:16px; border-radius:999px; background:linear-gradient(90deg,#741e88,#d5a92f); }
.service-takeover__track { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin-top:30px; border:1px solid var(--line); border-radius:22px; overflow:hidden; }
.service-takeover__step { display:grid; grid-template-columns:auto 1fr; gap:12px; padding:24px 20px; background:#fff; }
.service-takeover__step+.service-takeover__step { border-left:1px solid var(--line); }
.service-takeover__step>span { display:grid; width:34px; height:34px; place-items:center; border-radius:50%; background:#f3e7f6; color:#681779; font-size:.7rem; font-weight:900; }
.service-online__inner { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:34px; align-items:center; padding:30px; border:1px solid var(--line); border-radius:22px; background:#fff; }
.service-online__inner h2 { margin:8px 0 10px; }
.service-online__inner p:last-child { max-width:800px; margin:0; color:var(--muted); line-height:1.65; }
.service-online__actions { display:grid; gap:9px; min-width:220px; }
.service-online__actions a { display:flex; justify-content:center; padding:11px 14px; border:1px solid var(--line); border-radius:13px; background:#faf7fb; color:#671878; font-weight:850; }
.service-related__bar { display:flex; flex-wrap:wrap; gap:10px; align-items:center; padding:18px; border:1px solid var(--line); border-radius:18px; background:#fbf8fc; }
.service-related__bar>strong { margin-right:4px; }
.service-related__bar a { display:inline-flex; gap:8px; align-items:center; padding:8px 11px; border-radius:999px; background:#fff; color:#651677; font-size:.84rem; font-weight:850; }
.service-v2-cta { padding-block:54px; background:linear-gradient(135deg,#421052,#6c1a80); color:#fff; }
.service-v2-cta__inner { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:36px; align-items:center; }
.service-v2-cta h2 { max-width:780px; margin:8px 0 10px; color:#fff; }
.service-v2-cta p:not(.eyebrow) { max-width:770px; margin:0; color:rgba(255,255,255,.82); line-height:1.65; }
.service-v2-cta__inner>div:last-child { display:grid; gap:10px; min-width:245px; }
@media(max-width:1040px){.service-cycle-hero__grid,.service-cycle__layout,.service-checkpoint__layout{grid-template-columns:1fr}.service-cycle__intro{position:static}.service-layers__grid,.service-takeover__track{grid-template-columns:repeat(2,minmax(0,1fr))}.service-takeover__step:nth-child(3){border-left:0;border-top:1px solid var(--line)}.service-takeover__step:nth-child(4){border-top:1px solid var(--line)}}
@media(max-width:760px){.service-cycle-hero{padding:46px 0 42px}.service-cycle-hero h1{font-size:clamp(2.15rem,11vw,3.1rem)}.service-cycle-hero__panel{padding:22px;border-radius:20px}.service-layers__grid,.service-responsibility__grid,.service-checkpoint__grid,.service-takeover__track,.service-online__inner,.service-v2-cta__inner{grid-template-columns:1fr}.service-cycle__timeline::before{left:20px}.service-cycle__step{grid-template-columns:42px minmax(0,1fr);gap:14px}.service-cycle__step>span{width:42px;height:42px;border-width:2px}.service-takeover__track{border:0;gap:10px;overflow:visible}.service-takeover__step,.service-takeover__step+.service-takeover__step,.service-takeover__step:nth-child(3),.service-takeover__step:nth-child(4){border:1px solid var(--line);border-radius:16px}.service-online__actions,.service-v2-cta__inner>div:last-child{min-width:0}.service-v2-cta .btn,.service-cycle-hero .btn{width:100%}}
@media(max-width:360px){.service-cycle-hero__panel,.service-layers__grid article,.service-responsibility__grid article,.service-checkpoint__grid article,.service-takeover__step,.service-online__inner{padding-inline:17px}.service-cycle__step{gap:10px}}
