.sema2026 {
    --sema-yellow: #ffde00;
    --sema-ink: #161616;
    color: var(--sema-ink);
    background: #f3f3f0;
    font-family: 'Open Sans', sans-serif;
    font-size: 16px;
    line-height: 1.6;
}
.sema2026 *, .sema2026 *::before, .sema2026 *::after { box-sizing: border-box; }
.sema2026 .sema-shell { width: min(1240px, 100%); margin: 0 auto; padding: 0 40px; }
.sema2026 h1, .sema2026 h2, .sema2026 h3, .sema2026 p, .sema2026 figure { margin: 0; }
.sema2026 a { text-decoration: none; }
.sema2026 a:focus-visible { outline: 3px solid #3776be; outline-offset: 5px; }
.sema2026 [id] { scroll-margin-top: 100px; }
.sema2026 .sema-eyebrow { font-size: 12px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.sema2026 .sema-hero { overflow: hidden; background: #171717; color: #fff; }
.sema2026 .sema-hero-grid { min-height: 610px; display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 28px; }
.sema2026 .sema-hero-copy { padding: 62px 0 70px; position: relative; z-index: 1; }
.sema2026 .sema-hero-copy > .sema-eyebrow { display: flex; align-items: center; gap: 10px; color: var(--sema-yellow); }
.sema2026 .sema-marker { width: 8px; height: 8px; background: var(--sema-yellow); }
.sema2026 h1 { font-size: clamp(64px, 7.4vw, 102px); font-weight: 800; letter-spacing: -.065em; line-height: .97; margin: 28px 0 22px; }
.sema2026 h1 span { display: block; color: var(--sema-yellow); }
.sema2026 .sema-hero-headline { font-size: 29px; font-weight: 700; letter-spacing: -.025em; line-height: 1.22; }
.sema2026 .sema-hero-intro { color: #c9c9c9; font-size: 15px; max-width: 440px; margin: 20px 0 27px; }
.sema2026 .sema-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 50px; padding: 13px 22px; background: var(--sema-yellow); color: #111; font-size: 13px; font-weight: 800; }
.sema2026 .sema-button:hover { background: #fff; color: #111; }
.sema2026 .sema-button span { font-size: 21px; line-height: 1; }
.sema2026 .sema-hero-art { min-width: 0; min-height: 540px; display: flex; align-items: center; justify-content: center; }
.sema2026 .sema-hero-image { display: block; width: 100%; max-width: 540px; height: auto; }
.sema2026 .sema-jump { background: var(--sema-yellow); }
.sema2026 .sema-jump-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 72px; }
.sema2026 .sema-jump-title { font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.sema2026 .sema-jump a { color: #161616; font-size: 13px; font-weight: 700; padding: 15px 0; }
.sema2026 .sema-jump a:hover { text-decoration: underline; text-underline-offset: 5px; }
.sema2026 .sema-section { padding: 70px 0; }
.sema2026 .sema-section-heading { margin-bottom: 32px; }
.sema2026 .sema-section-heading h2 { font-size: clamp(26px, 3vw, 36px); font-weight: 800; line-height: 1.2; letter-spacing: -.035em; border-bottom: 2px solid currentColor; padding-bottom: 8px; }
.sema2026 .sema-section-heading p { font-size: 14px; color: #636363; margin-top: 3px; }
.sema2026 .sema-products { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.sema2026 .sema-product { background: #fff; min-width: 0; display: flex; flex-direction: column; }
.sema2026 .sema-product-media { display: flex; align-items: center; justify-content: center; gap: 15px; padding: 18px 20px 0; }
.sema2026 .sema-product-media figure { flex: 1 1 0; min-width: 0; text-align: center; }
.sema2026 .sema-product-media img { display: block; width: 100%; height: 265px; object-fit: contain; }
.sema2026 .sema-product-media figcaption { color: #595959; font-size: 11px; font-weight: 700; margin: 7px 0 20px; }
.sema2026 .sema-product-copy { padding: 26px 28px 32px; flex: 1; }
.sema2026 .sema-product-copy .sema-eyebrow { color: #666; font-size: 10px; margin-bottom: 10px; }
.sema2026 .sema-product h3 { font-size: 24px; font-weight: 800; line-height: 1.2; letter-spacing: -.025em; }
.sema2026 .sema-model { font-size: 11px; color: #666; font-weight: 700; letter-spacing: .04em; margin-top: 13px; overflow-wrap: anywhere; }
.sema2026 .sema-description { font-size: 14px; margin-top: 17px; color: #4e4e4e; }
.sema2026 .sema-placeholder { border-top: 1px solid #e5e5e5; padding-top: 17px; margin-top: 24px; color: #777; font-size: 13px; font-style: italic; }
.sema2026 .sema-highlights { font-size: 14px; margin: 22px 0 0; padding-left: 18px; }
.sema2026 .sema-highlights li { margin-top: 8px; padding-left: 3px; }
.sema2026 .sema-highlights li::marker { color: #a88c00; }
.sema2026 .sema-product-wide { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr 1.2fr; align-items: center; padding: 20px; }
.sema2026 .sema-product-wide .sema-product-copy { padding: 35px; }
.sema2026 .sema-product-wide h3 { font-size: 31px; }
.sema2026 .sema-product-wide .sema-product-media { padding-top: 0; }
.sema2026 .sema-product-wide .sema-product-media img { height: 280px; }
.sema2026 .sema-specs { grid-column: 1 / -1; min-width: 0; padding: 0 35px 20px; }
.sema2026 .sema-specs table { width: 100%; table-layout: fixed; border-collapse: collapse; font-size: 14px; line-height: 1.5; }
.sema2026 .sema-specs caption { color: #555; text-align: left; font-size: 12px; font-weight: 700; padding: 12px 0; }
.sema2026 .sema-specs th, .sema2026 .sema-specs td { text-align: left; vertical-align: top; padding: 12px 14px; border-bottom: 1px solid #ddd; overflow-wrap: anywhere; }
.sema2026 .sema-specs thead { background: #f3f3f0; }
.sema2026 .sema-specs thead th { font-size: 12px; font-weight: 800; }
.sema2026 .sema-specs th:first-child { width: 22%; }
.sema2026 .sema-specs tbody th { font-weight: 700; }
.sema2026 .sema-section-speakers { background: #222; color: #fff; }
.sema2026 .sema-section-speakers .sema-section-heading p { color: #bdbdbd; }
.sema2026 .sema-section-speakers .sema-product { color: var(--sema-ink); }
.sema2026 .sema-section-bass .sema-products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sema2026 .sema-section-bass .sema-product:not(.sema-product-wide) .sema-product-media img { height: 340px; }
.sema2026 .sema-section-marine { background: #e6e9e9; }
.sema2026 .sema-signup { background: var(--sema-yellow); padding: 48px 0; }
.sema2026 .sema-signup-inner { display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.sema2026 .sema-signup h2 { font-size: clamp(26px, 3vw, 36px); font-weight: 800; letter-spacing: -.035em; margin: 8px 0; }
.sema2026 .sema-signup p:not(.sema-eyebrow) { font-size: 14px; }
.sema2026 .sema-button-dark { background: #161616; color: #fff; flex-shrink: 0; }
.sema2026 .sema-back { background: #171717; padding: 21px; text-align: center; }
.sema2026 .sema-back a { color: #ddd; font-size: 12px; font-weight: 700; }
.sema2026 .sema-back a:hover { color: var(--sema-yellow); }
.sema2026 .sema-back span { margin-left: 10px; }
@media (max-width: 1000px) {
    .sema2026 .sema-shell { padding: 0 28px; }
    .sema2026 .sema-hero-grid { gap: 0; }
    .sema2026 .sema-jump-inner { gap: 16px; flex-wrap: wrap; justify-content: flex-start; padding-top: 8px; padding-bottom: 8px; }
    .sema2026 .sema-jump-title { flex-basis: 100%; padding-top: 5px; }
    .sema2026 .sema-jump a { padding: 5px 0 8px; }
    .sema2026 .sema-products { gap: 16px; }
    .sema2026 .sema-product-copy { padding: 22px; }
    .sema2026 .sema-product h3 { font-size: 22px; }
    .sema2026 .sema-product-media img { height: 210px; }
    .sema2026 .sema-product-wide { grid-template-columns: 1fr 1.2fr; padding: 10px; }
    .sema2026 .sema-product-wide .sema-product-copy { padding: 25px; }
    .sema2026 .sema-product-wide .sema-product-media { gap: 5px; padding: 5px; }
    .sema2026 .sema-product-wide .sema-product-media img { height: 210px; }
}
@media (max-width: 700px) {
    .sema2026 .sema-shell { padding-left: 22px; padding-right: 22px; }
    .sema2026 .sema-hero-grid { grid-template-columns: 1fr; }
    .sema2026 .sema-hero-copy { padding: 40px 0 10px; }
    .sema2026 h1 { font-size: 82px; margin: 24px 0 20px; }
    .sema2026 .sema-hero-headline { font-size: 27px; }
    .sema2026 .sema-hero-intro { max-width: 100%; }
    .sema2026 .sema-hero-art { min-height: 0; width: min(420px, 100%); margin: 0 auto; padding: 24px 0 32px; }
    .sema2026 .sema-jump-inner { column-gap: 20px; row-gap: 0; padding-top: 14px; padding-bottom: 12px; }
    .sema2026 .sema-jump-title { padding-bottom: 8px; }
    .sema2026 .sema-jump a { font-size: 12px; }
    .sema2026 .sema-section { padding: 42px 0; }
    .sema2026 .sema-section-heading { margin-bottom: 25px; }
    .sema2026 .sema-section-heading h2 { font-size: 28px; }
    .sema2026 .sema-products, .sema2026 .sema-section-bass .sema-products { grid-template-columns: 1fr; gap: 20px; }
    .sema2026 .sema-product-media { padding: 10px 18px 0; }
    .sema2026 .sema-product-media img { height: 270px; }
    .sema2026 .sema-product-wide { display: flex; padding: 0; }
    .sema2026 .sema-product-wide .sema-product-media { width: 100%; padding: 20px 14px 0; }
    .sema2026 .sema-product-wide .sema-product-media img { height: 190px; }
    .sema2026 .sema-product-wide .sema-product-copy { width: 100%; padding: 24px; }
    .sema2026 .sema-specs { width: 100%; padding: 0 18px 24px; }
    .sema2026 .sema-specs table { font-size: 12px; }
    .sema2026 .sema-specs th, .sema2026 .sema-specs td { padding: 10px 7px; }
    .sema2026 .sema-specs th:first-child { width: 28%; }
    .sema2026 .sema-product-wide h3 { font-size: 25px; }
    .sema2026 .sema-section-bass .sema-product:not(.sema-product-wide) .sema-product-media img { height: 280px; }
    .sema2026 .sema-product-media figcaption { font-size: 10px; margin-bottom: 5px; }
    .sema2026 .sema-signup { padding: 36px 0; }
    .sema2026 .sema-signup-inner { align-items: flex-start; flex-direction: column; gap: 24px; }
}
