
/*banner*/
.banner{
    width:100%;

    position:relative;
}
.banner>img{
    height:700px;
    width:100%;
}
// Notes on the classes:
//
// 1. .carousel.pointer-event should ideally be pan-y (to allow for users to scroll vertically)
//    even when their scroll action started on a carousel, but for compatibility (with Firefox)
//    we're preventing all actions instead
// 2. The .carousel-item-left and .carousel-item-right is used to indicate where
//    the active slide is heading.
// 3. .active.carousel-item is the current slide.
// 4. .active.carousel-item-left and .active.carousel-item-right is the current
//    slide in its in-transition state. Only one of these occurs at a time.
// 5. .carousel-item-next.carousel-item-left and .carousel-item-prev.carousel-item-right
//    is the upcoming slide in transition.

.carousel {
  position: relative;
}

.carousel.pointer-event {
  touch-action: pan-y;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
  @include clearfix();
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  @include transition($carousel-transition);
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  transform: translateX(-100%);
}


//
// Alternate transitions
//

.carousel-fade {
  .carousel-item {
    opacity: 0;
    transition-property: opacity;
    transform: none;
  }

  .carousel-item.active,
  .carousel-item-next.carousel-item-left,
  .carousel-item-prev.carousel-item-right {
    z-index: 1;
    opacity: 1;
  }

  .active.carousel-item-left,
  .active.carousel-item-right {
    z-index: 0;
    opacity: 0;
    @include transition(0s $carousel-transition-duration opacity);
  }
}


//
// Left/right controls for nav
//

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  // Use flex for alignment (1-3)
  display: flex; // 1. allow flex styles
  align-items: center; // 2. vertically center contents
  justify-content: center; // 3. horizontally center contents
  width: $carousel-control-width;
  color: $carousel-control-color;
  text-align: center;
  opacity: $carousel-control-opacity;
  @include transition($carousel-control-transition);

  // Hover/focus state
  @include hover-focus {
    color: $carousel-control-color;
    text-decoration: none;
    outline: 0;
    opacity: $carousel-control-hover-opacity;
  }
}
.carousel-control-prev {
  left: 0;
  @if $enable-gradients {
    background: linear-gradient(90deg, rgba($black, .25), rgba($black, .001));
  }
}
.carousel-control-next {
  right: 0;
  @if $enable-gradients {
    background: linear-gradient(270deg, rgba($black, .25), rgba($black, .001));
  }
}

// Icons for within
.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: $carousel-control-icon-width;
  height: $carousel-control-icon-width;
  background: no-repeat 50% / 100% 100%;
}
.carousel-control-prev-icon {
  background-image: $carousel-control-prev-icon-bg;
}
.carousel-control-next-icon {
  background-image: $carousel-control-next-icon-bg;
}


// Optional indicator pips
//
// Add an ordered list with the following class and add a list item for each
// slide your carousel holds.

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0; // override <ol> default
  // Use the .carousel-control's width as margin so we don't overlay those
  margin-right: $carousel-control-width;
  margin-left: $carousel-control-width;
  list-style: none;

  li {
    box-sizing: content-box;
    flex: 0 1 auto;
    width: $carousel-indicator-width;
    height: $carousel-indicator-height;
    margin-right: $carousel-indicator-spacer;
    margin-left: $carousel-indicator-spacer;
    text-indent: -999px;
    cursor: pointer;
    background-color: $carousel-indicator-active-bg;
    background-clip: padding-box;
    // Use transparent borders to increase the hit area by 10px on top and bottom.
    border-top: $carousel-indicator-hit-area-height solid transparent;
    border-bottom: $carousel-indicator-hit-area-height solid transparent;
    opacity: .5;
    @include transition($carousel-indicator-transition);
  }

  .active {
    opacity: 1;
  }
}


// Optional captions
//
//

.carousel-caption {
  position: absolute;
  right: (100% - $carousel-caption-width) / 2;
  bottom: 20px;
  left: (100% - $carousel-caption-width) / 2;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: $carousel-caption-color;
  text-align: center;
}

