/* Exact reference layout scoped to the workflow detail page only. Shared header/footer remain untouched. */
.link-stage-page{--red:#bd1023;--navy:#10223b;--text:#24344c;--light:#f7f8fa;font-family:Cairo,Tahoma,sans-serif;color:var(--navy);background:#fff;direction:inherit}
.link-stage-page *, .link-stage-page *::before, .link-stage-page *::after{box-sizing:border-box}
.link-stage-page a{color:inherit;text-decoration:none;cursor:pointer}
.link-stage-page button{cursor:pointer;font:inherit}
.link-stage-page .wrap{max-width:1320px;margin:auto;padding-inline:32px}
.link-stage-page .hero-content{padding-inline-start:49%;padding-left:0}
.link-stage-page[dir=ltr] .hero-content{padding-inline-start:0;padding-inline-end:49%;text-align:left;align-items:flex-end}
.link-stage-page[dir=ltr] .hero-photo{left:auto;right:0;transform:scaleX(-1)}
.link-stage-page[dir=ltr] .hero-heading{flex-direction:row-reverse}
.link-stage-page[dir=ltr] .hero h1 em{display:block}
.link-stage-page .gallery figure.is-hidden{display:none}
.link-stage-page .gallery figure img{display:block}
.link-stage-page .gallery button:disabled{opacity:.5}
.link-stage-page .gallery .dots button{width:14px;height:7px;background:#d5d8dd;border:0;border-radius:10px;padding:0}
.link-stage-page .gallery .dots button.on{background:var(--red)}
.link-stage-page .gallery .dots{display:flex}
.link-stage-page .stage-video-dialog{border:0;border-radius:12px;padding:48px 12px 12px;background:#102238;width:min(900px,95vw)}
.link-stage-page .stage-video-dialog::backdrop{background:#000b}
.link-stage-page .stage-video-dialog iframe{width:100%;aspect-ratio:16/9;border:0}
.link-stage-page .stage-video-dialog>button{position:absolute;right:12px;top:4px;border:0;background:transparent;color:#fff;font-size:30px}
.link-stage-page [data-aos]{will-change:transform,opacity}
@media(max-width:1050px){.link-stage-page .hero-content{padding-inline-start:42%}}
@media(max-width:760px){.link-stage-page .hero-content{padding:15px 22px 30px}.link-stage-page[dir=ltr] .hero-content{padding:15px 22px 30px}}
.link-stage-page *{box-sizing:border-box}
.link-stage-page button,.link-stage-page a{cursor:pointer}
.link-stage-page button{font:inherit}
.link-stage-page a{text-decoration:none;color:inherit}
.link-stage-page .wrap{max-width:1320px;margin:auto;padding-inline:32px}
.link-stage-page .nav nav a.active:after{content:"";position:absolute;bottom:0;right:0;left:0;height:3px;background:var(--red)}
.link-stage-page .hero{height:480px;min-height:0;padding:0;position:relative;display:block;overflow:hidden;background:linear-gradient(125deg,#fff 45%,#f3f5f7);color:var(--navy)}
.link-stage-page .hero:after{content:none}
.link-stage-page .hero-photo{position:absolute;inset:0 auto 0 0;width:58%;background:linear-gradient(0deg,#13243a30,#13243a20),url("../../uploads/media/seed/hero-main.webp") center/cover;clip-path:polygon(0 0,100% 0,68% 100%,0 100%)}
.link-stage-page .hero-photo:after{content:"";position:absolute;left:-40px;bottom:-120px;width:230px;height:470px;background:#b90025a6;transform:rotate(-38deg)}
.link-stage-page .hero-overlay{position:absolute;left:35%;bottom:-80px;width:220px;height:200px;background:#dfe3e955;transform:rotate(45deg)}
.link-stage-page .hero-content{position:relative;height:100%;display:flex;align-items:flex-start;justify-content:flex-start;flex-direction:column;width:100%;padding-top:90px!important;padding-left:49%;text-align:right}
.link-stage-page .crumb{font-size:11px;color:#36445a;font-weight:800;margin-bottom:20px;white-space:nowrap}
.link-stage-page .crumb-separator{display:inline-block;margin-inline:10px}
.link-stage-page .eyebrow{font-size:15px;font-weight:900;color:#ce001d;display:flex;gap:13px;align-items:center}
.link-stage-page .red-line{height:15px;width:4px;background:var(--red);display:inline-block}
.link-stage-page .hero-heading{display:flex;align-items:center;gap:18px;margin:9px 0}
.link-stage-page .hero-icon{border:1px solid #f2dadd;box-shadow:0 2px 15px #ae142c25;background:white;border-radius:15px;padding:16px;color:var(--red);font-size:43px}
.link-stage-page .hero h1{font-size:42px;line-height:1.45;margin:0;font-weight:900;letter-spacing:-1px}
.link-stage-page .hero h1 em{font-style:normal;color:var(--red)}
.link-stage-page .hero h3{font-size:15px;margin:4px 0;font-weight:900}
.link-stage-page .hero p{font-size:13px;line-height:1.9;max-width:570px;margin:0;color:#576174}
.link-stage-page .steps{position:sticky;top:82px;z-index:900;background:#fff;box-shadow:0 2px 20px #1e294015;border-bottom:1px solid #e9ebef}
.link-stage-page .steps.is-fixed{position:fixed;inset:82px 0 auto;width:100%;z-index:900}
.link-stage-page .steps-track{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:92px}
.link-stage-page .step{position:relative;border:0;background:transparent;display:flex;align-items:center;gap:12px;color:#34445d;font-size:12px;font-weight:800;min-width:0;white-space:nowrap}
.link-stage-page .step-icon{height:54px;width:54px;border:1px solid #e5e7eb;box-shadow:0 1px 6px #ddd8;border-radius:50%;display:grid;place-items:center;font-size:22px;color:#4b5c74;flex-shrink:0}
.link-stage-page .step-number{position:absolute;top:-8px;right:44px;font-size:17px}
.link-stage-page .step.current{color:var(--red)}
.link-stage-page .step.current .step-icon{color:var(--red)}
.link-stage-page .step.current .step-number{color:white;background:var(--red);border-radius:50%;width:31px;height:31px;display:grid;place-items:center;right:48px;top:-10px}
.link-stage-page .step.current:after{content:"";position:absolute;bottom:-21px;right:0;left:0;height:4px;background:var(--red)}
.link-stage-page .separator{font-size:15px;color:var(--red)}
.link-stage-page .details{display:grid;grid-template-columns:1fr 1fr;gap:25px 30px;padding-block:30px 22px}
.link-stage-page .description h2{font-size:28px;line-height:1.4;margin:9px 0}
.link-stage-page .description>p{font-size:14px;line-height:1.9;color:#576174;margin:0 0 20px}
.link-stage-page .features{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:15px}
.link-stage-page .features>div{text-align:center;padding:4px 10px;border-left:1px solid #d9dee6;display:flex;flex-direction:column;align-items:center;gap:6px}
.link-stage-page .features>div:last-child{border:0}
.link-stage-page .features i{font-size:27px;color:#d4001e;margin-bottom:6px}
.link-stage-page .features strong{font-size:11px;line-height:1.4}
.link-stage-page .features small{font-size:10px;line-height:1.6;color:#667081}
.link-stage-page .video-card{position:relative;height:338px;border-radius:9px;overflow:hidden;background:#ddd}
.link-stage-page .video-card img{width:100%;height:100%;object-fit:cover}
.link-stage-page .video-card:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#101c2ec9);pointer-events:none}
.link-stage-page .video-badge{position:absolute;top:15px;right:15px;background:var(--red);color:white;padding:5px 11px;border-radius:5px;font-size:12px;z-index:1}
.link-stage-page .play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:64px;height:64px;border:0;background:#fff;border-radius:50%;color:var(--red);font-size:24px;z-index:1;box-shadow:0 4px 20px #0002}
.link-stage-page .video-caption{position:absolute;bottom:12px;right:16px;left:16px;color:white;z-index:1;font-size:12px;font-weight:800;display:flex;justify-content:space-between}
.link-stage-page .video-caption span{background:#15253dba;border-radius:5px;padding:2px 7px}
.link-stage-page .outputs{background:linear-gradient(135deg,#fff,#fff7f8);border:1px solid #f0e7e9;box-shadow:0 4px 18px #00000009;border-radius:10px;padding:14px 18px;min-height:225px}
.link-stage-page .outputs h3{color:var(--red);font-size:18px;margin:0 0 10px}
.link-stage-page .output-body{display:flex;flex-direction:row;align-items:stretch;gap:22px}
.link-stage-page .output-highlight{width:auto;min-width:150px;background:#fbebed;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:var(--red);text-align:center;font-size:15px;padding:10px}
.link-stage-page .output-highlight i{font-size:36px;margin-bottom:9px}
.link-stage-page .outputs ul{margin:0;padding:0;list-style:none;flex:1}
.link-stage-page .outputs li{font-size:12px;color:#46556a;margin:0 0 8px;display:flex;align-items:flex-start;gap:10px;line-height:1.65}
.link-stage-page .outputs li>i{margin-top:2px;color:#c91429;font-size:15px;flex:0 0 auto}
.link-stage-page .gallery{position:relative}
.link-stage-page .gallery-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.link-stage-page .gallery figure{margin:0;text-align:center;font-size:11px;font-weight:800;cursor:zoom-in;outline-offset:4px}
.link-stage-page .gallery img{width:100%;height:190px;object-fit:cover;border-radius:8px}
.link-stage-page .gallery-prev,.link-stage-page .gallery-next{position:absolute;top:70px;border:0;border-radius:50%;width:36px;height:36px;background:white;box-shadow:0 2px 12px #0002}
.link-stage-page .gallery-prev{right:-16px}
.link-stage-page .gallery-next{left:-16px}
.link-stage-page .gallery--compact .gallery-prev,.link-stage-page .gallery--compact .gallery-next,.link-stage-page .gallery--compact .dots{display:none}
.link-stage-page .workflow-media-gallery{position:relative}
.link-stage-page .workflow-media-gallery .gallery-row{display:block}
.link-stage-page .workflow-media-gallery .gallery-row>.video-card{display:block;height:338px}
.link-stage-page .workflow-media-gallery .gallery-row>.video-card.is-hidden{display:none}
.link-stage-page .workflow-media-gallery .gallery-row>.video-card img{width:100%;height:100%;border-radius:9px}
.link-stage-page .workflow-media-gallery .gallery-prev,.link-stage-page .workflow-media-gallery .gallery-next{top:calc(50% - 18px);z-index:2}
.link-stage-page .workflow-media-gallery .gallery-prev{right:12px}
.link-stage-page .workflow-media-gallery .gallery-next{left:12px}
.link-stage-page .workflow-media-thumbnails{display:flex;gap:10px;margin-top:12px;padding:2px;overflow-x:auto;scrollbar-width:thin}
.link-stage-page .workflow-media-thumbnails button{flex:0 0 104px;height:72px;padding:3px;border:2px solid transparent;border-radius:9px;background:#fff;overflow:hidden;box-shadow:0 2px 9px #00000014;opacity:.72;transition:border-color .2s ease,opacity .2s ease,transform .2s ease}
.link-stage-page .workflow-media-thumbnails button:hover,.link-stage-page .workflow-media-thumbnails button.is-active{border-color:var(--red);opacity:1;transform:translateY(-1px)}
.link-stage-page .workflow-media-thumbnails img{display:block;width:100%;height:100%;object-fit:cover;border-radius:5px}
.link-stage-page .dots{display:flex;justify-content:center;gap:8px;margin-top:15px}
.link-stage-page .dots span{height:7px;width:14px;background:#d5d8dd;border-radius:10px}
.link-stage-page .dots .on{background:var(--red)}
.link-stage-page .bottom{background:#f5f6f8}
.link-stage-page .bottom-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:25px;align-items:stretch;padding-left:0}
.link-stage-page .sectors{padding:20px 0}
.link-stage-page .sector-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}
.link-stage-page .sector-cards>div{background:#fff;border-radius:6px;min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:12px;line-height:1.5}
.link-stage-page .sector-cards i{font-size:29px;color:var(--red);margin-bottom:10px}
.link-stage-page .value{background:linear-gradient(90deg,#a00c1dcb,#a90e23ed),url("../../uploads/media/seed/project-09.webp") center/cover;color:white;padding:20px 55px 20px 35px;clip-path:polygon(0 0,88% 0,100% 50%,88% 100%,0 100%);text-align:center}
.link-stage-page .value h2{font-size:25px;margin:0 0 7px}
.link-stage-page .value p{font-size:13px;line-height:1.7;margin:0 0 10px}
.link-stage-page .value a{display:inline-block;background:white;color:var(--red);padding:5px 22px;border-radius:5px;font-size:12px;font-weight:900}
.link-stage-page .value a i{margin-right:15px}
.link-stage-page .toast{position:fixed;bottom:20px;left:20px;background:#102238;color:white;padding:12px 20px;border-radius:8px;z-index:20;opacity:0;transform:translateY(20px);transition:.3s;pointer-events:none}
.link-stage-page .toast.show{opacity:1;transform:translateY(0)}
@media(max-width:1050px){.link-stage-page .nav nav{gap:14px;font-size:11px}
.link-stage-page .wrap{padding-inline:22px}
.link-stage-page .hero-content{padding-left:42%}
.link-stage-page .hero h1{font-size:33px}
.link-stage-page .step{font-size:10px;gap:5px}
.link-stage-page .step-icon{height:42px;width:42px}
.link-stage-page .step-number{right:33px}
.link-stage-page .step.current .step-number{right:30px}
.link-stage-page .details{gap:20px}
.link-stage-page .features strong{font-size:9px}}
@media(max-width:760px){.link-stage-page .nav{height:65px}
.link-stage-page .steps{top:70px}
.link-stage-page .steps.is-fixed{inset:70px 0 auto}
.link-stage-page .nav nav.open{display:flex}
.link-stage-page .nav-actions .btn{font-size:10px;padding:8px}
.link-stage-page .hero{height:auto;min-height:640px;padding-top:230px}
.link-stage-page .hero-photo{width:100%;height:250px;inset:0 0 auto;clip-path:polygon(0 0,100% 0,100% 80%,0 100%)}
.link-stage-page .hero-content{padding:34px 22px 30px!important;justify-content:flex-start}
.link-stage-page .crumb{width:100%;max-width:100%;display:flex;align-items:center;flex-wrap:wrap;gap:5px 7px;white-space:normal;font-size:10px;line-height:1.7;margin-bottom:18px;padding:8px 10px;background:#fff;border:1px solid #e8ebf0;border-radius:8px;box-shadow:0 3px 12px #10223b0a;overflow:hidden}
.link-stage-page .crumb a,.link-stage-page .crumb-current{min-width:0;max-width:100%;overflow-wrap:anywhere}
.link-stage-page .crumb-current{color:var(--red)}
.link-stage-page .crumb-separator{margin:0;color:#8a94a3;flex:0 0 auto}
.link-stage-page .hero h1{font-size:29px}
.link-stage-page .hero-icon{font-size:29px;padding:12px}
.link-stage-page .hero p{font-size:12px}
.link-stage-page .steps-track{overflow-x:auto;justify-content:flex-start;gap:12px;padding-block:15px}
.link-stage-page .step{min-width:132px}
.link-stage-page .step.current:after{bottom:-14px}
.link-stage-page .separator{flex-shrink:0}
.link-stage-page .details{grid-template-columns:1fr}
.link-stage-page .description{order:1}
.link-stage-page .media{order:2}
.link-stage-page .gallery{order:3}
.link-stage-page .outputs{order:4}
.link-stage-page .features{grid-template-columns:repeat(2,1fr);row-gap:18px}
.link-stage-page .features>div:nth-child(2){border:0}
.link-stage-page .video-card{height:260px}
.link-stage-page .output-body{flex-direction:column;gap:18px}
.link-stage-page .output-highlight{width:100%;min-width:0;min-height:132px;padding:18px}
.link-stage-page .outputs ul{width:100%;display:grid;gap:9px}
.link-stage-page .outputs li{margin:0}
.link-stage-page .gallery-row{grid-template-columns:minmax(0,1fr);width:100%}
.link-stage-page .gallery figure{width:100%;min-width:0}
.link-stage-page .gallery img{width:100%;height:230px;object-fit:cover;object-position:center}
.link-stage-page .workflow-media-gallery .gallery-row>.video-card{height:260px}
.link-stage-page .gallery--compact .gallery-prev,.link-stage-page .gallery--compact .gallery-next{display:grid}
.link-stage-page .gallery--compact .dots{display:flex}
.link-stage-page .bottom-inner{grid-template-columns:1fr;padding-left:22px}
.link-stage-page .sector-cards{grid-template-columns:repeat(2,1fr)}
.link-stage-page .value{clip-path:none;margin-inline:-22px;padding:22px}
.link-stage-page .description h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){}

.link-stage-page .ws-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.link-stage-page .ws-project-grid a{display:flex;align-items:center;gap:18px;background:#fff;border:1px solid #e8e8ec;border-radius:10px;overflow:hidden;padding:10px}.link-stage-page .ws-project-grid img{width:130px;height:96px;object-fit:cover;border-radius:7px}.link-stage-page .ws-pager a{border:1px solid #e5e7eb;border-radius:7px;padding:12px 20px;color:var(--red)}@media(max-width:760px){.link-stage-page .ws-project-grid{grid-template-columns:1fr}}

/* Bilingual workflow: fix legacy hard-coded right alignment and hero padding. */
.link-stage-page[dir="ltr"] .hero-content {
  padding-left:0!important; padding-right:49%!important;
  text-align:left!important; align-items:flex-start!important;
}
.link-stage-page[dir="ltr"] .hero-heading {flex-direction:row;}
.link-stage-page[dir="ltr"] .description,
.link-stage-page[dir="ltr"] .outputs,
.link-stage-page[dir="ltr"] .bottom .value {direction:ltr;text-align:left;}
.link-stage-page[dir="ltr"] .step-number {right:auto;left:44px;}
.link-stage-page[dir="ltr"] .step.current .step-number {right:auto;left:48px;}
@media(max-width:760px) {
  .link-stage-page[dir="ltr"] .hero-content {padding:34px 22px 30px!important;}
  .link-stage-page .steps,
  .link-stage-page .steps.is-fixed {width:100%;max-width:100vw;overflow:hidden;}
  .link-stage-page .steps-track {
    width:100%;max-width:100%;min-height:0;
    display:flex;align-items:stretch;justify-content:flex-start;
    gap:10px; padding:12px 16px 15px;
    overflow-x:auto;overflow-y:hidden;
    scroll-snap-type:x proximity;scroll-padding-inline:16px;
    -webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;
    scrollbar-width:thin;scrollbar-color:#b7bfcd transparent;
  }
  .link-stage-page .step {
    flex:0 0 142px;min-width:0;min-height:84px;
    display:grid;grid-template-columns:34px minmax(0,1fr);
    grid-template-rows:20px auto;align-content:center;
    column-gap:8px;row-gap:4px;padding:12px 9px;
    border:1px solid #e4e8ee;border-radius:12px;background:#fff;
    box-shadow:0 3px 10px rgba(16,34,59,.05);
    scroll-snap-align:center;white-space:normal;
    font-size:10px;line-height:1.35;
  }
  .link-stage-page .step .step-icon {
    grid-row:1 / 3;grid-column:1;
    width:32px;height:32px;font-size:15px;
    box-shadow:none;align-self:center;
  }
  .link-stage-page .step .step-number,
  .link-stage-page .step.current .step-number {
    position:static;grid-row:1;grid-column:2;
    width:auto;height:auto;display:block;
    background:none;border-radius:0;color:#7a8495;
    font-size:11px;line-height:1.3;
  }
  .link-stage-page .step.current {
    border-color:#c82338;background:#fff7f8;color:#b2192c;
    box-shadow:0 4px 14px rgba(172,25,42,.11);
  }
  .link-stage-page .step.current .step-number {color:#b2192c;}
  .link-stage-page .step>span:last-child {
    grid-column:2;grid-row:2;white-space:normal;
    overflow-wrap:break-word;min-width:0;
  }
  .link-stage-page .step.current:after {content:none;}
  .link-stage-page .steps-track>.separator {display:none;}
}

/* All workflow stages visible on narrow devices, no clipped horizontal rail. */
@media(max-width:760px) {
 .link-stage-page .steps, .link-stage-page .steps.is-fixed {
   width:100%!important;max-width:100%!important;overflow:visible!important;
 }
 .link-stage-page .steps-track {
   display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
   gap:6px!important;align-items:stretch!important;justify-content:stretch!important;
   width:100%!important;max-width:100%!important;overflow:visible!important;
   padding:8px 10px!important;min-height:0!important;scroll-snap-type:none!important;
 }
 .link-stage-page .step {
   display:grid!important;grid-template-columns:24px minmax(0,1fr)!important;
   grid-template-rows:14px auto!important;column-gap:6px!important;row-gap:1px!important;
   flex:none!important;min-width:0!important;width:auto!important;min-height:47px!important;
   padding:5px 7px!important;border-radius:9px!important;gap:1px 6px!important;
   font-size:9px!important;line-height:1.25!important;white-space:normal!important;box-shadow:none!important;
 }
 .link-stage-page .step .step-icon {grid-row:1/3!important;grid-column:1!important;width:24px!important;height:24px!important;font-size:12px!important;}
 .link-stage-page .step .step-number,.link-stage-page .step.current .step-number {
   position:static!important;grid-row:1!important;grid-column:2!important;font-size:9px!important;
   height:auto!important;width:auto!important;line-height:1.1!important;display:block!important;
   background:transparent!important;color:inherit!important;
 }
 .link-stage-page .step>span:last-child {grid-row:2!important;grid-column:2!important;display:block!important;overflow-wrap:anywhere!important;font-size:9px!important;}
 .link-stage-page .step:last-of-type:nth-child(odd) {grid-column:1/-1!important;}
 .link-stage-page .steps-track>.separator {display:none!important;}
 .link-stage-page .step.current:after {display:none!important;}
}

/* LINK mobile workflow journey — approved two-row, seven-stage reference design.
   Desktop navigation and the CMS stage data remain unchanged. */
@media (max-width:760px) {
  .link-stage-page .steps,
  .link-stage-page .steps.is-fixed {
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    background:#fff;
    box-shadow:0 5px 22px rgba(16,34,59,.075);
  }
  .link-stage-page .steps-track {
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,auto)!important;
    align-items:stretch!important;
    justify-content:stretch!important;
    gap:12px 5px!important;
    padding:16px 12px 15px!important;
    width:100%!important;
    max-width:520px!important;
    min-height:0!important;
    margin-inline:auto!important;
    overflow:visible!important;
    scroll-snap-type:none!important;
    direction:inherit;
  }
  .link-stage-page .steps-track > .separator {display:none!important;}
  .link-stage-page .step {
    grid-column:auto!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:5px!important;
    width:100%!important;
    min-width:0!important;
    min-height:102px!important;
    padding:13px 3px 9px!important;
    margin:0!important;
    position:relative;
    border:1px solid transparent!important;
    border-radius:13px!important;
    box-shadow:none!important;
    background:transparent!important;
    font-size:10px!important;
    line-height:1.35!important;
    text-align:center!important;
    white-space:normal!important;
    color:#263951;
    isolation:isolate;
  }
  .link-stage-page .step::before {
    content:"";
    position:absolute;
    z-index:-1;
    top:35px;
    inset-inline-start:calc(50% + 24px);
    width:calc(100% - 36px);
    height:2px;
    background:#e1e6ed;
    pointer-events:none;
  }
  .link-stage-page .step:nth-of-type(4)::before,
  .link-stage-page .step:nth-of-type(7)::before {display:none;}
  .link-stage-page .step:nth-of-type(5) {grid-column:1!important;}
  .link-stage-page .step:nth-of-type(6) {grid-column:2!important;}
  .link-stage-page .step:nth-of-type(7) {grid-column:3!important;}
  .link-stage-page .step .step-number,
  .link-stage-page .step.current .step-number {
    position:absolute!important;
    z-index:2;
    top:0!important;
    inset-inline-start:calc(50% + 13px)!important;
    width:23px!important;
    height:23px!important;
    display:grid!important;
    place-items:center!important;
    border-radius:50%!important;
    background:#e8edf3!important;
    color:#31465e!important;
    font-size:11px!important;
    font-weight:900!important;
    line-height:1!important;
  }
  .link-stage-page .step .step-icon {
    display:grid!important;
    grid-row:auto!important;
    grid-column:auto!important;
    place-items:center!important;
    flex:none!important;
    align-self:center!important;
    width:44px!important;
    height:44px!important;
    margin-top:14px;
    padding:0!important;
    border:1px solid #e0e6ed!important;
    border-radius:50%!important;
    background:linear-gradient(145deg,#fff,#edf1f6)!important;
    box-shadow:0 3px 8px rgba(16,34,59,.06)!important;
    color:#415872!important;
    font-size:17px!important;
  }
  .link-stage-page .step > span:last-child {
    display:block!important;
    grid-column:auto!important;
    grid-row:auto!important;
    min-width:0!important;
    max-width:100%;
    margin:0!important;
    font-size:10px!important;
    line-height:1.4!important;
    font-weight:800!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    white-space:normal!important;
    text-wrap:balance;
  }
  .link-stage-page .step.current {
    border-color:#c41f35!important;
    background:linear-gradient(150deg,#fff8f9,#fff0f3)!important;
    color:#b51b30!important;
    box-shadow:0 6px 15px rgba(183,24,46,.10)!important;
  }
  .link-stage-page .step.current .step-icon {
    color:#c01b32!important;
    border-color:#f2c4ce!important;
    background:#ffe9ed!important;
  }
  .link-stage-page .step.current .step-number {
    background:#bf1931!important;
    color:#fff!important;
  }
  .link-stage-page .step.current::after {
    content:""!important;
    display:block!important;
    position:absolute!important;
    bottom:0!important;
    left:35%!important;
    right:35%!important;
    width:auto!important;
    height:3px!important;
    background:#bd1023!important;
    border-radius:5px 5px 0 0;
  }
  .link-stage-page .step:focus-visible {outline:2px solid #ad222b;outline-offset:2px;}
}
@media(max-width:350px){
  .link-stage-page .steps-track {gap:8px 3px!important;padding:12px 6px!important;}
  .link-stage-page .step {padding-inline:1px!important;min-height:100px!important;}
  .link-stage-page .step .step-icon {width:38px!important;height:38px!important;font-size:15px!important;}
  .link-stage-page .step > span:last-child {font-size:9px!important;}
}


/* Mobile workflow: enforce a complete 4 + 3 step grid.
   This overrides the legacy odd-last-item full-row rule that produced 4 + 2 + 1. */
@media (max-width:760px) {
  .link-stage-page nav.steps {inline-size:100%!important;max-inline-size:100%!important;min-inline-size:0!important;}
  .link-stage-page nav.steps > .steps-track {
    inline-size:100%!important;max-inline-size:520px!important;min-inline-size:0!important;
    display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;
    grid-template-rows:repeat(2,minmax(106px,auto))!important;
    grid-auto-rows:auto!important;grid-auto-flow:row!important;
    gap:12px 6px!important;padding:18px 12px!important;
    margin-inline:auto!important;justify-items:stretch!important;align-items:stretch!important;
    overflow:visible!important;
  }
  .link-stage-page nav.steps > .steps-track > a.step {
    inline-size:100%!important;min-inline-size:0!important;max-inline-size:100%!important;
    min-height:106px!important;
    margin:0!important;
    padding:15px 3px 9px!important;
    align-self:stretch!important;
    grid-column:auto!important;grid-row:auto!important;
  }
  .link-stage-page nav.steps > .steps-track > a.step:nth-of-type(1) {grid-column:1!important;grid-row:1!important;}
  .link-stage-page nav.steps > .steps-track > a.step:nth-of-type(2) {grid-column:2!important;grid-row:1!important;}
  .link-stage-page nav.steps > .steps-track > a.step:nth-of-type(3) {grid-column:3!important;grid-row:1!important;}
  .link-stage-page nav.steps > .steps-track > a.step:nth-of-type(4) {grid-column:4!important;grid-row:1!important;}
  .link-stage-page nav.steps > .steps-track > a.step:nth-of-type(5) {grid-column:1!important;grid-row:2!important;}
  .link-stage-page nav.steps > .steps-track > a.step:nth-of-type(6) {grid-column:2!important;grid-row:2!important;}
  .link-stage-page nav.steps > .steps-track > a.step:nth-of-type(7),
  .link-stage-page nav.steps > .steps-track > a.step:last-of-type:nth-child(odd) {
    grid-column:3!important;grid-row:2!important;
  }
  .link-stage-page nav.steps > .steps-track > .separator {display:none!important;}
  .link-stage-page nav.steps > .steps-track > a.step > span:last-child {
    overflow-wrap:anywhere!important;word-break:normal!important;hyphens:auto;
    font-size:clamp(9px,2.65vw,12px)!important;line-height:1.35!important;
  }
}
@media (max-width:360px) {
  .link-stage-page nav.steps > .steps-track {gap:9px 3px!important;padding-inline:7px!important;}
  .link-stage-page nav.steps > .steps-track > a.step {padding-inline:1px!important;}
  .link-stage-page nav.steps > .steps-track > a.step .step-icon {width:36px!important;height:36px!important;}
}

@media (max-width:760px) {
/* One responsive stage navigator: desktop keeps all seven stages readable,
   medium screens use a balanced 4 + 3 grid, and phones show one clear stage
   at a time. This intentionally replaces the previous overlapping grid/rail
   overrides and the three-card mobile carousel. */
.link-stage-page nav.steps,
.link-stage-page nav.steps.is-fixed {
  display:block!important;
  width:100%;
  max-width:100%;
  overflow:hidden;
}
.link-stage-page nav.steps > .steps-track {
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  align-items:stretch;
  gap:6px;
  min-height:104px;
  padding:12px 0;
}
.link-stage-page nav.steps > .steps-track > .separator {display:none;}
.link-stage-page nav.steps > .steps-track > a.step {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-width:0;
  min-height:80px;
  padding:9px 5px;
  border:1px solid transparent;
  border-radius:10px;
  white-space:normal;
  text-align:center;
  line-height:1.35;
}
.link-stage-page nav.steps > .steps-track > a.step .step-number,
.link-stage-page nav.steps > .steps-track > a.step.current .step-number {
  position:static;
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#e8edf3;
  color:#31465e;
  font-size:10px;
  line-height:1;
}
.link-stage-page nav.steps > .steps-track > a.step .step-icon {
  width:35px;
  height:35px;
  border:1px solid #e0e6ed;
  box-shadow:none;
  font-size:15px;
}
.link-stage-page nav.steps > .steps-track > a.step > span:last-child {
  min-width:0;
  font-size:10px;
  overflow-wrap:anywhere;
}
.link-stage-page nav.steps > .steps-track > a.step.current {
  border-color:#e8b9c1;
  background:#fff7f8;
  box-shadow:0 4px 12px rgba(183,24,46,.08);
}
.link-stage-page nav.steps > .steps-track > a.step.current .step-number {
  background:var(--red);
  color:#fff;
}
.link-stage-page nav.steps > .steps-track > a.step.current:after {display:none;}
.link-stage-page .stage-mobile-controls {display:none;}

@media (max-width:1100px) {
  .link-stage-page nav.steps > .steps-track {
    grid-template-columns:repeat(4,minmax(0,1fr));
    max-width:760px;
    margin-inline:auto;
    gap:10px 8px;
    padding-inline:16px;
  }
  .link-stage-page nav.steps > .steps-track > a.step {min-height:92px;}
  .link-stage-page nav.steps > .steps-track > a.step:nth-of-type(5) {grid-column:1;}
  .link-stage-page nav.steps > .steps-track > a.step:nth-of-type(6) {grid-column:2;}
  .link-stage-page nav.steps > .steps-track > a.step:nth-of-type(7) {grid-column:3;}
}

@media (max-width:760px) {
  .link-stage-page nav.steps,
  .link-stage-page nav.steps.is-fixed {display:block!important;}
  .link-stage-page nav.steps > .steps-track {
    display:flex!important;
    width:100%!important;
    inline-size:100%!important;
    max-width:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:10px 18px 14px!important;
    gap:0!important;
    overflow:hidden!important;
    justify-self:stretch!important;
  }
  .link-stage-page nav.steps > .steps-track > a.step {
    display:none!important;
    flex:0 0 100%!important;
    width:100%!important;
    min-height:98px!important;
    padding:12px 14px!important;
    border-color:#e7eaef!important;
    background:#fff!important;
  }
  .link-stage-page nav.steps > .steps-track > a.step.current {
    display:flex!important;
    border-color:#d94155!important;
    background:linear-gradient(160deg,#fffafb,#fff0f2)!important;
  }
  .link-stage-page nav.steps > .steps-track > a.step .step-icon {
    width:38px!important;
    height:38px!important;
    font-size:17px!important;
  }
  .link-stage-page nav.steps > .steps-track > a.step > span:last-child {font-size:12px!important;}
  .link-stage-page .stage-mobile-controls {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:14px;
    padding:0 18px 14px;
    color:#5a687b;
    font-size:11px;
    font-weight:800;
  }
  .link-stage-page .stage-mobile-controls > span {min-width:82px;text-align:center;}
  .link-stage-page .stage-mobile-controls a {
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:34px;
    padding:0 11px;
    border:1px solid #e1e6ed;
    border-radius:18px;
    background:#fff;
    color:#223954;
  }
  .link-stage-page .stage-mobile-controls a:focus-visible {outline:2px solid #ad222b;outline-offset:2px;}
}
}

/* Keep the stage gallery column fixed regardless of thumbnail count. */
.link-stage-page .details{grid-template-columns:repeat(2,minmax(0,1fr))}
.link-stage-page .details > *, .link-stage-page .workflow-media-gallery, .link-stage-page .workflow-media-thumbnails{min-width:0;max-width:100%}
.link-stage-page .workflow-media-gallery .gallery-row > .video-card{width:100%}
@media(max-width:760px){.link-stage-page .details{grid-template-columns:minmax(0,1fr)}}
