/* ===== 12-subpage-consistency.css ===== */
/* ===== subpage-consistency.css ===== */
/* Shared visual rules for every capability subpage. */
.subpage-active .capabilities-nav-link{color:var(--violet)!important}
.subpage-active .capabilities-nav-link::before{background:var(--orange)!important;box-shadow:0 0 0 3px rgba(239,119,0,.14)!important}
.subpage-active .capabilities-nav-link::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:2px;background:var(--violet);transform:scaleX(1);opacity:1;pointer-events:none}

/* The compact legal footer is identical across index and capability pages. */
.site-footer{padding:0!important;background:#090e29!important;color:#eef0f7!important;border:0!important}
.site-footer .footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0!important;background:transparent!important}
.site-footer .site-brand{color:#fff!important}
.site-footer .site-brand small{color:#bbc0d1!important}
.site-footer .footer-bottom p,.site-footer .footer-bottom>div{margin:0;color:#afb5c8!important;font-size:11px!important}
.site-footer .footer-bottom>div{display:flex;gap:20px}

/* Formal Verification had older white-footer rules; these final rules deliberately win. */
.formal-verification-page>.site-footer{background:#090e29!important;color:#eef0f7!important}

.capability-rich-page{padding:125px 0 90px;background:var(--paper)}
.capability-hero-rich{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:70px;align-items:center;padding:40px 0 85px}
.capability-hero-copy h1{max-width:850px;color:var(--ink);font-size:clamp(42px,5.2vw,70px);line-height:.98;letter-spacing:-3px;text-transform:uppercase}
.capability-tag{margin:22px 0 0;color:var(--violet);font:12px "IBM Plex Mono",monospace;letter-spacing:.08em}
.capability-intro{max-width:760px;margin:18px 0 28px;color:var(--muted);font-size:17px;line-height:1.75}
.capability-visual-card{background:#0b102f;border:1px solid #653593;border-top:2px solid var(--orange);border-radius:22px;padding:18px;box-shadow:0 24px 50px rgba(16,22,56,.14)}
.capability-visual-card>img{display:block;width:100%;height:auto;border-radius:14px}
.capability-visual-caption{display:flex;align-items:center;gap:9px;margin:14px 4px 2px;color:#d7d9e7;font:11px "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase}
.capability-visual-caption img,.detail-eyebrow img{width:17px;height:17px;object-fit:contain}
.capability-visual-caption img{filter:none}
.capability-scope-rich,.capability-detail-rich,.capability-method-rich,.capability-use-rich{padding:70px 0;border-top:1px solid var(--line)}
.cap-section-heading{max-width:780px;margin-bottom:30px}
.detail-eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 12px;color:var(--violet);font:11px "IBM Plex Mono",monospace;letter-spacing:.12em;text-transform:uppercase}
.detail-eyebrow img{filter:none}
.cap-section-heading h2,.cap-detail-intro h2{margin:0;color:var(--ink);font-size:clamp(32px,4vw,52px);letter-spacing:-2px;text-transform:uppercase}
.cap-scope-list{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid var(--line);background:var(--white)}
.cap-scope-list li{position:relative;display:flex;align-items:flex-start;gap:13px;padding:20px 24px;border-bottom:1px solid var(--line);color:#59617a;font-size:14px;list-style:none;transition:background .2s ease,transform .2s ease}
.cap-scope-list li:nth-child(odd){border-right:1px solid var(--line)}
.cap-scope-list li:nth-last-child(-n+2){border-bottom:0}
.cap-scope-list li img,.cap-provide-list img{width:17px;height:17px;flex:0 0 auto;margin-top:3px}
.cap-scope-list li:hover{background:#f8f4fb;transform:translateX(4px)}
.cap-scope-list li:hover img{filter:none}
.capability-detail-rich{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:70px}
.cap-detail-intro p:last-child{max-width:620px;color:var(--muted);line-height:1.8}
.cap-provide-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}
.cap-provide-list li{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid var(--line);color:#59617a;font-size:14px;line-height:1.65;transition:padding-left .2s ease,background .2s ease}
.cap-provide-list li:hover{padding-left:8px;background:#faf8fc}
.cap-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.cap-step{padding:26px;background:var(--white);border:1px solid var(--line);border-top:2px solid var(--violet);transition:transform .22s ease,box-shadow .22s ease,border-top-color .22s ease}
.cap-step:hover{transform:translateY(-5px);border-top-color:var(--orange);box-shadow:0 16px 30px rgba(16,22,56,.08)}
.cap-step-no{display:inline-grid;place-items:center;width:34px;height:34px;margin-bottom:22px;background:var(--violet);color:#fff;border-radius:8px;font:600 11px "IBM Plex Mono",monospace}
.cap-step h3{margin:0 0 10px;color:var(--ink);font-size:17px;text-transform:uppercase}
.cap-step p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.cap-use-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.cap-use-card{padding:24px;background:var(--white);border:1px solid var(--line);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.cap-use-card:hover{transform:translateY(-5px);border-color:#cbb8db;box-shadow:0 14px 28px rgba(16,22,56,.07)}
.cap-use-icon{width:42px;height:42px;display:grid;place-items:center;margin-bottom:18px;background:#f4edf9;border:1px solid #dfd2ea;border-radius:10px}
.cap-use-icon img{width:20px;height:20px}
.cap-use-card h3{margin:0 0 8px;font-size:16px;text-transform:uppercase}
.cap-use-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.65}
.capability-contact-rich{margin-top:10px;padding:52px 60px;text-align:center;background:linear-gradient(135deg,#0b102f,#241342);border-top:2px solid var(--orange);border-radius:24px;color:#fff}
.capability-contact-rich .eyebrow{color:#cdb7e0}
.capability-contact-rich h2{max-width:900px;margin:0 auto;color:#fff;font-size:clamp(28px,4vw,46px);letter-spacing:-1.5px;text-transform:uppercase}
.capability-contact-rich>p:not(.eyebrow){max-width:650px;margin:16px auto 26px;color:#c8cad7}
.capability-contact-rich .button{background:var(--orange);border-color:var(--orange);color:#fff}

@media(max-width:1000px){.capability-hero-rich{grid-template-columns:1fr;gap:35px}.capability-visual-card{max-width:760px}.capability-detail-rich{grid-template-columns:1fr;gap:35px}.cap-use-grid{grid-template-columns:repeat(2,1fr)}.cap-steps{grid-template-columns:1fr}}
@media(max-width:700px){.site-footer .footer-bottom{align-items:flex-start!important;flex-direction:column!important;padding:20px 0!important}.site-footer .footer-bottom>div{flex-wrap:wrap;gap:8px 16px}.capability-rich-page{padding:105px 0 65px}.capability-hero-rich{padding:25px 0 55px}.capability-hero-copy h1{font-size:clamp(38px,11vw,54px);letter-spacing:-2px}.capability-intro{font-size:15px}.cap-scope-list{grid-template-columns:1fr}.cap-scope-list li:nth-child(odd){border-right:0}.cap-scope-list li:nth-last-child(-n+2){border-bottom:1px solid var(--line)}.cap-scope-list li:last-child{border-bottom:0}.cap-use-grid{grid-template-columns:1fr}.capability-contact-rich{padding:40px 22px}}
@media(prefers-reduced-motion:reduce){.cap-scope-list li,.cap-step,.cap-use-card,.cap-provide-list li{transition:none}}

/* --- Subpage card palette: Terasilicon IQ soft violet / warm cream --- */
.cap-steps .cap-step:nth-child(odd),
.cap-use-grid .cap-use-card:nth-child(odd){
  background:#f7f2fd;
  border-top-color:#653593;
}
.cap-steps .cap-step:nth-child(even),
.cap-use-grid .cap-use-card:nth-child(even){
  background:#fff8ef;
  border-top-color:#ef7700;
}
.cap-steps .cap-step:nth-child(odd) .cap-step-no,
.cap-use-grid .cap-use-card:nth-child(odd) .cap-use-icon{
  background:#eee4f8;
  border-color:#d8c6e8;
  color:#653593;
}
.cap-steps .cap-step:nth-child(even) .cap-step-no,
.cap-use-grid .cap-use-card:nth-child(even) .cap-use-icon{
  background:#ffeddc;
  border-color:#f5c99f;
  color:#ef7700;
}
.cap-steps .cap-step:hover{border-top-color:#ef7700}
.cap-use-grid .cap-use-card:hover{border-color:#cbb8db}
.cap-use-grid .cap-use-card:nth-child(even):hover{border-color:#f0bf8f}

/* Scope cards on capability subpages follow the same alternating palette. */
.cap-scope-list li:nth-child(odd){background:#f7f2fd}
.cap-scope-list li:nth-child(even){background:#fff8ef}
.cap-scope-list li:hover{background:#f1e9f8}
.cap-scope-list li:nth-child(even):hover{background:#fff0df}

/* ===== FINAL CAPABILITY CARD PALETTE — ALL SUBPAGES ===== */
/* Keep the same alternating soft-purple / warm-cream treatment everywhere,
   including the legacy Formal Verification card grid. */
.capability-rich-page .cap-step:nth-child(odd),
.capability-rich-page .cap-use-card:nth-child(odd){
  background:#f7f2fd !important;
  border-top:2px solid #653593 !important;
  border-color:rgba(101,53,147,.20) !important;
}
.capability-rich-page .cap-step:nth-child(even),
.capability-rich-page .cap-use-card:nth-child(even){
  background:#fff8ef !important;
  border-top:2px solid #ef7700 !important;
  border-color:rgba(239,119,0,.22) !important;
}
.capability-rich-page .cap-step:nth-child(odd) .cap-step-no,
.capability-rich-page .cap-use-card:nth-child(odd) .cap-use-icon{
  background:#eee4f8 !important;
  border:1px solid #d8c6e8 !important;
  color:#653593 !important;
}
.capability-rich-page .cap-step:nth-child(even) .cap-step-no,
.capability-rich-page .cap-use-card:nth-child(even) .cap-use-icon{
  background:#ffeddc !important;
  border:1px solid #f5c99f !important;
  color:#ef7700 !important;
}

/* Formal Verification uses its older utility-card markup, so give that grid
   the exact same palette as the newer capability subpages. */
.formal-verification-page > section:nth-of-type(3) > .max-w-7xl > .grid > div:nth-child(odd){
  background:#f7f2fd !important;
  border:1px solid rgba(101,53,147,.20) !important;
  border-top:2px solid #653593 !important;
}
.formal-verification-page > section:nth-of-type(3) > .max-w-7xl > .grid > div:nth-child(even){
  background:#fff8ef !important;
  border:1px solid rgba(239,119,0,.22) !important;
  border-top:2px solid #ef7700 !important;
}
.formal-verification-page > section:nth-of-type(3) > .max-w-7xl > .grid > div:nth-child(odd) > div:first-child{
  background:#eee4f8 !important;
  border:1px solid #d8c6e8 !important;
  color:#653593 !important;
}
.formal-verification-page > section:nth-of-type(3) > .max-w-7xl > .grid > div:nth-child(even) > div:first-child{
  background:#ffeddc !important;
  border:1px solid #f5c99f !important;
  color:#ef7700 !important;
}
.formal-verification-page > section:nth-of-type(3) > .max-w-7xl > .grid > div:nth-child(odd):hover{
  background:#f1e9f8 !important;
  border-color:rgba(101,53,147,.38) !important;
}
.formal-verification-page > section:nth-of-type(3) > .max-w-7xl > .grid > div:nth-child(even):hover{
  background:#fff0df !important;
  border-color:rgba(239,119,0,.40) !important;
}
