/* ASIC only — shared Xdigit typography, colours and action components. */
.xdigit-asic-page { color:#4b5563; font-family:var(--font-body); overflow-wrap:break-word; }
.xdigit-asic-page section[id] { scroll-margin-top:6rem; }
.xdigit-asic-page :is(h1,h2,h3,h4) { font-family:var(--font-display); }
.xdigit-asic-page :is(.xdigit-asic-def-block,.xdigit-process-block) { padding:4rem 0 5rem; background:#fff; }
.xdigit-asic-page :is(.xdigit-motivations-block,.xdigit-skills-tabs-block) { padding:5rem 0; background:var(--color-xdigit-gray-light); }
.xdigit-asic-page .asic-intro-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.05fr); gap:clamp(2rem,4vw,4rem); align-items:center; }
.xdigit-asic-page :is(.asic-text-content,.Mode-ASIC) { min-width:0; }
.xdigit-asic-page :is(.asic-label,.section-tag) { display:block; margin-bottom:1rem; color:var(--color-xdigit-link); font-size:.875rem; font-weight:600; }
.xdigit-asic-page .asic-title { margin:0 0 1.5rem; color:var(--color-xdigit-blue); font-size:clamp(2.25rem,3.6vw,3.5rem); font-weight:700; line-height:1.08; letter-spacing:-.025em; }
.xdigit-asic-page .asic-paragraph { max-width:55ch; font-size:1.0625rem; line-height:1.75; }
.xdigit-asic-page .asic-real-image { display:block; width:100%; height:auto; aspect-ratio:3 / 2; object-fit:contain; }
.xdigit-asic-page .xdigit-asic-actions { gap:1.25rem; margin-top:2rem; }
.xdigit-asic-page .xdigit-asic-anchor { display:inline-flex; align-items:center; min-height:44px; font-weight:600; }
.xdigit-asic-page .asic-intro-details { margin-top:3.5rem; }
.xdigit-asic-page .asic-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; margin:0; padding:2rem 0; border-top:1px solid #c6d0db; list-style:none; }
.xdigit-asic-page .asic-list li { min-width:0; padding-left:1rem; border-left:3px solid var(--color-xdigit-cta); font-size:1rem; line-height:1.65; }
.xdigit-asic-page .asic-list strong { display:block; margin-bottom:.5rem; color:var(--color-xdigit-blue); font-family:var(--font-display); font-size:1.125rem; }
.xdigit-asic-page .quote-box { max-width:58rem; margin-top:1rem; color:var(--color-xdigit-blue); font-size:1.0625rem; line-height:1.7; }
.xdigit-asic-page :is(.motivations-header,.process-header,.skills-header) { max-width:49rem; margin-bottom:2.5rem; }
.xdigit-asic-page :is(.motivations-title,.process-title,.skills-title) { margin:0; color:var(--color-xdigit-blue); font-size:clamp(2rem,3vw,3rem); font-weight:700; line-height:1.12; letter-spacing:-.025em; }
.xdigit-asic-page :is(.process-subtitle,.skills-subtitle) { margin-top:1.25rem; font-size:1.125rem; line-height:1.7; }
.xdigit-asic-page .reasons-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
.xdigit-asic-page .asic-benefit { display:grid; grid-template-columns:8rem minmax(0,1fr); align-items:start; gap:1.5rem; min-width:0; padding:2rem; background:#fff; border:1px solid #d1d5db; }
.xdigit-asic-page .asic-benefit-visual { display:block; width:100%; height:6rem; object-fit:contain; }
.xdigit-asic-page :is(.reason-text h3,.step-title,.cat-title) { margin:0; color:var(--color-xdigit-blue); font-size:1.25rem; font-weight:700; line-height:1.35; }
.xdigit-asic-page :is(.reason-text p,.step-desc) { margin-top:1rem; font-size:1rem; line-height:1.7; }
.xdigit-asic-page .central-image-wrapper { grid-column:1 / -1; padding-top:1.5rem; }
.xdigit-asic-page .motivations-image { display:block; width:100%; max-width:68rem; height:auto; margin-inline:auto; object-fit:contain; }
.xdigit-asic-page .timeline-container { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:2rem; }
.xdigit-asic-page .process-step { min-width:0; padding-top:1.75rem; }
.xdigit-asic-page .step-number-circle { margin-bottom:1.75rem; color:var(--color-xdigit-link); font-family:var(--font-display); font-size:2.5rem; font-weight:700; line-height:1; }
.xdigit-asic-page .role-badge { display:block; margin-bottom:.75rem; color:#4b5563; font-size:.875rem; }
.xdigit-asic-page .tabs-nav { display:flex; flex-wrap:wrap; gap:.5rem; margin-bottom:2rem; padding-bottom:1.5rem; border-bottom:1px solid #b8c7d4; }
.xdigit-asic-page .tabs-nav[hidden] { display:none; }
.xdigit-asic-page .tab-btn { min-height:48px; padding:.875rem 1.25rem; border:1px solid #b8c7d4; border-radius:0; color:var(--color-xdigit-blue); background:#fff; font:700 .75rem/1.4 var(--font-body); text-transform:uppercase; letter-spacing:.025em; cursor:pointer; }
.xdigit-asic-page .tab-btn:hover { border-color:var(--color-xdigit-link); }
.xdigit-asic-page .tab-btn:focus-visible { outline:2px solid var(--color-xdigit-link); outline-offset:3px; }
.xdigit-asic-page .tab-btn.active { color:var(--xdigit-button-text); background:var(--xdigit-button-background); border-color:var(--xdigit-button-background); }
.xdigit-asic-page .skills-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; align-items:start; }
.xdigit-asic-page .skill-category-card { min-width:0; padding:2rem; background:#fff; border:1px solid #d1d5db; border-top:3px solid var(--color-xdigit-cta); }
.xdigit-asic-page .skill-card-icon { display:block; margin-bottom:1rem; color:var(--color-xdigit-link); }
.xdigit-asic-page .skill-card-summary { margin:1rem 0 0; font-size:1rem; line-height:1.65; }
.xdigit-asic-page .skill-panel-title { margin:0 0 .75rem; color:var(--color-xdigit-blue); font-size:1.5rem; font-weight:700; line-height:1.3; }
.xdigit-asic-page .skill-panel-intro { max-width:52rem; margin:0 0 1.75rem; font-size:1.0625rem; line-height:1.65; }
.xdigit-asic-page .tab-content + .tab-content { margin-top:2.5rem; }
.xdigit-asic-page .tabs-ready .tab-content { margin-top:0; }
.xdigit-asic-page .xdigit-industrialization-block { padding:5rem 0; background:#fff; }
.xdigit-asic-page .xdigit-industrialization-block .skills-grid { margin-top:2.5rem; }
.xdigit-asic-page .tech-tags { display:flex; flex-wrap:wrap; gap:.625rem; margin-top:1.5rem; }
.xdigit-asic-page .tech-tag { padding:.5rem .75rem; color:var(--color-xdigit-blue); background:var(--color-xdigit-gray-light); font-size:.9375rem; line-height:1.4; }
.xdigit-asic-page .tab-content[hidden] { display:none; }
.xdigit-asic-page .xdigit-foundries-block { padding:5rem 0; background:#fff; }
.xdigit-asic-page .asic-foundries-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; margin-top:2.5rem; border:1px solid #d1d5db; background:#d1d5db; }
.xdigit-asic-page .asic-foundry { display:flex; flex-direction:column; align-items:center; gap:1.25rem; min-width:0; padding:2rem; background:#fff; text-align:center; }
.xdigit-asic-page .asic-foundry img { max-width:10rem; margin-inline:auto; }
@media(min-width:1280px) { .xdigit-asic-page .asic-foundries-grid { grid-template-columns:repeat(6,minmax(0,1fr)); } .xdigit-asic-page .asic-foundry { padding:1.5rem 1rem; } }
@media(max-width:1100px) {
    .xdigit-asic-page .asic-benefit { grid-template-columns:minmax(0,1fr); gap:1rem; }
    .xdigit-asic-page .asic-benefit-visual { width:10rem; }
    .xdigit-asic-page .timeline-container { grid-template-columns:repeat(2,minmax(0,1fr)); gap:2.5rem; }
}
@media(max-width:1023px) {
    .xdigit-asic-page .asic-intro-grid { grid-template-columns:minmax(0,1fr); gap:2rem; }
    .xdigit-asic-page .asic-text-content { max-width:48rem; }
    .xdigit-asic-page .Mode-ASIC { width:100%; max-width:38rem; justify-self:center; }
    .xdigit-asic-page .asic-intro-details { margin-top:2rem; }
}
@media(max-width:767px) {
    .xdigit-asic-page :is(.xdigit-asic-def-block,.xdigit-motivations-block,.xdigit-process-block,.xdigit-skills-tabs-block,.xdigit-foundries-block,.xdigit-industrialization-block) { padding:3rem 0; }
    .xdigit-asic-page .skills-grid { grid-template-columns:minmax(0,1fr); }
    .xdigit-asic-page .asic-list,.xdigit-asic-page .reasons-grid,.xdigit-asic-page .timeline-container { grid-template-columns:minmax(0,1fr); }
    .xdigit-asic-page .asic-list { gap:1.5rem; }
    .xdigit-asic-page .asic-benefit,.xdigit-asic-page .skill-category-card { padding:1.5rem; }
    .xdigit-asic-page .central-image-wrapper { padding-top:.5rem; }
    .xdigit-asic-page .tab-btn { flex:1 1 40%; padding:.875rem .625rem; }
    .xdigit-asic-page .asic-foundries-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .xdigit-asic-page .asic-foundry { padding:1.5rem .75rem; }
    .xdigit-asic-page :is(.asic-paragraph,.process-subtitle,.skills-subtitle) { font-size:1rem; }
}
