.SiteFooterSection {
    color: var(--footerColor);
    z-index: 2
}

.HubPage .SiteFooterSection {
    --columnPaddingNormal: 0px
}

.SiteFooterSection__layout {
    display: grid;
    grid: auto/repeat(2,1fr);
    row-gap: 20px
}

@media (min-width: 600px) {
    .SiteFooterSection__layout {
        grid-template-columns:repeat(4,1fr)
    }
}

.HubPage .SiteFooterSection__layout {
    -moz-column-gap: var(--gridColumnGap);
    column-gap: var(--gridColumnGap)
}

.SiteFooterSection__logo {
    width: 46px;
    height: 26px;
    margin: 0 var(--columnPaddingNormal) 6px;
    padding-left: 2px
}

@media (pointer: fine) {
    .SiteFooterSection__logo {
        transition:var(--hoverTransition);
        transition-property: color,opacity
    }

    .SiteFooterSection__logo:hover {
        color: var(--navHoverColor);
        opacity: var(--navHoverOpacity)
    }
}

.SiteFooterSection__copyright {
    color: #364657
}

.SiteFooterSection__column {
    display: grid;
    row-gap: 20px
}

@media (min-width: 600px) {
    .SiteFooterSection__column {
        grid:min-content/auto;
        grid-auto-rows: min-content
    }
}

.SiteFooterSection__localeControls {
    padding: 0 var(--columnPaddingNormal)
}

@media (max-width: 599px) {
    .SiteFooterSection__column--locale {
        grid-template-rows:auto;
        grid-area: auto/span 2;
        row-gap: 8px
    }
}

@media (min-width: 600px) {
    .SiteFooterSection__column--locale {
        grid-template-rows:auto min-content
    }
}

@media (max-width: 599px) {
    .SiteFooterSection__column--isMobileFooterLayout {
        grid:inherit;
        grid-area: auto/span 2
    }

    .HubPage .SiteFooterSection__column--isMobileFooterLayout {
        -moz-column-gap: var(--gridColumnGap);
        column-gap: var(--gridColumnGap)
    }
}

.SiteFooterSection .List {
    --linkWeight: var(--fontWeightNormal)
}

.SiteFooterSection {
    --sectionBackgroundOverflow: hidden
}

.List {
    --listSpacing: 4px;
    --linkWeight: var(--fontWeightSemibold);
    --columnCount: 1;
    --paddingRight: var(--columnPaddingNormal);
    --paddingLeft: var(--columnPaddingNormal);
    padding: 0 var(--paddingRight) 0 var(--paddingLeft);
    font: var(--fontWeightNormal) 15px/1.6 var(--fontFamily);
    letter-spacing: .2px
}

.HubPage .List,.List--inline {
    --paddingRight: 0;
    --paddingLeft: 0
}

.Copy__footer>.List {
    margin-left: calc(var(--footerPaddingLeft)*-1);
    margin-right: calc(var(--paddingRight)*-1)
}

.Copy__body .List {
    margin-top: var(--paragraphGap)
}

.List__title.CopyTitle {
    --titleFontSize: 15px;
    --titleLineHeight: 1.6;
    --titleWeight: var(--fontWeightSemibold);
    --linkColor: currentColor;
    --linkWeight: var(--fontWeightSemibold);
    margin-bottom: 8px;
    color: var(--titleColor)
}

html[lang^=ja] .List__title.CopyTitle {
    font-weight: 600;
    font-variation-settings: "wght" 425
}

.List__list {
    margin: 0;
    padding: 0;
    list-style: none
}

.List--hasTitle .List__list {
    --linkColor: currentColor;
    --linkWeight: var(--fontWeightNormal)
}

.List[data-column-count] .List__list {
    display: grid;
    grid: auto/repeat(var(--columnCount),1fr);
    gap: var(--listSpacing) 32px;
    margin: var(--listSpacing) 0
}

.HubPage .List[data-column-count] .List__list {
    gap: var(--listSpacing) var(--gridColumnGap)
}

@media (min-width: 600px) {
    .List[data-column-count="2"] .List__list,.List[data-column-count="3"] .List__list {
        --columnCount:2
    }
}

@media (min-width: 900px) {
    .List[data-column-count="3"] .List__list {
        --columnCount:3
    }
}

