');mask-image:url('data:image/svg+xml;utf8, ');mask-mode:alpha;-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}}.wp-block-image :where(.has-border-color){border-style:solid}.wp-block-image :where([style*=border-top-color]){border-top-style:solid}.wp-block-image :where([style*=border-right-color]){border-right-style:solid}.wp-block-image :where([style*=border-bottom-color]){border-bottom-style:solid}.wp-block-image :where([style*=border-left-color]){border-left-style:solid}.wp-block-image :where([style*=border-width]){border-style:solid}.wp-block-image :where([style*=border-top-width]){border-top-style:solid}.wp-block-image :where([style*=border-right-width]){border-right-style:solid}.wp-block-image :where([style*=border-bottom-width]){border-bottom-style:solid}.wp-block-image :where([style*=border-left-width]){border-left-style:solid}.wp-block-image figure{margin:0}ol.wp-block-latest-comments{box-sizing:border-box;margin-left:0}.wp-block-latest-comments .wp-block-latest-comments{padding-left:0}.wp-block-latest-comments__comment{line-height:1.1;list-style:none;margin-bottom:1em}.has-avatars .wp-block-latest-comments__comment{list-style:none;min-height:2.25em}.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt,.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-meta{margin-left:3.25em}.has-dates .wp-block-latest-comments__comment,.has-excerpts .wp-block-latest-comments__comment{line-height:1.5}.wp-block-latest-comments__comment-excerpt p{font-size:.875em;line-height:1.8;margin:.36em 0 1.4em}.wp-block-latest-comments__comment-date{display:block;font-size:.75em}.wp-block-latest-comments .avatar,.wp-block-latest-comments__comment-avatar{border-radius:1.5em;display:block;float:left;height:2.5em;margin-right:.75em;width:2.5em}.wp-block-latest-posts{box-sizing:border-box}.wp-block-latest-posts.alignleft{margin-right:2em}.wp-block-latest-posts.alignright{margin-left:2em}.wp-block-latest-posts.wp-block-latest-posts__list{list-style:none;padding-left:0}.wp-block-latest-posts.wp-block-latest-posts__list li{clear:both}.wp-block-latest-posts.is-grid{display:flex;flex-wrap:wrap;padding:0}.wp-block-latest-posts.is-grid li{margin:0 1.25em 1.25em 0;width:100%}@media (min-width:600px){.wp-block-latest-posts.columns-2 li{width:calc(50% - .625em)}.wp-block-latest-posts.columns-2 li:nth-child(2n){margin-right:0}.wp-block-latest-posts.columns-3 li{width:calc(33.33333% - .83333em)}.wp-block-latest-posts.columns-3 li:nth-child(3n){margin-right:0}.wp-block-latest-posts.columns-4 li{width:calc(25% - .9375em)}.wp-block-latest-posts.columns-4 li:nth-child(4n){margin-right:0}.wp-block-latest-posts.columns-5 li{width:calc(20% - 1em)}.wp-block-latest-posts.columns-5 li:nth-child(5n){margin-right:0}.wp-block-latest-posts.columns-6 li{width:calc(16.66667% - 1.04167em)}.wp-block-latest-posts.columns-6 li:nth-child(6n){margin-right:0}}.wp-block-latest-posts__post-author,.wp-block-latest-posts__post-date{display:block;font-size:.8125em}.wp-block-latest-posts__post-excerpt{margin-bottom:1em;margin-top:.5em}.wp-block-latest-posts__featured-image a{display:inline-block}.wp-block-latest-posts__featured-image img{height:auto;max-width:100%;width:auto}.wp-block-latest-posts__featured-image.alignleft{float:left;margin-right:1em}.wp-block-latest-posts__featured-image.alignright{float:right;margin-left:1em}.wp-block-latest-posts__featured-image.aligncenter{margin-bottom:1em;text-align:center}ol,ul{box-sizing:border-box}ol.has-background,ul.has-background{padding:1.25em 2.375em}.wp-block-media-text{box-sizing:border-box;
/*!rtl:begin:ignore*/direction:ltr;
/*!rtl:end:ignore*/display:grid;grid-template-columns:50% 1fr;grid-template-rows:auto}.wp-block-media-text.has-media-on-the-right{grid-template-columns:1fr 50%}.wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__content,.wp-block-media-text.is-vertically-aligned-top .wp-block-media-text__media{align-self:start}.wp-block-media-text .wp-block-media-text__content,.wp-block-media-text .wp-block-media-text__media,.wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__content,.wp-block-media-text.is-vertically-aligned-center .wp-block-media-text__media{align-self:center}.wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__content,.wp-block-media-text.is-vertically-aligned-bottom .wp-block-media-text__media{align-self:end}.wp-block-media-text .wp-block-media-text__media{
/*!rtl:begin:ignore*/grid-column:1;grid-row:1;
/*!rtl:end:ignore*/margin:0}.wp-block-media-text .wp-block-media-text__content{direction:ltr;
/*!rtl:begin:ignore*/grid-column:2;grid-row:1;
/*!rtl:end:ignore*/padding:0 8%;word-break:break-word}.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media{
/*!rtl:begin:ignore*/grid-column:2;grid-row:1
/*!rtl:end:ignore*/}.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content{
/*!rtl:begin:ignore*/grid-column:1;grid-row:1
/*!rtl:end:ignore*/}.wp-block-media-text__media img,.wp-block-media-text__media video{height:auto;max-width:unset;vertical-align:middle;width:100%}.wp-block-media-text.is-image-fill .wp-block-media-text__media{background-size:cover;height:100%;min-height:250px}.wp-block-media-text.is-image-fill .wp-block-media-text__media>a{display:block;height:100%}.wp-block-media-text.is-image-fill .wp-block-media-text__media img{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}@media (max-width:600px){.wp-block-media-text.is-stacked-on-mobile{grid-template-columns:100%!important}.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media{grid-column:1;grid-row:1}.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content{grid-column:1;grid-row:2}}.wp-block-navigation{--navigation-layout-justification-setting:flex-start;--navigation-layout-direction:row;--navigation-layout-wrap:wrap;--navigation-layout-justify:flex-start;--navigation-layout-align:center;position:relative}.wp-block-navigation ul{margin-bottom:0;margin-left:0;margin-top:0;padding-left:0}.wp-block-navigation ul,.wp-block-navigation ul li{list-style:none;padding:0}.wp-block-navigation .wp-block-navigation-item{align-items:center;display:flex;position:relative}.wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-container:empty{display:none}.wp-block-navigation .wp-block-navigation-item__content{display:block}.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content{color:inherit}.wp-block-navigation.has-text-decoration-underline .wp-block-navigation-item__content,.wp-block-navigation.has-text-decoration-underline .wp-block-navigation-item__content:active,.wp-block-navigation.has-text-decoration-underline .wp-block-navigation-item__content:focus{text-decoration:underline}.wp-block-navigation.has-text-decoration-line-through .wp-block-navigation-item__content,.wp-block-navigation.has-text-decoration-line-through .wp-block-navigation-item__content:active,.wp-block-navigation.has-text-decoration-line-through .wp-block-navigation-item__content:focus{text-decoration:line-through}.wp-block-navigation:where(:not([class*=has-text-decoration])) a{text-decoration:none}.wp-block-navigation:where(:not([class*=has-text-decoration])) a:active,.wp-block-navigation:where(:not([class*=has-text-decoration])) a:focus{text-decoration:none}.wp-block-navigation .wp-block-navigation__submenu-icon{align-self:center;background-color:inherit;border:none;color:currentColor;display:inline-block;font-size:inherit;height:.6em;line-height:0;margin-left:.25em;padding:0;width:.6em}.wp-block-navigation .wp-block-navigation__submenu-icon svg{stroke:currentColor;display:inline-block;height:inherit;margin-top:.075em;width:inherit}.wp-block-navigation.is-vertical{--navigation-layout-direction:column;--navigation-layout-justify:initial;--navigation-layout-align:flex-start}.wp-block-navigation.no-wrap{--navigation-layout-wrap:nowrap}.wp-block-navigation.items-justified-center{--navigation-layout-justification-setting:center;--navigation-layout-justify:center}.wp-block-navigation.items-justified-center.is-vertical{--navigation-layout-align:center}.wp-block-navigation.items-justified-right{--navigation-layout-justification-setting:flex-end;--navigation-layout-justify:flex-end}.wp-block-navigation.items-justified-right.is-vertical{--navigation-layout-align:flex-end}.wp-block-navigation.items-justified-space-between{--navigation-layout-justification-setting:space-between;--navigation-layout-justify:space-between}.wp-block-navigation .has-child .wp-block-navigation__submenu-container{align-items:normal;background-color:inherit;color:inherit;display:flex;flex-direction:column;height:0;left:-1px;opacity:0;overflow:hidden;position:absolute;top:100%;transition:opacity .1s linear;visibility:hidden;width:0;z-index:2}.wp-block-navigation .has-child .wp-block-navigation__submenu-container>.wp-block-navigation-item>.wp-block-navigation-item__content{display:flex;flex-grow:1}.wp-block-navigation .has-child .wp-block-navigation__submenu-container>.wp-block-navigation-item>.wp-block-navigation-item__content .wp-block-navigation__submenu-icon{margin-left:auto;margin-right:0}.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation-item__content{margin:0}@media (min-width:782px){.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{left:100%;top:-1px}.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container:before{background:transparent;content:"";display:block;height:100%;position:absolute;right:100%;width:.5em}.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon{margin-right:.25em}.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon svg{transform:rotate(-90deg)}}.wp-block-navigation .has-child:not(.open-on-click):hover>.wp-block-navigation__submenu-container{height:auto;min-width:200px;opacity:1;overflow:visible;visibility:visible;width:auto}.wp-block-navigation .has-child:not(.open-on-click):not(.open-on-hover-click):focus-within>.wp-block-navigation__submenu-container{height:auto;min-width:200px;opacity:1;overflow:visible;visibility:visible;width:auto}.wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded=true]~.wp-block-navigation__submenu-container{height:auto;min-width:200px;opacity:1;overflow:visible;visibility:visible;width:auto}.wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container{left:0;top:100%}@media (min-width:782px){.wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{left:100%;top:0}}.wp-block-navigation-submenu{display:flex;position:relative}.wp-block-navigation-submenu .wp-block-navigation__submenu-icon svg{stroke:currentColor}button.wp-block-navigation-item__content{background-color:transparent;border:none;color:currentColor;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;line-height:inherit;text-align:left;text-transform:inherit}.wp-block-navigation-submenu__toggle{cursor:pointer}.wp-block-navigation-item.open-on-click .wp-block-navigation-submenu__toggle{padding-right:.85em}.wp-block-navigation-item.open-on-click .wp-block-navigation-submenu__toggle+.wp-block-navigation__submenu-icon{margin-left:-.6em;pointer-events:none}.wp-block-navigation .wp-block-page-list,.wp-block-navigation__container,.wp-block-navigation__responsive-close,.wp-block-navigation__responsive-container,.wp-block-navigation__responsive-container-content,.wp-block-navigation__responsive-dialog{gap:inherit}:where(.wp-block-navigation.has-background .wp-block-navigation-item a:not(.wp-element-button)),:where(.wp-block-navigation.has-background .wp-block-navigation-submenu a:not(.wp-element-button)){padding:.5em 1em}:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item a:not(.wp-element-button)),:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-submenu a:not(.wp-element-button)),:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-submenu button.wp-block-navigation-item__content),:where(.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-pages-list__item button.wp-block-navigation-item__content){padding:.5em 1em}.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-right .wp-block-page-list>.has-child .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between .wp-block-page-list>.has-child:last-child .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between>.wp-block-navigation__container>.has-child:last-child .wp-block-navigation__submenu-container{left:auto;right:0}.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-right .wp-block-page-list>.has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between .wp-block-page-list>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between>.wp-block-navigation__container>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{left:-1px;right:-1px}@media (min-width:782px){.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-right .wp-block-page-list>.has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between .wp-block-page-list>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container,.wp-block-navigation.items-justified-space-between>.wp-block-navigation__container>.has-child:last-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container{left:auto;right:100%}}.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container{background-color:#fff;border:1px solid rgba(0,0,0,.15);color:#000}.wp-block-navigation__container{align-items:var(--navigation-layout-align,initial);display:flex;flex-direction:var(--navigation-layout-direction,initial);flex-wrap:var(--navigation-layout-wrap,wrap);justify-content:var(--navigation-layout-justify,initial);list-style:none;margin:0;padding-left:0}.wp-block-navigation__container .is-responsive{display:none}.wp-block-navigation__container:only-child,.wp-block-page-list:only-child{flex-grow:1}@keyframes overlay-menu__fade-in-animation{0%{opacity:0;transform:translateY(.5em)}to{opacity:1;transform:translateY(0)}}.wp-block-navigation__responsive-container{bottom:0;display:none;left:0;position:fixed;right:0;top:0}.wp-block-navigation__responsive-container .wp-block-navigation-link a{color:inherit}.wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content{align-items:var(--navigation-layout-align,initial);display:flex;flex-direction:var(--navigation-layout-direction,initial);flex-wrap:var(--navigation-layout-wrap,wrap);justify-content:var(--navigation-layout-justify,initial)}.wp-block-navigation__responsive-container:not(.is-menu-open.is-menu-open){background-color:inherit!important;color:inherit!important}.wp-block-navigation__responsive-container.is-menu-open{animation:overlay-menu__fade-in-animation .1s ease-out;animation-fill-mode:forwards;background-color:inherit;display:flex;flex-direction:column;overflow:auto;padding:var(--wp--style--root--padding-top,2rem) var(--wp--style--root--padding-right,2rem) var(--wp--style--root--padding-bottom,2rem) var(--wp--style--root--padding-left,2rem);z-index:100000}@media (prefers-reduced-motion:reduce){.wp-block-navigation__responsive-container.is-menu-open{animation-delay:0s;animation-duration:1ms}}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{align-items:var(--navigation-layout-justification-setting,inherit);display:flex;flex-direction:column;flex-wrap:nowrap;overflow:visible;padding-top:calc(2rem + 24px)}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list{justify-content:flex-start}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon{display:none}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container{border:none;height:auto;min-width:200px;opacity:1;overflow:initial;padding-left:2rem;padding-right:2rem;position:static;visibility:visible;width:auto}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container{gap:inherit}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container{padding-top:var(--wp--style--block-gap,2em)}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content{padding:0}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-page-list{align-items:var(--navigation-layout-justification-setting,initial);display:flex;flex-direction:column}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item,.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item .wp-block-navigation__submenu-container,.wp-block-navigation__responsive-container.is-menu-open .wp-block-page-list{background:transparent!important;color:inherit!important}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container{left:auto;right:auto}@media (min-width:600px){.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){background-color:inherit;display:block;position:relative;width:100%;z-index:auto}.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) .wp-block-navigation__responsive-container-close{display:none}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container{left:0}}.wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open{background-color:#fff;color:#000}.wp-block-navigation__toggle_button_label{font-size:1rem;font-weight:700}.wp-block-navigation__responsive-container-close,.wp-block-navigation__responsive-container-open{background:transparent;border:none;color:currentColor;cursor:pointer;margin:0;padding:0;text-transform:inherit;vertical-align:middle}.wp-block-navigation__responsive-container-close svg,.wp-block-navigation__responsive-container-open svg{fill:currentColor;display:block;height:24px;pointer-events:none;width:24px}.wp-block-navigation__responsive-container-open{display:flex}.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open{font-family:inherit;font-size:inherit;font-weight:inherit}@media (min-width:600px){.wp-block-navigation__responsive-container-open:not(.always-shown){display:none}}.wp-block-navigation__responsive-container-close{position:absolute;right:0;top:0;z-index:2}.wp-block-navigation__responsive-container-close.wp-block-navigation__responsive-container-close.wp-block-navigation__responsive-container-close{font-family:inherit;font-size:inherit;font-weight:inherit}.wp-block-navigation__responsive-close{margin-left:auto;margin-right:auto;max-width:var(--wp--style--global--wide-size,100%);width:100%}.wp-block-navigation__responsive-close:focus{outline:none}.is-menu-open .wp-block-navigation__responsive-close,.is-menu-open .wp-block-navigation__responsive-container-content,.is-menu-open .wp-block-navigation__responsive-dialog{box-sizing:border-box}.wp-block-navigation__responsive-dialog{position:relative}.has-modal-open .admin-bar .is-menu-open .wp-block-navigation__responsive-dialog{margin-top:46px}@media (min-width:782px){.has-modal-open .admin-bar .is-menu-open .wp-block-navigation__responsive-dialog{margin-top:32px}}html.has-modal-open{overflow:hidden}.wp-block-navigation .wp-block-navigation-item__label{overflow-wrap:break-word;word-break:normal}.wp-block-navigation .wp-block-navigation-item__description{display:none}.wp-block-navigation .wp-block-page-list{align-items:var(--navigation-layout-align,initial);background-color:inherit;display:flex;flex-direction:var(--navigation-layout-direction,initial);flex-wrap:var(--navigation-layout-wrap,wrap);justify-content:var(--navigation-layout-justify,initial)}.wp-block-navigation .wp-block-navigation-item{background-color:inherit}.is-small-text{font-size:.875em}.is-regular-text{font-size:1em}.is-large-text{font-size:2.25em}.is-larger-text{font-size:3em}.has-drop-cap:not(:focus):first-letter{float:left;font-size:8.4em;font-style:normal;font-weight:100;line-height:.68;margin:.05em .1em 0 0;text-transform:uppercase}body.rtl .has-drop-cap:not(:focus):first-letter{float:none;margin-left:.1em}p.has-drop-cap.has-background{overflow:hidden}p.has-background{padding:1.25em 2.375em}:where(p.has-text-color:not(.has-link-color)) a{color:inherit}.wp-block-post-author{display:flex;flex-wrap:wrap}.wp-block-post-author__byline{font-size:.5em;margin-bottom:0;margin-top:0;width:100%}.wp-block-post-author__avatar{margin-right:1em}.wp-block-post-author__bio{font-size:.7em;margin-bottom:.7em}.wp-block-post-author__content{flex-basis:0;flex-grow:1}.wp-block-post-author__name{margin:0}.wp-block-post-comments-form{box-sizing:border-box}.wp-block-post-comments-form[style*=font-weight] :where(.comment-reply-title){font-weight:inherit}.wp-block-post-comments-form[style*=font-family] :where(.comment-reply-title){font-family:inherit}.wp-block-post-comments-form[class*=-font-size] :where(.comment-reply-title),.wp-block-post-comments-form[style*=font-size] :where(.comment-reply-title){font-size:inherit}.wp-block-post-comments-form[style*=line-height] :where(.comment-reply-title){line-height:inherit}.wp-block-post-comments-form[style*=font-style] :where(.comment-reply-title){font-style:inherit}.wp-block-post-comments-form[style*=letter-spacing] :where(.comment-reply-title){letter-spacing:inherit}.wp-block-post-comments-form input[type=submit]{box-shadow:none;cursor:pointer;display:inline-block;overflow-wrap:break-word;text-align:center}.wp-block-post-comments-form input:not([type=submit]),.wp-block-post-comments-form textarea{border:1px solid #949494;font-family:inherit;font-size:1em}.wp-block-post-comments-form input:not([type=submit]):not([type=checkbox]),.wp-block-post-comments-form textarea{padding:calc(.667em + 2px)}.wp-block-post-comments-form .comment-form input:not([type=submit]):not([type=checkbox]),.wp-block-post-comments-form .comment-form textarea{box-sizing:border-box;display:block;width:100%}.wp-block-post-comments-form .comment-form-author label,.wp-block-post-comments-form .comment-form-email label,.wp-block-post-comments-form .comment-form-url label{display:block;margin-bottom:.25em}.wp-block-post-comments-form .comment-form-cookies-consent{display:flex;gap:.25em}.wp-block-post-comments-form .comment-form-cookies-consent #wp-comment-cookies-consent{margin-top:.35em}.wp-block-post-comments-form .comment-reply-title{margin-bottom:0}.wp-block-post-comments-form .comment-reply-title :where(small){font-size:var(--wp--preset--font-size--medium,smaller);margin-left:.5em}.wp-block-post-date{box-sizing:border-box}.wp-block-post-excerpt{margin-bottom:var(--wp--style--block-gap);margin-top:var(--wp--style--block-gap)}.wp-block-post-excerpt__excerpt{margin-bottom:0;margin-top:0}.wp-block-post-excerpt__more-text{margin-bottom:0;margin-top:var(--wp--style--block-gap)}.wp-block-post-excerpt__more-link{display:inline-block}.wp-block-post-featured-image{margin-left:0;margin-right:0}.wp-block-post-featured-image a{display:block}.wp-block-post-featured-image img{box-sizing:border-box;height:auto;max-width:100%;vertical-align:bottom;width:100%}.wp-block-post-featured-image.alignfull img,.wp-block-post-featured-image.alignwide img{width:100%}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim{background-color:#000;inset:0;position:absolute}.wp-block-post-featured-image{position:relative}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-gradient{background-color:transparent}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-0{opacity:0}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-10{opacity:.1}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-20{opacity:.2}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-30{opacity:.3}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-40{opacity:.4}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-50{opacity:.5}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-60{opacity:.6}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-70{opacity:.7}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-80{opacity:.8}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-90{opacity:.9}.wp-block-post-featured-image .wp-block-post-featured-image__overlay.has-background-dim-100{opacity:1}.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-previous{display:inline-block;margin-right:1ch}.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-previous:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-next{display:inline-block;margin-left:1ch}.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-next:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-post-terms{box-sizing:border-box}.wp-block-post-terms .wp-block-post-terms__separator{white-space:pre-wrap}.wp-block-post-title{box-sizing:border-box;word-break:break-word}.wp-block-post-title a{display:inline-block}.wp-block-preformatted{white-space:pre-wrap}.wp-block-preformatted.has-background{padding:1.25em 2.375em}.wp-block-pullquote{box-sizing:border-box;margin:0 0 1em;overflow-wrap:break-word;padding:3em 0;text-align:center}.wp-block-pullquote blockquote,.wp-block-pullquote cite,.wp-block-pullquote p{color:inherit}.wp-block-pullquote.alignleft,.wp-block-pullquote.alignright{max-width:420px}.wp-block-pullquote cite,.wp-block-pullquote footer{position:relative}.wp-block-pullquote .has-text-color a{color:inherit}.wp-block-pullquote.has-text-align-left blockquote{text-align:left}.wp-block-pullquote.has-text-align-right blockquote{text-align:right}.wp-block-pullquote.is-style-solid-color{border:none}.wp-block-pullquote.is-style-solid-color blockquote{margin-left:auto;margin-right:auto;max-width:60%}.wp-block-pullquote.is-style-solid-color blockquote p{font-size:2em;margin-bottom:0;margin-top:0}.wp-block-pullquote.is-style-solid-color blockquote cite{font-style:normal;text-transform:none}.wp-block-pullquote cite{color:inherit}.wp-block-post-template{list-style:none;margin-bottom:0;margin-top:0;max-width:100%;padding:0}.wp-block-post-template.wp-block-post-template{background:none}.wp-block-post-template.is-flex-container{display:flex;flex-direction:row;flex-wrap:wrap;gap:1.25em}.wp-block-post-template.is-flex-container li{margin:0;width:100%}@media (min-width:600px){.wp-block-post-template.is-flex-container.is-flex-container.columns-2>li{width:calc(50% - .625em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-3>li{width:calc(33.33333% - .83333em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-4>li{width:calc(25% - .9375em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-5>li{width:calc(20% - 1em)}.wp-block-post-template.is-flex-container.is-flex-container.columns-6>li{width:calc(16.66667% - 1.04167em)}}.wp-block-query-pagination>.wp-block-query-pagination-next,.wp-block-query-pagination>.wp-block-query-pagination-numbers,.wp-block-query-pagination>.wp-block-query-pagination-previous{margin-bottom:.5em;margin-right:.5em}.wp-block-query-pagination>.wp-block-query-pagination-next:last-child,.wp-block-query-pagination>.wp-block-query-pagination-numbers:last-child,.wp-block-query-pagination>.wp-block-query-pagination-previous:last-child{margin-right:0}.wp-block-query-pagination.is-content-justification-space-between>.wp-block-query-pagination-next:last-of-type{margin-inline-start:auto}.wp-block-query-pagination.is-content-justification-space-between>.wp-block-query-pagination-previous:first-child{margin-inline-end:auto}.wp-block-query-pagination .wp-block-query-pagination-previous-arrow{display:inline-block;margin-right:1ch}.wp-block-query-pagination .wp-block-query-pagination-previous-arrow:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-query-pagination .wp-block-query-pagination-next-arrow{display:inline-block;margin-left:1ch}.wp-block-query-pagination .wp-block-query-pagination-next-arrow:not(.is-arrow-chevron){transform:scaleX(1)}.wp-block-query-pagination.aligncenter{justify-content:center}.wp-block-query-title,.wp-block-quote{box-sizing:border-box}.wp-block-quote{overflow-wrap:break-word}.wp-block-quote.is-large:where(:not(.is-style-plain)),.wp-block-quote.is-style-large:where(:not(.is-style-plain)){margin-bottom:1em;padding:0 1em}.wp-block-quote.is-large:where(:not(.is-style-plain)) p,.wp-block-quote.is-style-large:where(:not(.is-style-plain)) p{font-size:1.5em;font-style:italic;line-height:1.6}.wp-block-quote.is-large:where(:not(.is-style-plain)) cite,.wp-block-quote.is-large:where(:not(.is-style-plain)) footer,.wp-block-quote.is-style-large:where(:not(.is-style-plain)) cite,.wp-block-quote.is-style-large:where(:not(.is-style-plain)) footer{font-size:1.125em;text-align:right}.wp-block-read-more{display:block;width:-moz-fit-content;width:fit-content}.wp-block-read-more:not([style*=text-decoration]),.wp-block-read-more:not([style*=text-decoration]):active,.wp-block-read-more:not([style*=text-decoration]):focus{text-decoration:none}ul.wp-block-rss{list-style:none;padding:0}ul.wp-block-rss.wp-block-rss{box-sizing:border-box}ul.wp-block-rss.alignleft{margin-right:2em}ul.wp-block-rss.alignright{margin-left:2em}ul.wp-block-rss.is-grid{display:flex;flex-wrap:wrap;list-style:none;padding:0}ul.wp-block-rss.is-grid li{margin:0 1em 1em 0;width:100%}@media (min-width:600px){ul.wp-block-rss.columns-2 li{width:calc(50% - 1em)}ul.wp-block-rss.columns-3 li{width:calc(33.33333% - 1em)}ul.wp-block-rss.columns-4 li{width:calc(25% - 1em)}ul.wp-block-rss.columns-5 li{width:calc(20% - 1em)}ul.wp-block-rss.columns-6 li{width:calc(16.66667% - 1em)}}.wp-block-rss__item-author,.wp-block-rss__item-publish-date{display:block;font-size:.8125em}.wp-block-search__button{margin-left:.625em;word-break:normal}.wp-block-search__button.has-icon{line-height:0}.wp-block-search__button svg{fill:currentColor;min-height:1.5em;min-width:1.5em;vertical-align:text-bottom}:where(.wp-block-search__button){border:1px solid #ccc;padding:.375em .625em}.wp-block-search__inside-wrapper{display:flex;flex:auto;flex-wrap:nowrap;max-width:100%}.wp-block-search__label{width:100%}.wp-block-search__input{border:1px solid #949494;flex-grow:1;margin-left:0;margin-right:0;min-width:3em;padding:8px;text-decoration:unset!important}.wp-block-search.wp-block-search__button-only .wp-block-search__button{margin-left:0}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper){border:1px solid #949494;padding:4px}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__input{border:none;border-radius:0;padding:0 0 0 .25em}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__input:focus{outline:none}:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) :where(.wp-block-search__button){padding:.125em .5em}.wp-block-search.aligncenter .wp-block-search__inside-wrapper{margin:auto}.wp-block-separator{border:1px solid;border-left:none;border-right:none}.wp-block-separator.is-style-dots{background:none!important;border:none;height:auto;line-height:1;text-align:center}.wp-block-separator.is-style-dots:before{color:currentColor;content:"···";font-family:serif;font-size:1.5em;letter-spacing:2em;padding-left:2em}.wp-block-site-logo{box-sizing:border-box;line-height:0}.wp-block-site-logo a{display:inline-block}.wp-block-site-logo.is-default-size img{height:auto;width:120px}.wp-block-site-logo img{height:auto;max-width:100%}.wp-block-site-logo a,.wp-block-site-logo img{border-radius:inherit}.wp-block-site-logo.aligncenter{margin-left:auto;margin-right:auto;text-align:center}.wp-block-site-logo.is-style-rounded{border-radius:9999px}.wp-block-site-title a{color:inherit}.wp-block-social-links{background:none;box-sizing:border-box;margin-left:0;padding-left:0;padding-right:0;text-indent:0}.wp-block-social-links .wp-social-link a,.wp-block-social-links .wp-social-link a:hover{border-bottom:0;box-shadow:none;text-decoration:none}.wp-block-social-links .wp-social-link a{padding:.25em}.wp-block-social-links .wp-social-link svg{height:1em;width:1em}.wp-block-social-links .wp-social-link span:not(.screen-reader-text){font-size:.65em;margin-left:.5em;margin-right:.5em}.wp-block-social-links.has-small-icon-size{font-size:16px}.wp-block-social-links,.wp-block-social-links.has-normal-icon-size{font-size:24px}.wp-block-social-links.has-large-icon-size{font-size:36px}.wp-block-social-links.has-huge-icon-size{font-size:48px}.wp-block-social-links.aligncenter{display:flex;justify-content:center}.wp-block-social-links.alignright{justify-content:flex-end}.wp-block-social-link{border-radius:9999px;display:block;height:auto;transition:transform .1s ease}@media (prefers-reduced-motion:reduce){.wp-block-social-link{transition-delay:0s;transition-duration:0s}}.wp-block-social-link a{align-items:center;display:flex;line-height:0;transition:transform .1s ease}.wp-block-social-link:hover{transform:scale(1.1)}.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor,.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor svg,.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:active,.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:hover,.wp-block-social-links .wp-block-social-link .wp-block-social-link-anchor:visited{fill:currentColor;color:currentColor}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link{background-color:#f0f0f0;color:#444}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-amazon{background-color:#f90;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-bandcamp{background-color:#1ea0c3;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-behance{background-color:#0757fe;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-codepen{background-color:#1e1f26;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-deviantart{background-color:#02e49b;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dribbble{background-color:#e94c89;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-dropbox{background-color:#4280ff;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-etsy{background-color:#f45800;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-facebook{background-color:#1778f2;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-fivehundredpx{background-color:#000;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-flickr{background-color:#0461dd;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-foursquare{background-color:#e65678;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-github{background-color:#24292d;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-goodreads{background-color:#eceadd;color:#382110}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-google{background-color:#ea4434;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-instagram{background-color:#f00075;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-lastfm{background-color:#e21b24;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-linkedin{background-color:#0d66c2;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-mastodon{background-color:#3288d4;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-medium{background-color:#02ab6c;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-meetup{background-color:#f6405f;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-patreon{background-color:#ff424d;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pinterest{background-color:#e60122;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-pocket{background-color:#ef4155;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-reddit{background-color:#ff4500;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-skype{background-color:#0478d7;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-snapchat{stroke:#000;background-color:#fefc00;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-soundcloud{background-color:#ff5600;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-spotify{background-color:#1bd760;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-telegram{background-color:#2aabee;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tiktok{background-color:#000;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-tumblr{background-color:#011835;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitch{background-color:#6440a4;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-twitter{background-color:#1da1f2;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vimeo{background-color:#1eb7ea;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-vk{background-color:#4680c2;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-wordpress{background-color:#3499cd;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-whatsapp{background-color:#25d366;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-yelp{background-color:#d32422;color:#fff}.wp-block-social-links:not(.is-style-logos-only) .wp-social-link-youtube{background-color:red;color:#fff}.wp-block-social-links.is-style-logos-only .wp-social-link{background:none}.wp-block-social-links.is-style-logos-only .wp-social-link a{padding:0}.wp-block-social-links.is-style-logos-only .wp-social-link svg{height:1.25em;width:1.25em}.wp-block-social-links.is-style-logos-only .wp-social-link-amazon{color:#f90}.wp-block-social-links.is-style-logos-only .wp-social-link-bandcamp{color:#1ea0c3}.wp-block-social-links.is-style-logos-only .wp-social-link-behance{color:#0757fe}.wp-block-social-links.is-style-logos-only .wp-social-link-codepen{color:#1e1f26}.wp-block-social-links.is-style-logos-only .wp-social-link-deviantart{color:#02e49b}.wp-block-social-links.is-style-logos-only .wp-social-link-dribbble{color:#e94c89}.wp-block-social-links.is-style-logos-only .wp-social-link-dropbox{color:#4280ff}.wp-block-social-links.is-style-logos-only .wp-social-link-etsy{color:#f45800}.wp-block-social-links.is-style-logos-only .wp-social-link-facebook{color:#1778f2}.wp-block-social-links.is-style-logos-only .wp-social-link-fivehundredpx{color:#000}.wp-block-social-links.is-style-logos-only .wp-social-link-flickr{color:#0461dd}.wp-block-social-links.is-style-logos-only .wp-social-link-foursquare{color:#e65678}.wp-block-social-links.is-style-logos-only .wp-social-link-github{color:#24292d}.wp-block-social-links.is-style-logos-only .wp-social-link-goodreads{color:#382110}.wp-block-social-links.is-style-logos-only .wp-social-link-google{color:#ea4434}.wp-block-social-links.is-style-logos-only .wp-social-link-instagram{color:#f00075}.wp-block-social-links.is-style-logos-only .wp-social-link-lastfm{color:#e21b24}.wp-block-social-links.is-style-logos-only .wp-social-link-linkedin{color:#0d66c2}.wp-block-social-links.is-style-logos-only .wp-social-link-mastodon{color:#3288d4}.wp-block-social-links.is-style-logos-only .wp-social-link-medium{color:#02ab6c}.wp-block-social-links.is-style-logos-only .wp-social-link-meetup{color:#f6405f}.wp-block-social-links.is-style-logos-only .wp-social-link-patreon{color:#ff424d}.wp-block-social-links.is-style-logos-only .wp-social-link-pinterest{color:#e60122}.wp-block-social-links.is-style-logos-only .wp-social-link-pocket{color:#ef4155}.wp-block-social-links.is-style-logos-only .wp-social-link-reddit{color:#ff4500}.wp-block-social-links.is-style-logos-only .wp-social-link-skype{color:#0478d7}.wp-block-social-links.is-style-logos-only .wp-social-link-snapchat{stroke:#000;color:#fff}.wp-block-social-links.is-style-logos-only .wp-social-link-soundcloud{color:#ff5600}.wp-block-social-links.is-style-logos-only .wp-social-link-spotify{color:#1bd760}.wp-block-social-links.is-style-logos-only .wp-social-link-telegram{color:#2aabee}.wp-block-social-links.is-style-logos-only .wp-social-link-tiktok{color:#000}.wp-block-social-links.is-style-logos-only .wp-social-link-tumblr{color:#011835}.wp-block-social-links.is-style-logos-only .wp-social-link-twitch{color:#6440a4}.wp-block-social-links.is-style-logos-only .wp-social-link-twitter{color:#1da1f2}.wp-block-social-links.is-style-logos-only .wp-social-link-vimeo{color:#1eb7ea}.wp-block-social-links.is-style-logos-only .wp-social-link-vk{color:#4680c2}.wp-block-social-links.is-style-logos-only .wp-social-link-whatsapp{color:#25d366}.wp-block-social-links.is-style-logos-only .wp-social-link-wordpress{color:#3499cd}.wp-block-social-links.is-style-logos-only .wp-social-link-yelp{color:#d32422}.wp-block-social-links.is-style-logos-only .wp-social-link-youtube{color:red}.wp-block-social-links.is-style-pill-shape .wp-social-link{width:auto}.wp-block-social-links.is-style-pill-shape .wp-social-link a{padding-left:.66667em;padding-right:.66667em}.wp-block-spacer{clear:both}.wp-block-tag-cloud{box-sizing:border-box}.wp-block-tag-cloud.aligncenter{justify-content:center;text-align:center}.wp-block-tag-cloud.alignfull{padding-left:1em;padding-right:1em}.wp-block-tag-cloud a{display:inline-block;margin-right:5px}.wp-block-tag-cloud span{display:inline-block;margin-left:5px;text-decoration:none}.wp-block-tag-cloud.is-style-outline{display:flex;flex-wrap:wrap;gap:1ch}.wp-block-tag-cloud.is-style-outline a{border:1px solid;font-size:unset!important;margin-right:0;padding:1ch 2ch;text-decoration:none!important}.wp-block-table{overflow-x:auto}.wp-block-table table{border-collapse:collapse;width:100%}.wp-block-table thead{border-bottom:3px solid}.wp-block-table tfoot{border-top:3px solid}.wp-block-table td,.wp-block-table th{border:1px solid;padding:.5em}.wp-block-table .has-fixed-layout{table-layout:fixed;width:100%}.wp-block-table .has-fixed-layout td,.wp-block-table .has-fixed-layout th{word-break:break-word}.wp-block-table.aligncenter,.wp-block-table.alignleft,.wp-block-table.alignright{display:table;width:auto}.wp-block-table.aligncenter td,.wp-block-table.aligncenter th,.wp-block-table.alignleft td,.wp-block-table.alignleft th,.wp-block-table.alignright td,.wp-block-table.alignright th{word-break:break-word}.wp-block-table .has-subtle-light-gray-background-color{background-color:#f3f4f5}.wp-block-table .has-subtle-pale-green-background-color{background-color:#e9fbe5}.wp-block-table .has-subtle-pale-blue-background-color{background-color:#e7f5fe}.wp-block-table .has-subtle-pale-pink-background-color{background-color:#fcf0ef}.wp-block-table.is-style-stripes{background-color:transparent;border-bottom:1px solid #f0f0f0;border-collapse:inherit;border-spacing:0}.wp-block-table.is-style-stripes tbody tr:nth-child(odd){background-color:#f0f0f0}.wp-block-table.is-style-stripes.has-subtle-light-gray-background-color tbody tr:nth-child(odd){background-color:#f3f4f5}.wp-block-table.is-style-stripes.has-subtle-pale-green-background-color tbody tr:nth-child(odd){background-color:#e9fbe5}.wp-block-table.is-style-stripes.has-subtle-pale-blue-background-color tbody tr:nth-child(odd){background-color:#e7f5fe}.wp-block-table.is-style-stripes.has-subtle-pale-pink-background-color tbody tr:nth-child(odd){background-color:#fcf0ef}.wp-block-table.is-style-stripes td,.wp-block-table.is-style-stripes th{border-color:transparent}.wp-block-table .has-border-color td,.wp-block-table .has-border-color th,.wp-block-table .has-border-color tr,.wp-block-table .has-border-color>*{border-color:inherit}.wp-block-table table[style*=border-top-color] tr:first-child,.wp-block-table table[style*=border-top-color] tr:first-child td,.wp-block-table table[style*=border-top-color] tr:first-child th,.wp-block-table table[style*=border-top-color]>*,.wp-block-table table[style*=border-top-color]>* td,.wp-block-table table[style*=border-top-color]>* th{border-top-color:inherit}.wp-block-table table[style*=border-top-color] tr:not(:first-child){border-top-color:currentColor}.wp-block-table table[style*=border-right-color] td:last-child,.wp-block-table table[style*=border-right-color] th,.wp-block-table table[style*=border-right-color] tr,.wp-block-table table[style*=border-right-color]>*{border-right-color:inherit}.wp-block-table table[style*=border-bottom-color] tr:last-child,.wp-block-table table[style*=border-bottom-color] tr:last-child td,.wp-block-table table[style*=border-bottom-color] tr:last-child th,.wp-block-table table[style*=border-bottom-color]>*,.wp-block-table table[style*=border-bottom-color]>* td,.wp-block-table table[style*=border-bottom-color]>* th{border-bottom-color:inherit}.wp-block-table table[style*=border-bottom-color] tr:not(:last-child){border-bottom-color:currentColor}.wp-block-table table[style*=border-left-color] td:first-child,.wp-block-table table[style*=border-left-color] th,.wp-block-table table[style*=border-left-color] tr,.wp-block-table table[style*=border-left-color]>*{border-left-color:inherit}.wp-block-table table[style*=border-style] td,.wp-block-table table[style*=border-style] th,.wp-block-table table[style*=border-style] tr,.wp-block-table table[style*=border-style]>*{border-style:inherit}.wp-block-table table[style*=border-width] td,.wp-block-table table[style*=border-width] th,.wp-block-table table[style*=border-width] tr,.wp-block-table table[style*=border-width]>*{border-style:inherit;border-width:inherit}.wp-block-text-columns,.wp-block-text-columns.aligncenter{display:flex}.wp-block-text-columns .wp-block-column{margin:0 1em;padding:0}.wp-block-text-columns .wp-block-column:first-child{margin-left:0}.wp-block-text-columns .wp-block-column:last-child{margin-right:0}.wp-block-text-columns.columns-2 .wp-block-column{width:50%}.wp-block-text-columns.columns-3 .wp-block-column{width:33.33333%}.wp-block-text-columns.columns-4 .wp-block-column{width:25%}pre.wp-block-verse{overflow:auto;white-space:pre-wrap}:where(pre.wp-block-verse){font-family:inherit}.wp-block-video{box-sizing:border-box}.wp-block-video video{width:100%}@supports (position:sticky){.wp-block-video [poster]{-o-object-fit:cover;object-fit:cover}}.wp-block-video.aligncenter{text-align:center}.wp-block-video figcaption{margin-bottom:1em;margin-top:.5em}.wp-element-button{cursor:pointer}:root{--wp--preset--font-size--normal:16px;--wp--preset--font-size--huge:42px}:root .has-very-light-gray-background-color{background-color:#eee}:root .has-very-dark-gray-background-color{background-color:#313131}:root .has-very-light-gray-color{color:#eee}:root .has-very-dark-gray-color{color:#313131}:root .has-vivid-green-cyan-to-vivid-cyan-blue-gradient-background{background:linear-gradient(135deg,#00d084,#0693e3)}:root .has-purple-crush-gradient-background{background:linear-gradient(135deg,#34e2e4,#4721fb 50%,#ab1dfe)}:root .has-hazy-dawn-gradient-background{background:linear-gradient(135deg,#faaca8,#dad0ec)}:root .has-subdued-olive-gradient-background{background:linear-gradient(135deg,#fafae1,#67a671)}:root .has-atomic-cream-gradient-background{background:linear-gradient(135deg,#fdd79a,#004a59)}:root .has-nightshade-gradient-background{background:linear-gradient(135deg,#330968,#31cdcf)}:root .has-midnight-gradient-background{background:linear-gradient(135deg,#020381,#2874fc)}.has-regular-font-size{font-size:1em}.has-larger-font-size{font-size:2.625em}.has-normal-font-size{font-size:var(--wp--preset--font-size--normal)}.has-huge-font-size{font-size:var(--wp--preset--font-size--huge)}.has-text-align-center{text-align:center}.has-text-align-left{text-align:left}.has-text-align-right{text-align:right}#end-resizable-editor-section{display:none}.aligncenter{clear:both}.items-justified-left{justify-content:flex-start}.items-justified-center{justify-content:center}.items-justified-right{justify-content:flex-end}.items-justified-space-between{justify-content:space-between}.screen-reader-text{clip:rect(1px,1px,1px,1px);word-wrap:normal!important;border:0;-webkit-clip-path:inset(50%);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.screen-reader-text:focus{clip:auto!important;background-color:#ddd;-webkit-clip-path:none;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}html :where(.has-border-color){border-style:solid}html :where([style*=border-top-color]){border-top-style:solid}html :where([style*=border-right-color]){border-right-style:solid}html :where([style*=border-bottom-color]){border-bottom-style:solid}html :where([style*=border-left-color]){border-left-style:solid}html :where([style*=border-width]){border-style:solid}html :where([style*=border-top-width]){border-top-style:solid}html :where([style*=border-right-width]){border-right-style:solid}html :where([style*=border-bottom-width]){border-bottom-style:solid}html :where([style*=border-left-width]){border-left-style:solid}html :where(img[class*=wp-image-]){height:auto;max-width:100%}figure{margin:0 0 1em}html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:var(--wp-admin--admin-bar--height,0px)}@media screen and (max-width:600px){html :where(.is-position-sticky){--wp-admin--admin-bar--position-offset:0px}}
.wp-block-audio figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-audio figcaption{color:hsla(0,0%,100%,.65)}.wp-block-audio{margin:0 0 1em}.wp-block-code{border:1px solid #ccc;border-radius:4px;font-family:Menlo,Consolas,monaco,monospace;padding:.8em 1em}.wp-block-embed figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-embed figcaption{color:hsla(0,0%,100%,.65)}.wp-block-embed{margin:0 0 1em}.blocks-gallery-caption{color:#555;font-size:13px;text-align:center}.is-dark-theme .blocks-gallery-caption{color:hsla(0,0%,100%,.65)}.wp-block-image figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-image figcaption{color:hsla(0,0%,100%,.65)}.wp-block-image{margin:0 0 1em}.wp-block-pullquote{border-bottom:4px solid;border-top:4px solid;color:currentColor;margin-bottom:1.75em}.wp-block-pullquote cite,.wp-block-pullquote footer,.wp-block-pullquote__citation{color:currentColor;font-size:.8125em;font-style:normal;text-transform:uppercase}.wp-block-quote{border-left:.25em solid;margin:0 0 1.75em;padding-left:1em}.wp-block-quote cite,.wp-block-quote footer{color:currentColor;font-size:.8125em;font-style:normal;position:relative}.wp-block-quote.has-text-align-right{border-left:none;border-right:.25em solid;padding-left:0;padding-right:1em}.wp-block-quote.has-text-align-center{border:none;padding-left:0}.wp-block-quote.is-large,.wp-block-quote.is-style-large,.wp-block-quote.is-style-plain{border:none}.wp-block-search .wp-block-search__label{font-weight:700}.wp-block-search__button{border:1px solid #ccc;padding:.375em .625em}:where(.wp-block-group.has-background){padding:1.25em 2.375em}.wp-block-separator.has-css-opacity{opacity:.4}.wp-block-separator{border:none;border-bottom:2px solid;margin-left:auto;margin-right:auto}.wp-block-separator.has-alpha-channel-opacity{opacity:1}.wp-block-separator:not(.is-style-wide):not(.is-style-dots){width:100px}.wp-block-separator.has-background:not(.is-style-dots){border-bottom:none;height:1px}.wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots){height:2px}.wp-block-table{margin:0 0 1em}.wp-block-table td,.wp-block-table th{word-break:normal}.wp-block-table figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-table figcaption{color:hsla(0,0%,100%,.65)}.wp-block-video figcaption{color:#555;font-size:13px;text-align:center}.is-dark-theme .wp-block-video figcaption{color:hsla(0,0%,100%,.65)}.wp-block-video{margin:0 0 1em}.wp-block-template-part.has-background{margin-bottom:0;margin-top:0;padding:1.25em 2.375em}
/*! This file is auto-generated */
.wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none}
body{--wp--preset--color--black:#000;--wp--preset--color--cyan-bluish-gray:#abb8c3;--wp--preset--color--white:#fff;--wp--preset--color--pale-pink:#f78da7;--wp--preset--color--vivid-red:#cf2e2e;--wp--preset--color--luminous-vivid-orange:#ff6900;--wp--preset--color--luminous-vivid-amber:#fcb900;--wp--preset--color--light-green-cyan:#7bdcb5;--wp--preset--color--vivid-green-cyan:#00d084;--wp--preset--color--pale-cyan-blue:#8ed1fc;--wp--preset--color--vivid-cyan-blue:#0693e3;--wp--preset--color--vivid-purple:#9b51e0;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple:linear-gradient(135deg,rgba(6,147,227,1) 0%,#9b51e0 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan:linear-gradient(135deg,#7adcb4 0%,#00d082 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange:linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red:linear-gradient(135deg,rgba(255,105,0,1) 0%,#cf2e2e 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray:linear-gradient(135deg,#eee 0%,#a9b8c3 100%);--wp--preset--gradient--cool-to-warm-spectrum:linear-gradient(135deg,#4aeadc 0%,#9778d1 20%,#cf2aba 40%,#ee2c82 60%,#fb6962 80%,#fef84c 100%);--wp--preset--gradient--blush-light-purple:linear-gradient(135deg,#ffceec 0%,#9896f0 100%);--wp--preset--gradient--blush-bordeaux:linear-gradient(135deg,#fecda5 0%,#fe2d2d 50%,#6b003e 100%);--wp--preset--gradient--luminous-dusk:linear-gradient(135deg,#ffcb70 0%,#c751c0 50%,#4158d0 100%);--wp--preset--gradient--pale-ocean:linear-gradient(135deg,#fff5cb 0%,#b6e3d4 50%,#33a7b5 100%);--wp--preset--gradient--electric-grass:linear-gradient(135deg,#caf880 0%,#71ce7e 100%);--wp--preset--gradient--midnight:linear-gradient(135deg,#020381 0%,#2874fc 100%);--wp--preset--duotone--dark-grayscale:url('#wp-duotone-dark-grayscale');--wp--preset--duotone--grayscale:url('#wp-duotone-grayscale');--wp--preset--duotone--purple-yellow:url('#wp-duotone-purple-yellow');--wp--preset--duotone--blue-red:url('#wp-duotone-blue-red');--wp--preset--duotone--midnight:url('#wp-duotone-midnight');--wp--preset--duotone--magenta-yellow:url('#wp-duotone-magenta-yellow');--wp--preset--duotone--purple-green:url('#wp-duotone-purple-green');--wp--preset--duotone--blue-orange:url('#wp-duotone-blue-orange');--wp--preset--font-size--small:13px;--wp--preset--font-size--medium:20px;--wp--preset--font-size--large:36px;--wp--preset--font-size--x-large:42px;--wp--preset--spacing--20:.44rem;--wp--preset--spacing--30:.67rem;--wp--preset--spacing--40:1rem;--wp--preset--spacing--50:1.5rem;--wp--preset--spacing--60:2.25rem;--wp--preset--spacing--70:3.38rem;--wp--preset--spacing--80:5.06rem;--wp--preset--shadow--natural:6px 6px 9px rgba(0,0,0,.2);--wp--preset--shadow--deep:12px 12px 50px rgba(0,0,0,.4);--wp--preset--shadow--sharp:6px 6px 0px rgba(0,0,0,.2);--wp--preset--shadow--outlined:6px 6px 0px -3px rgba(255,255,255,1),6px 6px rgba(0,0,0,1);--wp--preset--shadow--crisp:6px 6px 0px rgba(0,0,0,1)}:where(.is-layout-flex){gap:.5em}body .is-layout-flow>.alignleft{float:left;margin-inline-start:0;margin-inline-end:2em}body .is-layout-flow>.alignright{float:right;margin-inline-start:2em;margin-inline-end:0}body .is-layout-flow>.aligncenter{margin-left:auto !important;margin-right:auto !important}body .is-layout-constrained>.alignleft{float:left;margin-inline-start:0;margin-inline-end:2em}body .is-layout-constrained>.alignright{float:right;margin-inline-start:2em;margin-inline-end:0}body .is-layout-constrained>.aligncenter{margin-left:auto !important;margin-right:auto !important}body .is-layout-constrained>:where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width:var(--wp--style--global--content-size);margin-left:auto !important;margin-right:auto !important}body .is-layout-constrained>.alignwide{max-width:var(--wp--style--global--wide-size)}body .is-layout-flex{display:flex}body .is-layout-flex{flex-wrap:wrap;align-items:center}body .is-layout-flex>*{margin:0}:where(.wp-block-columns.is-layout-flex){gap:2em}.has-black-color{color:var(--wp--preset--color--black) !important}.has-cyan-bluish-gray-color{color:var(--wp--preset--color--cyan-bluish-gray) !important}.has-white-color{color:var(--wp--preset--color--white) !important}.has-pale-pink-color{color:var(--wp--preset--color--pale-pink) !important}.has-vivid-red-color{color:var(--wp--preset--color--vivid-red) !important}.has-luminous-vivid-orange-color{color:var(--wp--preset--color--luminous-vivid-orange) !important}.has-luminous-vivid-amber-color{color:var(--wp--preset--color--luminous-vivid-amber) !important}.has-light-green-cyan-color{color:var(--wp--preset--color--light-green-cyan) !important}.has-vivid-green-cyan-color{color:var(--wp--preset--color--vivid-green-cyan) !important}.has-pale-cyan-blue-color{color:var(--wp--preset--color--pale-cyan-blue) !important}.has-vivid-cyan-blue-color{color:var(--wp--preset--color--vivid-cyan-blue) !important}.has-vivid-purple-color{color:var(--wp--preset--color--vivid-purple) !important}.has-black-background-color{background-color:var(--wp--preset--color--black) !important}.has-cyan-bluish-gray-background-color{background-color:var(--wp--preset--color--cyan-bluish-gray) !important}.has-white-background-color{background-color:var(--wp--preset--color--white) !important}.has-pale-pink-background-color{background-color:var(--wp--preset--color--pale-pink) !important}.has-vivid-red-background-color{background-color:var(--wp--preset--color--vivid-red) !important}.has-luminous-vivid-orange-background-color{background-color:var(--wp--preset--color--luminous-vivid-orange) !important}.has-luminous-vivid-amber-background-color{background-color:var(--wp--preset--color--luminous-vivid-amber) !important}.has-light-green-cyan-background-color{background-color:var(--wp--preset--color--light-green-cyan) !important}.has-vivid-green-cyan-background-color{background-color:var(--wp--preset--color--vivid-green-cyan) !important}.has-pale-cyan-blue-background-color{background-color:var(--wp--preset--color--pale-cyan-blue) !important}.has-vivid-cyan-blue-background-color{background-color:var(--wp--preset--color--vivid-cyan-blue) !important}.has-vivid-purple-background-color{background-color:var(--wp--preset--color--vivid-purple) !important}.has-black-border-color{border-color:var(--wp--preset--color--black) !important}.has-cyan-bluish-gray-border-color{border-color:var(--wp--preset--color--cyan-bluish-gray) !important}.has-white-border-color{border-color:var(--wp--preset--color--white) !important}.has-pale-pink-border-color{border-color:var(--wp--preset--color--pale-pink) !important}.has-vivid-red-border-color{border-color:var(--wp--preset--color--vivid-red) !important}.has-luminous-vivid-orange-border-color{border-color:var(--wp--preset--color--luminous-vivid-orange) !important}.has-luminous-vivid-amber-border-color{border-color:var(--wp--preset--color--luminous-vivid-amber) !important}.has-light-green-cyan-border-color{border-color:var(--wp--preset--color--light-green-cyan) !important}.has-vivid-green-cyan-border-color{border-color:var(--wp--preset--color--vivid-green-cyan) !important}.has-pale-cyan-blue-border-color{border-color:var(--wp--preset--color--pale-cyan-blue) !important}.has-vivid-cyan-blue-border-color{border-color:var(--wp--preset--color--vivid-cyan-blue) !important}.has-vivid-purple-border-color{border-color:var(--wp--preset--color--vivid-purple) !important}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background:var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background:var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background:var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background:var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background:var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important}.has-cool-to-warm-spectrum-gradient-background{background:var(--wp--preset--gradient--cool-to-warm-spectrum) !important}.has-blush-light-purple-gradient-background{background:var(--wp--preset--gradient--blush-light-purple) !important}.has-blush-bordeaux-gradient-background{background:var(--wp--preset--gradient--blush-bordeaux) !important}.has-luminous-dusk-gradient-background{background:var(--wp--preset--gradient--luminous-dusk) !important}.has-pale-ocean-gradient-background{background:var(--wp--preset--gradient--pale-ocean) !important}.has-electric-grass-gradient-background{background:var(--wp--preset--gradient--electric-grass) !important}.has-midnight-gradient-background{background:var(--wp--preset--gradient--midnight) !important}.has-small-font-size{font-size:var(--wp--preset--font-size--small) !important}.has-medium-font-size{font-size:var(--wp--preset--font-size--medium) !important}.has-large-font-size{font-size:var(--wp--preset--font-size--large) !important}.has-x-large-font-size{font-size:var(--wp--preset--font-size--x-large) !important}.wp-block-navigation a:where(:not(.wp-element-button)){color:inherit}:where(.wp-block-columns.is-layout-flex){gap:2em}.wp-block-pullquote{font-size:1.5em;line-height:1.6}
#avatar-manager img{margin:2px 0;vertical-align:middle}#avatar-manager label+a{display:inline-block;margin-top:-6px}#avatar-manager .delete{color:red;padding:2px}#avatar-manager .delete:hover{background:red;color:#fff;text-decoration:none}
div.wpcf7{margin:0;padding:0}div.wpcf7 .screen-reader-response{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);height:1px;width:1px;margin:0;padding:0;border:0}div.wpcf7-response-output{margin:2em .5em 1em;padding:.2em 1em;border:2px solid red}div.wpcf7-mail-sent-ok{border:2px solid #398f14}div.wpcf7-mail-sent-ng,div.wpcf7-aborted{border:2px solid red}div.wpcf7-spam-blocked{border:2px solid orange}div.wpcf7-validation-errors,div.wpcf7-acceptance-missing{border:2px solid #f7e700}.wpcf7-form-control-wrap{position:relative}span.wpcf7-not-valid-tip{color:red;font-size:1em;font-weight:400;display:block}.use-floating-validation-tip span.wpcf7-not-valid-tip{position:absolute;top:20%;left:20%;z-index:100;border:1px solid red;background:#fff;padding:.2em .8em}span.wpcf7-list-item{display:inline-block;margin:0 0 0 1em}span.wpcf7-list-item-label:before,span.wpcf7-list-item-label:after{content:" "}.wpcf7-display-none{display:none}div.wpcf7 .ajax-loader{visibility:hidden;display:inline-block;background-image:url(//blog.chinese-smartbrain.com/wp-content/plugins/contact-form-7/includes/css/../../images/ajax-loader.gif);width:16px;height:16px;border:none;padding:0;margin:0 0 0 4px;vertical-align:middle}div.wpcf7 .ajax-loader.is-active{visibility:visible}div.wpcf7 div.ajax-error{display:none}div.wpcf7 .placeheld{color:#888}div.wpcf7 input[type=file]{cursor:pointer}div.wpcf7 input[type=file]:disabled{cursor:default}div.wpcf7 .wpcf7-submit:disabled{cursor:not-allowed}
.post-views.entry-meta>span{margin-right:0 !important;font:16px/1}.post-views.entry-meta>span.post-views-icon.dashicons{display:inline-block;font-size:16px;line-height:1;text-decoration:inherit;vertical-align:middle}
@font-face{font-family:Circe;src:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe/CRC55.eot);src:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe/CRC55.eot) format("embedded-opentype"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe/CRC55.woff2) format("woff2"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe/CRC55.woff) format("woff"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe/CRC55.ttf) format("truetype"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe/CRC55.svg#CRC55) format("svg")}@font-face{font-family:Circe-light;src:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-light/CRC35.eot);src:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-light/fonts/CRC35.eot) format("embedded-opentype"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-light/fonts/CRC35.woff2) format("woff2"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-light/fonts/CRC35.woff) format("woff"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-light/fonts/CRC35.ttf) format("truetype"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-light/fonts/CRC35.svg#CRC35) format("svg")}@font-face{font-family:Circe-extra-light;src:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-light/CRC25.eot);src:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-light/CRC25.eot) format("embedded-opentype"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-light/CRC25.woff2) format("woff2"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-light/CRC25.woff) format("woff"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-light/CRC25.ttf) format("truetype"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-light/CRC25.svg#CRC25) format("svg")}@font-face{font-family:Circe-bold;src:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-bold/Circe-Bold.eot);src:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-bold/Circe-Bold.eot) format("embedded-opentype"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-bold/Circe-Bold.woff2) format("woff2"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-bold/Circe-Bold.woff) format("woff"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-bold/Circe-Bold.ttf) format("truetype"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-bold/Circe-Bold.svg#CRC25) format("svg")}@font-face{font-family:Circe-extra-bold;src:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-bold/Circe-ExtraBold.eot);src:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-bold/Circe-ExtraBold.eot) format("embedded-opentype"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-bold/Circe-ExtraBold.woff2) format("woff2"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-bold/Circe-ExtraBold.woff) format("woff"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-bold/Circe-ExtraBold.ttf) format("truetype"),url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-bold/Circe-ExtraBold.svg#CRC25) format("svg")}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2.45em;margin:.67em 0}}h4{font-size:18px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}body{min-width:340px;font-family:Circe,sans-serif;background:#f3f6f9}body.page,body.single{background:#fff}body h1,body h2,body h3,{font-weight:700}}body h4,body h5,body h6{font-weight:400}body .textwidget p{margin:0}body .wp-caption p.wp-caption-text{font-size:11px;line-height:17px;margin:0;padding:0 4px 5px}body .screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}body .screen-reader-text:focus{background-color:#eee;clip:auto!important;clip-path:none;color:#444;display:block;font-size:1em;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}body .sticky{color:0}body .gallery-caption{color:0}body .bypostauthor{color:0}body.page .menu-burger-box,body.single .menu-burger-box{color:#fff}body.page .menu-burger-box .burger span,body.single .menu-burger-box .burger span{background:#fff}.menu-burger-box{display:flex;align-content:center;cursor:pointer;color:#f3f6f9}.menu-burger-box h3{font-size:12px;font-family:Circe-extra-bold,sans-serif;padding-top:9px;padding-left:11px}.header nav{display:none}.header .container{display:flex;flex-wrap:wrap;padding:6px 15px 13px;justify-content:space-between}.header-logo{transition:all .2s;-webkit-transition:all .2s}.header-logo img{width:80px;margin-top:15px;margin-left:-24px}.header-logo:hover{transition:all .2s;-webkit-transition:all .2s;opacity:.8}.copyright-box,.email-box,.footer-center{text-align:left}.current-page{font-family:Circe-extra-bold,sans-serif;font-size:11px;text-transform:uppercase;padding-top:11px;padding-right:4px}.burger{text-align:center;width:12px;padding-top:12px;display:flex;align-content:center;flex-direction:row;flex-wrap:wrap}.burger span{display:block;width:100%;height:1px;background:#f3f6f9;margin-bottom:3px}.burger span:last-of-type{width:8px}.login-section,.main-header-nav{display:none}@media screen and (min-width:1000px){.header .login-section,.header .main-header-nav{display:block}.header .container{padding:6px 35px 26px;justify-content:flex-start}.header .current-page,.header .menu-burger-box{display:none}.header .header-logo{order:1}.header .main-header-nav{order:2}.header .main-header-nav ul{list-style:none;padding:0;margin:48px 0 0 238px;display:flex}.header .main-header-nav ul li{margin-right:85px}.header .main-header-nav ul li:first-of-type{margin-left:129px}.header .main-header-nav ul li:last-of-type{margin-right:0}.header .main-header-nav ul a{font-family:Circe-bold,sans-serif;color:#000;text-decoration:none;transition:all .5s}.header .main-header-nav ul a:hover{opacity:.6}.header .login-section{order:3}.header-logo img{width:138px;margin-top:33px;margin-left:-15px}.blue-line,.red-line{position:relative}.blue-line span,.red-line span{position:relative;z-index:1}.blue-line:after,.red-line:after{content:'';height:4px;width:calc(100% + 6px);position:absolute;bottom:4px;left:-3px;z-index:0}.red-line:after{background:#f59cb7}.blue-line:after{background:#6b88ff;opacity:.4}.login-section{margin-top:47px}.login-section a{color:#000;text-decoration:none;transition:all .3s;-webkit-transition:all .3s}.login-section a:hover{opacity:.8}.login-section .login-btn{position:relative;padding-right:43px}.login-section .login-btn:after{content:'';width:2px;height:40px;background:#ff4476;position:absolute;right:18px;top:-9px}.login-section .smartbrain{font-family:Circe-bold,sans-serif;margin-right:-2px;display:inline-block}.login-section .smartbrain .arrow{color:#ff4476}}@media screen and (min-width:1330px){.header .container{width:1310px;margin:0 auto;box-sizing:border-box;padding:6px 0 29px}.header-logo img{margin-left:0}}@media screen and (min-width:1350px){.header .container{width:1330px}}.footer{background:#fff}.footer .container{padding:33px 24px}.footer .copyright-box{margin-bottom:26px}.footer .copyright-box p,.footer .footer-center p{color:#363636;line-height:30px;margin:0}.footer .email-box .email,.footer a{margin-bottom:6px;display:inline-block;color:#6b88ff;text-decoration:none}.footer .email-box .email:hover,.footer a:hover{text-decoration:underline}.footer .email-box .legal-info{margin-bottom:16px;display:block;text-decoration:none}.footer .email-box .legal-info:hover{text-decoration:underline}@media screen and (min-width:600px){.footer{overflow:hidden}.footer .container{display:flex;justify-content:space-between;padding:33px 24px 0}.copyright-box,.email-box,.footer-center{width:100%}.footer-center{text-align:center}.email-box{text-align:right}}@media screen and (min-width:1000px){.copyright-box p br:first-of-type{display:none}.email-box{text-align:right;box-sizing:border-box;padding:4px 0 0 6px}.copyright-box,.email-box,.footer-center{width:30%}}@media screen and (min-width:1330px){.footer .container{width:1330px;margin:0 auto;box-sizing:border-box;padding:33px 64px 0}}@media screen and (min-width:1448px){.footer .container{width:1448px}.copyright-box,.email-box,.footer-center{width:33%}}.blog-slider-box{margin-bottom:33px;overflow:hidden}.blog-slider-box .slick-arrow{display:none!important}.blog-slider-box .blog-slide{min-height:520px;background-size:cover;background-position:center;text-align:center;padding-top:19px;padding-bottom:47px;color:#fff;box-sizing:border-box}.blog-slider-box .blog-slide .slide-content{height:430px;display:flex;flex-direction:column;align-items:center}.blog-slider-box .blog-slide p{font-size:24px;line-height:1.33;display:none}.blog-slider-box .blog-slide h3{font-size:24px;letter-spacing:.4px;margin-bottom:125px}.blog-slider-box .blog-slide h3 a{color:#fff;text-decoration:none}.blog-slider-box .blog-slide h3 a:hover{text-decoration:underline}.blog-slider-box .blog-slide h4{font-size:18px;margin-bottom:40px;letter-spacing:.4px}.blog-slider-box .blog-slide h4 a{color:#fff;text-decoration:none}.blog-slider-box .blog-slide h4 a:hover{text-decoration:underline}.blog-slider-box .blog-slide h2{font-size:32px;font-family:Circe-bold,sans-serif;line-height:1.25;margin-bottom:118px;padding:0 20px}.blog-slider-box .blog-slide .slider-read-more{color:#fff;padding:18px;border:2px solid #fff;border-radius:28px;height:56px;width:216px;display:inline-block;text-decoration:none;text-align:center;box-sizing:border-box;outline:0;transition:all .3s;-webkit-transition:all .3s;margin-top:auto}.blog-slider-box .blog-slide .slider-read-more:hover{background:#fff;color:#000}.blog-slider-box .slick-dots{list-style:none;position:absolute;width:100%;padding:0;margin:0;text-align:center;bottom:10px}.blog-slider-box .slick-dots li{padding:0;margin:0;width:8px;height:8px;display:inline-block;border:1px solid #fff;border-radius:50%;cursor:pointer;box-sizing:border-box;margin:0 4px}.blog-slider-box .slick-dots li button{display:none}.blog-slider-box .slick-dots li.slick-active{background:#fff}.blog-slider-box .blog-slide p,.blog-slider-box .blog-slide h1{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-break:break-word;text-overflow:ellipsis;overflow:hidden}@media screen and (max-width:350px){.blog-slider-box .blog-slide h2{margin-bottom:78px}}@media screen and (min-width:600px){.blog-slider-box .blog-slide p{display:-webkit-box;font-size:16px;margin-bottom:60px;padding:0 20px}.blog-slider-box .blog-slide h2{margin-bottom:60px}}@media screen and (min-width:1000px){.blog-slider-box .slick-arrow{display:block!important;border:0;z-index:10;background-color:transparent;cursor:pointer;font-size:0;outline:0;-webkit-transition:opacity .3s;-moz-transition:opacity .3s;-ms-transition:opacity .3s;-o-transition:opacity .3s}.blog-slider-box .slick-arrow.slick-prev{background-image:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/chevron-left.svg);background-repeat:no-repeat;width:23px;height:41px;position:absolute;top:272px;left:79px}.blog-slider-box .slick-arrow.slick-next{background-image:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/chevron-right.svg);background-repeat:no-repeat;width:23px;height:41px;position:absolute;top:272px;right:75px}.blog-slider-box .slick-arrow:hover{opacity:.8}.blog-slider-box .blog-slide{min-height:568px}.blog-slider-box .blog-slide .slide-content{height:460px}.blog-slider-box .blog-slide h1{margin-bottom:50px;line-height:1.5}.blog-slider-box .blog-slide p{font-size:24px;padding:0 150px;margin-bottom:50px;line-height:1.5}.blog-slider-box .blog-slide h3{font-size:24px;margin-top:34px;margin-bottom:70px}.blog-slider-box .blog-slide h2{font-size:32px;line-height:1.17;padding:0 150px}.blog-slider-box .slick-dots{bottom:27px}}.blog-slider-box .blog-slide h1{padding:0 20px}@media screen and (min-width:1456px){.blog-slider-box .container{width:1456px;padding:0;margin:0 auto}.blog-slider-box .blog-slide p{padding:0 250px}.blog-slider-box .blog-slide h2{padding:0 200px}.blog-slider-box .blog-slide h1{padding:0 200px}}.blog-posts-section{overflow:hidden}.posts-header-tags ul{margin:0;padding:0;list-style:none;text-align:center;-webkit-transition:all .3s;-moz-transition:all .3s;-ms-transition:all .3s;-o-transition:all .3s;transition:all .3s}.posts-header-tags ul li{display:inline-block;margin-bottom:24px}.posts-header-tags ul li a{border-radius:28px;height:40px;display:inline-block;text-decoration:none;color:#8d97a1;padding:12px 51px;margin-right:12px;box-sizing:border-box;border:1px solid #bdc9d5;outline:0;-webkit-transition:all .2s;-moz-transition:all .2s;-ms-transition:all .2s;-o-transition:all .2s;transition:all .2s}.posts-header-tags ul li a:hover{background:#bdc9d5;color:#fff;opacity:.8}.posts-header-tags ul li a:hover.active:hover{background:#bdc9d5;color:#fff;cursor:default;opacity:1}.posts-header-tags ul li a.active{background:#bdc9d5;color:#fff}.posts-header-tags ul li.more-tags{display:none;background:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/more-tags.svg) no-repeat;width:40px;height:40px;vertical-align:bottom;cursor:pointer;-webkit-transition:all .2s;-moz-transition:all .2s;-ms-transition:all .2s;-o-transition:all .2s;transition:all .2s;border-radius:50%}.posts-header-tags ul li.more-tags:hover{background-color:#ff00001c}.blog-posts{display:flex;justify-content:space-between;flex-wrap:wrap}.blog-post{background:#fff;border-radius:8px;width:312px;min-height:440px;position:relative;margin-bottom:23px;box-sizing:border-box;padding-bottom:60px}.blog-post>a{color:#000}.blog-post .__no_image .blog-post-title{margin-top:40px}.blog-post .blog-post-thumbnail{width:296px;height:248px;border-radius:4px;margin:8px 8px 20px;box-sizing:border-box;display:inline-block;overflow:hidden}.blog-post .blog-post-thumbnail .inner{width:100%;height:100%;background-size:cover;background-repeat:no-repeat;-webkit-transition:all .3s;-moz-transition:all .3s;-ms-transition:all .3s;-o-transition:all .3s;transition:all .3s}.blog-post .blog-post-thumbnail .inner:hover{opacity:.7}.blog-post .blog-post-title{font-family:Circe-bold,sans-serif;padding:0 21px 0 24px;margin:0;display:inline-block;font-size:24px;line-height:1.34;box-sizing:border-box}.blog-post .blog-post-title span{border-bottom:1px solid transparent;-webkit-transition:all .2s;-moz-transition:all .2s;-ms-transition:all .2s;-o-transition:all .2s;transition:all .2s}.blog-post .blog-post-title:hover span{border-bottom:1px solid #000;-webkit-transition:all .2s;-moz-transition:all .2s;-ms-transition:all .2s;-o-transition:all .2s;transition:all .2s}.blog-post-meta{display:flex;align-content:center;position:absolute;bottom:17px;left:0;padding:0 22px 0 25px;width:100%;justify-content:space-between;box-sizing:border-box}.blog-post-meta .comments span,.blog-post-meta .date span,.blog-post-meta .views span{color:#92999d;line-height:1.5}.blog-post-meta .comments{margin-right:20px}.blog-post-meta .comments .icon-comments{background:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/comments.svg) no-repeat;width:12px;height:12px;display:inline-block;position:relative;top:2px;left:-4px}.blog-post-meta .views .icon-views{background:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/views.svg) no-repeat;width:12px;height:12px;display:inline-block;margin-right:7px;position:relative;top:2px}.blog-post-meta .icons-meta{display:flex}.pagination-container{text-align:center}.more-posts{position:relative;height:56px;border-radius:28px;background-color:#ff4476;color:#fff;line-height:1.5;padding:10px;border:none;margin:25px auto;cursor:pointer;outline:0;-webkit-transition:all .2s;-moz-transition:all .2s;-ms-transition:all .2s;-o-transition:all .2s;transition:all .2s}.more-posts:hover{opacity:.9}.more-posts .ajax-loader{display:none;position:absolute;top:12px;right:20px}@media screen and (min-width:640px) and (max-width:1000px){.blog-post{margin-left:20px;margin-right:20px}.blog-posts{justify-content:center}.more-posts{margin-left:150px;margin-right:150px}}@media screen and (max-width:969px){.posts-header-tags ul.posts-tag-list{text-align:left;padding-left:16px;display:flex;align-items:center;width:100%;overflow:auto;box-sizing:border-box;-ms-overflow-style:none;scrollbar-width:none}.posts-header-tags ul.posts-tag-list::-webkit-scrollbar{display:none}.posts-header-tags ul.posts-tag-list a{font-size:12px;height:17px;padding:5px 24px 17px;margin-right:6px;white-space:nowrap}.blog-slider-box{margin-bottom:24px}.blog-posts{justify-content:center}.more-posts{margin-top:0;padding:17px 85px;margin-bottom:73px}}@media screen and (min-width:970px){.blog-posts-section .container{width:970px;margin:0 auto}.more-posts{width:200px;height:56px;display:flex;justify-content:space-around;align-items:center}.phone-image{background:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/subscribe.png) no-repeat;width:312px;height:347px;min-width:312px;background-size:contain}.posts-header-tags{margin-bottom:16px}.posts-header-tags ul{padding-left:0}.posts-header-tags ul li.not-active{display:none}.posts-header-tags ul li.more-tags{display:inline-block}.posts-header-tags ul li{margin-bottom:16px}}@media screen and (min-width:1001px){.blog-posts{justify-content:flex-start}.blog-post{margin-right:16px}.blog-post:nth-of-type(3n+3){margin-right:0}.more-posts .ajax-loader{right:auto}}.subscribe-section{overflow:hidden}.subscribe{margin-bottom:20px;margin-top:40px}.subscribe h3{font-size:24px;color:#363636;line-height:1.33;margin:0 0 7px}.subscribe p{line-height:1.5;color:#363636;display:inline-block;margin:0 0 16px}.subscribe form{position:relative}.subscribe .email-field{border-radius:4px;border:2px solid #f3f6f9;box-sizing:border-box;width:100%;padding:17px 24px;margin-bottom:24px;outline:0;transition:all .5s;height:60px}.subscribe .email-field.wpcf7-not-valid{border-color:red}.subscribe .email-field:focus{border:solid 2px #6b88ff}.subscribe .email-field::-webkit-input-placeholder{color:#010101;opacity:.2}.subscribe .email-field::-moz-placeholder{color:#010101;opacity:.2}.subscribe .email-field:-ms-input-placeholder{color:#010101;opacity:.2}.subscribe .email-field:-moz-placeholder{color:#010101;opacity:.2}.subscribe .btn-submit{border-radius:28px;background-color:#6b88ff;height:56px;max-width:312px;border:0;color:#fff;width:100%;cursor:pointer;outline:0;-webkit-transition:all .2s;-moz-transition:all .2s;-ms-transition:all .2s;-o-transition:all .2s;transition:all .2s}.subscribe .btn-submit:disabled,.single-subscribe .btn-submit:disabled{background:#c2ceff}.subscribe .btn-submit:hover,.single-subscribe .btn-submit:hover{background:#8aa0fb}.subscribe .personal-data-box{margin-bottom:17px}.subscribe .personal-data-label{cursor:pointer;display:flex}.subscribe .personal-data-label .check-icon{width:16px;height:16px;display:inline-block;background:#fff}.subscribe .personal-data-label a{color:#6b88ff;line-height:1.5;text-decoration:none}.subscribe .personal-data-label a:hover{text-decoration:underline}.subscribe .personal-data-label span{padding-left:16px;display:inline-block;line-height:1.5;user-select:none}.subscribe .personal-data-checkbox{display:none}.subscribe .personal-data-checkbox:checked+.personal-data-label .check-icon{background:#6b88ff url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/checked.svg) no-repeat center center;background-size:11px}.subscribe .info-msg{display:none;margin:15px 0 0;font-size:15px}.subscribe .terms{display:none}.subscribe .ajax-loader{position:absolute;top:20px}.subscribe .wpcf7-not-valid-tip,.subscribe div.wpcf7-response-output{display:none!important}.subscribe-section .subscribe .personal-data-label span br,.single-subscribe .personal-data-label span br,{display:none}@media screen and (min-width:650px){.subscribe-section .container{margin:0 auto;display:flex}.subscribe-section .subscribe h3{font-size:24px;line-height:1.4;color:#000;margin-bottom:18px}.subscribe-section .subscribe p{font-size:18px;line-height:1.33;max-width:70%;margin-bottom:24px}.subscribe-section .subscribe .email-field{max-width:400px;padding:19px 21px 15px}.subscribe-section .subscribe form{display:flex;flex-wrap:wrap}.subscribe-section .subscribe form .email-field{margin-right:14px}.subscribe-section .subscribe .personal-data-box{order:2}.subscribe-section .subscribe .btn-submit{order:1;max-width:200px;margin-bottom:24px}.subscribe-section .subscribe .info-msg{margin:15px 0 0;font-size:15px}}@media screen and (min-width:655px){.subscribe-section .container{width:655px}}@media screen and (min-width:970px){.subscribe-section{padding-top:40px}.subscribe-section .container{width:970px}.subscribe-section .subscribe{margin-bottom:40px}.phone-image{background:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/subscribe.png) no-repeat;width:312px;height:347px;min-width:312px;background-size:contain;align-self:flex-end;margin-left:20px}}@media screen and (min-width:1155px){.subscribe-section{padding-top:110px}.subscribe-section .container{width:1155px;margin:0 auto;display:flex}.subscribe-section .phone-image{margin-left:0}}.banner{min-height:520px;text-align:center;background-color:#9e9e9e;background-size:cover;background-repeat:no-repeat;background-position:center;color:#fff;box-sizing:border-box;padding-bottom:30px}.single-banner .banner{display:flex;flex-direction:column}.banner h3{font-size:24px;font-family:Circe-bold,sans-serif;line-height:2;letter-spacing:.4px;display:inline-block;margin-top:28px;margin-bottom:50px}.banner h3 a{color:#fff;text-decoration:none}.banner h3 a:hover{text-decoration:underline}.banner h4{font-size:18px;font-family:Circe-bold,sans-serif;line-height:2;letter-spacing:.4px;display:inline-block;margin-top:28px;margin-bottom:80px}.banner h4 a{color:#fff;text-decoration:none}.banner h4 a:hover{text-decoration:underline}.banner h2{line-height:1.25;font-size:32px;font-family:Circe-bold,sans-serif;padding:0 20px;margin-bottom:113px}.banner h1{line-height:1.5;font-size:2.45em;font-family:Circe-bold,sans-serif;padding:0 20px;margin-bottom:140px}@media (min-width:1280px){.banner h1{padding:0 300px}}.banner .meta-info{text-align:center;padding:0 20px;display:flex;justify-content:center;margin-top:auto}.banner .meta-info>div{display:inline-block}.banner .i-comments-w{background:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/comments-white.svg) no-repeat;width:12px;height:12px;display:inline-block;position:relative;top:2px;margin-right:4px}.banner .i-views-w{background:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/views-white.svg) no-repeat;width:12px;height:12px;display:inline-block;position:relative;top:1px;margin-right:7px}.banner .date{margin-left:-3px;margin-right:33px}.banner .comments{margin-right:20px}@media screen and (min-width:550px){.banner h2{font-size:32px}}@media screen and (min-width:800px){.banner h3{font-size:24px;line-height:1.33;letter-spacing:.6px;margin-top:49px;margin-bottom:69px}.banner h2{font-size:32px;line-height:1.17;padding:0 5%}.banner .i-views-w{top:2px;margin-right:8px}}@media screen and (min-width:1100px){.banner h2{padding:0 15%;margin-bottom:84px}}@media screen and (min-width:1256px){.banner{min-height:500px}.banner h2{padding:0 21%}}@media screen and (min-width:1486px){.single-banner .container{width:1456px;margin:0 auto}}.related-posts-section{background-color:#f3f6f9;overflow:hidden}.related-posts-section h2{font-family:Circe-bold;font-size:32px;line-height:1.33;text-align:center;margin-bottom:15px;display:inline-block;width:100%}.related-posts-section .blog-post-title{text-align:left}.related-posts-section .slick-arrow,.related-posts-section .slick-dots{display:none!important}.related-posts-section .blog-post{min-height:440px!important;margin-right:8px;outline:0}.related-posts-section .blog-post a{outline:0}.related-posts-section .related-posts{padding-left:17px;margin-bottom:65px}@media screen and (min-width:1015px){.related-posts-section{padding-bottom:1px}.related-posts-section .container{width:980px;margin:0 auto}.related-posts-section h2{font-size:32px;line-height:1.29;margin-bottom:29px;margin-top:75px}.related-posts-section .related-posts{padding-left:0;margin-bottom:72px;position:relative;left:6px}.related-posts-section .blog-post{margin-right:16px}}@media screen and (min-width:1135px){.related-posts-section .slick-arrow{display:block!important;border:0;text-indent:-9999px;position:absolute;z-index:2;outline:0;transition:all .3s;-webkit-transition:all .3s;cursor:pointer}.related-posts-section .slick-arrow:hover{opacity:.8}.related-posts-section .slick-arrow.slick-prev{background:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/chevron-left-gray.svg) no-repeat;height:40px;width:25px;left:-67px;top:200px;background-size:21px}.related-posts-section .slick-arrow.slick-next{background:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/chevron-right-gray.svg) no-repeat;background-size:21px;height:40px;width:25px;right:-57px;top:200px}}.single-subscribe-section{background:#f3f6f9;max-width:1456px;margin:0 auto}.single-subscribe{padding:0 24px 24px;margin-bottom:33px}.single-subscribe h3{color:#363636;line-height:1.5;font-size:24px;font-family:Circe,sans-serif;font-weight:400;margin-top:24px;margin-bottom:10px;display:inline-block}.single-subscribe .email-field{height:56px;border-radius:4px;width:100%;padding:10px 23px;box-sizing:border-box;border:solid 2px #f3f6f9;margin-bottom:15px;outline:0;transition:all .5s}.single-subscribe .email-field.wpcf7-not-valid{border-color:red}.single-subscribe .email-field:focus{border:solid 2px #6b88ff}.single-subscribe .email-field::-webkit-input-placeholder{color:#010101;opacity:.2}.single-subscribe .email-field::-moz-placeholder{color:#010101;opacity:.2}.single-subscribe .email-field:-ms-input-placeholder{color:#010101;opacity:.2}.single-subscribe .email-field:-moz-placeholder{color:#010101;opacity:.2}.single-subscribe .personal-data-label{cursor:pointer;display:flex}.single-subscribe .personal-data-label .check-icon{width:16px;height:16px;display:inline-block;background:#fff}.single-subscribe .personal-data-label a{color:#6b88ff;line-height:1.5;text-decoration:none}.single-subscribe .personal-data-label a:hover{text-decoration:underline}.single-subscribe .personal-data-label span{padding-left:14px;display:inline-block;line-height:1.5}.single-subscribe .personal-data-checkbox{display:none}.single-subscribe .personal-data-checkbox{display:none}.single-subscribe .personal-data-checkbox:checked+.personal-data-label .check-icon{background:#6b88ff url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/checked.svg) no-repeat center center;background-size:11px}.single-subscribe form{position:relative}.single-subscribe .btn-submit{position:absolute;top:15px;right:16px;background:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/blue-arrow.svg) no-repeat;width:24px;height:24px;border:0;text-indent:-99999px;cursor:pointer;outline:0;-webkit-transition:all .2s;-moz-transition:all .2s;-ms-transition:all .2s;-o-transition:all .2s;transition:all .2s}.single-subscribe .info-msg{position:absolute;display:none;margin:5px;font-size:15px}.single-subscribe .terms{display:none}.single-subscribe .ajax-loader{position:absolute;top:20px}.single-subscribe .wpcf7-response-output.wpcf7-validation-errors{display:none !important}@media screen and (min-width:900px){.single-subscribe-section .container{display:flex}.single-subscribe-section .phone-image{background:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/posts/single-subscribe.png) no-repeat;background-position:left -76px;margin-top:40px;min-width:271px;width:271px;height:207px;margin-left:80px;align-self:auto}.single-subscribe{margin-bottom:5px}.single-subscribe h3{font-size:24px;line-height:1.33}.single-subscribe .email-field{margin-bottom:8px;width:400px}}@media screen and (min-width:900px) and (max-width:1019px){.single-subscribe form{max-width:400px}}@media screen and (min-width:1020px){.single-subscribe .btn-submit{background-image:none;text-indent:0;height:56px;width:200px;color:#fff;border-radius:28px;background-color:#6b88ff;font-family:Circe-bold,sans-serif;top:0;left:370px}}.single-subscribe .personal-data-label span br{display:none}@media screen and (min-width:1200px){.single-subscribe-section .container{width:990px;margin:0 auto}.single-subscribe h3{margin-bottom:16px;margin-top:27px}.single-subscribe .personal-data-label span{padding-left:16px}}.post-section{margin-top:33px}.post-section .post-tags{padding:0 24px;text-align:center;margin-bottom:-15px}.post-section .post-tags ul{list-style:none;padding:0;display:flex;justify-content:center;margin:0;flex-wrap:wrap}.post-section .post-tags ul li{margin:0 10px 15px}.post-section .post-tags ul a{text-decoration:none;color:#8d97a1;font-size:12px;line-height:1.5;height:24px;border:1px solid #bdc9d5;border-radius:28px;padding:3px 20px;margin-top:0;display:inline-block;box-sizing:border-box;transition:all .2s;-webkit-transition:all .2s}.post-section .post-tags ul a:hover{background:#bdc9d5;color:#fff}.post-section.comments-area{margin-top:18px;margin-bottom:45px}.post-section.comments-area #disqus_thread{padding:0 15px}.socials{position:absolute;right:-51px;top:90px}.socials .icon{border-radius:32px;border:1px solid #bdc9d5;width:64px;height:64px;background-color:#fff;background-repeat:no-repeat;background-position:center;display:block;box-sizing:border-box;transition:background-color .2s;-webkit-transition:background-color .2s;cursor:pointer}.socials .icon.i-facebok{background-image:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/facebook.svg)}.socials .icon.i-vk{background-image:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/vk.svg)}.socials .icon.i-twitter{background-image:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/twitter.svg)}.socials .icon.i-telegram{background-image:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/telegram.svg)}.socials div{display:flex;align-content:center;align-items:center;margin-bottom:8px}.socials div>span{font-size:12px;color:#7a7f82;line-height:1.34;margin-left:12px}.socials div:hover .i-facebok{border:1px solid #3a5998;background-color:#3a5998;background-image:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/facebook-w.svg)}.socials div:hover .i-vk{border:1px solid #597ba0;background-color:#597ba0;background-image:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/vk-w.svg)}.socials div:hover .i-twitter{border:1px solid #00aced;background-color:#00aced;background-image:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/twitter-w.svg)}.socials div:hover .i-telegram{border:1px solid #41b4e6;background-color:#41b4e6;background-image:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/telegram-w.svg)}.author-section{padding:17px 11px 0 16px;margin-bottom:48px}.author-section .author-avatar{width:56px;height:56px;background-color:#92999d;border-radius:50%;background-size:contain;flex:0 0 56px}.author-section .author-box{display:flex;margin-bottom:31px}.author-section .initials{padding-left:17px;padding-top:8px}.author-section .initials .name{color:#6b88ff;line-height:1.5;text-decoration:none;margin-bottom:3px;display:inline-block;border-bottom:1px solid transparent;transition:all .2s;-webkit-transition:all .2s}.author-section .initials .name:hover{border-bottom:1px solid #6b88ff;transition:all .2s;-webkit-transition:all .2s}.author-section .initials .profession{color:#363636}.author-section .redaction-opinion{line-height:1.34;font-size:12px;color:#7a7f82}.author-section .redaction-opinion a{color:#6b88ff}.author-section .redaction-opinion a:hover{text-decoration:none}.post-content{padding:0 16px}.post-content h3{font-family:Circe;font-weight:400;font-size:24px;line-height:1.34;margin-bottom:15px;color:#363636}.post-content .post-subtitle{text-align:center}.post-content p{line-height:1.5;margin-top:0;color:#000;padding-bottom:9px}.post-content .empty-paragraph{margin:0;padding:0}.post-content h2{margin-top:27px;margin-bottom:24px;color:#000;line-height:1.33;font-size:32px;font-family:Circe-bold}.post-content strong{font-family:Circe-bold}.post-content .vk-banner{padding-top:7px;margin-bottom:30px;text-align:center}.post-content .vk-banner img{width:100%}.post-content .vk-banner p{font-size:12px;line-height:1.34;color:#7a7f82;text-align:center}.post-content .comment-banner{margin-bottom:40px}.post-content .comment-banner img{max-width:100%;margin:0 auto;display:block}.post-content .comment-banner p{color:#7a7f82;line-height:1.34;font-size:12px;text-align:center;margin-top:8px}.post-content blockquote{color:#363636;border-left:4px solid #ff4476;padding-left:24px;box-sizing:border-box;margin:0 0 48px;padding:12px 24px 8px}.post-content blockquote span{margin-bottom:2px;display:inline-block}.post-content blockquote a{color:#ff4476;line-height:1.5}.post-content blockquote a:hover{text-decoration:none}.post-content blockquote p{margin:0!important;padding:0!important}.post-content figure{max-width:100%;margin-top:25px!important;margin-bottom:36px!important;width:100%!important}.post-content img{max-width:100%;height:auto}.post-content figcaption{margin:10px auto;width:90%;color:#7a7f82;line-height:1.34;font-size:12px;text-align:center}.post-content p:blank{color:red}.post-content ul li{line-height:1.5}.post-content .aligncenter{margin:0 auto;text-align:center}.post-content .alignleft{margin:0 auto;text-align:left}.post-content .alignright{margin:0 auto;text-align:right}@media screen and (min-width:660px){.post-section.comments-area{margin-top:18px;margin-bottom:45px}.post-section.comments-area #disqus_thread{padding:0 57px}.author-section{display:flex;justify-content:space-between;align-items:flex-start;align-content:flex-start;padding:51px 11px 0 43px}.author-section .author-box{min-width:300px}.author-section .author-box .author-avatar{width:96px;height:96px;flex:0 0 96px;margin-top:10px}.author-section .author-box .name{font-size:18px;line-height:24px}.author-section .author-box .profession{line-height:1.5;font-size:16px}.author-section .author-box .initials{padding-left:21px}.author-section .redaction-opinion{border-left:2px solid #dee4ea;max-width:360px;margin-right:36px;margin-top:7px;padding:9px 3px 7px 22px;box-sizing:border-box}}@media screen and (max-width:999px){.post-section p{margin-bottom:14px}.post-section p.text-1{margin-bottom:66px}.post-section .content-list br{display:none}}@media screen and (min-width:1000px){.post-section{margin-top:49px}.post-section .container{width:970px;margin:0 auto;position:relative}.post-section .post-tags{margin-bottom:27px}.post-section .post-tags ul a{font-size:16px;line-height:2;color:#8d97a1;height:40px;padding:4px 45px}.post-section .post-content h3{padding:0 20px;margin-bottom:38px}.post-section .post-content h2{font-size:32px;line-height:1.25;padding:0 32px;margin-top:15px;margin-bottom:33px}.post-section .post-content p{padding:0 32px;margin-bottom:24px}.post-section .post-content p.text-1{margin-bottom:74px;padding:0 32px}.post-section .post-content .vk-banner{padding-top:12px}.post-section .post-content .vk-banner img{display:block;margin:0 auto;max-width:100%;width:auto}.post-section .post-content .vk-banner p{max-width:700px;padding:14px 87px;box-sizing:border-box;margin:0 auto}.post-section .post-content ul{list-style:none;margin-top:23px}.post-section .post-content ul.content-list{margin-bottom:76px}.post-section .post-content ul li{line-height:1.5;font-size:16px;position:relative;padding-left:27px;padding-right:27px;box-sizing:border-box}.post-section .post-content ul li:before{content:'';display:block;position:absolute;left:4px;top:8px;width:4px;height:4px;background:#000;border-radius:50%}.post-section .post-content .title-2{margin-bottom:36px}.post-section .post-content blockquote{padding:8px 24px 8px;margin-left:32px;margin-bottom:34px}.post-section .post-content figure{max-width:100%;margin-bottom:40px!important}.post-section .post-content figcaption{margin:8px auto 10px;width:75%;color:#7a7f82;line-height:1.34;font-size:12px;text-align:center}.post-section .post-content img{max-width:100%;width:auto}.post-section .post-content .comment-banner{padding-top:16px}.post-section .post-content .comment-banner img{margin:0 auto;display:block}.post-section .post-content img{margin-top:16px}}@media screen and (max-width:1160px){.socials{display:none}}@media screen and (min-width:1360px){.socials{right:-181px;top:90px}}.specialists{padding-bottom:54px;background:#f2f5f9}.specialists-inner{background-color:#f3f6f9;padding-bottom:31px}.specialists-inner h2{font-family:Circe-bold;font-size:32px;line-height:1.33;text-align:center;display:inline-block;width:100%;margin-top:32px;margin-bottom:16px}.specialists-inner .make-an-order{margin-top:33px}.specialists-inner .make-an-order a{border-radius:28px;background-color:#ff4476;height:56px;line-height:1.5;font-family:Circe-bold;font-size:16px;text-align:center;text-decoration:none;line-height:56px;color:#fff;border:0;min-width:312px;margin:0 auto;display:block;box-sizing:border-box;transition:all .2s;-webkit-transition:all .2s;cursor:pointer;outline:0}.specialists-inner .make-an-order a:hover{opacity:.8}.specialists-inner .people-box{display:flex;justify-content:center;padding-left:16px}.specialists-inner .people-box .human-card{background:#fff;padding:16px;width:232px;box-sizing:border-box;min-height:376px;margin-right:16px;border-radius:8px;outline:0;text-decoration:none}.specialists-inner .people-box .human-card:last-of-type{margin-right:0}.specialists-inner .people-box .human-card:hover .photo{opacity:.8}.specialists-inner .people-box .human-card .photo-wrap{width:200px;height:200px;margin-bottom:16px;overflow:hidden}.specialists-inner .people-box .human-card .photo{width:100%;height:100%;background-size:cover;background-repeat:no-repeat;transition:all .3s}.specialists-inner .people-box .human-card .name{font-family:Circe-bold;font-size:16px;line-height:1.5;color:#010101;display:block}.specialists-inner .people-box .human-card .profession{font-size:16px;line-height:18px;color:#010101;display:block;margin-bottom:13px}.specialists-inner .people-box .human-card .exp,.specialists-inner .people-box .human-card .n-projects{line-height:1.34;opacity:.6;color:#000;font-size:12px}.specialists-inner .people-box .human-card .skills{display:flex;flex-wrap:wrap;margin:0;padding:0}.specialists-inner .people-box .human-card .skills li{color:#6b88ff;line-height:1.2;font-size:14px;letter-spacing:-.4px;margin-right:3px}.specialists-inner .people-box .human-card .skills li a{color:#6b88ff;text-decoration:none}.specialists-inner .people-box .human-card .skills li a:hover{text-decoration:underline}.specialists-inner .people-box .human-card .i-time{background:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/time.svg) no-repeat;width:8px;height:8px;display:inline-block;margin-right:8px}.specialists-inner .people-box .human-card .i-pojects{background:url(//blog.chinese-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/hr-check.svg) no-repeat;width:8px;height:8px;display:inline-block;margin-right:4px;position:relative;top:1px}.specialists-inner .people-box .human-card .n-projects{margin-right:15px}.specialists-inner .people-box .human-card .meta{display:flex;justify-content:space-between;margin-bottom:14px}.specialists-inner .people-box .human-card .skills{list-style:none}@media screen and (min-width:732px){.specialists-inner .people-box{width:732px;margin:0 auto;padding-left:0}.specialists-inner h2{font-size:32px;line-height:1.5;margin-top:32px;margin-bottom:8px}.make-an-order{margin-top:33px}.make-an-order a{width:400px;min-width:auto}}@media screen and (min-width:950px){.specialists{background:0 0}.specialists .container{width:912px;margin:0 auto}.specialists-inner{border-radius:8px}}@font-face{font-family:icomoon;src:url(/wp-content/themes/rubrain-blog/assets/fonts/IcoMoon/IcoMoon-Free.eot);src:url(/wp-content/themes/rubrain-blog/assets/fonts/IcoMoon/IcoMoon-Free.eot#iefix) format('embedded-opentype'),url(/wp-content/themes/rubrain-blog/assets/fonts/IcoMoon/IcoMoon-Free.ttf) format('truetype'),url(/wp-content/themes/rubrain-blog/assets/fonts/IcoMoon/IcoMoon-Free.woff) format('woff'),url(/wp-content/themes/rubrain-blog/assets/fonts/IcoMoon/IcoMoon-Free.svg#icomoon) format('svg');font-weight:400;font-style:normal;font-display:block}[class*=" icon-"],[class^=icon-]{font-family:icomoon!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-mob-user:before{content:"\e934"}.icon-arrow-bold{position:relative;right:3px;font-size:10px;-webkit-transform:rotate(90deg);transform:rotate(90deg);display:inline-block;color:#d2deea;width:inherit;height:inherit;-webkit-transition:.3s;transition:.3s;z-index:30}.icon-arrow-bold:before{content:"\e938"}.header .login-button{height:40px;color:#6b88ff;border:1px solid #6b88ff;background:0 0;padding:0 16px;width:100%;cursor:pointer;border-radius:52px;-webkit-transition:.3s;transition:.3s;outline:0 !important;white-space:nowrap;display:-webkit-inline-box;display:inline-flex;-webkit-box-align:center;align-items:center;overflow:hidden;text-overflow:ellipsis;-webkit-box-pack:center;justify-content:center}.header .login-button .icon-mob-user{font-size:8px;margin-right:.5rem}.author-section .initials .name{cursor:text}.author-section .initials .name:hover{border-bottom:1px solid transparent}@media screen and (min-width:1000px){.header .container{width:1340px}.header .header-logo{padding-left:12px}.header .header-logo img{width:150px;margin-top:10px}.header .main-header-nav{-webkit-box-align:center;align-items:center;display:-webkit-box;display:flex;-webkit-box-flex:1;flex:1 1 50%;-webkit-box-pack:justify;justify-content:space-between}.header .main-header-nav ul{margin:15px 0 0 47px}.header .main-header-nav ul li:first-of-type{margin-left:0}.header .main-header-nav ul li{margin-right:48px}.green-line:after{background:linear-gradient(to right,rgba(92,231,147,.5),rgba(92,231,147,.5))}.header .right-col{margin-top:14px;-webkit-box-align:center;align-items:center;display:-webkit-box;display:flex;order:3;margin-left:auto}.header .blog{margin-right:32px;font-weight:700;color:#010101;text-decoration:none;transition:.3s all}.header .blog:hover{color:#ff4476}.header .services{position:relative;margin-right:64px;display:flex;font-weight:700;font-size:16px;cursor:pointer;transition:.3s all}.header .services .label{position:relative;z-index:30;padding-right:16px;display:inline}.header .services .label:hover{color:#ff4476}.header .services.active .icon{left:3px;transform:rotate(-90deg)}.header .services-submenu{top:-18px;left:-123px;width:210px;position:absolute;box-shadow:0 3px 50px 0 rgba(107,136,255,.2);background:#fff;z-index:1003;padding:51px 16px 13px;border-radius:8px;display:-webkit-box;display:flex;flex-direction:column;text-align:right;box-sizing:border-box;z-index:10}.header .services-submenu .services-submenu-item a{display:block;padding:8px 24px 14px 10px;cursor:pointer;-webkit-transition:.3s;transition:.3s;font-weight:400;color:#000;white-space:nowrap;border-bottom:1px solid var(--input-focus-border-color);text-decoration:none;transition:.3s all}.header .services-submenu .services-submenu-item a:hover{color:#6b88ff;background:0 0}.mobile-menu-wrap{display:none}}@media (max-width:1340px) and (min-width:1000px){.header .container{width:100%;box-sizing:border-box;justify-content:space-between}.header .main-header-nav{flex:none}.header .services{margin-right:25px}.header .main-header-nav ul{margin:15px 0 0}}@media (max-width:999px) and (min-width:300px){header .right-col{display:none}header .burger{width:16px}header .container{align-items:center}header .burger span{height:2px;background:#000}.mobile-menu-wrap{display:block;position:relative;z-index:99;position:fixed;top:0;left:0;width:250px;height:100%;background:#fff;opacity:1;overflow-y:scroll}.mobile-menu-wrap .menu-wrap{padding:32px 0;margin-top:56px;height:calc(100% - 118px)}.mobile-menu-wrap .menu-wrap .sandwich-menu-wrap{height:100%;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:justify;justify-content:space-between}.mobile-menu-close{position:absolute;line-height:24px;font-size:15px;font-weight:700;position:absolute;left:9px;top:19px;display:block;margin-left:12px;color:#000;text-decoration:none}.mobile-menu-close span{position:relative;display:inline-block;top:3px;font-size:30px;font-weight:500;line-height:10px;padding-right:5px}.mobile-menu-wrap .menu-wrap .sandwich-menu-wrap ul{margin:0;padding:0;list-style:none}.mobile-menu-wrap .menu-wrap .sandwich-menu-wrap li{margin-bottom:19px;padding-left:40px}.mobile-menu-wrap .menu-wrap .sandwich-menu-wrap li a{font-size:15px;color:#000;text-decoration:none;font-weight:700;background-position:0 .95em;background-repeat:repeat-x;background-size:8px 4px}.green{background-image:-webkit-gradient(linear,left top,right top,from(rgba(92,231,147,.5)),to(rgba(92,231,147,.5)));background-image:linear-gradient(to right,rgba(92,231,147,.5),rgba(92,231,147,.5))}.red{background-image:-webkit-gradient(linear,left top,right top,from(rgba(255,68,118,.5)),to(rgba(255,68,118,.5)));background-image:linear-gradient(to right,rgba(255,68,118,.5),rgba(255,68,118,.5))}.blue{background-image:-webkit-gradient(linear,left top,right top,from(rgba(107,136,255,.5)),to(rgba(107,136,255,.5)));background-image:linear-gradient(to right,rgba(107,136,255,.5),rgba(107,136,255,.5))}.mobile-menu-wrap .menu-wrap .sandwich-menu-wrap .landings-block{cursor:pointer}.mobile-menu-wrap .menu-wrap .sandwich-menu-wrap .landings-block .icon{color:#6b88ff}.mobile-menu-wrap .menu-wrap .sandwich-menu-wrap .landings-block .label{margin-right:16px;font-size:15px;color:#000;font-weight:700}.mobile-menu-wrap .menu-wrap .sandwich-menu-wrap .mobile-submenu-services{margin-bottom:10px;padding:24px 0;color:#3f4040;backdrop-filter:blur(9px);background-color:#f5f8f9}.mobile-menu-wrap .menu-wrap .sandwich-menu-wrap .mobile-submenu-services li a{color:#3f4040;font-weight:400}.mobile-menu-socials{margin-left:35px;display:inline-block}.mobile-menu-socials a:first-child{margin-left:0}.mobile-menu-socials a{display:-webkit-inline-box;display:inline-flex;margin-left:2px}.mobile-submenu-active .icon{transform:rotate(-90deg)}body{min-width:auto}body.mobile-menu-active{overflow:hidden}body.page .menu-burger-box,body.single .menu-burger-box{color:#f3f6f9}body.page .menu-burger-box .burger span,body.single .menu-burger-box .burger span{background:#000}.mobile-menu-active .menu-burger-box:before{content:'';opacity:.5;top:0;right:0;position:absolute;display:block;height:100%;width:calc(100% - 150px);background:#000;z-index:99}.header .login-button{height:24px;font-weight:400}.header-logo img{width:113px;margin-top:12px;margin-left:0}}.post-section ol li{margin-bottom:20px}.rubrain_breadcrumbs{text-align:center;margin:30px 0;display:flex;justify-content:center;align-items:center;flex-wrap:wrap}.rubrain_breadcrumbs .breadcrumbs__link{color:#6b88ff;text-decoration:none;display:inline-block;margin-bottom:5px;font-size:18px}.rubrain_breadcrumbs .breadcrumbs__separator{display:inline-block;width:20px;height:2px;background:#f1f1f1;margin:-4px 5px 0}.rubrain_breadcrumbs .breadcrumbs__current{font-size:18px;color:#8d97a1;margin-bottom:5px}@media screen and (max-width:600px){.rubrain_breadcrumbs .breadcrumbs__current{padding:0 10px}}.iframe-holder{position:relative;padding-bottom:56.25%;height:0}.iframe-holder iframe{position:absolute;top:0;left:0;width:100%;height:100%}.subscribe-section{margin-bottom:90px}span.wpcf7-not-valid-tip{font-size:14px}.subscribe-section .wpcf7-list-item label,.single-subscribe .wpcf7-list-item label{display:flex;align-items:center}.single-subscribe .personal-data-label>span{display:flex;flex-direction:column}.single-subscribe-section+footer,.blog-posts-section+.single-subscribe-section{margin-top:90px}@media (max-width:767px){.subscribe{padding:0 20px}.subscribe-section .subscribe .btn-submit{position:static !important}.subscribe-section{margin-bottom:30px}.single-subscribe-section+footer,.blog-posts-section+.single-subscribe-section{margin-top:30px}.footer-box-1{width:100%}}.footer-contacts{gap:10px}.footer-contacts>div:first-child{flex-basis:75px !important;flex-grow:0 !important}.footer-contacts>div:first-child p{margin:4px 0 0}footer p,footer a,.footer .copyright-box p,.footer .footer-center p{font-weight:400;font-size:16px;line-height:24px;color:#33353c}.modal{font-family:-apple-system,Circe,sans-serif,BlinkMacSystemFont,avenir next,avenir,helvetica neue,helvetica,ubuntu,roboto,noto,segoe ui,arial,sans-serif}#modal-3{display:none}#modal-3.is-open{display:block}.modal__overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);display:flex;justify-content:center;align-items:center;z-index:9999}.modal__container{background-color:#fff;padding:30px;max-width:600px;max-height:100vh;border-radius:4px;overflow-y:auto;box-sizing:border-box}.modal__header{display:flex;justify-content:space-between;align-items:center}.modal__title{word-break:break-word;font-size:32px;font-weight:700}.modal__close{background:0 0;border:0}.modal__header .modal__close:before{content:"\2715"}.modal__content{margin-top:2rem;margin-bottom:2rem;line-height:1.5;color:rgba(0,0,0,.8)}.modal__btn{font-size:.875rem;padding-left:1rem;padding-right:1rem;padding-top:.5rem;padding-bottom:.5rem;background-color:#e6e6e6;color:rgba(0,0,0,.8);border-radius:.25rem;border-style:none;border-width:0;cursor:pointer;-webkit-appearance:button;text-transform:none;overflow:visible;line-height:1.15;margin:0;will-change:transform;-moz-osx-font-smoothing:grayscale;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(0);transform:translateZ(0);transition:-webkit-transform .25s ease-out;transition:transform .25s ease-out;transition:transform .25s ease-out,-webkit-transform .25s ease-out}.modal__btn:focus,.modal__btn:hover{-webkit-transform:scale(1.05);transform:scale(1.05)}.modal__btn-primary{background-color:#00449e;color:#fff}.footer-modal{cursor:pointer}@keyframes mmfadeIn{from{opacity:0}to{opacity:1}}@keyframes mmfadeOut{from{opacity:1}to{opacity:0}}@keyframes mmslideIn{from{transform:translateY(15%)}to{transform:translateY(0)}}@keyframes mmslideOut{from{transform:translateY(0)}to{transform:translateY(-10%)}}.micromodal-slide{display:none}.micromodal-slide.is-open{display:block}.micromodal-slide[aria-hidden=false] .modal__overlay{animation:mmfadeIn .3s cubic-bezier(0,.0,.2,1)}.micromodal-slide[aria-hidden=false] .modal__container{animation:mmslideIn .3s cubic-bezier(0,0,.2,1)}.micromodal-slide[aria-hidden=true] .modal__overlay{animation:mmfadeOut .3s cubic-bezier(0,.0,.2,1)}.micromodal-slide[aria-hidden=true] .modal__container{animation:mmslideOut .3s cubic-bezier(0,0,.2,1)}.micromodal-slide .modal__container,.micromodal-slide .modal__overlay{will-change:transform}.address-popup__address-country{margin-bottom:8px;font-weight:700;font-size:24px}.address-popup__address{margin-bottom:24px}.address-popup__address-phone{color:#33353c;text-decoration:none}.address-popup__addresses{margin-top:32px}.address-popup__address p{margin:0}div.wpcf7-mail-sent-ok{display:none !important}
.slick-slider{position:relative;display:block;box-sizing:border-box;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{position:relative;overflow:hidden;display:block;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{position:relative;left:0;top:0;display:block;margin-left:auto;margin-right:auto}.slick-track:after,.slick-track:before{content:"";display:table}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{float:left;height:100%;min-height:1px;display:none}[dir=rtl] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}div.scrollWrapper{position:relative;overflow:hidden;width:100%;height:100%}div.scrollableArea{position:relative;width:auto;height:100%}.blog-slide{display:none}.blog-slide:first-child,.blog-slide.slick-slide{display:block}.single-subscribe .personal-data-label .check-icon,.subscribe .personal-data-label .check-icon{width:18px;height:18px;position:relative;top:20px;border:2px solid #f3f6f9;box-sizing:border-box}.subscribe-section .subscribe .btn-submit{padding:0 60px;font-size:16px;position:relative;left:-40px;top:2px}.subscribe-section .subscribe .email-field{padding:16px 21px 13px}
body{font-family:-apple-system,BlinkMacSystemFont,"Circe,Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"}.wrap[_ngcontent-my-app-c6]>[_ngcontent-my-app-c6]{display:-webkit-box;display:flex}.f-col-1[_ngcontent-my-app-c6]{max-width:336px}.f-col-2[_ngcontent-my-app-c6]{max-width:448px}.footer-center{text-align:left;line-height:1.5}.f-col-3[_ngcontent-my-app-c6]{max-width:312px}.f-col-4[_ngcontent-my-app-c6]{max-width:232px}.email-box{text-align:left}.f-col-3 li{list-style:none}.copyright-box,.email-box,.footer-center .footer-social{width:100%}.copyright-box,.email-box,.footer-center{width:100%}.social-link{margin-right:8px;display:-webkit-inline-box;display:inline-flex;vertical-align:middle}.email-box ul{margin:-7px;line-height:13px}@media (max-width:768px){.header .header-logo img{width:150px;margin-top:15px!important}.footer-container{grid-template-columns:1fr;margin-bottom:50px;grid-gap:24px;font-size:14px;line-height:1.5;display:grid!important;padding:0 29px!important}.blue{background-image:none}}@media (min-width:769px) and (max-width:1020px){.copyright-box,.email-box,.footer-center .footer-social{width:50%}.footer-container{padding:0 29px!important;font-size:15px}.blue{background-image:none}}.footer .container{padding:53px 20px}.more-posts.header-create-project{height:40px;margin:0;width:auto;padding:0 45px;top:-10px}.header .main-header-nav ul{margin:25px 0 0 110px}.header .services{margin-right:0}.header .login-button{height:22px;color:#000;border:0;background:0 0;font-weight:700;font-size:18px;padding:0;border-radius:0}.header .login-button img{padding-right:8px;position:relative;top:-2px}.main-header-nav{font-size:16px;font-weight:700}.header .main-header-nav ul li{margin-right:48px}.header .blog{margin-right:0}.blog-post .blog-post-title:hover span{border-bottom:none}.blog-post .blog-post-title span{border-bottom:none}.blog-post .blog-post-title{overflow:hidden;text-overflow:ellipsis;display:-moz-box;-moz-box-orient:vertical;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;line-clamp:4;box-orient:vertical}.blog-post>a{color:#000;text-decoration:none}:root{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}.footer-container{display:flex;flex-wrap:wrap;max-width:83em;margin:0 auto;padding:4em 0}[class*=footer-box-]{flex:100%}[class*=footer-box-]>ul{list-style:none;padding-left:0;margin:0;font-size:.875rem}[class*=footer-box-]>ul>li+li{margin-top:1em}[class*=footer-box-]>h3,[class*=footer-box-]>ul>li>a{color:#fff;text-transform:uppercase}[class*=footer-box-]>ul>li>a{text-decoration:none}@media screen and (min-width:40rem){[class*=footer-box-]{flex:50%}}@media screen and (min-width:60rem){[class*=footer-box-1]{flex:40%}[class*=footer-box-2]{flex:50%}[class*=footer-box-3]{flex:12%}[class*=footer-box-4]{flex:23%}.social-box{text-align:right}.footer .container{width:1382px}}@media screen and (min-width:1280px){.f-col-4.ng-star-inserted{display:block;width:90%}.header .container{width:1340px;padding:0 40px}}.footer{overflow:hidden;background:#f3f6f9}[class*=footer-box-]{min-height:100px}.related-posts-section .blog-post{min-height:470px !important;margin-right:8px;outline:0}.blog-slider-box .blog-slide{position:relative}.blog-slider-box .blog-slide:before{content:'';display:block;position:absolute;width:100%;height:100%;top:0;z-index:1;background:rgba(0,0,0,.5)}.slide-content{z-index:2;position:relative;text-shadow:1px 1px 2px #000,0 0 1em #000}.banner{position:relative}.banner:before{content:'';display:block;position:absolute;width:100%;height:100%;top:0;z-index:1;background:rgba(0,0,0,.5)}.banner-content{z-index:2;position:relative;text-shadow:1px 1px 2px #000,0 0 1em #000}.meta-info{position:relative;z-index:2}.login-button{font-size:16px !important}.blog-slider-box{margin-top:30px}.icon.icon-arrow-bold{color:#000}.label{padding-right:5px !important}.more-posts.header-create-project{font-weight:400;font-size:16px;font-family:Circe,sans-serif}.services-submenu-item{font-weight:400;font-size:16px;font-family:Circe,sans-serif}.sub-link{font-family:Circe,sans-serif!important}@media screen and (min-width:1000px){.header .services-submenu{top:40px;left:-70px;width:210px;position:absolute;box-shadow:0 3px 50px 0 rgba(107,136,255,.2);background:#fff;z-index:1003;padding:25px 16px 13px;border-radius:8px;display:-webkit-box;display:flex;flex-direction:column;text-align:left;box-sizing:border-box;z-index:10}.header .services-submenu .services-submenu-item a{display:block;padding:8px 24px 14px;cursor:pointer;-webkit-transition:.3s;transition:.3s;font-weight:400;color:#000;white-space:nowrap;border-bottom:1px solid var(--input-focus-border-color);text-decoration:none;transition:.3s all}}.subscribe .personal-data-label .check-icon{border:1px solid #000}div.wpcf7-validation-errors,div.wpcf7-acceptance-missing{border:1px solid red}div.wpcf7-response-output{margin:0 0 1em;padding:.2em 1em}input[type=checkbox]{-ms-transform:scale(1.5);-moz-transform:scale(1.5);-webkit-transform:scale(1.5);-o-transform:scale(1.5);transform:scale(1.5);padding:0;height:16px;width:16px}span.wpcf7-list-item{display:inline-block;margin:0 0 0 .4em}.accept-terms{padding-left:10px !important}.footer-box-1{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:end;justify-content:flex-end;display:inline-flex}.footer-box-2{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:end;justify-content:flex-end;display:inline-flex}.footer-box-3{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:start;justify-content:flex-start;display:inline-flex}.footer-box-4{-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;-webkit-box-pack:end;justify-content:flex-end;display:inline-flex}.footer .email-box .email,.footer a{margin:4px 0 0;display:inline-block;color:#6b88ff;text-decoration:none}.ng-star-inserted.line{margin-top:5px}.support-links{margin:0;padding:0}.link.footer.ng-star-inserted.support{display:inline-flex}.social-link.ng-star-inserted{margin-right:8px}input[type=checkbox]{transform:none}.single-subscribe .personal-data-label span{padding-left:0}.blog-post-meta .comments{display:none}.banner .comments{display:none !important}.single-banner{margin-top:30px}.phone-image{z-index:99}.header .header-logo img{width:150px;margin-top:35px}.header .blog{font-weight:400}.footer .copyright-box{margin-bottom:0}.ng-star-inserted.contacts{margin-top:4px}
.post-content .aligncenter{margin-left:auto;margin-right:auto;display:block}
:root{--wpforms-field-border-radius:3px;--wpforms-field-background-color:#fff;--wpforms-field-border-color:rgba(0,0,0,.25);--wpforms-field-text-color:rgba(0,0,0,.7);--wpforms-label-color:rgba(0,0,0,.85);--wpforms-label-sublabel-color:rgba(0,0,0,.55);--wpforms-label-error-color:#d63637;--wpforms-button-border-radius:3px;--wpforms-button-background-color:#066aab;--wpforms-button-text-color:#fff;--wpforms-field-size-input-height:43px;--wpforms-field-size-input-spacing:15px;--wpforms-field-size-font-size:16px;--wpforms-field-size-line-height:19px;--wpforms-field-size-padding-h:14px;--wpforms-field-size-checkbox-size:16px;--wpforms-field-size-sublabel-spacing:5px;--wpforms-field-size-icon-size:1;--wpforms-label-size-font-size:16px;--wpforms-label-size-line-height:19px;--wpforms-label-size-sublabel-font-size:14px;--wpforms-label-size-sublabel-line-height:17px;--wpforms-button-size-font-size:17px;--wpforms-button-size-height:41px;--wpforms-button-size-padding-h:15px;--wpforms-button-size-margin-top:10px}
.wp-container-3.wp-container-3{flex-wrap:nowrap}
适用于 node js 开发人员的顶级 npm 软件包 - Smartbrain Blog 适用于 node js 开发人员的顶级 npm 软件包
文章集合,有用的服务和工作机会,还有免费讲座和奖金的公告。加入我们吧!
订阅我们每周新闻的通讯
谢谢,您已成功订阅时事通讯!
首页 News 适用于 node js 开发人员的顶级 npm 软件包 在无垠的编程宇宙中,Node.js 如同一颗璀璨的恒星,以其非阻塞I/O模型和事件驱动机制,吸引着无数开发者的目光。而在这颗恒星的轨道上,npm(Node Package Manager)则是构成其生态系统的行星群,提供了丰富多彩的工具和库,助力开发者在构建应用的征途上乘风破浪。今天,我们将带领大家遨游在这片星辰大海,探索那些在Node.js开发者的工具箱中不可或缺的npm宝藏。
本文将为您精选出顶尖的npm包,这些包不仅在功能上覆盖了从前端到后端的各个方面,而且在性能和稳定性上都得到了社区的广泛认可。无论您是一位刚入门的新手,还是一位经验丰富的老手,这些npm包都将是您在Node.js开发旅程中的得力助手。接下来,让我们一起揭开这些npm包的神秘面纱,发现它们如何让Node.js的世界更加精彩纷呈。
目录
Node.js开发者必备的npm神器 作为Node.js开发者,我们都知道npm是我们的得力助手,它为我们提供了海量的包来简化开发流程。以下是一些不可或缺的npm包,它们能够帮助你提高效率、优化代码,甚至是解决一些棘手的问题。
首先,express 是一个灵活的Node.js Web应用框架,提供了一系列强大的功能,帮助你创建各种Web应用和API。接下来,mongoose 是一个针对MongoDB的对象数据模型库,它提供了一种基于模式的解决方案来模型化你的数据。此外,async 是一个提供强大异步控制流功能的库,它可以帮助你避免回调地狱。还有,lodash 提供了一套强大的工具函数,用于处理数组、数字、对象、字符串等,极大地提高了代码的可读性和效率。
包名 功能描述 星级 express Web应用框架 ★★★★★ mongoose MongoDB对象数据模型 ★★★★☆ async 异步操作控制 ★★★★☆ lodash JavaScript实用工具库 ★★★★★
此外,nodemon 是一个在开发过程中非常有用的工具,它会监视你的代码变化,并自动重启服务器。这样,你就不需要在每次修改代码后手动重启服务器了。dotenv 是一个简单的环境变量管理工具,它可以让你将配置信息存储在环境中,而不是在代码中硬编码,这对于保护敏感信息至关重要。最后,jest 是一个令人愉快的JavaScript测试框架,它集成了断言、模拟和快照功能,让测试变得简单而有趣。
nodemon - 监视代码变化自动重启服务器dotenv – 管理环境变量jest – JavaScript测试框架这些npm包只是冰山一角,但它们已经足够让你的Node.js开发之旅更加顺畅。不断探索和尝试新的包,你会发现更多有助于提升你开发效率和代码质量的神器。
VIDEO
深入解析Express框架的无限可能 在Node.js的开发过程中,Express框架无疑是最受欢迎的选择之一。它的设计哲学是提供小型、健壮的工具集,使得开发者能够快速构建强大的web应用。Express的无限可能性源自于它的灵活性和扩展性,这得益于大量的npm包,这些包可以无缝集成到Express应用中,为开发者提供额外的功能和工具。
首先,我们来看一些基础但不可或缺的npm包。body-parser 是一个中间件,用于处理JSON, Raw, Text和URL编码的数据。morgan 是一个日志中间件,非常适合监控请求和调试。cors 是用来配置CORS(跨源资源共享),它允许你指定哪些资源可以被客户端访问。以下是一个简单的列表,展示了这些基础包的功能:
body-parser : 解析客户端请求,支持不同的请求体。morgan : 生成日志,帮助开发者了解应用的运行情况。cors : 管理跨域问题,提升应用的安全性和可访问性。除了基础包,还有一些高级npm包可以让你的Express应用更上一层楼。passport 是一个强大的身份验证中间件,支持多种策略,如OAuth和本地验证。helmet 帮助你为应用增加安全性,通过设置各种HTTP头部来保护你的应用。socket.io 允许你实现实时双向通信。下面的表格简要介绍了这些高级包的用途:
passport 提供多种登录验证策略,易于集成和扩展。 helmet 通过设置HTTP头部增强应用的安全性。 socket.io 实现实时通信,适用于聊天应用和游戏。
通过这些npm包,Express框架的潜力得到了充分的发挥,使得开发者能够构建出既快速又安全的web应用。无论是基础功能的扩展还是高级特性的集成,Express与npm生态系统的结合为开发者打开了一扇通往高效开发的大门。
Mongoose与MongoDB:数据库操作的绝佳搭档 在Node.js的开发过程中,与数据库的交互是不可或缺的一环。这时候,Mongoose 就像是一位得力的助手,它提供了一个直观、灵活的数据库对象模型,让开发者能够以一种更加结构化和模块化的方式来处理MongoDB数据库的操作。Mongoose的模型定义非常直观,支持中间件和验证机制,极大地简化了文档的创建、查询、更新和删除等数据库操作。
使用Mongoose,开发者可以轻松定义数据模型的架构,通过简单的配置即可实现数据类型定义、默认值、验证等功能。下面是一些常用的Mongoose方法的列表:
find() – 用于检索数据库中符合条件的所有文档。findById() – 根据文档的ID来检索特定的文档。findOne() – 查找符合条件的第一个文档。create() – 创建一个新的文档并保存到数据库中。update() – 更新一个或多个文档。deleteOne() / deleteMany() – 删除一个或多个符合条件的文档。为了更直观地展示Mongoose在实际项目中的应用,下面是一个简单的数据模型定义和操作的例子:
操作 代码示例 定义模型 const User = mongoose.model('User', { name: String, age: Number });
创建文档 User.create({ name: 'Alice', age: 25 });
查询文档 User.find({ age: { $gte: 18 } });
更新文档 User.updateOne({ name: 'Alice' }, { $set: { age: 26 } });
删除文档 User.deleteOne({ name: 'Alice' });
通过这些简洁而强大的方法,Mongoose极大地提升了开发效率,使得Node.js开发者可以更加专注于业务逻辑的实现,而不必过多地关注底层数据库操作的复杂性。
Async/Await的魔法:Async库简化异步编程 在Node.js的世界里,异步编程是一项基本技能,但它的复杂性有时会让开发者头疼。幸运的是,有一些强大的npm包可以帮助我们简化这一过程。**Async**库就是其中的佼佼者,它提供了一系列强大的工具,使得异步流程控制变得既简单又优雅。使用Async库,你可以避免深层的回调嵌套,也就是所谓的”回调地狱”,并且能够以一种更接近同步编程的方式来编写代码。
例如,Async库中的async.waterfall
和async.series
方法允许你按顺序执行一系列异步函数,而不需要将它们嵌套起来。此外,async.parallel
可以让你并行执行多个函数,并在它们都完成时收集结果。下面是一些Async库中最受欢迎的函数,它们可以极大地提升你的编程效率:
async.waterfall – 按顺序执行异步函数,前一个函数的结果是下一个函数的输入。async.series – 顺序执行一组异步函数,每个函数完成后才开始下一个。async.parallel – 并行执行一组异步函数,所有函数同时开始。async.auto – 自动处理依赖关系,只在必要的时候执行函数。async.queue – 创建一个任务队列,按照设定的并发数执行任务。async.retry – 自动重试失败的异步函数。此外,为了更直观地展示Async库的一些常用功能,下面是一个简单的表格,列出了几个常用函数及其简要描述:
函数名 描述 async.each 为数组中的每个元素并行执行函数。 async.map 并行处理数组中的每个元素,并返回一个新数组。 async.filter 并行筛选数组,返回所有通过测试的元素。 async.reduce 按顺序累加处理数组,返回最终的累加结果。
通过这些工具,Async库确实为Node.js开发者提供了一种更加简洁和高效的方式来处理复杂的异步逻辑。无论你是在构建一个简单的脚本还是一个大型的企业级应用,Async库都是一个值得考虑的强大助手。
Socket.io:实时通信不再难题 在Node.js开发者的工具箱中,Socket.io是一个不可或缺的宝贵资源。它允许开发者轻松实现实时、双向和基于事件的通信。无论是在线游戏、聊天应用还是实时数据流应用,Socket.io都能提供稳定而高效的解决方案。它的工作原理是在客户端和服务器之间建立一个持久的连接,通过这个连接可以实现实时数据的传输。
首先,Socket.io的优势在于它的简易性和跨平台特性。开发者可以通过简单的API在多种设备和浏览器之间建立通信,而无需担心底层的兼容性问题。此外,Socket.io还提供了自动重连支持、二进制流支持以及房间和命名空间的概念,这些都极大地丰富了实时通信的可能性。下面是一些常用的Socket.io功能:
实时聊天室 :轻松创建多用户实时交流环境。数据同步 :实现文档、应用状态等的实时同步。游戏开发 :用于多玩家游戏中的实时玩家动作和状态同步。为了更直观地展示Socket.io的实用性,下面是一个简单的功能对比表,展示了Socket.io与其他实时通信技术的不同之处:
特性 Socket.io 其他技术 连接可靠性 自动重连 可能需要手动处理 数据格式 支持二进制 可能仅限文本 兼容性 跨平台,兼容多种浏览器 可能存在限制 扩展性 房间和命名空间 通常较为基础
通过这些对比,我们可以看到Socket.io在实时通信领域的强大功能和灵活性。对于Node.js开发者来说,它确实是一个值得信赖的选择。
Chalk库:让控制台输出彩色化 在Node.js开发过程中,我们经常需要在控制台输出日志信息,但长时间面对单调的黑白文字,不仅效率低下,而且易于忽略重要信息。这时,Chalk库 就能大显身手了。Chalk是一个强大的Node.js库,它允许开发者轻松地在控制台输出彩色文本,极大地提升了日志的可读性和美观度。使用Chalk,你可以指定文本的颜色、背景色,甚至是样式(如加粗、斜体等),让你的控制台输出变得生动多彩。
例如,你可以使用以下简单的代码片段来改变文本颜色:
<pre>
<code>
const chalk = require('chalk');
console.log(chalk.blue('Hello world!'));
console.log(chalk.red.bgWhite.bold('Error!'));
</code>
</pre>
此外,Chalk库的链式调用让设置样式变得异常简单。你可以轻松地组合多种样式,创建出符合你需求的独特文本效果。下面是一个使用Chalk库的样式组合示例:
<pre>
<code>
console.log(chalk.green(
'I am a green line ' +
chalk.blue.underline.bold('with a blue substring') +
' that becomes green again!'
));
</code>
</pre>
为了更直观地展示Chalk库的强大功能,下面是一个简单的表格,列出了一些常用的Chalk方法及其效果:
方法 效果 chalk.red('text')
红色文本 chalk.bgBlue('text')
蓝色背景 chalk.bold('text')
加粗文本 chalk.italic('text')
斜体文本
通过这些丰富的样式选项,Chalk库确实能够让你的控制台输出不再单调,而是变得更加直观和有趣。这对于调试代码、关注日志输出的重要信息,或者仅仅是为了美化你的开发环境,都是一个非常有用的工具。
Jest:单元测试的利器,保障代码质量 在Node.js开发者的工具箱中,Jest 无疑是最受欢迎的单元测试框架之一。它的设计哲学是“零配置”,这意味着开发者可以在几乎不需要任何设置的情况下立即开始编写测试。Jest提供了一个丰富的断言库,让你能够以各种方式验证代码的行为。此外,它的快照测试功能可以自动记录你的组件或函数的当前状态,并在未来的测试中用作参考,确保代码更改不会意外破坏现有功能。
**快速反馈**:Jest在运行测试时提供实时反馈,这对于快速开发和迭代至关重要。 **并行测试**:Jest能够并行运行测试,大幅提高了测试的速度和效率。 **覆盖率报告**:通过内置的覆盖率工具,Jest可以告诉你哪些代码没有被测试到,帮助你发现潜在的漏洞。 **模拟系统**:Jest强大的模拟系统可以让你轻松地模拟依赖,确保单元测试的独立性和准确性。 对于那些追求高效率和高代码质量的Node.js开发者来说,Jest是一个不可或缺的工具。下面的表格简要概述了Jest的一些关键特性,以及它们如何帮助开发者保持代码的健康状态。
特性 描述 对开发者的好处 实时反馈 测试结果实时显示,无需等待全部测试完成。 提高开发效率,快速定位问题。 快照测试 自动记录组件或函数状态,用于未来测试比对。 确保代码更改不会破坏现有功能。 覆盖率报告 详细的代码覆盖率分析。 揭示未测试的代码区域,提升代码质量。 模拟系统 模拟外部依赖,确保测试的独立性。 使单元测试更加可靠和准确。
通过Jest,Node.js开发者可以确保他们的代码库经得起时间的考验,同时也为维护和扩展提供了坚实的基础。无论是在小型项目还是大型企业级应用中,Jest都是确保代码质量的强大工具。
问答 文章标题:Node.js开发者必备的顶级npm包
问:Node.js开发者在选择npm包时应该考虑哪些因素? 答:在选择npm包时,Node.js开发者应该考虑包的功能性、稳定性、社区支持、文档完整性、更新频率以及是否有较少的依赖项。此外,还应该考虑包的性能和安全性,以及是否能够与项目的其他部分良好集成。
问:请推荐几个Node.js开发者必备的npm包。 答:一些必备的npm包包括:
Express – 一个灵活的Node.js Web应用框架,提供了一系列强大的功能来帮助开发API和Web应用。 Lodash – 一个一致性、模块化、高性能的JavaScript实用工具库,用于简化数组、数字、对象、字符串等的操作。 Mongoose – 一个MongoDB对象建模工具,设计用于在异步环境中工作,提供了直观的、基于模式的解决方案来建模应用数据。 Async - 提供了强大的异步控制流功能,帮助管理并发和处理异步JavaScript代码。 Nodemon – 一个实用工具,用于在检测到文件变化时自动重启Node.js应用程序,非常适合开发环境。 问:为什么Express是Node.js开发者的首选Web框架? 答:Express是Node.js开发者的首选Web框架,因为它简单、灵活且功能丰富。它支持多种模板引擎,易于集成中间件,提供了路由控制,且拥有大量的社区支持和中间件选项,使得开发快速和高效。
问:Lodash在Node.js项目中的常见用途是什么? 答:Lodash在Node.js项目中常用于处理数据集合,如数组、对象和字符串的迭代、筛选、映射和排序。它提供了许多实用的函数,帮助开发者编写更简洁、更易维护的代码。
问:Mongoose包有哪些主要特点? 答:Mongoose的主要特点包括:
基于模式的解决方案,可以定义数据的结构和验证规则。 内置类型转换,确保数据符合定义的模式。 提供了方便的查询构建API,简化了MongoDB操作。 支持中间件,允许在数据库操作前后执行自定义逻辑。 支持模型继承,使得数据建模更加灵活。 问:Async包在处理异步操作时有哪些优势? 答:Async包在处理异步操作时的优势包括:
提供了多种流程控制模式,如串行、并行和水线。 支持错误处理,可以优雅地捕获和处理异步错误。 减少了回调地狱,代码更加清晰和易于理解。 可以与Promise一起使用,提供了更多的编程选择。 问:Nodemon为什么对Node.js开发者如此有用? 答:Nodemon对Node.js开发者非常有用,因为它可以监视项目中的任何文件变化,并在必要时自动重启服务器。这意味着开发者可以节省时间,不必手动停止和启动服务器来查看代码更改的效果,从而提高了开发效率。
总结和思考 随着我们一同探索了众多强大的npm包,相信您已经对如何提升您的Node.js项目开发效率有了更深的认识。从实用的工具库到框架,再到性能优化,这些精选的npm包无疑是每位Node.js开发者工具箱中的宝贵财富。我们希望这篇文章能够成为您技术旅程中的一盏明灯,指引您在编码的海洋中乘风破浪。
无论您是初涉Node.js的新手,还是资深的后端工程师,我们相信这些工具能够助您一臂之力,让您的开发过程更加流畅,项目更加稳健。记住,技术的世界在不断变化,保持好奇心和学习的热情,定期回顾和更新您的npm包列表,以确保您始终走在技术的前沿。
感谢您的阅读,我们期待在未来的文章中继续与您分享更多有关Node.js的知识和资源。如果您有任何想法或建议,欢迎在评论区留言交流。让我们一起成长,共同推动Node.js社区的繁荣发展。再见!
Irina Pakhomova
CMO at Smartbrain.io email: pakhomova@smartbrain.io facebook.com/smartbrain.io