/* ==========================================================================
   page-exceptions.css: Google Cloud data engineering page
   Manifest decisions recorded here:
     risk        dark-device-demo-hero          page_specific_exception: device photo/video swapped for a hero media slot
     proof       data-bi-credentials-proof      page_specific_exception: 5th badge (Generative AI) only
     problem     problem-solution-bridge-method page_specific_exception: 5 problem tiles, 5-source bridge
     plan        cloud-method-google-frameworks none
     platform    gcp-platform-stack            page_specific_exception (bespoke, approved by Grace)
     migration   gcp-slice-migration           page_specific_exception (bespoke, approved by Grace)
     case-studies case-study-showcase-01-four  none: LOCKED DROP-IN, no content or design changes
     action      cloud-ways-to-start-engagement-ledger none
   ========================================================================== */

/* ---- risk: hero media slot replaces device stage ------------------------ */
[data-page-section="risk"] .dark-device-demo-hero__photo{-webkit-mask-image:none;mask-image:none}
[data-page-section="risk"] .gcp-hero-media{position:absolute;top:0;bottom:0;right:0;width:min(52.75vw,calc(var(--fit-h) * .9373));pointer-events:auto}
[data-page-section="risk"] .gcp-hero-media{display:flex;align-items:center;justify-content:center;padding:calc(var(--hdr-h, 72px) + 16px) clamp(24px,5vw,80px) 40px}
.gcp-hero-stack{display:flex;flex-direction:column;align-items:flex-start;font-family:var(--body)}
.gcp-iso{--W:200px;--DW:283px;--DH:141px;--T:16px;--step:56px;position:relative;width:600px;height:470px;margin:0;padding:0;list-style:none}
.gcp-iso > li{position:absolute;left:0;bottom:calc(36px + var(--i,0) * var(--step));width:100%;height:var(--DH)}
.gcp-iso__slab{position:absolute;left:0;top:0;width:var(--DW);height:var(--DH)}
.gcp-iso__plane{position:absolute;left:50%;top:50%;width:var(--W);height:var(--W);margin:calc(var(--W) / -2) 0 0 calc(var(--W) / -2);transform:rotateX(60deg) rotateZ(-45deg);transform-style:preserve-3d;
  background:linear-gradient(115deg,transparent 35%,rgba(255,240,180,.85) 50%,transparent 65%) 220% 0 / 300% 100% no-repeat,repeating-linear-gradient(0deg,rgba(255,255,255,.1) 0 1px,transparent 1px 25px),repeating-linear-gradient(90deg,rgba(255,255,255,.1) 0 1px,transparent 1px 25px),linear-gradient(135deg,color-mix(in oklab,var(--c) 70%,white) 0%,var(--c) 70%);
  border:1px solid rgba(255,255,255,.35);transition:box-shadow .45s ease,border-color .3s ease,background-position 0s}
