/* TatePad adaptation. The underlying layout and components come from Homilia. */
:root {
    --primary-color: #22201d;
    --secondary-color: #fbfaf5;
    --tertiary-color: #b64032;
    --review-color: #f0d894;
    --font-size: 1.6rem;
}

body {
    font-family: "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "Noto Serif JP", serif;
    letter-spacing: .015em;
    min-width: 320px;
    overflow-x: hidden;
}

img {
    height: auto;
}

.skip-link {
    position: fixed;
    top: 1rem;
    left: 1rem;
    z-index: 10;
    padding: 1rem 1.4rem;
    color: var(--secondary-color);
    background: var(--primary-color);
    transform: translateY(-150%);
}

.skip-link:focus {
    transform: translateY(0);
}

a:focus-visible {
    outline: 3px solid var(--tertiary-color);
    outline-offset: 4px;
}

.link {
    text-decoration: underline;
    text-underline-offset: .22em;
}

.container {
    margin-top: 3.5rem;
}

.logo h1 {
    font-family: Georgia, "Hiragino Mincho ProN", "Yu Mincho", serif;
    font-size: 3.1rem;
    letter-spacing: .04em;
}

.logo small {
    display: block;
    margin-top: .4rem;
    font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", sans-serif;
    font-size: 1.1rem;
    font-weight: 400;
    letter-spacing: .12em;
}

.menu,
.amazon,
.section-title,
.step-label,
.caption,
.footer-container,
.guide-link {
    font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", sans-serif;
}

nav {
    justify-content: space-between;
    border-bottom: 1px solid #d8d1c7;
    padding-bottom: 2rem;
}

.menu {
    gap: 1rem 3rem;
    font-size: 1.4rem;
}

.overview {
    margin-top: 6rem;
    margin-inline: 3rem;
    gap: 4rem;
}

.overview figure {
    width: 53rem;
    animation: none;
}

.hero-devices {
    position: relative;
    min-height: 39rem;
    flex: 0 1 53rem;
    padding: 3rem 0 4rem 5rem;
}

.mac-device {
    display: block;
    position: relative;
    z-index: 1;
    width: 46rem;
    max-width: 100%;
    margin-left: auto;
    padding: .8rem .8rem 1rem;
    border: 1px solid #383532;
    border-radius: 1.3rem 1.3rem .6rem .6rem;
    background: #252321;
    box-shadow: 0 2.5rem 4.5rem rgb(34 32 29 / 20%);
    color: var(--primary-color);
    transition: transform .2s ease, box-shadow .2s ease;
}

.mac-device:hover {
    box-shadow: 0 3rem 5rem rgb(34 32 29 / 25%);
    transform: translateY(-.4rem);
}

.mac-screen {
    overflow: hidden;
    border-radius: .6rem;
    background: #fff;
}

.mac-screen img {
    width: 100%;
}

