/*
Theme Name: Surefoot Mat – Equine v2.0
Theme URI: 
Description: 
Author: Malvolio
Version: 2.0
Tags: none
*/


/* =Reset default browser CSS. 
-------------------------------------------------------------- */


@import url("https://use.typekit.net/fjc3mcg.css");


/* ----- GLOBAL FONTS & TYPE ----- */

body {
    font-family: "brandon-grotesque", sans-serif;
	font-weight: 400;
    font-size: 16px;
    padding:     0px;
    margin:      0px;
	line-height: 1.2;
	color: #424142;
	background-color: #ffffff;
}



p {
	padding: 0px 0px 20px 0px;
	margin: 0px;
}


h1 {
    font-family: "abril-display", serif;
    font-weight: 400;
    font-style: normal;
	font-size: 42px;
	margin: 0px 0px 30px 0px;
	padding: 0px;
}

h2 {
	font-size: 20px;
	margin: 0px 0px 30px 0px;
	padding: 0px;
	font-weight: 400;
}


h3 {
	font-family: "abril-display", serif;
    font-weight: 400;
    font-style: normal;
	font-size: 30px;
	margin: 0px 0px 30px 0px;
	padding: 0px;
}

h4 {
	font-weight: 700;
  	font-size: 20px;
  	margin: 0px 0px 10px 0px;
  	text-transform: uppercase;
  	letter-spacing: 2px;
	padding: 0px;
}

.icons-block h4 {
	font-family: "abril-display", serif;
    font-weight: 400;
	font-size: 18px;
	margin: 20px 0px;
    text-transform: none;
	letter-spacing: 0px;
}


.apps-block h4 {
  	font-size: 16px;
  	margin: 20px 0px;
}



h5 {
	font-family: "abril-display", serif;
    font-weight: 400;
    font-style: normal;
	font-size: 20px;
	margin: 20px 0px;
	padding: 0px;
}

h4 a, h5 a {
    color: #424142;
    text-decoration: none;
}



h6 {
    font-weight: 400;
    font-style: normal;
	font-size: 14px;
	margin: 0px;
	padding: 0px;
	color: #f58025;
}




ul {
	margin: 0px 0px 12px 15px;
	padding: 0;
}

ul li {
	list-style-type: "+";
	padding: 0px 0px 8px 5px;
	}


ol li {
  	list-style-type: numerals;
	padding: 0px 0px 8px 5px;
}


hr {
	border: none;
	margin: 20px 0px 15px 0px;
	clear: both;
    border-top: 1px solid #dfdddd;
}



b, strong {
	font-weight: 700;
}

a {
	color: #424142;
	text-decoration: underline;
	-webkit-transition: 0.5;
	-o-transition: 0.5;
	transition: 0.5;
	cursor: pointer;
}

a:hover {
	color: #f58025;
}


.image-caption {
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #767676;
  margin-top: 15px;
}



/* ----- LAYOUT ----- */

#header {
	width: 100%;
  	padding: 25px 0px;
	float: left;
	display: flex;
	justify-content: space-between;
	align-items: center;
    border-bottom: 1px solid #dfdddd;
}



#logo {
    margin-left: 25px;
}

#logo img {
    max-width: 180px;
}


#quote {
    margin-right: 25px;
    text-align: right;
}

#quote a {
    padding: 8px 15px;
    display: inline-block;
    text-transform: uppercase;
    text-decoration: none;
    transition: .5s ease;
    font-size: 15px;
    border: 1px solid #f58025;
}

#quote a:hover {
    transform: scale(1.05);
    background: #f58025;
    color: #ffffff;
}



/* ----- CONTENT BLOCKS ----- */


.image-block {
	overflow: hidden;
    background-size: cover;
	float: left;
    min-height: 350px;
	background-position: center;
	position: relative;
	width: 100%;
}



.cblock {
	width: 70%;
	padding: 70px 15% 70px 15%;
    float: left;
}



.block_2col50 {
    display: grid;
	gap: 100px;
    grid-template-columns: 1fr 1fr;
	width: 100%;
}

.block_2col50 .imgcol {
	background-size: cover;
	background-position: center;
}



.block_2col7525 {
	display: grid;
	gap: 100px;
    grid-template-columns: 3fr 1fr;
	width: 100%;
}



.block_3col {
	display: grid;
	gap: 100px;
    grid-template-columns: 1fr 1fr 1fr;
	width: 100%;
}



@media screen and (max-width: 1040px) {
.block_3col {
	grid-template-columns: 1fr;
	gap: 40px;
}
}

