/* ==========================================================================
   SIXTY SPARES // AEROSPACE DEFENSE DOSSIER DESIGN SYSTEM
   AUTHORITATIVE GLOBAL STYLESHEET
   ========================================================================== */

:root {
    --ssml-red: #810000;
    --ssml-charcoal: #000000;
    --ssml-hangar: #f8f6f0;
    --ssml-ink: #111111;
    --ssml-slate: #5a5a5a;
    --ssml-border: #e0e0e0;
    --ssml-card: #ffffff;
}

/* --------------------------------------------------------------------------
   1. GLOBAL CONTAINER & DOSSIER WRAPPER
   -------------------------------------------------------------------------- */
.ssml-dossier-wrapper {
    width: 100%;
    margin: 0;
    padding: 0;
    background-color: var(--ssml-hangar);
    box-sizing: border-box;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
    color: var(--ssml-ink);
    display: flow-root; /* prevents child margins from collapsing through and exposing the theme's background above/below the first and last card */
}

/* Belt-and-suspenders: make the page's true background the same beige
   everywhere on the front end, so any page — dossier, manual reader, or
   otherwise — shows the same color even outside our own wrapper divs. */
body:not(.wp-admin) {
    background-color: var(--ssml-hangar) !important;
}

/* --------------------------------------------------------------------------
   2. PAGE INTRO CARD (compact — replaces the old full-bleed hero band)
   -------------------------------------------------------------------------- */
.ssml-hero-breakout {
    max-width: 1200px;
    margin: 24px auto 20px auto;
    background: #ffffff;
    border: 1px solid var(--ssml-border);
    border-top: 3px solid var(--ssml-red);
    border-radius: 8px;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.10);
    padding: 28px 32px;
    box-sizing: border-box;
    text-align: left;
}

.ssml-hero-inner {
    max-width: none;
    margin: 0;
}

/* ATOMIC BLOCK 2: MONOSPACE BEACON BADGE */
.ssml-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--ssml-charcoal);
    color: #ffffff;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 10px;
    font-weight: 800;
    padding: 5px 12px;
    border-radius: 4px;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 12px;
}

.ssml-beacon-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--ssml-red);
    box-shadow: 0 0 8px var(--ssml-red);
    animation: ssml-pulse 2s infinite ease-in-out;
}

@keyframes ssml-pulse {
    0%, 100% { opacity: 0.6; transform: scale(0.9); }
    50% { opacity: 1; transform: scale(1.15); }
}

.ssml-hero-title {
    font-size: clamp(22px, 2.4vw, 30px);
    font-weight: 900;
    letter-spacing: -0.02em;
    color: var(--ssml-ink);
    margin: 0 0 8px 0;
    line-height: 1.15;
    text-transform: uppercase;
}

.ssml-hero-subtitle {
    font-size: 14px;
    line-height: 1.55;
    color: #5a5a5a;
    max-width: 760px;
    margin: 0;
}

/* In-Hero Search Terminal */
.ss-store-search-box {
    margin-top: 20px;
}

.ss-search-input-wrap {
    display: flex;
    align-items: center;
    background: #ffffff;
    border: 2px solid var(--ssml-charcoal);
    border-radius: 6px;
    overflow: hidden;
}

.ss-search-input {
    flex: 1;
    height: 44px;
    border: none !important;
    background: transparent !important;
    font-size: 14px;
    font-family: ui-monospace, monospace;
    color: var(--ssml-ink);
    padding: 0 16px !important;
    outline: none !important;
    box-shadow: none !important;
}

.ss-search-submit {
    height: 44px;
    background: var(--ssml-charcoal);
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
    font-family: ui-monospace, monospace;
    letter-spacing: 0.8px;
    padding: 0 20px;
    border: none;
    cursor: pointer;
    transition: background 0.15s ease;
}

.ss-search-submit:hover {
    background: var(--ssml-red);
}

/* --------------------------------------------------------------------------
   3. STACKED CONTENT CARDS (matches the interactive manual's card rhythm)
   -------------------------------------------------------------------------- */
.ssml-master-card {
    max-width: 1200px;
    margin: 0 auto 20px auto;
    background: #ffffff;
    border: 1px solid var(--ssml-border);
    border-top: 3px solid var(--ssml-red);
    border-radius: 8px;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.10);
    padding: 28px 32px;
    position: relative;
    z-index: 20;
    box-sizing: border-box;
}

/* Eyebrow Dossier Label */
.ssml-dossier-label {
    display: inline-block;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 11px;
    font-weight: 800;
    color: var(--ssml-red);
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.ssml-about-h2 {
    font-size: 26px;
    font-weight: 800;
    color: var(--ssml-ink);
    margin: 0 0 20px 0;
    letter-spacing: -0.3px;
}

.ssml-about-red-accent-bar {
    width: 48px;
    height: 3px;
    background: var(--ssml-red);
    margin: 8px 0 16px 0;
}

/* --------------------------------------------------------------------------
   4. TWO-COLUMN SPLIT GRID & METRIC STATS
   -------------------------------------------------------------------------- */
.ssml-about-grid-two-col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 36px;
    margin-bottom: 36px;
}

.ssml-about-p-lead {
    font-size: 15px;
    line-height: 1.7;
    color: #333333;
    margin: 0;
}

.ssml-about-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1px;
    background: #eaeaea;
    border-radius: 6px;
    overflow: hidden;
    margin: 36px 0;
}

.ssml-stat-card {
    background: #ffffff;
    padding: 24px 16px;
    text-align: center;
}

.ssml-stat-metric {
    font-family: ui-monospace, monospace;
    font-size: 28px;
    font-weight: 900;
    color: var(--ssml-ink);
    letter-spacing: -1px;
}

.ssml-stat-metric.highlight-red {
    color: var(--ssml-red);
}

.ssml-stat-label {
    font-family: ui-monospace, monospace;
    font-size: 10px;
    font-weight: 700;
    color: #666666;
    letter-spacing: 1px;
    margin-top: 4px;
}

/* --------------------------------------------------------------------------
   5. CAPABILITY PILLARS
   -------------------------------------------------------------------------- */
.ssml-about-pillars-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin: 36px 0;
}

.ssml-pillar-card {
    background: #ffffff;
    border: 1px solid #d6d6d6;
    border-radius: 8px;
    padding: 22px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.15s ease, border-color 0.15s ease;
}

.ssml-pillar-card:hover {
    border-color: var(--ssml-charcoal);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.09);
}

.ssml-pillar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.ssml-pillar-code {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    padding: 0 8px;
    background: var(--ssml-charcoal);
    color: #ffffff;
    border-radius: 4px;
    font-family: ui-monospace, monospace;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.4px;
}

.ssml-pillar-sys {
    font-family: ui-monospace, monospace;
    font-size: 10px;
    font-weight: 700;
    color: #666666;
}

.ssml-pillar-title {
    font-size: 17px;
    font-weight: 800;
    color: var(--ssml-ink);
    margin: 0 0 10px 0;
}

.ssml-pillar-body {
    font-size: 13px;
    line-height: 1.6;
    color: #5a5a5a;
    margin: 0;
}

/* --------------------------------------------------------------------------
   6. CATEGORY CHIPS (FIXES SMASHED RED RUN-ON TEXT)
   -------------------------------------------------------------------------- */
.ss-store-category-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 16px 0 35px 0 !important;
}

.ss-cat-btn {
    display: inline-flex !important;
    align-items: center !important;
    background: #ffffff !important;
    border: 1px solid #d6d6d6 !important;
    border-radius: 4px !important;
    padding: 8px 14px !important;
    font-family: ui-monospace, monospace !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #1a1a1a !important;
    text-decoration: none !important;
    letter-spacing: 0.5px !important;
    transition: all 0.15s ease-in-out !important;
}

.ss-cat-btn:hover {
    background: var(--ssml-charcoal) !important;
    border-color: var(--ssml-charcoal) !important;
    color: #ffffff !important;
    transform: translateY(-1px);
}

.ss-cat-btn-name {
    display: inline-block !important;
}

/* --------------------------------------------------------------------------
   7. TACTICAL RFQ FORM GRID & REQUISITION TERMINAL
   -------------------------------------------------------------------------- */
.ssml-rfq-form .ssml-form-section {
    margin-bottom: 36px;
    padding-bottom: 28px;
    border-bottom: 1px dashed #d6d6d6;
}

.ssml-priority-selector {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin: 16px 0 24px 0;
}

.ssml-radio-card {
    background: #f7f7f7;
    border: 2px solid #eaeaea;
    border-radius: 6px;
    padding: 16px;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: 6px;
    transition: all 0.15s ease;
}

.ssml-radio-card input {
    margin-bottom: 6px;
}

.ssml-radio-card .card-title {
    font-family: ui-monospace, monospace;
    font-size: 13px;
    font-weight: 800;
    color: var(--ssml-ink);
}

.ssml-radio-card .card-desc {
    font-size: 12px;
    color: #666666;
    line-height: 1.4;
}

.ssml-radio-card:has(input:checked) {
    border-color: var(--ssml-red);
    background: #fef2f2;
}

.ssml-input-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.ssml-field label {
    display: block;
    font-family: ui-monospace, monospace;
    font-size: 11px;
    font-weight: 700;
    color: #5a5a5a;
    margin-bottom: 6px;
}

.ssml-field input, .ssml-field select, .ssml-field textarea {
    width: 100% !important;
    padding: 10px 12px !important;
    border: 1px solid #d6d6d6 !important;
    border-radius: 4px !important;
    font-size: 13px !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
    color: var(--ssml-ink) !important;
}

.ssml-requisition-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 14px;
}

.ssml-requisition-table th {
    background: var(--ssml-charcoal);
    color: #ffffff;
    font-family: ui-monospace, monospace;
    font-size: 11px;
    font-weight: 700;
    padding: 10px 12px;
    text-align: left;
}

.ssml-requisition-table td {
    padding: 8px;
    border-bottom: 1px solid #eaeaea;
}

.ssml-requisition-table td input, .ssml-requisition-table td select {
    width: 100% !important;
    padding: 8px 10px !important;
    border: 1px solid #d6d6d6 !important;
    border-radius: 4px !important;
    font-size: 13px !important;
}

.ssml-cert-checks {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-top: 12px;
}

.ssml-checkbox-item {
    display: flex;
    align-items: center;
    gap: 10px;
    background: #f7f7f7;
    border: 1px solid #eaeaea;
    padding: 12px 14px;
    border-radius: 4px;
    font-size: 13px;
    color: #333333;
    cursor: pointer;
}

/* --------------------------------------------------------------------------
   8. TACTICAL CTA DOCK & BUTTONS
   -------------------------------------------------------------------------- */
.ssml-about-cta-dock {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--ssml-charcoal);
    border-top: 3px solid var(--ssml-red);
    border-radius: 6px;
    padding: 24px 30px;
    margin-top: 36px;
}

.ssml-cta-heading {
    color: #ffffff;
    font-size: 18px;
    font-weight: 800;
    margin: 0 0 6px 0;
}

.ssml-cta-subheading {
    color: #999999;
    font-size: 13px;
    margin: 0;
}

.ssml-cta-actions {
    display: flex;
    gap: 12px;
}

.ssml-btn-tactical-primary {
    background: var(--ssml-red) !important;
    color: #ffffff !important;
    font-family: ui-monospace, monospace !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    padding: 12px 22px !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    letter-spacing: 0.5px !important;
    transition: background 0.15s ease !important;
}

.ssml-btn-tactical-primary:hover {
    background: #810000 !important;
}

.ssml-btn-tactical-secondary {
    background: transparent !important;
    color: #ffffff !important;
    border: 1px solid #666666 !important;
    font-family: ui-monospace, monospace !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    padding: 12px 22px !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    letter-spacing: 0.5px !important;
}

/* --------------------------------------------------------------------------
   9. AUTHORITATIVE 5-COLUMN GLOBAL DEFENSE FOOTER (NO BULLETS, ZERO BLEED)
   -------------------------------------------------------------------------- */
.ssml-site-footer {
    background: var(--ssml-charcoal) !important;
    color: #999999 !important;
    border-top: 3px solid var(--ssml-red) !important;
    padding: 60px 20px 30px 20px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    clear: both !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}

.ssml-footer-inner {
    max-width: 1200px !important;
    margin: 0 auto !important;
}

.ssml-footer-cols {
    display: grid !important;
    grid-template-columns: 2fr 1fr 1fr 1fr 1.2fr !important;
    gap: 36px !important;
    margin-bottom: 40px !important;
}

.ssml-footer-col h4,
.ssml-footer-title {
    color: #ffffff !important;
    font-family: -apple-system, BlinkMacSystemFont, sans-serif !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    letter-spacing: 0.5px !important;
    margin: 0 0 16px 0 !important;
    text-transform: uppercase !important;
}

.ssml-footer-col p {
    font-size: 13px !important;
    line-height: 1.6 !important;
    color: #999999 !important;
    margin: 0 0 16px 0 !important;
}

.ssml-footer-gate-notice {
    font-size: 12px !important;
    border-left: 2px solid var(--ssml-red) !important;
    padding-left: 10px !important;
    color: #d6d6d6 !important;
}

.ssml-footer-links {
    list-style: none !important;
    list-style-type: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.ssml-footer-links li {
    list-style: none !important;
    list-style-type: none !important;
    margin-bottom: 8px !important;
    padding: 0 !important;
}

.ssml-footer-links li::before,
.ssml-footer-links li::marker {
    display: none !important;
    content: none !important;
}

.ssml-footer-links a {
    color: #d6d6d6 !important;
    text-decoration: none !important;
    font-size: 13px !important;
    transition: color 0.15s ease !important;
}

.ssml-footer-links a:hover {
    color: var(--ssml-red) !important;
}

.ssml-footer-contact-info {
    font-size: 13px !important;
    line-height: 1.6 !important;
}

.ssml-footer-contact-info strong {
    color: #ffffff !important;
}

.ssml-footer-bottom {
    border-top: 1px solid #1a1a1a !important;
    padding-top: 24px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    font-size: 12px !important;
    color: #666666 !important;
}

/* --------------------------------------------------------------------------
   10. HIDE GLOBAL HOTSPOT MODAL DEFAULT LEAK
   -------------------------------------------------------------------------- */
#ssManualProductModal:not(.is-open) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

@media (max-width: 900px) {
    .ssml-about-grid-two-col,
    .ssml-about-pillars-grid,
    .ssml-about-stats-grid,
    .ssml-priority-selector,
    .ssml-input-grid,
    .ssml-cert-checks,
    .ssml-footer-cols {
        grid-template-columns: 1fr !important;
    }
    .ssml-about-cta-dock,
    .ssml-footer-bottom {
        flex-direction: column !important;
        gap: 16px !important;
        text-align: center !important;
    }
}
/* --------------------------------------------------------------------------
   STORE WORKSPACE — search form, category chips, part cards, pagination
   -------------------------------------------------------------------------- */
.ssml-tactical-search-form {
    margin-top: 18px;
}

.ssml-search-input-group {
    display: flex;
    align-items: center;
    background: #ffffff;
    border: 2px solid var(--ssml-charcoal);
    border-radius: 6px;
    overflow: hidden;
    max-width: 760px;
}

.ssml-search-icon {
    display: flex;
    align-items: center;
    padding-left: 14px;
}

.ssml-search-field {
    flex: 1;
    height: 44px;
    border: none !important;
    background: transparent !important;
    font-size: 14px;
    color: var(--ssml-ink);
    padding: 0 10px !important;
    outline: none !important;
    box-shadow: none !important;
}

.ssml-search-reset {
    color: #999999;
    text-decoration: none;
    font-size: 18px;
    padding: 0 10px;
}

.ssml-search-submit {
    height: 44px;
    background: var(--ssml-charcoal);
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.6px;
    padding: 0 20px;
    border: none;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.15s ease;
}

.ssml-search-submit:hover {
    background: var(--ssml-red);
}

.ssml-workspace-chips {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 16px;
}

.ssml-chips-label {
    font-family: ui-monospace, monospace;
    font-size: 10px;
    font-weight: 800;
    color: #666666;
    letter-spacing: 0.6px;
    margin-right: 4px;
}

.ssml-chip {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    background: #ffffff;
    border: 1px solid var(--ssml-border);
    border-radius: 20px;
    padding: 5px 12px;
    font-size: 11px;
    font-weight: 700;
    color: var(--ssml-ink);
    text-decoration: none;
    transition: all 0.15s ease;
}

.ssml-chip:hover {
    border-color: var(--ssml-charcoal);
}

.ssml-chip.is-active {
    background: var(--ssml-charcoal);
    border-color: var(--ssml-charcoal);
    color: #ffffff;
}

.ssml-chip-count {
    opacity: 0.7;
}

.ssml-ledger-audit-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    background: #fafafa;
    border: 1px solid var(--ssml-border);
    border-radius: 6px;
    padding: 10px 16px;
    margin-bottom: 20px;
}

.ssml-audit-left {
    display: flex;
    align-items: center;
    gap: 8px;
}

.ssml-audit-indicator {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--ssml-red);
    flex-shrink: 0;
}

.ssml-audit-text {
    font-size: 12px;
    color: #333333;
}

.ssml-highlight {
    color: var(--ssml-red);
    font-weight: 700;
}

.ssml-audit-mono {
    font-family: ui-monospace, monospace;
    font-size: 10px;
    font-weight: 700;
    color: #999999;
    letter-spacing: 0.6px;
}

.ssml-parts-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
}

.ssml-part-card {
    background: #ffffff;
    border: 1px solid var(--ssml-border);
    border-radius: 8px;
    padding: 18px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.15s ease, border-color 0.15s ease;
}

.ssml-part-card:hover {
    border-color: var(--ssml-charcoal);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.06);
}

.ssml-part-card-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}

.ssml-meta-label {
    display: block;
    font-family: ui-monospace, monospace;
    font-size: 9px;
    font-weight: 800;
    color: #999999;
    letter-spacing: 0.6px;
    margin-bottom: 2px;
}