.mac-base {
    position: absolute;
    bottom: -1.25rem;
    left: -5%;
    width: 110%;
    height: 1.35rem;
    border-radius: 0 0 50% 50%;
    background: linear-gradient(180deg, #d5d1ca 0%, #a9a49c 62%, #7e7973 100%);
    box-shadow: 0 .8rem 1.2rem rgb(34 32 29 / 18%);
}

.mac-base::after {
    content: "";
    position: absolute;
    top: 0;
    left: 44%;
    width: 12%;
    height: .35rem;
    border-radius: 0 0 .5rem .5rem;
    background: #8f8a83;
}

.iphone-device {
    display: block;
    position: absolute;
    bottom: 1rem;
    left: 0;
    z-index: 2;
    width: 14.5rem;
    padding: .7rem;
    border: 1px solid #2c2926;
    border-radius: 2.8rem;
    background: #171514;
    box-shadow: 0 2rem 3.5rem rgb(34 32 29 / 24%);
    color: var(--primary-color);
    transform: rotate(-3deg);
    transition: transform .2s ease, box-shadow .2s ease;
}

.iphone-device:hover {
    box-shadow: 0 2.5rem 4rem rgb(34 32 29 / 28%);
    transform: rotate(-3deg) translateY(-.4rem);
}

.iphone-device img {
    width: 100%;
    border-radius: 2.15rem;
}

.iphone-speaker {
    position: absolute;
    top: .95rem;
    left: 50%;
    z-index: 1;
    width: 4.8rem;
    height: 1.1rem;
    border-radius: 0 0 .8rem .8rem;
    background: #171514;
    transform: translateX(-50%);
}

.mac-device:focus-visible,
.iphone-device:focus-visible {
    z-index: 4;
}

@media (prefers-reduced-motion: reduce) {
    .mac-device,
    .iphone-device {
        transition: none;
    }
}

.brief h2 {
    font-size: clamp(3.1rem, 3.5vw, 4.2rem);
    line-height: 1.35;
    margin-bottom: 2.4rem;
    font-weight: 500;
}

.hero-proof,
.site-note,
.guide-note,
.guide-actions {
    font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", sans-serif;
}

.brief p.large {
    line-height: 2;
}

.amazon {
    padding: 1.2rem 2.2rem;
    border-radius: .2rem;
    font-weight: 600;
    letter-spacing: .03em;
}

.store-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.amazon::before {
    display: none;
}

.amazon:hover {
    background: var(--tertiary-color);
}

.section-title {
    margin-top: 9rem;
}

.section-title h2 {
    border-radius: .2rem;
    font-weight: 600;
    letter-spacing: .08em;
}

#voices .section-title hr {
    flex: 1;
    width: auto;
    min-width: 0;
}

#voices .section-title h2 {
    flex: 0 0 auto;
    margin-inline: clamp(.8rem, 3vw, 2rem);
    padding-inline: clamp(1rem, 3vw, 2rem);
    font-size: clamp(1.5rem, 4.5vw, 2rem);
    white-space: nowrap;
}

.book-details,
.contact-details {
    max-width: 680px;
}

.about-layout {
    display: grid;
    grid-template-columns: minmax(18rem, 25rem) minmax(0, 1fr);
    align-items: start;
    gap: clamp(3rem, 6vw, 7rem);
    max-width: 82rem;
    margin: 3rem auto 0;
}

.about-screenshot img {
    width: 100%;
    border: 1px solid #d8d1c7;
    border-radius: .3rem;
    background: #eee9e0;
}

.about-copy .book-details {
    align-items: flex-start;
    max-width: none;
    margin: 0;
}

.about-copy .book-details .subtitle,
.about-copy .author-details > h3 {
    margin-top: 0;
}

.about-copy .book-details p,
.about-copy .bio p {
    text-align: left;
}

.about-copy .author-details {
    margin: 4rem 0 0;
}

.about-copy .author {
    display: block;
    max-width: none;
    margin: 1.4rem 0 0;
}

.about-copy .bio p + p {
    margin-top: 1.2rem;
}

.book-details p,
.bio p,
.contact-details p {
    line-height: 2.05;
}

.book-details .subtitle,
.author-details > h3,
.bio h4 {
    font-size: 2.3rem;
    margin-top: 1.8rem;
}

.author {
    max-width: 680px;
}

.author-profile {
    width: 42%;
    margin: 0 3rem 1.5rem 0;
    shape-outside: none;
}

.author-profile img {
    border-radius: .3rem;
    border: 1px solid #d8d1c7;
    background: #eee9e0;
}

.add-review {
    max-width: 680px;
    margin: 0 auto 3rem;
    line-height: 1.9;
}

.reviews-block {
    --quantity: 4;
    --width: auto;
    --height: auto;
    --time: 0s;
    max-width: 930px;
    overflow: visible;
    mask-image: none;
}

.review-row {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.4rem;
    width: auto;
    height: auto;
    padding: 0;
    list-style: none;
}

.review {
    cursor: default;
    width: auto;
    position: relative;
    top: auto;
    animation: none;
    display: flex;
    flex-direction: column;
}

.review-row:hover .review,
.review-row .review:hover {
    filter: none;
}

.review-text {
    min-height: 17rem;
    border-radius: .3rem .3rem 0 0;
    line-height: 1.85;
    font-style: normal;
}