@media screen and (max-width: 800px) {
.block_2col50, .block_2col7525 {
	grid-template-columns: 1fr;
}
	
.block_2col50 {
	gap: 0px;
}
	
.block_2col50 .imgcol {
	height: 300px;
}

#mega-menu-wrap-main-menu {
	order: 3;
}
	
.mega-toggle-blocks-right {
	margin-right: 20px;		
}
}



.grey_block {
    background: #dfdddd;
}

.pastel-orange_block {
	background: #fff5ee;
}

.orange_block {
	background: #f58025;
}

.orange_block h1, .orange_block h2, .orange_block h3, .orange_block h4, .orange_block h5 {
	color: #ffffff;
}

.orange_block a.button, .orange_block a.button-small,
.woocommerce .orange_block a.button, .woocommerce .orange_block a.button-small {
	background: #424142 !important;
}

.topborder_block {
	border-top: 1px solid #dfdddd;
}




.icons-block, .apps-block {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
	gap: 12px;
	margin-top: 20px;
	font-size: 14px;
}

.icons-block div, .apps-block div {
    border: 1px solid #f58025;
    text-align: center;
	padding: 10px;
}


.text-boxes-block {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
	gap: 12px;
	margin-top: 20px;
}

.text-boxes-block div {
    border: 1px solid #f58025;
	padding: 20px;
}

.text-boxes-block div p {
	padding: 0px;
}


.products-block {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-row-gap: 20px;
  	grid-column-gap: 50px;
}

.products-block div {
    text-align: center;
}

.product-image {
    background-size: cover;
    background-position: center;
    width: 100%;
    padding-top: 100%;
}

@media screen and (max-width: 900px) {
.icons-block, .apps-block {
  grid-template-columns: 1fr 1fr !important;
}
	
.products-block {
  grid-template-columns: 1fr 1fr !important;
	gap: 20px !important;
}
}

@media screen and (max-width: 1140px) {
h5 {
	font-size: 16px !important;
}
}





/* ----- FAQ ACCORDION ----- */

.faq_block {
  padding-top: 40px;
  border-top: 1px solid #dfdddd;
  margin-top: -50px;
}

.postid-108 .faq_block {
  border-top: none;
}

p.accordion {
    background-color: #fbbb88;
    color: #424142;
    cursor: pointer;
    padding: 18px;
    width: 100%;
    text-align: left;
    border: none;
    outline: none;
    transition: 0.4s;
    margin-bottom:10px;
	font-weight: 300;
    font-size: 16px; 
}

/* Add a background color to the accordion if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
p.accordion.active, p.accordion:hover {
    background-color: #f58025;
}

/* Unicode character for "plus" sign (+) */
p.accordion:after {
    content: '\2795'; 
    font-size: 13px;
    color: #424142;
    float: right;
    margin-left: 5px;
}

/* Unicode character for "minus" sign (-) */
p.accordion.active:after {
    content: "\2796"; 
}

/* Style the element that is used for the panel class */

div.panel {
    padding: 0px 18px;
    background-color: white;
    max-height: 0;
    overflow: hidden;
    transition: 0.4s ease-in-out;
    opacity: 0;
    margin-bottom:10px;
}

div.panel.show {
    opacity: 1;
    max-height: 1000px; 
	padding: 10px 18px;
}




/* ----- FOOTER ----- */

#footer {
	background: #eceaea;
	width: 100%;
	color: #424142;
	float: left;
	padding: 25px 0px;
    font-size: 14px;
	display: flex;
	justify-content: space-between;
}

#footer a {
	text-decoration: none;
}

.credit {
    font-size: 10px;
    text-transform: uppercase;
  margin-top: 20px;
  display: block;
}

$footer a:hover {
	color: #424142 !important;
}


.flogo {
	max-width: 180px !important;
}


#footer .left {
    margin-left: 25px;
	text-align: center;
}

#footer .right {
    margin-right: 25px;
    text-align: right;
}


#footer .related {
    text-transform: uppercase;
    font-size: 10px;
	margin-top: 15px;
}

#footer .related img {
    vertical-align: bottom;
  width: 40px;
  margin: 0px 5px;
}







/* ----- FORMS ----- */

input[type="text"], input[type="password"], input[type="email"], input[type="tel"], textarea {
	padding:8px !important;
	font-family: "brandon-grotesque", sans-serif;
	color:#424142 !important;
	font-size: 16px !important;
	background:#ffffff;
	font-weight: 400;
	margin-bottom: 5px;
	border: 1px solid #f58025 !important;
}



