.am-shell {
    --am-accent: var(--bs-primary-text-emphasis, #084298);
    padding-top: 2.5rem;
    padding-bottom: 2rem;
    color: var(--bs-body-color);
}

.am-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    padding: 1rem 0 2rem;
    border-bottom: 2px solid var(--bs-border-color);
}

.am-heading h1 {
    font-size: clamp(2rem, 4vw, 3.2rem);
    font-weight: 750;
    letter-spacing: -.035em;
    overflow-wrap: anywhere;
}

.am-eyebrow {
    font-size: .75rem;
    letter-spacing: .12em;
    color: var(--am-accent);
    margin-bottom: .75rem;
    overflow-wrap: anywhere;
}

.am-intro, .am-heading-note span, .am-price-note, .am-disclaimer {
    color: var(--bs-secondary-color);
}

.am-heading-note {
    display: grid;
    gap: .4rem;
    font-size: .85rem;
    border-left: 3px solid var(--am-accent);
    padding-left: 1rem;
    flex-shrink: 0;
}

.am-search {
    display: flex;
    align-items: end;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 1.5rem 0;
}

.am-search label {
    display: grid;
    gap: .5rem;
    font-size: .85rem;
    font-weight: 600;
}

.am-keyword { flex: 1 1 260px; }
.am-reset { padding: .5rem 0; }
.am-results, .am-card-meta, .am-card-footer, .am-pagination {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
}