.self-container{
    width:100%;
    display: flex;
    justify-content: center;
}
.banner .self-container{
    position:absolute;
    top:0;
    height:100%;
    left:50%;
    transform: translateX(-50%);
}
.banner-content{
    height:100%;
    display: flex;
    justify-content: space-around;
    align-items: center;
}
.banner-content img{
    position:relative;
    right:-1000px;

}
.bannerRight{
    animation: bannerRight 1s;
    -moz-animation: bannerRight 1s;	/* Firefox */
    -webkit-animation: bannerRight 1s;	/* Safari 和 Chrome */
    -o-animation: bannerRight 1s;	/* Opera */
    animation-fill-mode : forwards;
}
/*体验*/
.experience p{
    font-size:40px;
    color:white;
    letter-spacing: 5px;
}
.index-right1{
    margin-bottom:15px;
    position:relative;
    left:-1000px;
    animation: bannerLeft 1s;
    -moz-animation: bannerLeft 1s;	/* Firefox */
    -webkit-animation: bannerLeft 1s;	/* Safari 和 Chrome */
    -o-animation: bannerLeft 1s;	/* Opera */
    animation-fill-mode : forwards;
}
.exp-submit{
    width:100%;
    margin-top:25px;
    border-radius:30px;
    display: flex;
    align-items: center;
}
.exp-submit a:nth-child(3),.exp-submit a:nth-child(4){
    margin-left:30px;
}
.exper,.phone-exper,.exp-submit .consult{
    padding: 5px 30px;
    margin:5px 0;
    position: relative;
    right: -2px;
    font-size:20px;
    color:white;
    background: #F67D09;
    border:1px solid white;
    border-radius:40px;
    text-align: center;
    cursor:pointer;
    text-decoration: none;
}
.exper:hover,.exp-submit .consult:hover{
    background: white;
    color:#F67D09;
    text-decoration: none;
}

.phone-exper:hover{
    background: white;
    border:1px solid white;
    color:#F67D09;
    text-decoration: none;
}

/*新零售*/
.newSale{
    margin-top:90px;
    text-align: center;
}
.newSale-body{
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top:30px;
}
.newSale-class p{
    font-size:30px;
    /* color:#0074ff; */
	color: #357dcf;
}
.newSale-class p span{
    font-size:50px;
}
.newSale-class div{
    font-size:18px;
    color:#333333;
}
.newSale-img img{
    margin: 0 auto; //更改
}
.newSalet {
	font-size: 16px;
}
/*功能概览*/
.browse{
    background: #f3f4f6;
	padding: 20px 0;
}
.browse .container>h3{
    margin-top:70px;
}

.program-ui{
	/* padding-left: 20px; */
	width: 100%;
	/* margin-top: 20px; */
}
.program-ui li {
	/* list-style-type: square; */
	/* width: 33.3%; */
	/* float: left; */
	height: 35px;
	line-height: 35px;
	color: #666666;
}
.program-ui li:before {
    content: "";
    display: inline-block;
    width: 2px;
    height: 2px;
    background-color: #666666;
    /* border-radius: 50%; */
	position: absolute;
	margin-top: 20px;
	margin-left: -8px;
}
/* .program-ui li:hover{
	color: #00e4ff;
} */

.browse-body{
    display: flex;
    align-items: center;
    margin-top: 40px;
    background: white;
    margin-bottom:90px;
}
.browse-left{
    position:relative;
    margin:60px 0 60px 30px;
}
.browse-left>li{
    height:50px;
    line-height:50px;
    font-size: 16px;
    width:150px;
    border-right:2px solid #e6e6e6;
    cursor:pointer;
    padding-left:30px;
}