input[type="submit"], .gform_button {
	padding: 14px;
	font-family: "brandon-grotesque", sans-serif;
	background-color: #f58025 !important;
	border: none;
	color: #ffffff;
	font-size: 16px !important;
    font-weight: 400 !important;
	text-decoration: none;
	text-transform: uppercase !important;
	-webkit-transition: 0.5s ease;
	-o-transition: 0.5s ease;
	transition: 0.5s ease;
	display: inline-block;
	border-radius: 0px !important;
}



a.button, a.wp-element-button {
	padding: 14px;
	font-family: "brandon-grotesque", sans-serif;
	background-color: #f58025;
	border: none;
	color: #ffffff;
	font-size: 16px !important;
    font-weight: 400 !important;
	text-decoration: none;
	text-transform: uppercase;
	-webkit-transition: 0.5s ease;
	-o-transition: 0.5s ease;
	transition: 0.5s ease;
	display: inline-block;
}



a.button-small, .read-more a {
	padding: 12px;
	font-family: "brandon-grotesque", sans-serif;
	text-transform: uppercase;
	background-color: #f58025;
	border: none !important;
	color: #ffffff;
	font-size: 14px !important;
    font-weight: 400;
	text-decoration: none;
	-webkit-transition: 0.5s ease;
	-o-transition: 0.5s ease;
	transition: 0.5s ease;
	display: inline-block;
}





.gform_button:hover, a.button:hover, a.wp-element-button:hover, a.button-small:hover {
	transform: scale(1.1);
}

.gfield_required {
	color: #f58025 !important;
}

.ui-datepicker {
	margin: 0px auto !important;
}

.gform_wrapper .gfield_checkbox li label, .gform_wrapper .gfield_radio li label, .gform_wrapper .chosen-container {
	vertical-align: top !important;
	font-size: 16px !important;
}

.gform_wrapper label.gfield_label, .gfield_label.gform-field-label.gfield_label_before_complex, .gfield_label.gform-field-label {
	font-size: 16px !important;
	font-weight: 700 !important;
}


.gform_wrapper form .gfield_consent_description ul li {
	list-style: disc !important;
}

.gform_wrapper form .gfield_consent_description ol li {
	list-style: numbers !important;
}

.gform_required_legend {
	display: none !important;
}

.gfield_description {
  color: #424142 !important;
}



/* ----- IMAGES ----- */


.alignleft, img.alignleft {
	display: inline;
	float: left;
	margin-right: 24px;
	margin-top: 4px;
}
.alignright, img.alignright {
	display: inline;
	float: right;
	margin-left: 24px;
	margin-top: 0px;
}
.aligncenter, img.aligncenter {
	clear: both;
	display: block;
	margin: 0 auto;
}
img.alignleft,
img.alignright,
img.aligncenter {
	margin-bottom: 12px;
}

a img {
	border: none;
}

a img:hover {
	background: none;
}


 img {
    max-width: 100%;
    height: auto;
}


@media screen and (max-width: 600px) {
.alignleft, img.alignleft, 
.alignright, img.alignright {
	clear: both !important;
	display: block !important;
	margin: 0 auto 12px auto;
	float: none !important;
}
}	




/* ----- WOOCOMMERCE ----- */


.woocommerce ul.products li.product .woocommerce-loop-product__title, .woocommerce-loop-product_title a, section.related h2.woocommerce-loop-product_title a {
    color: #424142;
	font-size: 20px;
	margin: 0px;
	padding: 0px;
	font-weight: 400;
	font-family: "abril-display", serif;
	line-height: 1;
}

.woocommerce .products ul, .woocommerce ul.products {
    text-align: center;
}

h2.woocommerce-loop-product_title {
    margin-bottom: 0px !important;
	line-height: 1px !important;
}

.woocommerce div.product div.images img {
    max-width: 600px;
}

