.photo-rules-page {
    grid-template-columns: min-content minmax(0, 1fr);
    --photo-rules-example-width: 365px;
    --route-rules-columns: 140px 36px minmax(0, 1fr) var(--photo-rules-example-width);
}

.photo-rules-page .route-rules-sheet.p20 {
    grid-template-columns: var(--route-rules-columns);
}

.photo-rules-toc-line {
    display: block;
    white-space: nowrap;
    overflow-wrap: normal;
}

.photo-rules-intro {
    grid-column: 2 / 5;
    padding-bottom: 10px;
    color: #222;
    font: 13px/1.45 var(--default-font);
}

.photo-rules-intro p {
    margin: 0;
}

.photo-rules-page .route-rules-rule p,
.photo-rules-page .route-rules-rule li {
    white-space: pre-line;
}

.photo-rules-page .route-rules-rule > p {
    margin: 0 0 8px;
}

.photo-rules-page .route-rules-rule > p:last-child {
    margin-bottom: 0;
}

.photo-rules-page .route-rules-rule ul {
    margin: 8px 0;
    padding-left: 22px;
}

.photo-rules-page .route-rules-rule li {
    margin-bottom: 8px;
}

.photo-rules-page .route-rules-rule li:last-child {
    margin-bottom: 0;
}

.photo-rules-page .route-rules-example {
    display: block;
    margin: 0 0 5px;
    white-space: normal;
    overflow-wrap: anywhere;
}

@media (min-width: 931px) {
    .photo-rules-page .photo-rules-paired-rule {
        grid-column: 3 / 5;
        display: grid;
        grid-template-columns: minmax(0, 1fr) var(--photo-rules-example-width);
        column-gap: 14px;
        padding-right: 0;
    }

    .photo-rules-paired-rule > p {
        grid-column: 1;
        padding-right: 36px;
    }

    .photo-rules-paired-rule > ul {
        grid-column: 1 / -1;
        min-width: 0;
    }

    .photo-rules-point-pair {
        display: grid;
        grid-template-columns: minmax(0, 1fr) var(--photo-rules-example-width);
        column-gap: 14px;
        align-items: start;
    }

    .photo-rules-point-text {
        padding-right: 36px;
    }

    .photo-rules-point-pair .route-rules-examples {
        grid-column: 2;
        padding: 0 0 0 12px;
    }
}

@media (max-width: 930px) {
    .photo-rules-point-pair .route-rules-examples:not(:empty) {
        margin: 7px 0 8px;
        padding: 7px 12px;
    }
}

@media (max-width: 560px) {
    .photo-rules-toc-line {
        white-space: normal;
        overflow-wrap: anywhere;
    }
}