.gcp-iso__side{position:absolute;display:block;background:var(--c)}
.gcp-iso__side--front{left:0;top:100%;width:100%;height:var(--T);transform-origin:top;transform:rotateX(-90deg);background-image:linear-gradient(rgba(0,0,0,.42),rgba(0,0,0,.6))}
.gcp-iso__side--left{right:100%;top:0;width:var(--T);height:100%;transform-origin:right;transform:rotateY(-90deg);background-image:linear-gradient(rgba(0,0,0,.18),rgba(0,0,0,.3))}
.gcp-iso__layer{transform:translateY(0);opacity:1;transition:transform .7s cubic-bezier(.3,1.5,.55,1),opacity .25s ease}
.gcp-iso__layer[data-state="wait"]{transform:translateY(-75vh);opacity:0;transition:none}
.gcp-iso__layer[data-state="out"]{opacity:0;transform:translateY(-14px);transition:opacity .6s ease,transform .6s ease}
.gcp-iso__layer[data-state="check"] .gcp-iso__plane{border-color:#FFF3C4;box-shadow:0 0 0 2px #F3CD29,0 0 34px 6px rgba(243,205,41,.75),inset 0 0 30px rgba(255,243,196,.45);background-position:-120% 0,0 0,0 0,0 0;transition:box-shadow .3s ease,border-color .3s ease,background-position .9s ease}
.gcp-iso__layer[data-state="done"] .gcp-iso__plane,.gcp-iso__layer[data-state="out"] .gcp-iso__plane{border-color:rgba(243,205,41,.7);box-shadow:0 0 16px rgba(243,205,41,.22)}
.gcp-iso__label{position:absolute;left:calc(var(--DW) - 6px);top:calc(var(--DH) / 2);display:flex;align-items:center;gap:12px;width:calc(100% - var(--DW) + 6px);transform:translateY(-50%);opacity:0;transition:opacity .35s ease .15s}
.gcp-iso__layer[data-state="check"] .gcp-iso__label,.gcp-iso__layer[data-state="done"] .gcp-iso__label,.gcp-iso__layer:not([data-state]) .gcp-iso__label{opacity:1}
.gcp-iso__lead{flex:none;position:relative;width:44px;height:1px;background:linear-gradient(90deg,rgba(212,175,55,.2),#D4AF37)}
.gcp-iso__lead::before{content:"";position:absolute;left:-3px;top:-3px;width:7px;height:7px;border-radius:50%;background:#F3CD29;box-shadow:0 0 10px #F3CD29}
.gcp-iso__n{flex:none;font-family:var(--display);font-size:15px;color:#D4AF37}
.gcp-iso__txt{flex:1 1 auto;min-width:0}
.gcp-iso__txt b{display:block;font-family:var(--display);font-weight:400;font-size:18px;line-height:1.15;color:#FFFFFF}
.gcp-iso__txt small{display:block;margin-top:2px;font-size:12px;line-height:1.3;color:rgba(255,255,255,.72)}
.gcp-iso__check{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#1F8A4C;box-shadow:0 0 0 4px rgba(31,138,76,.25);transform:scale(0);transition:transform .4s cubic-bezier(.34,1.9,.64,1) .2s}
.gcp-iso__check .material-icons{font-size:16px;color:#FFFFFF}
.gcp-iso__layer[data-state="check"] .gcp-iso__check,.gcp-iso__layer[data-state="done"] .gcp-iso__check,.gcp-iso__layer[data-state="out"] .gcp-iso__check,.gcp-iso__layer:not([data-state]) .gcp-iso__check{transform:scale(1)}
.gcp-iso > .gcp-iso__ground{bottom:0}
.gcp-iso__plane--ground{--W:236px;background:radial-gradient(closest-side,rgba(212,175,55,.32),rgba(212,175,55,.04) 70%,transparent);border:1px dashed rgba(212,175,55,.7)}
.gcp-iso__ground-label{position:absolute;left:calc(var(--DW) - 6px);top:calc(var(--DH) / 2 + 18px);font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#D4AF37}
.gcp-iso > .gcp-iso__beam{left:calc(var(--DW) / 2 - 60px);bottom:60px;width:120px;height:420px;background:linear-gradient(to top,rgba(243,205,41,.16),transparent);filter:blur(14px);pointer-events:none}
@media (max-width:1320px){.gcp-iso{zoom:.86}}
@media (max-width:1140px){.gcp-iso{zoom:.74}}
@media (max-width:960px){.gcp-iso{zoom:.85}}
@media (max-width:620px){.gcp-iso{zoom:.6}}
.gcp-hero-stack__kicker{margin:0 0 18px;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#D4AF37}
[data-page-section="risk"] .dark-device-demo-hero__scrim,[data-page-section="risk"] .dark-device-demo-hero__inner{pointer-events:none}
[data-page-section="risk"] .dark-device-demo-hero__inner a{pointer-events:auto}
[data-page-section="risk"] .dark-device-demo-hero__cta-note a{color:#FFFFFF;border-bottom:1px solid #D4AF37}
@media (max-width:960px){
  [data-page-section="risk"] .dark-device-demo-hero__photo{aspect-ratio:auto}
  [data-page-section="risk"] .gcp-hero-media{position:relative;width:100%;height:auto;padding:40px var(--gutter, 20px)}
}

/* ---- proof: template verbatim, fifth badge (Generative AI) only ------- */
[data-page-section="proof"] .data-bi-credentials-proof__badges{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1040px){[data-page-section="proof"] .data-bi-credentials-proof__badges{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:620px){[data-page-section="proof"] .data-bi-credentials-proof__badges{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---- problem: five problem tiles ---------------------------------------- */
[data-page-section="problem"] .problem-solution-bridge-method-section__problem-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
[data-page-section="problem"] .problem-solution-bridge-method-section__problem-tile{padding-left:16px;padding-top:44px}
[data-page-section="problem"] .problem-solution-bridge-method-section__problem-tile .problem-solution-bridge-method-section__tile-number{left:16px;top:12px;width:auto;text-align:left;font-size:24px;color:rgba(155,61,47,.42)}
[data-page-section="problem"] .problem-solution-bridge-method-section__tile h3{font-size:20px;margin-bottom:6px}
@media (max-width:1050px){[data-page-section="problem"] .problem-solution-bridge-method-section__problem-grid{grid-template-columns:repeat(2,minmax(0,1fr))}[data-page-section="problem"] .problem-solution-bridge-method-section__problem-tile:nth-child(5){grid-column:1 / -1}}
@media (max-width:760px){[data-page-section="problem"] .problem-solution-bridge-method-section__problem-grid{grid-template-columns:1fr}}
[data-page-section="problem"] .problem-solution-bridge-method-section__solution{padding-top:28px}
.gcp-sowhat{position:relative;margin-top:44px;padding:44px 48px 48px;background:rgba(13,86,48,.38)}
.gcp-sowhat::before,.gcp-sowhat::after{content:"";position:absolute;width:44px;height:44px;border:0 solid #D4AF37}
.gcp-sowhat::before{left:0;top:0;border-left-width:3px;border-top-width:3px}
.gcp-sowhat::after{right:0;bottom:0;border-right-width:3px;border-bottom-width:3px}
.gcp-sowhat__kicker{display:flex;align-items:center;gap:14px;margin:0 0 20px;font-size:12px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#F3CD29}
.gcp-sowhat__kicker::after{content:"";flex:0 0 64px;height:1px;background:#D4AF37}
.gcp-sowhat__statement{margin:0;font-family:var(--display);font-weight:400;font-size:clamp(34px,4.4vw,64px);line-height:1.1;letter-spacing:-.01em;color:#FFFFFF;text-wrap:balance}
.gcp-sowhat__cost{color:rgba(255,255,255,.72);text-decoration:line-through;text-decoration-color:#D4AF37;text-decoration-thickness:.08em}
.gcp-sowhat__asset{padding:0 .08em;background:linear-gradient(transparent 58%,rgba(243,205,41,.5) 58%,rgba(243,205,41,.5) 92%,transparent 92%)}
.gcp-sowhat__statement em{font-style:normal;color:#F3CD29}
@media (max-width:760px){.gcp-sowhat{padding:32px 22px 36px}}

/* ==========================================================================
   PLATFORM: gcp-platform-stack (bespoke)
   Layer table: layer, Google Cloud core, complementary tools, outcome.
   ========================================================================== */
.gcp-platform-stack{--band-w:220px;width:100%;padding:var(--section-padding-y) 0;background:#181818;color:#FFFFFF;border-top:1px solid #181818;font-family:var(--body);scroll-margin-top:var(--hdr-h)}
.gcp-platform-stack,.gcp-platform-stack *{box-sizing:border-box}
.gcp-platform-stack__in{width:var(--shell);margin:0 auto}
.gcp-platform-stack__kicker{display:block;margin:0 0 20px;color:#D4AF37}
.gcp-platform-stack__title{width:var(--title-description-width);max-width:var(--title-description-width);margin:0;font-family:var(--display);font-weight:500;font-size:50px;line-height:var(--lh-tight);color:#FFFFFF;text-wrap:pretty;overflow-wrap:anywhere}
.gcp-platform-stack__desc{width:var(--title-description-width);max-width:var(--title-description-width);margin:24px 0 0;font-size:18px;line-height:var(--lh-copy);color:rgba(255,255,255,.86);text-wrap:pretty}

.gcp-platform-stack__table{margin-top:64px;border-top:2px solid #D4AF37}
.gcp-platform-stack__thead,.gcp-platform-stack__row{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1.25fr) minmax(0,1.35fr) minmax(0,.85fr);column-gap:0}
.gcp-platform-stack__thead > span{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px;padding:16px 20px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#FFFFFF}
.gcp-platform-stack__thead > span:first-child{padding-left:0}
.gcp-platform-stack__thead small{flex-basis:100%;margin-left:22px;font-size:11px;font-weight:400;letter-spacing:.04em;text-transform:none;color:rgba(255,255,255,.7)}
.gcp-platform-stack__thead > span:nth-child(2),.gcp-platform-stack__core{background:rgba(212,175,55,.09)}
.gcp-platform-stack__swatch{display:block;width:12px;height:12px}
.gcp-platform-stack__swatch--core{background:#D4AF37}
.gcp-platform-stack__swatch--eco{border:1px solid rgba(255,255,255,.6)}
.gcp-platform-stack__row{position:relative;border-top:1px solid rgba(255,255,255,.16);transition:background .2s var(--ease)}
.gcp-platform-stack__row:last-child{border-bottom:1px solid rgba(255,255,255,.16)}
.gcp-platform-stack__row::before{content:"";position:absolute;left:0;top:-1px;bottom:-1px;width:3px;background:#D4AF37;transform:scaleY(0);transform-origin:bottom;transition:transform .25s var(--ease)}
.gcp-platform-stack__row:hover{background:rgba(255,255,255,.035)}
.gcp-platform-stack__row:hover::before{transform:scaleY(1)}
.gcp-platform-stack__row > div{padding:28px 20px}
.gcp-platform-stack__layer-cell{display:grid;grid-template-columns:14px minmax(0,1fr);gap:18px;padding-left:16px !important}
.gcp-platform-stack__pos{display:flex;flex-direction:column;gap:3px;padding-top:4px}
.gcp-platform-stack__pos i{display:block;height:7px;background:rgba(255,255,255,.16)}
.gcp-platform-stack__pos i.is-on{background:#D4AF37;box-shadow:0 0 8px rgba(212,175,55,.7)}
.gcp-platform-stack__idx{display:block;margin-bottom:6px;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#D4AF37}
.gcp-platform-stack__name{margin:0 0 8px;font-family:var(--display);font-weight:400;font-size:24px;line-height:1.15;color:#FFFFFF}
.gcp-platform-stack__purpose{margin:0;font-size:15px;line-height:1.45;color:rgba(255,255,255,.78)}
.gcp-platform-stack__chips{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.gcp-platform-stack__chips li{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;font-size:13px;line-height:1.2}
.gcp-platform-stack__chips--core li{background:rgba(212,175,55,.16);border:1px solid rgba(212,175,55,.7);font-weight:700;color:#FFFFFF}
.gcp-platform-stack__chips--core li:first-child{background:#D4AF37;border-color:#D4AF37;color:#181818}
.gcp-platform-stack__chips--eco li{border:1px solid rgba(255,255,255,.28);color:rgba(255,255,255,.9)}
.gcp-platform-stack__out{display:flex;align-items:flex-start;gap:10px}
.gcp-platform-stack__out .material-icons{flex:none;font-size:20px;color:#4FB37A;margin-top:1px}
.gcp-platform-stack__out p{margin:0;font-size:15px;line-height:1.45;color:#FFFFFF}
.gcp-platform-stack__built-in{display:flex;align-items:center;gap:10px;margin:20px 0 0;font-size:15px;color:rgba(255,255,255,.86)}
.gcp-platform-stack__built-in .material-icons{font-size:20px;color:#D4AF37}

.gcp-platform-stack__foot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:24px 48px;align-items:start;margin-top:48px}
.gcp-platform-stack__projects-label{display:block;margin:0 0 16px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#D4AF37}
.gcp-platform-stack__projects{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.gcp-platform-stack__projects li{display:inline-flex;align-items:center;min-height:36px;padding:8px 14px;background:rgba(255,255,255,.08);font-size:15px;line-height:1.2;color:#FFFFFF}
.gcp-platform-stack__migrate{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:start;padding:24px;border:1px solid rgba(255,255,255,.22);border-top:3px solid #D4AF37;color:#FFFFFF;text-decoration:none;transition:background .2s var(--ease)}
.gcp-platform-stack__migrate:hover{background:rgba(255,255,255,.05)}
.gcp-platform-stack__migrate .material-icons{font-size:28px;color:#D4AF37}
.gcp-platform-stack__migrate b{display:block;margin-bottom:6px;font-family:var(--display);font-weight:400;font-size:20px;line-height:1.2}
.gcp-platform-stack__migrate p{margin:0;font-size:15px;line-height:1.45;color:rgba(255,255,255,.82)}
.gcp-platform-stack__migrate em{display:inline-block;margin-top:12px;font-style:normal;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#F3CD29}

@media (max-width:1180px){
  .gcp-platform-stack__thead,.gcp-platform-stack__row{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr) minmax(0,1.2fr)}
  .gcp-platform-stack__thead > span:last-child{display:none}
  .gcp-platform-stack__out{grid-column:2 / -1;padding-top:0 !important;background:none}
  .gcp-platform-stack__row > .gcp-platform-stack__core{grid-row:1}
  .gcp-platform-stack__layer-cell{grid-row:1 / span 2}
}
@media (max-width:980px){
  .gcp-platform-stack__title,.gcp-platform-stack__desc{width:100%;max-width:100%}
  .gcp-platform-stack__foot{grid-template-columns:1fr}
}
@media (max-width:760px){
  .gcp-platform-stack__title{font-size:36px !important}
  .gcp-platform-stack__thead{display:none}
  .gcp-platform-stack__row{grid-template-columns:minmax(0,1fr)}
  .gcp-platform-stack__layer-cell{grid-row:auto}
  .gcp-platform-stack__row > div{padding:14px 16px}
  .gcp-platform-stack__row > .gcp-platform-stack__layer-cell{padding-top:24px}
  .gcp-platform-stack__out{grid-column:1;padding-bottom:24px !important}
  .gcp-platform-stack__core,.gcp-platform-stack__eco{display:flex;flex-direction:column;gap:10px}
  .gcp-platform-stack__core::before,.gcp-platform-stack__eco::before{content:attr(data-label);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#D4AF37}
}

/* ==========================================================================
   MIGRATION: gcp-slice-migration (bespoke)
   Same grid, two fill speeds; delivery methodology board; slice types;
   benefits.
   ========================================================================== */
.gcp-slice-migration{width:100%;padding:var(--section-padding-y) 0;background:#FAF9F6;border-top:1px solid #E6DFD4;color:#181818;font-family:var(--body);scroll-margin-top:var(--hdr-h)}
.gcp-slice-migration,.gcp-slice-migration *{box-sizing:border-box}
.gcp-slice-migration__in{width:var(--shell);margin:0 auto}
.gcp-slice-migration__kicker{display:block;margin:0 0 20px;color:#B8860B}
.gcp-slice-migration__title{width:var(--title-description-width);max-width:var(--title-description-width);margin:0;font-family:var(--display);font-weight:500;font-size:50px;line-height:var(--lh-tight);color:#0D5630;text-wrap:pretty;overflow-wrap:anywhere}
.gcp-slice-migration__desc{width:var(--title-description-width);max-width:var(--title-description-width);margin:24px 0 0;font-size:18px;line-height:var(--lh-copy);color:#181818;text-wrap:pretty}

.gcp-slice-migration__block{margin-top:96px}
.gcp-slice-migration__block:first-of-type{margin-top:64px}
.gcp-slice-migration__block-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 48px;align-items:end;margin-bottom:32px;padding-bottom:20px;border-bottom:2px solid #181818}
.gcp-slice-migration__block-num{display:block;margin-bottom:10px;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#B8860B}
.gcp-slice-migration__block-title{margin:0;font-family:var(--display);font-weight:400;font-size:32px;line-height:1.15;color:#0D5630;text-wrap:pretty}
.gcp-slice-migration__block-copy{margin:0;font-size:16px;line-height:1.55;color:#595959;text-wrap:pretty}

/* A. two shapes */
.gcp-slice-migration__shapes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.gcp-slice-migration__shape{display:flex;flex-direction:column;padding:32px;background:#FFFFFF;border:1px solid #E6DFD4;border-top:4px solid #C5B9AB}
.gcp-slice-migration__shape--legacy{background:#F2F1EF;border-color:#DDDAD5;border-top-color:#B5B0A8}
.gcp-slice-migration__shape--legacy h3{color:#5E5B57 !important}
.gcp-slice-migration__shape--legacy p{color:#6B6863 !important}
.gcp-slice-migration__shape--legacy .gcp-slice-migration__row-label{color:#6B6863}
.gcp-slice-migration__shape--legacy .gcp-slice-migration__cell{background:#ECEAE7;border-color:#DDDAD5}
.gcp-slice-migration__shape--legacy .gcp-slice-migration__cell[data-state="done"]{background:#C4C0BA;border-color:#C4C0BA}
.gcp-slice-migration__shape--legacy .gcp-slice-migration__cell[data-state="now"]{background:#9C978F;border-color:#8A857E}
.gcp-slice-migration__shape--legacy .gcp-slice-migration__cell[data-state="live"]{background:#7D7871;border-color:#7D7871}
.gcp-slice-migration__shape--legacy .gcp-slice-migration__col-label{color:#6B6863}
.gcp-slice-migration__shape--legacy .gcp-slice-migration__col-label b{background:#F2F1EF;border-color:#DDDAD5;color:#6B6863}
.gcp-slice-migration__shape--legacy .gcp-slice-migration__col-label b[data-live="true"]{background:#7D7871;border-color:#7D7871;color:#FFFFFF}
.gcp-slice-migration__row.gcp-slice-migration__row--wave{grid-template-columns:132px minmax(0,1fr)}
.gcp-slice-migration__wave{position:relative;display:block;height:22px;background:#ECEAE7;border:1px solid #DDDAD5;overflow:hidden}
.gcp-slice-migration__wave i{position:absolute;left:0;top:0;bottom:0;display:block;background:#C4C0BA;transition:width .16s linear}
.gcp-slice-migration__wave[data-state="now"] i{background:#9C978F}
.gcp-slice-migration__wave[data-state="live"] i{background:#7D7871}
.gcp-slice-migration__legacy-status .gcp-slice-migration__col-label{flex-direction:row;justify-content:center;gap:12px}
@media (max-width:700px){.gcp-slice-migration__row.gcp-slice-migration__row--wave{grid-template-columns:84px minmax(0,1fr)}}
.gcp-slice-migration__shape--slice{border:2px solid #D4AF37;border-top:6px solid #D4AF37;box-shadow:0 18px 40px -24px rgba(13,86,48,.45)}
.gcp-slice-migration__shape--slice h3{display:flex;align-items:center;gap:10px}
.gcp-slice-migration__tick{font-size:30px;color:#1F8A4C}
.gcp-slice-migration__shape--slice .gcp-slice-migration__cell[data-state="now"]{background:#F3CD29;border-color:#D4AF37}
.gcp-slice-migration__shape--slice .gcp-slice-migration__col-label b[data-live="true"]{background:#1F8A4C;border-color:#1F8A4C;color:#FFFFFF}
.gcp-slice-migration__shape--slice .gcp-slice-migration__col-label b[data-live="true"]::before{content:"✓ "}
.gcp-slice-migration__shape-eyebrow{margin:0 0 10px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#83735F}
.gcp-slice-migration__shape--slice .gcp-slice-migration__shape-eyebrow{color:#B8860B}
.gcp-slice-migration__shape h3{margin:0 0 10px;font-family:var(--display);font-weight:400;font-size:26px;line-height:1.15;color:#0D5630}
.gcp-slice-migration__shape p{margin:0;font-size:16px;line-height:1.5;color:#595959}
.gcp-slice-migration__grid{display:flex;flex-direction:column;gap:4px;margin-top:28px}
.gcp-slice-migration__row,.gcp-slice-migration__col-labels{display:grid;grid-template-columns:132px repeat(4,minmax(0,1fr));gap:6px}
.gcp-slice-migration__row-label{display:flex;align-items:center;min-height:22px;font-size:12px;font-weight:700;line-height:1.1;letter-spacing:.06em;text-transform:uppercase;color:#595959}
.gcp-slice-migration__cell{height:22px;background:#FAF9F6;border:1px solid #E6DFD4;transition:background .18s ease,border-color .18s ease}
.gcp-slice-migration__cell[data-state="done"]{background:#C5B9AB;border-color:#C5B9AB}
.gcp-slice-migration__shape--slice .gcp-slice-migration__cell[data-state="done"]{background:#4E9A6B;border-color:#4E9A6B}
.gcp-slice-migration__cell[data-state="live"]{background:#1F8A4C;border-color:#1F8A4C}
.gcp-slice-migration__cell[data-state="now"]{background:#D4AF37;border-color:#B8860B}
.gcp-slice-migration__col-label{display:flex;flex-direction:column;align-items:center;gap:6px;padding-top:6px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#595959;text-align:center}
.gcp-slice-migration__col-label b{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:3px 6px;font-size:10px;letter-spacing:.12em;color:#595959;border:1px solid #E6DFD4;background:#FFFFFF}
.gcp-slice-migration__col-label b[data-live="true"]{color:#181818;background:#D4AF37;border-color:#D4AF37}
.gcp-slice-migration__readout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:24px;background:#E6DFD4;border:1px solid #E6DFD4}
.gcp-slice-migration__readout div{padding:14px 16px;background:#FFFFFF}
.gcp-slice-migration__readout span{display:block;margin-bottom:4px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#83735F}
.gcp-slice-migration__readout b{font-family:var(--display);font-weight:400;font-size:24px;line-height:1.1;color:#0D5630}
.gcp-slice-migration__note{margin:16px 0 0 !important;font-size:14px !important}

.gcp-slice-migration__controls{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:24px;padding:16px 20px;background:#FFFFFF;border:1px solid #E6DFD4}
.gcp-slice-migration__play{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;background:#0D5630;color:#FFFFFF;font-family:var(--body);font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.gcp-slice-migration__play:hover{background:#426653}
.gcp-slice-migration__play .material-icons{font-size:20px;color:#FFFFFF}
.gcp-slice-migration__scrub{flex:1 1 240px;display:flex;align-items:center;gap:16px}
.gcp-slice-migration__scrub input{flex:1;accent-color:#B8860B;min-height:44px}
.gcp-slice-migration__scrub span{flex:none;min-width:150px;font-size:14px;font-weight:700;color:#181818}
.gcp-slice-migration__legend{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#595959}
.gcp-slice-migration__legend span{display:inline-flex;align-items:center;gap:8px}
.gcp-slice-migration__legend i{display:block;width:12px;height:12px;border:1px solid #E6DFD4}

/* B. delivery methodology */
.gcp-slice-migration__method{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);border:1px solid #E6DFD4;background:#FFFFFF}
.gcp-slice-migration__method-steps{display:grid;align-content:start;gap:24px;margin:0;padding:32px;list-style:none;background:#F6EFD7;border-right:1px solid #E6DFD4}
.gcp-slice-migration__step{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;align-items:start}
.gcp-slice-migration__step-n{display:grid;place-items:center;width:48px;height:48px;border:2px solid #D4AF37;background:#FFFFFF;font-family:var(--display);font-size:18px;color:#8A6508}
.gcp-slice-migration__step[data-lane="wip"] .gcp-slice-migration__step-n{border-color:#2F6690;color:#2F6690}
.gcp-slice-migration__step[data-lane="done"] .gcp-slice-migration__step-n{border-color:#1F8A4C;color:#16683A}
.gcp-slice-migration__step h4{margin:4px 0 6px;font-family:var(--display);font-weight:400;font-size:22px;line-height:1.15;color:#0D5630}
.gcp-slice-migration__step p{margin:0;font-size:15px;line-height:1.5;color:#595959}
.gcp-slice-migration__board-wrap{display:flex;flex-direction:column;padding:32px}
.gcp-slice-migration__board{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr);align-items:stretch}
.gcp-slice-migration__flow{display:grid;place-items:center}
.gcp-slice-migration__flow .material-icons{font-size:22px;color:#B8860B}
.gcp-slice-migration__lane{display:flex;flex-direction:column;gap:12px;padding:16px;background:#FAF9F6;border:1px solid #E6DFD4;border-top:4px solid #D4AF37}
.gcp-slice-migration__lane[data-lane="wip"]{border-top-color:#2F6690;background:#F3F7FB}
.gcp-slice-migration__lane[data-lane="done"]{border-top-color:#1F8A4C;background:#F1F8F3}
.gcp-slice-migration__lane-head span{display:block;margin-bottom:6px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#8A6508}
.gcp-slice-migration__lane[data-lane="wip"] .gcp-slice-migration__lane-head span{color:#2F6690}
.gcp-slice-migration__lane[data-lane="done"] .gcp-slice-migration__lane-head span{color:#16683A}
.gcp-slice-migration__lane-head h4{margin:0;font-family:var(--display);font-weight:400;font-size:22px;line-height:1.15;color:#181818}
.gcp-slice-migration__lane-head small{display:block;margin-top:4px;font-size:13px;color:#595959}
.gcp-slice-migration__items{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}
.gcp-slice-migration__item{display:grid;gap:3px;padding:10px 12px;background:#FFFFFF;border:1px solid #E6DFD4;border-left:5px solid #D4AF37}
.gcp-slice-migration__item b{font-size:14px;font-weight:700;line-height:1.3;color:#181818}
.gcp-slice-migration__item small{font-size:12px;line-height:1.3;color:#595959}
.gcp-slice-migration__item[data-kind="gold"]{background:#FBF6E6;border-left-color:#D4AF37}
.gcp-slice-migration__item[data-kind="grey"]{background:#F4F3F1;border-left-color:#B5B0A8}
.gcp-slice-migration__item[data-kind="green"]{background:#EEF5F0;border-left-color:#8DB59C}
.gcp-slice-migration__item[data-kind="wip"]{background:#E8F0F8;border-color:#C9DAEA;border-left-color:#2F6690}
.gcp-slice-migration__progress{display:block;height:5px;margin-top:6px;background:#C9DAEA}
.gcp-slice-migration__progress i{display:block;height:100%;background:#2F6690}
.gcp-slice-migration__item[data-kind="done"]{grid-template-columns:22px minmax(0,1fr);column-gap:10px;background:#E3F1E8;border-color:#BFDDC9;border-left-color:#1F8A4C}
.gcp-slice-migration__item[data-kind="done"] .material-icons{grid-row:1 / span 2;font-size:22px;color:#1F8A4C}
.gcp-slice-migration__item[data-kind="done"] small{color:#16683A;font-weight:700}
.gcp-slice-migration__loop{display:flex;align-items:center;gap:10px;margin:24px 0 0;padding-top:20px;border-top:1px solid #E6DFD4;font-size:15px;line-height:1.45;color:#181818}
.gcp-slice-migration__loop .material-icons{font-size:22px;color:#B8860B}

/* D. slice types */
.gcp-slice-migration__types{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.gcp-slice-migration__type{display:grid;grid-template-columns:20px minmax(0,1fr);gap:20px;padding:28px 24px;background:#FFFFFF;border:1px solid #E6DFD4;border-top:3px solid #426653}
.gcp-slice-migration__type-bar{display:flex;flex-direction:column;gap:2px;padding-top:4px}
.gcp-slice-migration__type-bar i{display:block;height:7px;background:#426653}
.gcp-slice-migration__type-bar i:last-child{background:#D4AF37}
.gcp-slice-migration__type span{display:block;margin-bottom:10px;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#B8860B}
.gcp-slice-migration__type h4{margin:0 0 10px;font-family:var(--display);font-weight:400;font-size:22px;line-height:1.15;color:#0D5630}
.gcp-slice-migration__type p{margin:0;font-size:15px;line-height:1.5;color:#595959}

/* E. benefits */
.gcp-slice-migration__benefits{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:32px 56px;margin-top:96px;padding:56px 48px;background:#0D5630;color:#FFFFFF}
.gcp-slice-migration__benefits h3{margin:0;font-family:var(--display);font-weight:400;font-size:34px;line-height:1.15;color:#FFFFFF;text-wrap:pretty}
.gcp-slice-migration__benefit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px;margin:0;padding:0;list-style:none}
.gcp-slice-migration__benefit-list li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:14px;align-items:start;padding:20px 0;border-top:1px solid rgba(255,255,255,.2)}
.gcp-slice-migration__benefit-list .material-icons{font-size:28px;color:#F3CD29}
.gcp-slice-migration__benefit-list b{display:block;margin:2px 0 4px;font-family:var(--display);font-weight:400;font-size:21px;line-height:1.2;color:#FFFFFF}
.gcp-slice-migration__benefit-list p{margin:0;font-size:15px;line-height:1.45;color:#FFFFFF}
.gcp-slice-migration__close{margin:48px 0 0;padding-top:24px;border-top:3px solid #D4AF37;font-family:var(--display);font-weight:400;font-size:28px;line-height:1.25;color:#0D5630;max-width:30em;text-wrap:pretty}

@media (max-width:1100px){
  .gcp-slice-migration__types{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gcp-slice-migration__method{grid-template-columns:1fr}
  .gcp-slice-migration__method-steps{grid-template-columns:repeat(2,minmax(0,1fr));border-right:0;border-bottom:1px solid #E6DFD4}
}
@media (max-width:980px){
  .gcp-slice-migration__title,.gcp-slice-migration__desc{width:100%;max-width:100%}
  .gcp-slice-migration__shapes{grid-template-columns:1fr}
  .gcp-slice-migration__block-head{grid-template-columns:1fr}
  .gcp-slice-migration__benefits{grid-template-columns:1fr;padding:40px 32px}
}
@media (max-width:700px){
  .gcp-slice-migration__title{font-size:36px !important}
  .gcp-slice-migration__shape,.gcp-slice-migration__method-steps,.gcp-slice-migration__board-wrap{padding:24px 18px}
  .gcp-slice-migration__method-steps{grid-template-columns:1fr}
  .gcp-slice-migration__board{grid-template-columns:1fr;row-gap:4px}
  .gcp-slice-migration__flow .material-icons{transform:rotate(90deg)}
  .gcp-slice-migration__benefit-list{grid-template-columns:1fr}
  .gcp-slice-migration__row,.gcp-slice-migration__col-labels{grid-template-columns:84px repeat(4,minmax(0,1fr));gap:4px}
  .gcp-slice-migration__row-label{font-size:10px;letter-spacing:.02em}
  .gcp-slice-migration__col-label{font-size:9px;letter-spacing:.02em}
  .gcp-slice-migration__col-label b{font-size:9px;padding:2px 3px;letter-spacing:.04em}
  .gcp-slice-migration__types{grid-template-columns:1fr}
  .gcp-slice-migration__close{font-size:22px}
  .gcp-slice-migration__scrub span{min-width:0}
}

