@use '../consts' as consts; .l-home { display: flex; flex-direction: column; align-items: center; padding: 1.5em; @media (min-width: consts.$bp-lg) { flex-direction: row; justify-content: center; align-items: flex-start; } &__aside { flex-shrink: 0; display: flex; flex-direction: column; gap: 1em; max-width: min(40em, 100%); margin-top: 3em; @media (min-width: consts.$bp-lg) { width: 24em; margin-top: 0; margin-left: 3em; } } &__article { max-width: 40em; } } .p-card { padding: 1em; border-radius: 0.25em; background-color: white; box-shadow: var(--shadow-l); &__heading { line-height: 1em; margin-bottom: 0.5em; font-family: var(--serif); font-weight: 500; } &__latest { padding-left: 1em; a { text-decoration: none; color: var(--c-primary); } } } .home-card-image { &__link { display: block; } &__image { width: 100%; height: auto; } } .home-card-contact { a { color: var(--c-primary); font-family: var(--serif); font-weight: 500; font-style: italic; text-decoration: unset; &:hover { text-decoration: underline; } } &__grid { display: grid; grid-template-columns: auto 1fr; row-gap: 0.5em; column-gap: 0.5em; } &__image { max-width: 2em; height: auto; margin: 0 0.5em 0 0; } &__text { display: inline-flex; align-items: center; } } .intro-jp { width: 100%; height: min-content; min-height: 18em; writing-mode: vertical-rl; h2 { min-height: max-content; font-size: 2.5rem; font-family: var(--serif); } p { text-indent: 1em; line-height: 1.4; } }