.quote {
    position: static;
    font-family: Georgia, serif;
    font-size: 4rem;
    line-height: 1;
    margin-bottom: -1.8rem;
    z-index: 1;
}

.review figcaption {
    border-radius: 0 0 .3rem .3rem;
    min-height: 8rem;
    font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", sans-serif;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.reviewer {
    display: none;
}

.book-gallery {
    max-width: 900px;
    gap: 1.5rem;
}

.book-gallery img {
    border: 1px solid #d8d1c7;
    background: white;
}

.book-gallery figure:nth-child(1) {
    grid-column: span 3;
}

.book-gallery figure {
    cursor: default;
}

.book-gallery img {
    object-fit: contain;
}

.book-gallery figcaption {
    margin-top: .8rem;
    font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", sans-serif;
    color: #5e5953;
}

.gallery-intro {
    max-width: 56rem;
    margin: 0 auto 3rem;
    line-height: 1.9;
}

.book-spread {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .35rem;
    aspect-ratio: 1000 / 520;
    padding: 4.2rem 9rem;
    border: 1px solid #d8d1c7;
    background: #ece7de;
}

.book-page {
    position: relative;
    overflow: hidden;
    padding: 2.5rem 2.8rem;
    border: 1px solid #ded8cd;
    background: #fffdf8;
    box-shadow: 0 .5rem 1.4rem rgb(34 32 29 / 8%);
}

.book-page:first-child {
    box-shadow: inset -1rem 0 1.5rem rgb(34 32 29 / 5%), 0 .5rem 1.4rem rgb(34 32 29 / 8%);
}

.book-page:last-child {
    box-shadow: inset 1rem 0 1.5rem rgb(34 32 29 / 5%), 0 .5rem 1.4rem rgb(34 32 29 / 8%);
}

.book-page p {
    width: 100%;
    height: 100%;
    margin-left: auto;
    overflow: hidden;
    font-size: 1.35rem;
    line-height: 1.95;
    text-align: left;
    text-orientation: mixed;
    writing-mode: vertical-rl;
}

.book-page small {
    position: absolute;
    bottom: .8rem;
    left: 50%;
    font-size: 1rem;
    transform: translateX(-50%);
}

.site-note {
    max-width: 62rem;
    margin: 2rem auto 0;
    color: #665f57;
    font-size: 1.2rem;
    line-height: 1.8;
}

.guide-list {
    width: 100%;
    border-top: 1px solid #cfc7bb;
    margin: 2rem 0 3rem;
}

.guide-link {
    display: grid;
    grid-template-columns: 4rem 1fr auto;
    align-items: center;
    gap: 1rem;
    color: var(--primary-color);
    padding: 1.5rem .5rem;
    border-bottom: 1px solid #cfc7bb;
}

.guide-link:hover {
    background: #f2ede4;
}

.guide-link .number {
    color: var(--tertiary-color);
    font-weight: 700;
}

.guide-link .arrow {
    color: var(--tertiary-color);
}

.footer-logo {
    max-width: 22%;
}

.footer-support {
    display: flex;
    flex-direction: column;
    gap: .8rem;
    font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", sans-serif;
    font-size: 1.2rem;
}

.copyright {
    max-width: 24rem;
}

.copyright .tiny {
    font-size: 1.1rem;
    line-height: 1.7;
}

#scroll-to-top {
    border-radius: .2rem;
}

.hero-proof {
    margin-top: 2rem;
    color: #665f57;
    font-size: 1.2rem;
    line-height: 1.8;
}

.guide-header {
    margin-bottom: 5rem;
}

.sample-container .guide-header > p {
    margin-bottom: 2rem;
}

.sample-container .guide-header > p:last-child {
    max-width: 56rem;
    margin: 2rem auto 0;
    line-height: 2;
}

.sample-container > p::before,
.sample-container > p::after {
    display: none;
}

.guide-step {
    padding: 0 0 4rem;
    scroll-margin-top: 2rem;
}

.guide-step + .guide-step {
    padding-top: 4rem;
    border-top: 1px solid #d8d1c7;
}