.am-results { padding: 1rem 0 .5rem; }
.am-results h2, .am-panel h2 { font-size: 1.2rem; margin: 0; }
.am-results span, .am-panel h2 span { font-size: .8rem; font-weight: normal; color: var(--bs-secondary-color); }
.am-results h2 span { margin-left: .5rem; }
.am-price-note { font-size: .8rem; line-height: 1.8; margin: .75rem 0 1.25rem; }
.am-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.am-card, .am-panel { border: 1px solid var(--bs-border-color); background: var(--bs-body-bg); padding: 1.5rem; border-radius: .5rem; }
.am-card { display: flex; flex-direction: column; transition: border-color .15s; }
.am-card:hover, .am-card:focus-within { border-color: var(--am-accent); }
.am-card-meta { font-size: .75rem; margin-bottom: 1.25rem; overflow-wrap: anywhere; }
.am-source { font-size: .72rem; background: var(--bs-tertiary-bg); color: var(--bs-secondary-color); padding: .25rem .5rem; border-radius: .25rem; }
.am-card h3 { font-size: 1.2rem; line-height: 1.4; overflow-wrap: anywhere; }
.am-card h3 a { color: var(--bs-body-color); text-decoration: none; }
.am-card h3 a:hover { color: var(--am-accent); text-decoration: underline; }
.am-model-id { font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: .78rem; color: var(--bs-secondary-color); overflow-wrap: anywhere; }
.am-card-prices { display: grid; grid-template-columns: 1fr 1fr; gap: .75rem; margin: auto 0 0; padding: 1.25rem 0; }
.am-card dt { font-size: .7rem; font-weight: normal; color: var(--bs-secondary-color); }
.am-card dd { font-size: 1.3rem; font-variant-numeric: tabular-nums; margin: .4rem 0 0; overflow-wrap: anywhere; }
.am-card-footer { border-top: 1px solid var(--bs-border-color); padding-top: 1rem; font-size: .72rem; flex-wrap: wrap; }
.am-card-footer strong { font-weight: normal; }
.am-card-footer a { white-space: nowrap; }
.am-pagination { justify-content: center; padding: 2rem 0; font-size: .9rem; }
.am-empty { text-align: center; background: var(--bs-tertiary-bg); padding: 4rem 1rem; border-radius: .5rem; }
.am-empty h2 { font-size: 1.4rem; }
.am-disclaimer { font-size: .75rem; border-top: 1px solid var(--bs-border-color); padding-top: 1rem; line-height: 1.8; }
.am-disclaimer a { margin-left: 1rem; }
.am-home { padding-top: 1rem; }
.am-home-hero { padding: clamp(1.25rem, 3vw, 2.25rem); border-radius: .8rem; background: radial-gradient(circle at 85% 15%, rgba(var(--bs-primary-rgb), .2), transparent 35%), var(--bs-tertiary-bg); text-align: center; }
.am-home-hero .am-eyebrow { margin-bottom: .4rem; }
.am-home-hero h1 { margin-bottom: .5rem; font-size: clamp(2rem, 4vw, 3.2rem); letter-spacing: -.045em; line-height: 1.08; }
.am-home-hero > p:not(.am-eyebrow) { max-width: 760px; margin: .5rem auto; color: var(--bs-secondary-color); }
.am-home-search { display: flex; max-width: 760px; gap: .6rem; margin: 1rem auto .65rem; }
.am-home-search button { min-width: 120px; white-space: nowrap; }
.am-home-actions { display: flex; justify-content: center; gap: 1.5rem; font-size: .9rem; }
.am-home-section { padding: 2rem 0; border-bottom: 1px solid var(--bs-border-color); }
.am-section-head { display: flex; justify-content: space-between; align-items: end; gap: 1rem; margin-bottom: 1rem; }
.am-section-head h2 { margin: 0; font-size: 1.7rem; }
.am-section-head > span { color: var(--bs-secondary-color); font-size: .8rem; }
.am-brand-group { margin-bottom: 1.25rem; }
.am-brand-group > h3 { margin-bottom: .55rem; font-size: 1rem; color: var(--bs-secondary-color); }
.am-featured-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.am-home .am-card { padding: 1rem; }
.am-home .am-card-meta { margin-bottom: .65rem; }
.am-home .am-card h3 { margin-bottom: .35rem; }
.am-home .am-model-id { margin-bottom: .5rem; }
.am-home .am-card-prices { padding: .75rem 0; }
.am-home .am-card-footer { padding-top: .65rem; }
.am-home-comparisons { display: flex; align-items: center; gap: .75rem; margin-top: .5rem; padding-top: 1rem; border-top: 1px solid var(--bs-border-color); font-size: .8rem; }
.am-home-comparisons > strong { flex: 0 0 auto; }
.am-home-comparisons > div { display: flex; flex-wrap: wrap; gap: .45rem; }
.am-home-comparisons a { padding: .3rem .55rem; border-radius: 2rem; background: var(--bs-tertiary-bg); text-decoration: none; }
.am-home-comparisons a:hover { color: var(--am-accent); }
.am-capability-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; }
.am-capability-grid a { display: grid; gap: .25rem; padding: .85rem; border: 1px solid var(--bs-border-color); border-radius: .6rem; text-decoration: none; background: var(--bs-body-bg); }
.am-capability-grid a:hover { border-color: var(--am-accent); }
.am-capability-grid span { color: var(--bs-secondary-color); font-size: .75rem; }
.am-capability-nav { display: flex; flex-wrap: wrap; gap: .5rem; margin-bottom: 1rem; }
.am-capability-nav a { padding: .35rem .65rem; border-radius: 2rem; background: var(--bs-tertiary-bg); font-size: .75rem; text-decoration: none; }
.am-compare-cta { display: flex; justify-content: space-between; align-items: center; gap: 2rem; margin: 2rem 0; padding: 1.5rem; border-radius: .8rem; background: var(--bs-tertiary-bg); }
.am-compare-form { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 1rem; align-items: start; margin: 2rem 0; }
.am-compare-form > button { grid-column: 1 / -1; justify-self: center; }
.am-model-picker { position: relative; display: grid; gap: .5rem; }
.am-vs { padding-top: 2.5rem; font-weight: 800; color: var(--am-accent); }
.am-option-list { position: absolute; z-index: 10; top: 100%; right: 0; left: 0; display: grid; max-height: 22rem; overflow-y: auto; border-radius: .5rem; background: var(--bs-body-bg); box-shadow: 0 .7rem 2rem rgba(0,0,0,.16); }
.am-option-list:empty { display: none; }
.am-option-list button { padding: .75rem; border: 0; border-bottom: 1px solid var(--bs-border-color); background: transparent; color: var(--bs-body-color); text-align: left; font-size: .78rem; }
.am-option-list button:hover { background: var(--bs-tertiary-bg); }
.am-compare-table-wrap { overflow-x: auto; margin: 2rem 0; }
.am-compare-table { width: 100%; min-width: 760px; border-collapse: collapse; }
.am-compare-table th, .am-compare-table td { padding: .9rem 1rem; border-bottom: 1px solid var(--bs-border-color); text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.am-compare-table thead th { position: sticky; top: 0; background: var(--bs-body-bg); }
.am-compare-table tbody th { width: 22%; color: var(--bs-secondary-color); font-weight: 500; }
.am-breadcrumb { display: flex; flex-wrap: wrap; gap: .7rem; margin-bottom: 1rem; font-size: .8rem; overflow-wrap: anywhere; }
.am-detail-grid { display: grid; grid-template-columns: 1fr 1.2fr; gap: 1.5rem; margin: 2rem 0; align-items: start; }
.am-price-list, .am-facts { margin: 1.25rem 0 0; }
.am-price-list > div, .am-facts > div { display: grid; grid-template-columns: minmax(6rem, 1fr) minmax(0, 2fr); gap: 1rem; padding: .8rem 0; border-bottom: 1px solid var(--bs-border-color); }
.am-price-list dt, .am-facts dt { font-size: .85rem; font-weight: normal; color: var(--bs-secondary-color); }
.am-price-list dd, .am-facts dd { margin: 0; font-size: .85rem; overflow-wrap: anywhere; }
.am-price-list dd { font-size: 1.2rem; font-variant-numeric: tabular-nums; text-align: right; }
.am-editorial { display: grid; grid-template-columns: 1fr 1.2fr; gap: 2rem; background: var(--bs-tertiary-bg); padding: 2rem; margin-bottom: 2rem; border-left: 3px solid var(--am-accent); }
.am-editorial h2 { font-size: 1.3rem; }
.am-editorial > p { margin: 0; font-size: .9rem; line-height: 1.9; color: var(--bs-secondary-color); }
.am-profile-content { line-height: 1.9; overflow-wrap: anywhere; }
.am-profile-content img { max-width: 100%; height: auto; border-radius: .5rem; }
.am-panel h3 { font-size: 1rem; margin: 1.5rem 0 .65rem; }
.am-panel details { border-top: 1px solid var(--bs-border-color); padding: .9rem 0; }
.am-panel summary { cursor: pointer; font-weight: 600; }
.am-panel details p { margin: .65rem 0 0; line-height: 1.8; color: var(--bs-secondary-color); }

@media (max-width: 1000px) {
    .am-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .am-detail-grid { grid-template-columns: 1fr; }
    .am-capability-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
    .am-shell { padding-top: 1rem; }
    .am-grid, .am-editorial { grid-template-columns: 1fr; }
    .am-heading { align-items: start; flex-direction: column; gap: 1rem; }
    .am-heading-note { display: none; }
    .am-results { flex-wrap: wrap; }
    .am-search label { flex: 1 1 100%; }
    .am-card, .am-panel { padding: 1.1rem; }
    .am-home-search, .am-section-head, .am-compare-cta, .am-home-comparisons { align-items: stretch; flex-direction: column; }
    .am-capability-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .am-compare-form { grid-template-columns: 1fr; }
    .am-vs { padding: 0; text-align: center; }
}

@media (prefers-reduced-motion: reduce) {
    .am-card { transition: none; }
}

/* AI Model Hero & Detail Tabs (Enterprise Style) */
.am-model-hero {
    background: linear-gradient(135deg, #1e3a8a 0%, #3b82f6 50%, #6366f1 100%);
    position: relative;
    overflow: hidden;
}

.am-model-hero .brand-logo {
    width: 76px;
    height: 76px;
    border-radius: 14px;
    background: #ffffff;
    color: #2563eb;
    border: 3px solid rgba(255, 255, 255, 0.85);
    flex-shrink: 0;
}

.am-model-hero .menu-btn a {
    display: inline-flex;
    align-items: center;
    padding: 3px 12px;
    margin-right: 6px;
    margin-bottom: 4px;
    background: rgba(255, 255, 255, 0.16);
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 20px;
    color: #ffffff;
    text-decoration: none;
    font-size: 13px;
    transition: all 0.2s ease;
}

.am-model-hero .menu-btn a i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    vertical-align: middle;
}

.am-model-hero .menu-btn a:hover {
    background: rgba(255, 255, 255, 0.32);
    border-color: rgba(255, 255, 255, 0.5);
    color: #ffffff;
}

.am-model-hero .am-hero-actions {
    width: 148px;
    max-width: 148px;
    align-items: stretch;
}

.am-model-hero .am-hero-actions .btn {
    width: 100%;
    min-height: 34px;
    padding: 6px 10px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 600;
}

.am-model-hero .am-hero-action-primary {
    border: 1px solid rgba(255, 255, 255, .86);
    background: rgba(255, 255, 255, .92);
    color: #172554 !important;
}

.am-model-hero .am-hero-action-primary:hover {
    background: #ffffff;
}

.am-model-hero .am-hero-action-secondary {
    border: 1px solid rgba(255, 255, 255, .42);
    background: rgba(255, 255, 255, .08);
    color: #ffffff !important;
}

.am-model-hero .am-hero-action-secondary:hover {
    background: rgba(255, 255, 255, .18);
}

@media (max-width: 768px) {
    .am-model-hero .am-hero-actions {
        width: 100%;
        max-width: 100%;
        flex-wrap: nowrap !important;
    }
    .am-model-hero .am-hero-actions .btn {
        width: auto;
        flex: 1 1 0;
    }
}

.am-detail-view .sticky-tabs {
    border-bottom: 2px solid var(--bs-border-color);
}

.am-detail-view .tab-pane {
    scroll-margin-top: 75px;
}

[data-bs-theme="dark"] .am-model-hero {
    background: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #312e81 100%);
}

[data-bs-theme="dark"] .am-model-hero .brand-logo {
    background: #1e293b;
    color: #60a5fa;
    border-color: rgba(255, 255, 255, 0.15);
}
