
:root{--red:#e30613;--ink:#101316;--ink2:#1a2024;--steel:#606a72;--paper:#f3f4f3;--white:#fff;--line:#d8dcdf;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--paper);line-height:1.55}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.icb-wrap{width:min(calc(100% - 72px),var(--max));margin:auto}.icb-eyebrow{display:flex;align-items:center;gap:12px;text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:800;color:var(--steel)}.icb-eyebrow:before{content:"";width:34px;height:2px;background:var(--red)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3.2rem,7vw,7rem);line-height:.93;letter-spacing:-.055em}h2{font-size:clamp(2.2rem,4vw,4.3rem);line-height:1.02;letter-spacing:-.04em}.icb-lead{font-size:clamp(1.05rem,1.7vw,1.3rem);color:#495159;max-width:760px}.site-header{position:absolute;inset:0 0 auto;z-index:30;color:#fff;border-bottom:1px solid #ffffff38}.icb-nav{height:88px;display:flex;align-items:center;justify-content:space-between}.icb-logo img,.custom-logo{width:var(--icb-logo-width,112px);height:auto;filter:brightness(0) invert(1)}.icb-primary-nav{display:flex;align-items:center;gap:28px;font-weight:700;font-size:.88rem}.icb-primary-nav ul{display:flex;gap:28px;list-style:none;margin:0;padding:0}.icb-language{padding-left:25px;border-left:1px solid #ffffff45}.icb-menu-toggle{display:none}.icb-hero{min-height:850px;display:flex;align-items:flex-end;padding:180px 0 88px;color:#fff;background:linear-gradient(90deg,#070a0ced,#070a0cc2 43%,#070a0c4a 78%,#070a0c85),url('../images/hero.webp') center/cover}.icb-hero-content{position:relative}.icb-hero .icb-eyebrow{color:#d7dcde;margin-bottom:28px}.icb-hero h1{max-width:980px;margin-bottom:28px}.icb-hero p{max-width:680px;color:#dce0e2;font-size:1.12rem}.icb-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.icb-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 22px;background:var(--red);color:#fff;border:1px solid transparent;font-weight:750;cursor:pointer}.icb-button-outline{background:transparent;border-color:#ffffff85}.icb-timeline-section{padding:108px 0;background:var(--ink);color:#fff}.icb-timeline-section .icb-eyebrow{color:#aeb5ba}.icb-timeline-section .icb-lead{color:#cbd0d3}.icb-timeline-tabs{display:grid;grid-template-columns:repeat(8,1fr);position:relative;margin-top:55px}.icb-timeline-tabs:before{content:"";position:absolute;left:6%;right:6%;top:18px;height:2px;background:#444c51}.icb-stage-tab{position:relative;background:none;border:0;color:#fff;cursor:pointer;padding:0 6px}.icb-stage-tab:before{content:"";display:block;width:14px;height:14px;margin:12px auto 18px;border-radius:50%;background:#697178;box-shadow:0 0 0 3px var(--ink),0 0 0 4px #697178}.icb-stage-tab.is-active:before{background:var(--red);box-shadow:0 0 0 3px var(--ink),0 0 0 4px var(--red)}.icb-stage-tab span{font-size:.7rem;color:#aeb5ba}.icb-stage-tab strong{display:block;margin-top:4px}.icb-stage-panel{display:none;grid-template-columns:.9fr 1.1fr;margin-top:46px;background:var(--ink2);border:1px solid #343b40}.icb-stage-panel.is-active{display:grid}.icb-stage-image img{width:100%;height:440px;object-fit:cover}.icb-stage-copy{padding:48px}.icb-stage-copy h3{font-size:2rem}.icb-stage-copy p,.icb-stage-copy li{color:#cbd0d3}.icb-stage-copy ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 25px;padding-left:18px}.icb-text-link{font-weight:750}.icb-media-section,.icb-contact-section{padding:108px 0}.icb-section-head{display:flex;justify-content:space-between;gap:40px;align-items:end}.icb-media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px}.icb-media-card{background:#fff}.icb-media-image img{width:100%;height:230px;object-fit:cover}.icb-media-copy{padding:25px}.icb-media-copy span{font-size:.72rem;text-transform:uppercase;color:var(--red);font-weight:800}.icb-contact-section{background:#e8ebeb}.icb-contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:85px}.icb-contact-card{margin-top:35px;padding:38px;background:var(--ink);color:#fff}.icb-contact-form{background:#fff;padding:38px;box-shadow:0 18px 50px #0d111313}.icb-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.icb-form-grid label{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.icb-form-grid input,.icb-form-grid select,.icb-form-grid textarea{width:100%;margin-top:8px;padding:14px;border:1px solid #cbd0d3;background:#fafafa}.icb-form-grid textarea{min-height:150px}.icb-full{grid-column:1/-1}.icb-hp{position:absolute;left:-9999px}.icb-form-status{margin-bottom:18px;padding:12px}.icb-form-status.is-success{background:#edf6ef;color:#245b31}.icb-form-status.is-error{background:#fff0f0;color:#8b1212}.site-footer{padding:48px 0;background:#0b0e10;color:#b8bec2}.icb-footer-grid{display:flex;justify-content:space-between}.icb-footer-logo{width:var(--icb-logo-width,112px);filter:brightness(0) invert(1);margin-bottom:14px}.icb-standard-page{padding:150px 0 90px}.icb-stage-hero{min-height:620px;position:relative;display:flex;align-items:flex-end;color:#fff}.icb-stage-bg{position:absolute;inset:0}.icb-stage-bg:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#090c0ee8,#090c0e66)}.icb-stage-bg img{width:100%;height:100%;object-fit:cover}.icb-stage-hero-content{position:relative;z-index:2;padding-bottom:70px}.icb-stage-hero-content p{font-size:1.2rem;max-width:700px}.icb-stage-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:80px;padding:95px 0}.icb-detail-box{background:#fff;padding:28px;margin-bottom:18px}.icb-maintenance{min-height:100vh;display:grid;place-items:center;padding:30px;background:linear-gradient(90deg,#080b0dea,#080b0db5),url('../images/hero.webp') center/cover;color:#fff}.icb-maintenance-panel{max-width:760px;padding:55px;background:#101316e8}.icb-maintenance-panel>img{width:150px;filter:brightness(0) invert(1);margin-bottom:45px}.icb-maintenance-panel h1{font-size:clamp(2.5rem,6vw,5rem)}.icb-maintenance-contact{display:flex;gap:25px;flex-wrap:wrap;margin-top:35px}@media(max-width:920px){.icb-primary-nav ul{display:none}.icb-menu-toggle{display:block}.icb-primary-nav.is-open ul{display:flex;position:absolute;top:88px;right:20px;flex-direction:column;background:#111;padding:25px}.icb-timeline-tabs{grid-template-columns:repeat(4,1fr);row-gap:25px}.icb-timeline-tabs:before{display:none}.icb-stage-panel.is-active,.icb-contact-grid,.icb-stage-layout{grid-template-columns:1fr}.icb-media-grid{grid-template-columns:1fr 1fr}.icb-stage-copy{padding:30px}}@media(max-width:620px){.icb-logo img,.custom-logo{width:var(--icb-logo-width-mobile,92px)}.icb-wrap{width:min(calc(100% - 28px),var(--max))}.icb-nav{height:72px}.icb-hero{min-height:760px;padding-top:130px}.icb-timeline-tabs{grid-template-columns:repeat(2,1fr)}.icb-media-grid,.icb-form-grid{grid-template-columns:1fr}.icb-full{grid-column:auto}.icb-section-head,.icb-footer-grid{display:block}.icb-media-grid{margin-top:30px}.icb-stage-image img{height:300px}.icb-stage-copy ul{grid-template-columns:1fr}}
.icb-privacy{display:flex;align-items:flex-start;gap:10px;font-size:.8rem!important;font-weight:400!important;text-transform:none!important;letter-spacing:0!important}.icb-privacy input{width:auto!important;margin-top:3px!important}.icb-privacy a{text-decoration:underline}

/* v0.4 visual system */
.icb-hero-v04{min-height:820px;position:relative;overflow:hidden;background:#f4f4f1;color:var(--ink);padding:170px 0 90px;align-items:center}
.icb-hero-v04:after{content:"";position:absolute;left:0;bottom:0;width:28%;height:4px;background:var(--red)}
.icb-hero-v04 .icb-hero-content{z-index:5;width:100%;pointer-events:none}
.icb-hero-v04 .icb-hero-content>*{pointer-events:auto}
.icb-hero-v04 .icb-eyebrow{color:#667077}
.icb-hero-v04 h1{max-width:660px;font-size:clamp(3.3rem,6.4vw,6.5rem);position:relative;z-index:4}
.icb-hero-v04 p{max-width:570px;color:#4f585e;font-size:1.06rem;position:relative;z-index:4}
.icb-hero-v04 .icb-button{box-shadow:none}
.icb-hero-link{align-self:center;margin-left:12px;font-size:.9rem}
.icb-hero-visual{position:absolute;inset:86px 0 0 38%;overflow:hidden;z-index:1}
.icb-hero-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center right;transform:scale(1.08);transform-origin:center;transition:transform .2s linear}
.icb-hero-layer-base{filter:grayscale(1) contrast(.94) brightness(1.03);opacity:.66}
.icb-hero-layer-model{mix-blend-mode:multiply;opacity:0;clip-path:inset(0 100% 0 0);animation:icbModelReveal 16s ease-in-out infinite}
.icb-hero-layer-color{opacity:0;clip-path:inset(0 100% 0 0);animation:icbFullColorReveal 16s ease-in-out infinite}
.icb-hero-grid,.icb-stage-image-grid,.icb-de-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(20,26,30,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(20,26,30,.055) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(90deg,transparent 0,#000 20%,#000 100%);pointer-events:none}
.icb-hero-scanline{position:absolute;top:0;bottom:0;width:1px;left:0;background:var(--red);opacity:0;animation:icbScan 16s ease-in-out infinite}
@keyframes icbModelReveal{
  0%,9%{opacity:0;clip-path:inset(0 100% 0 0)}
  17%{opacity:.9}
  43%,91%{opacity:.92;clip-path:inset(0 0 0 0)}
  96%,100%{opacity:0;clip-path:inset(0 0 0 0)}
}
@keyframes icbFullColorReveal{
  0%,48%{opacity:0;clip-path:inset(0 100% 0 0)}
  56%{opacity:.18}
  72%,91%{opacity:.94;clip-path:inset(0 0 0 0)}
  96%,100%{opacity:0;clip-path:inset(0 0 0 0)}
}
@keyframes icbScan{
  0%,9%{left:0;opacity:0}
  17%{opacity:.5}
  43%{left:100%;opacity:.28}
  48%{left:0;opacity:0}
  56%{opacity:.42}
  72%{left:100%;opacity:.22}
  73%,100%{left:100%;opacity:0}
}

.icb-perspective-section{padding:105px 0;background:#fff;border-bottom:1px solid var(--line)}
.icb-perspective-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}
.icb-perspective-section h2{font-size:clamp(2.4rem,4vw,4.2rem);max-width:570px}
.icb-perspective-copy{padding-top:8px}.icb-principles{margin-top:40px;border-top:1px solid var(--line)}
.icb-principle{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);font-weight:700}
.icb-principle span{width:8px;height:8px;border:2px solid var(--red)}

.icb-timeline-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end}
.icb-pm-note{font-size:.9rem;color:#aeb5ba;display:flex;gap:12px;align-items:flex-start;margin-top:26px}
.icb-pm-note span{display:block;width:28px;height:2px;background:var(--red);margin-top:.7em;flex:0 0 auto}
.icb-pm-rail{height:36px;border-top:1px solid #3c4449;border-left:1px solid #3c4449;border-right:1px solid #3c4449;margin:48px 6% -16px;position:relative;text-align:center}
.icb-pm-rail span{position:relative;top:-12px;background:var(--ink);padding:0 16px;color:#899198;font-size:.68rem;letter-spacing:.13em;text-transform:uppercase}
.icb-stage-panel{overflow:hidden}.icb-stage-image{position:relative;background:#f4f4f1;overflow:hidden}.icb-stage-image img{object-fit:contain;background:#f4f4f1;filter:saturate(.84)}
.icb-stage-copy{display:flex;flex-direction:column;justify-content:center}.icb-stage-service-list{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #3d454a;margin:10px 0 28px}
.icb-stage-service-list span{padding:10px 0;border-bottom:1px solid #3d454a;color:#cbd0d3;font-size:.86rem}.icb-stage-service-list span:nth-child(even){padding-left:18px;border-left:1px solid #3d454a}

.icb-media-section{background:#f4f4f1}.icb-insight-tabs{display:flex;gap:28px;margin-top:44px;border-bottom:1px solid var(--line)}
.icb-insight-tab{appearance:none;border:0;border-bottom:2px solid transparent;background:none;padding:0 0 14px;font:inherit;font-weight:750;color:#717a80;cursor:pointer}
.icb-insight-tab.is-active{border-bottom-color:var(--red);color:var(--ink)}.icb-media-card.is-hidden{display:none}
.icb-media-card{border:1px solid var(--line);background:#fff;transition:transform .2s ease}.icb-media-card:hover{transform:translateY(-3px)}
.icb-media-placeholder-art{height:230px;background:url('../images/detail-combined-b.webp') center/contain no-repeat,#f5f5f2;position:relative}.icb-media-placeholder-art.is-model{background-image:url('../images/detail-model-a.webp')}.icb-media-placeholder-art.is-update{background:#171c20}
.icb-media-placeholder-art span{position:absolute;left:20px;bottom:16px;color:var(--red);font-weight:800;letter-spacing:.12em}

/* Detail Engineering reference page */
.icb-de-hero{min-height:690px;position:relative;background:#f4f4f1;display:flex;align-items:flex-end;overflow:hidden;padding-top:100px}
.icb-de-hero-visual{position:absolute;inset:88px 0 0 34%;overflow:hidden}.icb-de-hero-visual img{width:100%;height:100%;object-fit:contain;object-position:right center;filter:saturate(.88)}
.icb-de-hero-copy{position:relative;z-index:3;padding-bottom:80px}.icb-de-hero-copy h1{max-width:700px}.icb-de-hero-copy p{font-size:1.18rem;max-width:590px;color:#4c555b}
.icb-de-intro,.icb-de-output{padding:105px 0;background:#fff}.icb-de-intro-grid,.icb-de-output-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}
.icb-de-disciplines{padding:105px 0;background:var(--ink);color:#fff}.icb-de-disciplines .icb-eyebrow{color:#aeb5ba}.icb-de-disciplines .icb-lead{color:#cbd0d3}.icb-discipline-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:50px;border-top:1px solid #3b4348;border-left:1px solid #3b4348}.icb-discipline-item{min-height:150px;padding:24px;border-right:1px solid #3b4348;border-bottom:1px solid #3b4348;display:flex;flex-direction:column;justify-content:space-between}.icb-discipline-item span{font-size:.7rem;color:var(--red);letter-spacing:.12em}.icb-discipline-item strong{font-size:1.05rem}
.icb-de-digital{padding:110px 0;background:#ededeb}.icb-de-digital-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:70px;align-items:center}.icb-de-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}.icb-de-tags span{border:1px solid #bfc5c8;padding:8px 10px;font-size:.66rem;letter-spacing:.12em}.icb-de-reveal{position:relative;min-height:520px;overflow:hidden;background:#f6f6f3;border:1px solid #d8dcdf}.icb-de-reveal img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.icb-de-reveal-base{filter:grayscale(1);opacity:.75}.icb-de-reveal-model{mix-blend-mode:multiply;clip-path:inset(0 50% 0 0)}.icb-de-reveal-line{position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--red)}
.icb-output-list{border-top:1px solid var(--line)}.icb-output-item{display:grid;grid-template-columns:60px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.icb-output-item span{color:var(--red);font-size:.72rem;letter-spacing:.12em}.icb-de-visual-break{padding:0 0 105px;background:#fff}.icb-de-visual-break img{width:100%;max-height:720px;object-fit:contain;background:#f5f5f2}.icb-de-cta{padding:100px 0;background:var(--ink);color:#fff}.icb-de-cta h2{max-width:780px}

@media(max-width:980px){.icb-hero-visual{inset:100px -10% 0 28%;opacity:.78}.icb-perspective-grid,.icb-timeline-heading,.icb-de-intro-grid,.icb-de-output-grid,.icb-de-digital-grid{grid-template-columns:1fr}.icb-discipline-grid{grid-template-columns:1fr 1fr}.icb-de-hero-visual{inset:120px -10% 0 20%;opacity:.72}.icb-de-reveal{min-height:430px}}
@media(max-width:620px){.icb-hero-v04{min-height:800px;align-items:flex-start;padding-top:150px}.icb-hero-v04 h1{font-size:clamp(3rem,14vw,4.4rem)}.icb-hero-visual{inset:380px -30% 0 10%;opacity:.72}.icb-hero-layer-labels{display:none}.icb-hero-link{margin-left:0}.icb-perspective-grid{gap:35px}.icb-pm-rail{display:none}.icb-stage-service-list{grid-template-columns:1fr}.icb-stage-service-list span:nth-child(even){padding-left:0;border-left:0}.icb-discipline-grid{grid-template-columns:1fr}.icb-de-hero{min-height:760px}.icb-de-hero-visual{inset:350px -35% 0 0}.icb-de-reveal{min-height:320px}.icb-insight-tabs{gap:18px}}
@media(prefers-reduced-motion:reduce){.icb-hero-layer-model,.icb-hero-scanline{animation:none}.icb-hero-layer-model{opacity:.78;clip-path:inset(0 0 0 0)}}
.icb-front-page .site-header{color:var(--ink);border-bottom-color:#1c22261f;background:rgba(244,244,241,.78);backdrop-filter:blur(12px)}
.icb-front-page .icb-logo img{filter:none}.icb-front-page .icb-language{border-left-color:#1c222629}
.icb-detail-engineering-page~.site-footer{} /* marker for source readability */
body.single-icb_stage .site-header:has(+ main.icb-detail-engineering-page){color:var(--ink)}
@media(max-width:920px){.icb-front-page .icb-primary-nav.is-open ul{background:#f4f4f1;border:1px solid var(--line)}}

/* v0.5 — final six-stage Project Lifecycle blueprint */
.icb-timeline-tabs{grid-template-columns:repeat(6,1fr)}
.icb-stage-tab strong{font-size:.88rem;line-height:1.25}

.icb-stage-v05{background:#f4f4f1;color:var(--ink)}
.icb-stage-v05-hero{min-height:720px;position:relative;display:flex;align-items:flex-end;overflow:hidden;background:var(--ink);color:#fff;padding-top:110px}
.icb-stage-v05-hero:after{content:"";position:absolute;left:0;bottom:0;width:27%;height:4px;background:var(--red);z-index:4}
.icb-stage-v05-hero-visual{position:absolute;inset:88px 0 0 38%;background:#f2f2ef;overflow:hidden}
.icb-stage-v05-hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--ink) 0,rgba(16,19,22,.84) 9%,rgba(16,19,22,.22) 42%,rgba(16,19,22,0) 72%)}
.icb-stage-v05-hero-visual img{width:100%;height:100%;object-fit:contain;object-position:right center;filter:saturate(.78) contrast(.98)}
.icb-stage-v05-hero-grid{position:relative;z-index:3;display:grid;grid-template-columns:150px minmax(0,720px);gap:45px;align-items:end;padding-bottom:78px}
.icb-stage-v05-index{padding-bottom:8px;color:#b9c0c4}.icb-stage-v05-index span{display:block;font-size:3.2rem;line-height:1;font-weight:300;letter-spacing:-.05em;color:#fff}.icb-stage-v05-index i{display:block;width:100%;height:1px;background:#687077;margin:18px 0 12px}.icb-stage-v05-index small{font-size:.64rem;letter-spacing:.15em;text-transform:uppercase}
.icb-stage-v05-hero-copy .icb-eyebrow{color:#aeb5ba}.icb-stage-v05-hero-copy h1{font-size:clamp(3.4rem,6vw,6.6rem);margin:20px 0 26px;max-width:820px}.icb-stage-v05-hero-copy p{max-width:650px;font-size:1.15rem;color:#d4d9dc}

.icb-stage-v05-role,.icb-stage-v05-deliverables{padding:110px 0;background:#fff}.icb-stage-v05-two-col{display:grid;grid-template-columns:.82fr 1.18fr;gap:95px}.icb-stage-v05-role h2,.icb-stage-v05-deliverables h2{max-width:540px}.icb-stage-v05-prose .icb-lead{font-size:1.3rem;color:#242a2e}.icb-richtext{margin-top:34px;color:#555e64}.icb-richtext p{max-width:790px}

.icb-stage-v05-situation{padding:72px 0;background:#e8eae9;border-top:1px solid #d4d8da;border-bottom:1px solid #d4d8da}.icb-stage-v05-situation-grid{display:grid;grid-template-columns:180px 1fr;gap:55px;align-items:start}.icb-stage-v05-number{font-size:5.5rem;line-height:.9;font-weight:300;letter-spacing:-.07em;color:#c5c9cb}.icb-stage-v05-statement{font-size:clamp(1.55rem,2.5vw,2.5rem);line-height:1.22;letter-spacing:-.025em;max-width:900px;margin-top:24px}

.icb-stage-v05-services{padding:110px 0;background:var(--ink);color:#fff}.icb-stage-v05-services .icb-eyebrow{color:#aeb5ba}.icb-stage-v05-section-head{display:grid;grid-template-columns:1fr .8fr;gap:80px;align-items:end}.icb-stage-v05-section-head h2{max-width:760px}.icb-stage-v05-section-head>p{color:#bcc3c7;max-width:560px}.icb-stage-v05-service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:58px;border-top:1px solid #394146;border-left:1px solid #394146}.icb-stage-v05-service{min-height:145px;padding:24px;border-right:1px solid #394146;border-bottom:1px solid #394146;display:flex;flex-direction:column;justify-content:space-between;gap:30px}.icb-stage-v05-service span{font-size:.68rem;letter-spacing:.15em;color:var(--red)}.icb-stage-v05-service strong{font-size:1.05rem;line-height:1.35}

.icb-stage-v05-visuals{padding:110px 0;background:#f1f1ee}.icb-stage-v05-visual-primary{background:#fff;border:1px solid #d8dcdf}.icb-stage-v05-visual-primary>img{width:100%;height:min(68vw,720px);object-fit:contain}.icb-stage-v05-caption{display:flex;justify-content:space-between;gap:20px;padding:13px 16px;border-top:1px solid #d8dcdf;font-size:.62rem;letter-spacing:.13em;color:#737b80}.icb-stage-v05-visual-secondary{display:grid;grid-template-columns:.72fr 1.28fr;gap:65px;align-items:center;margin-top:80px}.icb-stage-v05-visual-secondary>div p{max-width:430px;color:#555e64;margin-top:20px}.icb-stage-v05-visual-secondary img{width:100%;max-height:520px;object-fit:contain;background:#fff;border:1px solid #d8dcdf}

.icb-stage-v05-output-list{border-top:1px solid var(--line)}.icb-stage-v05-output{display:grid;grid-template-columns:62px 1fr;gap:22px;padding:17px 0;border-bottom:1px solid var(--line)}.icb-stage-v05-output span{font-size:.68rem;letter-spacing:.13em;color:var(--red)}.icb-stage-v05-output strong{font-size:1.02rem}

.icb-stage-v05-pm{padding:105px 0;background:#151a1e;color:#fff}.icb-stage-v05-pm-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.icb-stage-v05-pm .icb-eyebrow{color:#aab1b5}.icb-stage-v05-pm .icb-lead{color:#d1d6d8}.icb-stage-v05-pm-rail{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;margin-top:45px;font-size:.62rem;letter-spacing:.12em;color:#899197}.icb-stage-v05-pm-rail i{height:1px;background:linear-gradient(90deg,var(--red),#5d666c)}

.icb-stage-v05-references{padding:105px 0;background:#f4f4f1}.icb-stage-v05-references h2{max-width:720px}

.icb-stage-v05-nav{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.icb-stage-v05-nav-grid{display:grid;grid-template-columns:1fr auto 1fr;min-height:128px;align-items:center;gap:30px}.icb-stage-v05-nav-grid>div:last-child{text-align:right}.icb-stage-v05-nav a span{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:#7c858a;margin-bottom:7px}.icb-stage-v05-nav a strong{font-size:1rem}.icb-stage-v05-nav-center a{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#697278}

.icb-stage-v05-cta{padding:105px 0;background:#fff}.icb-stage-v05-cta h2{max-width:830px;margin:20px 0 34px}

@media(max-width:980px){
  .icb-timeline-tabs{grid-template-columns:repeat(3,1fr)}
  .icb-stage-v05-hero-visual{inset:88px -15% 0 30%;opacity:.72}
  .icb-stage-v05-hero-grid{grid-template-columns:100px 1fr}
  .icb-stage-v05-two-col,.icb-stage-v05-section-head,.icb-stage-v05-visual-secondary,.icb-stage-v05-pm-grid{grid-template-columns:1fr;gap:45px}
  .icb-stage-v05-service-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .icb-timeline-tabs{grid-template-columns:repeat(2,1fr)}
  .icb-stage-v05-hero{min-height:760px;padding-top:100px}
  .icb-stage-v05-hero-visual{inset:330px -42% 0 -5%;opacity:.62}
  .icb-stage-v05-hero-visual:after{background:linear-gradient(180deg,var(--ink) 0,rgba(16,19,22,.2) 35%,rgba(16,19,22,0) 70%)}
  .icb-stage-v05-hero-grid{grid-template-columns:1fr;padding-bottom:55px}.icb-stage-v05-index{display:none}.icb-stage-v05-hero-copy h1{font-size:clamp(3rem,13vw,4.6rem)}
  .icb-stage-v05-role,.icb-stage-v05-services,.icb-stage-v05-visuals,.icb-stage-v05-deliverables,.icb-stage-v05-pm,.icb-stage-v05-references,.icb-stage-v05-cta{padding:78px 0}
  .icb-stage-v05-situation-grid{grid-template-columns:1fr;gap:20px}.icb-stage-v05-number{font-size:3.7rem}
  .icb-stage-v05-service-grid{grid-template-columns:1fr}.icb-stage-v05-service{min-height:118px}
  .icb-stage-v05-caption{display:block}.icb-stage-v05-caption span{display:block}.icb-stage-v05-caption span+span{margin-top:6px}
  .icb-stage-v05-nav-grid{grid-template-columns:1fr 1fr;min-height:150px}.icb-stage-v05-nav-center{display:none}
}

/* v0.5.1.1 — timeline hotfix: original full-height canvas, dark grid only */
.icb-stage-panel.is-active{align-items:stretch}
.icb-stage-image{
  position:relative;
  align-self:stretch;
  min-height:440px;
  overflow:hidden;
  background-color:#171c20;
}
.icb-stage-image img{
  position:absolute;
  inset:0;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  background:transparent;
  filter:saturate(.84);
}
.icb-stage-image .icb-stage-image-grid{
  display:block;
  position:absolute;
  inset:0;
  z-index:0;
  background-image:
    linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:none;
}
@media(max-width:620px){.icb-stage-image{min-height:300px}}


/* v0.6 — three-stage hero reveal + calmer page gutters */
@media (prefers-reduced-motion: reduce){
  .icb-hero-layer-model{animation:none;opacity:.88;clip-path:inset(0 0 0 0)}
  .icb-hero-layer-color{animation:none;opacity:.55;clip-path:inset(0 0 0 0)}
  .icb-hero-scanline{display:none}
}


/* v0.7 — compact stage hero context + reference project system */
.icb-stage-hero-rail{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;margin-top:32px;border-top:1px solid rgba(255,255,255,.2)}
.icb-stage-hero-rail span{padding:12px 8px 0;border-top:1px solid transparent;color:#8f989e;font-size:.58rem;line-height:1.3;text-transform:uppercase;letter-spacing:.08em;transform:translateY(-1px)}
.icb-stage-hero-rail span b{display:block;color:#697278;font-weight:500;margin-bottom:4px}.icb-stage-hero-rail span.is-current{border-top-color:var(--red);color:#fff}.icb-stage-hero-rail span.is-current b{color:var(--red)}
.icb-stage-hero-interface{margin-top:24px!important;font-size:.85rem!important;color:#aeb5ba!important;max-width:720px!important}
.icb-reference-page{background:#fff}.icb-reference-hero{background:var(--ink);color:#fff;padding:150px 0 80px}.icb-reference-hero-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:end}.icb-reference-hero-copy h1{font-size:clamp(3rem,5.4vw,6rem);margin:18px 0 28px}.icb-reference-hero-copy .icb-lead{color:#cbd1d4}.icb-reference-hero-image{min-height:500px;background:#171c20;border:1px solid #343b40;display:flex;align-items:center;justify-content:center;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px}.icb-reference-hero-image img{width:100%;height:100%;max-height:620px;object-fit:contain}.icb-reference-overview,.icb-reference-deliverables{padding:110px 0}.icb-reference-two-col{display:grid;grid-template-columns:.85fr 1.15fr;gap:95px}.icb-reference-overview h2{font-size:clamp(1.8rem,3vw,3rem);max-width:560px}.icb-reference-scope{padding:105px 0;background:#151a1e;color:#fff}.icb-reference-list-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:48px;border-top:1px solid #394146;border-left:1px solid #394146}.icb-reference-list-grid>div{min-height:130px;padding:22px;border-right:1px solid #394146;border-bottom:1px solid #394146;display:flex;flex-direction:column;justify-content:space-between;gap:24px}.icb-reference-list-grid span,.icb-reference-output span{font-size:.65rem;letter-spacing:.14em;color:var(--red)}.icb-reference-list-grid strong{line-height:1.35}.icb-reference-visual{padding:100px 0;background:#f1f1ee}.icb-reference-visual img{display:block;width:100%;max-height:720px;object-fit:contain;background:#fff;border:1px solid #d7dbdd}.icb-reference-caption{padding:11px 0 0;font-size:.62rem;letter-spacing:.14em;color:#757e83}.icb-reference-output{display:grid;grid-template-columns:62px 1fr;gap:22px;padding:17px 0;border-bottom:1px solid var(--line)}.icb-reference-nav{border-top:1px solid var(--line);padding:30px 0 60px}.icb-reference-nav .icb-wrap{display:flex;justify-content:space-between;gap:25px}.icb-insights-archive-head{padding:150px 0 70px;background:var(--ink);color:#fff}.icb-insights-archive-head h1{font-size:clamp(3rem,6vw,6rem);margin:18px 0}.icb-insights-archive-head .icb-lead{color:#cbd1d4}.icb-insights-archive-body{padding:80px 0 110px;background:#f3f4f3}
@media(max-width:900px){.icb-reference-hero-grid,.icb-reference-two-col{grid-template-columns:1fr;gap:45px}.icb-reference-list-grid{grid-template-columns:repeat(2,1fr)}.icb-stage-hero-rail{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.icb-reference-hero{padding:115px 0 60px}.icb-reference-hero-image{min-height:300px}.icb-reference-list-grid{grid-template-columns:1fr}.icb-stage-hero-rail{grid-template-columns:repeat(2,1fr)}.icb-reference-overview,.icb-reference-deliverables,.icb-reference-scope,.icb-reference-visual{padding:75px 0}.icb-reference-nav .icb-wrap{flex-direction:column}}

/* v0.7.1 — reference blueprint + reusable technical visual comparisons */
.icb-reference-hero-v071{background:var(--ink);color:#fff;padding:145px 0 70px;overflow:hidden}
.icb-reference-hero-v071-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr);gap:64px;align-items:stretch}
.icb-reference-hero-v071-copy{display:flex;flex-direction:column;justify-content:center;padding:42px 0}
.icb-reference-hero-v071-copy h1{font-size:clamp(3.2rem,5.7vw,6.3rem);max-width:820px;margin:18px 0 28px;line-height:.94}
.icb-reference-hero-v071-copy .icb-lead{max-width:760px;color:#cbd1d4;font-size:clamp(1.05rem,1.5vw,1.35rem)}
.icb-reference-stage-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.icb-reference-stage-tags span{border:1px solid #3c454b;padding:8px 11px;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:#adb5ba}
.icb-reference-hero-v071-visual{position:relative;min-height:590px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#171c20;border:1px solid #343b40}
.icb-reference-hero-v071-visual img{position:relative;z-index:2;width:100%;height:100%;max-height:690px;object-fit:contain}
.icb-reference-hero-gridlines{position:absolute;inset:0;z-index:1;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px}
.icb-reference-hero-caption{position:absolute;z-index:3;left:18px;bottom:14px;font-size:.58rem;letter-spacing:.14em;color:#7e898f}
.icb-reference-scope-results{padding:105px 0;background:#f3f3f0}
.icb-reference-scope-results-head{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:end;margin-bottom:56px}.icb-reference-scope-results-head h2{font-size:clamp(2rem,3.7vw,4.2rem);max-width:720px;margin:14px 0 0}.icb-reference-scope-results-head p{max-width:680px;font-size:1.08rem;color:#4c555a}
.icb-reference-scope-results-grid{display:grid;grid-template-columns:1fr 74px 1fr;border-top:1px solid #cbd0d3;border-bottom:1px solid #cbd0d3}
.icb-reference-sr-column{padding:0 0 18px}.icb-reference-sr-column.is-results{background:#171c20;color:#fff;padding-left:28px;padding-right:28px}
.icb-reference-sr-label{padding:18px 0 13px;font-size:.62rem;letter-spacing:.13em;text-transform:uppercase;color:#707b81}.icb-reference-sr-column.is-results .icb-reference-sr-label{color:#949ea4}
.icb-reference-sr-item{display:grid;grid-template-columns:45px 1fr;gap:15px;padding:16px 0;border-top:1px solid #d5d9db}.icb-reference-sr-column.is-results .icb-reference-sr-item{border-color:#394146}.icb-reference-sr-item span{font-size:.62rem;letter-spacing:.1em;color:var(--red)}.icb-reference-sr-item strong{font-weight:550;line-height:1.35}
.icb-reference-sr-arrow{display:flex;align-items:center;justify-content:center;border-left:1px solid #cbd0d3;border-right:1px solid #cbd0d3;color:var(--red);font-size:1.45rem}
.icb-reference-context{padding:100px 0;background:#fff}.icb-reference-context h2{font-size:clamp(2rem,3vw,3.4rem);max-width:580px}
.icb-reference-visuals-v071,.icb-stage-visual-modules-v071{padding:95px 0;background:#11161a;color:#fff}.icb-reference-visuals-v071>.icb-wrap:first-child,.icb-stage-visual-modules-v071>.icb-wrap:first-child{margin-bottom:34px}
.icb-visual-module-wrap{margin-top:34px}.icb-visual-module-wrap:first-of-type{margin-top:0}
.icb-visual-module{margin:0}.icb-visual-module.is-content{max-width:920px;margin-left:auto;margin-right:auto}
.icb-visual-stage{--split:50%;position:relative;overflow:hidden;width:100%;aspect-ratio:16/9;background:#171c20;border:1px solid #343b40;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;touch-action:pan-y}
.icb-visual-stage img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain;user-select:none;pointer-events:none}
.icb-visual-b-wrap{position:absolute;inset:0;overflow:hidden;clip-path:inset(0 calc(100% - var(--split)) 0 0);transition:clip-path .12s linear}.icb-visual-b-wrap img{position:absolute;inset:0}
.icb-visual-handle{position:absolute;z-index:5;top:0;bottom:0;left:var(--split);width:42px;transform:translateX(-50%);border:0;background:transparent;cursor:ew-resize;padding:0}.icb-visual-handle:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:var(--red)}.icb-visual-handle span{position:absolute;left:50%;top:50%;width:30px;height:30px;transform:translate(-50%,-50%);border-radius:50%;border:1px solid var(--red);background:#171c20}.icb-visual-handle span:before,.icb-visual-handle span:after{content:"";position:absolute;top:50%;width:6px;height:6px;border-top:1px solid #fff;border-left:1px solid #fff}.icb-visual-handle span:before{left:7px;transform:translateY(-50%) rotate(-45deg)}.icb-visual-handle span:after{right:7px;transform:translateY(-50%) rotate(135deg)}
.icb-visual-label{position:absolute;z-index:6;top:16px;padding:7px 9px;background:rgba(17,22,26,.86);border:1px solid #3a4247;font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:#d5dadd}.icb-visual-label.is-a{left:16px}.icb-visual-label.is-b{right:16px}
.icb-visual-module figcaption{padding:12px 0 0;color:#8f989e;font-size:.68rem;letter-spacing:.05em}
.icb-visual-module.is-fade .icb-visual-b-wrap{clip-path:none;opacity:0;transition:opacity .55s ease}.icb-visual-module.is-fade:hover .icb-visual-b-wrap,.icb-visual-module.is-fade.is-revealed .icb-visual-b-wrap{opacity:1}.icb-visual-module.is-fade .icb-visual-handle{display:none}
@media(max-width:980px){.icb-reference-hero-v071-grid{grid-template-columns:1fr;gap:38px}.icb-reference-hero-v071-copy{padding-bottom:0}.icb-reference-hero-v071-visual{min-height:430px}.icb-reference-scope-results-head{grid-template-columns:1fr;gap:24px}.icb-reference-scope-results-grid{grid-template-columns:1fr}.icb-reference-sr-arrow{height:54px;border-left:0;border-right:0;border-top:1px solid #cbd0d3;border-bottom:1px solid #cbd0d3}.icb-reference-sr-arrow span{transform:rotate(90deg)}.icb-reference-sr-column.is-results{padding-left:20px;padding-right:20px}}
@media(max-width:620px){.icb-reference-hero-v071{padding:112px 0 52px}.icb-reference-hero-v071-copy h1{font-size:clamp(2.8rem,14vw,4.3rem)}.icb-reference-hero-v071-visual{min-height:300px}.icb-reference-scope-results,.icb-reference-context,.icb-reference-visuals-v071,.icb-stage-visual-modules-v071{padding:70px 0}.icb-visual-stage{aspect-ratio:4/3}.icb-visual-label{top:10px}.icb-visual-label.is-a{left:10px}.icb-visual-label.is-b{right:10px}}

/* v0.7.1.1 — reference hero collision hotfix */
.icb-reference-hero-v071-grid{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:72px;
}
.icb-reference-hero-v071-copy{
  min-width:0;
}
.icb-reference-hero-v071-copy h1{
  max-width:100%;
  font-size:clamp(3rem,4.65vw,5.65rem);
  overflow-wrap:normal;
  hyphens:auto;
}
.icb-reference-hero-v071-visual{
  min-width:0;
}
@media(max-width:1180px){
  .icb-reference-hero-v071-grid{gap:48px;}
  .icb-reference-hero-v071-copy h1{font-size:clamp(3rem,5.7vw,5rem);}
}
@media(max-width:980px){
  .icb-reference-hero-v071-grid{grid-template-columns:1fr;gap:38px;}
}

/* v0.8 — unified technical visual + Insights/reference system */
.icb-stage-visual-modules-v071 .icb-visual-module-wrap,
.icb-reference-visuals-v071 .icb-visual-module-wrap{position:relative}
.icb-stage-visual-modules-v071 .icb-visual-module-wrap+.icb-visual-module-wrap,
.icb-reference-visuals-v071 .icb-visual-module-wrap+.icb-visual-module-wrap{margin-top:52px}
.icb-visual-stage{isolation:isolate}
.icb-visual-module.is-slider .icb-visual-stage{cursor:ew-resize}
.icb-visual-module.is-single .icb-visual-stage{cursor:default}

.icb-insights-archive-head{padding:160px 0 70px;background:var(--ink);color:#fff}
.icb-insights-archive-head .icb-lead{color:#bdc4c8}
.icb-insights-archive-body{padding:70px 0 110px;background:#f4f4f1}
.icb-reference-filters{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0 34px}
.icb-reference-filters.is-hidden{display:none}
.icb-reference-filters button{appearance:none;border:1px solid #cbd0d3;background:transparent;padding:9px 13px;font:inherit;font-size:.68rem;font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:#657077;cursor:pointer;transition:border-color .18s ease,color .18s ease,background .18s ease}
.icb-reference-filters button:hover,.icb-reference-filters button.is-active{border-color:var(--ink);background:var(--ink);color:#fff}

.icb-media-card.is-reference-card{background:#151a1e;border-color:#343b40;color:#fff;transform:none;overflow:hidden}
.icb-media-card.is-reference-card:hover{transform:translateY(-2px)}
.icb-media-card.is-reference-card .icb-media-image{position:relative;height:255px;background:#171c20;overflow:hidden}
.icb-media-card.is-reference-card .icb-media-image img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain}
.icb-media-image-grid{position:absolute;z-index:1;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px}
.icb-media-card.is-reference-card .icb-media-copy{border-top:1px solid #343b40}
.icb-media-card.is-reference-card .icb-media-copy p{color:#aeb6ba}
.icb-media-card.is-reference-card .icb-media-copy strong{color:#fff}
.icb-media-meta{display:flex;justify-content:space-between;gap:15px;align-items:flex-start;margin-bottom:12px}
.icb-media-meta span{margin:0}
.icb-media-meta small{font-size:.58rem;line-height:1.45;text-align:right;text-transform:uppercase;letter-spacing:.08em;color:#899399}
.icb-media-card h3{font-size:1.35rem;line-height:1.16;letter-spacing:-.025em;margin-bottom:13px}
.icb-media-card .icb-media-copy>strong{display:inline-block;margin-top:8px;font-size:.76rem}

@media(max-width:820px){
  .icb-reference-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;-webkit-overflow-scrolling:touch}
  .icb-reference-filters button{white-space:nowrap}
}


/* v0.9 — stage hero readability, company profile, contact/footer polish */
.icb-stage-v05-hero-visual{inset:88px -4% 0 44%}
.icb-stage-v05-hero-visual:after{
  background:linear-gradient(90deg,var(--ink) 0%,var(--ink) 8%,rgba(16,19,22,.98) 24%,rgba(16,19,22,.88) 38%,rgba(16,19,22,.56) 52%,rgba(16,19,22,.16) 67%,rgba(16,19,22,0) 78%);
}
.icb-stage-v05-hero-copy{max-width:690px}
.icb-stage-v05-hero-copy h1{font-size:clamp(3.25rem,5.45vw,6rem);max-width:690px}
.icb-stage-v05-hero-copy>p{max-width:610px}
.icb-stage-hero-rail{margin-top:27px}
.icb-stage-hero-rail span{padding-left:6px;padding-right:6px;font-size:.55rem}
.icb-stage-hero-interface{max-width:610px!important;margin-top:20px!important}
.icb-perspective-link{display:inline-block;margin-top:28px}

.icb-about-page{background:#f3f4f3}
.icb-about-hero{padding:175px 0 105px;background:var(--ink);color:#fff}
.icb-about-hero-grid,.icb-about-two-col{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:end}
.icb-about-hero h1{font-size:clamp(3.5rem,6.2vw,6.5rem);max-width:760px;margin:20px 0 0}
.icb-about-hero .icb-lead{color:#c7cdd0;margin-bottom:8px}
.icb-about-principles{background:#171c20;color:#fff;border-top:1px solid #343b40;border-bottom:1px solid #343b40}
.icb-about-principles-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid #343b40}
.icb-about-principle{min-height:180px;padding:28px;border-right:1px solid #343b40;display:flex;flex-direction:column;justify-content:space-between}
.icb-about-principle span{font-size:.62rem;color:var(--red);letter-spacing:.12em}.icb-about-principle strong{font-size:1.15rem;font-weight:600}
.icb-about-block{padding:110px 0;background:#f3f4f3}.icb-about-block h2{font-size:clamp(2.5rem,4.4vw,4.8rem);max-width:620px;margin-top:18px}
.icb-about-block.is-dark{background:#11161a;color:#fff}.icb-about-block.is-dark .icb-lead{color:#bdc5c9}.icb-about-block .icb-button{margin-top:28px}

.icb-contact-section{border-top:1px solid #d6dadc}.icb-contact-card{border:1px solid #343b40;background:#151a1e}.icb-contact-form{box-shadow:none;border:1px solid #d3d7d9}
.site-footer{padding:52px 0}.icb-footer-grid{align-items:flex-start;gap:60px}.icb-footer-links{display:flex;align-items:flex-start;gap:25px;flex-wrap:wrap}.icb-footer-links>ul{display:flex;gap:22px;list-style:none;margin:0;padding:0}.icb-footer-links a{font-size:.78rem;font-weight:650;color:#d2d7da}

@media(max-width:980px){
  .icb-stage-v05-hero-visual{inset:88px -18% 0 36%}
  .icb-stage-v05-hero-visual:after{background:linear-gradient(90deg,var(--ink) 0%,rgba(16,19,22,.96) 30%,rgba(16,19,22,.66) 55%,rgba(16,19,22,.05) 82%)}
  .icb-about-hero-grid,.icb-about-two-col{grid-template-columns:1fr;gap:38px}.icb-about-principles-grid{grid-template-columns:1fr}
  .icb-about-principle{min-height:120px;border-bottom:1px solid #343b40}
}
@media(max-width:620px){
  .icb-stage-v05-hero-visual{inset:335px -38% 0 -8%}
  .icb-stage-v05-hero-visual:after{background:linear-gradient(180deg,var(--ink) 0%,rgba(16,19,22,.82) 22%,rgba(16,19,22,.2) 52%,rgba(16,19,22,0) 78%)}
  .icb-about-hero{padding:130px 0 75px}.icb-about-block{padding:75px 0}
  .icb-footer-links,.icb-footer-links>ul{display:block}.icb-footer-links a{display:block;margin:0 0 12px}
}


/* v0.9.1 — timeline/footer/legal hotfix */
@media(min-width:921px){
  .icb-timeline-tabs:before{top:18px}
  .icb-stage-tab{padding-top:48px}
  .icb-stage-tab:before{position:absolute;top:12px;left:50%;transform:translateX(-50%);margin:0}
}
.icb-footer-links{align-items:center;line-height:1.2}
.icb-footer-links>ul{align-items:center}
.icb-footer-links a{display:inline-flex;align-items:center;min-height:24px;white-space:nowrap}
.icb-legal-page{background:#f4f4f1}
.icb-legal-page .icb-standard-page{padding-top:160px}
.icb-legal-page article{max-width:900px}
.icb-legal-page article>h1{font-size:clamp(3.1rem,6vw,6rem);margin-bottom:55px}
.icb-legal-page article>h2{font-size:clamp(1.35rem,2vw,1.8rem);letter-spacing:-.025em;margin:52px 0 16px;padding-top:24px;border-top:1px solid #cfd4d6}
.icb-legal-page article>p,.icb-legal-page article>div>p{max-width:780px;color:#424a50}
.icb-legal-page .icb-legal-intro{font-size:1.2rem;margin-bottom:55px}
.icb-legal-page article a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:620px){.icb-legal-page .icb-standard-page{padding-top:120px}.icb-legal-page article>h1{margin-bottom:38px}}

/* v1.0 — release hardening: responsive, accessibility, performance-aware motion */
.icb-skip-link{position:fixed;left:18px;top:12px;z-index:9999;padding:10px 14px;background:#fff;color:#111;border:2px solid var(--red);transform:translateY(-160%);transition:transform .15s ease;font-weight:700}
.icb-skip-link:focus{transform:translateY(0)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--red);outline-offset:3px}
.icb-menu-toggle{appearance:none;border:1px solid currentColor;background:transparent;color:inherit;min-height:42px;padding:0 13px;font:inherit;font-weight:700}
.icb-button,.icb-text-link,.icb-primary-nav a,.icb-footer-links a{transition:opacity .18s ease,border-color .18s ease,background-color .18s ease,color .18s ease,transform .18s ease}
.icb-button:hover{transform:translateY(-1px)}
.icb-primary-nav a:hover,.icb-footer-links a:hover,.icb-text-link:hover{opacity:.72}

/* Keep release typography within readable measures across intermediate desktop widths. */
@media(max-width:1240px){
  .icb-wrap{width:min(calc(100% - 56px),var(--max))}
  .icb-stage-v05-hero-grid{grid-template-columns:120px minmax(0,650px);gap:34px}
  .icb-stage-v05-hero-copy h1{font-size:clamp(3.1rem,5.2vw,5.5rem)}
  .icb-reference-hero-v071-copy h1{font-size:clamp(3rem,4.8vw,5rem)}
}

@media(max-width:920px){
  .site-header{background:rgba(12,16,19,.92);backdrop-filter:blur(12px)}
  .icb-front-page .site-header{background:rgba(244,244,241,.94)}
  .icb-primary-nav{gap:14px}
  .icb-primary-nav ul{position:absolute;left:28px;right:28px;top:76px;display:none!important;flex-direction:column;gap:0!important;padding:10px 0!important;background:#11161a!important;border:1px solid #343b40;box-shadow:0 18px 40px rgba(0,0,0,.18)}
  .icb-front-page .icb-primary-nav ul{background:#f4f4f1!important;border-color:#cfd4d6;color:var(--ink)}
  .icb-primary-nav.is-open ul{display:flex!important}
  .icb-primary-nav ul li{width:100%}
  .icb-primary-nav ul a{display:block;padding:13px 18px}
  .icb-language{padding-left:14px}

  .icb-timeline-tabs{display:flex;overflow-x:auto;gap:0;scroll-snap-type:x proximity;padding:0 4px 10px;margin-left:-4px;margin-right:-4px;-webkit-overflow-scrolling:touch}
  .icb-timeline-tabs:before{display:none}
  .icb-stage-tab{flex:0 0 155px;min-height:104px;scroll-snap-align:start;padding:46px 10px 8px}
  .icb-stage-tab:before{position:absolute;top:12px;left:50%;transform:translateX(-50%);margin:0}
  .icb-stage-tab strong{font-size:.8rem}
  .icb-stage-panel{margin-top:24px}
  .icb-stage-image{min-height:340px;background:#171c20;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;display:grid;place-items:center}
  .icb-stage-image img{height:auto;max-height:420px;object-fit:contain}

  .icb-stage-v05-hero{min-height:680px}
  .icb-stage-v05-hero-grid{grid-template-columns:82px minmax(0,1fr);gap:28px}
  .icb-stage-v05-hero-copy h1{font-size:clamp(3rem,8.5vw,5rem)}
  .icb-stage-hero-rail{overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}
  .icb-stage-hero-rail span{min-width:118px;flex:0 0 118px}

  .icb-media-grid{grid-template-columns:1fr 1fr}
  .icb-contact-grid{gap:42px}
  .icb-footer-grid{display:grid;grid-template-columns:1fr;gap:28px}
}

@media(max-width:680px){
  .icb-wrap{width:min(calc(100% - 32px),var(--max))}
  h1{font-size:clamp(2.85rem,13vw,4.7rem)}
  h2{font-size:clamp(2rem,10vw,3.25rem)}
  .icb-hero-v04{min-height:760px;padding:132px 0 64px}
  .icb-hero-v04 h1{max-width:92%}
  .icb-hero-visual{inset:390px -42% -15px 0;opacity:.66}
  .icb-actions{align-items:flex-start;flex-direction:column}
  .icb-hero-link{margin-left:0}

  .icb-timeline-section,.icb-media-section,.icb-contact-section{padding:76px 0}
  .icb-timeline-heading{gap:26px}
  .icb-stage-tab{flex-basis:142px}
  .icb-stage-panel.is-active{display:block}
  .icb-stage-image{min-height:250px}
  .icb-stage-copy{padding:26px 22px}
  .icb-stage-copy ul{grid-template-columns:1fr}

  .icb-stage-v05-hero{min-height:720px;padding-top:88px;align-items:flex-start}
  .icb-stage-v05-hero-visual{inset:310px -45% 0 -18%;opacity:.66}
  .icb-stage-v05-hero-grid{grid-template-columns:1fr;padding-top:48px;padding-bottom:42px}
  .icb-stage-v05-index{display:none}
  .icb-stage-v05-hero-copy h1{font-size:clamp(3rem,13vw,4.45rem);margin-bottom:18px}
  .icb-stage-v05-hero-copy>p{font-size:1rem}
  .icb-stage-hero-rail{margin-top:18px}
  .icb-stage-hero-interface{font-size:.9rem!important}
  .icb-stage-v05-situation,.icb-stage-v05-services,.icb-stage-v05-visuals,.icb-stage-v05-deliverables,.icb-stage-v05-cta{padding:74px 0}
  .icb-stage-v05-situation-grid{grid-template-columns:1fr;gap:18px}.icb-stage-v05-number{font-size:3.8rem}
  .icb-stage-v05-service-grid{grid-template-columns:1fr}
  .icb-stage-v05-two-col{grid-template-columns:1fr;gap:35px}
  .icb-stage-v05-nav-grid{grid-template-columns:1fr 1fr;min-height:auto;padding:24px 0}.icb-stage-v05-nav-center{display:none}

  .icb-reference-hero-v071{padding-top:118px}
  .icb-reference-hero-v071-visual{min-height:260px}
  .icb-reference-scope-results,.icb-reference-context,.icb-reference-visuals-v071{padding:72px 0}
  .icb-reference-sr-column{padding:18px 0}
  .icb-visual-stage{aspect-ratio:4/3}
  .icb-visual-handle{width:48px}
  .icb-visual-handle span{width:36px;height:36px}

  .icb-media-grid{grid-template-columns:1fr}
  .icb-media-card.is-reference-card .icb-media-image{height:230px}
  .icb-contact-form,.icb-contact-card{padding:26px 22px}
  .icb-footer-links{display:flex!important;gap:8px 20px;align-items:center!important}.icb-footer-links>ul{display:flex!important;flex-wrap:wrap;gap:8px 20px}.icb-footer-links a{display:inline-flex!important;margin:0!important}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .icb-button:hover{transform:none}
}


/* v1.1 — content/conversion pass and homepage hero copy inset */
/* Keep the eyebrow and CTA alignment as-is; only the large statement and intro copy move inward. */
.icb-hero-v04 h1,
.icb-hero-v04 > .icb-hero-content > p,
.icb-hero-v04 .icb-hero-content > p{
  margin-left:clamp(18px,1.35vw,28px);
}
.icb-hero-v04 h1{max-width:640px}
.icb-hero-v04 p{max-width:550px}

.icb-reference-cta{padding:92px 0;background:#11161a;color:#fff;border-top:1px solid #343b40}
.icb-reference-cta-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:end}
.icb-reference-cta h2{font-size:clamp(2.3rem,4.4vw,4.7rem);max-width:650px;margin:18px 0 0}
.icb-reference-cta p{max-width:620px;color:#bdc5c9;margin:0 0 26px}

/* Make stage-to-contact continuity visible without adding another UI element. */
.icb-contact-form select:has(option:checked:not([value=""])){border-color:#aeb6ba;background:#f5f6f5}

@media(max-width:980px){
  .icb-reference-cta-grid{grid-template-columns:1fr;gap:34px}
}
@media(max-width:620px){
  .icb-hero-v04 h1,
  .icb-hero-v04 .icb-hero-content > p{margin-left:10px}
  .icb-reference-cta{padding:68px 0}
}


/* v1.2.1 — native language switch + Project Lifecycle dropdown */
.icb-primary-nav>.menu{align-items:center}
.icb-primary-nav .menu-item{position:relative}
.icb-primary-nav .menu-item-has-children>a{display:inline-flex;align-items:center;gap:7px}
.icb-primary-nav .menu-item-has-children>a:after{content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.65}
.icb-primary-nav .sub-menu,.icb-primary-nav .menu .menu{position:absolute;top:calc(100% + 18px);left:50%;transform:translateX(-50%) translateY(6px);display:flex;min-width:250px;flex-direction:column;gap:0!important;padding:10px!important;background:#11161a;border:1px solid #343b40;box-shadow:0 18px 45px rgba(0,0,0,.2);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,transform .16s ease,visibility .16s ease}
.icb-front-page .icb-primary-nav .sub-menu,.icb-front-page .icb-primary-nav .menu .menu{background:#f4f4f1;border-color:#cfd4d6;color:var(--ink)}
.icb-primary-nav .menu-item-has-children:hover>.sub-menu,.icb-primary-nav .menu-item-has-children:hover>.menu,.icb-primary-nav .menu-item-has-children:focus-within>.sub-menu,.icb-primary-nav .menu-item-has-children:focus-within>.menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.icb-primary-nav .sub-menu a,.icb-primary-nav .menu .menu a{display:block;padding:10px 12px;white-space:nowrap;font-size:.82rem;font-weight:650}
.icb-primary-nav .sub-menu li+li,.icb-primary-nav .menu .menu li+li{border-top:1px solid rgba(255,255,255,.08)}
.icb-front-page .icb-primary-nav .sub-menu li+li,.icb-front-page .icb-primary-nav .menu .menu li+li{border-top-color:rgba(16,19,22,.08)}
.icb-language{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 0 0 18px;margin-left:2px;border-left:1px solid currentColor!important;font-weight:800;letter-spacing:.04em}
@media(max-width:920px){
  .icb-primary-nav>.menu{align-items:stretch}
  .icb-primary-nav .sub-menu,.icb-primary-nav .menu .menu{position:static!important;transform:none!important;display:flex!important;min-width:0;padding:0 0 7px 18px!important;border:0!important;border-left:1px solid rgba(255,255,255,.18)!important;box-shadow:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;background:transparent!important}
  .icb-front-page .icb-primary-nav .sub-menu,.icb-front-page .icb-primary-nav .menu .menu{border-left-color:rgba(16,19,22,.16)!important;background:transparent!important}
  .icb-primary-nav .sub-menu a,.icb-primary-nav .menu .menu a{padding:8px 18px!important;font-size:.78rem;opacity:.78}
  .icb-primary-nav .sub-menu li+li,.icb-primary-nav .menu .menu li+li{border-top:0}
  .icb-language{margin-left:8px;padding-left:14px}
}