.guide-step .step-label {
    margin-bottom: .8rem;
    color: var(--tertiary-color);
    font-size: 1.1rem;
    font-weight: 700;
    letter-spacing: .12em;
}

.guide-step h4 {
    margin-bottom: 1.4rem;
    font-size: 2.2rem;
}

.guide-step p:last-child {
    margin-bottom: 0;
    line-height: 2.1;
    text-align: left;
}

.guide-note {
    margin: 1rem 0 5rem;
    padding: 2rem 2.4rem;
    border-left: .4rem solid var(--tertiary-color);
    background: #f2ede4;
    font-size: 1.3rem;
    line-height: 1.9;
}

.guide-note strong {
    display: block;
    margin-bottom: .5rem;
}

.guide-note p {
    margin: 0;
}

.guide-step .step-label::first-letter {
    float: none;
    padding: 0;
    font-size: inherit;
    line-height: inherit;
}

.guide-actions {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2rem;
}

.voices-intro {
    max-width: 72rem;
    margin: 0 auto;
}

.voices-intro p,
.voices-lead {
    line-height: 2;
}

.voices-preview-grid,
.voices-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.5rem;
    max-width: 96rem;
    margin: 3rem auto;
}

.voice-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 29rem;
    padding: 2.2rem;
    border: 1px solid #d8d1c7;
    border-top: .35rem solid #d8d1c7;
    border-radius: .3rem;
    background: #fffdf8;
    box-shadow: 0 .7rem 1.8rem rgb(34 32 29 / 5%);
    color: var(--primary-color);
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.voice-card-featured {
    border-top-color: var(--tertiary-color);
}

.voice-card:hover {
    border-color: var(--tertiary-color);
    box-shadow: 0 1.2rem 2.5rem rgb(34 32 29 / 10%);
    transform: translateY(-.3rem);
}

.voice-card h3 {
    margin: .7rem 0 1.2rem;
    font-size: 1.85rem;
    line-height: 1.55;
}

.voice-card > p:not(.source-type) {
    color: #49443e;
    font-size: 1.4rem;
    line-height: 1.85;
}

.source-type,
.source-meta,
.source-link,
.source-badge,
.voice-jump-links,
.research-note,
.mac-review-note,
.voice-group-header p,
.voices-more {
    font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", sans-serif;
}

.source-type {
    color: var(--tertiary-color);
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .12em;
    line-height: 1.5;
}

.source-meta {
    display: block;
    margin-top: 1.5rem;
    color: #777067;
    font-size: 1.2rem;
    line-height: 1.6;
}

.source-link {
    display: block;
    margin-top: auto;
    padding-top: 1.4rem;
    color: var(--tertiary-color);
    font-size: 1.2rem;
    font-weight: 700;
    letter-spacing: .04em;
}

.source-badge {
    display: inline-block;
    margin-left: .5rem;
    padding: .15rem .55rem;
    border: 1px solid #cfc7bb;
    border-radius: 10rem;
    color: #665f57;
    font-size: 1.05rem;
    letter-spacing: .04em;
    vertical-align: .1rem;
}

.voices-more {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
}

.voices-more p {
    color: #777067;
    font-size: 1.15rem;
}

.voices-page-header .section-title {
    margin-top: 7rem;
}

.voices-page-header > h3 {
    margin: 1rem auto 1.8rem;
    font-size: clamp(2.8rem, 4vw, 4.2rem);
    font-weight: 500;
    line-height: 1.45;
}

.voices-lead {
    max-width: 72rem;
    margin: 0 auto;
}

.research-note,
.mac-review-note {
    max-width: 86rem;
    margin: 3rem auto;
    padding: 2.2rem 2.5rem;
    border-left: .4rem solid var(--tertiary-color);
    background: #f2ede4;
    color: #49443e;
    font-size: 1.3rem;
    line-height: 1.9;
}

.research-note strong,
.mac-review-note strong {
    display: block;
    margin-bottom: .6rem;
    color: var(--primary-color);
    font-size: 1.4rem;
}

.research-note p + p {
    margin-top: .7rem;
}

.voice-jump-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .8rem;
    max-width: 86rem;
    margin: 3rem auto 0;
}