.woocommerce ul.products li.product .price, .woocommerce ul.products li.product .price ins, .woocommerce div.product p.price, .woocommerce div.product p.price ins {
    color: #424142 !important;
    font-weight: 400 !important;
    font-size: 15px !important;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.woocommerce div.product .entry-summary p.price {
    color: #424142 !important;
    font-weight: 400 !important;
    font-size: 25px !important;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.woocommerce ul.products li.product .price del, .woocommerce div.product p.price del {
    color: #424142 !important;
    opacity: 1 !important;
}

.woocommerce span.onsale {
   background: #424142 !important; 
}

.wc-tab h2 {
    display: none;
}


h1.product_title {
    margin: 0px !important;
}


input[type="number"], select {
	padding:8px !important;
	font-family: "brandon-grotesque", sans-serif;
	font-size: 16px !important;
}

button.single_add_to_cart_button, .woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .wcppec-checkout-buttons__button {
    padding: 14px !important;
	font-family: "brandon-grotesque", sans-serif !important;
	text-transform: uppercase !important;
	background-color: #f58025 !important;
	border: none !important;
	border-radius: 0px !important;
	color: #ffffff !important;
	font-size: 16px !important;
    font-weight: 400 !important;
	text-decoration: none !important;
	-webkit-transition: 0.5s ease !important;
	-o-transition: 0.5s ease !important;
	transition: 0.5s ease !important;
}



button.single_add_to_cart_button:hover, .woocommerce a.button:hover {
	transform: scale(1.1) !important;
}



.woocommerce-error, .woocommerce-info, .woocommerce-message {
    background-color: #eceaea !important;
    color: #424142 !important;
}

.woocommerce-message::before, .woocommerce-info::before {
    color: #424142 !important;
}

.woocommerce-message, .woocommerce-info {
    border-top-color: #424142 !important;
}



.woocommerce-product-details__short-description {
    margin: 30px 0px;
}


.woocommerce-MyAccount-navigation ul li a {
    display: block;
    padding: 8px;
    border-bottom: 1px solid #424142;
	text-decoration: none;
}

.woocommerce-MyAccount-navigation li {
    list-style: none;
    padding: 0px;
}

.woocommerce table.cart td.actions .input-text {
    width: auto;
}


#customer_details {
	margin-bottom: 30px;
}

.woocommerce table.cart td.actions .input-text, .woocommerce-page #content table.cart td.actions .input-text, .woocommerce-page table.cart td.actions .input-text {
    width: inherit !important;
}

.woocommerce-cart table.cart td.actions .coupon .input-text {
    height: 48px !important;
}


.woocommerce-checkout #payment {
    background: #eceaea !important;
}

.woocommerce-checkout #payment div.payment_box {
    background-color: #eceaea !important;
    border: 1px solid #ffffff;
    color: #424142 !important;
}

.woocommerce-checkout #payment div.payment_box::before {
	display: none !important;
}

.woocommerce-checkout #payment div.payment_box .form-row, .woocommerce-checkout #payment div.form-row {
	margin: 0px;
	padding: 0px;
}

li.wc_payment_method {
    list-style-type: none !important;
}

.woocommerce-checkout #payment ul.payment_methods li img {
    display: none;
}
	

.woocommerce-product-details__short-description {
    width: 94%;
    float: left;
	padding: 25px 3% 5px 3%;
}

ul.custom-attributes {
	list-style: none;
	padding: 0px;
	margin: 20px 0px 10px 0px !important;
	width: 100%;
	border-top: 1px solid #eceaea;
}

ul.custom-attributes li {
	border-bottom: 1px solid #424142;
	padding: 9px 5px 7px 5px !important;
	list-style: none;
}

.attribute-label {
	display: inline-block;
	width: 35%;
	text-transform: uppercase;
	font-weight: 500;
	font-size: 11px;
}

.attribute-value {
	display: inline-block;
	width: 55%;
	font-size: 13px;
}


section.related {
	float: left !important;
	width: 100% !important;
}

section.related h2 {
    font-family: "abril-display", serif;
    font-weight: 400;
    font-style: normal;
	font-size: 30px;
	margin: 0px 0px 30px 0px;
	padding: 0px;
    text-align: center;
}

.woocommerce-variation-price {
	margin-bottom: 20px;
	font-weight: 400;
}




.woocommerce ul.products li.product a img, .woocommerce div.product div.images .flex-control-thumbs img {
    border: 1px solid #eceaea;
}



