/* global styles for use with the materialize framework */

h1, h2, h3, h4, h5, h6{ font-weight:600; }
h1{ font-size:2rem; color:#e4423c; }
h1 small{ font-size:60%; display:block; text-transform:uppercase; }
h2{ font-size:1.75rem; }
h3{ font-size:1.5rem; }
h4{ font-size:1.25rem; }
h5,h6{ font-size:1.15rem; }
h2,h3,h4,h5,h6{ color:#231f20; }
p { line-height: 2rem; }
strong{ font-weight:600; }
.section{ padding-top:3rem; padding-bottom:3rem; padding-right:1em; padding-left:1em; }
h3.px span{ background-color:#fff; padding:0 5px; }

.m-auto{ margin:auto; }

hr{ border: 0; height: 1px; background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.15), rgba(0, 0, 0, 0)); }

.relative{ position:relative; }

big{ line-height:2.25rem; font-weight:700; display:block; }

blockquote{ border-color:#8bc34a; }
blockquote small{ display:block; font-style:italic; color:#9E9E9E; }

/* margins */
.mb-15{ margin-bottom:-15px; }
.mt-20{ margin-top:-20px; }
.mb5{ margin-bottom:5px; }
.mt10{ margin-top:10px; }
.mb10{ margin-bottom:10px; }
.mr10{ margin-right:10px; }
.ml10{ margin-left:10px; }
.mbr10{ margin-bottom:10px; margin-right:10px; }
.mb15{ margin-bottom:15px; }
.mt20{ margin-top:20px; }
.mb20{ margin-bottom:20px; }
.mr20{ margin-right:20px; }
.ml20{ margin-left:20px; }
.mtb20{ margin-top:20px; margin-bottom:20px; }
.mbr20{ margin-bottom:20px; margin-right:20px; }
.mt30{ margin-top:30px; }
.mt40{ margin-top:40px; }
.mb40{ margin-bottom:40px; }
.ml40{ margin-left:40px; }
.mr40{ margin-right:40px; }
.mt60{ margin-top:60px; }
.mb60{ margin-bottom:60px; }
.mt80{ margin-top:80px; }
.mb80{ margin-bottom:80px; }
.mt100{ margin-top:100px; }
.mb100{ margin-bottom:100px; }
.mt120{ margin-top:120px; }
.mb120{ margin-bottom:120px; }
.ml-100{ margin-left:-100px;}
.no-margin{ margin:0 !important; }
.no-margin-top{ margin-top:0; }
.no-margin-bottom{ margin-bottom:0; }

/* paddings */
.pt5{ padding-top:5px; }
.pb5{ padding-bottom:5px; }
.plr5{ padding-left:5px; padding-right:5px; }
.p10{ padding:10px; }
.pt10{ padding-top:10px; }
.pb10{ padding-bottom:10px; }
.pl10{ padding-left:10px; }
.pr10{ padding-right:10px; }
.plr10{ padding-left:10px; padding-right:10px; }
.pl15{ padding-left:15px; }
.p20{ padding:20px; }
.pt20{ padding-top:20px; }
.pb20{ padding-bottom:20px; }
.ptb20{ padding-top:20px; padding-bottom:20px; }
.pl20{ padding-left:20px; }
.pr20{ padding-right:20px; }
.plr20{ padding-left:20px; padding-right:20px; }
.pl30{ padding-left:30px; }
.pr30{ padding-right:30px; }
.plr30{ padding-left:30px; padding-right:30px; }
.pt40{ padding-top:40px; }
.pb40{ padding-bottom:40px; }
.plr40{ padding-left:40px; padding-right:40px; }
.pt60{ padding-top:60px; }
.pb60{ padding-bottom:60px; }
.pt80{ padding-top:80px; }
.pb80{ padding-bottom:80px; }
.pt100{ padding-top:100px; }
.pb100{ padding-bottom:100px; }
.pt120{ padding-top:120px; }
.pb120{ padding-bottom:120px; }
.pt140{ padding-top:140px; }
.pb140{ padding-bottom:140px; }
.no-padding{ padding:0 !important; }
.pad-left-20{ padding-left:20px; }
.pad-right-20{ padding-right:20px; }
.pbrl20 { padding-bottom: 20px; padding-right: 20px; padding-left: 20px; }

small,
.disclaimer{ font-size:13px; }
.disclaimer{ line-height: 1.25rem; }

.uppercase{ text-transform:uppercase; }

.rounded{ border-radius:4px 4px 4px 4px; }
.rounded-bl{ border-radius:0 0 0 4px; }
.rounded-br{ border-radius:0 0 4px  0; }
.rounded-tl{ border-radius:4px 0 0 0; }
.rounded-tr{ border-radius:0 4px 0 0; }
.rounded-blr{ border-radius: 0 0 4px 4px; }

.btn-large { font-size: 26px; line-height: 56px; height: 56px; }
.btn-block{ display:block; }

/* list */
ul.list,
.features ul,
.description ul{ margin: 10px 0 10px 20px; padding-left:20px; }
ul.list li{ list-style-type:disc; }
.features ul li,
.description ul li{ list-style-type:disc; line-height:2rem; }
ul.list-inline li{ display:inline-block; margin:0 2px; }


/* inputs/form stuff */
input{ color:rgba(0,0,0,1); border-color:rgba(0,0,0,1); !important; }
input:focus{ border-color:rgba(0,0,0,1); !important; }

input:not([type]):focus:not([readonly]),
input[type=text]:focus:not([readonly]),
input[type=password]:focus:not([readonly]),
input[type=email]:focus:not([readonly]),
input[type=url]:focus:not([readonly]),
input[type=time]:focus:not([readonly]),
input[type=date]:focus:not([readonly]),
input[type=datetime-local]:focus:not([readonly]),
input[type=tel]:focus:not([readonly]),
input[type=number]:focus:not([readonly]),
input[type=search]:focus:not([readonly]),
textarea.materialize-textarea:focus:not([readonly]){ border-bottom: 1px solid rgba(0,0,0,1);; box-shadow: 0 1px 0 0 rgba(0,0,0,1); }

input:not([type]):focus:not([readonly]) + label,
input[type=text]:focus:not([readonly]) + label,
input[type=password]:focus:not([readonly]) + label,
input[type=email]:focus:not([readonly]) + label,
input[type=url]:focus:not([readonly]) + label,
input[type=time]:focus:not([readonly]) + label,
input[type=date]:focus:not([readonly]) + label,
input[type=datetime-local]:focus:not([readonly]) + label,
input[type=tel]:focus:not([readonly]) + label,
input[type=number]:focus:not([readonly]) + label,
input[type=search]:focus:not([readonly]) + label,
textarea.materialize-textarea:focus:not([readonly]) + label{ color:rgba(244,67,54,1);  }

input:not([type]),
input[type=text],
input[type=password],
input[type=email],
input[type=url],
input[type=time],
input[type=date],
input[type=datetime],
input[type=datetime-local],
input[type=tel],
input[type=number],
input[type=search],
textarea.materialize-textarea{ border-bottom: 1px solid rgba(0,0,0,.47); }

::-webkit-input-placeholder { color: rgba(0,0,0,.67); }
::-moz-placeholder { color: rgba(0,0,0,.67); }
:-ms-input-placeholder { color: rgba(0,0,0,.67); }
:-moz-placeholder { color: rgba(0,0,0,.67); }

/* input changing colors
	label color */
.input-field label { color: rgba(0,0,0,1); }
/* label focus color */
.select-wrapper input.select-dropdown:focus,
.input-field input[type=text]:focus + label { color: rgba(0,0,0,1); }
/* label underline focus color */
.select-wrapper input.select-dropdown:focus,
.input-field input[type=text]:focus { border-bottom: 1px solid rgba(0,0,0,.8); box-shadow: 0 1px 0 0 rgba(0,0,0,1); }
/* valid color */
.select-wrapper input.select-dropdown.valid,
.input-field input[type=text].valid { border-bottom: 1px solid rgba(0,0,0,.8); box-shadow: 0 1px 0 0 rgba(0,0,0,1); }
/* invalid color */
.select-wrapper input.select-dropdown.invalid,
.input-field input[type=text].invalid { border-bottom: 1px solid rgba(0,0,0,.8); box-shadow: 0 1px 0 0 rgba(0,0,0,1); }
/* icon prefix focus color */
.input-field .prefix.active { color: rgba(0,0,0,1); }

.modal.bottom-sheet{ max-height:90vh; }
.modal.bottom-sheet .modal-footer{ padding:4px 24px !important; }
.modal.bottom-sheet .modal-footer .btn{ margin-left:10px !important; }

/* Outline buttons */
.outline.white-text{ border:1px solid rgba(255,255,255,1); background-color:transparent !important; }
.outline.white-text:hover{ border:1px solid rgba(0,0,0,.5); background-color:rgba(0,0,0,.5) !important; }


/*
 * Listings
 */

.listings .main-header{ position:relative; z-index:2; }
.listings footer.page-footer{ position:fixed; z-index:2; bottom:0; width:100%; }
.listings .map_area{ position: fixed; top:0; right: 0; width:41.66666%;  height:100%; background:#ccc; }
.listings .footer_brands{ display:none; }

.listings .listing{ border-top:1px solid rgba(160,160,160,0.2); background:rgba(255,255,255,1); padding:20px 0; }
.listings .listing:nth-of-type(even){ background:rgba(182,182,182,0.25); }
.listings .listing a.phone{ font-size: 1.5rem; height: 40px; line-height: 40px; padding: 0 1.5rem; }
.listings .listing a.phone i{ font-size: 1.65rem; line-height: 1; float: left; margin-top: 8px; margin-right: 10px; }

.listings .listing .validations { margin-top:20px; display: flex; justify-content: flex-end; align-items: center; align-content: center; }
.listings .listing .validations div{ margin:0 4px; }
.listings .listing .validations img.brand_logo{ max-width:96px; }
.listings .listing .validations img.brand_logo.bryant{ max-width:80px; }
.listings .listing .validations img.brand_logo.fad.bryant{ max-width:80px; }
.listings .listing .validations img.brand_logo.fad{ max-width:46px; }
.listings .listing .validations img.validation_icon{ max-width:43px; }

.listings .noresults.flexbox-container { display: flex; flex-wrap: wrap; justify-content: center; /*align-items: center;*/ height:65vh;  }
.listings .noresults .input-field label { color: #212121; position: absolute; top:2rem; left: 1rem; font-size: 1rem; cursor: text; transition: .2s ease-out; }
.listings .noresults .input-field label.active { color:#727272; top: 1rem; font-size: 0.8rem; -webkit-transform: translateY(-60%); transform: translateY(-60%); }
.listings .noresults button{ position:absolute; top:0px; right:10px; cursor: pointer; }
.listings .noresults .search{ padding-top:40px; }
.listings .noresults .search-wrapper{ padding:20px 15px 15px; }
.listings .noresults .search-wrapper button{ position: absolute; top:15px; right:20px; cursor: pointer; }
.listings .noresults #search{ display:block; font-size:16px; font-weight:300; height:40px; margin:0; width:300px; }


.listings .search_area_wrapper{ display:none; }

/* current location snippet */
.current_location .search-wrapper{ padding:0; }
.current_location .search-wrapper button{ right:0; width:24px; height:24px; position:absolute; top:13px; right:5px; line-height: 28px; }
.current_location .search-wrapper .btn-floating i{ font-size:1rem; line-height:0; }
.current_location .search-wrapper.input-field label{ top:1.0rem; left:0rem; }
.current_location .search-wrapper.input-field label.active{ -webkit-transform: translateY(-110%); transform: translateY(-110%); }
.current_location{ display:inline-block; text-transform:uppercase; position:relative; bottom:0; }
.current_location a{ font-size:1.25rem; margin-left:10px; }
.current_location a i{ font-size:60%; }
.new_location{ padding:10px; text-transform:normal; }
#location_dropdown{ min-width:250px!important; }

/*
 * Cards
 */
.card .card-top-content{ padding-top:5px; padding-bottom:5px; padding-left:20px; }
.card .card-top-content .card-title{ font-weight:300; }

.products .card .card-image{ padding:20px 10px; }
.products .card .card-image img{ max-width:295px; margin:0 auto; }

.product-types .card .card-image img{ max-width:175px; margin:0 auto; padding-top:20px; }