.browse-left>li:hover{
    /* color:#266df0; */
	color: #357dcf;
}
.browse-left>li.active{
    color:#FFFFFF;
    /* background: #266df0; */
	background: #357dcf;
}
.browse-left .line{
    width: 2px;
    height:50px;
    position:absolute;
    top: 0;
    right:0;
    padding:0;
    border:none;
    background: #52a1fe;
}
.browse-right{
    width:100%;
    height:460px;
    position:relative;
}
.browse-right>li{
    height:100%;
    align-items: center;
    justify-content: space-between;
    padding: 0 80px;
    width:100%;
    position:absolute;
    top:0;
    background: white;
    display: none;
}
.browse-right>li.change{
    display: flex;

}
.browse-right li{
    margin-top:30px;
    font-size:14px;
    color:#999;
}
.browse-right li h3{
    color:#333;
}
.erp-Consultation {
    font-size:20px;
    line-height:48px;
    height:50px;
    text-align: center;
    width:150px;
    border:1px solid #266df0;
    border-radius: 30px;
    margin:40px 0;
    color:#266df0;
    cursor:pointer;
    display: block;
}
.erp-Consultation:hover{
    /* background: #266df0; */
    /* border:1px solid #266df0; */
	background: #357dcf;
	border: 1px solid #357dcf;
    color:white;
}
/* 收银功能 */
.cash_fun{
	width: 100%;
	background: #FFFFFF;
	/* height: 1000px; */
}
.cash-info h3{
	margin: 140px 0 30px;
	text-align: center;
}
.cash-info p{
	text-align: center;
	margin-bottom: 40px;
	font-size: 16px;
}
.cash-info img{
	width: 100%;
	margin-bottom:140px ;
}
/* 销售收据可视化分析 */
.data-analysis{
	width: 100%;
	background: #f3f4f6;
	padding: 40px 0;
	/* height: 1000px; */
}
.data-info h3{
	margin: 40px 0 30px;
	text-align: center;
}
.data-info p{
	text-align: center;
	margin-bottom: 45px;
	font-size: 16px;
}
.data-info img{
	width: 100%;
	margin-bottom:80px ;
}
/*  erp关联小程序*/
.erp-Relation-smallroutine{
	width: 100%;
	background: #FFFFFF;
	/* height: 1000px; */
}
.Relation-info h3{
	margin: 130px 0 100px;
	text-align: center;
}
.Relation-info img{
	width: 100%;
	margin-bottom:130px ;
}
/* 吊牌打印 */
.barcode-Printing{
	width: 100%;
	background: #f3f4f6;
	padding: 20px 0;
	/* height: 1000px; */
}
.barcode-info h3{
	margin: 75px 0 30px;
	text-align: center;
}
.barcode-info p{
	text-align: center;
	margin-bottom: 38px;
	font-size: 16px;
}
.barcode-info img{
	width: 100%;
	margin-bottom:75px ;
}
/*解决方案*/
.programme{
    margin-top:90px;
    position:relative;
    overflow: hidden;
	padding: 0 10px;
}
.programme .container{
    position:absolute;
    top:0;
    left:50%;
    transform: translateX(-50%);
    color:white;
    width:100%;
}
.programme .container>h3{
    margin-top:70px;
    font-weight: 100;
}
.programme .container>p{
    text-align: center;
    width: 70%;
    margin:20px auto;
    line-height:25px;
    opacity: 0;
    letter-spacing: 2px;
    color:#cdcdcd;
    font-size:14px;
}
.pro-body{
    margin-top:100px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}
.pro-body ul{
    margin-left:100px;
}
.pro-body ul li{
    color:#cdcdcd;
    height:50px;
    line-height:50px;
    font-size:14px;
}

