.container.site-narrow-container {
    max-width: 760px;
}

@supports (view-transition-name: none) {
    @view-transition {
        navigation: auto;
    }

    .site-transition-shell {
        view-transition-name: site-header-shell;
    }

    .site-brand-transition {
        view-transition-name: site-header-brand;
    }

    .site-primary-nav-transition {
        view-transition-name: site-header-nav;
    }

    .site-locale-nav-transition {
        view-transition-name: site-header-locale;
    }

    .site-hero-subtitle-transition {
        view-transition-name: site-header-subtitle;
    }

    .site-hero-features-transition {
        view-transition-name: site-header-features;
    }

    ::view-transition-group(site-header-shell),
    ::view-transition-group(site-header-brand),
    ::view-transition-group(site-header-nav),
    ::view-transition-group(site-header-locale),
    ::view-transition-group(site-header-subtitle),
    ::view-transition-group(site-header-features) {
        animation-duration: 420ms;
        animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
    }

    ::view-transition-old(site-header-shell),
    ::view-transition-new(site-header-shell),
    ::view-transition-old(site-header-brand),
    ::view-transition-new(site-header-brand),
    ::view-transition-old(site-header-nav),
    ::view-transition-new(site-header-nav),
    ::view-transition-old(site-header-locale),
    ::view-transition-new(site-header-locale) {
        animation-duration: 420ms;
        animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
    }

    ::view-transition-old(site-header-subtitle),
    ::view-transition-old(site-header-features) {
        animation: site-header-fade-out 240ms ease both;
    }

    ::view-transition-new(site-header-subtitle),
    ::view-transition-new(site-header-features) {
        animation: site-header-fade-in 280ms ease 90ms both;
    }
}

@keyframes site-header-fade-out {
    from {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
    to {
        opacity: 0;
        transform: translateY(-10px) scale(0.985);
    }
}

@keyframes site-header-fade-in {
    from {
        opacity: 0;
        transform: translateY(10px) scale(0.985);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

@media (prefers-reduced-motion: reduce) {
    @supports (view-transition-name: none) {
        ::view-transition-group(site-header-shell),
        ::view-transition-group(site-header-brand),
        ::view-transition-group(site-header-nav),
        ::view-transition-group(site-header-locale),
        ::view-transition-group(site-header-subtitle),
        ::view-transition-group(site-header-features),
        ::view-transition-old(site-header-shell),
        ::view-transition-new(site-header-shell),
        ::view-transition-old(site-header-brand),
        ::view-transition-new(site-header-brand),
        ::view-transition-old(site-header-nav),
        ::view-transition-new(site-header-nav),
        ::view-transition-old(site-header-locale),
        ::view-transition-new(site-header-locale),
        ::view-transition-old(site-header-subtitle),
        ::view-transition-new(site-header-subtitle),
        ::view-transition-old(site-header-features),
        ::view-transition-new(site-header-features) {
            animation-duration: 1ms;
        }
    }
}

.shabbat-notice {
    box-sizing: border-box;
    margin-top: 12px;
    padding: 10px 12px;
    color: #455a64;
    background: #fafbfc;
    border: 1px solid #eceff1;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.45;
}

.shabbat-notice a {
    color: #7b4397;
    font-weight: inherit;
    text-decoration: none;
}

.shabbat-notice a:hover {
    text-decoration: underline;
}

.compact-site-header .compact-header-content {
    min-height: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    padding: 16px 20px;
}

.compact-site-header .site-brand {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    max-width: 100%;
    text-align: center;
    white-space: nowrap;
}

.compact-site-header .compact-nav-clouds {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    max-width: 100%;
    flex-wrap: nowrap;
    gap: 10px;
}

.compact-site-header .compact-site-nav {
    flex: 0 1 auto;
    max-width: 100%;
}

@media (max-width: 1180px) {
    .compact-site-header .compact-nav-clouds {
        gap: 8px;
    }
}

@media (max-width: 860px) {
    .compact-site-header .compact-nav-clouds {
        width: fit-content;
        max-width: 100%;
        flex-direction: row;
        flex-wrap: wrap;
        gap: 9px;
    }
}

.site-locale-nav {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 3px;
    padding: 5px;
    box-sizing: border-box;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.site-locale-nav-item {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    min-height: 32px;
    padding: 0 7px;
    box-sizing: border-box;
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.78);
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}

.site-locale-nav-item.is-active,
.site-locale-nav-item:hover {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.14);
}

.site-footer {
    margin-top: 0;
    padding: 24px 0 28px;
    color: #666666;
    background: #f5f5f5;
    border-top: 1px solid #eeeeee;
    text-align: center;
}

.site-footer-full {
    padding-top: 32px;
}

.site-footer-full .site-footer-store-links,
.site-footer-full .site-footer-trademark {
    display: none;
}

.site-footer-stats {
    display: flex;
    justify-content: center;
    gap: 40px;
    margin-bottom: 28px;
    flex-wrap: wrap;
}

.site-footer-stat {
    text-align: center;
}

.site-footer-stat-title {
    margin-bottom: 4px;
    color: #333333;
    font-size: 1.6rem;
    font-weight: 700;
}

.site-footer-stat-subtitle {
    color: #888888;
    font-size: 0.9rem;
}

.site-footer-copyright p {
    margin: 0;
    color: #777777;
    font-size: 0.85rem;
}

.site-footer-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 0;
    margin: 0 0 10px;
    color: #777777;
    font-size: 0.86rem;
    font-weight: 600;
}

.site-footer-nav a {
    color: #666666;
    text-decoration: none;
    transition: color 160ms ease;
}

.site-footer-nav a:hover {
    color: #7b4397;
}

.site-footer-nav a + a::before {
    content: "|";
    margin: 0 9px;
    color: #c5c5c5;
    font-weight: 400;
}

.site-footer-store-links {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 14px;
}

.site-footer-store-links a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
}

