body > main:has(> .home-editorial) { max-width: none; padding: 0; background: #fbf7ef; }
.home-editorial {
    --paper: #fbf7ef;
    display: grid;
    grid-template-columns: minmax(0, 43fr) minmax(0, 57fr);
    width: min(1120px, calc(100% - 48px));
    min-height: clamp(400px, 43vw, 490px);
    margin: clamp(18px, 3vw, 36px) auto 0;
    border: 1px solid #e5dbc8;
    border-radius: 22px;
    overflow: hidden;
    background: radial-gradient(ellipse at 4% 105%, #dfeae3, transparent 47%), var(--paper);
}
.home-editorial-copy {
    align-self: center;
    min-width: 0;
    padding: clamp(24px, 4vw, 52px) 12px clamp(24px, 4vw, 52px) clamp(20px, 3.5vw, 48px);
    z-index: 1;
}
.home-editorial-copy .eyebrow { display: flex; align-items: center; gap: 14px; color: #79501a; margin: 0 0 18px; }
.home-editorial-copy .eyebrow::after { content: ""; flex: 1; max-width: 9rem; height: 1px; background: #c8a66e; }
.home-editorial h1 {
    margin: 0;
    color: #104a44;
    font: 750 clamp(1.95rem, 4.6vw, 3.75rem)/1.12 "Noto Serif SC", "Songti SC", SimSun, Georgia, serif;
    letter-spacing: .025em;
}
.home-editorial-intro { margin: 18px 0 24px; color: #385958; }
.home-editorial-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.home-editorial-actions .button { gap: 12px; border-radius: 8px; }
.home-editorial-actions .button-outline { border-color: #a78348; color: #79501a; }
.home-editorial-image { position: relative; min-width: 0; overflow: hidden; border-top-left-radius: 30% 100%; border-left: 5px solid #c7a364; }
.home-editorial-image img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.home-showcase, body > main:has(> .home-editorial) > .about { width: min(1120px, calc(100% - 48px)); margin-inline: auto; }
.home-showcase { padding-block: clamp(28px, 5vw, 56px); }
.showcase-heading { display: flex; align-items: center; gap: 20px; border: 0; margin-bottom: 24px; color: #104a44; }
.showcase-heading h2 { margin: 0; font-family: "Noto Serif SC", "Songti SC", SimSun, Georgia, serif; }
.showcase-heading::after { content: ""; flex: 1; height: 1px; background: #cfb78a; }
.showcase-grid { display: grid; grid-template-columns: minmax(0, 59fr) minmax(0, 41fr); gap: 9px; }
.showcase-carousel { position: relative; min-width: 0; overflow: hidden; border-radius: 12px; background: #0b2c33; }
.showcase-track { display: flex; height: 100%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.showcase-track::-webkit-scrollbar { display: none; }
.showcase-slide { position: relative; isolation: isolate; flex: 0 0 100%; min-width: 0; min-height: clamp(310px, 36vw, 390px); display: flex; align-items: center; padding: 32px clamp(20px, 5vw, 55px) 62px; scroll-snap-align: start; }
.showcase-slide img, .showcase-slide::after, .showcase-teachers img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.showcase-slide img, .showcase-teachers img { z-index: -2; }
.showcase-slide::after { content: ""; z-index: -1; background: linear-gradient(90deg, #061e27ec, #06283280 66%, #07293322); }
.showcase-guzheng::after { background: linear-gradient(90deg, #061e2740, transparent); }
.showcase-slide-copy { min-width: 0; overflow-wrap: anywhere; color: #f7e8cd; }
.showcase-slide-copy h3, .showcase-shortcut h3 { font-family: "Noto Serif SC", "Songti SC", SimSun, Georgia, serif; }
.showcase-slide-copy h3 { margin: 8px 0 0; font-size: clamp(1.65rem, 3.2vw, 2.75rem); line-height: 1.25; }
.showcase-slide-copy h3::after { content: ""; display: block; width: 46px; height: 3px; margin: 15px 0; background: #d5b575; }
.showcase-slide-copy p { margin: 0; font-size: .86rem; }
.showcase-summary { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.showcase-slide-copy a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 18px; padding: 6px 18px; border-radius: 999px; color: #193835; background: #efdbac; font-weight: 750; }
.showcase-slide-copy a:hover { background: #fff0c8; }
.showcase-carousel :focus-visible, .showcase-teachers:focus-visible { outline-offset: -4px; outline-color: #f5d18b; }
.showcase-controls { position: absolute; inset: auto 0 0; display: flex; justify-content: center; align-items: center; padding-bottom: 5px; pointer-events: none; }
.showcase-controls[hidden] { display: none; }
.showcase-controls button { min-width: clamp(29px, 5vw, 39px); min-height: 44px; border: 0; background: transparent; color: #fff; cursor: pointer; pointer-events: auto; font: 24px/1 system-ui; }
.showcase-dot::after { content: ""; display: block; width: 9px; height: 9px; margin: auto; border: 1px solid #f7e8cd; border-radius: 50%; }
.showcase-dot[aria-current=true]::after { background: #f7e8cd; }
.showcase-shortcuts { display: grid; grid-template-rows: 45fr 55fr; gap: 9px; }
.showcase-shortcut { position: relative; isolation: isolate; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; min-width: 0; padding: 18px clamp(18px, 3vw, 33px); border-radius: 12px; overflow: hidden; }
.showcase-shortcut h3 { margin: 0; padding-left: 10px; border-left: 3px solid #ba9556; font-size: clamp(1.25rem, 2.5vw, 1.95rem); line-height: 1.2; }
.showcase-shortcut p { margin: 8px 0; font-size: .86rem; max-width: 62%; }
.showcase-shortcut > span { display: grid; place-items: center; width: 24px; height: 24px; border: 1px solid currentColor; border-radius: 50%; }
.showcase-shortcut:hover h3 { text-decoration: underline; text-underline-offset: .22em; }
.showcase-results { color: #153e3b; background: radial-gradient(ellipse at 68% 120%, #b5c8bd, transparent 56%), linear-gradient(130deg, #f8f4e9, #e9e7dc); }
.showcase-teachers { color: #f7e8cd; background: #102e36; }
.showcase-teachers img { object-position: right center; }
.showcase-teachers::after { position: absolute; inset: 0; content: ""; z-index: -1; background: linear-gradient(90deg, #071d24e6, #071d2470 62%, transparent); }
.showcase-categories { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 16px; padding: 14px 6px; background: #fffcf5; border: 1px solid #e5dbc8; border-radius: 12px; }
.showcase-categories a { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; text-align: center; gap: 5px 12px; min-height: 46px; padding: 4px; color: #153e3b; font-weight: 750; }
.showcase-categories a + a { border-left: 1px solid #e5dbc8; }
.showcase-categories a:hover { background: #eaf4eb; }
.showcase-categories span { color: #856534; font-size: 1.4rem; }
@media (max-width: 760px) {
    .home-editorial { width: calc(100% - 40px); grid-template-columns: minmax(0, 1fr); min-height: 0; }
    .home-editorial-copy { padding: 30px 20px 24px; }
    .home-editorial-image { aspect-ratio: 16 / 9; border: 0; border-radius: 0; }
    .home-showcase, body > main:has(> .home-editorial) > .about { width: calc(100% - 40px); }
    .showcase-grid { grid-template-columns: minmax(0, 1fr); }
    .showcase-shortcuts { grid-template: auto / repeat(2, minmax(0, 1fr)); }
    .showcase-shortcut { min-height: 135px; }
    .showcase-shortcut p { max-width: 100%; }
}
@media (max-width: 400px) {
    .showcase-shortcuts { grid-template-columns: minmax(0, 1fr); }
    .showcase-categories a { gap: 3px 6px; }
}