.cxbtn {
	width: 110px;
	height: 35px;
	border: 1px dashed #ffba41;
	border-radius: 4px;
	color: #676568;
	text-align: center;
	line-height: 35px;
	margin-bottom: 15px;
	background: #fff6e7;
}
.erptcpbtn {
	width: 180px;
	height: 60px;
	color: #ffffff;
	border: 0px;
	background: #ff4401;
	border-radius: 30px;
	font-size: 18px;
	font-weight: bold;
	line-height: 60px;
	text-align: center;
}
/*数据管理*/
.dataManage{
    width:100%;
    margin-top:90px;
}
.dataManage-tittle{
    width:100%;
    font-size:30px;
    text-align: center;
    margin-bottom:50px;
}
.dataManage-body{
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap:wrap;
}
.dataManage-class{
    height:270px;
    width:250px;
    text-align: center;
    border:1px solid #e8f1f6;
    margin-bottom:30px;
}
.dataManage-class img{
    margin: 30px 0;
}
.dataManage-class h3{
    font-size:20px;
}
.dataManage-class h3:hover{
    color: #266df0;
}
.unborder{
    border:none;
}
.dataManage-class p{
    height:40px;
    font-size:14px;
    color:#999;
    text-align: left;
    padding: 0 15px;
    margin-bottom:50px;
    margin-top: 15px;
}

/*行业*/
.industry{
    width:100%;
    margin-top:90px;
}
.industry-tittle{
    width:100%;
    text-align: center;
    margin-bottom:50px;
	font-size: 30px;
}
.industry-body{
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    width:100%;
}
.industry-body .imgLeft,.industry-body .imgRight{
    width:35px;
    cursor:pointer;
}
.industry-body .imgLeft{
    margin-right:15px;
}
.industry-body .imgRight{
    margin-left:15px;
}
.industry-classWrap{
    width:calc(100% - 100px);
    overflow: hidden;
    position:relative;
}
.industry-moveImg{
    display: flex;
    align-items: center;
    position:relative;
}
.industry-class{
    width:250px;
    text-align: center;
    margin-bottom:30px;
}
.industry-class img{
    width:250px;
	transition: all 0.6s; 
}
.industry-class img:hover{
   	 transform: scale(0.8);  
}
.industry-class p{
    height:40px;
    line-height:40px;
    font-size:20px;
    color:#666666;
    text-align: center;
}

/*专业ERP*/
.major{
    margin-top:90px;
    text-align: center;
	background: #f3f8fe;
	padding-top: 70px;
	padding-bottom: 40px;
}
.major img{
    margin-top:50px;
}

/*试用*/
.try{
    margin:100px 0;
}
.try-tittle{
    font-size:30px;
    text-align: center;
}
.promptly{
    display: block;
    height: 40px;
    line-height: 40px;
    text-align: center;
    background: #197ffd;
    color: white;
    font-size: 14px;
    width: 140px;
    margin: 20px auto;
    border-radius: 30px;
    cursor:pointer;
    border:1px solid #197ffd;
}
.promptly:hover{
    border:1px solid #197ffd;
    color:#197ffd;
    background: white;
    text-decoration: none;
}
/* 新增字体颜色 */
.c9{
	color: #999999;
}
/*ERP功能添加 start */
.newSale-title{
  width: 76%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 auto 10px;
  font-size: 20px;
  color: rgba(183,183,183,0.7);
  font-size: 18px;
  height: 50px;
  line-height: 50px;
  margin-top: 80px;
}
.Middle{
	color: #333333;
	font-size: 24px;
}
.newSale-img{
	margin: 80px 0;
	
	align-items: center;
	position:relative;
}
.ERP-Fun{
	width: 100%;
	display: flex; 
	align-items: center;
	justify-content: space-between;
	margin-top: 50px;
	flex-wrap:wrap;
}

.Fun-Title{
	width: 140px;
	height: 30px;
	background: #276def;
	line-height: 30px;
	border-radius: 15px;
	color: #FFFFFF;
	    margin-bottom: 20px;
}

.Fun-Info {
text-align: left;
height: 50px;
line-height: 50px;
padding: 0 10px;
}
.Fun-Info:hover{
	color: #276def;
}
.Fun-Info img{
	margin-top: 0px;
    margin-right: 10px;
	vertical-align: middle;
	
}

.dataManage-class1{
    height:270px;
    width:330px;
    text-align: center;
    border:1px solid #e8f1f6;
    margin-bottom:30px;
}
.dataManage-class1 img{
    margin: 30px 0;
}
.dataManage-class1 h3{
    font-size:20px;
}

