/* Cyriaque NKENDO — Bloc 2/3. Pages expertises, détails, réalisations. */
.v2-inner-page { background:#fff; }
.v2-inner-page .announcement a { text-underline-offset:3px; }
.v2-inner-page main { min-height:55vh; }
.v2-inner-page .inner-hero { position:relative; overflow:hidden; background:linear-gradient(122deg,#07172a 0%,#0b2744 64%,#0b314e 100%); color:#fff; padding:74px 0 88px; isolation:isolate; }
.inner-glow { position:absolute; width:680px; aspect-ratio:1; background:radial-gradient(circle,rgba(57,133,195,.18) 0%,transparent 67%); right:-240px; top:-280px; z-index:-1; pointer-events:none; }
.inner-hero-grid { display:grid; grid-template-columns:minmax(0,1.34fr) minmax(310px,.78fr); align-items:center; gap:90px; }
.breadcrumb { display:flex; align-items:center; gap:12px; margin:0 0 58px; flex-wrap:wrap; font-size:11px; font-weight:600; color:#b1c2d3; line-height:1.55; }
.breadcrumb a { color:#e4edf4; transition:color .2s; }
.breadcrumb a:hover { color:var(--gold); }
.breadcrumb span[aria-hidden] { color:#7891a9; }
.breadcrumb [aria-current] { color:#d3e1ec; }
.inner-eyebrow,.inner-kicker { color:#cfac67; text-transform:uppercase; letter-spacing:.19em; font-size:10px; line-height:1.6; font-weight:800; }
.inner-eyebrow { margin:0 0 21px; }
.inner-hero h1 { font-family:var(--heading); max-width:850px; font-size:clamp(40px,4.25vw,63px); letter-spacing:-.065em; line-height:1.13; margin:0 0 22px; font-weight:800; }
.inner-hero h1 em { font-style:normal; color:var(--gold); }
.inner-lead { color:#cad6e3; max-width:650px; font-size:15px; line-height:1.83; margin:0; }
.inner-actions { display:flex; gap:12px; flex-wrap:wrap; align-items:center; margin-top:31px; }
.inner-actions .btn { min-height:49px; }
.inner-hero-aside { border:1px solid rgba(255,255,255,.13); background:linear-gradient(160deg,rgba(255,255,255,.085),rgba(255,255,255,.02)); border-radius:22px; min-height:340px; padding:37px; display:flex; flex-direction:column; justify-content:space-between; box-shadow:0 20px 60px rgba(0,0,0,.11); overflow:hidden; }
.inner-hero-aside>span { color:var(--gold); letter-spacing:.13em; font-size:10px; font-weight:800; line-height:1.6; }
.inner-hero-aside>strong { display:block; font-family:var(--heading); line-height:1.35; letter-spacing:-.038em; font-size:clamp(23px,2.4vw,33px); }
.inner-hero-aside>p { margin:0; color:#b8c9d9; font-size:12px; }
.aside-decoration { display:flex; align-items:flex-end; gap:7px; height:45px; }
.aside-decoration i { display:block; flex:1; border-radius:3px 3px 0 0; background:linear-gradient(#c6a05e,#e9c47a); height:28%; opacity:.86; }
.aside-decoration i:nth-child(2) { height:65%; opacity:.5; }
.aside-decoration i:nth-child(3) { height:41%; opacity:.7; }
.aside-decoration i:nth-child(4) { height:100%; opacity:.95; }
.aside-decoration i:nth-child(5) { height:75%; opacity:.5; }
.inner-section { padding:92px 0; scroll-margin-top:85px; }
.inner-section-muted { background:#f6f8fb; }
.inner-section-heading { display:flex; flex-direction:column; gap:13px; margin-bottom:34px; max-width:750px; }
.inner-section-heading h2,.detail-main h2,.process-layout h2,.faq-layout h2,.project-detail-layout h2 { font-family:var(--heading); font-size:clamp(29px,3.25vw,42px); line-height:1.21; letter-spacing:-.057em; margin:0; }
.inner-section-heading h2 em,.detail-main h2 em,.process-layout h2 em,.faq-layout h2 em,.project-detail-layout h2 em { font-style:normal; color:#ae7e32; }
.inner-section-heading p,.process-layout p,.faq-layout p { font-size:14px; max-width:660px; line-height:1.9; color:#627386; margin:0; }
.service-filters { display:flex; flex-wrap:wrap; gap:10px; margin:0 0 27px; }
.filter-chip { border:1px solid #dae3ec; border-radius:99px; padding:10px 16px; background:white; color:#506277; font-size:12px; font-weight:700; transition:background .2s,color .2s,border-color .2s; }
.filter-chip:hover { border-color:#9baec0; }
.filter-chip.is-selected { background:#122d47; border-color:#122d47; color:white; }
.filter-chip span { background:rgba(255,255,255,.15); display:inline-flex; justify-content:center; align-items:center; border-radius:20px; padding:1px 7px; margin-left:4px; }
.expertise-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.expertise-card { background:#fff; border:1px solid #e2e8ef; border-radius:16px; padding:27px 26px 25px; min-height:288px; display:flex; flex-direction:column; box-shadow:0 7px 24px rgba(14,43,68,.025); transition:transform .2s,box-shadow .2s,border-color .2s; }
.expertise-card:hover { transform:translateY(-4px); box-shadow:0 18px 46px rgba(14,43,68,.09); border-color:#cbdae7; }
.expertise-card[hidden] { display:none !important; }
.exp-card-meta { display:flex; justify-content:space-between; align-items:center; margin-bottom:26px; color:#a1abb5; font-size:10px; letter-spacing:.13em; font-weight:700; }
.exp-icon { min-width:48px; height:45px; display:grid; place-items:center; border-radius:11px; padding:0 5px; background:#eff4fa; color:#123e64; font-size:13px; letter-spacing:0; font-family:var(--heading); font-weight:800; }
.expertise-card:nth-child(3n+2) .exp-icon { background:#fdf4e8; color:#a7772a; }
.expertise-card:nth-child(3n) .exp-icon { background:#ecf7f5; color:#257367; }
.exp-card-category { color:#a17b3a; font-size:10px; letter-spacing:.14em; font-weight:800; text-transform:uppercase; margin:0 0 11px; }
.expertise-card h3 { color:#152f4a; font-size:19px; letter-spacing:-.042em; line-height:1.32; margin:0 0 12px; }
.expertise-card>p:not(.exp-card-category) { color:#6a7889; font-size:12px; line-height:1.75; margin:0 0 23px; }
.expertise-card>a { margin-top:auto; color:#0b476f; font-size:12px; font-weight:800; display:flex; align-items:center; justify-content:space-between; gap:14px; }
.expertise-card>a span { color:#a27e47; font-size:17px; }
.filters-empty { margin:15px 0; color:#596d81; }
.process-layout { display:grid; grid-template-columns:.9fr 1fr; gap:100px; align-items:start; }
.process-layout h2 { margin:13px 0 19px; }
.process-items { border-top:1px solid #dbe4ed; }
.process-items>div { display:flex; align-items:flex-start; gap:26px; border-bottom:1px solid #dbe4ed; padding:22px 0; }
.process-items b { color:#b18a4b; font-size:14px; font-weight:800; font-family:var(--heading); }
.process-items strong { display:block; font-size:15px; margin-bottom:7px; }
.process-items small { display:block; color:#677789; line-height:1.7; font-size:12px; }
.inner-cta { background:#0e2d48; padding:58px 0; color:white; }
.inner-cta-layout { display:flex; align-items:center; justify-content:space-between; gap:32px; }
.inner-cta h2 { letter-spacing:-.04em; font-size:clamp(23px,2.7vw,34px); line-height:1.32; margin:9px 0 7px; }
.inner-cta p { color:#c0d0df; font-size:13px; margin:0; }
.inner-cta .btn { white-space:nowrap; }
.detail-hero { padding-bottom:80px !important; }
.detail-hero-grid { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(275px,.72fr); gap:55px; align-items:center; }
.detail-hero .breadcrumb { margin-bottom:56px; }
.detail-hero h1 { font-size:clamp(37px,4vw,57px); }
.service-hero-illustration { min-height:350px; border:1px solid rgba(255,255,255,.14); border-radius:22px; padding:28px; display:flex; flex-direction:column; justify-content:flex-end; overflow:hidden; position:relative; background:radial-gradient(circle at 60% 45%,#1b5072 0%,#153855 45%,#0b2037 100%); box-shadow:0 22px 50px rgba(0,0,0,.14); }
.illustration-lines,.portfolio-art-grid { position:absolute; inset:0; opacity:.14; background-image:linear-gradient(to right,#b5dcf2 1px,transparent 1px),linear-gradient(to bottom,#b5dcf2 1px,transparent 1px); background-size:30px 30px; mask-image:linear-gradient(to bottom,black,transparent); }
.illustration-icon { position:absolute; z-index:1; top:70px; left:50%; transform:translateX(-50%); width:145px; height:145px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.3); background:rgba(255,255,255,.08); box-shadow:0 0 0 26px rgba(255,255,255,.025),0 0 0 53px rgba(255,255,255,.017); border-radius:30px; font-family:var(--heading); font-weight:800; font-size:27px; color:var(--gold); }
.illustration-number { position:absolute; top:27px; right:28px; font-size:12px; font-weight:800; letter-spacing:.16em; color:#83a7be; }
.service-hero-illustration>strong { z-index:1; font-size:21px; letter-spacing:-.035em; line-height:1.4; max-width:260px; }
.service-hero-illustration>small { z-index:1; font-size:9px; font-weight:800; letter-spacing:.13em; color:#bed1e0; margin-top:9px; }
.content-sidebar-layout { display:grid; grid-template-columns:minmax(0,1fr) 330px; align-items:start; gap:85px; }
.detail-main h2 { margin:14px 0 22px; }
.detail-main>p:not(.detail-muted),.project-detail-layout p { color:#5c6e80; font-size:14px; line-height:1.9; }
.detail-main>p strong { color:#193650; }
.detail-intro { font-size:17px !important; color:#3b5369 !important; line-height:1.85 !important; }
.detail-rule { height:1px; background:#e5eaf0; margin:54px 0; }
.benefits-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.benefit { border:1px solid #e3eaf1; border-radius:12px; background:#fbfcfe; padding:19px; display:flex; align-items:flex-start; gap:12px; }
.benefit>span,.platform-facts li span { flex:none; color:#278778; font-weight:800; }
.benefit p { margin:0; color:#354e65; font-size:13px; line-height:1.7; font-weight:600; }
.deliverables-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; }
.deliverables-list li { display:flex; align-items:start; gap:20px; padding:17px 0; border-bottom:1px solid #e7edf1; }
.deliverables-list li span { color:#b18d51; font-size:12px; font-weight:800; }
.deliverables-list li p { font-size:14px; font-weight:600; color:#334b62; margin:0; line-height:1.65; }
.detail-muted { color:#7a8796; font-size:12px; line-height:1.8; margin-bottom:22px; }
.usecase-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.usecase-grid>div { border:1px solid #dfe8f0; background:#f8fafc; border-radius:10px; padding:19px; display:flex; justify-content:space-between; gap:15px; font-size:13px; font-weight:700; color:#2b465e; }
.usecase-grid>div span { color:#af8e57; }
.sticky-contact-card { background:#f4f7fa; border:1px solid #e1e9f0; border-radius:17px; padding:27px; position:sticky; top:105px; }
.sticky-contact-card h3 { margin:13px 0 12px; font-size:23px; letter-spacing:-.045em; line-height:1.35; }
.sticky-contact-card>p { color:#65798a; font-size:12px; line-height:1.8; margin-bottom:23px; }
.sticky-contact-card .btn { font-size:11px; }
.secondary-contact-link { display:flex; justify-content:center; align-items:center; gap:7px; padding:18px 0 0; font-size:12px; font-weight:800; color:#1a4566; }
.sticky-separator { height:1px; background:#d8e0e7; margin:24px 0; }
.sticky-note { display:flex; align-items:start; gap:10px; }
.sticky-note>span { color:#bf984e; font-size:18px; }
.sticky-note>p { color:#758596; font-size:11px; line-height:1.75; margin:0; }
.faq-layout { display:grid; grid-template-columns:.8fr 1fr; gap:75px; }
.faq-layout h2 { margin:15px 0 18px; }
.faq-items { border-top:1px solid #d9e4eb; }
.faq-item { border-bottom:1px solid #d9e4eb; }
.faq-item summary { list-style:none; display:flex; justify-content:space-between; align-items:center; gap:15px; cursor:pointer; font-size:14px; font-weight:800; line-height:1.5; padding:23px 0; color:#18344f; }
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary span { flex:none; display:grid; place-items:center; border-radius:50%; width:28px; height:28px; background:white; color:#9a722b; font-size:20px; font-weight:500; }
.faq-item[open] summary span { transform:rotate(45deg); }
.faq-item>div { color:#586e82; font-size:13px; line-height:1.9; padding:0 10px 22px 0; }
.related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.related-card { display:flex; flex-direction:column; min-height:162px; padding:24px; border:1px solid #e0e8f0; border-radius:14px; transition:border-color .2s,transform .2s; }
.related-card:hover { transform:translateY(-3px); border-color:#afc3d2; }
.related-card>span { color:#a27d40; font-size:10px; letter-spacing:.08em; font-weight:800; text-transform:uppercase; }
.related-card>strong { font-size:16px; letter-spacing:-.035em; margin:16px 0 auto; }
.related-card small { margin-top:12px; color:#0c527e; font-weight:800; display:flex; justify-content:space-between; }
.see-all-services { display:inline-flex; margin-top:25px; font-size:13px; font-weight:800; color:#0e4e76; gap:12px; }
.portfolio-hero-art { min-height:340px; justify-content:flex-start; gap:15px; }
.portfolio-hero-art p { margin-top:auto; }
.portfolio-art-display { position:relative; min-height:206px; display:flex; align-items:center; justify-content:center; }
.screen-mini { width:78%; height:159px; background:#f4f8fb; border:7px solid #0b1826; border-radius:11px; transform:rotate(-5deg); box-shadow:0 25px 35px rgba(0,0,0,.3); padding:12px; }
.screen-mini-dots { display:block; color:#d0a45d; font-size:8px; letter-spacing:3px; }
.screen-mini-chart { display:block; height:55px; border-radius:7px; margin:9px 0; background:linear-gradient(110deg,#d1e3ee 20%,#6fa6cd 60%,#d1e3ee 61%,#d1e3ee 76%,#f6dca9 77%); }
.screen-mini-row { display:block; height:8px; width:80%; border-radius:5px; background:#dbe7f0; margin:8px 0; }
.screen-mini-row.short { width:55%; }
.floating-art-label { position:absolute; bottom:9px; right:3px; background:#f0c977; color:#152f4b; padding:12px; border-radius:9px; font-family:var(--heading); font-size:11px; font-weight:800; transform:rotate(7deg); box-shadow:0 10px 25px rgba(0,0,0,.2); }
.floating-art-label span { color:white; }
.portfolio-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:23px; }
.portfolio-card { border:1px solid #dfe8f0; border-radius:17px; background:white; overflow:hidden; }
.portfolio-art { min-height:310px; position:relative; overflow:hidden; background:radial-gradient(circle at 30% 10%,#245378,#0e2440 65%,#091a2a); display:flex; align-items:center; justify-content:center; }
.portfolio-art-copper { background:radial-gradient(circle at 25% 10%,#725f3d,#283750 52%,#08182d); }
.portfolio-art-blue { background:radial-gradient(circle at 35% 10%,#266e95,#0e3a54 47%,#0b2139); }
.portfolio-art-brand { border:1px solid rgba(255,255,255,.21); border-radius:26px; width:135px; height:135px; display:grid; place-items:center; font-family:var(--heading); font-size:45px; color:var(--gold); font-weight:800; box-shadow:0 0 0 30px rgba(255,255,255,.03),0 0 0 59px rgba(255,255,255,.017); }
.portfolio-art-footer { position:absolute; bottom:25px; left:28px; right:28px; display:flex; justify-content:space-between; align-items:center; color:#e9f1f7; gap:10px; }
.portfolio-art-footer span { font-size:9px; letter-spacing:.14em; color:#b4c7d8; font-weight:800; }
.portfolio-art-footer strong { font-size:13px; }
.portfolio-body { padding:30px; }
.portfolio-cat { font-size:10px; color:#a0783a; text-transform:uppercase; letter-spacing:.12em; font-weight:800; }
.portfolio-body h3 { font-size:25px; letter-spacing:-.045em; margin:11px 0; }
.portfolio-body p { font-size:13px; color:#657789; line-height:1.9; min-height:104px; }
.portfolio-actions { display:flex; flex-wrap:wrap; align-items:center; gap:15px; margin-top:23px; }
.portfolio-actions .btn { min-height:43px; font-size:11px; }
.portfolio-external { font-size:12px; color:#165278; font-weight:800; }
.portfolio-disclaimer { padding:22px 25px; margin-top:28px; border:1px solid #dfe8f0; border-radius:12px; background:#f9fbfd; }
.portfolio-disclaimer strong { font-size:13px; }
.portfolio-disclaimer p { color:#738296; font-size:12px; line-height:1.75; margin:6px 0 0; }
.project-detail-layout { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:85px; }
.project-detail-layout h2 { margin:13px 0 24px; }
.platform-facts { list-style:none; padding:0; margin:10px 0 22px; display:flex; flex-direction:column; gap:13px; }
.platform-facts li { display:flex; gap:12px; padding:15px; border:1px solid #e1e8ee; border-radius:9px; color:#34536b; font-size:13px; }
.project-caution { background:#f5f8fb; border-left:3px solid #d7b06a; border-radius:5px; padding:18px; margin-top:24px; font-size:12px !important; }
.project-side { background:#f5f8fb; border:1px solid #e0e8f0; border-radius:17px; padding:27px; align-self:start; position:sticky; top:105px; display:flex; flex-direction:column; }
.project-side>strong { font-size:24px; margin:16px 0 8px; }
.project-side>span:not(.inner-kicker) { font-size:12px; color:#64778b; margin-bottom:28px; }
.project-side>small { font-size:11px; margin-top:14px; color:#7f8d9e; line-height:1.7; }
.project-brand-symbol { width:120px; height:120px; font-size:38px; }
@media(max-width:1100px){.inner-hero-grid{gap:38px}.content-sidebar-layout,.project-detail-layout{gap:45px}.process-layout{gap:55px}.faq-layout{gap:48px}}
@media(max-width:920px){.expertise-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inner-hero-grid,.detail-hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(235px,.72fr);gap:24px}.inner-hero-aside{padding:27px;min-height:325px}.inner-hero h1{font-size:clamp(34px,4.6vw,49px)}.service-hero-illustration{min-height:325px}.content-sidebar-layout,.project-detail-layout{grid-template-columns:minmax(0,1fr) 260px;gap:25px}.sticky-contact-card,.project-side{padding:21px}.portfolio-art{min-height:265px}}
@media(max-width:720px){.v2-inner-page .inner-hero{padding:26px 0 62px}.breadcrumb{margin-bottom:42px;font-size:10px;gap:9px}.inner-hero-grid,.detail-hero-grid{display:grid;grid-template-columns:1fr;gap:33px}.inner-hero h1,.detail-hero h1{font-size:clamp(33px,8.1vw,44px);line-height:1.18}.inner-lead{font-size:13px;line-height:1.83}.inner-actions{gap:9px;margin-top:25px}.inner-actions .btn{font-size:11px;min-height:45px}.inner-hero-aside{min-height:215px;gap:19px;padding:25px}.inner-hero-aside>strong{font-size:24px}.aside-decoration{height:24px}.v2-inner-page .inner-section{padding:64px 0}.inner-section-heading{margin-bottom:27px}.inner-section-heading h2,.detail-main h2,.process-layout h2,.faq-layout h2,.project-detail-layout h2{font-size:clamp(27px,7.4vw,35px)}.inner-section-heading p{font-size:13px}.service-filters{gap:7px}.filter-chip{font-size:10px;padding:9px 11px}.expertise-grid{grid-template-columns:1fr;gap:12px}.expertise-card{min-height:0;padding:22px}.exp-card-meta{margin-bottom:16px}.expertise-card h3{font-size:18px}.expertise-card>p:not(.exp-card-category){margin-bottom:17px}.process-layout,.faq-layout{grid-template-columns:1fr;gap:30px}.inner-cta{padding:38px 0}.inner-cta-layout{display:flex;flex-direction:column;align-items:flex-start;gap:18px}.inner-cta h2{font-size:24px}.detail-hero .breadcrumb{margin-bottom:39px}.service-hero-illustration{min-height:265px}.illustration-icon{top:55px;width:100px;height:100px;font-size:21px;border-radius:19px}.content-sidebar-layout,.project-detail-layout{display:flex;flex-direction:column;gap:37px}.detail-sidebar,.project-side{width:100%}.sticky-contact-card,.project-side{position:static}.detail-intro{font-size:15px !important}.detail-rule{margin:37px 0}.related-grid{grid-template-columns:1fr;gap:10px}.related-card{min-height:130px}.faq-item summary{font-size:13px;padding:18px 0}.portfolio-grid{grid-template-columns:1fr;gap:17px}.portfolio-art{min-height:220px}.portfolio-art-brand{width:100px;height:100px;font-size:32px}.portfolio-body{padding:23px}.portfolio-body p{min-height:0}.portfolio-hero-art{min-height:240px}.screen-mini{width:65%;}.usecase-grid{grid-template-columns:1fr}.benefits-grid{grid-template-columns:1fr}.portfolio-art-footer{bottom:18px;left:20px;right:20px}.portfolio-disclaimer{padding:19px}}
@media(max-width:380px){.inner-hero h1,.detail-hero h1{font-size:32px}.inner-actions{display:flex;flex-direction:column;align-items:stretch}.inner-actions .btn{justify-content:center}.portfolio-actions{flex-direction:column;align-items:stretch}.portfolio-actions .btn{width:100%;justify-content:center}.portfolio-external{text-align:center}.service-hero-illustration{min-height:245px}}
@media(prefers-reduced-motion:reduce){.expertise-card,.related-card{transition:none}.expertise-card:hover,.related-card:hover{transform:none}}