.voice-jump-links a {
    padding: .8rem 1.2rem;
    border: 1px solid #cfc7bb;
    border-radius: 10rem;
    color: var(--primary-color);
    font-size: 1.15rem;
}

.voice-jump-links a:hover {
    border-color: var(--tertiary-color);
    color: var(--tertiary-color);
}

.voice-group {
    max-width: 104rem;
    margin: 9rem auto 0;
}

.voice-group-header {
    display: grid;
    grid-template-columns: 4.5rem 1fr;
    gap: 1.5rem;
    align-items: start;
    max-width: 96rem;
    margin: 0 auto 2.5rem;
    padding-bottom: 1.8rem;
    border-bottom: 1px solid #cfc7bb;
}

.voice-group-header > .source-type {
    padding-top: .55rem;
    font-family: Georgia, "Hiragino Mincho ProN", "Yu Mincho", serif;
    font-size: 2.6rem;
    font-weight: 400;
    letter-spacing: 0;
}

.voice-group-header h2 {
    margin-bottom: .5rem;
    font-size: 2.7rem;
    line-height: 1.5;
}

.voice-group-header div > p {
    color: #665f57;
    font-size: 1.3rem;
    line-height: 1.8;
}

.voices-page .voices-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.voices-page .voice-card {
    min-height: 27rem;
}

.voices-grid-single {
    grid-template-columns: minmax(0, 72rem) !important;
    justify-content: center;
}

.mac-review-note {
    margin-top: 2rem;
}

.research-note-small {
    margin-top: 2rem;
}

.voices-contact {
    margin-bottom: 7rem;
}

.voices-contact .contact-details {
    gap: 2rem;
}

.voices-contact .contact-details p {
    margin: 0;
}

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

@media only screen and (max-width: 1024px) {
    nav {
        border-bottom: 0;
    }

    .overview {
        gap: 3rem;
        margin-inline: 2rem;
    }

    .overview .hero-devices {
        width: min(60rem, 100%);
        max-width: 100%;
        min-width: 0;
        min-height: 42rem;
        flex-basis: auto;
    }

    .review-row {
        grid-template-columns: repeat(2, 1fr);
    }

    .voices-preview-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .footer-container {
        gap: 2rem;
        padding-inline: 3rem;
    }
}

@media only screen and (max-width: 640px) {
    .container {
        margin-top: 2rem;
    }

    nav {
        margin-inline: 2rem;
    }

    .menu {
        gap: 1rem 1.8rem;
        margin-block: 2rem;
        font-size: 1.3rem;
    }

    .overview {
        margin-inline: 0;
    }

    .about-layout {
        grid-template-columns: 1fr;
        gap: 2.5rem;
        max-width: 48rem;
    }

    .about-screenshot {
        width: min(62%, 22rem);
        margin-inline: auto;
    }

    .about-copy .book-details,
    .about-copy .author-details > h3 {
        align-items: center;
        text-align: center;
    }

    .overview figure {
        width: 86%;
        min-width: 0;
    }

    .overview .hero-devices {
        width: 100%;
        min-height: 31rem;
        padding: 2rem 0 3rem 3rem;
    }

    .mac-device {
        width: 88%;
    }

    .iphone-device {
        bottom: 1.2rem;
        width: 27%;
        min-width: 10.5rem;
        padding: .5rem;
        border-radius: 2.2rem;
    }

    .iphone-device img {
        border-radius: 1.7rem;
    }

    .iphone-speaker {
        top: .7rem;
        width: 3.8rem;
        height: .85rem;
    }

    .hero-proof {
        text-align: center;
    }

    .brief h2 {
        text-align: center;
    }

    .brief p.large {
        padding-inline: 1rem;
    }

    .review-row {
        grid-template-columns: 1fr;
    }

    .voices-preview-grid,
    .voices-page .voices-grid {
        grid-template-columns: 1fr;
    }

    .voice-card,
    .voices-page .voice-card {
        min-height: 0;
    }

    .voice-group {
        margin-top: 7rem;
        padding-inline: 1rem;
    }

    .voice-group-header {
        grid-template-columns: 3.5rem 1fr;
        gap: 1rem;
    }

    .voice-group-header > .source-type {
        font-size: 2rem;
    }

    .voice-group-header h2 {
        font-size: 2.2rem;
    }

    .research-note,
    .mac-review-note {
        padding: 1.8rem;
    }

    .review-text {
        min-height: 0;
    }

    .book-gallery {
        max-width: 100%;
        grid-template-columns: 1fr 1fr;
    }

    .book-gallery figure:nth-child(1) {
        grid-column: span 2;
    }

    .book-spread {
        padding: 2.2rem 3.2rem;
    }

    .book-page {
        padding: 1.7rem 1.5rem;
    }

    .book-page p {
        font-size: 1.05rem;
        line-height: 1.75;
    }

    .guide-link {
        grid-template-columns: 3rem 1fr auto;
    }

    .footer-logo {
        max-width: 80%;
        padding-inline: 2rem;
    }

    .footer-support,
    .copyright {
        max-width: 100%;
        text-align: center;
    }
}

