.row-10{
    margin: 0 -5px;
    > div{
        padding: 0 5px;
    }
}
.row-20{
    margin: 0 -10px;
    > div{
        padding: 0 10px;
    }
}
.row-40{
    margin: 0 -20px;
    > div{
        padding: 0 20px;
    }
}

figure{
    margin: 0;
    position: relative;
    &.cover{
        margin: 0;
        img {
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            object-fit: cover; 
            object-position: center;
        }
    }
    &.contain{
        img {
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            object-fit: contain; 
            object-position: center;
        }
    }
    img{
        width: 100%; 
        max-width: 100%;
    }
}

.icon{ 
    position: relative;
    img{
        display: block;
    }
}

a:focus,
button:focus{
    outline: none;
}
.btn,
.link{
    text-decoration: none;
    @include transition(all 200ms ease-out);
}
.btn:focus,
.btn:hover,
.link:focus,
.link:hover{
    text-decoration: none;
}
input,
select,
textarea{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

img { 
    max-width: 100%;
}

ul.item-list,
ul.nav-list {
    margin: 0;
    padding: 0;
    li {
        list-style: none; 
        float: left;
        a.link {
            display: block;
        }
    }
    &:before,
    &:after{
        content: ' '; 
        display: table;
    }
    &:after {
        clear: both;
    }
    &.fluid{
        li{
            width: 100%;
        }
    }
}

.iframe-container {
    position: relative;
    padding-bottom: 56%;
    overflow: hidden;
     iframe, 
     object, 
     embed {
         position: absolute;
        top: 0; 
        left: 0; 
        width: 100%; 
        height: 100%;
    }
}

.title,
.subtitle,
.desc{
    margin: 0;
}

.text-limit{
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    // -webkit-line-clamp: 2;
}