.ssml-part-pn {
    font-size: 16px;
    font-weight: 800;
    color: var(--ssml-ink);
    margin: 0;
    font-family: ui-monospace, monospace;
}

.ssml-stock-pill {
    display: inline-block;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.5px;
    padding: 3px 8px;
    border-radius: 3px;
    white-space: nowrap;
}

.ssml-stock-pill.in-stock {
    background: #eef7ee;
    color: #1a7a1a;
}

.ssml-stock-pill.rfq-only {
    background: #fef2f2;
    color: var(--ssml-red);
}

.ssml-part-nomenclature {
    font-size: 13px;
    font-weight: 700;
    color: var(--ssml-ink);
    margin: 0 0 10px 0;
    line-height: 1.4;
}

.ssml-spec-table {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 14px;
}

.ssml-spec-row {
    display: flex;
    justify-content: space-between;
    font-size: 11px;
    border-bottom: 1px dashed #eaeaea;
    padding-bottom: 3px;
}

.ssml-spec-k {
    color: #666666;
    font-weight: 700;
}

.ssml-spec-v {
    color: var(--ssml-ink);
    font-family: ui-monospace, monospace;
}

.ssml-part-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: auto;
    padding-top: 12px;
    border-top: 1px solid #eaeaea;
}

.ssml-part-price-tag {
    font-size: 14px;
    font-weight: 800;
    color: var(--ssml-ink);
}

.ssml-gov-quote {
    font-size: 10px;
    font-weight: 700;
    color: #999999;
    letter-spacing: 0.4px;
}

.ssml-btn-inspect {
    display: inline-block;
    background: var(--ssml-charcoal);
    color: #ffffff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.4px;
    padding: 7px 12px;
    border-radius: 4px;
    text-decoration: none;
    white-space: nowrap;
    transition: background 0.15s ease;
}

.ssml-btn-inspect:hover {
    background: var(--ssml-red);
    color: #ffffff;
}

.ssml-ledger-pagination {
    margin-top: 24px;
    display: flex;
    justify-content: center;
}

.ssml-ledger-pagination ul {
    display: flex;
    list-style: none;
    gap: 6px;
    padding: 0;
    margin: 0;
    flex-wrap: wrap;
}

.ssml-ledger-pagination a,
.ssml-ledger-pagination span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 34px;
    padding: 0 10px;
    border: 1px solid var(--ssml-border);
    border-radius: 4px;
    font-size: 12px;
    font-weight: 700;
    color: var(--ssml-ink);
    text-decoration: none;
}

.ssml-ledger-pagination span.current {
    background: var(--ssml-charcoal);
    border-color: var(--ssml-charcoal);
    color: #ffffff;
}

.ssml-ledger-pagination a:hover {
    border-color: var(--ssml-charcoal);
}

.ssml-empty-catalog {
    text-align: center;
    padding: 50px 20px;
}

.ssml-empty-icon {
    font-size: 32px;
    margin-bottom: 12px;
}

.ssml-empty-catalog h3 {
    font-size: 18px;
    font-weight: 800;
    color: var(--ssml-ink);
    margin: 0 0 8px 0;
}

.ssml-empty-catalog p {
    color: #666666;
    font-size: 13px;
    max-width: 460px;
    margin: 0 auto 20px auto;
}

.ssml-empty-actions {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
}

.ssml-btn-reset-filters,
.ssml-btn-emergency-rfq {
    display: inline-block;
    font-size: 12px;
    font-weight: 800;
    padding: 10px 18px;
    border-radius: 4px;
    text-decoration: none;
}

.ssml-btn-reset-filters {
    background: #ffffff;
    border: 1px solid var(--ssml-border);
    color: var(--ssml-ink);
}

.ssml-btn-emergency-rfq {
    background: var(--ssml-red);
    color: #ffffff;
}

/* ========================================================================== 
   v0.5.20.14 — EDITORIAL OPERATIONS GRID
   Layout language inspired by a precise newsprint grid, while retaining the
   Sixty Spares military/technical type and user-editable palette.
   ========================================================================== */