.dataManage-class1 p{
    height:40px;
    font-size:14px;
    color:#999;
    text-align: left;
    padding: 0 15px;
    margin-bottom:50px;
    margin-top: 15px;
}
.newSale-title1{
	text-align: center;
	font-size: 16px;
	height: 40px;
	line-height: 40px;
}
.carousel-control-next, .carousel-control-prev{
	width: inherit;
}
a:not([href]):not([tabindex]) {
    color:#ffffff;
    text-decoration: none;
}
.newSaleTitle{
	font-size: 30px;
}

/* end */


@media (min-width: 768px) and (max-width: 992px) {
    /*banner*/
    .banner img {
        height: 350px;
    }
    .banner-content img {
        display: none;
    }
    .experience {
        width:100%;
        text-align: center;
    }
    .experience p {
        font-size: 25px;
        margin-bottom:20px;
    }
    .newSale-img img{
        width:100%;
    }

    /*功能概览*/
    .browse-right li img{
        width:200px;
    }
    /*解决方案*/
   .pro-body img{
        /* display: none; */
		width: 90%;
    }
    .pro-body ul {
        margin-left: 0;
    }

   /* .major img{
        width:80%;
    } */
}

.bottom-Form-Title{
	margin-bottom: 1rem;
}
.programmeTitle{
		font-size: 30px;
	}
	.majorsTitle{
		font-size: 30px;
	}
	.barcodeTitle{
		font-size: 30px;
	}
	.RelationTitle{
		font-size: 30px;
	}
	.analysisTitle{
		font-size: 30px;
	}
	.browsesTitle{
		font-size: 30px;
	}
	.cash_funTitle{
		font-size: 30px;
	}
@media screen and (max-width: 767px) {
	.browse-right li h3{
		text-align: center;
	}
	.banner-content {
	    width: calc(100% - 10px);
	    padding: 0 5px;
	}
	.experience p{
		font-size: 12px;
	}
    /*banner*/
    .banner>img {
        height: 200px;
		
		
    width: 100%;
    }
   .bannerRight{
	   width: 180px;
   }
    .experience {
        text-align: center;
    }
   
    .exp-submit{
        justify-content: center;
    }
    .exper, .phone-exper, .exp-submit .consult {
        font-size: 12px;
        text-decoration: none;
        border-radius: 40px;
		padding: 5px 10px;
    }
    .try-tittle{
        opacity: 1;
    }
    /*新零售*/
    .newSale-body{
        justify-content: center;
    }
    .newSale-class{
        margin: 0 30px;
    }
    .newSale-class p span {
        font-size: 40px;
    }
    .newSale-class div {
        font-size: 16px;
    }
    .newSale-img img{
        width:80%;
    }

    /*功能概览*/
    .browse-right li img{
        display: none;
    }
    .browse-left{
        margin: 60px 0 60px 0;
    }
    .browse-left li{
        font-size:14px;
        width:120px;
    }

    .browse-right li{
        width:100%;
        padding:0;
    }
    .browse-right li>div{
        margin-left:5px;
    }
    .browse-right h3{
        font-size:18px;
    }
    .browse-right ul{
        margin-left:10px;
    }
    .browse-right ul li {
        font-size: 14px;

    }
    .erp-Consultation {
        font-size: 16px;
        line-height: 30px;
        height: auto;
        text-align: center;
        width: 120px;
        border: 1px solid #4095ff;
        border-radius: 30px;
        margin: 40px auto;
        color: #4095ff;
        cursor: pointer;
		display: block;
    }

    /*解决方案*/
    .programme .container>p {
        width: 100%;
    }
    .pro-body{
        margin-top:20px;
    }
    .pro-body ul{
            margin-left:0;
    }
    .pro-body ul li{
        line-height: normal;
    }
   .pro-body img{
        /* display: none; */
		width: 90%;
    }
    .major{
        text-align: center;
    }
   /* .major img{
        width:90%;
    } */
    .industry-body,.dataManage-body{
        justify-content: space-around;
        flex-wrap: wrap;
    }
    .industry-class p{
        font-size:18px;
    }
	.newSale{
		margin-top: 80px;
	}
	.newSaleTitle{
		font-size: 24px;
	}
	.newSalet{
		margin-top: 10px;
	}
	.industry-tittle{
		font-size: 24px;
	}
	.programmeTitle{
		font-size: 24px;
	}
	.majorsTitle{
		font-size: 24px;
	}
	.barcodeTitle{
		font-size: 24px;
		
	}
	.barcode-info h3{
		    margin: 0 0 10px ;
		  
	}
	.barcode-Printing{
		padding-top: 40px;
	}
	.Relation-info h3{
		margin: 80px 0 30px ;
	}
	.RelationTitle{
		font-size: 24px;
	}
	.Relation-info img{
		margin-bottom: 80px;
	}
	.analysisTitle{
		font-size: 24px;
	}
	.data-analysis{
		padding-top: 10px;
	}
	.data-info h3{
		margin: 30px 0 10px;
	}
	.browsesTitle{
		font-size: 24px;
	}
	.browse{
		padding-top: 10px;
	}
	.cash_funTitle{
		font-size: 24px;
	}
	.cash-info img{
		margin-bottom: 80px;
	}
	.browse .container>h3{
		margin-top: 70px;
	}
	.browse-body{
		margin-top: 30px;
		margin-bottom: 0px;
	}
	.cash-info h3{
		margin: 80px 0 30px;
	}
     .Fun-Title{
		 font-size: 14px;
		     margin-bottom: 10px;
			 margin-top: 10px;
	 }
	 .Fun-Info{
		 font-size: 14px;
		 height: 40px;
		     line-height: 40px;
	 }
	 .ERP-Fun{
		 margin-top: 20px;
	 }

}
/*行业*/
@media (min-width: 607px) and (max-width: 1170px){
    .industry-body{
        padding:0 60px;
    }
    .major .container img{
        width:100%;
    }
}