.List__item {
    position: relative;
    margin: var(--listSpacing) 0
}

.List--inline .List__item:first-of-type {
    margin-top: 0
}

.List--inline .List__item:last-of-type {
    margin-bottom: 0
}

.List[data-column-count] .List__item {
    margin-top: 0;
    margin-bottom: 0
}

.ListItem--hasIcon {
    padding-left: 24px
}

.List__itemIcon {
    position: absolute;
    top: 5px;
    left: 0
}

.ListItem--hasFlag {
    padding-left: 32px
}

.List__itemFlag {
    position: absolute;
    top: 5px;
    left: 0
}

.List__ctaGroup {
    margin-top: 12px
}

.ListItem:has(.ListItem__badgeContainer) .ListItem__label {
    margin-right: 4px
}

.CopyTitle {
    --titlePaddingLeft: var(--columnPaddingNormal);
    --titlePaddingRight: var(--columnPaddingMedium);
    position: relative;
    padding: 0 var(--titlePaddingRight) 0 var(--titlePaddingLeft);
    font-family: var(--fontFamily);
    font-weight: var(--titleWeight);
    font-size: var(--titleFontSize);
    line-height: var(--titleLineHeight);
    color: var(--titleColor);
    letter-spacing: var(--titleLetterSpacing,.2px)
}

html[lang^=ja] .CopyTitle {
    font-weight: 600;
    font-variation-settings: "wght" var(--titleWeight)
}

.CopyTitle--inline {
    --titlePaddingLeft: 0px;
    --titlePaddingRight: 0px
}

.CopyTitle--accented {
    --titleColor: var(--accentColor)
}

.CopyTitle--anchored {
    --titleBorderColor: var(--accentColor)
}

.CopyTitle--variantHero {
    --titleFontSize: 48px;
    --titleLineHeight: 56px;
    --titleLetterSpacing: -0.02em
}

.CopyTitle--variantHero,.CopyTitle--variantSuperhero {
    --titleWeight: var(--fontWeightBold)
}

.CopyTitle--variantSection {
    --titleFontSize: 34px;
    --titleLineHeight: 1.294117647;
    --titleLetterSpacing: -0.1px
}

.CopyTitle--variantSection,.CopyTitle--variantSubsection {
    --titlePaddingRight: var(--columnPaddingXLarge);
    --titleWeight: var(--fontWeightBold)
}

.CopyTitle--variantSubsection {
    --titleFontSize: 24px;
    --titleLineHeight: 1.333333333;
    --titleLetterSpacing: 0.1px
}

.CopyTitle--variantFooter {
    --titlePaddingRight: var(--columnPaddingXLarge)
}

.CopyTitle--variantFooter,.CopyTitle--variantStat {
    --titleFontSize: 24px;
    --titleLineHeight: 1.333333333;
    --titleWeight: var(--fontWeightBold);
    --titleLetterSpacing: 0.1px
}

.CopyTitle--variantDetail,.CopyTitle--variantStat {
    --titleBorderColor: var(--accentColor)
}

.CopyTitle--variantDetail {
    --titleFontSize: 15px;
    --titleLineHeight: 1.6;
    --titleWeight: var(--fontWeightSemibold);
    --titleLetterSpacing: 0.2px
}

html[lang^=ja] .CopyTitle--variantDetail {
    --titleWeight: 425
}

@media (min-width: 600px) {
    .CopyTitle--variantSubsection {
        --titleFontSize:26px;
        --titleLineHeight: 1.384615385;
        --titleLetterSpacing: 0
    }
}

@media (min-width: 1112px) {
    .CopyTitle--variantHero {
        --titleFontSize:56px;
        --titleLineHeight: 68px
    }

    .CopyTitle--variantSection {
        --titleFontSize: 38px;
        --titleLineHeight: 1.263157895;
        --titleLetterSpacing: -0.2px
    }
}

.CopyTitle:before {
    display: var(--titleAnchorDisplay,block);
    position: absolute;
    top: calc(.5px + var(--titleLineHeight)*var(--titleFontSize)/2 - var(--titleFontSize)/2);
    left: calc(var(--titlePaddingLeft) - var(--columnPaddingNormal));
    width: 1px;
    height: var(--titleFontSize);
    background-color: var(--titleBorderColor,transparent);
    content: ""
}
