/* Preserve the theme's image slots and the source aspect ratios. */
.header-top-wrapper .logo img,.header-main .header-logo-2 img,.offcanvas__logo img,.footer-widgets-wrapper .footer-logo img{height:auto;object-fit:contain}
.header-top{padding:10px 0}
.header-top-wrapper .logo img{width:200px;max-height:52px}
.about-dent .team .all-team .item img{height:auto}
.hero-content.mini .image{width:auto;max-width:48%;object-fit:contain;object-position:right bottom}
.hero-content.mini .title{position:relative;z-index:1;max-width:none}
.hero-content.mini p{position:relative;z-index:1;max-width:none}
.hero-content.mini .theme-btn{position:relative;z-index:1}
.cta__wrapper.director img.image{height:auto;max-width:100%}
@media(max-width:991px){
 .header-2 .header-main{min-height:66px;gap:10px}
 .header-2 .header-left img{width:120px;max-width:120px;height:auto;padding:8px 0;max-height:62px}
 .header-2 .header-right{gap:8px}
 .header-2 .header-right .header-button .theme-btn{padding:10px 12px;white-space:nowrap}
 .header-2 .header-right .header-button .theme-btn.icon-btn{margin-right:0}
 .hero-1.style-hero-2{padding-top:76px}
 .hero-1.style-hero-2 .hero-content.main{margin-top:0}
 .hero-content.main.mob{padding:24px 18px}
 .hero-content.main.mob > *{position:relative;z-index:1}
 .hero-content.main.mob .formula-mobile-title{color:#fff;font-size:27px;line-height:1.2;margin:20px 0}
 .hero-content.main.mob .hero-list-items{margin-top:0}
 .hero-content.main.mob .hero-author .buttons{gap:10px}
 .hero-content.main.mob .hero-author .theme-btn{min-height:46px}
 .hero-content.mini .image{height:100%;max-width:45%;object-fit:contain}
 .hero-content.mini .title{max-width:none;font-size:22px}
 .hero-content.mini p{max-width:none}
 .hero-content.main.mob .yandex img{height:auto;max-width:150px}
}
@media(max-width:359px){
 .header-2 .header-left img{width:105px;max-width:105px}
 .header-2 .header-right .header-button .theme-btn{padding:10px;font-size:12px}
 .hero-content.main.mob .formula-mobile-title{font-size:24px}
}

@media(max-width:1199px){
 .header-top{display:none}
 .header-2 .header-left.pc,.header-2 .main-menu,.header-2 .header-button.pc{display:none!important}
 .header-2 .header-left.mobile.mob,.header-2 .header-button.mob,.header-2 .header__hamburger.mob{display:block!important}
 .header-2 .mega-menu-wrapper,.sticky.header-2 .header-main{background:var(--black2)}
 .header-2 .header-main{min-height:66px;padding:0}
 .header-2 .header-left.mobile img{width:120px;max-width:120px;height:auto;padding:8px 0}
 .header-2 .header-right{gap:12px}
 .header-2 .header-right .header-button .theme-btn{padding:10px 14px;font-size:13px;min-width:0;background:transparent}
 .header-2 .header-right .header-button .theme-btn.icon-btn{padding:8px;background:var(--theme);margin-right:8px}
}
@media(max-width:991px){
 .pc{display:none!important}.mob{display:block!important}
 .hero-1.style-hero-2 .hero-content.main.mob{height:auto;background-image:url(/wp-content/themes/twentytwentyone/assets/img/hero/hero-back-mob.jpg);background-size:cover;background-position:center}
 .hero-content.main.mob .advantages-top{flex-direction:column;gap:15px}
 .hero-content.main.mob .advantages-top .advantage{border:0;padding:0}
 .hero-content.main.mob .hero-list-items{flex-wrap:wrap}
 .hero-content.main.mob .hero-author .buttons{display:flex;flex-direction:column;width:100%}
 .hero-content.main.mob .hero-author .buttons .theme-btn{width:100%}
 .hero-content.main.mob .hero-author .yandex{flex-direction:row;justify-content:center;width:100%}
 .hero-content.main.mob .hero-author .yandex img{width:150px}
 .hero-section .hero-content.mini{padding:24px 18px;min-height:240px}
 .hero-section .hero-content.mini .image{max-height:100%}
 .hero-section .hero-content.mini .row>.col-8{width:66.666667%}
 .about-section .advantages{display:flex;flex-wrap:wrap;gap:16px}
 .about-section .advantages .item{flex:1 1 calc(50% - 16px);min-width:0}
 .about-section .advantages .item span{overflow-wrap:break-word}
}

@media(max-width:359px){.header-2 .header-left.mobile img{width:105px;max-width:105px}.header-2 .header-right{gap:8px}.header-2 .header-right .header-button .theme-btn{padding:10px;font-size:12px}.header-2 .header-right .header-button .theme-btn.icon-btn{margin-right:0}}

.hero-content.main.pc .banner-absolute{right:20px;max-width:calc(100% - 40px);box-sizing:border-box}
.hero-content.main.pc .banner-absolute h1{width:auto!important;max-width:100%;overflow-wrap:break-word}
.offcanvas__info .mean-nav ul li a{box-sizing:border-box;max-width:100%}
@media(max-width:1199px){.hero-1.style-hero-2{padding-top:76px}}
@media(max-width:540px){.about-section .advantages .item{flex-basis:100%}}

/* One price component: normal document flow keeps labels and conditions separate. */
.price-list .item,.service .price-list .item{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,28%);gap:20px;align-items:start}
.price-list .item .info,.price-list .item .offer{width:auto;min-width:0;max-width:100%}
.price-list .item .info{position:relative;display:flex;flex-direction:column;gap:7px}
.price-list .item .title,.price-list .item .title-not{line-height:1.4;overflow-wrap:anywhere;text-underline-offset:4px}
.price-list .item .title:before,.price-list .item .title-not:before{display:none}
.price-list .item .info>.desc{margin:0;color:#5e6669;opacity:1;line-height:1.5}
.price-list .item .info .tags{position:static;inset:auto;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0;background:transparent}
.price-list .item .info .tags:empty{display:none}
.price-list .item .info .tags .tag{padding:4px 8px;line-height:1.3;font-size:11px;color:#344009;white-space:normal}
.price-list .item .info .tags .tag.sale{color:#fff}
.price-list .item .offer{position:static;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;gap:5px;margin:0;text-align:right}
.price-list .item .offer .price{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:baseline;column-gap:10px;row-gap:4px;font-size:22px;line-height:1.3;color:#354044;font-weight:600}
.price-list .item .offer .old{margin:0!important;line-height:1.4;opacity:.65;font-size:14px}
.price-list .item .offer .old:empty{display:none}
.price-list .item .offer .desc{position:static!important;inset:auto;white-space:normal;text-wrap:wrap;overflow-wrap:anywhere;margin:0!important;color:#5e6669;opacity:1!important;font-size:13px;line-height:1.5;font-weight:400}
@media(max-width:991px){
 .price-list .head{display:none}
 .price-list .item,.service .price-list .item{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;padding:16px;margin:0 0 12px;border-radius:12px;box-sizing:border-box}
 .service .price-list .item:last-child{padding:16px;margin:0}
 .price-list .item .title,.price-list .item .title-not,.service .price-list .item .title,.service .price-list .item .title-not{font-size:17px;line-height:1.4}
 .price-list .item .info>.desc,.service .price-list .item .info>.desc{font-size:14px;line-height:1.5;margin:0}
 .price-list .item .offer,.service .price-list .item .offer{width:auto;align-items:flex-start;text-align:left;gap:4px;margin:0;position:static}
 .price-list .item .offer .price{justify-content:flex-start;font-size:21px}
 .price-list .item .offer .desc,.service .price-list .item .offer .desc{font-size:13px;line-height:1.5;text-align:left;margin:0}
 .price-list .item .info .tags,.service .price-list .item .info .tags{position:static;inset:auto;padding:0}
 .service .price-list .element{padding:12px;background:#f3f5ed;box-shadow:none}
 .service .price-list .item{background:#fff;border:0}
 .service .price-list .item-head{margin:12px 4px 8px;font-size:12px;line-height:1.5;opacity:1;color:#5e6669}
}