.wc-tabs-wrapper {
	margin-top: 80px;
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	margin: 0px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active::after {
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li::after, .woocommerce div.product .woocommerce-tabs ul.tabs li::before {
    display: none !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before {
    border-bottom: 1px solid #dfdddd !important;
}


.woocommerce div.product .woocommerce-tabs ul.tabs li {
    border: 0px !important;
    background-color: #ffffff !important;
    border-radius: 0px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    border-width: 1px 1px 0px 1px !important;
	border-style: solid !important;
	border-color: #dfdddd !important;
}

.woocommerce div.product .woocommerce-tabs .panel {
	border-width: 0px 1px 1px 1px !important;
	border-style: solid !important;
	border-color: #dfdddd !important;
	padding: 20px !important;
}


.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    font-weight: 400 !important;
	text-transform: uppercase;
	letter-spacing: 1px;
}

.woocommerce div.product form.cart .variations label {
    font-weight: 400 !important;
    text-transform: uppercase;
}

.woocommerce div.product form.cart .variations td.label {
    padding-right: 0px !important;
    width: 80px;
}

.woocommerce div.product form.cart .reset_variations {
    display: none !important;
}

body.archive .woocommerce-breadcrumb {
	display: none !important;
}

.woocommerce div.product div.images .flex-control-thumbs li {
	width: 100% !important;
	padding: 0px;
}

.woocommerce div.product div.images .flex-control-thumbs {
	overflow: visible !important;
	display: grid;
  	grid-template-columns: 1fr 1fr 1fr 1fr;
  	gap: 10px;
  	margin-top: 10px !important;
}







.rt-wpls .slick-slide {
	height: auto !important;
}

#sp-testimonial-free-wrapper-196 .sp-testimonial-free-section {
  margin-bottom: 0px !important;
}

.tablepress {
	--head-bg-color: #fff5ee !important;
}

.tablepress > :where(thead, tfoot) > * > th {
	font-size: 12px !important;
	text-align: center;
}

.tablepress > :not(caption) > * > * {
	vertical-align: middle !important;
	text-align: center !important;
}

.techspec > :not(caption) > * > * {
	text-align: left !important;
}


.tablepress > :not(caption) > * > .column-1 {
  text-align: left !important;
}


.tablepress i {
  color: #f58025;
}

#mega-menu-wrap-main-menu #mega-menu-main-menu img {
  max-width: 50% !important;
}

/* ===== MOCKUP CHANGES START — logged in CODE-CHANGES docs ===== */
#header{display:flex !important; align-items:center !important; justify-content:space-between !important; flex-wrap:nowrap !important; gap:12px; padding:10px 20px;}
#logo{flex-shrink:0;}
.mockup-phone-cta{display:flex;align-items:center;gap:6px;color:#fff !important;background:#f7941d;padding:8px 14px;border-radius:20px;text-decoration:none;font-weight:bold;font-size:14px;flex-shrink:0;white-space:nowrap;}
.mockup-phone-cta .phone-icon{font-size:16px;line-height:1;}
.mockup-phone-cta .phone-number{font-size:13px;}
#quote{flex-shrink:0;}

.mockup-cta-primary{background:#f7941d !important; color:#fff !important; border:2px solid #f7941d !important; box-sizing:border-box;}
.mockup-cta-secondary{background:transparent !important; color:#f7941d !important; border:2px solid #f7941d !important; font-weight:bold; padding:12px 24px; border-radius:4px; text-decoration:none; display:inline-block; font-size:13px; letter-spacing:0.5px; box-sizing:border-box;}
.mockup-cta-secondary:hover{background:#fff5e9 !important;}
.mockup-cta-block{text-align:center;margin:24px 0;}

.mockup-floating-call{position:fixed; bottom:20px; right:20px; z-index:9999; display:flex; align-items:center; justify-content:center; width:56px; height:56px; border-radius:50%; background:#f7941d; color:#fff !important; text-decoration:none; font-size:24px; box-shadow:0 4px 12px rgba(0,0,0,0.3);}

@media (max-width:767px){
  html, body{overflow-x:hidden !important; max-width:100vw;}
  #header{flex-wrap:nowrap !important; padding:6px 8px; width:100%; box-sizing:border-box; overflow:hidden;}
  #logo img{max-width:90px; height:auto;}
  #mega-menu-wrap-main-menu{flex:1 1 auto; min-width:0; overflow:hidden;}
  .mockup-phone-cta{width:26px;height:26px;padding:0;border-radius:50%;justify-content:center;}
  .mockup-phone-cta .phone-number{display:none;}
  .mockup-phone-cta .phone-icon{font-size:11px;}
  #quote .button{font-size:9px !important; padding:5px 7px !important; white-space:nowrap;}
  .mockup-cta-block .button, .mockup-cta-block .mockup-cta-secondary{width:100% !important; display:block !important; box-sizing:border-box !important; text-align:center !important;}
  .mockup-floating-call{width:52px; height:52px; bottom:16px; right:16px; font-size:22px;}
}
/* ===== MOCKUP CHANGES END ===== */