.border-none { border: none !important; }
.border-1px-solid { border: 1px solid white; }
.border-left-0 { border-left: 0; }

.cursor-default { cursor: default; }
.cursor-none { cursor: none; }
.cursor-pointer { cursor: pointer; }
.cursor-move {cursor: move; }
.cursor-grab { cursor: grab; }

.color-gray { color: gray; }
.color-transparent { color: transparent; }

.inline-block {display: inline-block;}
.inline { display:inline; }

button, label {
    outline: none !important;
}

.noselect {
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* Internet Explorer/Edge */
    user-select: none; /* Non-prefixed version, currently
                                  supported by Chrome and Opera */
}

.no-scroll-bars { overflow: hidden !important; overflow-y: hidden !important; overflow-x: hidden !important; }

/*
    CSS RULES FROM "BESP129-kitchensink-v1.pdf" DOCUMENT
*/

/** FONTS **/
.font-bold { font-family: "Playfair Display", sans-serif; }

.font-weight-bold { font-weight: 700; }

.font-weight-light { font-weight: 300; }

.font-weight-medium { font-weight: 500; }

.large-heading { font-family: "Playfair Display", sans-serif; font-weight: 300; font-size: 28px; line-height: 36px; }

.page-header { font-weight: 500; font-size: 25px; line-height: 30px; }

.text-style-1 { font-weight: 500; font-size: 15px; line-height: 20px; }

.text-style-2 { font-weight: 500; font-size: 12px; line-height: 18px; }

.body-text { font-weight: 300; font-size: 15px; line-height: 22px; }

.ordered-list { font-weight: 300; line-height: 22px; }

.ordered-list .index { font-size: 10px; }
.ordered-list .text { font-size: 15px; }

.unordered-list { font-weight: 300; line-height: 22px; }

.ordered-list .index { font-size: 10px; }
.ordered-list .text { font-size: 15px; }

.quotes { font-weight: 300; font-size: 25px; line-height: 30px; }

.small-text { font-weight: 500; font-size: 10px; line-height: 15px; letter-spacing: 20px; }

.description-text { font-weight: 500; font-size: 10px; line-height: 16px; letter-spacing: 25px; }

.text-style-3 { font-weight: 500; font-size: 20px; line-height: 24px; letter-spacing: 0; }

.smallest-text { font-weight: 500; font-size: 8px; line-height: 14px; letter-spacing: 0; }

/** COLORS **/

