/* Deliverables share a frame; hierarchy lives inside the artifact. */
.service-package .sd-artifact {min-height:0;display:flex;flex-direction:column;}
.service-package .sd-document {padding:24px;}
.service-package .sd-document h5 {margin-bottom:20px;font-size:20px;line-height:24px;}
.service-package .sd-position-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.service-package .sd-position-grid>div {display:flex;flex-direction:column;align-items:flex-start;padding:16px;border-radius:4px;}
.service-package .sd-position-standard {background:#edf3ee;color:#216443;}
.service-package .sd-position-fallback {background:#f2e9eb;color:var(--accent);}
.service-package .sd-position-grid .sd-label {color:inherit;}
.service-package .sd-position-grid strong {font:400 40px/44px var(--serif);letter-spacing:-.04em;margin:12px 0 8px;}
.service-package .sd-position-grid strong>span {font:400 24px/28px var(--sans);letter-spacing:0;margin-left:4px;}
.service-package .sd-position-grid p {margin:0;font:400 14px/20px var(--sans);color:var(--body);}
.service-package .sd-position-grid b {font-weight:500;}
.service-package .sd-policy-guardrail {display:flex;gap:12px;align-items:flex-start;padding-top:20px;margin-top:20px;border-top:1px solid var(--sd-line);}
.service-package .sd-policy-guardrail svg {flex:0 0 24px;width:24px;height:24px;fill:none;stroke:var(--accent);stroke-width:1.3;stroke-linejoin:round;stroke-linecap:round;}
.service-package .sd-policy-guardrail strong {display:block;font:500 14px/20px var(--sans);color:var(--ink);}
.service-package .sd-policy-guardrail p {font:400 14px/20px var(--sans);margin:4px 0 0;color:var(--body);}
.service-package .sd-source-chips {display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;}
.service-package .sd-source-chips span {font:400 12px/20px var(--sans);color:var(--muted);background:#edeae680;border-radius:4px;padding:4px 8px;}

.service-package .sd-workflow-inlet {height:64px;padding:20px 24px;gap:24px;overflow:hidden;}
.service-package .sd-request-platforms {width:240px;max-width:calc(100% - 88px);height:24px;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 6%,#000 70%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent,#000 6%,#000 70%,transparent 100%);}
.service-package .sd-platform-track {display:flex;width:max-content;height:24px;animation:sd-platform-flow 28s linear infinite;}
.service-package .sd-platform-track>span {display:flex;align-items:center;gap:24px;padding-right:24px;}
.service-package .sd-platform-track img {display:block;flex:none;width:20px;height:20px;object-fit:contain;filter:none;}
@keyframes sd-platform-flow {from{transform:translateX(-50%)}to{transform:translateX(0)}}
.service-package .sd-routes-refined {padding:0 24px 24px;gap:12px;}
.service-package .sd-routes-refined>div {display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--sd-line);border-radius:4px;}
.service-package .sd-routes-refined .sd-route-approved {background:#edf3ee80;border-color:#21644324;}
.service-package .sd-routes-refined .sd-route-approval {background:#f2e9eb80;border-color:rgb(var(--brand-burgundy-rgb) / 0.1412);}
.service-package .sd-route-symbol {display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex:0 0 24px;color:var(--muted);}
.service-package .sd-route-symbol svg {width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;}
.service-package .sd-route-approved .sd-route-symbol {color:#216443;}
.service-package .sd-route-approval .sd-route-symbol {color:var(--accent);}
.service-package .sd-routes-refined>div>div {min-width:0;}
.service-package .sd-routes-refined>div>div>span {display:block;font:400 12px/20px var(--sans);color:var(--muted);}
.service-package .sd-routes-refined strong {display:block;font:500 16px/24px var(--sans);color:var(--accent);margin-top:2px;}
.service-package .sd-routes-refined small {font:400 12px/20px var(--sans);margin-top:4px;}

.service-package .sd-signed {display:flex;gap:4px;align-items:center;font:400 12px/20px var(--mono);color:#216443;background:#e7f0e9;border-radius:4px;padding:4px 8px;}
.service-package .sd-signed svg,.service-package .sd-approved svg {width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none;}
.service-package .sd-record-decision {display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 16px;padding:20px;background:#edf3ee80;border-radius:4px;margin-bottom:24px;}
.service-package .sd-record-decision>.sd-label {color:var(--muted);}
.service-package .sd-record-decision>strong {grid-column:1;grid-row:2;font:400 36px/40px var(--serif);color:var(--accent);letter-spacing:-.03em;}
.service-package .sd-approved {grid-column:2;grid-row:1/3;display:flex;align-items:center;gap:8px;max-width:140px;font:500 14px/20px var(--sans);color:#216443;}
.service-package .sd-record-fields>div {align-items:start;}
.service-package .sd-record-sources {gap:8px;margin-top:20px;padding-top:20px;}
.service-package .sd-record-sources>span:not(.sd-label) {border:0;background:#edeae680;padding:4px 8px;border-radius:4px;font-size:12px;line-height:20px;color:var(--body);}

@media(max-width:1000px) {
 .service-package .sd-document {padding:20px;}
 .service-package .sd-workflow-inlet {padding-inline:20px;}
 .service-package .sd-routes-refined {padding-inline:20px;}
 .service-package .sd-routes-refined>div {padding:12px;}
 .service-package .sd-record-decision {grid-template-columns:1fr;}
 .service-package .sd-approved {grid-column:1;grid-row:3;max-width:none;}
}
@media(max-width:760px) {
 .service-package .sd-artifact {min-height:0;display:flex;flex-direction:column;}
 .service-package .sd-document {padding:24px;}
 .service-package .sd-workflow-inlet {padding-inline:24px;}
 .service-package .sd-routes-refined {padding-inline:24px;}
 .service-package .sd-routes-refined>div {padding:16px;}
 .service-package .sd-record-decision {grid-template-columns:1fr auto;}
 .service-package .sd-approved {grid-column:2;grid-row:1/3;max-width:140px;}
}
@media(max-width:480px) {
 .service-package .sd-artifact {min-height:432px;}
 .service-package .sd-document {padding:16px;}
 .service-package .sd-document h5 {font-size:18px;line-height:24px;}
 .service-package .sd-position-grid {gap:8px;}
 .service-package .sd-position-grid>div {padding:12px;}
 .service-package .sd-position-grid strong {font-size:36px;line-height:40px;}
 .service-package .sd-position-grid p {font-size:12px;line-height:20px;}
 .service-package .sd-workflow-inlet {padding-inline:16px;gap:16px;}
 .service-package .sd-routes-refined {padding:0 16px 16px;}
 .service-package .sd-routes-refined>div {padding:12px;gap:8px;}
 .service-package .sd-routes-refined strong {font-size:14px;line-height:20px;}
 .service-package .sd-record-decision {padding:16px;gap:8px;}
 .service-package .sd-approved {max-width:120px;font-size:12px;}
}
@media(prefers-reduced-motion:reduce) {.service-package .sd-platform-track {animation:none;}}

/* Two concise request-to-response examples, without another tab bar. */
.service-package .sd-tactic-panels {display:grid;}
.service-package .sd-tactic-example {padding:20px 24px;display:grid;gap:12px;}
.service-package .sd-tactic-example + .sd-tactic-example {border-top:1px solid var(--line);}
.service-package .sd-tactic-example > div {display:grid;grid-template-columns:80px minmax(0,1fr);gap:12px;align-items:start;}
.service-package .sd-tactic-choice > div {display:contents;}
.service-package .sd-tactic-example p {margin:0;font:400 14px/20px var(--sans);color:var(--ink);}
.service-package .sd-tactic-example .sd-label {color:var(--muted);font-size:12px;line-height:20px;}
.service-package .sd-tactic-choice strong {color:var(--accent);font:600 14px/20px var(--sans);}
.service-package .sd-tactic-request p,.service-package .sd-tactic-response p {font-style:italic;}
.service-package .sd-tactic-response strong {font-weight:600;}
@media(max-width:480px) {
 .service-package .sd-tactic-example {padding:16px;}
 .service-package .sd-tactic-example > div {grid-template-columns:1fr;gap:4px;}
}

/* Size the shared slide frame from its contents, then use the available height. */
.service-package .sd-panel {min-height:0;}
.service-package .sd-artifact > .sd-document {flex:1;display:flex;flex-direction:column;}
.service-package .sd-source-chips {margin-top:auto;padding-top:16px;}
.service-package .sd-test-samples {flex:1;display:flex;flex-direction:column;justify-content:space-between;}
.service-package .sd-tactic-panels {flex:1;grid-template-rows:1fr 1fr;}
.service-package .sd-tactic-example {align-content:space-between;}
.service-package .sd-record-sources {margin-top:auto;padding-top:16px;}