.site-footer-store-links img {
    display: block;
    width: auto;
    height: 34px;
}

.site-footer-license,
.site-footer-trademark,
.store-trademark-note {
    max-width: 640px;
    margin: 9px auto 0;
    color: #9a9a9a;
    font-size: 0.68rem;
    font-weight: 500;
    line-height: 1.45;
}

.site-footer-license {
    max-width: 760px;
}

.store-trademark-note {
    margin-top: 18px;
}

.site-footer-trademark span,
.store-trademark-note span {
    display: block;
}

.content-main {
    min-height: 58vh;
    padding: 0 0 28px;
    color: #263238;
    background: #ffffff;
}

.content-panel {
    padding: 26px 0 18px;
}

.content-panel h1 {
    margin: 0 0 12px;
    color: #111111;
    font-size: 30px;
    font-weight: 600;
    line-height: 1.16;
}

.content-panel h2 {
    margin: 26px 0 10px;
    color: #444444;
    font-size: 1.45rem;
    font-weight: 400;
    line-height: 1.25;
}

.content-panel p,
.content-panel li {
    color: #455a64;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.65;
}

.content-panel p {
    margin: 0 0 13px;
}

.content-panel a,
.privacy-effective-date a,
.site-footer-license a,
.site-footer-trademark a,
.store-trademark-note a {
    color: #7b4397;
    text-decoration: none;
    transition: color 160ms ease, text-decoration-color 160ms ease;
}

.content-panel a:hover,
.privacy-effective-date a:hover,
.site-footer-license a:hover,
.site-footer-trademark a:hover,
.store-trademark-note a:hover {
    color: #6a2f86;
    text-decoration: underline;
    text-decoration-color: currentColor;
}

.content-panel ul {
    margin: 0 0 14px;
    padding-left: 20px;
}

.content-card {
    padding: 18px;
    border: 1px solid #eceff1;
    border-radius: 10px;
    background: #fafbfc;
}

.privacy-policy {
    font-family: 'Segoe UI', -apple-system, BlinkMacSystemFont, sans-serif;
}

.privacy-policy h2 {
    margin-top: 25px;
}

.privacy-policy p {
    color: #555555;
    font-weight: 400;
    line-height: 1.75;
}

.privacy-effective-date {
    color: #777777;
    font-size: 0.95rem;
}

@media (max-width: 768px) {
    .site-footer-stats {
        gap: 24px;
    }

    .site-footer-stat-title {
        font-size: 1.4rem;
    }

    .site-footer-nav {
        line-height: 1.8;
    }

    .site-footer-store-links img {
        height: 32px;
    }

    .site-footer-license,
    .site-footer-trademark,
    .store-trademark-note {
        font-size: 0.66rem;
    }

    .content-panel h1 {
        font-size: 26px;
    }
}
