');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.french-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.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe/CRC55.eot);src:url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe/CRC55.eot) format("embedded-opentype"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe/CRC55.woff2) format("woff2"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe/CRC55.woff) format("woff"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe/CRC55.ttf) format("truetype"),url(//blog.french-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.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-light/CRC35.eot);src:url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-light/fonts/CRC35.eot) format("embedded-opentype"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-light/fonts/CRC35.woff2) format("woff2"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-light/fonts/CRC35.woff) format("woff"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-light/fonts/CRC35.ttf) format("truetype"),url(//blog.french-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.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-light/CRC25.eot);src:url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-light/CRC25.eot) format("embedded-opentype"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-light/CRC25.woff2) format("woff2"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-light/CRC25.woff) format("woff"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-light/CRC25.ttf) format("truetype"),url(//blog.french-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.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-bold/Circe-Bold.eot);src:url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-bold/Circe-Bold.eot) format("embedded-opentype"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-bold/Circe-Bold.woff2) format("woff2"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-bold/Circe-Bold.woff) format("woff"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-bold/Circe-Bold.ttf) format("truetype"),url(//blog.french-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.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-bold/Circe-ExtraBold.eot);src:url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-bold/Circe-ExtraBold.eot) format("embedded-opentype"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-bold/Circe-ExtraBold.woff2) format("woff2"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-bold/Circe-ExtraBold.woff) format("woff"),url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../fonts/circe/circe-extra-bold/Circe-ExtraBold.ttf) format("truetype"),url(//blog.french-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.french-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.french-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.french-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.french-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.french-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.french-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.french-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.french-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.french-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.french-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.french-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.french-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.french-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.french-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.french-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.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/facebook.svg)}.socials .icon.i-vk{background-image:url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/vk.svg)}.socials .icon.i-twitter{background-image:url(//blog.french-smartbrain.com/wp-content/themes/rubrain-blog/assets/css/../../assets/images/icons/twitter.svg)}.socials .icon.i-telegram{background-image:url(//blog.french-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.french-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.french-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.french-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.french-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.french-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.french-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:700px;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}
.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;flex:16%}.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}
Qu’est-ce que nest js ? Pourquoi l’utiliser ? - Smartbrain Blog Qu’est-ce que nest js ? Pourquoi l’utiliser ?
Collections d'articles, services utiles et offres d'emploi, annonces de conférences gratuites et de primes. Rejoignez-nous!
S’abonner à la newsletter hebdomadaire
Merci, vous vous êtes bien inscrit à la lettre d'information !
Accueil News Qu’est-ce que nest js ? Pourquoi l’utiliser ? Dans le vaste écosystème du développement web, une multitude de technologies se disputent l’attention des architectes du numérique. Parmi elles, une étoile montante attire les regards avec son approche élégante et sa structure raffinée : Nest.js. Ce framework back-end, inspiré de Angular, promet de révolutionner la manière dont les développeurs conçoivent et construisent des applications scalables et maintenables. Mais qu’est-ce qui se cache derrière ce nom évoquant un nid douillet ? Pourquoi de plus en plus de professionnels se tournent-ils vers Nest.js pour donner vie à leurs projets les plus ambitieux ? Cet article vous invite à plonger dans l’univers de Nest.js, à explorer ses fondations solides et à comprendre pourquoi il pourrait bien être l’outil manquant à votre boîte à outils de développement. Embarquez dans cette aventure technologique et découvrez pourquoi Nest.js est bien plus qu’un simple framework : c’est une promesse d’efficacité et d’élégance dans le monde tumultueux du développement web moderne.
Inhaltsverzeichnis
Introduction à NestJS : Une nouvelle ère pour les applications Node.js Dans le vaste écosystème de Node.js, une étoile montante a capturé l’attention des développeurs par sa capacité à simplifier la création d’applications robustes et maintenables. Cette étoile, c’est NestJS , un framework qui s’appuie sur TypeScript et qui tire parti de la programmation orientée objet, de la programmation fonctionnelle et de la programmation fonctionnelle réactive pour offrir une expérience de développement à la fois moderne et agréable. En s’inspirant de frameworks tels qu’Angular, React et Vue, NestJS propose une architecture d’application bien structurée, ce qui en fait un choix de prédilection pour les projets nécessitant une organisation claire et un code évolutif.
Utiliser NestJS, c’est comme disposer d’un couteau suisse pour le développement backend : il fournit un ensemble d’outils et de fonctionnalités qui facilitent la mise en place de solutions complexes. Voici quelques avantages clés :
Injection de dépendances : NestJS intègre un système d’injection de dépendances puissant qui encourage un couplage faible et un code hautement testable.Modularité : Le framework encourage la séparation du code en modules réutilisables, ce qui simplifie le développement et la maintenance des applications.Support pour les microservices : NestJS est conçu pour construire des systèmes évolutifs avec un support intégré pour les microservices.Caractéristique Avantage TypeScript par défaut Typage fort pour un code plus sûr et maintenable CLI puissante Automatisation des tâches répétitives et génération de code Écosystème riche Large choix de modules et middleware pour étendre les fonctionnalités
En somme, NestJS est une solution complète qui répond aux besoins des développeurs en quête d’efficacité et de qualité dans la construction d’applications Node.js. Son architecture inspirée des meilleures pratiques de divers frameworks frontend le rend intuitif pour ceux qui sont déjà familiers avec ces outils, tout en restant accessible pour les nouveaux venus.
Les fondations de NestJS : Comprendre son architecture modulaire À la découverte de l’architecture de NestJS, on se trouve rapidement face à un concept central : son système modulaire. Cette approche structurale permet aux développeurs de construire des applications en encapsulant des fonctionnalités dans des modules distincts. Chaque module est conçu pour être autonome, avec sa propre logique et ses propres dépendances, ce qui facilite la maintenance et le test des applications. De plus, cette modularité favorise la réutilisabilité des composants, permettant ainsi de gagner du temps lors du développement de nouvelles fonctionnalités ou lors de la refonte d’applications existantes.
Les modules dans NestJS sont définis par des classes décorées avec @Module
, qui décrivent les éléments qu’ils contiennent. Voici une liste des principaux éléments que l’on peut retrouver au sein d’un module NestJS :
Controllers : Gèrent les requêtes entrantes et les réponses sortantes.Providers : Incluent les services, les repositories, les factories, les helpers, etc. Ils peuvent être injectés dans les controllers et d’autres providers.Imports : Permettent d’inclure d’autres modules dont les providers sont nécessaires dans le module actuel.Exports : Exposent certains providers à d’autres modules.
Élément Description Rôle dans l’architecture Module Regroupe des fonctionnalités Organisation et encapsulation Controller Gestion des requêtes Interface utilisateur Provider Logique métier Services et dépendances Service Traitement des données Réutilisabilité et maintenance
En somme, l’architecture modulaire de NestJS est un atout majeur pour les développeurs qui cherchent à créer des applications robustes, évolutives et faciles à maintenir. Elle reflète les principes de la programmation orientée objet et s’inspire fortement des meilleures pratiques de frameworks tels qu’Angular, ce qui rend sa prise en main particulièrement intuitive pour ceux qui sont déjà familiers avec ces environnements.
Pourquoi choisir NestJS ? Avantages et cas d’utilisation Opter pour NestJS, c’est choisir un framework moderne qui s’appuie sur TypeScript et qui offre une architecture d’application efficace et scalable. Ce framework est particulièrement apprécié pour sa capacité à structurer le code de manière intuitive, ce qui facilite la maintenance et le développement à long terme. Parmi les avantages notables, on compte :
Injection de dépendances : NestJS intègre un système d’injection de dépendances puissant qui favorise un couplage faible et une modularité élevée.Compatibilité avec TypeScript : L’utilisation de TypeScript offre une sécurité de type accrue et améliore l’expérience de développement grâce à l’autocomplétion et à la détection précoce des erreurs.Architecture modulaire : La possibilité de diviser l’application en modules réutilisables rend le code plus organisé et facilite la collaboration au sein d’une équipe.Intégration facile avec d’autres bibliothèques : NestJS s’intègre sans heurt avec d’autres bibliothèques JavaScript populaires, telles que Express ou Fastify pour la gestion des requêtes HTTP.Quant aux cas d’utilisation, NestJS se prête à une multitude de projets, allant des applications web simples aux systèmes d’entreprise complexes. Voici quelques exemples où NestJS se démarque :
API RESTful Création d’interfaces API robustes et bien structurées. Microservices Conception de systèmes décomposés en services indépendants et interopérables. Applications en temps réel Intégration native avec WebSocket pour des applications nécessitant des communications bidirectionnelles en temps réel. Applications GraphQL Facilité de mise en place de GraphQL pour une récupération de données plus efficace et optimisée.
En somme, NestJS est un choix judicieux pour les développeurs qui recherchent un framework capable de soutenir le développement d’applications modernes, tout en offrant une expérience de développement cohérente et agréable.
L’écosystème de NestJS : Intégration et compatibilité Un des atouts majeurs de NestJS réside dans sa capacité à s’intégrer harmonieusement avec un large éventail de technologies et d’outils de développement. Cette flexibilité est rendue possible grâce à son architecture modulaire, qui permet aux développeurs de connecter facilement des bibliothèques externes ou des modules personnalisés. Par exemple, NestJS fonctionne de manière transparente avec des systèmes de bases de données tels que PostgreSQL , MongoDB et MySQL , grâce à des modules comme TypeORM et Mongoose . De plus, il prend en charge l’intégration avec des outils de caching comme Redis , des services de messagerie tels que RabbitMQ et des plateformes d’authentification comme Passport .
La compatibilité avec les technologies front-end n’est pas en reste. NestJS s’aligne parfaitement avec des frameworks tels que Angular , React et Vue.js , facilitant ainsi le développement d’applications fullstack cohérentes et performantes. De plus, sa compatibilité avec le standard GraphQL ouvre la porte à des architectures API modernes et efficaces. Ci-dessous, un tableau illustrant quelques intégrations clés et les modules correspondants :
Technologie Module NestJS Usage TypeORM @nestjs/typeorm Intégration de bases de données SQL Mongoose @nestjs/mongoose Intégration de bases de données NoSQL Passport @nestjs/passport Authentification GraphQL @nestjs/graphql Création d’API GraphQL WebSocket @nestjs/websockets Communication en temps réel
Grâce à cette intégration étendue, NestJS se positionne comme une solution de choix pour les développeurs cherchant à construire des applications robustes, évolutives et faciles à maintenir, tout en bénéficiant d’un écosystème riche et diversifié.
Dans l’univers du développement web moderne, la sécurité et les performances sont deux piliers essentiels qui ne peuvent être négligés. NestJS, un framework progressif pour Node.js, a été conçu avec ces préoccupations en tête. En utilisant TypeScript par défaut, NestJS offre une couche supplémentaire de sécurité grâce à son système de typage statique, réduisant ainsi les erreurs courantes de développement. De plus, le framework s’inspire de la programmation orientée aspect, permettant aux développeurs de séparer les préoccupations et d’encapsuler les comportements transversaux, tels que la journalisation et la sécurité, de manière cohérente et maintenable.
En termes de performances, NestJS se distingue par son architecture hautement optimisée. Il tire parti de Express.js ou Fastify , deux puissants gestionnaires de serveur HTTP, permettant ainsi aux développeurs de choisir la plateforme la plus adaptée à leurs besoins de performance. De plus, NestJS facilite la mise en œuvre de techniques de performance avancées telles que le lazy loading des modules et le microservice pattern , ce qui permet de construire des applications évolutives et performantes. Voici un tableau illustrant la comparaison des performances entre Express.js et Fastify au sein de NestJS :
Caractéristique Express.js Fastify Vitesse de traitement Standard Élevée Consommation de ressources Moderée Faible Facilité de mise en œuvre Élevée Moderée Support des plugins Large En croissance
Le lazy loading permet de charger des modules uniquement lorsque c’est nécessaire, réduisant ainsi le temps de démarrage initial de l’application. Le microservice pattern favorise une architecture décomposée en services indépendants, ce qui améliore la maintenabilité et la scalabilité de l’application. Développement et déploiement : Facilité et efficacité avec NestJS Lorsqu’il s’agit de construire des applications robustes et maintenables, NestJS se présente comme une solution incontournable. Ce framework back-end progressif pour Node.js tire parti de TypeScript pour offrir un développement cohérent et évolutif. Grâce à son architecture modulaire, NestJS permet aux développeurs de créer des blocs de construction logiciels réutilisables, ce qui facilite grandement la maintenance et le déploiement des applications. De plus, l’intégration de divers outils et bibliothèques est simplifiée, permettant ainsi une mise en œuvre efficace des fonctionnalités complexes.
Le déploiement d’applications avec NestJS est également optimisé pour une efficacité maximale. Le framework est conçu pour fonctionner de manière transparente avec des technologies de conteneurisation telles que Docker , ce qui permet une mise en production rapide et fiable. Voici quelques avantages clés de l’utilisation de NestJS pour le développement et le déploiement :
Structure de projet claire et scalable Intégration facile avec les bases de données les plus populaires Support complet pour les applications en temps réel avec WebSocket Facilité de test avec des outils intégrés Compatibilité avec le microservice et les architectures serverless Caractéristique Avantage Injection de dépendance Code plus propre et plus modulaire CLI puissante Productivité accrue et standardisation du code Support ORM intégré Interaction simplifiée avec la base de données Modules dynamiques Flexibilité et découplage du code
En somme, NestJS offre un équilibre parfait entre facilité de développement et puissance de déploiement, ce qui en fait un choix privilégié pour les développeurs soucieux de construire des applications d’entreprise performantes et évolutives.
Conclusion : NestJS, le choix stratégique pour votre prochain projet web En résumé, l’adoption de NestJS pour le développement de votre prochain projet web représente une décision judicieuse qui s’aligne avec les tendances actuelles et futures de l’industrie. Ce framework, basé sur Node.js, offre une architecture bien structurée et des fonctionnalités avancées qui facilitent la création d’applications robustes et maintenables. Voici quelques-unes des raisons clés pour lesquelles NestJS devrait être en haut de votre liste :
Productivité accrue : Grâce à son système de modules, NestJS permet une organisation claire du code et une réutilisation optimale des composants.Compatibilité avec TypeScript : L’utilisation de TypeScript apporte une sécurité de type supplémentaire et améliore l’expérience de développement.Intégration facile : NestJS s’intègre sans heurts avec d’autres bibliothèques et outils, tels que TypeORM pour la gestion de bases de données, ou Passport pour l’authentification.Le tableau suivant illustre la comparaison entre NestJS et d’autres frameworks populaires, soulignant pourquoi NestJS se distingue comme un choix stratégique :
Caractéristique NestJS Autres Frameworks Architecture Inspirée d’Angular, favorise la cohérence Varie selon le framework Écosystème Riche et en croissance Dépend du framework Support TypeScript Complet Partiel ou absent Microservices Support natif Support variable
Opter pour NestJS, c’est donc choisir un framework moderne qui non seulement répond aux besoins actuels de développement web mais qui est également prêt à s’adapter aux exigences futures. Que ce soit pour sa facilité d’intégration, sa communauté dynamique ou sa compatibilité avec les principes SOLID, NestJS est un atout stratégique pour les développeurs qui visent l’excellence et la pérennité de leurs applications web.
FAQ **Q : Qu’est-ce que NestJS exactement ?**
R : Imaginez un oiseau architecte, construisant un nid sophistiqué et structuré. NestJS est l’équivalent dans le monde du développement web : un framework pour Node.js qui aide les développeurs à bâtir des applications serveur efficaces et évolutives. Il est inspiré par Angular et combine des éléments de programmation orientée objet (POO), de programmation fonctionnelle et de programmation fonctionnelle réactive.
Q : Pourquoi devrais-je envisager d’utiliser NestJS pour mon projet ?
R : Si vous cherchez à créer une application robuste et bien organisée, NestJS est votre allié. Il offre un système de modularité qui permet une séparation claire des composants, rendant votre code plus facile à maintenir et à tester. De plus, il intègre TypeScript par défaut, ce qui apporte une sécurité de type supplémentaire pour réduire les erreurs potentielles.
Q : NestJS est-il adapté à tous les types de projets ?
R : NestJS brille particulièrement dans la construction de services back-end complexes, comme les API REST ou GraphQL. Cependant, sa flexibilité et sa scalabilité le rendent adapté à une large gamme de projets, des petites applications aux grandes entreprises nécessitant des architectures microservices.
Q : Quels sont les avantages principaux de NestJS par rapport à d’autres frameworks Node.js ?
R : NestJS se distingue par son architecture fortement inspirée d’Angular, ce qui facilite la transition pour ceux qui connaissent déjà ce framework. Il encourage également l’utilisation de principes de conception de logiciels avancés, tels que l’injection de dépendances et le découplage. En outre, il dispose d’un écosystème riche avec une intégration transparente de nombreux outils et bibliothèques tiers.
Q : Est-ce que NestJS a une courbe d’apprentissage raide ?
R : Comme pour tout framework puissant, il y a une certaine courbe d’apprentissage. Cependant, la documentation complète et la communauté active de NestJS facilitent l’entrée dans le monde de ce framework. Si vous avez déjà une expérience avec TypeScript et les concepts de POO, vous trouverez que NestJS est assez intuitif.
Q : Comment NestJS gère-t-il les performances et l’efficacité ?
R : NestJS est construit sur Node.js et Express (ou Fastify), ce qui signifie qu’il hérite de leur efficacité en termes de performances. Il est conçu pour être léger et rapide. De plus, il permet une optimisation facile grâce à des techniques telles que le lazy loading et l’interception de requêtes pour améliorer les temps de réponse.
Q : NestJS est-il bien soutenu et mis à jour régulièrement ?
R : Oui, NestJS bénéficie d’un soutien solide de la part de sa communauté et de ses contributeurs. Il est régulièrement mis à jour pour corriger les bugs, améliorer les fonctionnalités existantes et en introduire de nouvelles. La communauté autour de NestJS est dynamique et toujours prête à aider les nouveaux utilisateurs.
Principales conclusions En somme, NestJS se présente comme une étoile brillante dans la constellation des frameworks de développement back-end. Avec son architecture inspirée d’Angular, sa facilité d’intégration avec d’autres bibliothèques et son écosystème riche, il offre aux développeurs une plateforme robuste et flexible pour construire des applications efficaces et maintenables. Que vous soyez un artisan du code à la recherche de nouvelles aventures ou un architecte de solutions en quête de solidité, NestJS mérite votre attention.
Nous espérons que cet article vous a éclairé sur les raisons qui pourraient vous inciter à choisir NestJS pour vos futurs projets. Comme tout choix technologique, il doit être mûrement réfléchi et adapté aux besoins spécifiques de votre application. Néanmoins, avec NestJS, vous avez entre les mains un outil puissant qui saura, sans aucun doute, vous aider à construire des fondations solides pour vos applications.
Nous vous invitons à plonger dans l’univers de NestJS, à expérimenter avec ses fonctionnalités et à rejoindre sa communauté grandissante. Qui sait, peut-être que NestJS sera le compagnon de route idéal pour vos prochaines aventures numériques. Bonne exploration !
Irina Pakhomova
CMO at Smartbrain.io email: pakhomova@smartbrain.io facebook.com/smartbrain.io
Vous pouvez nous contacter sur toutes les questions: