/*

Table of Contents

1.0 - Main
	1.1.0 Default Link + Button
2.0 - Topbar
3.0 - Menus
	3.0.1 - Main Menu
	3.0.2 - Mobile Menu
4.0 - Header
	4.0.1 - Header Style
		4.1.1 - Header Style v1
		4.1.2 - Header Style v2
	4.0.2 - Header Skin
		4.2.1 - Header Skin Default
		4.2.2 - Header Skin Transparent
5.0 - Title Wrapper
6.0 - Pagination
7.0 - Footer
8.0 - To Top Button
9.0 - Comment
10.0 - Animation style
11.0 - Contact Form 7
12.0 - Global style

-------------------------------------------------------------------*/
/* Table of Content 
==================================================
	#General Sites
	#Misc */


/*=========================================================================
  Main
//=======================================================================*/
.layout-boxed{
	background-color:#333;
}
.layout-boxed #wdc-wrapper{
	margin:0 auto;
}

#wdc-wrapper{
	overflow:hidden;
	background-color:#fff;
}

.container-fluid .container,
.container-full .container {
    width: 100%;
}
html{
	scroll-behavior:smooth;
}
#poptavka{
	scroll-margin-top:96px;
}
.padding-top{
	padding-top:100px;
}

/*Default Link + Button*/
.btn, 
button,
.button,
html input[type="button"], 
input[type="reset"], 
input[type="submit"],
input.button,
.woocommerce #respond input#submit, 
.woocommerce a.button, 
.woocommerce button.button, 
.woocommerce input.button, 
.woocommerce #respond input#submit.alt, 
.woocommerce a.button.alt, 
.woocommerce button.button.alt, 
.woocommerce input.button.alt,
.service-link a,
.portfolio-link a,
.header-button,
.wdc-pricingbox .box-link a,
.more-link a,
.woocommerce .widget_price_filter .price_slider_amount .button,
.woocommerce a.added_to_cart{
	display:inline-block;
	text-align:center;
	border:none;
	padding:15px 20px;
	line-height:1;
	background-color:#009cff;
	color:#ffffff;
	font-size:12px;
	font-weight:700;
	text-transform:uppercase;
	white-space:nowrap;
	cursor:pointer;
	letter-spacing:1px;
	-webkit-transition:all 0.35s ease 0s;
	   -moz-transition:all 0.35s ease 0s;
			transition:all 0.35s ease 0s;
}
.btn:hover, 
button:hover,
.button:hover,
html input[type="button"]:hover, 
input[type="reset"]:hover, 
input[type="submit"]:hover,
input.button:hover,
.woocommerce #respond input#submit:hover, 
.woocommerce a.button:hover, 
.woocommerce button.button:hover, 
.woocommerce input.button:hover,  
.woocommerce #respond input#submit.alt:hover, 
.woocommerce a.button.alt:hover, 
.woocommerce button.button.alt:hover, 
.woocommerce input.button.alt:hover,
.service-link a:hover, 
.portfolio-link a:hover,
.header-button:hover,
.wdc-pricingbox .box-link a:hover,
.more-link a:hover,
.woocommerce .widget_price_filter .price_slider_amount .button:hover,
.woocommerce a.added_to_cart:hover{
	background-color:#242d34;
	color:#fff;
	-webkit-transition:all 0.35s ease 0s;
	   -moz-transition:all 0.35s ease 0s;
			transition:all 0.35s ease 0s;
}

/*=========================================================================
  Topbar
//=======================================================================*/

/*=========================================================================
  Menus
//=======================================================================*/
/*main menu*/
ul.primary-menu{
	margin:0;
}
ul.primary-menu li{
	list-style:none;
	margin:0;
	padding:0;
	position:relative;
}
ul.primary-menu > li{
	float:left;
	margin-right:15px;
}
ul.primary-menu li a,
ul.primary-menu > li > a{
	line-height:inherit;
	padding:0 10px;
	display:block;
	position:relative;
}
ul.primary-menu > li > a{
	position:relative;
	font-weight:400;
	font-size:13px;
	color:inherit;
	text-transform:uppercase;
}
ul.primary-menu > li > a::after{
	position:absolute;
	content:'';
	left:50%;
	right:50%;
	opacity:0;
	bottom:0;
	border-bottom:3px solid #1e88e5;
}
ul.primary-menu > li:hover > a::after{
	opacity:1;
	left:0;
	right:0;
}
ul.primary-menu ul{
	padding:0;
	left:0;
	position:absolute;
	width:230px;
	top:100%;
	z-index:10;
	text-transform:uppercase;
	font-weight:400;
	font-size:13px;
	display:none;
	text-align:left;
	background-color:#fff;
	box-shadow:0 5px 10px rgba(0, 0, 0, 0.07);
	-webkit-box-shadow:0 5px 10px rgba(0, 0, 0, 0.07);
}
ul.primary-menu ul li{
	line-height:26px;
}
ul.primary-menu ul a{
	position:relative;
	line-height:normal;
	padding:13px 20px;
}
.header-style-v2 #primary-nav ul.primary-menu ul a{
	color:#17212b !important;
	background-color:#fff;
	border-radius:0;
	display:block;
	font-size:13px;
	line-height:1.4;
	overflow-wrap:break-word;
	text-align:left;
	text-transform:none;
	white-space:normal;
	width:100%;
}
.header-style-v2 #primary-nav ul.primary-menu > li > ul{
	max-width:calc(100vw - 30px);
	width:280px;
}
.header-style-v2 #primary-nav ul.primary-menu > li:last-child > ul{
	left:auto;
	right:0;
	width:360px;
}
.header-style-v2 #primary-nav ul.primary-menu > li:focus-within > ul{
	display:block !important;
	opacity:1 !important;
}
.header-style-v2 #primary-nav ul.primary-menu ul li{
	width:100% !important;
}
.header-style-v2 #primary-nav ul.primary-menu ul li:hover > a,
.header-style-v2 #primary-nav ul.primary-menu ul li.current-menu-item > a{
    color:#8f0027 !important;
    background-color:#f5f8fa;
}

/* Make the original site logo more legible without altering the artwork. */
body.header-style-v2 #header-wrapper .header-container{
    min-height:164px;
    padding-bottom:10px;
    padding-top:10px;
}
body.header-style-v2 #header-wrapper .header-logo{
    align-items:center;
    display:flex;
    flex:1 1 auto;
    justify-content:center;
    min-width:0;
}
body.header-style-v2 #header-wrapper .wdc-logo img{
    height:144px !important;
    width:144px !important;
}

@media (max-width:1199px){
    body.header-style-v2 #header-wrapper .header-container{
        min-height:144px;
    }
    body.header-style-v2 #header-wrapper .wdc-logo img{
        height:120px !important;
        width:120px !important;
    }
}
@media (max-width:991px){
    body.header-style-v2 #header-wrapper .header-container{
        min-height:104px;
        padding-bottom:10px;
        padding-top:10px;
    }
    body.header-style-v2 #header-wrapper .header-logo{
        flex:0 0 auto;
        justify-content:flex-start;
    }
    body.header-style-v2 #header-wrapper .wdc-logo img{
        height:80px !important;
        width:80px !important;
    }
}

/* Compact, current manufacturer marks on the home page. */
.tsm-preserve-brands{
    background:#f8fafb;
    border-top:1px solid #e8edf0;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-bottom:54px !important;
    padding-top:54px !important;
    text-align:center;
    width:100%;
}
.tsm-brand-intro{
    margin:0 auto 22px;
    max-width:720px;
}
.tsm-brand-grid{
    display:grid;
    gap:12px;
    grid-template-columns:repeat(8,minmax(0,1fr));
    margin:0 auto;
    max-width:1080px;
}
.tsm-brand-mark{
    align-items:center;
    background:#fff;
    border:1px solid #e1e7eb;
    border-radius:10px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:82px;
    padding:12px 8px 10px;
}
.tsm-brand-mark__logo{
    align-items:center;
    display:flex;
    height:34px;
    justify-content:center;
    margin-bottom:7px;
}
.tsm-brand-mark__logo img{
    display:block;
    height:32px !important;
    max-width:64px !important;
    object-fit:contain;
    width:64px !important;
}
.tsm-brand-mark__name{
    color:#26313a;
    font-size:12px;
    font-weight:800;
    line-height:1.2;
}
.tsm-brand-more{
    margin:22px 0 0;
}
.tsm-brand-more .tsm-preserve-btn{
    font-size:12px;
    padding:12px 18px;
}
.tsm-preserve-brands .tsm-preserve-cities{
    font-size:13px;
    margin:26px auto 0;
    max-width:980px;
}

@media (max-width:1199px){
    .tsm-brand-grid{
        grid-template-columns:repeat(4,minmax(0,1fr));
        max-width:720px;
    }
}
@media (max-width:767px){
    .tsm-preserve-brands{
        padding-bottom:42px !important;
        padding-top:42px !important;
    }
    .tsm-brand-grid{
        gap:10px;
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .tsm-brand-mark{
        min-height:76px;
    }
}

/* Global footer rendered from the editable WPBakery page. */
#footer .tsm-global-footer{
    background:#25282d;
    color:#c8cdd2;
    padding:0 !important;
}
#footer .tsm-global-footer .tsm-global-footer__main{
    align-items:flex-start;
    display:flex;
    flex-wrap:wrap;
    padding-bottom:38px;
    padding-top:54px;
}
#footer .tsm-global-footer .wpb_content_element{
    margin-bottom:0;
}
#footer .tsm-global-footer h3{
    color:#fff;
    font-size:15px;
    font-weight:800;
    letter-spacing:.04em;
    margin:0 0 20px;
    text-transform:uppercase;
}
#footer .tsm-global-footer h3::after{
    background:#b30031;
    content:"";
    display:block;
    height:3px;
    margin-top:10px;
    width:30px;
}
#footer .tsm-global-footer p{
    color:#c8cdd2;
    font-size:14px;
    line-height:1.75;
    margin:0 0 14px;
}
#footer .tsm-global-footer a{
    color:#fff;
    text-decoration:none;
}
#footer .tsm-global-footer a:hover{
    color:#e34670;
}
#footer .tsm-global-footer__links a{
    border-bottom:1px solid rgba(255,255,255,.22);
    display:inline-block;
    line-height:1.5;
    margin-bottom:6px;
}
#footer .tsm-global-footer__contact a{
    font-size:17px;
    font-weight:800;
}
#footer .tsm-global-footer .tsm-global-footer__legal{
    border-top:1px solid rgba(255,255,255,.12);
    padding-bottom:22px;
    padding-top:22px;
    text-align:center;
}
#footer .tsm-global-footer .tsm-global-footer__legal p{
    margin-left:auto;
    margin-right:auto;
}
#footer .tsm-global-footer .tsm-global-footer__trademarks{
    color:#969da4;
    font-size:11px;
    line-height:1.6;
    max-width:1050px;
}
#footer .tsm-global-footer .tsm-global-footer__copyright{
    color:#c8cdd2;
    font-size:12px;
    margin-bottom:0;
}
@media (max-width:767px){
    #footer .tsm-global-footer .tsm-global-footer__main{
        display:block;
        padding-bottom:18px;
        padding-top:40px;
        text-align:center;
    }
    #footer .tsm-global-footer .tsm-global-footer__main > .wpb_column{
        margin-bottom:28px;
    }
    #footer .tsm-global-footer h3::after{
        margin-left:auto;
        margin-right:auto;
    }
    #footer .tsm-global-footer .tsm-global-footer__legal{
        padding-left:8px;
        padding-right:8px;
    }
}
ul.primary-menu ul > li.menu-item-has-children > a::after{
	position:absolute;
	content:'\203A';
	font-family:Arial, Helvetica, sans-serif;
	display:block;
	top:50%;
	right:20px;
	font-size:15px;
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
}
ul.primary-menu ul li a:hover,
ul.primary-menu ul > li:hover > a{
	color:#212121;
	background-color:#f5f5f5;
}
ul.primary-menu ul li ul,
.header-skin-transparent ul.primary-menu ul ul{
	position:absolute;
	top:0;
	left:100%;
}

/*mobile menu*/
#toggle-mobile-menu{
	display:none;
	cursor:pointer;
	position:absolute;
	top:50%;
	color:inherit;
	right:35px;
	width:20px;
	height:15px;
			transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
}
#toggle-mobile-menu::before,
#toggle-mobile-menu span::before,
#toggle-mobile-menu span::after{
	position:absolute;
	left:0;
	width:100%;
	height:3px;
	content:'';
	top:0;
	border-top:3px solid;
}
#toggle-mobile-menu span::before{
	top:6px;
}
#toggle-mobile-menu span::after{
	top:12px;
}
#toggle-mobile-menu span{
	position:relative;
	display:block;
}

#mobile-container{
	position:absolute;
	top:100%;
	left:15px;
	right:15px;
	font-weight:400;
	font-size:13px;
	text-transform:uppercase;
	letter-spacing:.5px;
	z-index:999;
	background-color:#fff;
	box-shadow:0 5px 10px rgba(0, 0, 0, 0.07);
	-webkit-box-shadow:0 5px 10px rgba(0, 0, 0, 0.07);
}
.mobile-menu{
	display:none;
	border-top:1px solid #e2e6e7;
}
.mobile-menu,
.mobile-menu ul{
	margin:0;
	padding:0;
	list-style:none;
}
.mobile-menu li{
	display:block;
}
.mobile-menu > li > a{
	border-bottom:1px solid #e2e6e7;
}
.mobile-menu li a{
	display:block;
	padding:10px 20px;
	position:relative;
	color:#565656;
	line-height:26px;
	text-align:left;
}
.mobile-menu li a:hover{
	color:#212121;
	background-color:#f5f5f5;
}
.mobile-menu .menu-item-has-children > a:after{
	position:absolute;
	content:'\f107';
	right:20px;
	font-weight:normal;
	font-family:'FontAwesome';
}
.mobile-menu .sub-menu{
	border-bottom:1px solid #e2e6e7;
}
.mobile-menu .sub-menu li a{
	padding-left:35px;
}

/*=========================================================================
  Header
//=======================================================================*/
.header-left-info ul,
.header-left-info ol,
.header-right-info ul,
.header-right-info ol{
	margin:0;
}
#topbar-wrapper{
	font-size:13px;
	font-weight:normal;
	line-height:1;
	padding:15px 0;
}
#topbar-wrapper span{
	display:inline-block;
}
#topbar-wrapper ul{
	margin:0;
}
#topbar-wrapper .wdc-social a{
	padding-top:0;
	padding-bottom:0;
}
.topbar-label{
	margin-right:7px;
}
.topbar-hightlight{
	margin-right:15px;
}

.header-logo .wdc-logo{
	display:inline-block;
}

/*header info*/
.header-style-v1 .header-left-info,
.header-style-v1 .header-right-info{
	display:block;
	float:left;
}
.header-left-info li{
	margin-right:30px;
	float:left;
	line-height:40px;
}
.header-label{
	display:block;
	float:left;
	font-size:2em;
	margin-right:15px;
	position:relative;
	top:3px;
}
.header-hightlight{
	float: left;
    font-weight: 400;
    line-height: 1;
    text-align: left;
}
.header-hightlight small {
	display:block;
	margin:7px 0;
	opacity:.9;
	font-size:80%;
	font-weight:600;
	text-transform:uppercase;
}
.header-hightlight strong {
	color:#009cff;
}

/*header button*/
.header-button{
	
}
.header-button:hover{
}

/*header Search*/
.header-right-inner{
	display:table-cell;
	vertical-align:middle;
}
.header-search{
	position:relative;
	display:inline-block;
}
.header-style-v2 .header-search .search-form {
    top: 15%;
}
.header-search .search-form{
	position:absolute;
	top:100%;
	right:0;
	width:300px;
	z-index:9;
	line-height:normal;
	display:none;
	border: 1px solid #ccc;
}
.header-search .search-form form input{
	margin:0;
	padding:10px 20px;
	border:none;
	color:#555;
}
.header-search .search-icon{
	position:relative;
	cursor:pointer;
	padding:0 10px;
	display:block;
}
.header-style-v2 .header-search .search-icon{
	margin-right: 5px;
}

/*---------------HEADER STYLE---------------*/
/*Header Style v1*/
.header-style-v1 #header.header-skin-transparent{
	position:absolute;
	left:0;
	right:0;
	z-index:9999;
}
.header-style-v1 .header-skin-default .header-stick,
.header-style-v1 .header-stick.affix{
	/*padding:10px 0;*/
}
.header-style-v1 .header-stick .header-container{
	display:table;
	width:100%;
	min-height:80px;
}
.header-style-v1 .header-logo,
.header-style-v1 .header-right{
	display:table-cell;
	vertical-align:middle;
}
.header-style-v1 .header-logo{
	padding-right:40px;
}
.header-style-v1 .header-right{
	text-align:right;
}
.header-style-v1 .header-top{
	display:inline-table;
	vertical-align: baseline;
	position:relative;
	top:15px;
	margin-bottom:20px;
}
.header-style-v1 .header-bottom{
	display:inline-table;
	vertical-align: baseline;
	position:relative;
	top:8px;
	line-height:50px;
}
.header-style-v1 .primary-menu > li > a{
	line-height:inherit;
}
.header-style-v1 .header-skin-transparent #content-wrapper{
}

/*Header Style v2*/

.header-style-v2 .header-top{
	display:inline-table;
	vertical-align: middle;
	position:relative;
}
.header-style-v2 .header-container{
	display:table;
	width:100%;
	height:100px;
}
.header-style-v2 .header-left-info,
.header-style-v2 .header-right-info{
	display:block;
	float:left;
}
.header-style-v2 .header-logo,
.header-style-v2 .header-right{
	display:table-cell;
	vertical-align:middle;
}
.header-style-v2 .header-right{
	text-align:right;
}
.header-style-v2 ul.primary-menu > li > a,
.header-style-v2 .header-search{
	line-height:60px;
}
.header-style-v2 .header-inner{
	float:right;
}

/*---------------HEADER SKIN---------------*/
/*Header Skin Default*/
.header-skin-default{
	background-color:#fff;
}
.header-style-v1 .header-skin-default #topbar-wrapper{
	color:#f5f5f5;
	background-color:#212121;
}
.header-style-v1 .header-skin-default .header-stick{
	box-shadow:0 2px 5px rgba(0, 0, 0, 0.07);
	-webkit-box-shadow:0 2px 5px rgba(0, 0, 0, 0.07);
}
.header-style-v2 .header-skin-default #topbar-wrapper{
	border-bottom:1px solid #e0e0e0;
}
.header-style-v2 .header-stick{
	background-color:#1d1d1d;
	color:#fff;
}

/*Header Skin Transparent*/
.header-skin-transparent{
	color:#fff;
	border-bottom:1px solid rgba(255, 255, 255, 0.2);
}
.header-skin-transparent #topbar-wrapper{
	background-color:#242d34;	
}
.header-skin-transparent #topbar-wrapper .topbar-left,
.header-skin-transparent #topbar-wrapper .topbar-right,
.header-skin-transparent #topbar-wrapper li,
.header-skin-transparent .header-top{
}

/*=========================================================================
  Title Wrapper
//=======================================================================*/
#title-wrapper{
	position:relative;
	padding:0;
	background-color:#353535;
}
#title-wrapper .container{
	z-index:2;
}
.title-holder{
	color:#fff;
	display:table;
	table-layout:fixed;
	width:100%;
}
.title-holder .title-holder-cell{
	display:table-cell;
	width:100%;
	vertical-align:middle;
	position: relative;
}
.page-title{
	margin:0;
	color:inherit;
	font-weight:600;
}
.page-subtitle {
	font-size:17px;
	font-weight:300;
	line-height:normal;
	letter-spacing:normal;
	display:block;
	margin-top:10px;
}

.breadcrumb{
	font-size:13px;
	background:none;
	margin:0;
	padding:10px 0 0 0;
}
.breadcrumb > li + li:before{
	position:relative;
	content:'\203A';
	margin:0 4px;
	font-size:18px;
	color:inherit;
	opacity:.7;
	display:inline-block;
}
.breadcrumb a{
	color:inherit;
}
.breadcrumb > .active{
	color:#009cff;
}
.breadcrumb a:hover,
.breadcrumb a:focus{
	color:#009cff;
}
/*=========================================================================
  Pagination
//=======================================================================*/
.pagination{
	text-align:center;
	display:block;
}
.nav-links{
	display:inline-block;
	border:1px solid #e2e6e7;
	overflow:hidden;
	margin:60px auto 0;
}
.pagination .page-numbers{
	display:block;
	float:left;
	padding:16px 20px;
	line-height:1;
	border-left:1px solid #e2e6e7;
}
.pagination .page-numbers:first-child{
	border-left:none;
}
.pagination a:hover{
	background-color:#fafafa;
}
.pagination .current{
	background-color:#f0f0f0;
}

/*post navigation*/
nav.post-navigation{
	margin-bottom:30px;
	display:block;
}
.post-navigation .nav-links{
	width:100%;
	display:table;
	table-layout:fixed;
	border-collapse:collapse;
}
.post-navigation .nav-links > div{
	display: table-cell;
	width:50%;
	text-align:center;
	padding:20px;
	border:1px solid #e2e6e7;
	border-collapse:collapse;
}
.post-navigation .nav-previous a::before{
	position:relative;
	content:'\2190';
	margin-right:10px;
	font-weight:normal;
	font-size:14px;
}
.post-navigation .nav-next a::after{
	position:relative;
	content:'\2192';
	margin-left:10px;
	font-weight:normal;
	font-size:14px;
}


/*=========================================================================
  Footer
//=======================================================================*/
#footer {
	background-color:#303030;
	color:#bababa;
}
#footer a{
	color:inherit;
}
#footer a:hover{
	color:#009cff;
}
#footer-wrapper{
	padding:80px 0 40px;
}
#copyright-wrapper {
	padding:25px 0;
	font-size:13px;
	background-color:#212121;
}
.footer-menu{
	margin:0;
}
.menu-footer-menu-container{
	display:inline-block;
	position:relative;
	z-index:2;
}
.footer-menu li{}
.footer-menu li::after{
	position:relative;
	content:'/';
	margin:0 7px;
}
.footer-menu li:last-of-type::after{
	display:none;
}

/*to top*/
.scrollTop{
	position:fixed;
	bottom:20px;
	right:20px;
	z-index:99;
	display:none;	
}
.scrollTop a{
}
.scrollTop a i{
	width:36px;
	height:36px;
	line-height:36px;
	font-size:1em;
	color:#fff;
	text-align:center;
	background:rgba(0, 0, 0, 0.2);
	-webkit-border-radius:3px;
	   -moz-border-radius:3px;
			border-radius:3px;
}

/*=========================================================================
  Comments
//=======================================================================*/
#comments{
	padding:30px 7%;
	background-color:#f7f7f7;
}
#comments .comments-title{
	margin-bottom:20px;
	line-height:1.2;
}
#comments .comment-list{
	margin-bottom:45px;
}
#comments ol,
#comments ul{
	list-style:none;
	margin:0;
	padding:0;
}
.comment > .children li{
	margin-left:50px;
}
.comment > .children li li li{
	margin-left:0;
}
article.comment-body{
	padding:30px 0;
	border-bottom:1px solid #e0e0e0;
}
.comment-meta{
	margin-bottom:30px;
}
.comment .comment-author.vcard{
}
.comment .comment-author .says{
	display:none;
}
.comment .comment-author .fn{
	text-transform:uppercase;
	color:#212121;
}
.comment .comment-author .avatar{
	display:block;
	float:left;
	width:55px;
	height:55px;
	margin-right:20px;
			border-radius:50%;
	-webkit-border-radius:50%;
}
.comment .comment-metadata time{
	font-size:12px;
}
.comment .comment-content{
}
.comment .comment-content p:last-of-type{
	margin-bottom:0;
}
.comment .reply{
	margin-top:10px;
	font-size:13px;
	font-weight:600;
}

/*=========================================================================
  404
//=======================================================================*/
.big-404{
	font-size: 150px;
	line-height: normal;
	font-weight: bold;
}

/*=========================================================================
  Animation style
//=======================================================================*/
{
	-webkit-transition:all 0.35s ease 0s;
	   -moz-transition:all 0.35s ease 0s;
			transition:all 0.35s ease 0s;
}

.wpb_color .wdc-counter.style-icon .box-icon{
	color:inherit;
}

/*=========================================================================
  Contact Form 7
//=======================================================================*/

.slide-form {
  width: 470px;
  height: 520px;
}
.slide-form form {
  background-color: #ffffff;
}
.slide-form form .info {
  white-space: normal;
  line-height: 1.6;
}
.slide-form form .wpcf7-submit {
  text-align: center !important;
}
.slide-form form .wpcf7-textarea {
  line-height: 100% !important;
  font-size: 16px !important;
}
.slide-form form .wpcf7-not-valid-tip {
  line-height: 1 !important;
  padding-top: 5px;
  font-size: 16px !important;
}
.slide-form form .wpcf7-response-output {
  line-height: 1 !important;
  margin-top: 0 !important;
  font-size: 14px !important;
  color: #000;
}
.slide-form form .wpcf7-response-output.wpcf7-validation-errors {
  color: #f00;
}
.slide-form form .wpcf7-response-output.wpcf7-mail-sent-ok {
  color: #398f14;
}
.wdc-form p:before,
.wdc-form p:after {
  content: '';
  display: table;
}
.wdc-form p:after {
  clear: both;
}
.wdc-form .single-field {
  clear: both;
}
.wdc-form .field {
  margin-bottom: 20px;
}
.wdc-form .field.submit {
  margin-bottom: 0;
}
.wdc-form input[type="submit"]:focus {
  outline: none;
}
.wdc-form textarea,
.wdc-form input[type="text"],
.wdc-form input[type="email"],
.wdc-form select {
  width: 100%;
  border: 1px solid #eee;
  padding-left: 15px;
  color: #333;
}
.wdc-form textarea:focus,
.wdc-form input[type="text"]:focus,
.wdc-form input[type="email"]:focus,
.wdc-form select:focus {
  outline: none;
}
.wdc-form textarea {
  height: 90px;
  padding: 10px;
}
.wdc-form input[type="text"],
.wdc-form input[type="email"],
.wdc-form select {
  font-size: 16px;
  font-weight: 400;
  height: 45px;
  line-height: 45px;
}
.wdc-form .first-row,
.wdc-form .last-row {
  width: 50%;
  padding: 0 10px;
}
.wdc-form .first-row {
  float: left;
  padding-left: 0;
  clear: both;
}
.wdc-form .last-row {
  float: right;
  padding-right: 0;
}
.wdc-form-1 {
  border: 4px solid #009cff;
  padding: 20px 20px 10px 20px;
}
.wdc-form-1 .info {
  padding-bottom: 25px;
  font-size: 17px;
  color: #9e9e9e;
}
.wdc-form-1 .info strong {
  color: #272727;
}
.wdc-form-1 .info span.phone-number {
  color: #009cff;
}

/*=========================================================================
  Global style
//=======================================================================*/
.wdc-heading,
.wdc-iconbox,
.wdc-promobox,
.wdc-pricingbox,
.wdc-pricinglist,
.wdc-counter,
.wdc-countdown,
.wdc-blog .blog-container,
.wdc-portfolio .portfolio-container,
.wdc-team .team-container,
.wdc-testimonial .testimonial-container,
.wdc-testimonial-slider,
.wdc-client,
.wdc-client-slider,
.wdc-service .service-container,
#comments-title{
	margin-bottom:30px !important;
}

.fixed-bg {
  background-attachment: fixed;
}

.twentytwenty-down-arrow {
    border-top: 6px solid black;
}
.twentytwenty-up-arrow {
    border-bottom: 6px solid black;
}
.margin-gap.vc_column_container { padding:15px; }
.margin-gap1.vc_column_container { padding:10px; }

.wpb-js-composer .vc_tta-color-grey.vc_tta-style-outline .vc_tta-panel .vc_tta-panel-title > a, .wpb-js-composer .vc_tta-color-grey.vc_tta-style-outline .vc_tta-panel.vc_active .vc_tta-panel-title > a {
  color: #333 !important;
}
.wpb-js-composer .vc_tta-color-grey.vc_tta-style-outline .vc_tta-controls-icon:before {
  color: #333 !important;
}
.vc_tta-color-grey.vc_tta-style-outline .vc_tta-controls-icon:before,
.vc_tta-color-grey.vc_tta-style-outline .vc_tta-controls-icon:after{
  border-color: #333 !important;
}


/* Accessibility and responsive UX improvements. */
.tsm-skip-link {
  background: #fff;
  border: 3px solid #aa002d;
  border-radius: 6px;
  color: #17212b !important;
  font-weight: 800;
  left: 16px;
  padding: 12px 18px;
  position: fixed;
  top: 16px;
  transform: translateY(-180%);
  transition: transform .18s ease;
  z-index: 100000000;
}
.tsm-skip-link:focus {
  outline: 0;
  transform: translateY(0);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
  box-shadow: 0 0 0 5px #aa002d !important;
  outline: 3px solid #fff !important;
  outline-offset: 2px !important;
}

h1:empty,
h2:empty,
h3:empty,
h4:empty {
  display: none !important;
}

#content-wrapper .wpb_text_column p,
#content-wrapper .box-content {
  font-size: 15px;
  line-height: 1.7;
}

.page-id-3 .post-content .wpb-content-wrapper > .vc_row:first-child .container,
.page-id-97 .post-content .wpb-content-wrapper > .vc_row:first-child .container {
  max-width: 900px;
  width: auto;
}
.page-id-3 #content-wrapper .post-content .wpb-content-wrapper > .vc_row:first-child .wpb_text_column p,
.page-id-97 #content-wrapper .post-content .wpb-content-wrapper > .vc_row:first-child .wpb_text_column p {
  font-size: 16px;
  line-height: 1.75;
}

#toggle-mobile-menu {
  background: transparent;
  border: 0;
  border-radius: 6px;
  height: 48px;
  padding: 0;
  right: 15px;
  width: 48px;
}
#toggle-mobile-menu::before,
#toggle-mobile-menu span::before,
#toggle-mobile-menu span::after {
  height: 2px;
  left: 13px;
  top: 15px;
  width: 22px;
}
#toggle-mobile-menu span {
  inset: 0;
  position: absolute;
}
#toggle-mobile-menu span::before {
  top: 22px;
}
#toggle-mobile-menu span::after {
  top: 29px;
}

.mobile-menu .menu-item-has-children {
  position: relative;
}
.mobile-menu .menu-item-has-children > a {
  padding-right: 62px;
}
.mobile-menu .menu-item-has-children > a::after {
  content: none;
}
.mobile-submenu-toggle {
  align-items: center;
  background: transparent;
  border: 0;
  border-left: 1px solid #e2e6e7;
  display: flex;
  height: 46px;
  justify-content: center;
  padding: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 48px;
}
.mobile-submenu-toggle span {
  border-bottom: 2px solid #565656;
  border-right: 2px solid #565656;
  height: 9px;
  transform: rotate(45deg) translate(-2px, -2px);
  transition: transform .18s ease;
  width: 9px;
}
.mobile-submenu-toggle[aria-expanded="true"] span {
  transform: rotate(225deg) translate(-2px, -2px);
}

.wdc-form .tsm-field-label {
  color: #34414c;
  display: block;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
}
.wdc-form .tsm-field-label > span:first-child {
  display: block;
  margin-bottom: 7px;
}
.wdc-form .tsm-field-label abbr {
  color: #aa002d;
  text-decoration: none;
}
.wdc-form input[type="text"],
.wdc-form input[type="email"],
.wdc-form input[type="tel"],
.wdc-form input[type="file"],
.wdc-form select,
.wdc-form textarea {
  border-color: #c9d3da !important;
  border-radius: 6px;
  min-height: 48px;
}
.wdc-form input[type="submit"] {
  min-height: 44px;
}
.wdc-form .wpcf7-acceptance label {
  align-items: flex-start;
  display: flex;
  gap: 9px;
}
.wdc-form .wpcf7-acceptance input[type="checkbox"] {
  flex: 0 0 20px;
  height: 20px;
  margin-top: 1px;
  width: 20px;
}

.tsm-mobile-page-intro {
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.tsm-mobile-page-intro__cta {
  display: none;
}

@media (max-width: 767px) {
  .tsm-has-mobile-intro .wpb_revslider_element {
    display: none !important;
  }
  .tsm-has-mobile-intro .post-content .wpb-content-wrapper > .vc_row:first-child {
    margin-bottom: 0 !important;
    margin-top: 0 !important;
  }
  .tsm-mobile-page-intro {
    background:
      radial-gradient(circle at 90% 0, rgba(197, 11, 61, .12), transparent 44%),
      linear-gradient(135deg, #f8fafb, #eef3f5);
    display: block;
    clip: auto;
    clip-path: none;
    height: auto;
    overflow: visible;
    padding: 38px 24px 40px;
    position: relative;
    text-align: center;
    white-space: normal;
    width: auto;
  }
  .tsm-mobile-page-intro h1 {
    color: #17212b;
    font-size: 30px;
    line-height: 1.2;
    margin: 0 auto 22px;
    max-width: 520px;
  }
  .tsm-mobile-page-intro__cta {
    align-items: center;
    background: linear-gradient(135deg, #c50b3d, #8f0027);
    border-radius: 6px;
    box-shadow: 0 12px 26px rgba(170, 0, 45, .2);
    color: #fff !important;
    display: inline-flex;
    font-size: 14px;
    font-weight: 800;
    justify-content: center;
    min-height: 48px;
    padding: 0 22px;
    text-transform: uppercase;
  }
  .wdc-form .first-row,
  .wdc-form .last-row {
    clear: both;
    float: none;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
  }
  .wdc-form .field {
    margin-bottom: 16px;
  }
  .wdc-form input[type="text"],
  .wdc-form input[type="email"],
  .wdc-form input[type="tel"],
  .wdc-form input[type="file"],
  .wdc-form select,
  .wdc-form textarea {
    width: 100%;
  }
  .page-id-67 .post-content .wpb-content-wrapper > .vc_row:first-child .container-full > .row,
  .page-id-74 .post-content .wpb-content-wrapper > .vc_row:first-child .container-full > .row {
    margin-left: 15px !important;
    margin-right: 15px !important;
  }
  .page-id-67 .wpb_gmaps_widget .wpb_map_wraper iframe,
  .page-id-74 .wpb_gmaps_widget .wpb_map_wraper iframe {
    max-width: 100% !important;
    width: 100% !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}

/* TSM MOBILE UX POLISH START */
.tsm-mobile-quickbar{display:none}

@media (min-width:768px) and (max-width:1199px){
    body.header-style-v2 #header-wrapper .header-logo{
        flex:0 1 320px;
        min-width:260px;
    }
    body.header-style-v2 #header-wrapper .wdc-logo{
        align-items:center;
        display:flex;
        height:auto;
        max-width:300px;
        width:300px;
    }
    body.header-style-v2 #header-wrapper .wdc-logo img,
    body.header-style-v2 #header-wrapper .wdc-logo img.logo-standart{
        display:block;
        height:auto !important;
        max-height:78px !important;
        max-width:300px !important;
        object-fit:contain !important;
        object-position:left center !important;
        width:300px !important;
    }
    #primary-nav #primary-menu > li > a{
        font-size:10.5px !important;
        padding-left:5px !important;
        padding-right:5px !important;
    }
}

