.hsp-privacy-policy-page .htan-main > .wp-block-post-content {
    width: min(920px, calc(100vw - 40px));
    max-width: 920px;
    margin-inline: auto;
}

.hsp-privacy-policy {
    padding: clamp(28px, 4vw, 56px) 0 clamp(64px, 7vw, 96px);
    color: #293b4d;
    font-size: clamp(16px, 1.15vw, 18px);
    line-height: 1.72;
}

.hsp-privacy-policy__header {
    padding-bottom: clamp(30px, 4vw, 44px);
    border-bottom: 1px solid #d7e0e8;
}

.hsp-privacy-policy h1 {
    margin-bottom: 24px;
    color: #082b50;
}

.hsp-privacy-policy section {
    padding-top: clamp(34px, 4vw, 48px);
}

.hsp-privacy-policy h2 {
    margin-bottom: 18px;
    color: #0b3159;
    font-size: clamp(24px, 2.3vw, 32px);
    line-height: 1.2;
}

.hsp-privacy-policy p,
.hsp-privacy-policy ul {
    margin-bottom: 18px;
}

.hsp-privacy-policy ul {
    padding-left: 1.35em;
}

.hsp-privacy-policy li + li {
    margin-top: 10px;
}

.hsp-privacy-policy a {
    color: #0b5f9e;
    text-underline-offset: 3px;
}

.hsp-privacy-policy a:focus-visible {
    outline: 3px solid #f47a1f;
    outline-offset: 3px;
}

.hsp-privacy-policy__details {
    margin: 0;
}

.hsp-privacy-policy__details > div {
    display: grid;
    grid-template-columns: minmax(150px, .34fr) minmax(0, 1fr);
    gap: 18px;
    padding: 12px 0;
    border-bottom: 1px solid #e5ebf0;
}

.hsp-privacy-policy__details dt {
    color: #526579;
    font-weight: 700;
}

.hsp-privacy-policy__details dd {
    min-width: 0;
    margin: 0;
    overflow-wrap: anywhere;
}

.hsp-privacy-policy__updated {
    margin-top: clamp(44px, 5vw, 64px);
    padding-top: 22px;
    border-top: 1px solid #d7e0e8;
    color: #526579;
    font-size: 15px;
}

@media (max-width: 599px) {
    .hsp-privacy-policy-page .htan-main > .wp-block-post-content {
        width: min(100% - 32px, 920px);
    }

    .hsp-privacy-policy__details > div {
        grid-template-columns: 1fr;
        gap: 2px;
    }
}