@media only screen and (max-width: 420px) {
    .author-profile {
        width: 46%;
        margin-right: 1.8rem;
    }

    .overview .hero-devices {
        min-height: 27rem;
    }

    .iphone-device {
        min-width: 9.2rem;
    }

    .book-spread {
        padding: 1.4rem;
    }

    .book-page {
        padding: 1.2rem 1rem;
    }

    .book-page p {
        font-size: .9rem;
        line-height: 1.6;
    }

    .book-page small {
        display: none;
    }
}

@media only screen and (max-width: 640px) {
    .overview figure {
        max-width: 90%;
    }

    .scroll-container {
        display: none;
    }
}

.voice-link-list {
    max-width: 96rem;
    margin: 0 auto;
    border-top: 1px solid #cfc7bb;
    list-style: none;
}

.voice-link-list li {
    border-bottom: 1px solid #cfc7bb;
}

.voice-link-list a {
    display: block;
    padding: 1.65rem 1rem;
    color: var(--primary-color);
    font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", sans-serif;
    font-size: 1.4rem;
    line-height: 1.7;
    text-decoration: underline;
    text-decoration-color: #c7bdb1;
    text-decoration-thickness: .1rem;
    text-underline-offset: .3em;
}

.voice-link-list a:hover {
    background: #f2ede4;
    color: var(--tertiary-color);
    text-decoration-color: var(--tertiary-color);
}

.voice-link-list-preview {
    max-width: 82rem;
    margin: 3rem auto;
}

.voice-link-list-more {
    margin-top: -3rem;
    border-top: 0;
}

.voices-toggle {
    padding: 1.2rem 2.2rem;
    border: 0;
    border-radius: .2rem;
    color: var(--secondary-color);
    background: var(--primary-color);
    font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", sans-serif;
    font-weight: 600;
    letter-spacing: .03em;
    cursor: pointer;
}

.voices-toggle:hover {
    background: var(--tertiary-color);
}

.voices-toggle:focus-visible {
    outline: 3px solid var(--tertiary-color);
    outline-offset: 4px;
}

.voices-links-page .voices-page-header .section-title {
    margin-bottom: 3rem;
}

.voices-links-page .voice-group {
    margin-top: 7rem;
}

.voices-links-page .voice-group-header {
    margin-bottom: 0;
}

.voices-links-page .voices-more {
    margin-top: 3rem;
}

.voice-timeline {
    margin-top: 4rem !important;
}

.voice-link-list-chronological a {
    display: grid;
    grid-template-columns: 9rem minmax(0, 1fr);
    gap: 1.5rem;
    align-items: baseline;
}

.voice-link-list-chronological time,
.voice-link-list-chronological .voice-date {
    color: #777067;
    font-size: 1.1rem;
    font-variant-numeric: tabular-nums;
    letter-spacing: .04em;
    white-space: nowrap;
}

@media only screen and (max-width: 640px) {
    .voice-link-list a {
        padding: 1.45rem .5rem;
        font-size: 1.3rem;
    }

    .voice-link-list-chronological a {
        grid-template-columns: 7.5rem minmax(0, 1fr);
        gap: 1rem;
    }
}