.dark-pink-color { color: #FF9BA5; }
.dark-pink-bg { background-color: #FF9BA5; }

.light-pink-color { color: #FFCCCD; }
.light-pink-bg { background-color: #FFCCCD; }

.light-grey-color { color: #F9F9F9; }
.light-grey-bg { background-color: #F9F9F9; }

.medium-grey-color { color: #CFCFCF; }
.medium-grey-bg { background-color: #CFCFCF; }

.dark-grey-color { color: #A0A0A0; }
.dark-grey-bg { background-color: #A0A0A0; }

.light-black-color { color: #646464; }
.dark-black-bg { background-color: #646464; }

.dark-black-color { color: #282828; }
.dark-black-bg { background-color: #282828; }

/** LINES & STROKES **/

.light-grey-line { background-color: #E6E6E6; height: 1px; }

.medium-grey-line { background-color: #CFCFCF; height: 1px; }

.dark-grey-line { background-color: #646464; height: 1px; }

.pink-line { background-color: #FFCCCD; height: 1px; }

/*
    FONT
*/
.font-size-150 {font-size: 150% !important;}
.font-size-200 {font-size: 200% !important;}
.font-size-300 {font-size: 300% !important;}
.font-size-400 {font-size: 400% !important;}
.font-size-12px { font-size: 12px !important; }
.font-size-14px { font-size: 14px !important; }
.font-size-16px { font-size: 16px !important; }
.font-size-18px { font-size: 18px !important; }
.font-size-20px { font-size: 20px !important; }
.font-size-24px { font-size: 24px !important; }
.font-size-60px { font-size: 60px !important; }

.font-weight-300 {font-weight: 300 !important;}
.font-weight-400 {font-weight: 400 !important;}
.font-weight-500 {font-weight: 500 !important;}
.font-weight-600 {font-weight: 600 !important;}
.font-weight-700 {font-weight: 700 !important;}

/*
    HEIGHT
*/
.min-height-none {min-height: 0 !important; }
.height-100 {height: 100%}

/*
    WIDTH
*/
.width-auto { width: auto; }
.white-space-normal {white-space: normal;}


/*
    MARGINS
*/
.margin-auto {margin: auto !important;}
.margin-0 {margin: 0 !important;}

.margin-left-0,
.margin-left-0px { margin-left: 0 !important; }
.margin-left-5px { margin-left: 5px !important; }
.margin-left-10px { margin-left: 10px !important; }
.margin-left-15px { margin-left: 15px !important; }
.margin-left-20px { margin-left: 20px !important; }
.margin-left-30px { margin-left: 30px !important; }
.margin-left-40px { margin-left: 40px !important; }

.margin-right-0,
.margin-right-0px { margin-right: 0 !important; }
.margin-right-5px { margin-right: 5px !important; }
.margin-right-10px { margin-right: 10px !important; }
.margin-right-15px { margin-right: 15px !important; }
.margin-right-20px { margin-right: 20px !important; }
.margin-right-30px { margin-right: 30px !important; }
.margin-right-40px { margin-right: 40px !important; }

.margin-bottom-0,
.margin-bottom-0px { margin-bottom: 0 !important; }
.margin-bottom-5px { margin-bottom: 5px !important; }
.margin-bottom-10px { margin-bottom: 10px !important; }
.margin-bottom-15px { margin-bottom: 15px !important; }
.margin-bottom-20px { margin-bottom: 20px !important; }
.margin-bottom-25px { margin-bottom: 25px !important; }
.margin-bottom-30px { margin-bottom: 30px !important; }
.margin-bottom-40px { margin-bottom: 40px !important; }

.margin-top-0,
.margin-top-0px { margin-top: 0 !important; }
.margin-top-5px { margin-top: 5px !important; }
.margin-top-10px { margin-top: 10px !important; }
.margin-top-15px { margin-top: 15px !important; }
.margin-top-20px { margin-top: 20px !important; }
.margin-top-25px { margin-top: 25px !important; }
.margin-top-30px { margin-top: 30px !important; }
.margin-top-40px { margin-top: 40px !important; }

/*
    OVERFLOW
*/
.overflow-x-hidden { overflow-x: hidden; }
.overflow-y-hidden { overflow-y: hidden; }
.overflow-y-auto { overflow-y: auto; }
.overflow-y-scroll { overflow-y: scroll; }
.overflow-hidden { overflow: hidden; }
/*
    PADDING
*/
.padding-0 { padding: 0 !important; }
.padding-5px { padding: 5px; }
.padding-10px { padding: 10px; }
.padding-15px { padding: 15px; }
.padding-20px { padding: 20px; }

.padding-top-0 { padding-top: 0 !important; }
.padding-top-10px { padding-top: 10px !important;}
.padding-top-15px { padding-top: 15px !important;}
.padding-top-20px { padding-top: 20px !important; }

.padding-bottom-0 { padding-bottom: 0 !important; }
.padding-bottom-5px { padding-bottom: 5px !important; }
.padding-bottom-10px { padding-bottom: 10px !important;}
.padding-bottom-120px { padding-bottom: 120px !important;}
.padding-left-0 { padding-left: 0 !important; }
.padding-left-5 { padding-left: 5px !important; }
.padding-left-3px { padding-left: 3px !important; }
.padding-left-15px { padding-left: 15px; }
.padding-left-40px { padding-left: 40px !important; }
.padding-right-0 { padding-right: 0 !important; }
.padding-right-40px { padding-right: 40px !important; }
.padding-right-80px { padding-right: 80px !important; }
.padding-right-3px { padding-right: 3px !important; }
.padding-right-10px { padding-right: 10px !important; }
/*
    POSITION
*/
.position-absolute { position: absolute;}
.position-relative { position: relative;}

.select-style { -moz-appearance:none; }

.table-layout-fixed { table-layout: fixed; }
/*
    TEXT ALIGN
*/
.text-decoration-none,
.text-decoration-none:hover,
.text-decoration-none:active,
.text-decoration-none:focus { text-decoration: none }
.text-decoration-underline {text-decoration: underline; }

.resize-none{ resize:none; }
.resize-vertical { resize:vertical; }

.bg-white {background: #fff !important;}
.bg-transparent {background: transparent !important;}

/*
    WORDS BREAK
*/

.word-break {
    word-break: break-all;
}

/*
    WIDTH
*/
.width-100 { width: 100% !important; }
.width-70 { width: 70% !important; }
.width-65 { width: 65% !important; }
.width-35 { width: 35% !important; }
.width-30 { width: 30% !important; }

/*
    Z-INDEX
*/
.z-index-0 { z-index: 0 !important; }

a,
a:hover,
button,
.btn,
.btn:hover {
    transition: all .3s;
}
.vertical-align-bottom,
.valign-bottom {vertical-align: bottom !important;}
.valign-middle,
.vertical-align-middle {vertical-align: middle !important; }

.th-border-left { border-left: 2px solid #ddd !important; }

.fakeinput {width:1px !important; position:absolute !important; border:none !important; padding:0 !important;}
.fake-auto-complete { width: 1px; height: 1px; overflow: hidden;
    clip: rect(1px 1px 1px 1px);
    clip-path: inset(1px 1px);
}

.strong {font-weight: bold;}

.rounded { border-radius: 50%; }

.alert { word-wrap: break-word; }
.alert.alert-dismissible { margin-top: 15px; }
.main-alert { border-radius: 0;}
@media (max-width: 768px) {
    .main-alert { margin-left: -15px; margin-right: -15px; border-radius: 0;}
}

select,
input[type=text],
input[type=number],
input[type=email],
input[type=tel],
input[type=date],
input[type=range],
input[type=time],
input[type=url],
input[type=search] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.col-no-padding {
    padding: 0;
}