// stylelint-disable at-rule-no-vendor-prefix, declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix

// Reboot
//
// Normalization of HTML elements, manually forked from Normalize.css to remove
// styles targeting irrelevant browsers while applying new styles.
//
// Normalize is licensed MIT. https://github.com/necolas/normalize.css


// Document
//
// 1. Change from `box-sizing: content-box` so that `width` is not affected by `padding` or `border`.
// 2. Change the default font family in all browsers.
// 3. Correct the line height in all browsers.
// 4. Prevent adjustments of font size after orientation changes in IE on Windows Phone and in iOS.
// 5. Change the default tap highlight to be completely transparent in iOS.

*,
*::before,
*::after {
  box-sizing: border-box; // 1
}

html {
  font-family: sans-serif; // 2
  line-height: 1.15; // 3
  -webkit-text-size-adjust: 100%; // 4
  -webkit-tap-highlight-color: rgba($black, 0); // 5
}

// Shim for "new" HTML5 structural elements to display correctly (IE10, older browsers)
// TODO: remove in v5
// stylelint-disable-next-line selector-list-comma-newline-after
article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

// Body
//
// 1. Remove the margin in all browsers.
// 2. As a best practice, apply a default `background-color`.
// 3. Set an explicit initial text-align value so that we can later use
//    the `inherit` value on things like `<th>` elements.

body {
  margin: 0; // 1
  font-family: $font-family-base;
  @include font-size($font-size-base);
  font-weight: $font-weight-base;
  line-height: $line-height-base;
  color: $body-color;
  text-align: left; // 3
  background-color: $body-bg; // 2
}

// Suppress the focus outline on elements that cannot be accessed via keyboard.
// This prevents an unwanted focus outline from appearing around elements that
// might still respond to pointer events.
//
// Credit: https://github.com/suitcss/base
[tabindex="-1"]:focus {
  outline: 0 !important;
}


// Content grouping
//
// 1. Add the correct box sizing in Firefox.
// 2. Show the overflow in Edge and IE.

