/* Fluid typography and notebook width. 2026-10-29 */
.l-wrapper .l-main {
    --font-base: clamp(11px, 1.9cqw, 20px);
    --m: clamp(0px, calc((100vw - 1000px) * 0.75), 360px);
}
.l-main.l-main-wide { --m: 0px; }
.l-main,
.l-main p,
.l-main .content,
.l-main .content p,
.l-main .entry-content,
.l-main .entry-content p {
    font-size: var(--font-base);
}
.l-main .sme-font-size,
.l-main .has-normal-font-size { font-size: var(--font-base) !important; }
.l-main .has-small-font-size { font-size: calc(var(--font-base) * 0.85) !important; }
.l-main .has-medium-font-size { font-size: calc(var(--font-base) * 1.2) !important; }
.l-main .has-large-font-size { font-size: calc(var(--font-base) * 1.6) !important; }
.l-main .has-x-large-font-size { font-size: calc(var(--font-base) * 2) !important; }
.l-main .heading-primary { font-size: clamp(16px, 2.9cqw, 30px); text-wrap: balance; }
.l-main .content h2 { font-size: clamp(15px, 3cqw, 28px); }
.l-main .content h3 { font-size: clamp(14px, 2.6cqw, 24px); }
.l-main .content h4 { font-size: clamp(13px, 2.3cqw, 22px); }
.l-main .content :where(ul, ol, li, dl, dt, dd, blockquote, td, th, figcaption) {
    font-size: var(--font-base);
}
.l-main .archive__contents .heading { font-size: clamp(14px, 2.5cqw, 24px); }
.l-main .dateList__item { font-size: clamp(9px, 1.5cqw, 13px); }
.l-main .the__category a { font-size: clamp(10px, 1.8cqw, 16px); }
.l-main .content :is(.sitecard, .blogcard) .heading a { font-size: clamp(11px, 2cqw, 20px); }
@media (max-width: 768px) {
    .l-wrapper { display: block; }
}
@media (max-width: 600px) {
    :root { --ring-width: 24px; }
    .l-wrapper { --wrapper-margin: 6px; padding: 0 4px 24px; }
    .l-main, .l-main.l-main-wide {
        width: calc(100% - var(--ring-width));
        margin-left: var(--ring-width); margin-right: 0;
        padding: 20px 12px;
    }
    .l-main .heading-primary { padding: 10px 12px; }
}

/* Wider outer sheet: keep notebook readable and reveal the sidebar on wide screens. */
:root { --max-wrapper-width: 1500px; }
.l-wrapper > .l-main:not(.l-main-wide) { max-width: 1030px; }
@media (min-width: 1200px) {
    .l-wrapper { --wrapper-margin: 20px; }
}

.l-sidebar .wp-block-categories a { white-space: normal; }

/* Sidebar rhythm and alignment: use the exposed sheet instead of leaving a blank strip. */
@media (min-width: 769px) {
    .l-sidebar { padding: 24px 20px 24px 88px; }
}
.l-sidebar p { font-size: 14px; line-height: 1.75; margin-bottom: 14px; }
.l-sidebar h1,
.l-sidebar h1 span { font-size: 28px !important; line-height: 1.35; }
.l-sidebar h1 { margin: 0 0 12px; }
.l-sidebar h2,
.l-sidebar h2 span {
    font-size: 18px !important;
    line-height: 1.4;
}
.l-sidebar h2 { padding: 5px 12px; margin: 16px 0 12px; }
.l-sidebar .profile-card-slider__slides {
    width: min(100%, 240px);
    height: 240px;
    margin: 8px auto 0;
}
.l-sidebar .profile-card-slider__indicators { gap: 10px; margin: 8px 0 16px; }
.l-sidebar .profile-card-slider__dot { width: 10px; height: 10px; }
.l-sidebar .profile-card-slider__name {
    font-size: 18px !important; line-height: 1.6; margin-bottom: 10px;
}
.l-sidebar .profile-card-slider__text { font-size: 14px; line-height: 1.75; margin-bottom: 0; }
/* Both names and descriptions reserve their full height throughout the slide transition. */
.l-sidebar .profile-card-slider__body { display: grid; min-height: 0; }
.l-sidebar .profile-card-slider__content {
    position: static; inset: auto; grid-area: 1 / 1; visibility: hidden;
}
.l-sidebar .profile-card-slider__content.active { visibility: visible; }
.l-sidebar .wp-block-separator { margin: 18px 0; }
.l-sidebar .wp-block-categories a,
.l-sidebar .wp-block-categories .children a {
    font-size: 15px; line-height: 1.6; padding: 6px 12px;
    white-space: normal; transform: none;
}
.l-sidebar .wp-block-categories > li { margin-bottom: 14px; }
.l-sidebar .wp-block-categories .children { padding-left: 16px; margin-top: 8px; }
.l-sidebar .wp-block-categories .children li { margin-bottom: 8px; }