@media (max-width:767px){
    html{scroll-padding-bottom:76px}
    body{padding-bottom:70px}

    /* Readable horizontal logo instead of the theme's forced 80 x 80 crop. */
    body.header-style-v2 #header-wrapper .header-container{
        align-items:center;
        gap:12px;
        min-height:94px;
        padding-bottom:9px;
        padding-top:9px;
    }
    body.header-style-v2 #header-wrapper .header-logo{
        flex:1 1 auto;
        height:auto;
        max-width:calc(100% - 62px);
        min-width:0;
    }
    body.header-style-v2 #header-wrapper .wdc-logo{
        align-items:center;
        display:flex;
        height:auto;
        max-width:235px;
        width:calc(100vw - 110px);
    }
    body.header-style-v2 #header-wrapper .wdc-logo img,
    body.header-style-v2 #header-wrapper .wdc-logo img.logo-standart{
        display:block;
        height:auto !important;
        max-height:70px !important;
        max-width:100% !important;
        object-fit:contain !important;
        object-position:left center !important;
        width:100% !important;
    }
    body.header-style-v2 #header-wrapper .toggle-menu{
        flex:0 0 48px;
        margin-left:auto;
    }

    /* Three always-visible actions for a customer using a damaged phone. */
    .tsm-mobile-quickbar{
        align-items:stretch;
        background:rgba(20,24,32,.97);
        border:1px solid rgba(255,255,255,.12);
        border-radius:15px;
        bottom:7px;
        box-shadow:0 12px 34px rgba(0,0,0,.28);
        display:grid;
        gap:4px;
        grid-template-columns:1.18fr .82fr 1fr;
        left:7px;
        min-height:57px;
        overflow:hidden;
        padding:4px;
        position:fixed;
        right:7px;
        z-index:99998;
    }
    .tsm-mobile-quickbar a{
        align-items:center;
        border-radius:11px;
        color:#fff !important;
        display:flex;
        font-size:11.5px;
        font-weight:800;
        gap:6px;
        justify-content:center;
        letter-spacing:.01em;
        line-height:1.15;
        min-width:0;
        padding:7px 5px;
        text-align:center;
        text-decoration:none !important;
    }
    .tsm-mobile-quickbar__status{background:#27303b}
    .tsm-mobile-quickbar__status.is-open{background:#127343}
    .tsm-mobile-quickbar__status.is-pause{background:#9a5b00}
    .tsm-mobile-quickbar__status.is-holiday,
    .tsm-mobile-quickbar__status.is-closed{background:#4b5360}
    .tsm-mobile-quickbar a.tsm-mobile-quickbar__phone{
        background:#fff;
        color:#121a25 !important;
    }
    .tsm-mobile-quickbar__quote{background:linear-gradient(135deg,#b0003a,#e0004d)}
    .tsm-mobile-quickbar__icon{font-size:16px;line-height:1}
    .tsm-mobile-quickbar__dot{
        background:#fff;
        border-radius:50%;
        box-shadow:0 0 0 3px rgba(255,255,255,.15);
        flex:0 0 7px;
        height:7px;
        width:7px;
    }
    #ht-ctc-chat,
    .ht-ctc-chat{bottom:76px !important}

    /* Shorter and calmer mobile navigation. */
    #header-wrapper .mobile-menu > li > a{padding-bottom:13px !important;padding-top:13px !important}
    #header-wrapper .mobile-menu .sub-menu a{
        font-size:13px !important;
        line-height:1.25 !important;
        padding-bottom:10px !important;
        padding-top:10px !important;
    }

    /* Home: two compact columns instead of one very long list. */
    .home .tsm-device-picks__grid{
        gap:8px !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    .home .tsm-device-pick{
        gap:9px !important;
        min-height:68px !important;
        padding:10px 11px !important;
    }
    .home .tsm-device-pick__icon{
        flex:0 0 34px !important;
        height:34px !important;
        width:34px !important;
    }
    .home .tsm-device-pick__text strong{font-size:15px !important;line-height:1.2}
    .home .tsm-device-pick__text span{font-size:11.5px !important}
    .home .tsm-preserve-card-grid{
        gap:10px !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    .home .tsm-preserve-card{
        min-height:168px !important;
        padding:15px 13px !important;
    }
    .home .tsm-preserve-card h3{
        font-size:15px !important;
        line-height:1.24 !important;
        margin-bottom:8px !important;
    }
    .home .tsm-preserve-card p{
        display:-webkit-box;
        font-size:12.5px !important;
        line-height:1.45 !important;
        -webkit-box-orient:vertical;
        -webkit-line-clamp:4;
        overflow:hidden;
    }
    .home .tsm-preserve-split{
        margin-left:0 !important;
        margin-right:0 !important;
        width:100% !important;
    }

    /* Phones/tablets: service cards and device photos become compact 2 x 2 grids. */
    .page-id-75 .vc_custom_1471192270839{
        padding-bottom:30px !important;
        padding-left:12px !important;
        padding-right:12px !important;
        padding-top:30px !important;
    }
    .page-id-75 .vc_custom_1471192270839 .vc_inner{
        display:block !important;
        margin-left:0 !important;
        margin-right:0 !important;
    }
    .page-id-75 .vc_custom_1471192270839 .vc_inner > .wpb_column{
        float:none !important;
        margin:0 0 12px !important;
        width:100% !important;
    }
    .page-id-75 .vc_custom_1471192270839 .vc_inner > .wpb_column > .vc_column-inner{
        padding:0 !important;
    }
    .page-id-75 .vc_custom_1471192270839 .vc_inner > .wpb_column:first-child > .vc_column-inner > .wpb_wrapper,
    .page-id-75 .vc_custom_1471192270839 .vc_inner > .wpb_column:last-child > .vc_column-inner > .wpb_wrapper{
        display:grid;
        gap:10px;
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .page-id-75 .vc_custom_1471192270839 .wdc-iconbox.style-2{
        border-radius:15px !important;
        margin:0 !important;
        min-height:166px;
        padding:15px 12px !important;
    }
    .page-id-75 .vc_custom_1471192270839 .wdc-iconbox .iconbox-container{padding:0 !important}
    .page-id-75 .vc_custom_1471192270839 .wdc-iconbox .box-icon{
        left:auto !important;
        right:8px !important;
        top:9px !important;
    }
    .page-id-75 .vc_custom_1471192270839 .wdc-iconbox .box-icon span{
        height:32px !important;
        line-height:32px !important;
        width:32px !important;
    }
    .page-id-75 .vc_custom_1471192270839 .wdc-iconbox .box-content{
        margin:0 !important;
        padding:0 !important;
        text-align:left !important;
    }
    .page-id-75 .vc_custom_1471192270839 .wdc-iconbox .box-title{
        font-size:15px !important;
        line-height:1.22 !important;
        margin:0 34px 9px 0 !important;
    }
    .page-id-75 .vc_custom_1471192270839 .wdc-iconbox .box-content > div{
        display:-webkit-box;
        font-size:12px !important;
        line-height:1.42 !important;
        -webkit-box-orient:vertical;
        -webkit-line-clamp:4;
        overflow:hidden;
    }
    .page-id-75 .vc_custom_1471192270839 .vc_inner > .wpb_column:nth-child(2) > .vc_column-inner > .wpb_wrapper{
        display:grid;
        gap:10px;
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .page-id-75 .vc_custom_1471192270839 .vc_inner > .wpb_column:nth-child(2) .vc_empty_space{display:none}
    .page-id-75 .vc_custom_1471192270839 .wpb_single_image{
        height:168px !important;
        margin:0 !important;
        overflow:hidden;
    }
    .page-id-75 .vc_custom_1471192270839 .wpb_single_image .wpb_wrapper,
    .page-id-75 .vc_custom_1471192270839 .wpb_single_image .vc_figure,
    .page-id-75 .vc_custom_1471192270839 .wpb_single_image .vc_single_image-wrapper{
        height:100% !important;
        width:100% !important;
    }
    .page-id-75 .vc_custom_1471192270839 .wpb_single_image img{
        height:100% !important;
        max-height:168px !important;
        object-fit:contain !important;
        width:100% !important;
    }
    .page-id-75 .tsm-brand-compact{
        font-size:12px !important;
        line-height:1.48 !important;
        padding:15px !important;
    }
    .page-id-75 .tsm-secondary-brands{
        padding-bottom:34px !important;
        padding-top:34px !important;
    }
    .page-id-75 .tsm-secondary-brands .tsm-brand-mark{min-height:64px !important}

    /* PC/notebook page: prevent clipped hero and shorten repeated cards. */
    .tsm-pc-pro-page .tsm-pc-hero{
        grid-template-columns:minmax(0,1fr) !important;
    }
    .tsm-pc-pro-page .tsm-pc-hero > *,
    .tsm-pc-pro-page .tsm-pc-hero__copy,
    .tsm-pc-pro-page .tsm-pc-hero__visual{
        min-width:0 !important;
        width:100% !important;
    }
    .tsm-pc-pro-page .tsm-pc-hero__copy{padding:30px 20px !important}
    .tsm-pc-pro-page .tsm-pc-kicker{
        max-width:100%;
        white-space:normal !important;
    }
    .tsm-pc-pro-page .tsm-pc-hero__visual img{
        height:240px !important;
        max-width:100% !important;
        object-fit:cover !important;
        width:100% !important;
    }
    .tsm-pc-pro-page .tsm-pc-service-list{
        gap:10px !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    .tsm-pc-pro-page .tsm-pc-service-card{
        min-height:156px !important;
        padding:14px 12px !important;
    }
    .tsm-pc-pro-page .tsm-pc-service-card h3{font-size:15px !important;line-height:1.22 !important}
    .tsm-pc-pro-page .tsm-pc-service-card p{
        display:-webkit-box;
        font-size:12px !important;
        line-height:1.42 !important;
        -webkit-box-orient:vertical;
        -webkit-line-clamp:3;
        overflow:hidden;
    }
    .tsm-pc-pro-page .tsm-pc-visual-stack{
        gap:10px !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    .tsm-pc-pro-page .tsm-pc-visual-card{min-width:0}
    .tsm-pc-pro-page .tsm-pc-visual-card img{height:160px !important;object-fit:cover !important}
    .tsm-pc-pro-page .tsm-pc-visual-card__caption{font-size:12px !important;padding:10px !important}
    .tsm-pc-pro-page .tsm-pc-speed{grid-template-columns:minmax(0,1fr) !important}
    .tsm-pc-pro-page .tsm-pc-speed__stats{
        gap:8px !important;
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
    .tsm-pc-pro-page .tsm-pc-speed__stat{padding:12px 7px !important}
    .tsm-pc-pro-page .tsm-pc-packages{
        gap:10px !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    .tsm-pc-pro-page .tsm-pc-package{padding:16px 13px !important}
    .tsm-pc-pro-page .tsm-pc-package:last-child{grid-column:1/-1}
    .tsm-pc-pro-page .tsm-pc-package h3{font-size:16px !important}
    .tsm-pc-pro-page .tsm-pc-package p{
        display:-webkit-box;
        font-size:12.5px !important;
        -webkit-box-orient:vertical;
        -webkit-line-clamp:3;
        overflow:hidden;
    }
    .tsm-pc-pro-page .tsm-pc-package ul{display:none}

    /* Watch and e-reader pages: small two-column repair cards. */
    .tsm-watch-pro-page .tsm-watch-hero,
    .tsm-watch-pro-page .tsm-watch-check,
    .tsm-ebook-pro-page .tsm-ebook-hero,
    .tsm-ebook-pro-page .tsm-ebook-check{
        grid-template-columns:minmax(0,1fr) !important;
    }
    .tsm-watch-pro-page .tsm-watch-kicker,
    .tsm-ebook-pro-page .tsm-ebook-kicker{
        max-width:100%;
        white-space:normal !important;
    }
    .tsm-watch-pro-page .tsm-watch-services,
    .tsm-ebook-pro-page .tsm-ebook-services{
        gap:10px !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    .tsm-watch-pro-page .tsm-watch-service,
    .tsm-ebook-pro-page .tsm-ebook-service{
        min-height:174px !important;
        padding:16px 13px !important;
    }
    .tsm-watch-pro-page .tsm-watch-service h3,
    .tsm-ebook-pro-page .tsm-ebook-service h3{
        font-size:16px !important;
        line-height:1.24 !important;
    }
    .tsm-watch-pro-page .tsm-watch-service p,
    .tsm-ebook-pro-page .tsm-ebook-service p{
        display:-webkit-box;
        font-size:12.5px !important;
        line-height:1.42 !important;
        -webkit-box-orient:vertical;
        -webkit-line-clamp:4;
        overflow:hidden;
    }
    .tsm-watch-pro-page .tsm-watch-hero__visual img,
    .tsm-ebook-pro-page .tsm-ebook-hero__visual img{
        height:280px !important;
        object-fit:cover !important;
        width:100% !important;
    }

    /* New brand pages: preserve information, but avoid six full-width cards. */
    .tsm-brand-landing .tsm-brand-trust,
    .tsm-brand-landing .tsm-brand-repairs{
        gap:10px !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    .tsm-brand-landing .tsm-brand-trust div{
        min-height:96px;
        padding:13px 9px !important;
    }
    .tsm-brand-landing .tsm-brand-trust strong{font-size:15px !important}
    .tsm-brand-landing .tsm-brand-section{margin-bottom:38px !important;margin-top:38px !important}
    .tsm-brand-landing .tsm-brand-card{
        min-height:174px !important;
        padding:16px 13px !important;
    }
    .tsm-brand-landing .tsm-brand-card__icon{
        height:34px !important;
        margin-bottom:10px !important;
        width:34px !important;
    }
    .tsm-brand-landing .tsm-brand-card h3{font-size:16px !important;line-height:1.22 !important}
    .tsm-brand-landing .tsm-brand-card p{
        display:-webkit-box;
        font-size:12.5px !important;
        line-height:1.42 !important;
        -webkit-box-orient:vertical;
        -webkit-line-clamp:4;
        overflow:hidden;
    }
}

@media (max-width:370px){
    .tsm-mobile-quickbar a{font-size:10.5px}
    .home .tsm-preserve-card,
    .page-id-75 .vc_custom_1471192270839 .wdc-iconbox.style-2,
    .tsm-pc-pro-page .tsm-pc-service-card,
    .tsm-watch-pro-page .tsm-watch-service,
    .tsm-ebook-pro-page .tsm-ebook-service,
    .tsm-brand-landing .tsm-brand-card{padding-left:10px !important;padding-right:10px !important}
}
/* TSM MOBILE UX POLISH END */

/* TSM legal and cookie compliance START */
.tsm-legal-page{
    --tsm-ink:#17212f;
    --tsm-muted:#5c6878;
    --tsm-line:#dfe5ec;
    --tsm-soft:#f5f8fb;
    --tsm-brand:#e62b37;
    max-width:1080px;
    margin:0 auto 70px;
    color:var(--tsm-ink);
    font-size:16px;
    line-height:1.72;
}
.tsm-legal-page a{
    color:#bd1f2a;
    text-decoration:underline;
    text-decoration-thickness:1px;
    text-underline-offset:3px;
}
.tsm-legal-title{
    margin:0 0 18px;
    color:var(--tsm-ink);
    font-size:38px;
    line-height:1.15;
}
.tsm-legal-page .tsm-legal-lead{
    margin:0 0 22px;
    padding:24px 26px;
    border:1px solid #d7e2ed;
    border-left:5px solid var(--tsm-brand);
    border-radius:14px;
    background:linear-gradient(135deg,#f8fbfe 0%,#eef4f9 100%);
    color:#263548;
    font-size:18px;
}
.tsm-legal-toc{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
    margin:0 0 22px;
}
.tsm-legal-toc a{
    display:inline-flex;
    align-items:center;
    min-height:38px;
    padding:7px 13px;
    border:1px solid var(--tsm-line);
    border-radius:999px;
    background:#fff;
    color:#344154;
    font-weight:700;
    font-size:13px;
    line-height:1.25;
    text-decoration:none;
    transition:border-color .18s ease,color .18s ease,transform .18s ease;
}
.tsm-legal-toc a:hover,
.tsm-legal-toc a:focus-visible{
    border-color:var(--tsm-brand);
    color:var(--tsm-brand);
    transform:translateY(-1px);
}
.tsm-legal-card{
    margin:0 0 15px;
    padding:24px 26px;
    border:1px solid var(--tsm-line);
    border-radius:14px;
    background:#fff;
    box-shadow:0 7px 24px rgba(23,33,47,.055);
    scroll-margin-top:105px;
}
.tsm-legal-card h2{
    margin:0 0 13px;
    color:var(--tsm-ink);
    font-size:23px;
    line-height:1.3;
}
.tsm-legal-card p:last-child,
.tsm-legal-card ul:last-child,
.tsm-legal-card ol:last-child{
    margin-bottom:0;
}
.tsm-legal-card li+li{
    margin-top:7px;
}
.tsm-legal-contact-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin:18px 0;
}
.tsm-legal-contact-grid>div{
    padding:16px;
    border-radius:11px;
    background:var(--tsm-soft);
}
.tsm-legal-table-wrap{
    width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
}
.tsm-legal-table{
    width:100%;
    min-width:660px;
    border-collapse:collapse;
    font-size:14px;
    line-height:1.5;
}
.tsm-legal-table th,
.tsm-legal-table td{
    padding:13px 14px;
    border:1px solid var(--tsm-line);
    text-align:left;
    vertical-align:top;
}
.tsm-legal-table th{
    background:#253244;
    color:#fff;
}
.tsm-legal-table tbody tr:nth-child(even){
    background:#f8fafc;
}
.tsm-legal-updated{
    margin:22px 0 0;
    color:var(--tsm-muted);
    font-size:14px;
}
.tsm-withdrawal-template{
    border:2px dashed #cbd5df;
}
.tsm-legal-action{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:10px 20px;
    border:0;
    border-radius:9px;
    background:#e62b37;
    color:#fff;
    font:700 15px/1.2 inherit;
    cursor:pointer;
}
.tsm-form-privacy-note{
    clear:both;
    margin:12px 0!important;
    padding:11px 13px;
    border-radius:8px;
    background:#f5f7fa;
    color:#556171;
    font-size:12px;
    line-height:1.5;
}
.tsm-form-privacy-note a{
    color:#9f1e28;
    text-decoration:underline;
}
#footer .tsm-global-footer__links a{
    display:inline-block;
    margin:2px 0;
}
#footer .tsm-cookie-settings-link{
    display:inline;
    padding:0;
    border:0;
    background:transparent;
    color:inherit;
    font:inherit;
    line-height:inherit;
    text-align:left;
    text-decoration:underline;
    cursor:pointer;
}

.tsm-map-consent-frame{
    display:none!important;
}
.tsm-map-consent-frame[data-tsm-loaded="true"]{
    display:block!important;
}
.tsm-map-consent-placeholder{
    display:flex;
    min-height:360px;
    padding:28px;
    align-items:center;
    justify-content:center;
    border:1px solid #d9e1e9;
    border-radius:12px;
    background:
      radial-gradient(circle at 18% 22%,rgba(230,43,55,.09),transparent 26%),
      linear-gradient(135deg,#f5f8fb,#e9f0f6);
    color:#283647;
    text-align:center;
}
.tsm-map-consent-placeholder[hidden]{
    display:none!important;
}
.tsm-map-consent-placeholder__inner{
    max-width:520px;
}
.tsm-map-consent-placeholder__icon{
    display:flex;
    width:56px;
    height:56px;
    margin:0 auto 13px;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#fff;
    color:#e62b37;
    box-shadow:0 8px 25px rgba(23,33,47,.1);
    font-size:27px;
}
.tsm-map-consent-placeholder strong{
    display:block;
    margin-bottom:6px;
    font-size:18px;
}
.tsm-map-consent-placeholder p{
    margin:0 0 15px;
    color:#5a6878;
}
.tsm-map-consent-button{
    min-height:44px;
    padding:9px 17px;
    border:0;
    border-radius:8px;
    background:#e62b37;
    color:#fff;
    font-weight:700;
    cursor:pointer;
}

.tsm-consent-banner{
    position:fixed;
    z-index:2147483000;
    right:18px;
    bottom:18px;
    left:18px;
    max-width:1040px;
    margin:0 auto;
    padding:19px;
    border:1px solid #d8e0e8;
    border-radius:14px;
    background:#fff;
    color:#17212f;
    box-shadow:0 16px 55px rgba(10,20,35,.26);
}
.tsm-consent-banner[hidden],
.tsm-consent-modal[hidden]{
    display:none!important;
}
.tsm-consent-banner__inner{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:18px;
    align-items:center;
}
.tsm-consent-banner__title{
    display:block;
    margin:0 0 5px;
    font-size:18px;
    line-height:1.25;
}
.tsm-consent-banner__text{
    margin:0;
    color:#526072;
    font-size:13px;
    line-height:1.55;
}
.tsm-consent-banner__text a{
    color:#9f1e28;
    text-decoration:underline;
}
.tsm-consent-actions{
    display:grid;
    grid-template-columns:repeat(3,minmax(126px,1fr));
    gap:8px;
}
.tsm-consent-button{
    display:inline-flex;
    min-height:44px;
    padding:9px 14px;
    align-items:center;
    justify-content:center;
    border:2px solid #263446;
    border-radius:8px;
    background:#263446;
    color:#fff;
    font:700 13px/1.2 inherit;
    cursor:pointer;
    white-space:nowrap;
}
.tsm-consent-button--accept{
    border-color:#e62b37;
    background:#e62b37;
}
.tsm-consent-button--settings{
    border-color:#cfd7e1;
    background:#fff;
    color:#263446;
}
.tsm-consent-button:hover,
.tsm-consent-button:focus-visible{
    filter:brightness(.94);
    outline:3px solid rgba(230,43,55,.2);
    outline-offset:2px;
}
.tsm-consent-modal{
    position:fixed;
    z-index:2147483001;
    inset:0;
    display:flex;
    padding:20px;
    align-items:center;
    justify-content:center;
    background:rgba(10,18,29,.58);
}
.tsm-consent-modal__dialog{
    width:min(620px,100%);
    max-height:min(720px,calc(100vh - 40px));
    overflow:auto;
    border-radius:15px;
    background:#fff;
    color:#17212f;
    box-shadow:0 22px 70px rgba(0,0,0,.32);
}
.tsm-consent-modal__head{
    display:flex;
    padding:20px 22px 15px;
    align-items:center;
    justify-content:space-between;
    border-bottom:1px solid #e1e6ec;
}
.tsm-consent-modal__head h2{
    margin:0;
    font-size:22px;
}
.tsm-consent-modal__close{
    width:40px;
    height:40px;
    border:0;
    border-radius:50%;
    background:#eef2f6;
    color:#263446;
    font-size:24px;
    line-height:1;
    cursor:pointer;
}
.tsm-consent-modal__body{
    padding:20px 22px 5px;
}
.tsm-consent-category{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:18px;
    padding:15px 0;
    align-items:center;
    border-bottom:1px solid #e4e8ed;
}
.tsm-consent-category strong{
    display:block;
    margin-bottom:4px;
}
.tsm-consent-category p{
    margin:0;
    color:#5a6675;
    font-size:13px;
    line-height:1.5;
}
.tsm-consent-category__state{
    color:#42614a;
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
}
.tsm-consent-switch{
    position:relative;
    display:inline-flex;
    width:50px;
    height:28px;
}
.tsm-consent-switch input{
    position:absolute;
    width:1px;
    height:1px;
    opacity:0;
}
.tsm-consent-switch>span:not(.screen-reader-text){
    width:50px;
    height:28px;
    border-radius:999px;
    background:#c6ced8;
    cursor:pointer;
    transition:background .18s ease;
}
.tsm-consent-switch>span:not(.screen-reader-text)::after{
    content:"";
    position:absolute;
    top:3px;
    left:3px;
    width:22px;
    height:22px;
    border-radius:50%;
    background:#fff;
    box-shadow:0 2px 5px rgba(0,0,0,.2);
    transition:transform .18s ease;
}
.tsm-consent-switch input:checked+span{
    background:#e62b37;
}
.tsm-consent-switch input:checked+span::after{
    transform:translateX(22px);
}
.tsm-consent-switch input:focus-visible+span{
    outline:3px solid rgba(230,43,55,.25);
    outline-offset:2px;
}
.tsm-consent-modal__links{
    margin:15px 0 0;
    color:#5a6675;
    font-size:12px;
}
.tsm-consent-modal__links a{
    color:#9f1e28;
    text-decoration:underline;
}
.tsm-consent-modal__actions{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
    padding:18px 22px 22px;
}

@media (max-width:900px){
    .tsm-consent-banner__inner{
        grid-template-columns:1fr;
        gap:14px;
    }
}
@media (max-width:767px){
    .tsm-legal-page{
        margin-bottom:42px;
        font-size:15px;
        line-height:1.65;
    }
    .tsm-legal-page .tsm-legal-lead,
    .tsm-legal-card{
        padding:18px;
        border-radius:11px;
    }
    .tsm-legal-page .tsm-legal-lead{
        font-size:16px;
    }
    .tsm-legal-title{
        font-size:30px;
    }
    .tsm-legal-card h2{
        font-size:20px;
    }
    .tsm-legal-contact-grid{
        grid-template-columns:1fr;
    }
    .tsm-legal-toc{
        flex-wrap:nowrap;
        margin-right:-15px;
        padding-right:15px;
        overflow-x:auto;
        scrollbar-width:none;
    }
    .tsm-legal-toc::-webkit-scrollbar{
        display:none;
    }
    .tsm-legal-toc a{
        flex:0 0 auto;
    }
    .tsm-map-consent-placeholder{
        min-height:300px;
        padding:22px 16px;
    }
    .tsm-consent-banner{
        right:10px;
        bottom:76px;
        left:10px;
        padding:15px;
        border-radius:12px;
    }
    .tsm-consent-actions{
        grid-template-columns:1fr 1fr;
    }
    .tsm-consent-button--settings{
        grid-column:1/-1;
    }
    .tsm-consent-modal{
        padding:10px;
    }
    .tsm-consent-modal__dialog{
        max-height:calc(100vh - 20px);
    }
    .tsm-consent-modal__head,
    .tsm-consent-modal__body{
        padding-right:17px;
        padding-left:17px;
    }
    .tsm-consent-modal__actions{
        grid-template-columns:1fr;
        padding:15px 17px 18px;
    }
}
@media print{
    .tsm-consent-banner,
    .tsm-consent-modal,
    .tsm-mobile-quickbar,
    .tsm-legal-toc{
        display:none!important;
    }
    .tsm-legal-card{
        break-inside:avoid;
        box-shadow:none;
    }
}
/* TSM legal and cookie compliance END */

/* TSM shipping request START */
.tsm-svoz-intro{
    max-width:920px;
    margin:0 auto 24px;
    padding:18px 20px;
    border:1px solid #dbe3eb;
    border-left:5px solid #e62b37;
    border-radius:12px;
    background:linear-gradient(135deg,#f8fbfe,#eef4f8);
    color:#2d3a4a;
    text-align:left;
}
.tsm-svoz-intro strong{
    color:#182333;
}
.tsm-shipping-prices{
    max-width:1060px;
    margin:22px auto 28px;
}
.tsm-shipping-prices__lead{
    margin:0 auto 17px;
    color:#566274;
    text-align:center;
}
.tsm-shipping-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
}
.tsm-shipping-card{
    position:relative;
    min-height:188px;
    padding:20px 17px;
    overflow:hidden;
    border:1px solid #dce3eb;
    border-radius:13px;
    background:#fff;
    box-shadow:0 8px 25px rgba(20,32,48,.07);
}
.tsm-shipping-card::before{
    content:"";
    position:absolute;
    top:0;
    right:0;
    left:0;
    height:4px;
    background:linear-gradient(90deg,#e62b37,#851b4e);
}
.tsm-shipping-card h3{
    margin:0 0 8px;
    color:#1a2636;
    font-size:19px;
}
.tsm-shipping-card__price{
    display:block;
    margin-bottom:9px;
    color:#d42330;
    font-size:25px;
    font-weight:800;
    line-height:1.1;
}
.tsm-shipping-card p{
    margin:0;
    color:#5a6675;
    font-size:13px;
    line-height:1.5;
}
.tsm-shipping-prices__note{
    margin:15px 0 0;
    padding:13px 15px;
    border-radius:9px;
    background:#f4f6f9;
    color:#5c6878;
    font-size:12px;
    line-height:1.55;
}
.tsm-form-request-note{
    border-left:4px solid #e62b37;
}
@media (max-width:991px){
    .tsm-shipping-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media (max-width:560px){
    .tsm-svoz-intro{
        width:calc(100% - 20px);
        margin-right:auto;
        margin-left:auto;
        padding:16px;
        box-sizing:border-box;
    }
    .tsm-shipping-prices{
        width:100%;
        padding-right:10px;
        padding-left:10px;
        box-sizing:border-box;
    }
    .tsm-shipping-grid{
        grid-template-columns:1fr;
    }
    .tsm-shipping-card{
        min-height:0;
        padding:18px 16px;
    }
}
/* TSM shipping request END */

/* TSM brand product photos START */
.tsm-brand-product-card {
  margin-bottom: 18px;
}
.tsm-brand-product-card .vc_single_image-wrapper {
  display: block;
  width: 100%;
}
.tsm-brand-product-card img {
  display: block;
  width: 100%;
  max-width: 420px;
  height: auto;
  aspect-ratio: 1 / 1;
  margin: 0 auto;
  object-fit: cover;
  border: 1px solid rgba(20, 38, 61, .08);
  border-radius: 24px;
  box-shadow: 0 16px 38px rgba(17, 32, 52, .14);
}
.tsm-brand-devices .tsm-brand-photo {
  display: block;
  width: 100%;
  max-width: 420px;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border: 1px solid rgba(20, 38, 61, .08);
  border-radius: 26px;
  box-shadow: 0 18px 42px rgba(17, 32, 52, .18);
}
@media (max-width: 620px) {
  .tsm-brand-product-card img {
    max-width: 340px;
    border-radius: 20px;
  }
  .tsm-brand-devices .tsm-brand-photo {
    max-width: 360px;
    border-radius: 22px;
  }
}
/* TSM brand product photos END */

/* TSM brand hub START */
.tsm-brand-hub-page #title-wrapper{display:none}
.tsm-brand-hub-page #content-wrapper.is-vc .post-content>.wpb-content-wrapper>.wpb_padding:first-child{padding-top:20px}
.tsm-brand-hub-row{background:linear-gradient(180deg,#f6f9fc 0,#fff 45%)}
.tsm-brand-hub{max-width:1160px;margin:0 auto;padding:38px 20px 64px;color:#10243e}
.tsm-brand-hub *{box-sizing:border-box}
.tsm-brand-hub__hero{max-width:820px;margin:0 auto 38px;text-align:center}
.tsm-brand-hub__eyebrow{display:inline-flex;margin-bottom:14px;padding:7px 13px;border-radius:999px;background:#e9f4ff;color:#0867b2;font-size:12px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.tsm-brand-hub__hero h1{margin:0 0 16px;color:#10243e;font-size:clamp(34px,5vw,54px);line-height:1.08;letter-spacing:-.035em}
.tsm-brand-hub__hero p{margin:0;color:#587088;font-size:18px;line-height:1.7}
.tsm-brand-hub__section-title{margin:0 0 22px;text-align:center;color:#173653;font-size:28px}
.tsm-brand-hub__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.tsm-brand-hub__grid>br,.tsm-brand-hub__card>br{display:none}
.tsm-brand-hub__card{display:flex;min-height:210px;flex-direction:column;align-items:center;justify-content:center;padding:24px 18px;border:1px solid #e1e9f1;border-radius:20px;background:#fff;color:#173653!important;text-align:center;text-decoration:none!important;box-shadow:0 10px 28px rgba(18,50,82,.07);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.tsm-brand-hub__card:hover,.tsm-brand-hub__card:focus{transform:translateY(-4px);border-color:#80bcec;box-shadow:0 18px 38px rgba(18,50,82,.13)}
.tsm-brand-hub__logo{display:flex;width:100%;height:70px;align-items:center;justify-content:center;margin-bottom:12px}
.tsm-brand-hub__logo img{display:block;max-width:145px;max-height:46px;object-fit:contain}
.tsm-brand-hub__logo--text{gap:9px}
.tsm-brand-hub__logo--text b{color:#168348;font-size:22px;letter-spacing:.08em}
.tsm-brand-hub__logo--text i{padding:4px 8px;background:#ffc915;color:#111;font-size:18px;font-style:normal;font-weight:900}
.tsm-brand-hub__name{font-size:18px;font-weight:800;line-height:1.3}
.tsm-brand-hub__more{margin-top:10px;color:#0872c9;font-size:13px;font-weight:700}
.tsm-brand-hub__cta{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;margin-top:34px;padding:30px 34px;border-radius:22px;background:linear-gradient(135deg,#0872c9,#102b49);color:#fff;box-shadow:0 18px 42px rgba(13,54,91,.18)}
.tsm-brand-hub__cta h2{margin:0 0 6px;color:#fff;font-size:27px}
.tsm-brand-hub__cta p{margin:0;color:rgba(255,255,255,.82)}
.tsm-brand-hub__cta a{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:12px 22px;border-radius:12px;background:#fff;color:#143451!important;font-weight:800;text-decoration:none!important}
@media(max-width:900px){.tsm-brand-hub__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.tsm-brand-hub{padding:28px 14px 45px}.tsm-brand-hub__hero{margin-bottom:28px}.tsm-brand-hub__hero h1{font-size:34px}.tsm-brand-hub__hero p{font-size:16px}.tsm-brand-hub__grid{gap:11px}.tsm-brand-hub__card{min-height:162px;padding:18px 10px}.tsm-brand-hub__logo{height:52px}.tsm-brand-hub__logo img{max-width:116px;max-height:38px}.tsm-brand-hub__name{font-size:15px}.tsm-brand-hub__cta{grid-template-columns:1fr;padding:25px 20px}.tsm-brand-hub__cta a{width:100%}}
/* TSM brand hub END */