hr {
  box-sizing: content-box; // 1
  height: 0; // 1
  overflow: visible; // 2
}


//
// Typography
//

// Remove top margins from headings
//
// By default, `<h1>`-`<h6>` all receive top and bottom margins. We nuke the top
// margin for easier control within type scales as it avoids margin collapsing.
// stylelint-disable-next-line selector-list-comma-newline-after
h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: $headings-margin-bottom;
}

// Reset margins on paragraphs
//
// Similarly, the top margin on `<p>`s get reset. However, we also reset the
// bottom margin to use `rem` units instead of `em`.
p {
  margin-top: 0;
  margin-bottom: $paragraph-margin-bottom;
}

// Abbreviations
//
// 1. Duplicate behavior to the data-* attribute for our tooltip plugin
// 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
// 3. Add explicit cursor to indicate changed behavior.
// 4. Remove the bottom border in Firefox 39-.
// 5. Prevent the text-decoration to be skipped.

abbr[title],
abbr[data-original-title] { // 1
  text-decoration: underline; // 2
  text-decoration: underline dotted; // 2
  cursor: help; // 3
  border-bottom: 0; // 4
  text-decoration-skip-ink: none; // 5
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: $dt-font-weight;
}

dd {
  margin-bottom: .5rem;
  margin-left: 0; // Undo browser default
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: $font-weight-bolder; // Add the correct font weight in Chrome, Edge, and Safari
}

small {
  @include font-size(80%); // Add the correct font size in all browsers
}

//
// Prevent `sub` and `sup` elements from affecting the line height in
// all browsers.
//

sub,
sup {
  position: relative;
  @include font-size(75%);
  line-height: 0;
  vertical-align: baseline;
}

sub { bottom: -.25em; }
sup { top: -.5em; }


//
// Links
//

a {
  color: $link-color;
  text-decoration: $link-decoration;
  background-color: transparent; // Remove the gray background on active links in IE 10.

  @include hover {
    color: $link-hover-color;
    text-decoration: $link-hover-decoration;
  }
}

// And undo these styles for placeholder links/named anchors (without href)
// which have not been made explicitly keyboard-focusable (without tabindex).
// It would be more straightforward to just use a[href] in previous block, but that
// causes specificity issues in many other styles that are too complex to fix.
// See https://github.com/twbs/bootstrap/issues/19402

a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;

  @include hover-focus {
    color: inherit;
    text-decoration: none;
  }

  &:focus {
    outline: 0;
  }
}


//
// Code
//

pre,
code,
kbd,
samp {
  font-family: $font-family-monospace;
  @include font-size(1em); // Correct the odd `em` font sizing in all browsers.
}

pre {
  // Remove browser default top margin
  margin-top: 0;
  // Reset browser default of `1em` to use `rem`s
  margin-bottom: 1rem;
  // Don't allow content to break outside
  overflow: auto;
}


//
// Figures
//

figure {
  // Apply a consistent margin strategy (matches our type styles).
  margin: 0 0 1rem;
}


//
// Images and content
//

img {
  vertical-align: middle;
  border-style: none; // Remove the border on images inside links in IE 10-.
}

svg {
  // Workaround for the SVG overflow bug in IE10/11 is still required.
  // See https://github.com/twbs/bootstrap/issues/26878
  overflow: hidden;
  vertical-align: middle;
}


//
// Tables
//

table {
  border-collapse: collapse; // Prevent double borders
}

caption {
  padding-top: $table-cell-padding;
  padding-bottom: $table-cell-padding;
  color: $table-caption-color;
  text-align: left;
  caption-side: bottom;
}

th {
  // Matches default `<td>` alignment by inheriting from the `<body>`, or the
  // closest parent with a set `text-align`.
  text-align: inherit;
}


//
// Forms
//

label {
  // Allow labels to use `margin` for spacing.
  display: inline-block;
  margin-bottom: $label-margin-bottom;
}