:root {
    --ssml-page-background: var(--ssml-hangar);
    --ssml-card-background: var(--ssml-card, #ffffff);
    --ssml-rule: var(--ssml-border, #d6dde2);
}

body:not(.wp-admin),
body:not(.wp-admin) #page,
body:not(.wp-admin) #content,
body:not(.wp-admin) .site-content,
body:not(.wp-admin) .content-area,
body:not(.wp-admin) .site-main {
    background: var(--ssml-page-background) !important;
}

.ssml-dossier-wrapper,
.ssml-portal,
.ssml-reader,
.ssml-publication-reader,
body.single-product div.product {
    font-family: "IBM Plex Sans", Arial, sans-serif !important;
}

.ssml-dossier-wrapper h1,
.ssml-dossier-wrapper h2,
.ssml-dossier-wrapper h3,
.ssml-site-footer h4,
body.single-product h1,
body.single-product h2,
body.single-product h3 {
    font-family: "Barlow Condensed", "Arial Narrow", sans-serif !important;
}

.ssml-hero-badge,
.ssml-dossier-label,
.ssml-pillar-code,
.ssml-meta-label,
.ssml-part-pn,
.ssml-spec-k,
.ssml-audit-mono,
.ssml-chips-label,
.ssml-footer-bottom,
.ssml-header-search,
body.single-product .ssml-dossier-badge,
body.single-product .ssml-info-table th {
    font-family: "IBM Plex Mono", Consolas, monospace !important;
}

.ssml-hero-breakout,
.ssml-master-card,
.ssml-pillar-card,
.ssml-stat-card,
.ssml-part-card,
.ssml-radio-card,
.ssml-field input,
.ssml-field select,
.ssml-field textarea,
.ssml-search-input-group,
.ss-search-input-wrap {
    border-radius: 1px !important;
    box-shadow: none !important;
}

.ssml-hero-breakout,
.ssml-master-card {
    width: min(1560px, calc(100vw - 36px)) !important;
    max-width: none !important;
    padding: clamp(24px, 3vw, 50px) !important;
    background: var(--ssml-card-background) !important;
    border-color: var(--ssml-rule) !important;
    border-top: 3px solid var(--ssml-red) !important;
}

.ssml-hero-breakout { margin-top: 18px !important; }
.ssml-hero-title { font-size: clamp(38px, 5.2vw, 76px) !important; line-height: .94 !important; max-width: 950px; }
.ssml-hero-subtitle { font-size: clamp(15px, 1.2vw, 19px) !important; max-width: 900px !important; }
.ssml-about-h2 { font-size: clamp(30px, 3vw, 48px) !important; }
.ssml-hero-badge { border-radius: 0 !important; background: transparent !important; color: var(--ssml-red) !important; padding: 0 0 7px !important; border-bottom: 1px solid var(--ssml-ink); }
.ssml-beacon-dot { border-radius: 0 !important; box-shadow: none !important; animation: none !important; }

.ssml-about-stats-grid,
.ssml-about-pillars-grid,
.ss-store-category-grid,
.ssml-parts-grid {
    gap: 0 !important;
    border-top: 1px solid var(--ssml-ink);
    border-left: 1px solid var(--ssml-ink);
}

.ssml-stat-card,
.ssml-pillar-card,
.ss-store-category-grid > *,
.ssml-part-card {
    border: 0 !important;
    border-right: 1px solid var(--ssml-ink) !important;
    border-bottom: 1px solid var(--ssml-ink) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: var(--ssml-card-background) !important;
}

.ssml-pillar-card:hover,
.ssml-part-card:hover { transform: none !important; border-color: var(--ssml-ink) !important; background: color-mix(in srgb, var(--ssml-page-background) 55%, white) !important; }
.ssml-btn-tactical-primary,.ssml-btn-tactical-secondary,.ssml-btn-inspect,.ssml-chip,.ssml-search-submit,.ss-search-submit { border-radius: 0 !important; box-shadow: none !important; }
.ssml-chip { border-color: var(--ssml-ink) !important; }
.ssml-chip.is-active { background: var(--ssml-charcoal) !important; color: #fff !important; }
.ssml-site-footer { padding-top: 42px !important; font-family: "IBM Plex Sans",Arial,sans-serif !important; }
.ssml-footer-inner { width:min(1560px,calc(100vw - 36px)) !important; max-width:none !important; }
.ssml-footer-cols { gap:0 !important; border-top:1px solid #555; border-left:1px solid #555; }
.ssml-footer-col { padding:24px !important; border-right:1px solid #555; border-bottom:1px solid #555; }
.ssml-footer-title,.ssml-footer-col h4 { font-family:"Barlow Condensed","Arial Narrow",sans-serif !important; font-size:24px !important; }

/* Inline manual search replaces the theme's full-screen black search overlay. */
.ssml-inline-search-enabled .site-header .search-toggle,
.ssml-inline-search-enabled .site-header .ast-search-menu-icon,
.ssml-inline-search-enabled .site-header .ct-header-search,
.ssml-inline-search-enabled .site-header .header-search-button,
.ssml-inline-search-enabled .site-header .wp-block-search__button-only { display:none !important; }
.ssml-inline-search-enabled .search-toggle,
.ssml-inline-search-enabled .ast-search-menu-icon,
.ssml-inline-search-enabled .ct-header-search,
.ssml-inline-search-enabled .header-search-button { display:none !important; }
.site-header,#masthead { background:var(--ssml-card-background) !important; box-shadow:none !important; }
.site-header .main-navigation,#masthead .main-navigation { border-top:1px solid var(--ssml-ink) !important; border-bottom:2px solid var(--ssml-red) !important; box-shadow:none !important; }
.site-header .main-navigation a,#masthead .main-navigation a { font-family:"IBM Plex Sans",Arial,sans-serif !important; font-weight:600 !important; }
.ssml-header-search-item { display:flex !important; align-items:center !important; margin-left:16px !important; }
.ssml-header-search { display:flex !important; align-items:center !important; height:34px !important; border:1px solid currentColor !important; background:#fff !important; color:var(--ssml-ink) !important; }
.ssml-header-search input { width:210px !important; height:32px !important; margin:0 !important; padding:0 10px !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; background:#fff !important; color:var(--ssml-ink) !important; font-size:11px !important; }
.ssml-header-search button { height:32px !important; min-width:64px !important; padding:0 10px !important; margin:0 !important; border:0 !important; border-left:1px solid var(--ssml-ink) !important; border-radius:0 !important; background:var(--ssml-charcoal) !important; color:#fff !important; font-size:10px !important; font-weight:700 !important; text-transform:uppercase !important; cursor:pointer !important; }
.ssml-header-search button:hover { background:var(--ssml-red) !important; }

@media (max-width: 1120px) {
    .ssml-header-search-item { width:100% !important; margin:10px 0 0 !important; }
    .ssml-header-search { width:100% !important; }
    .ssml-header-search input { flex:1 !important; width:auto !important; }
}

/* ========================================================================== 
   v0.5.20.15 — TECHNICAL NEWSPRINT / TWENTY TWENTY-FIVE SITE SHELL
   ========================================================================== */

body.ssml-site-shell-enabled {
    --ssml-shell-max: 1600px;
    --ssml-construction-grid: linear-gradient(to right, color-mix(in srgb, var(--ssml-border, #d6dde2) 48%, transparent) 1px, transparent 1px);
    --ssml-construction-grid-size: 96px 96px;
    margin: 0 !important;
    background-color: var(--ssml-page-background, #f8f6f0) !important;
    background-image: var(--ssml-construction-grid) !important;
    background-size: var(--ssml-construction-grid-size) !important;
    background-position: 0 0 !important;
}

/* Twenty Twenty-Five remains installed, but its visual shell gets out of the way. */
body.ssml-site-shell-enabled .wp-site-blocks > header.wp-block-template-part,
body.ssml-site-shell-enabled .wp-site-blocks > footer.wp-block-template-part,
body.ssml-site-shell-enabled > header.wp-block-template-part,
body.ssml-site-shell-enabled > footer.wp-block-template-part {
    display: none !important;
}

body.ssml-site-shell-enabled .wp-site-blocks {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

body.ssml-managed-page .wp-block-post-title {
    display: none !important;
}

body.ssml-managed-page main,
body.ssml-managed-page .wp-block-post-content,
body.ssml-managed-page .entry-content {
    margin-block-start: 0 !important;
    padding-top: 0 !important;
}

body.ssml-managed-page .wp-block-post-content > .ssml-dossier-wrapper,
body.ssml-managed-page .entry-content > .ssml-dossier-wrapper {
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* --------------------------------------------------------------------------
   Plugin-owned header
   -------------------------------------------------------------------------- */
.ssml-site-header,
.ssml-site-header * {
    box-sizing: border-box;
}

.ssml-site-header {
    width: 100%;
    position: relative;
    z-index: 9000;
    background-color: var(--ssml-card-background, #fff);
    background-image: var(--ssml-construction-grid);
    background-size: var(--ssml-construction-grid-size);
    background-position: 0 0;
    color: var(--ssml-ink, #111);
    border-bottom: 1px solid var(--ssml-ink, #111);
    font-family: "IBM Plex Sans", Arial, sans-serif;
}

.ssml-shell-frame {
    width: min(var(--ssml-shell-max), calc(100vw - 32px));
    margin: 0 auto;
}

.ssml-shell-utility {
    background: var(--ssml-charcoal, #000);
    color: #fff;
    border-bottom: 3px solid var(--ssml-red, #810000);
}

.ssml-shell-utility-inner {
    min-height: 31px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    font-family: "IBM Plex Mono", monospace;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.ssml-shell-utility-links {
    display: flex;
    align-self: stretch;
    border-left: 1px solid rgba(255,255,255,.35);
}

.ssml-shell-utility-links a {
    display: inline-flex;
    align-items: center;
    color: #fff !important;
    text-decoration: none !important;
    padding: 0 15px;
    border-right: 1px solid rgba(255,255,255,.35);
}

.ssml-shell-utility-links a:hover {
    background: var(--ssml-red, #810000);
}

.ssml-shell-masthead {
    min-height: 132px;
    display: grid;
    grid-template-columns: minmax(260px, 4fr) minmax(340px, 6fr) minmax(210px, 2.2fr);
    border-left: 1px solid var(--ssml-ink, #111);
    border-right: 1px solid var(--ssml-ink, #111);
}

.ssml-shell-brand,
.ssml-shell-statement,
.ssml-shell-meta {
    min-width: 0;
    padding: 20px 24px;
}

.ssml-shell-brand,
.ssml-shell-statement {
    border-right: 1px solid var(--ssml-ink, #111);
}

.ssml-shell-brand {
    display: grid;
    place-items: center;
    text-align: center;
}

.ssml-shell-logo {
    display: inline-grid;
    place-items: center;
    width: 100%;
    max-width: 100%;
}

.ssml-shell-logo-image {
    width: auto !important;
    height: auto !important;
    max-width: min(410px, 96%) !important;
    max-height: 112px !important;
    object-fit: contain;
}

.ssml-shell-wordmark {
    color: var(--ssml-ink, #111) !important;
    text-decoration: none !important;
    font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
    font-size: clamp(42px, 4vw, 70px);
    font-weight: 700;
    letter-spacing: .025em;
    line-height: .78;
    text-transform: uppercase;
}

.ssml-shell-wordmark span,
.ssml-shell-wordmark strong {
    display: block;
}

.ssml-shell-wordmark strong {
    color: var(--ssml-red, #810000);
    font-weight: 900;
}

.ssml-shell-statement {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.ssml-shell-kicker {
    display: block;
    margin-bottom: 10px;
    font-family: "IBM Plex Mono", monospace;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .11em;
    color: var(--ssml-red, #810000);
    text-transform: uppercase;
}

.ssml-shell-statement p {
    max-width: 660px;
    margin: 0 !important;
    font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
    font-size: clamp(23px, 2vw, 34px);
    font-weight: 700;
    line-height: 1.03;
    letter-spacing: -.015em;
    text-transform: uppercase;
}

.ssml-shell-meta {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    font-family: "IBM Plex Mono", monospace;
    font-size: 10px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.ssml-shell-meta span:first-child {
    padding-bottom: 6px;
    margin-bottom: 2px;
    border-bottom: 3px solid var(--ssml-red, #810000);
}

.ssml-shell-nav-wrap {
    border-top: 1px solid var(--ssml-ink, #111);
    border-bottom: 1px solid var(--ssml-ink, #111);
}

.ssml-shell-nav-row {
    min-height: 48px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 400px);
    border-left: 1px solid var(--ssml-ink, #111);
    border-right: 1px solid var(--ssml-ink, #111);
}

.ssml-shell-nav {
    display: flex;
    align-items: stretch;
    min-width: 0;
    overflow-x: auto;
    scrollbar-width: thin;
}

.ssml-shell-nav a {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    min-height: 47px;
    padding: 0 17px;
    border-right: 1px solid var(--ssml-ink, #111);
    color: var(--ssml-ink, #111) !important;
    text-decoration: none !important;
    font-family: "IBM Plex Mono", monospace;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.ssml-shell-nav a:hover,
.ssml-shell-nav a:focus-visible {
    background: var(--ssml-charcoal, #000);
    color: #fff !important;
    outline: none;
}

.ssml-shell-nav a.is-active,
.ssml-shell-nav a.ssml-shell-home-link.is-active {
    background: var(--ssml-red, #810000) !important;
    color: #fff !important;
}
.ssml-shell-nav a.is-active:visited,
.ssml-shell-nav a.is-active:hover,
.ssml-shell-nav a.is-active:focus-visible { color:#fff !important; }

.ssml-shell-search {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 82px;
    border-left: 1px solid var(--ssml-ink, #111);
}

.ssml-shell-search input,
.ssml-shell-search button {
    min-width: 0;
    height: 47px;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.ssml-shell-search input {
    width: 100%;
    padding: 0 13px !important;
    background: var(--ssml-card-background, #fff) !important;
    color: var(--ssml-ink, #111) !important;
    font-family: "IBM Plex Mono", monospace !important;
    font-size: 10px !important;
    letter-spacing: .035em;
}

.ssml-shell-search button {
    padding: 0 12px !important;
    border-left: 1px solid var(--ssml-ink, #111) !important;
    background: var(--ssml-charcoal, #000) !important;
    color: #fff !important;
    font-family: "IBM Plex Mono", monospace !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: .06em;
    text-transform: uppercase;
    cursor: pointer;
}

.ssml-shell-search button:hover {
    background: var(--ssml-red, #810000) !important;
}

.ssml-shell-ticker {
    min-height: 32px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    background: var(--ssml-red, #810000);
    color: #fff;
    overflow: hidden;
    border-bottom: 1px solid var(--ssml-ink, #111);
}

.ssml-shell-ticker-label {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    padding: 0 18px;
    background: var(--ssml-charcoal, #000);
    border-right: 1px solid rgba(255,255,255,.7);
    font-family: "IBM Plex Mono", monospace;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .11em;
}

.ssml-shell-ticker-window {
    min-width: 0;
    overflow: hidden;
}

.ssml-shell-ticker-track {
    width: max-content;
    min-height: 32px;
    display: flex;
    align-items: center;
    animation: ssml-newsprint-ticker 36s linear infinite;
    will-change: transform;
}

.ssml-shell-ticker-track span {
    display: inline-block;
    padding-right: 72px;
    white-space: nowrap;
    font-family: "IBM Plex Mono", monospace;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .085em;
    text-transform: uppercase;
}

@keyframes ssml-newsprint-ticker {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

@media (prefers-reduced-motion: reduce) {
    .ssml-shell-ticker-track { animation: none; }
}

/* --------------------------------------------------------------------------
   Technical Newsprint page language
   -------------------------------------------------------------------------- */
body:not(.wp-admin) .ssml-dossier-wrapper {
    padding: 18px 0 48px !important;
    background: transparent !important;
}

body:not(.wp-admin) .ssml-hero-breakout,
body:not(.wp-admin) .ssml-master-card {
    width: min(var(--ssml-shell-max), calc(100vw - 32px)) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    border: 1px solid var(--ssml-ink, #111) !important;
    border-top: 5px solid var(--ssml-ink, #111) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: var(--ssml-card-background, #fff) !important;
}

body:not(.wp-admin) .ssml-hero-breakout {
    margin-top: 0 !important;
    margin-bottom: 16px !important;
    padding: 0 !important;
}

body:not(.wp-admin) .ssml-master-card {
    margin-bottom: 16px !important;
    padding: clamp(22px, 2.3vw, 38px) !important;
}

.ssml-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 8fr) minmax(250px, 4fr);
}

.ssml-hero-main {
    min-width: 0;
    padding: clamp(28px, 4vw, 64px);
    border-right: 1px solid var(--ssml-ink, #111);
}

.ssml-hero-rail {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-content: stretch;
}

.ssml-hero-meta-unit {
    min-height: 112px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 18px;
    border-right: 1px solid var(--ssml-ink, #111);
    border-bottom: 1px solid var(--ssml-ink, #111);
}

.ssml-hero-meta-unit:nth-child(2n) { border-right: 0; }
.ssml-hero-meta-unit:nth-last-child(-n+2) { border-bottom: 0; }

.ssml-hero-meta-unit span {
    font-family: "IBM Plex Mono", monospace;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .12em;
    color: var(--ssml-muted, var(--ssml-slate, #5a5a5a));
    text-transform: uppercase;
}

.ssml-hero-meta-visual {
    min-height: 72px;
    display: grid;
    place-items: center;
    margin: 8px 0 10px;
    overflow: hidden;
}
.ssml-hero-meta-visual img { display:block; width:100%; height:72px; object-fit:contain; filter:grayscale(100%); }
.ssml-hero-meta-visual em {
    display:grid; place-items:center; width:100%; min-height:72px; padding:8px;
    border-top:1px solid color-mix(in srgb,var(--ssml-ink,#111) 18%,transparent);
    border-bottom:1px solid color-mix(in srgb,var(--ssml-ink,#111) 18%,transparent);
    color:var(--ssml-muted,#5a5a5a); font-family:"IBM Plex Mono",monospace; font-size:9px;
    font-style:normal; font-weight:700; letter-spacing:.08em; line-height:1.35; text-align:center; text-transform:uppercase;
}

.ssml-hero-meta-unit strong {
    font-family: "Barlow Condensed", "Arial Narrow", sans-serif;
    font-size: clamp(24px, 2.1vw, 34px);
    font-weight: 800;
    line-height: .95;
    text-transform: uppercase;
}

body:not(.wp-admin) .ssml-hero-badge {
    display: flex !important;
    width: 100%;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 22px !important;
    padding: 0 0 9px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--ssml-ink, #111) !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--ssml-red, #810000) !important;
    font-family: "IBM Plex Mono", monospace !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: .1em !important;
}

body:not(.wp-admin) .ssml-beacon-dot {
    width: 24px !important;
    height: 3px !important;
    margin-top: 5px;
    border-radius: 0 !important;
    background: var(--ssml-red, #810000) !important;
}

body:not(.wp-admin) .ssml-hero-title {
    max-width: 1030px !important;
    margin: 0 !important;
    font-family: "Barlow Condensed", "Arial Narrow", sans-serif !important;
    font-size: clamp(52px, 6.3vw, 108px) !important;
    font-weight: 800 !important;
    line-height: .83 !important;
    letter-spacing: -.035em !important;
    text-transform: uppercase !important;
}

body:not(.wp-admin) .ssml-hero-subtitle {
    max-width: 850px !important;
    margin: 26px 0 0 !important;
    padding-top: 18px;
    border-top: 3px solid var(--ssml-red, #810000);
    font-size: clamp(15px, 1.15vw, 19px) !important;
    line-height: 1.55 !important;
}

.ssml-hero-terminal {
    display: grid;
    grid-template-columns: minmax(0, 7fr) minmax(420px, 5fr);
    border-top: 1px solid var(--ssml-ink, #111);
}

.ssml-hero-terminal .ss-search-input-wrap {
    margin: 0 !important;
    border: 0 !important;
    border-right: 1px solid var(--ssml-ink, #111) !important;
}

.ssml-hero-terminal .ss-search-input,
.ssml-hero-terminal .ss-search-submit {
    height: 54px !important;
    border-radius: 0 !important;
}

.ssml-hero-terminal .ss-search-submit {
    border-left: 1px solid var(--ssml-ink, #111) !important;
}

.ssml-hero-actions {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
}

.ssml-hero-actions a {
    min-height: 54px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    padding: 10px 14px !important;
    border: 0 !important;
    border-right: 1px solid var(--ssml-ink, #111) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-family: "IBM Plex Mono", monospace !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    letter-spacing: .055em !important;
    text-align: center;
    text-transform: uppercase;
}

.ssml-hero-actions a:last-child { border-right: 0 !important; }
.ssml-hero-actions .ssml-btn-tactical-primary { background: var(--ssml-red, #810000) !important; color:#fff !important; }
.ssml-hero-actions .ssml-btn-tactical-primary:visited,.ssml-hero-actions .ssml-btn-tactical-primary:hover { color:#fff !important; }
.ssml-hero-actions .ssml-btn-ink { background: var(--ssml-charcoal, #000) !important; color: #fff !important; }
.ssml-hero-actions .ssml-btn-tactical-secondary { background: var(--ssml-card-background, #fff) !important; color: var(--ssml-ink, #111) !important; }
.ssml-hero-actions a:hover { background: var(--ssml-red, #810000) !important; color: #fff !important; }

/* Generic page heroes receive the same sharp publication treatment. */
.ssml-hero-breakout:not(.ssml-editorial-hero) .ssml-hero-inner {
    padding: clamp(28px, 4vw, 58px) !important;
}

.ssml-hero-breakout:not(.ssml-editorial-hero) .ssml-hero-title {
    max-width: 1180px !important;
}

/* Section labels become structural rules rather than floating chips. */
body:not(.wp-admin) .ssml-dossier-label {
    width: 100%;
    display: flex !important;
    align-items: center;
    gap: 14px;
    margin: 0 0 12px !important;
    color: var(--ssml-red, #810000) !important;
    font-family: "IBM Plex Mono", monospace !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: .11em !important;
}

body:not(.wp-admin) .ssml-dossier-label::after {
    content: "";
    flex: 1;
    height: 1px;
    background: var(--ssml-ink, #111);
}

body:not(.wp-admin) .ssml-about-h2 {
    margin-top: 0 !important;
    font-family: "Barlow Condensed", "Arial Narrow", sans-serif !important;
    font-size: clamp(38px, 4vw, 66px) !important;
    font-weight: 800 !important;
    line-height: .92 !important;
    letter-spacing: -.025em !important;
    text-transform: uppercase;
}

/* Dense collapsed grids. */
body:not(.wp-admin) .ssml-about-stats-grid,
body:not(.wp-admin) .ssml-about-pillars-grid,
body:not(.wp-admin) .ss-store-category-grid,
body:not(.wp-admin) .ssml-parts-grid {
    gap: 0 !important;
    margin-bottom: 36px !important;
    border-top: 1px solid var(--ssml-ink, #111) !important;
    border-left: 1px solid var(--ssml-ink, #111) !important;
}

body:not(.wp-admin) .ssml-stat-card,
body:not(.wp-admin) .ssml-pillar-card,
body:not(.wp-admin) .ss-store-category-grid > *,
body:not(.wp-admin) .ssml-part-card {
    min-width: 0;
    border: 0 !important;
    border-right: 1px solid var(--ssml-ink, #111) !important;
    border-bottom: 1px solid var(--ssml-ink, #111) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: var(--ssml-card-background, #fff) !important;
}

body:not(.wp-admin) .ssml-stat-card {
    min-height: 126px;
    padding: 20px !important;
    align-items: flex-start !important;
    text-align: left !important;
}

body:not(.wp-admin) .ssml-stat-metric {
    font-family: "Barlow Condensed", "Arial Narrow", sans-serif !important;
    font-size: clamp(34px, 3vw, 52px) !important;
    line-height: .9 !important;
}

body:not(.wp-admin) .ssml-stat-label {
    margin-top: 12px;
    font-family: "IBM Plex Mono", monospace !important;
    font-size: 9px !important;
    letter-spacing: .08em !important;
    text-align: left !important;
}

body:not(.wp-admin) .ssml-pillar-card {
    position: relative;
    padding: 26px !important;
}

body:not(.wp-admin) .ssml-pillar-card:nth-child(2) {
    background: color-mix(in srgb, var(--ssml-page-background, #f8f6f0) 45%, white) !important;
}

body:not(.wp-admin) .ssml-pillar-title {
    font-family: "Barlow Condensed", "Arial Narrow", sans-serif !important;
    font-size: clamp(27px, 2.2vw, 36px) !important;
    line-height: .95 !important;
    text-transform: uppercase;
}

/* Hard mechanical controls. */
body:not(.wp-admin) .ssml-btn-tactical-primary,
body:not(.wp-admin) .ssml-btn-tactical-secondary,
body:not(.wp-admin) .ssml-btn-inspect,
body:not(.wp-admin) .ssml-chip,
body:not(.wp-admin) button,
body:not(.wp-admin) input,
body:not(.wp-admin) select,
body:not(.wp-admin) textarea {
    border-radius: 0 !important;
}

/* --------------------------------------------------------------------------
   Footer as a publication colophon / technical dock
   -------------------------------------------------------------------------- */
body.ssml-site-shell-enabled .ssml-site-footer {
    margin: 0 !important;
    padding: 0 !important;
    border-top: 6px solid var(--ssml-red, #810000);
    background: var(--ssml-charcoal, #000) !important;
}

body.ssml-site-shell-enabled .ssml-footer-inner {
    width: min(var(--ssml-shell-max), calc(100vw - 32px)) !important;
    max-width: none !important;
    padding: 30px 0 22px !important;
}

body.ssml-site-shell-enabled .ssml-footer-cols {
    gap: 0 !important;
    border-top: 1px solid rgba(255,255,255,.58) !important;
    border-left: 1px solid rgba(255,255,255,.58) !important;
}

body.ssml-site-shell-enabled .ssml-footer-col {
    min-width: 0;
    padding: 24px !important;
    border-right: 1px solid rgba(255,255,255,.58) !important;
    border-bottom: 1px solid rgba(255,255,255,.58) !important;
}

body.ssml-site-shell-enabled .ssml-footer-title,
body.ssml-site-shell-enabled .ssml-footer-col h4 {
    margin-bottom: 16px !important;
    padding-bottom: 10px;
    border-bottom: 3px solid var(--ssml-red, #810000);
    font-size: 25px !important;
    line-height: 1 !important;
    letter-spacing: .02em;
    text-transform: uppercase;
}

body.ssml-site-shell-enabled .ssml-footer-links a,
body.ssml-site-shell-enabled .ssml-footer-contact-info,
body.ssml-site-shell-enabled .ssml-footer-col p {
    font-size: 11px !important;
    line-height: 1.55 !important;
}

body.ssml-site-shell-enabled .ssml-footer-bottom {
    margin-top: 0 !important;
    padding: 14px 0 0 !important;
    border-top: 0 !important;
    font-size: 9px !important;
    letter-spacing: .055em !important;
}

/* --------------------------------------------------------------------------
   Responsive collapse without reverting to floating cards
   -------------------------------------------------------------------------- */
@media (max-width: 1180px) {
    .ssml-shell-masthead {
        grid-template-columns: 1fr 1.5fr;
    }
    .ssml-shell-meta {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        border-top: 1px solid var(--ssml-ink, #111);
    }
    .ssml-shell-meta span:first-child {
        margin: 0;
        padding: 0;
        border: 0;
    }
    .ssml-shell-nav-row {
        grid-template-columns: 1fr;
    }
    .ssml-shell-search {
        border-top: 1px solid var(--ssml-ink, #111);
        border-left: 0;
    }
    .ssml-hero-terminal {
        grid-template-columns: 1fr;
    }
    .ssml-hero-terminal .ss-search-input-wrap {
        border-right: 0 !important;
        border-bottom: 1px solid var(--ssml-ink, #111) !important;
    }
}

@media (max-width: 820px) {
    .ssml-shell-frame,
    body:not(.wp-admin) .ssml-hero-breakout,
    body:not(.wp-admin) .ssml-master-card,
    body.ssml-site-shell-enabled .ssml-footer-inner {
        width: calc(100vw - 18px) !important;
    }
    .ssml-shell-utility-inner {
        min-height: 36px;
        font-size: 8px;
    }
    .ssml-shell-utility-inner > span:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    .ssml-shell-masthead {
        grid-template-columns: 1fr;
    }
    .ssml-shell-brand,
    .ssml-shell-statement {
        border-right: 0;
        border-bottom: 1px solid var(--ssml-ink, #111);
    }
    .ssml-shell-brand,
    .ssml-shell-statement,
    .ssml-shell-meta {
        padding: 16px;
    }
    .ssml-shell-logo-image {
        max-height: 88px !important;
    }
    .ssml-shell-meta {
        grid-template-columns: 1fr;
    }
    .ssml-shell-nav a {
        padding: 0 13px;
        font-size: 9px;
    }
    .ssml-shell-ticker {
        grid-template-columns: auto 1fr;
    }
    .ssml-shell-ticker-label {
        padding: 0 10px;
    }
    .ssml-hero-grid {
        grid-template-columns: 1fr;
    }
    .ssml-hero-main {
        padding: 26px 20px;
        border-right: 0;
        border-bottom: 1px solid var(--ssml-ink, #111);
    }
    .ssml-hero-rail {
        grid-template-columns: 1fr 1fr;
    }
    body:not(.wp-admin) .ssml-hero-title {
        font-size: clamp(48px, 13vw, 78px) !important;
    }
    .ssml-hero-actions {
        grid-template-columns: 1fr;
    }
    .ssml-hero-actions a {
        border-right: 0 !important;
        border-bottom: 1px solid var(--ssml-ink, #111) !important;
    }
    .ssml-hero-actions a:last-child { border-bottom: 0 !important; }
}

@media (max-width: 520px) {
    .ssml-shell-utility-links a { padding: 0 8px; }
    .ssml-shell-statement p { font-size: 25px; }
    .ssml-hero-rail { grid-template-columns: 1fr; }
    .ssml-hero-meta-unit,
    .ssml-hero-meta-unit:nth-child(2n),
    .ssml-hero-meta-unit:nth-last-child(-n+2) {
        min-height: 86px;
        border-right: 0;
        border-bottom: 1px solid var(--ssml-ink, #111);
    }
    .ssml-hero-meta-unit:last-child { border-bottom: 0; }
}

/* Twenty Twenty-Five content-width normalization for plugin-owned surfaces. */
body.ssml-site-shell-enabled .wp-site-blocks header.wp-block-template-part,
body.ssml-site-shell-enabled .wp-site-blocks footer.wp-block-template-part {
    display: none !important;
}

body.ssml-managed-page .wp-site-blocks > main,
body.ssml-managed-page .wp-site-blocks > main > .wp-block-group,
body.ssml-managed-page .wp-site-blocks .wp-block-post-content,
body.ssml-managed-page .wp-site-blocks .entry-content,
body.ssml-site-shell-enabled.woocommerce .wp-site-blocks > main,
body.ssml-site-shell-enabled.woocommerce .wp-site-blocks > main > .wp-block-group,
body.ssml-site-shell-enabled.woocommerce .wp-site-blocks .wp-block-post-content,
body.ssml-site-shell-enabled.woocommerce .wp-site-blocks .entry-content {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.ssml-managed-page .wp-site-blocks > main > .wp-block-group.has-global-padding,
body.ssml-site-shell-enabled.woocommerce .wp-site-blocks > main > .wp-block-group.has-global-padding {
    padding-inline: 0 !important;
}

/* v0.5.20.19 — Manual Lab breakout and interaction hardening. */
body.ssml-manual-page .wp-site-blocks>main,
body.ssml-manual-page .wp-site-blocks>main>.wp-block-group,
body.ssml-manual-page .wp-site-blocks>main>.wp-block-group>.wp-block-group,
body.ssml-manual-page .wp-block-post-content,
body.ssml-manual-page .entry-content { width:100%!important; max-width:none!important; margin-left:0!important; margin-right:0!important; padding-left:0!important; padding-right:0!important; }
body.ssml-manual-page .wp-block-post-content>* { max-width:none!important; }
body.ssml-manual-page .ssml-reader.ss-book-viewer{left:auto!important;margin-left:auto!important;margin-right:auto!important;}

/* ==========================================================================
   PHASE 1 // CENTRAL DESIGN SYSTEM FOUNDATION (v0.5.20.22)
   All later page phases consume these role-based tokens instead of inventing
   local sizes/colors. Kept at the end of the stylesheet so it wins over the
   older fixed values without requiring a destructive rewrite in this release.
   ========================================================================== */
:root {
    --ssml-rule: #111111;
    --ssml-inverse-bg: #000000;
    --ssml-inverse-text: #ffffff;
    --ssml-inverse-muted: #c8c8c8;
    --ssml-inverse-eyebrow: #ffffff;
    --ssml-icon: #111111;
    --ssml-icon-hover: #810000;
    --ssml-font-display: "Barlow Condensed", "Arial Narrow", sans-serif;
    --ssml-font-body: "IBM Plex Sans", Arial, sans-serif;
    --ssml-font-mono: "IBM Plex Mono", Consolas, monospace;
    --ssml-fs-hero-header: 76px;
    --ssml-fs-hero-body: 17px;
    --ssml-fs-section-header: 48px;
    --ssml-fs-section-body: 14px;
    --ssml-fs-card-header: 22px;
    --ssml-fs-card-body: 13px;
    --ssml-fs-eyebrow: 10px;
    --ssml-fs-menu: 10px;
    --ssml-fs-masthead: 34px;
    --ssml-fs-meta: 11px;
    --ssml-fs-button-1: 11px;
    --ssml-fs-button-2: 11px;
    --ssml-fs-button-3: 11px;
    --ssml-fs-button-utility: 10px;
    --ssml-fs-input: 11px;
    --ssml-fs-table-heading: 10px;
    --ssml-fs-table: 11px;
    --ssml-fs-product-part: 20px;
    --ssml-fs-product-meta: 13px;
    --ssml-fs-stat-value: 34px;
    --ssml-fs-stat-label: 9px;
    --ssml-fs-footer-header: 25px;
    --ssml-fs-footer-body: 11px;
    --ssml-fs-ticker: 10px;
    --ssml-icon-size: 16px;
    --ssml-btn-radius: 0px;
    --ssml-btn-border-width: 1px;
    --ssml-btn1-bg: #111111;
    --ssml-btn1-text: #ffffff;
    --ssml-btn1-border: #111111;
    --ssml-btn1-hover-bg: #810000;
    --ssml-btn1-hover-text: #ffffff;
    --ssml-btn1-hover-border: #810000;
    --ssml-btn2-bg: #ffffff;
    --ssml-btn2-text: #111111;
    --ssml-btn2-border: #111111;
    --ssml-btn2-hover-bg: #810000;
    --ssml-btn2-hover-text: #ffffff;
    --ssml-btn2-hover-border: #810000;
    --ssml-btn3-bg: #810000;
    --ssml-btn3-text: #ffffff;
    --ssml-btn3-border: #810000;
    --ssml-btn3-hover-bg: #000000;
    --ssml-btn3-hover-text: #ffffff;
    --ssml-btn3-hover-border: #000000;
}

/* Type families and named roles */
.ssml-dossier-wrapper,
.ssml-site-header,
.ssml-site-footer,
body.ssml-site-shell-enabled .site-main {
    font-family: var(--ssml-font-body) !important;
}
.ssml-hero-title,
.ssml-about-h2,
.ssml-pillar-title,
.ssml-section-heading h2,
.ssml-section-heading h1,
.ssml-footer-title,
.ssml-shell-statement p {
    font-family: var(--ssml-font-display) !important;
}
.ssml-hero-badge,
.ssml-dossier-label,
.ssml-pillar-code,
.ssml-pillar-sys,
.ssml-stat-metric,
.ssml-stat-label,
.ssml-shell-kicker,
.ssml-shell-meta,
.ssml-shell-utility-inner,
.ssml-shell-nav a,
.ssml-shell-search,
.ssml-shell-ticker,
.ssml-site-footer small,
.ssml-site-footer .ssml-footer-links {
    font-family: var(--ssml-font-mono) !important;
}
.ssml-hero-title { font-size: clamp(34px, 5vw, var(--ssml-fs-hero-header)) !important; }
.ssml-hero-subtitle { font-size: var(--ssml-fs-hero-body) !important; }
.ssml-about-h2,
.ssml-section-heading h2 { font-size: clamp(28px, 3.3vw, var(--ssml-fs-section-header)) !important; }
.ssml-dossier-wrapper p,
.ssml-master-card p { font-size: var(--ssml-fs-section-body); }
.ssml-pillar-title { font-size: var(--ssml-fs-card-header) !important; }
.ssml-pillar-body { font-size: var(--ssml-fs-card-body) !important; }
.ssml-hero-badge,
.ssml-dossier-label,
.ssml-shell-kicker { font-size: var(--ssml-fs-eyebrow) !important; }
.ssml-shell-nav a { font-size: var(--ssml-fs-menu) !important; }
.ssml-shell-statement p { font-size: clamp(22px, 2.2vw, var(--ssml-fs-masthead)) !important; }
.ssml-shell-meta,
.ssml-shell-utility-inner { font-size: var(--ssml-fs-meta) !important; }
.ssml-stat-metric { font-size: var(--ssml-fs-stat-value) !important; }
.ssml-stat-label { font-size: var(--ssml-fs-stat-label) !important; }
.ssml-dossier-wrapper input,
.ssml-dossier-wrapper select,
.ssml-dossier-wrapper textarea,
.ssml-shell-search input { font-size: var(--ssml-fs-input) !important; }
.ssml-dossier-wrapper table th { font-size: var(--ssml-fs-table-heading) !important; }
.ssml-dossier-wrapper table td { font-size: var(--ssml-fs-table) !important; }
.ssml-site-footer .ssml-footer-title,
.ssml-site-footer h4 { font-size: var(--ssml-fs-footer-header) !important; }
.ssml-site-footer p,
.ssml-site-footer li,
.ssml-site-footer a { font-size: var(--ssml-fs-footer-body) !important; }
.ssml-shell-ticker-track span,
.ssml-shell-ticker-label { font-size: var(--ssml-fs-ticker) !important; }

/* Icon role. The icon box remains layout-owned; only the glyph is centralized. */
body.ssml-site-shell-enabled .dashicons,
.ssml-dossier-wrapper .dashicons,
.ssml-reader .dashicons,
.ssml-dossier-wrapper [class*="icon"] svg,
.ssml-reader [class*="icon"] svg {
    color: var(--ssml-icon) !important;
    width: var(--ssml-icon-size);
    height: var(--ssml-icon-size);
    font-size: var(--ssml-icon-size);
}
body.ssml-site-shell-enabled a:hover .dashicons,
body.ssml-site-shell-enabled button:hover .dashicons,
.ssml-reader a:hover .dashicons,
.ssml-reader button:hover .dashicons {
    color: var(--ssml-icon-hover) !important;
}

/* Reusable button families */
.ssml-button-1,
.ssml-button-2,
.ssml-button-3,
.ssml-button-utility {
    border-style: solid !important;
    border-width: var(--ssml-btn-border-width) !important;
    border-radius: var(--ssml-btn-radius) !important;
    font-family: var(--ssml-font-mono) !important;
    font-weight: 800 !important;
    text-transform: uppercase;
    text-decoration: none !important;
    transition: background-color .14s ease, color .14s ease, border-color .14s ease !important;
}
.ssml-button-1 { background: var(--ssml-btn1-bg) !important; color: var(--ssml-btn1-text) !important; border-color: var(--ssml-btn1-border) !important; font-size: var(--ssml-fs-button-1) !important; }
.ssml-button-1:hover,.ssml-button-1:focus-visible { background: var(--ssml-btn1-hover-bg) !important; color: var(--ssml-btn1-hover-text) !important; border-color: var(--ssml-btn1-hover-border) !important; }
.ssml-button-2 { background: var(--ssml-btn2-bg) !important; color: var(--ssml-btn2-text) !important; border-color: var(--ssml-btn2-border) !important; font-size: var(--ssml-fs-button-2) !important; }
.ssml-button-2:hover,.ssml-button-2:focus-visible { background: var(--ssml-btn2-hover-bg) !important; color: var(--ssml-btn2-hover-text) !important; border-color: var(--ssml-btn2-hover-border) !important; }
.ssml-button-3 { background: var(--ssml-btn3-bg) !important; color: var(--ssml-btn3-text) !important; border-color: var(--ssml-btn3-border) !important; font-size: var(--ssml-fs-button-3) !important; }
.ssml-button-3:hover,.ssml-button-3:focus-visible { background: var(--ssml-btn3-hover-bg) !important; color: var(--ssml-btn3-hover-text) !important; border-color: var(--ssml-btn3-hover-border) !important; }
.ssml-button-utility { background: var(--ssml-btn2-bg) !important; color: var(--ssml-btn2-text) !important; border-color: var(--ssml-btn2-border) !important; font-size: var(--ssml-fs-button-utility) !important; }
.ssml-button-utility:hover,.ssml-button-utility:focus-visible { background: var(--ssml-btn2-hover-bg) !important; color: var(--ssml-btn2-hover-text) !important; border-color: var(--ssml-btn2-hover-border) !important; }

/* Current shared controls consume Button 1 immediately; later phases will assign
   the explicit family classes to every remaining page-specific control. */
.ss-search-submit,
.ssml-shell-search button {
    background: var(--ssml-btn1-bg) !important;
    color: var(--ssml-btn1-text) !important;
    border-color: var(--ssml-btn1-border) !important;
    border-radius: var(--ssml-btn-radius) !important;
    font-size: var(--ssml-fs-button-1) !important;
}
.ss-search-submit:hover,
.ssml-shell-search button:hover {
    background: var(--ssml-btn1-hover-bg) !important;
    color: var(--ssml-btn1-hover-text) !important;
    border-color: var(--ssml-btn1-hover-border) !important;
}

/* Reusable inverted editorial section */
.ssml-inverse-section,
.ssml-section--dark {
    background: var(--ssml-inverse-bg) !important;
    color: var(--ssml-inverse-text) !important;
    border-color: var(--ssml-inverse-bg) !important;
}
.ssml-inverse-section h1,.ssml-inverse-section h2,.ssml-inverse-section h3,.ssml-inverse-section strong,
.ssml-section--dark h1,.ssml-section--dark h2,.ssml-section--dark h3,.ssml-section--dark strong { color: var(--ssml-inverse-text) !important; }
.ssml-inverse-section p,.ssml-inverse-section small,
.ssml-section--dark p,.ssml-section--dark small { color: var(--ssml-inverse-muted) !important; }
.ssml-inverse-section .ssml-dossier-label,.ssml-inverse-section .ssml-kicker,
.ssml-section--dark .ssml-dossier-label,.ssml-section--dark .ssml-kicker { color: var(--ssml-inverse-eyebrow, #ffffff) !important; }

/* Reusable media placeholder. Page-specific phases can drop this into any card
   without leaving an empty white rectangle when no media has been assigned. */
.ssml-media-slot {
    min-height: 150px;
    border: 1px solid var(--ssml-border);
    border-top: 3px solid var(--ssml-red);
    background: var(--ssml-card-background);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    overflow: hidden;
}
.ssml-media-slot img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ssml-media-slot.is-fallback span { font: 700 var(--ssml-fs-eyebrow) var(--ssml-font-mono); color: var(--ssml-red); letter-spacing: 1px; }
.ssml-media-slot.is-fallback strong { margin-top: 5px; font: 800 var(--ssml-fs-card-header) var(--ssml-font-display); color: var(--ssml-ink); text-transform: uppercase; }
.ssml-media-slot.is-fallback small { margin-top: 4px; font: 500 var(--ssml-fs-meta) var(--ssml-font-mono); color: var(--ssml-slate); }

/* Footer now consumes the inverse palette rather than hard-coded black/white. */
body.ssml-site-shell-enabled .ssml-site-footer {
    background: var(--ssml-inverse-bg) !important;
    color: var(--ssml-inverse-text) !important;
}
body.ssml-site-shell-enabled .ssml-site-footer p,
body.ssml-site-shell-enabled .ssml-site-footer li,
body.ssml-site-shell-enabled .ssml-site-footer a { color: var(--ssml-inverse-muted) !important; }
body.ssml-site-shell-enabled .ssml-site-footer .ssml-footer-title,
body.ssml-site-shell-enabled .ssml-site-footer h4 { color: var(--ssml-inverse-text) !important; }
body.ssml-site-shell-enabled .ssml-site-footer a:hover { color: var(--ssml-red) !important; }

/* ==========================================================================
   PHASE 2 // GLOBAL SHELL, FOOTER & UNIFIED SEARCH (v0.5.20.24)
   ========================================================================== */

/* Shared frame: header, page-owned content, manual workspace and footer all
   resolve to the same center line and maximum width. */
body.ssml-site-shell-enabled .ssml-shell-frame,
body.ssml-site-shell-enabled .ssml-footer-inner,
body.ssml-site-shell-enabled.ssml-manual-page .ssml-portal,
body.ssml-site-shell-enabled.ssml-manual-page .ssml-reader,
body.ssml-site-shell-enabled.ssml-manual-page .ssml-publication-reader {
    width: min(var(--ssml-shell-max, 1600px), calc(100vw - 32px)) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Header brand block. The logo is deliberately more prominent and remains
   optically centered inside its cell. */
body.ssml-site-shell-enabled .ssml-shell-masthead {
    grid-template-columns: minmax(320px, 4.4fr) minmax(420px, 6fr) minmax(220px, 2.2fr);
}
body.ssml-site-shell-enabled .ssml-shell-brand {
    display: grid !important;
    place-items: center !important;
    padding: 14px 22px !important;
}
body.ssml-site-shell-enabled .ssml-shell-logo {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    height: 100% !important;
}
body.ssml-site-shell-enabled .ssml-shell-logo-image {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: min(500px, 98%) !important;
    max-height: 126px !important;
    margin: auto !important;
    object-fit: contain !important;
}
body.ssml-site-shell-enabled .ssml-shell-meta {
    justify-content: center !important;
}

/* Primary navigation. Active state must remain readable through :visited,
   :hover and theme link-color rules. */
body.ssml-site-shell-enabled .ssml-shell-nav a.is-active,
body.ssml-site-shell-enabled .ssml-shell-nav a.is-active:visited,
body.ssml-site-shell-enabled .ssml-shell-nav a.is-active:hover,
body.ssml-site-shell-enabled .ssml-shell-nav a.is-active:focus-visible {
    background: var(--ssml-red, #810000) !important;
    color: #ffffff !important;
}

/* One search component for the shell, Home and Manual Dashboard. */
.ssml-unified-search {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 88px !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--ssml-ink, #111111) !important;
    background: var(--ssml-card-background, #ffffff) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}
.ssml-unified-search input,
.ssml-unified-search button {
    min-width: 0 !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}
.ssml-unified-search input {
    width: 100% !important;
    padding: 0 14px !important;
    border: 0 !important;
    background: var(--ssml-card-background, #ffffff) !important;
    color: var(--ssml-ink, #111111) !important;
    font-family: var(--ssml-font-mono, "IBM Plex Mono"), Consolas, monospace !important;
    font-size: var(--ssml-fs-input, 11px) !important;
    letter-spacing: .035em !important;
    outline: none !important;
}
.ssml-unified-search input:focus {
    box-shadow: inset 0 0 0 2px var(--ssml-red, #810000) !important;
}
.ssml-unified-search button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 12px !important;
    border: 0 !important;
    border-left: 1px solid var(--ssml-ink, #111111) !important;
    background: var(--ssml-btn1-bg, #111111) !important;
    color: var(--ssml-btn1-text, #ffffff) !important;
    font-family: var(--ssml-font-mono, "IBM Plex Mono"), Consolas, monospace !important;
    font-size: var(--ssml-fs-button-1, 11px) !important;
    font-weight: 800 !important;
    letter-spacing: .055em !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
}
.ssml-unified-search button:hover,
.ssml-unified-search button:focus-visible {
    background: var(--ssml-btn1-hover-bg, #810000) !important;
    color: var(--ssml-btn1-hover-text, #ffffff) !important;
    border-color: var(--ssml-btn1-hover-border, #810000) !important;
}

/* Header version occupies the complete search cell, without the old phantom
   gap under or beside the button. */
body.ssml-site-shell-enabled .ssml-shell-nav-row {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 460px) !important;
}
body.ssml-site-shell-enabled .ssml-shell-nav-row > .ssml-unified-search--header {
    align-self: stretch !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    border-right: 0 !important;
    min-height: 48px !important;
}
body.ssml-site-shell-enabled .ssml-shell-nav-row > .ssml-unified-search--header input,
body.ssml-site-shell-enabled .ssml-shell-nav-row > .ssml-unified-search--header button {
    height: 47px !important;
    min-height: 47px !important;
}

/* Home consumes the same component but at the hero action height. */
.ssml-hero-terminal > .ssml-unified-search--home {
    border: 0 !important;
    border-right: 1px solid var(--ssml-ink, #111111) !important;
}
.ssml-hero-terminal > .ssml-unified-search--home input,
.ssml-hero-terminal > .ssml-unified-search--home button {
    height: 54px !important;
    min-height: 54px !important;
}

/* Dashboard search uses the same geometry but keeps its surrounding editorial
   panel intact. */
.ssml-portal .ssml-unified-search--dashboard {
    margin-top: 0 !important;
    border-color: var(--ssml-ink, #111111) !important;
}
.ssml-portal .ssml-unified-search--dashboard input,
.ssml-portal .ssml-unified-search--dashboard button {
    height: 42px !important;
    min-height: 42px !important;
}

/* Manual Dashboard/result centering. This also neutralizes the older offset
   formula used before the plugin-owned site shell existed. */
body.ssml-site-shell-enabled.ssml-manual-page .ssml-portal {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
body.ssml-site-shell-enabled.ssml-manual-page .ssml-search-results {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Footer is part of the same frame, not a narrower 1200px island. */
body.ssml-site-shell-enabled .ssml-site-footer {
    font-family: var(--ssml-font-body, "IBM Plex Sans"), Arial, sans-serif !important;
}
body.ssml-site-shell-enabled .ssml-footer-inner {
    padding-left: 0 !important;
    padding-right: 0 !important;
}
body.ssml-site-shell-enabled .ssml-footer-cols {
    gap: 0 !important;
    margin-bottom: 28px !important;
    border-top: 1px solid rgba(255,255,255,.42) !important;
    border-left: 1px solid rgba(255,255,255,.42) !important;
}
body.ssml-site-shell-enabled .ssml-footer-col {
    padding: 24px 22px !important;
    border-right: 1px solid rgba(255,255,255,.42) !important;
    border-bottom: 1px solid rgba(255,255,255,.42) !important;
}
body.ssml-site-shell-enabled .ssml-footer-title {
    font-family: var(--ssml-font-display, "Barlow Condensed"), "Arial Narrow", sans-serif !important;
    font-size: var(--ssml-fs-footer-header, 25px) !important;
    line-height: 1 !important;
}
body.ssml-site-shell-enabled .ssml-footer-col p,
body.ssml-site-shell-enabled .ssml-footer-links a,
body.ssml-site-shell-enabled .ssml-footer-contact-info,
body.ssml-site-shell-enabled .ssml-footer-bottom {
    font-size: var(--ssml-fs-footer-body, 11px) !important;
}
body.ssml-site-shell-enabled .ssml-footer-links a:hover,
body.ssml-site-shell-enabled .ssml-footer-links a:focus-visible {
    color: var(--ssml-red, #810000) !important;
}

@media (max-width: 1180px) {
    body.ssml-site-shell-enabled .ssml-shell-masthead {
        grid-template-columns: minmax(280px, 1fr) minmax(360px, 1.35fr) minmax(190px, .72fr);
    }
    body.ssml-site-shell-enabled .ssml-shell-logo-image {
        max-width: min(430px, 96%) !important;
        max-height: 112px !important;
    }
    body.ssml-site-shell-enabled .ssml-shell-nav-row {
        grid-template-columns: 1fr !important;
    }
    body.ssml-site-shell-enabled .ssml-shell-nav-row > .ssml-unified-search--header {
        border-left: 0 !important;
        border-top: 1px solid var(--ssml-ink, #111111) !important;
    }
}

@media (max-width: 820px) {
    body.ssml-site-shell-enabled .ssml-shell-frame,
    body.ssml-site-shell-enabled .ssml-footer-inner,
    body.ssml-site-shell-enabled.ssml-manual-page .ssml-portal,
    body.ssml-site-shell-enabled.ssml-manual-page .ssml-reader,
    body.ssml-site-shell-enabled.ssml-manual-page .ssml-publication-reader {
        width: calc(100vw - 18px) !important;
    }
    body.ssml-site-shell-enabled .ssml-shell-logo-image {
        max-height: 98px !important;
    }
    .ssml-hero-terminal > .ssml-unified-search--home {
        border-right: 0 !important;
        border-bottom: 1px solid var(--ssml-ink, #111111) !important;
    }
    body.ssml-site-shell-enabled .ssml-footer-cols {
        grid-template-columns: 1fr !important;
    }
}


/* ==========================================================================
   PHASE 3 // HOME + MANUAL DASHBOARD CONTENT ARCHITECTURE (v0.5.20.25)
   ========================================================================== */

/* HOME: keep the actions inside the hero, then give unified search its own
   full-width editorial deck underneath. */
.ss-home-page .ssml-hero-main {
    display: flex !important;
    flex-direction: column !important;
}
.ssml-home-hero-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    margin-top: 28px;
    border-top: 1px solid var(--ssml-ink, #111111);
    border-left: 1px solid var(--ssml-ink, #111111);
}
.ssml-home-hero-actions a {
    min-height: 56px;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 0 16px !important;
    border-width: var(--ssml-btn-border-width, 1px) !important;
    border-style: solid !important;
    border-left: 0 !important;
    border-top: 0 !important;
    border-bottom-color: var(--ssml-ink, #111111) !important;
    border-right-color: var(--ssml-ink, #111111) !important;
    letter-spacing: .055em;
}
.ssml-home-hero-actions a span {
    font-size: 18px;
    line-height: 1;
}
.ssml-home-search-deck {
    display: grid;
    grid-template-columns: minmax(300px,.58fr) minmax(0,1.42fr);
    align-items: stretch;
    border-top: 1px solid var(--ssml-ink, #111111);
}
.ssml-home-search-copy {
    padding: 15px 20px;
    border-right: 1px solid var(--ssml-ink, #111111);
    display: grid;
    align-content: center;
    gap: 4px;
}
.ssml-home-search-copy .ssml-dossier-label {
    margin: 0 0 3px !important;
    padding: 0 !important;
    border: 0 !important;
}
.ssml-home-search-copy p {
    margin: 0 !important;
    color: var(--ssml-slate, #5a5a5a);
    font-size: var(--ssml-fs-card-body, 13px);
    line-height: 1.35;
}
.ssml-home-search-deck > .ssml-unified-search--home {
    align-self: stretch;
    margin: 0 !important;
    border: 0 !important;
}
.ssml-home-search-deck > .ssml-unified-search--home input,
.ssml-home-search-deck > .ssml-unified-search--home button {
    min-height: 76px !important;
    height: 100% !important;
}

/* HOME: stats read as four editorial data cards instead of large numbers
   fighting tiny inline labels. */
.ss-home-page .ssml-home-stats {
    display: grid !important;
    grid-template-columns: repeat(4,minmax(0,1fr)) !important;
    gap: 0 !important;
    margin: 0 0 30px !important;
    background: transparent !important;
    border: 1px solid var(--ssml-ink, #111111) !important;
    border-radius: 0 !important;
    overflow: visible !important;
}
.ss-home-page .ssml-home-stats .ssml-stat-card {
    min-width: 0;
    min-height: 150px;
    padding: 18px 20px !important;
    text-align: left !important;
    display: grid;
    grid-template-rows: auto 1fr auto;
    align-content: stretch;
    gap: 10px;
    border-right: 1px solid var(--ssml-ink, #111111);
    background: var(--ssml-card-background, #ffffff) !important;
}
.ss-home-page .ssml-home-stats .ssml-stat-card:last-child {
    border-right: 0;
}
.ss-home-page .ssml-stat-index {
    font-family: var(--ssml-font-mono, "IBM Plex Mono", monospace);
    font-size: var(--ssml-fs-eyebrow, 10px);
    font-weight: 800;
    letter-spacing: .08em;
    color: var(--ssml-red, #810000);
}
.ss-home-page .ssml-stat-metric {
    align-self: center;
    display: block;
    font-family: var(--ssml-font-display, "Barlow Condensed", sans-serif) !important;
    font-size: var(--ssml-fs-stat-value, 34px) !important;
    line-height: .88;
    letter-spacing: -.02em;
    text-transform: uppercase;
}
.ss-home-page .ssml-stat-label {
    display: block !important;
    margin: 0 !important;
    color: var(--ssml-slate, #5a5a5a) !important;
    font-family: var(--ssml-font-mono, "IBM Plex Mono", monospace) !important;
    font-size: var(--ssml-fs-stat-label, 9px) !important;
    line-height: 1.35;
    letter-spacing: .08em;
}

/* HOME: a deliberate inverse band adds visual rhythm and provides a real
   optional image bay without leaving an empty picture frame when no image is
   assigned. */
.ssml-home-inverse {
    margin: 0 calc(clamp(22px,2.3vw,38px) * -1) 34px;
    padding: clamp(24px,3vw,42px);
    background: var(--ssml-inverse-bg, #000000);
    color: var(--ssml-inverse-text, #ffffff);
    border-top: 4px solid var(--ssml-red, #810000);
    border-bottom: 1px solid var(--ssml-inverse-text, #ffffff);
}
.ssml-home-inverse-intro {
    display: grid;
    grid-template-columns: minmax(280px,.72fr) minmax(0,1.28fr);
    gap: clamp(26px, 3vw, 46px);
    align-items: stretch;
    margin-bottom: 24px;
}
.ssml-home-inverse .ssml-dossier-label {
    color: var(--ssml-inverse-eyebrow, #ffffff) !important;
}
.ssml-home-inverse .ssml-about-h2,
.ssml-home-inverse .ssml-pillar-title {
    color: var(--ssml-inverse-text, #ffffff) !important;
}
.ssml-home-inverse-intro > div > p,
.ssml-home-inverse .ssml-pillar-body {
    color: var(--ssml-inverse-muted, #c8c8c8) !important;
}
.ssml-home-inverse .ssml-media-slot {
    min-height: 170px;
    border-color: color-mix(in srgb,var(--ssml-inverse-text,#fff) 55%,transparent);
    background: color-mix(in srgb,var(--ssml-inverse-bg,#000) 88%,var(--ssml-inverse-text,#fff));
}
.ssml-home-inverse .ssml-media-slot.is-fallback strong {
    color: var(--ssml-inverse-text, #ffffff) !important;
}
.ssml-home-inverse .ssml-media-slot.is-fallback small {
    color: var(--ssml-inverse-muted, #c8c8c8) !important;
}
.ssml-home-inverse .ssml-about-pillars-grid {
    margin: 0 !important;
    gap: 0 !important;
    border-top: 1px solid color-mix(in srgb,var(--ssml-inverse-text,#fff) 55%,transparent);
    border-left: 1px solid color-mix(in srgb,var(--ssml-inverse-text,#fff) 55%,transparent);
}
.ssml-home-inverse .ssml-pillar-card {
    min-height: 190px;
    padding: 20px !important;
    border: 0 !important;
    border-right: 1px solid color-mix(in srgb,var(--ssml-inverse-text,#fff) 55%,transparent) !important;
    border-bottom: 1px solid color-mix(in srgb,var(--ssml-inverse-text,#fff) 55%,transparent) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}
.ssml-home-inverse .ssml-pillar-card:hover {
    border-color: var(--ssml-red, #810000) !important;
    box-shadow: inset 0 -4px 0 var(--ssml-red, #810000) !important;
}
.ssml-home-inverse .ssml-pillar-code {
    border-radius: 0 !important;
    background: var(--ssml-red, #810000) !important;
}

/* HOME: category directory becomes a deliberate system grid rather than a row
   of tiny rounded chips. Hover stays red, never white-on-white. */
.ssml-home-section-heading {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 24px;
    align-items: end;
    padding-bottom: 15px;
    border-bottom: 1px solid var(--ssml-ink, #111111);
}
.ssml-home-section-heading .ssml-about-h2 {
    margin-bottom: 7px !important;
}
.ssml-home-section-heading p {
    margin: 0;
    max-width: 760px;
    color: var(--ssml-slate, #5a5a5a);
    font-size: var(--ssml-fs-section-body, 14px);
}
.ssml-home-section-mark {
    padding-left: 18px;
    border-left: 4px solid var(--ssml-red, #810000);
    color: var(--ssml-slate, #5a5a5a);
    font-family: var(--ssml-font-mono, "IBM Plex Mono", monospace);
    font-size: var(--ssml-fs-eyebrow, 10px);
    font-weight: 800;
    letter-spacing: .08em;
}
.ss-home-page .ss-store-category-grid {
    display: grid !important;
    grid-template-columns: repeat(4,minmax(0,1fr)) !important;
    gap: 0 !important;
    margin: 18px 0 0 !important;
    border-top: 1px solid var(--ssml-ink, #111111);
    border-left: 1px solid var(--ssml-ink, #111111);
}
.ss-home-page .ss-cat-btn {
    min-width: 0;
    min-height: 128px;
    display: grid !important;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto 1fr auto;
    align-content: stretch !important;
    gap: 7px !important;
    padding: 14px !important;
    border: 0 !important;
    border-right: 1px solid var(--ssml-ink, #111111) !important;
    border-bottom: 1px solid var(--ssml-ink, #111111) !important;
    border-radius: 0 !important;
    background: var(--ssml-card-background, #ffffff) !important;
    color: var(--ssml-ink, #111111) !important;
    transform: none !important;
}
.ss-home-page .ss-cat-btn-eyebrow {
    grid-column: 1/-1;
    color: var(--ssml-red, #810000);
    font-family: var(--ssml-font-mono, "IBM Plex Mono", monospace);
    font-size: var(--ssml-fs-eyebrow, 10px);
    font-weight: 800;
    letter-spacing: .08em;
}
.ss-home-page .ss-cat-btn-name {
    grid-column: 1/-1;
    align-self: center;
    font-family: var(--ssml-font-display, "Barlow Condensed", sans-serif);
    font-size: var(--ssml-fs-card-header, 22px);
    font-weight: 800;
    line-height: .95;
    text-transform: uppercase;
}
.ss-home-page .ss-cat-btn-meta {
    color: var(--ssml-slate, #5a5a5a);
    font-family: var(--ssml-font-mono, "IBM Plex Mono", monospace);
    font-size: var(--ssml-fs-meta, 11px);
}
.ss-home-page .ss-cat-btn i {
    color: var(--ssml-red, #810000);
    font-style: normal;
    font-size: 20px;
}
.ss-home-page .ss-cat-btn:hover,
.ss-home-page .ss-cat-btn:focus-visible {
    background: color-mix(in srgb,var(--ssml-red,#810000) 5%,var(--ssml-card-background,#fff)) !important;
    border-right-color: var(--ssml-red, #810000) !important;
    border-bottom-color: var(--ssml-red, #810000) !important;
    box-shadow: inset 0 0 0 2px var(--ssml-red, #810000) !important;
    color: var(--ssml-red, #810000) !important;
    outline: 0 !important;
}
.ss-home-page .ss-cat-btn:hover .ss-cat-btn-name,
.ss-home-page .ss-cat-btn:hover .ss-cat-btn-meta,
.ss-home-page .ss-cat-btn:focus-visible .ss-cat-btn-name,
.ss-home-page .ss-cat-btn:focus-visible .ss-cat-btn-meta {
    color: var(--ssml-red, #810000) !important;
}

/* MANUAL DASHBOARD: simplify the lead rule and make the customer publication
   identity visually important instead of a thumbnail in the corner. */
body.ssml-site-shell-enabled.ssml-manual-page .ssml-portal {
    width: min(var(--ssml-shell-max, 1420px), calc(100vw - 32px)) !important;
    padding-top: 36px !important;
}
.ssml-portal .ssml-editorial-rule {
    display: grid !important;
    grid-template-columns: 30px minmax(0,1fr) !important;
    gap: 14px !important;
    align-items: center !important;
    margin-bottom: 24px !important;
    padding-bottom: 8px !important;
    border-bottom: 1px solid var(--ssml-ink, #111111) !important;
}
.ssml-portal .ssml-editorial-rule span {
    width: 30px !important;
    height: 2px !important;
    background: var(--ssml-red, #810000) !important;
}
.ssml-portal .ssml-editorial-rule b {
    border: 0 !important;
    padding: 0 !important;
    text-align: right !important;
}
.ssml-portal .ssml-portal-lead {
    grid-template-columns: minmax(0,1.45fr) minmax(360px,.72fr) !important;
}
.ssml-portal .ssml-publication-ledger {
    gap: 16px;
}
.ssml-portal .ssml-publication-ledger-head {
    display: block !important;
    padding-bottom: 16px !important;
}
.ssml-portal .ssml-customer-brand {
    display: grid;
    grid-template-columns: minmax(130px,190px) minmax(0,1fr);
    gap: 16px;
    align-items: center;
}
.ssml-portal .ssml-customer-brand img {
    width: 100% !important;
    max-width: 190px !important;
    max-height: 82px !important;
    object-fit: contain !important;
    object-position: left center;
}
.ssml-portal .ssml-customer-logo-fallback {
    min-height: 72px;
    display: grid;
    place-items: center;
    border: 1px solid var(--ssml-border, #d6dde2);
    font: 800 var(--ssml-fs-meta, 11px) var(--ssml-font-mono, monospace);
    color: var(--ssml-slate, #5a5a5a);
    text-align: center;
}
.ssml-portal .ssml-customer-brand span {
    display: block;
    color: var(--ssml-red, #810000);
    font-family: var(--ssml-font-mono, monospace);
    font-size: var(--ssml-fs-eyebrow, 10px);
    font-weight: 800;
    letter-spacing: .08em;
}
.ssml-portal .ssml-customer-brand strong {
    display: block;
    margin-top: 5px;
    font-size: clamp(24px,2vw,34px) !important;
    line-height: .9;
}
.ssml-portal .ssml-publication-ledger-title > strong {
    display: block;
    margin: 0 !important;
    font-size: clamp(32px,3vw,46px) !important;
    line-height: .9;
}
.ssml-portal .ssml-customer-cert {
    margin-top: 9px !important;
    color: var(--ssml-slate, #5a5a5a) !important;
    font-family: var(--ssml-font-mono, monospace);
    font-size: var(--ssml-fs-meta, 11px) !important;
    line-height: 1.35;
}
.ssml-portal .ssml-publication-output {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 14px;
    align-items: center;
    padding-top: 14px;
    border-top: 1px solid var(--ssml-ink, #111111);
}
.ssml-portal .ssml-publication-output span {
    display: block;
    color: var(--ssml-red, #810000);
    font-family: var(--ssml-font-mono, monospace);
    font-size: var(--ssml-fs-eyebrow, 10px);
    font-weight: 800;
    letter-spacing: .08em;
}
.ssml-portal .ssml-publication-output p {
    margin-top: 5px !important;
    font-size: var(--ssml-fs-card-body, 13px);
    line-height: 1.35;
}
.ssml-portal .ssml-publication-output .ssml-print-link {
    min-height: 46px;
    padding: 0 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

/* MANUAL DASHBOARD: a dark intelligence band gives the search room to explain
   the two result sets instead of stretching one empty input across the page. */
.ssml-portal .ssml-search-panel-inverse {
    background: var(--ssml-inverse-bg, #000000) !important;
    color: var(--ssml-inverse-text, #ffffff) !important;
    border-color: var(--ssml-inverse-bg, #000000) !important;
    border-top-color: var(--ssml-red, #810000) !important;
}
.ssml-portal .ssml-search-panel-inverse .ssml-panel-heading {
    border-bottom-color: color-mix(in srgb,var(--ssml-inverse-text,#fff) 55%,transparent) !important;
}
.ssml-portal .ssml-search-panel-inverse h2 {
    color: var(--ssml-inverse-text, #ffffff) !important;
}
.ssml-portal .ssml-search-panel-inverse .ssml-panel-heading > p {
    color: var(--ssml-inverse-muted, #c8c8c8) !important;
    border-left-color: color-mix(in srgb,var(--ssml-inverse-text,#fff) 55%,transparent) !important;
}
.ssml-portal .ssml-search-workbench {
    display: grid;
    grid-template-columns: minmax(0,1.42fr) minmax(270px,.58fr);
    gap: 18px;
    align-items: stretch;
    margin-top: 18px;
}
.ssml-portal .ssml-search-workbench .ssml-unified-search--dashboard {
    align-self: stretch;
    margin: 0 !important;
    background: #ffffff;
    border-color: #ffffff !important;
}
.ssml-portal .ssml-search-workbench .ssml-unified-search--dashboard input,
.ssml-portal .ssml-search-workbench .ssml-unified-search--dashboard button {
    min-height: 54px !important;
    height: 54px !important;
}
.ssml-portal .ssml-search-guide {
    padding: 12px 14px;
    border-left: 4px solid var(--ssml-red, #810000);
    background: color-mix(in srgb,var(--ssml-inverse-text,#fff) 8%,var(--ssml-inverse-bg,#000));
}
.ssml-portal .ssml-search-guide span {
    display: block;
    color: var(--ssml-red, #810000);
    font-family: var(--ssml-font-mono, monospace);
    font-size: var(--ssml-fs-eyebrow, 10px);
    font-weight: 800;
    letter-spacing: .08em;
}
.ssml-portal .ssml-search-guide p {
    margin-top: 7px !important;
    color: var(--ssml-inverse-muted, #c8c8c8) !important;
    font-size: var(--ssml-fs-card-body, 13px);
    line-height: 1.4;
}
.ssml-portal .ssml-search-panel-inverse .ssml-search-results {
    margin-top: 18px !important;
    color: var(--ssml-ink, #111111);
}

/* MANUAL DASHBOARD: quick routes now carry enough context to justify their
   footprint. The former duplicate workflow row is collapsed into one compact
   sequence inside the same panel. */
.ssml-portal .ssml-quick-grid a {
    min-height: 172px !important;
    padding: 18px !important;
}
.ssml-portal .ssml-quick-grid strong {
    font-size: var(--ssml-fs-card-header, 22px) !important;
    line-height: .95 !important;
}
.ssml-portal .ssml-quick-grid small {
    font-size: var(--ssml-fs-card-body, 13px) !important;
    line-height: 1.45 !important;
}
.ssml-portal .ssml-quick-grid a:hover,
.ssml-portal .ssml-quick-grid a:focus-visible {
    color: var(--ssml-red, #810000) !important;
    background: color-mix(in srgb,var(--ssml-red,#810000) 5%,#fff) !important;
    box-shadow: inset 0 0 0 2px var(--ssml-red, #810000) !important;
}
.ssml-portal .ssml-quick-sequence {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 9px;
    margin-top: 14px;
    padding-top: 12px;
    border-top: 1px solid var(--ssml-ink, #111111);
    color: var(--ssml-slate, #5a5a5a);
    font-family: var(--ssml-font-mono, monospace);
    font-size: var(--ssml-fs-meta, 11px);
    font-weight: 800;
    letter-spacing: .06em;
}
.ssml-portal .ssml-quick-sequence i {
    color: var(--ssml-red, #810000);
    font-style: normal;
}

/* Manual statistics are now useful on the page and are also appended to the
   global scrolling data feed by PHP. */
.ssml-portal .ssml-portal-statline strong {
    font-size: var(--ssml-fs-stat-value, 34px) !important;
}
.ssml-portal .ssml-portal-statline span,
.ssml-portal .ssml-portal-statline small {
    font-size: var(--ssml-fs-stat-label, 9px) !important;
}

/* Responsive layout for the Phase 3 Home + Dashboard structures. */
@media (max-width: 1100px) {
    .ssml-home-search-deck,
    .ssml-home-inverse-intro,
    .ssml-portal .ssml-search-workbench {
        grid-template-columns: 1fr !important;
    }
    .ssml-home-search-copy {
        border-right: 0 !important;
        border-bottom: 1px solid var(--ssml-ink, #111111);
    }
    .ss-home-page .ss-store-category-grid {
        grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    }
    .ssml-portal .ssml-portal-lead {
        grid-template-columns: 1fr !important;
    }
}
@media (max-width: 760px) {
    .ssml-home-hero-actions,
    .ss-home-page .ssml-home-stats,
    .ss-home-page .ss-store-category-grid {
        grid-template-columns: 1fr !important;
    }
    .ssml-home-hero-actions a,
    .ss-home-page .ssml-home-stats .ssml-stat-card {
        border-right: 0 !important;
        border-bottom: 1px solid var(--ssml-ink, #111111) !important;
    }
    .ssml-home-inverse {
        margin-left: calc(clamp(22px,2.3vw,38px) * -1);
        margin-right: calc(clamp(22px,2.3vw,38px) * -1);
    }
    .ssml-home-section-heading {
        grid-template-columns: 1fr;
    }
    .ssml-home-section-mark {
        border-left: 0;
        border-top: 1px solid var(--ssml-ink, #111111);
        padding: 10px 0 0;
    }
    .ssml-portal .ssml-publication-output {
        grid-template-columns: 1fr !important;
    }
    .ssml-portal .ssml-customer-brand {
        grid-template-columns: 1fr !important;
    }
    .ssml-portal .ssml-quick-sequence {
        justify-content: flex-start;
        flex-wrap: wrap;
    }
}

/* v0.5.20.26 — Phase 3 visual QA hotfixes.
   1) keep inverse capability cards genuinely inverse and readable,
   2) use the empty dashboard lead space for unified search,
   3) hard-limit dashboard stat typography,
   4) style store pagination even when Woo renders it outside the catalog card. */
body:not(.wp-admin) .ss-home-page .ssml-home-inverse .ssml-about-pillars-grid {
    background: var(--ssml-inverse-bg, #000000) !important;
}
body:not(.wp-admin) .ss-home-page .ssml-home-inverse .ssml-pillar-card {
    background: #0b0b0b !important;
    color: var(--ssml-inverse-text, #ffffff) !important;
    border-right-color: rgba(255,255,255,.42) !important;
    border-bottom-color: rgba(255,255,255,.42) !important;
}
body:not(.wp-admin) .ss-home-page .ssml-home-inverse .ssml-pillar-card:hover,
body:not(.wp-admin) .ss-home-page .ssml-home-inverse .ssml-pillar-card:focus-within {
    background: #111111 !important;
    border-color: var(--ssml-red, #810000) !important;
    box-shadow: inset 0 -4px 0 var(--ssml-red, #810000) !important;
}
body:not(.wp-admin) .ss-home-page .ssml-home-inverse .ssml-pillar-title {
    color: var(--ssml-inverse-text, #ffffff) !important;
}
body:not(.wp-admin) .ss-home-page .ssml-home-inverse .ssml-pillar-body {
    color: var(--ssml-inverse-muted, #c8c8c8) !important;
    opacity: 1 !important;
}
body:not(.wp-admin) .ss-home-page .ssml-home-inverse .ssml-pillar-code {
    color: #ffffff !important;
}

/* The customer ledger is taller than the original left-hand dashboard copy.
   Put the unified search in that space rather than leaving a dead white field. */
.ssml-portal .ssml-portal-lead-main {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}
.ssml-portal .ssml-portal-lead-search {
    margin-top: auto;
    padding-top: 20px;
    border-top: 1px solid var(--ssml-ink, #111111);
}
.ssml-portal .ssml-portal-lead-search-heading {
    display: grid;
    grid-template-columns: minmax(0,.72fr) minmax(280px,1.28fr);
    gap: 18px;
    align-items: end;
}
.ssml-portal .ssml-portal-lead-search-heading p {
    margin: 0 !important;
    color: var(--ssml-slate, #5a5a5a) !important;
    font-size: var(--ssml-fs-card-body, 13px) !important;
    line-height: 1.4;
}
.ssml-portal .ssml-search-workbench--lead {
    grid-template-columns: minmax(0,1.5fr) minmax(240px,.5fr);
    gap: 12px;
    margin-top: 12px;
}
.ssml-portal .ssml-search-workbench--lead .ssml-unified-search--dashboard {
    border: 1px solid var(--ssml-ink, #111111) !important;
}
.ssml-portal .ssml-search-workbench--lead .ssml-unified-search--dashboard input,
.ssml-portal .ssml-search-workbench--lead .ssml-unified-search--dashboard button {
    min-height: 48px !important;
    height: 48px !important;
}
.ssml-portal .ssml-search-workbench--lead .ssml-search-guide {
    background: var(--ssml-inverse-bg, #000000) !important;
    color: var(--ssml-inverse-text, #ffffff) !important;
    padding: 10px 12px;
}
.ssml-portal .ssml-search-workbench--lead .ssml-search-guide p {
    color: var(--ssml-inverse-muted, #c8c8c8) !important;
    font-size: var(--ssml-fs-meta, 11px) !important;
    line-height: 1.35;
}
.ssml-portal .ssml-search-results-panel .ssml-search-results {
    margin-top: 18px !important;
}

/* Guard the dashboard metrics from inheriting display/headline scale. */
body:not(.wp-admin) .ssml-portal .ssml-portal-statline > div {
    min-height: 100px !important;
    padding: 15px 18px !important;
}
body:not(.wp-admin) .ssml-portal .ssml-portal-statline strong {
    display: block !important;
    font-size: min(var(--ssml-fs-stat-value, 34px), 38px) !important;
    line-height: .9 !important;
    letter-spacing: -.02em !important;
}
body:not(.wp-admin) .ssml-portal .ssml-portal-statline span,
body:not(.wp-admin) .ssml-portal .ssml-portal-statline small {
    font-size: min(var(--ssml-fs-stat-label, 9px), 10px) !important;
    line-height: 1.25 !important;
}

/* Technical-pagination treatment for the store. Woo may render the nav outside
   .ssml-master-catalog-card, so cover both locations. */
body.ssml-site-shell-enabled.woocommerce-shop nav.woocommerce-pagination,
body.ssml-site-shell-enabled.tax-product_cat nav.woocommerce-pagination,
body.ssml-site-shell-enabled.post-type-archive-product nav.woocommerce-pagination,
body.ssml-site-shell-enabled .ssml-ledger-pagination {
    width: min(1560px, calc(100vw - 36px));
    margin: 18px auto 0 !important;
    padding: 14px 16px !important;
    border: 1px solid var(--ssml-ink, #111111) !important;
    border-top: 4px solid var(--ssml-red, #810000) !important;
    background: var(--ssml-card-background, #ffffff) !important;
    text-align: center !important;
    box-sizing: border-box;
}
body.ssml-site-shell-enabled.woocommerce-shop nav.woocommerce-pagination ul,
body.ssml-site-shell-enabled.tax-product_cat nav.woocommerce-pagination ul,
body.ssml-site-shell-enabled.post-type-archive-product nav.woocommerce-pagination ul,
body.ssml-site-shell-enabled .ssml-ledger-pagination ul {
    display: inline-flex !important;
    align-items: stretch !important;
    gap: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border: 1px solid var(--ssml-ink, #111111) !important;
    list-style: none !important;
}
body.ssml-site-shell-enabled.woocommerce-shop nav.woocommerce-pagination li,
body.ssml-site-shell-enabled.tax-product_cat nav.woocommerce-pagination li,
body.ssml-site-shell-enabled.post-type-archive-product nav.woocommerce-pagination li,
body.ssml-site-shell-enabled .ssml-ledger-pagination li {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-right: 1px solid var(--ssml-ink, #111111) !important;
}
body.ssml-site-shell-enabled.woocommerce-shop nav.woocommerce-pagination li:last-child,
body.ssml-site-shell-enabled.tax-product_cat nav.woocommerce-pagination li:last-child,
body.ssml-site-shell-enabled.post-type-archive-product nav.woocommerce-pagination li:last-child,
body.ssml-site-shell-enabled .ssml-ledger-pagination li:last-child {
    border-right: 0 !important;
}
body.ssml-site-shell-enabled.woocommerce-shop nav.woocommerce-pagination a,
body.ssml-site-shell-enabled.woocommerce-shop nav.woocommerce-pagination span,
body.ssml-site-shell-enabled.tax-product_cat nav.woocommerce-pagination a,
body.ssml-site-shell-enabled.tax-product_cat nav.woocommerce-pagination span,
body.ssml-site-shell-enabled.post-type-archive-product nav.woocommerce-pagination a,
body.ssml-site-shell-enabled.post-type-archive-product nav.woocommerce-pagination span,
body.ssml-site-shell-enabled .ssml-ledger-pagination a,
body.ssml-site-shell-enabled .ssml-ledger-pagination span {
    min-width: 42px !important;
    height: 38px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 12px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    color: var(--ssml-ink, #111111) !important;
    font-family: var(--ssml-font-mono, "IBM Plex Mono", monospace) !important;
    font-size: var(--ssml-fs-meta, 11px) !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    box-sizing: border-box;
}
body.ssml-site-shell-enabled nav.woocommerce-pagination span.current,
body.ssml-site-shell-enabled .ssml-ledger-pagination span.current {
    background: var(--ssml-red, #810000) !important;
    color: #ffffff !important;
}
body.ssml-site-shell-enabled nav.woocommerce-pagination a:hover,
body.ssml-site-shell-enabled nav.woocommerce-pagination a:focus-visible,
body.ssml-site-shell-enabled .ssml-ledger-pagination a:hover,
body.ssml-site-shell-enabled .ssml-ledger-pagination a:focus-visible {
    background: var(--ssml-ink, #111111) !important;
    color: #ffffff !important;
    outline: 0 !important;
}

@media (max-width: 980px) {
    .ssml-portal .ssml-portal-lead-search-heading,
    .ssml-portal .ssml-search-workbench--lead {
        grid-template-columns: 1fr;
    }
    .ssml-portal .ssml-portal-lead-search {
        margin-top: 24px;
    }
}

/* ==========================================================================
   v0.5.20.44 — GLOBAL SHELL RHYTHM + HOME HERO POLISH
   ========================================================================== */
:root {
    --ssml-page-vertical-gap: 32px;
}

/* Keep every plugin-owned surface on the same vertical rhythm between the
   publication ticker/header and the global footer. */
body:not(.wp-admin) .ssml-dossier-wrapper {
    padding-top: var(--ssml-page-vertical-gap) !important;
    padding-bottom: var(--ssml-page-vertical-gap) !important;
}
body.ssml-site-shell-enabled.ssml-manual-page .ssml-portal {
    padding-top: var(--ssml-page-vertical-gap) !important;
    padding-bottom: var(--ssml-page-vertical-gap) !important;
}
body.ssml-standalone-catalog-template .ssml-owned-catalog-page {
    padding-top: var(--ssml-page-vertical-gap) !important;
    padding-bottom: var(--ssml-page-vertical-gap) !important;
}
body.ssml-standalone-catalog-template .ssml-owned-catalog-page > .ssml-master-catalog-card {
    margin-bottom: 0 !important;
}
body.ssml-standalone-product-template .ssml-owned-product-page {
    padding-top: var(--ssml-page-vertical-gap) !important;
    padding-bottom: var(--ssml-page-vertical-gap) !important;
}

/* The publication ticker now lives on the same rails as masthead, nav, page
   content and footer. The rule directly above it is constrained to that frame
   instead of spanning the browser viewport. */
body.ssml-site-shell-enabled .ssml-shell-nav-wrap {
    border-bottom: 0 !important;
}
.ssml-shell-ticker-wrap {
    width: 100%;
    background: var(--ssml-card-background, #fff);
}
.ssml-shell-ticker-wrap .ssml-shell-ticker {
    box-sizing: border-box;
    border-top: 1px solid var(--ssml-ink, #111);
    border-left: 1px solid var(--ssml-ink, #111);
    border-right: 1px solid var(--ssml-ink, #111);
}

/* Remove the floating red dash from hero eyebrows and from the Manual
   Dashboard editorial rule. The long rule and eyebrow copy remain. */
body:not(.wp-admin) .ssml-beacon-dot {
    display: none !important;
}
body:not(.wp-admin) .ssml-hero-badge {
    justify-content: flex-start !important;
    gap: 0 !important;
}
.ssml-portal .ssml-editorial-rule {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
}
.ssml-portal .ssml-editorial-rule > span {
    display: none !important;
}

/* Home unified search: black information block, clean white search field, and
   a wide single-line action button that terminates exactly at the hero edge. */
.ssml-home-search-deck {
    grid-template-columns: minmax(330px, .62fr) minmax(0, 1.38fr) !important;
    background: var(--ssml-card-background, #fff);
}
.ssml-home-search-copy {
    background: var(--ssml-inverse-bg, #000) !important;
    color: var(--ssml-inverse-text, #fff) !important;
    padding: 16px 20px !important;
}
.ssml-home-search-copy .ssml-dossier-label,
.ssml-home-search-copy p {
    color: var(--ssml-inverse-text, #fff) !important;
}
.ssml-home-search-deck > .ssml-unified-search--home {
    grid-template-columns: minmax(0, 1fr) minmax(190px, 230px) !important;
    width: 100% !important;
    max-width: none !important;
    border-top: 0 !important;
    border-bottom: 0 !important;
    border-right: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}
.ssml-home-search-deck > .ssml-unified-search--home input,
.ssml-home-search-deck > .ssml-unified-search--home button {
    box-sizing: border-box !important;
}
.ssml-home-search-deck > .ssml-unified-search--home button {
    width: 100% !important;
    min-width: 190px !important;
    max-width: none !important;
    padding-inline: 18px !important;
    white-space: nowrap !important;
    line-height: 1 !important;
}

/* Four-panel hero mode gets supporting copy so the right rail reads as useful
   technical information instead of oversized empty cells. */
.ssml-hero-rail--panels .ssml-hero-meta-unit {
    min-height: 190px;
    justify-content: flex-start;
}
.ssml-hero-rail--panels .ssml-hero-meta-visual {
    min-height: 48px;
    margin: 8px 0 8px;
}
.ssml-hero-rail--panels .ssml-hero-meta-visual em {
    min-height: 48px;
}
.ssml-hero-rail--panels .ssml-hero-meta-unit strong {
    margin-top: auto;
}
.ssml-hero-meta-body {
    margin: 8px 0 14px !important;
    color: var(--ssml-slate, #5a5a5a) !important;
    font-family: var(--ssml-font-body, "IBM Plex Sans"), Arial, sans-serif !important;
    font-size: max(11px, var(--ssml-fs-card-body, 13px)) !important;
    line-height: 1.42 !important;
}

/* Optional single-media hero mode. The image completely replaces the 2x2
   data panel grid, while retaining an editorial caption overlay. */
.ssml-hero-rail--media {
    position: relative;
    display: block !important;
    min-height: 100%;
    overflow: hidden;
    background: var(--ssml-inverse-bg, #000);
}
.ssml-hero-rail-media-image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 430px;
    object-fit: cover;
    filter: grayscale(100%);
}
.ssml-hero-rail-media-fallback {
    min-height: 430px;
    display: grid;
    place-content: center;
    gap: 8px;
    padding: 28px;
    text-align: center;
    background: var(--ssml-inverse-bg, #000);
    color: var(--ssml-inverse-text, #fff);
}
.ssml-hero-rail-media-fallback span,
.ssml-hero-rail-media-fallback small,
.ssml-hero-rail-media-caption {
    font-family: var(--ssml-font-mono, "IBM Plex Mono"), Consolas, monospace;
    text-transform: uppercase;
    letter-spacing: .08em;
}
.ssml-hero-rail-media-fallback span {
    color: var(--ssml-inverse-eyebrow, #ffffff);
    font-size: 10px;
    font-weight: 800;
}
.ssml-hero-rail-media-fallback strong {
    font-family: var(--ssml-font-display, "Barlow Condensed"), "Arial Narrow", sans-serif;
    font-size: 34px;
    line-height: .95;
    text-transform: uppercase;
}
.ssml-hero-rail-media-fallback small {
    color: var(--ssml-inverse-muted, #c8c8c8);
    font-size: 9px;
}
.ssml-hero-rail-media-caption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 12px 16px;
    background: color-mix(in srgb, var(--ssml-inverse-bg, #000) 88%, transparent);
    color: var(--ssml-inverse-text, #fff);
    border-top: 1px solid rgba(255,255,255,.45);
    font-size: 9px;
    font-weight: 800;
}

@media (max-width: 1100px) {
    :root { --ssml-page-vertical-gap: 24px; }
    .ssml-home-search-deck { grid-template-columns: 1fr !important; }
    .ssml-home-search-copy {
        border-right: 0 !important;
        border-bottom: 1px solid var(--ssml-ink, #111) !important;
    }
    .ssml-home-search-deck > .ssml-unified-search--home {
        grid-template-columns: minmax(0, 1fr) minmax(175px, 210px) !important;
    }
}
@media (max-width: 620px) {
    :root { --ssml-page-vertical-gap: 18px; }
    .ssml-home-search-deck > .ssml-unified-search--home {
        grid-template-columns: 1fr !important;
    }
    .ssml-home-search-deck > .ssml-unified-search--home button {
        min-width: 0 !important;
        min-height: 48px !important;
        border-left: 0 !important;
        border-top: 1px solid var(--ssml-ink, #111) !important;
    }
    .ssml-hero-rail-media-image,
    .ssml-hero-rail-media-fallback { min-height: 300px; }
}


/* ================================================================
   v0.5.20.45 — HOME INVERSE BALANCE + INVERSE EYEBROW TOKEN
   - Move the capabilities image to the left so the page alternates visual weight
     after the hero right-rail media.
   - Give dark sections their own eyebrow/kicker color instead of forcing red
     text onto black.
   ================================================================ */
.ssml-preview-inverse-eyebrow {
    color: var(--ssml-inverse-eyebrow, #ffffff) !important;
    font-family: var(--ssml-font-mono, "IBM Plex Mono", monospace);
    font-size: var(--ssml-fs-eyebrow, 10px);
    letter-spacing: .08em;
    text-transform: uppercase;
}

.ssml-home-inverse .ssml-home-inverse-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: clamp(6px, 1vw, 14px) 0;
}

.ssml-home-inverse .ssml-media-slot {
    min-height: clamp(220px, 22vw, 330px);
}

.ssml-home-inverse .ssml-media-slot.is-fallback span {
    color: var(--ssml-inverse-eyebrow, #ffffff) !important;
}

body:not(.wp-admin) .ss-home-page .ssml-home-inverse .ssml-dossier-label,
body:not(.wp-admin) .ss-home-page .ssml-home-inverse .ssml-kicker {
    color: var(--ssml-inverse-eyebrow, #ffffff) !important;
}

@media (max-width: 1100px) {
    .ssml-home-inverse-intro {
        grid-template-columns: minmax(230px, .8fr) minmax(0, 1.2fr);
        gap: 24px;
    }
}

@media (max-width: 760px) {
    .ssml-home-inverse-intro {
        grid-template-columns: 1fr;
    }
    .ssml-home-inverse .ssml-media-slot {
        min-height: 210px;
    }
}

/* ================================================================
   v0.5.20.46 — HOME SEARCH FEATURE + NAV LABEL CLEANUP
   - Removes the cramped hero-bottom search row and gives unified search a
     dedicated editorial section between the stats and capabilities band.
   - Keeps Precision Rotary Fleet Support as its own lower grouping.
   - Zero-count product categories are filtered in PHP.
   ================================================================ */
.ssml-home-search-feature {
    margin: 0 0 42px;
    border: 1px solid var(--ssml-ink, #111111);
    background: var(--ssml-card-background, #ffffff);
}
.ssml-home-search-feature-head {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(260px, .55fr);
    align-items: stretch;
    border-bottom: 1px solid var(--ssml-ink, #111111);
}
.ssml-home-search-feature-copy {
    padding: clamp(22px, 2.5vw, 34px);
}
.ssml-home-search-feature-copy .ssml-dossier-label {
    display: block;
    margin: 0 0 9px !important;
    color: var(--ssml-red, #810000) !important;
}
.ssml-home-search-feature-copy .ssml-about-h2 {
    margin: 0 0 10px !important;
    max-width: 820px;
}
.ssml-home-search-feature-copy > p {
    max-width: 840px;
    margin: 0 !important;
    color: var(--ssml-slate, #5a5a5a);
    font-size: var(--ssml-fs-section-body, 14px);
    line-height: 1.5;
}
.ssml-home-search-feature-mark {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 26px;
    background: var(--ssml-inverse-bg, #000000);
    color: var(--ssml-inverse-text, #ffffff);
    font-family: var(--ssml-font-display, "Barlow Condensed"), "Arial Narrow", sans-serif;
    font-size: clamp(25px, 2.35vw, 40px);
    font-weight: 800;
    line-height: .96;
    letter-spacing: .01em;
    text-align: center;
    text-transform: uppercase;
}
.ssml-home-search-feature-form {
    padding: 18px clamp(22px, 2.5vw, 34px);
    border-bottom: 1px solid var(--ssml-ink, #111111);
    background: color-mix(in srgb, var(--ssml-card-background, #fff) 95%, var(--ssml-border, #d6dde2));
}
.ssml-home-search-feature .ssml-unified-search--home {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(210px, 250px) !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    border: 1px solid var(--ssml-ink, #111111) !important;
    background: #fff !important;
    overflow: hidden !important;
}
.ssml-home-search-feature .ssml-unified-search--home input,
.ssml-home-search-feature .ssml-unified-search--home button {
    min-height: 62px !important;
    height: 62px !important;
    box-sizing: border-box !important;
}
.ssml-home-search-feature .ssml-unified-search--home input {
    border: 0 !important;
    padding-inline: 18px !important;
}
.ssml-home-search-feature .ssml-unified-search--home button {
    min-width: 210px !important;
    width: 100% !important;
    border: 0 !important;
    border-left: 1px solid var(--ssml-ink, #111111) !important;
    white-space: nowrap !important;
    padding-inline: 22px !important;
}
.ssml-home-search-feature-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.ssml-home-search-feature-grid article {
    min-width: 0;
    min-height: 150px;
    padding: 20px clamp(18px, 2vw, 28px);
    border-right: 1px solid var(--ssml-ink, #111111);
}
.ssml-home-search-feature-grid article:last-child {
    border-right: 0;
}
.ssml-home-search-feature-grid article > span {
    display: block;
    margin-bottom: 10px;
    color: var(--ssml-red, #810000);
    font-family: var(--ssml-font-mono, "IBM Plex Mono"), monospace;
    font-size: var(--ssml-fs-eyebrow, 10px);
    font-weight: 800;
    letter-spacing: .08em;
}
.ssml-home-search-feature-grid article > strong {
    display: block;
    margin-bottom: 8px;
    color: var(--ssml-ink, #111111);
    font-family: var(--ssml-font-display, "Barlow Condensed"), "Arial Narrow", sans-serif;
    font-size: clamp(20px, 1.7vw, 28px);
    line-height: 1;
    text-transform: uppercase;
}
.ssml-home-search-feature-grid article > p {
    margin: 0 !important;
    color: var(--ssml-slate, #5a5a5a);
    font-size: var(--ssml-fs-card-body, 13px);
    line-height: 1.45;
}

/* The capabilities band is deliberately separated from search so it reads as
   the next editorial chapter rather than another row attached to the hero. */
.ss-home-page .ssml-home-inverse {
    margin-top: 0 !important;
}

@media (max-width: 900px) {
    .ssml-home-search-feature-head {
        grid-template-columns: 1fr;
    }
    .ssml-home-search-feature-mark {
        justify-content: flex-start;
        text-align: left;
        min-height: 92px;
    }
    .ssml-home-search-feature-grid {
        grid-template-columns: 1fr;
    }
    .ssml-home-search-feature-grid article {
        min-height: 0;
        border-right: 0;
        border-bottom: 1px solid var(--ssml-ink, #111111);
    }
    .ssml-home-search-feature-grid article:last-child {
        border-bottom: 0;
    }
}
@media (max-width: 620px) {
    .ssml-home-search-feature .ssml-unified-search--home {
        grid-template-columns: 1fr !important;
    }
    .ssml-home-search-feature .ssml-unified-search--home button {
        min-width: 0 !important;
        border-left: 0 !important;
        border-top: 1px solid var(--ssml-ink, #111111) !important;
    }
}

/* v0.5.20.61 — single-plan Membership / Clearance presentation */
.ss-membership-page .ssml-membership-single-wrap{padding-bottom:clamp(28px,4vw,52px)}
.ss-membership-page .ssml-membership-single-plan{display:grid;grid-template-columns:minmax(0,860px);justify-content:center;margin-top:26px}
.ss-membership-page .ssml-membership-plan-card{position:relative;background:var(--ssml-card-background,#fff);border:2px solid var(--ssml-rule,#111);padding:clamp(24px,3vw,40px)}
.ss-membership-page .ssml-membership-plan-badge{position:absolute;top:-13px;right:20px;background:var(--ssml-red,#810000);color:#fff;font-family:var(--ssml-font-mono,monospace);font-size:var(--ssml-fs-eyebrow,10px);font-weight:800;letter-spacing:.08em;padding:5px 10px;text-transform:uppercase}
.ss-membership-page .ssml-membership-plan-card .ssml-pillar-title{font-size:clamp(30px,4vw,48px);line-height:.98;margin:10px 0 12px}
.ss-membership-page .ssml-membership-plan-card .ssml-pillar-body{max-width:760px;margin:0 0 24px}
.ss-membership-page .ssml-membership-price{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;align-items:end;border-top:3px solid var(--ssml-rule,#111);border-bottom:1px solid var(--ssml-rule,#111);padding:18px 0;margin:0 0 22px}
.ss-membership-page .ssml-membership-price strong{font-family:var(--ssml-font-display,sans-serif);font-size:clamp(38px,5vw,58px);line-height:.9;color:var(--ssml-ink,#111)}
.ss-membership-page .ssml-membership-price span{font-family:var(--ssml-font-mono,monospace);font-size:12px;font-weight:700;text-transform:uppercase;padding-bottom:4px}
.ss-membership-page .ssml-membership-price small{grid-column:1/-1;font-family:var(--ssml-font-mono,monospace);font-size:11px;color:var(--ssml-slate,#666);margin-top:5px;text-transform:uppercase}
.ss-membership-page .ssml-membership-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0 0 26px;padding:0;border-top:1px solid var(--ssml-border,#d6dde2);list-style:none}
.ss-membership-page .ssml-membership-features li{display:flex;gap:9px;align-items:flex-start;margin:0;padding:11px 12px 11px 0;border-bottom:1px solid var(--ssml-border,#d6dde2);font-size:13px;line-height:1.35}
.ss-membership-page .ssml-membership-features li span{color:var(--ssml-red,#810000);font-family:var(--ssml-font-mono,monospace);font-weight:900}
.ss-membership-page .ssml-membership-cta{display:inline-flex!important;width:auto!important;min-width:0!important;align-items:center;justify-content:center}
@media (max-width:720px){.ss-membership-page .ssml-membership-features{grid-template-columns:1fr}.ss-membership-page .ssml-membership-price{grid-template-columns:1fr}.ss-membership-page .ssml-membership-price small{grid-column:1}.ss-membership-page .ssml-membership-plan-badge{right:12px}}

/* v0.5.20.62 — expanded single-plan Membership editorial / SEO presentation */
.ss-membership-page .ssml-membership-single-wrap{
    padding-bottom:clamp(30px,4vw,54px);
}
.ss-membership-page .ssml-membership-primary-grid{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);
    gap:0;
    margin-top:24px;
    border-top:3px solid var(--ssml-rule,#111);
    border-bottom:1px solid var(--ssml-rule,#111);
}
.ss-membership-page .ssml-membership-plan-card{
    position:relative;
    background:var(--ssml-card-background,#fff);
    border:0;
    border-right:1px solid var(--ssml-rule,#111);
    padding:clamp(26px,3vw,42px);
    min-width:0;
}
.ss-membership-page .ssml-membership-plan-card .ssml-pillar-title{
    font-size:clamp(34px,4.2vw,54px);
    line-height:.96;
    margin:10px 0 14px;
}
.ss-membership-page .ssml-membership-plan-card .ssml-pillar-body{
    max-width:800px;
    margin:0 0 24px;
    font-size:var(--ssml-fs-card-body,14px);
    line-height:1.55;
}
.ss-membership-page .ssml-membership-plan-badge{
    top:-14px;
    right:20px;
}
.ss-membership-page .ssml-membership-price{
    margin-bottom:20px;
}
.ss-membership-page .ssml-membership-features{
    margin-bottom:24px;
}
.ss-membership-page .ssml-membership-cta{
    display:inline-flex!important;
    width:auto!important;
    min-width:240px!important;
    align-items:center;
    justify-content:center;
}
.ss-membership-page .ssml-membership-overview-panel{
    background:var(--ssml-inverse-bg,#070707);
    color:var(--ssml-inverse-text,#fff);
    padding:clamp(26px,3vw,42px);
    min-width:0;
    position:relative;
}
.ss-membership-page .ssml-membership-overview-panel:before{
    content:"";
    position:absolute;
    left:0;
    top:28px;
    bottom:28px;
    width:4px;
    background:var(--ssml-red,#810000);
}
.ss-membership-page .ssml-membership-overview-panel .ssml-dossier-label{
    color:var(--ssml-inverse-eyebrow,#d8d8d8);
    border-color:rgba(255,255,255,.28);
}
.ss-membership-page .ssml-membership-overview-panel h3{
    color:var(--ssml-inverse-text,#fff);
    font-family:var(--ssml-font-display,sans-serif);
    font-size:clamp(27px,3vw,40px);
    line-height:.98;
    text-transform:uppercase;
    margin:16px 0 18px;
}
.ss-membership-page .ssml-membership-overview-panel > p{
    color:var(--ssml-inverse-muted,#d3d3d3);
    font-size:var(--ssml-fs-card-body,14px);
    line-height:1.65;
    margin:0 0 28px;
}
.ss-membership-page .ssml-membership-facts{
    display:grid;
    grid-template-columns:1fr 1fr;
    border-top:1px solid rgba(255,255,255,.35);
    border-left:1px solid rgba(255,255,255,.22);
}
.ss-membership-page .ssml-membership-facts > div{
    padding:13px 12px;
    border-right:1px solid rgba(255,255,255,.22);
    border-bottom:1px solid rgba(255,255,255,.22);
}
.ss-membership-page .ssml-membership-facts span{
    display:block;
    color:var(--ssml-inverse-eyebrow,#d8d8d8);
    font-family:var(--ssml-font-mono,monospace);
    font-size:var(--ssml-fs-eyebrow,10px);
    font-weight:700;
    letter-spacing:.06em;
    margin-bottom:5px;
}
.ss-membership-page .ssml-membership-facts strong{
    display:block;
    color:var(--ssml-inverse-text,#fff);
    font-family:var(--ssml-font-display,sans-serif);
    font-size:18px;
    line-height:1;
}
.ss-membership-page .ssml-membership-access-section{
    padding-top:clamp(30px,4vw,50px);
}
.ss-membership-page .ssml-membership-section-head{
    display:grid;
    grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);
    gap:clamp(24px,4vw,60px);
    align-items:end;
    padding-bottom:20px;
    border-bottom:3px solid var(--ssml-rule,#111);
}
.ss-membership-page .ssml-membership-section-head h3{
    font-family:var(--ssml-font-display,sans-serif);
    font-size:clamp(28px,3.4vw,44px);
    line-height:.98;
    text-transform:uppercase;
    margin:0;
}
.ss-membership-page .ssml-membership-section-head p{
    margin:0;
    color:var(--ssml-slate,#666);
    font-size:var(--ssml-fs-section-body,15px);
    line-height:1.55;
}
.ss-membership-page .ssml-membership-capability-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    border-left:1px solid var(--ssml-rule,#111);
}
.ss-membership-page .ssml-membership-capability{
    min-width:0;
    padding:24px 24px 28px;
    border-right:1px solid var(--ssml-rule,#111);
    border-bottom:1px solid var(--ssml-rule,#111);
    position:relative;
}
.ss-membership-page .ssml-membership-capability:nth-child(4n+1):before{
    content:"";
    position:absolute;
    top:-1px;
    left:-1px;
    width:52px;
    height:4px;
    background:var(--ssml-red,#810000);
}
.ss-membership-page .ssml-membership-capability > span{
    display:block;
    color:var(--ssml-red,#810000);
    font-family:var(--ssml-font-mono,monospace);
    font-size:var(--ssml-fs-eyebrow,10px);
    font-weight:800;
    letter-spacing:.07em;
    margin-bottom:10px;
}
.ss-membership-page .ssml-membership-capability h4{
    font-family:var(--ssml-font-display,sans-serif);
    font-size:clamp(22px,2.2vw,30px);
    line-height:1;
    text-transform:uppercase;
    margin:0 0 11px;
}
.ss-membership-page .ssml-membership-capability p{
    margin:0;
    color:var(--ssml-slate,#555);
    font-size:13px;
    line-height:1.55;
}
.ss-membership-page .ssml-membership-detail-wrap{
    margin-top:18px;
    padding-top:clamp(28px,4vw,46px);
    padding-bottom:clamp(28px,4vw,46px);
}
.ss-membership-page .ssml-membership-detail-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);
    border-top:3px solid var(--ssml-rule,#111);
    border-bottom:1px solid var(--ssml-rule,#111);
}
.ss-membership-page .ssml-membership-audience,
.ss-membership-page .ssml-membership-faq{
    min-width:0;
    padding:clamp(24px,3vw,38px);
}
.ss-membership-page .ssml-membership-audience{
    border-right:1px solid var(--ssml-rule,#111);
}
.ss-membership-page .ssml-membership-audience h2,
.ss-membership-page .ssml-membership-faq h2{
    font-family:var(--ssml-font-display,sans-serif);
    font-size:clamp(28px,3.1vw,42px);
    line-height:.98;
    text-transform:uppercase;
    margin:14px 0 16px;
}
.ss-membership-page .ssml-membership-audience > p{
    color:var(--ssml-slate,#555);
    font-size:var(--ssml-fs-section-body,15px);
    line-height:1.65;
    max-width:850px;
}
.ss-membership-page .ssml-membership-role-strip{
    display:flex;
    flex-wrap:wrap;
    gap:0;
    margin-top:24px;
    border-top:1px solid var(--ssml-rule,#111);
    border-left:1px solid var(--ssml-rule,#111);
}
.ss-membership-page .ssml-membership-role-strip span{
    padding:9px 11px;
    border-right:1px solid var(--ssml-rule,#111);
    border-bottom:1px solid var(--ssml-rule,#111);
    font-family:var(--ssml-font-mono,monospace);
    font-size:var(--ssml-fs-eyebrow,10px);
    font-weight:800;
    letter-spacing:.04em;
}
.ss-membership-page .ssml-membership-faq-list{
    border-top:1px solid var(--ssml-rule,#111);
}
.ss-membership-page .ssml-membership-faq-list details{
    border-bottom:1px solid var(--ssml-rule,#111);
    margin:0;
}
.ss-membership-page .ssml-membership-faq-list summary{
    cursor:pointer;
    list-style:none;
    font-family:var(--ssml-font-body,sans-serif);
    font-size:14px;
    font-weight:750;
    line-height:1.35;
    padding:13px 28px 13px 0;
    position:relative;
}
.ss-membership-page .ssml-membership-faq-list summary::-webkit-details-marker{display:none}
.ss-membership-page .ssml-membership-faq-list summary:after{
    content:"+";
    position:absolute;
    right:2px;
    top:10px;
    color:var(--ssml-red,#810000);
    font-family:var(--ssml-font-mono,monospace);
    font-size:20px;
    font-weight:900;
}
.ss-membership-page .ssml-membership-faq-list details[open] summary:after{content:"−"}
.ss-membership-page .ssml-membership-faq-list details p{
    margin:0;
    padding:0 24px 15px 0;
    color:var(--ssml-slate,#555);
    font-size:13px;
    line-height:1.55;
}
@media (max-width:980px){
    .ss-membership-page .ssml-membership-primary-grid,
    .ss-membership-page .ssml-membership-detail-grid{grid-template-columns:1fr}
    .ss-membership-page .ssml-membership-plan-card,
    .ss-membership-page .ssml-membership-audience{border-right:0;border-bottom:1px solid var(--ssml-rule,#111)}
    .ss-membership-page .ssml-membership-section-head{grid-template-columns:1fr;gap:10px}
}
@media (max-width:720px){
    .ss-membership-page .ssml-membership-capability-grid{grid-template-columns:1fr}
    .ss-membership-page .ssml-membership-facts{grid-template-columns:1fr}
    .ss-membership-page .ssml-membership-cta{min-width:0!important;width:100%!important}
}


/* ==========================================================================
   v0.5.20.65 — GLOBAL TECHNICAL CONSTRUCTION GRID
   ========================================================================== */
body.ssml-site-shell-enabled .wp-site-blocks,
body.ssml-site-shell-enabled main,
body.ssml-site-shell-enabled .wp-block-post-content,
body.ssml-site-shell-enabled .entry-content {
    background-color: transparent !important;
}
body.ssml-site-shell-enabled .ssml-site-header {
    background-color: var(--ssml-card-background,#fff);
    background-image: var(--ssml-construction-grid) !important;
    background-size: var(--ssml-construction-grid-size) !important;
    background-position: 0 0 !important;
}
body.ssml-site-shell-enabled .ssml-shell-masthead,
body.ssml-site-shell-enabled .ssml-shell-nav-wrap,
body.ssml-site-shell-enabled .ssml-shell-nav-row {
    background-color: transparent !important;
}
body.ssml-site-shell-enabled .ssml-site-footer {
    background-color: var(--ssml-inverse-bg,#050505) !important;
    background-image: linear-gradient(to right, rgba(255,255,255,.075) 1px, transparent 1px) !important;
    background-size: var(--ssml-construction-grid-size) !important;
    background-position: 0 0 !important;
}

/* ==========================================================================
   v0.5.20.69 — CONTINUOUS GLOBAL TECHNICAL CONSTRUCTION GRID
   Keep the site canvas visible through every plugin-owned page shell. Content
   cards remain opaque; only the outer/theme surfaces become transparent.
   ========================================================================== */
body.ssml-site-shell-enabled:not(.wp-admin) #page,
body.ssml-site-shell-enabled:not(.wp-admin) #content,
body.ssml-site-shell-enabled:not(.wp-admin) .site-content,
body.ssml-site-shell-enabled:not(.wp-admin) .content-area,
body.ssml-site-shell-enabled:not(.wp-admin) .site-main,
body.ssml-site-shell-enabled:not(.wp-admin) .wp-site-blocks,
body.ssml-site-shell-enabled:not(.wp-admin) main,
body.ssml-site-shell-enabled:not(.wp-admin) .wp-block-post-content,
body.ssml-site-shell-enabled:not(.wp-admin) .entry-content {
    background-color: transparent !important;
    background-image: none !important;
}
body.ssml-site-shell-enabled:not(.wp-admin) .ssml-dossier-wrapper,
body.ssml-site-shell-enabled.ssml-manual-page .ssml-portal,
body.ssml-site-shell-enabled.ssml-manual-page .ssml-reader,
body.ssml-site-shell-enabled.ssml-manual-page .ssml-reader.ss-book-viewer,
body.ssml-site-shell-enabled.ssml-manual-page .ssml-publication-reader,
body.ssml-site-shell-enabled .ssml-full-pdf,
body.ssml-site-shell-enabled.ssml-standalone-catalog-template .ssml-owned-catalog-page,
body.ssml-site-shell-enabled.ssml-standalone-product-template .ssml-owned-product-page,
body.ssml-site-shell-enabled .ss-membership-page,
body.ssml-site-shell-enabled .ssml-account-workspace,
body.ssml-site-shell-enabled .ssml-account-page-shell,
body.ssml-site-shell-enabled .ssml-registration-shell {
    background-color: transparent !important;
    background-image: none !important;
}
/* Header shares the exact body grid origin so the rules read continuously
   from the masthead into the page instead of restarting below navigation. */
body.ssml-site-shell-enabled .ssml-site-header {
    background-color: var(--ssml-card-background,#fff) !important;
    background-image: var(--ssml-construction-grid) !important;
    background-size: var(--ssml-construction-grid-size) !important;
    background-position: 0 0 !important;
}

/* ========================================================================== 
   v0.5.20.73 — CORE EXCHANGE PUBLIC PAGE
   ========================================================================== */
.ssml-core-exchange-page .ssml-core-overview{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);padding:0!important;overflow:hidden}
.ssml-core-exchange-page .ssml-core-overview-copy{padding:28px 30px}
.ssml-core-exchange-page .ssml-core-overview-copy p{max-width:900px;margin:12px 0 0;line-height:1.6;color:var(--ssml-muted,#5a5a5a)}
.ssml-core-exchange-page .ssml-core-status-panel{background:var(--ssml-inverse-bg,#000);color:var(--ssml-inverse-text,#fff);padding:25px 26px;border-left:4px solid var(--ssml-red,#810000)}
.ssml-core-exchange-page .ssml-core-status-panel>span,.ssml-core-exchange-page .ssml-core-status-panel div span{display:block;font:800 var(--ssml-fs-eyebrow,10px)/1.2 var(--ssml-font-mono,"IBM Plex Mono"),monospace;letter-spacing:.08em;color:var(--ssml-inverse-eyebrow,#fff);text-transform:uppercase}
.ssml-core-exchange-page .ssml-core-status-panel>strong{display:block;margin:7px 0 20px;font:800 28px/1 var(--ssml-font-display,"Barlow Condensed"),sans-serif;text-transform:uppercase}
.ssml-core-exchange-page .ssml-core-status-panel>div{padding:11px 0;border-top:1px solid rgba(255,255,255,.35)}
.ssml-core-exchange-page .ssml-core-status-panel>div b{display:block;margin-top:4px;font:700 13px/1.35 var(--ssml-font-mono,"IBM Plex Mono"),monospace;color:#fff}
.ssml-core-exchange-page .ssml-core-process{padding:28px 30px!important}
.ssml-core-exchange-page .ssml-core-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--ssml-rule,#111);border-left:1px solid var(--ssml-rule,#111);margin-top:18px}
.ssml-core-exchange-page .ssml-core-process-grid article{min-height:220px;padding:20px;border-right:1px solid var(--ssml-rule,#111);border-bottom:1px solid var(--ssml-rule,#111);background:var(--ssml-card-background,#fff)}
.ssml-core-exchange-page .ssml-core-process-grid article>span{font:800 var(--ssml-fs-eyebrow,10px)/1.2 var(--ssml-font-mono,"IBM Plex Mono"),monospace;color:var(--ssml-red,#810000);letter-spacing:.08em}
.ssml-core-exchange-page .ssml-core-process-grid h3{margin:20px 0 9px;font:800 26px/1 var(--ssml-font-display,"Barlow Condensed"),sans-serif;text-transform:uppercase}
.ssml-core-exchange-page .ssml-core-process-grid p{margin:0;color:var(--ssml-muted,#5a5a5a);font-size:13px;line-height:1.55}
.ssml-core-exchange-page .ssml-core-policy-grid{display:grid;grid-template-columns:1fr 1fr;padding:0!important}
.ssml-core-exchange-page .ssml-core-policy,.ssml-core-exchange-page .ssml-core-faq{padding:28px 30px}
.ssml-core-exchange-page .ssml-core-policy{border-right:1px solid var(--ssml-rule,#111)}
.ssml-core-exchange-page .ssml-core-policy h2,.ssml-core-exchange-page .ssml-core-faq h2,.ssml-core-exchange-page .ssml-core-cta h2{margin:7px 0 12px;font:800 34px/1 var(--ssml-font-display,"Barlow Condensed"),sans-serif;text-transform:uppercase}
.ssml-core-exchange-page .ssml-core-policy p,.ssml-core-exchange-page .ssml-core-cta p{color:var(--ssml-muted,#5a5a5a);line-height:1.6}
.ssml-core-exchange-page .ssml-core-faq details{border-top:1px solid var(--ssml-rule,#111);padding:13px 0}
.ssml-core-exchange-page .ssml-core-faq details:last-child{border-bottom:1px solid var(--ssml-rule,#111)}
.ssml-core-exchange-page .ssml-core-faq summary{cursor:pointer;font-weight:800}
.ssml-core-exchange-page .ssml-core-faq details p{margin:9px 0 0;color:var(--ssml-muted,#5a5a5a);line-height:1.55}
.ssml-core-exchange-page .ssml-core-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;margin:22px auto 34px;padding:26px 30px;border:1px solid var(--ssml-rule,#111);border-top:5px solid var(--ssml-red,#810000);background:var(--ssml-inverse-bg,#000);color:#fff}
.ssml-core-exchange-page .ssml-core-cta .ssml-dossier-label{color:var(--ssml-inverse-eyebrow,#fff)!important}
.ssml-core-exchange-page .ssml-core-cta h2{color:#fff}
.ssml-core-exchange-page .ssml-core-cta p{max-width:850px;margin-bottom:0;color:var(--ssml-inverse-muted,#c8c8c8)}
.ssml-core-exchange-page .ssml-core-cta .ssml-button-2{flex:0 0 auto;min-width:220px;text-align:center}
@media(max-width:980px){.ssml-core-exchange-page .ssml-core-overview,.ssml-core-exchange-page .ssml-core-policy-grid{grid-template-columns:1fr}.ssml-core-exchange-page .ssml-core-status-panel,.ssml-core-exchange-page .ssml-core-policy{border-left:0;border-right:0;border-top:4px solid var(--ssml-red,#810000)}.ssml-core-exchange-page .ssml-core-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ssml-core-exchange-page .ssml-core-cta{align-items:stretch;flex-direction:column}.ssml-core-exchange-page .ssml-core-cta .ssml-button-2{width:100%}}
@media(max-width:620px){.ssml-core-exchange-page .ssml-core-process-grid{grid-template-columns:1fr}}

/* ========================================================================== 
   v0.5.20.73 — HEADER / GRID / MANUAL UTILITY CONSISTENCY
   ========================================================================== */
body.ssml-site-shell-enabled .ssml-site-header,
body.ssml-site-shell-enabled .ssml-shell-masthead,
body.ssml-site-shell-enabled .ssml-shell-nav-wrap,
body.ssml-site-shell-enabled .ssml-shell-nav-row{
    background-color:var(--ssml-card-background,#fff)!important;
    background-image:none!important;
}
body.ssml-site-shell-enabled .ssml-site-header{border-bottom:0!important}
body.ssml-site-shell-enabled .ssml-shell-nav-wrap{border-top:0!important;border-bottom:0!important}
body.ssml-site-shell-enabled .ssml-shell-nav-row{border-top:1px solid var(--ssml-ink,#111)!important;border-bottom:1px solid var(--ssml-ink,#111)!important}
body.ssml-site-shell-enabled #page,
body.ssml-site-shell-enabled #content,
body.ssml-site-shell-enabled .site-content,
body.ssml-site-shell-enabled .content-area,
body.ssml-site-shell-enabled .site-main,
body.ssml-site-shell-enabled .wp-site-blocks,
body.ssml-site-shell-enabled main,
body.ssml-site-shell-enabled .wp-block-post-content,
body.ssml-site-shell-enabled .entry-content{background-color:transparent!important;background-image:none!important}
body.ssml-site-shell-enabled.ssml-manual-page .ssml-portal,
body.ssml-site-shell-enabled.ssml-manual-page .ssml-reader,
body.ssml-site-shell-enabled.ssml-manual-page .ssml-publication-reader{background-color:transparent!important;background-image:none!important}
.ssml-portal .ssml-search-guide span{color:var(--ssml-inverse-eyebrow,#fff)!important}


/* ========================================================================== 
   v0.5.20.74 — HEADER GUTTER CONSTRUCTION GRID
   The site canvas continues through the OUTER header gutters while the actual
   masthead/navigation frame stays opaque so grid rules never show through the
   logo, statement, metadata, navigation, or search controls.
   ========================================================================== */
body.ssml-site-shell-enabled .ssml-site-header{
    background-color:var(--ssml-page-background,#f8f6f0)!important;
    background-image:var(--ssml-construction-grid)!important;
    background-size:var(--ssml-construction-grid-size)!important;
    background-position:0 0!important;
}
body.ssml-site-shell-enabled .ssml-shell-masthead,
body.ssml-site-shell-enabled .ssml-shell-nav-row{
    background-color:var(--ssml-card-background,#fff)!important;
    background-image:none!important;
}
body.ssml-site-shell-enabled .ssml-shell-nav-wrap{
    background-color:transparent!important;
    background-image:none!important;
}
/* Utility/ticker bands intentionally remain solid publication bands. */
body.ssml-site-shell-enabled .ssml-shell-utility,
body.ssml-site-shell-enabled .ssml-shell-ticker{
    background-image:none!important;
}