// Remove the default `border-radius` that macOS Chrome adds.
//
// Details at https://github.com/twbs/bootstrap/issues/24093
button {
  // stylelint-disable-next-line property-blacklist
  border-radius: 0;
}

// Work around a Firefox/IE bug where the transparent `button` background
// results in a loss of the default `button` focus styles.
//
// Credit: https://github.com/suitcss/base/
button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0; // Remove the margin in Firefox and Safari
  font-family: inherit;
  @include font-size(inherit);
  line-height: inherit;
}

button,
input {
  overflow: visible; // Show the overflow in Edge
}

button,
select {
  text-transform: none; // Remove the inheritance of text transform in Firefox
}

// Remove the inheritance of word-wrap in Safari.
//
// Details at https://github.com/twbs/bootstrap/issues/24990
select {
  word-wrap: normal;
}


// 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
//    controls in Android 4.
// 2. Correct the inability to style clickable types in iOS and Safari.
button,
[type="button"], // 1
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; // 2
}

// Opinionated: add "hand" cursor to non-disabled button elements.
@if $enable-pointer-cursor-for-buttons {
  button,
  [type="button"],
  [type="reset"],
  [type="submit"] {
    &:not(:disabled) {
      cursor: pointer;
    }
  }
}

// Remove inner border and padding from Firefox, but don't restore the outline like Normalize.
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box; // 1. Add the correct box sizing in IE 10-
  padding: 0; // 2. Remove the padding in IE 10-
}


input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  // Remove the default appearance of temporal inputs to avoid a Mobile Safari
  // bug where setting a custom line-height prevents text from being vertically
  // centered within the input.
  // See https://bugs.webkit.org/show_bug.cgi?id=139848
  // and https://github.com/twbs/bootstrap/issues/11266
  -webkit-appearance: listbox;
}

textarea {
  overflow: auto; // Remove the default vertical scrollbar in IE.
  // Textareas should really only resize vertically so they don't break their (horizontal) containers.
  resize: vertical;
}

fieldset {
  // Browsers set a default `min-width: min-content;` on fieldsets,
  // unlike e.g. `<div>`s, which have `min-width: 0;` by default.
  // So we reset that to ensure fieldsets behave more like a standard block element.
  // See https://github.com/twbs/bootstrap/issues/12359
  // and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements
  min-width: 0;
  // Reset the default outline behavior of fieldsets so they don't affect page layout.
  padding: 0;
  margin: 0;
  border: 0;
}

// 1. Correct the text wrapping in Edge and IE.
// 2. Correct the color inheritance from `fieldset` elements in IE.
legend {
  display: block;
  width: 100%;
  max-width: 100%; // 1
  padding: 0;
  margin-bottom: .5rem;
  @include font-size(1.5rem);
  line-height: inherit;
  color: inherit; // 2
  white-space: normal; // 1
}

progress {
  vertical-align: baseline; // Add the correct vertical alignment in Chrome, Firefox, and Opera.
}

// Correct the cursor style of increment and decrement buttons in Chrome.
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  // This overrides the extra rounded corners on search inputs in iOS so that our
  // `.form-control` class can properly style them. Note that this cannot simply
  // be added to `.form-control` as it's not specific enough. For details, see
  // https://github.com/twbs/bootstrap/issues/11586.
  outline-offset: -2px; // 2. Correct the outline style in Safari.
  -webkit-appearance: none;
}

//
// Remove the inner padding in Chrome and Safari on macOS.
//

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

//
// 1. Correct the inability to style clickable types in iOS and Safari.
// 2. Change font properties to `inherit` in Safari.
//

::-webkit-file-upload-button {
  font: inherit; // 2
  -webkit-appearance: button; // 1
}

//
// Correct element displays
//

output {
  display: inline-block;
}

summary {
  display: list-item; // Add the correct display in all browsers
  cursor: pointer;
}

template {
  display: none; // Add the correct display in IE
}

// Always hide an element with the `hidden` HTML attribute (from PureCSS).
// Needed for proper display in IE 10-.
[hidden] {
  display: none !important;
}

