@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&display=swap');
/*font-family: "Poppins", sans-serif;*/
html { font-size: 100%; scroll-behavior: smooth; }
input:focus,
textarea:focus,
select:focus { outline: none !important; }
* { outline: none; margin: 0px; padding: 0px; box-sizing: border-box; font-family: "DM Sans", sans-serif; }
img { outline: none; }
body { font-family: "DM Sans", sans-serif; font-size: 1em; color: #383838; overflow: auto; }
p { line-height: 30px; }
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
li { font-weight: 400; margin: 0px; padding: 0px; font-family: "DM Sans", sans-serif; }
.container { width: 1300px; margin: 0 auto; }
.flex-container { display: flex; }
.clear { clear: both; }
.caitlin-but,
.cfs-hyperlink { background: #262626; text-decoration: none; color: #fff; padding: 15px 30px 17px 30px; line-height: 1; letter-spacing: 1px; text-transform: uppercase; display: inline-block; vertical-align: middle; -webkit-transform: perspective(1px) translateZ(0); transform: perspective(1px) translateZ(0); box-shadow: 0 0 1px rgba(0, 0, 0, 0); -webkit-transition-duration: 0.3s; transition-duration: 0.3s; -webkit-transition-property: box-shadow, transform; transition-property: box-shadow, transform; }
.caitlin-but:hover,
.cfs-hyperlink:hover,
.caitlin-but:focus,
.caitlin-but:active,
.sowb-button:focus,
.sowb-button:hover { box-shadow: 0 10px 10px -10px rgba(0, 0, 0, 0.5); -webkit-transform: scale(1.1); transform: scale(1.1); background: #818b7e; transition: 0.5s; }
.sowb-button { transition: 0.5s; }
.caitlin-title,
.widget-title { font-size: 2.25em; text-transform: uppercase; letter-spacing: 3px; position: relative; }
/*Header*/
.header { padding: 5px 0; position: relative; left: 0; top: 0; width: 100%; transition: 0.5s; z-index: 9; background: #ebe6e2; }
.sticky .header { background: #eae6e1; position: fixed; top: 0; left: 0; width: 100%; box-shadow: 0 0 20px #00000026; transition: 0.5s; }
.header .flex-container { display: flex; justify-content: space-between; position: relative; }
.logo a { text-decoration: none; }
.logo img.custom-logo { width: 239px; transition: 0.5s; }
.sticky .logo img.custom-logo { width: 160px; transition: 0.5s; }
.menu ul { position: relative; }
.menu ul:before { content: ""; height: 1px; width: 100%; background: hsl(0deg 0% 0% / 18%); position: absolute; top: 100%; }
.menu ul li { display: inline-block; padding: 9px 25px 8px 25px; }
.menu ul li:first-child { padding-left: 0; }
.menu ul li:last-child { padding-right: 0; }
.menu ul li a { color: #333; text-shadow: none; padding: 0; position: relative; text-decoration: none; text-transform: uppercase; display: inline-block; }
/*.menu ul li a:before { color: #000; text-shadow: 0 0 1px rgba(255, 255, 255, 0.3); content: attr(data-hover); position: absolute; -webkit-transition: -webkit-transform 0.3s, opacity 0.3s; -moz-transition: -moz-transform 0.3s, opacity 0.3s; transition: transform 0.3s, opacity 0.3s; pointer-events: none; }*/
.menu ul li a:after { content: ''; position: absolute; left: 0; top: 35px; width: 100%; height: 1px; background: #94c187; opacity: 0; -webkit-transform: translateY(5px); -moz-transform: translateY(5px); transform: translateY(5px); -webkit-transition: -webkit-transform 0.3s, opacity 0.3s; -moz-transition: -moz-transform 0.3s, opacity 0.3s; transition: transform 0.3s, opacity 0.3s; pointer-events: none; }
.menu ul li.current_page_item a:after { content: ''; position: absolute; left: 0; top: 30px; width: 100%; height: 1px; background: #94c187; opacity: 1; }
.menu ul li a:hover:before,
.menu ul li a:focus:before { opacity: 0; -webkit-transform: translateY(-2px); -moz-transform: translateY(-2px); transform: translateY(-2px); }
.menu ul li a:hover:after,
.menu ul li a:focus:after { opacity: 1; -webkit-transform: translateY(0px); -moz-transform: translateY(0px); transform: translateY(0px); }
.menu ul li a:hover,
.menu ul li.current_page_item a { color: #94c187; }
.sticky .header .flex-container { align-items: center; }
.sticky .header .flex-container:before { display: none; }
.sticky .menu { padding-top: 0; }
.sticky .logo h1 { padding-bottom: 0; margin-bottom: 0; font-size: 1.3em; line-height: 1; }
.sticky .logo p { font-size: 0.6em; line-height: 2em; }
.close-menu,
.hamburger-menu { display: none; }
/*Hero-Banner*/
.hero-banner { align-items: center; background: #eae6e1; padding-top: 3em; gap: 4em; z-index: 1; position: relative; }
/*.hero-banner:before { content: ""; background: #ffffffa6; position: absolute; left: 0; top: 0; z-index: -1; width: 100%; height: 100%; }*/
.banner-content { flex: 0 1 calc((48% / 1) - 0em); padding-left: 16%; }
.banner-content h2 { margin-bottom: 1.3em; letter-spacing: 1px; font-weight: 800; font-size: 2.8em; line-height: 1.3; }
.banner-content ul { display: flex; flex-wrap: wrap; gap: 1em; }
.banner-content ul li { display: inline-block; }
.banner-img { flex: 0 1 calc((52% / 1) - 0em); }
.banner-img img { width: 100%; display: flex; }
/*About*/
.about { padding: 6em 0; }
.about-img { flex: 0 1 calc((50% / 1) - 0em); position: relative; }
.about-img:before { border: solid; width: 100%; height: 100%; position: absolute; left: 20px; top: 20px; content: ""; z-index: -1; }
.about-img img { display: flex; width: 100%; transition: 0.8s; }
/*.about-img img:hover { transform: scale(1.3) rotate(5deg); transition: 0.8s; }*/
.about-content { flex: 0 1 calc((50% / 1) - 0em); }
.about-content .caitlin-title { font-size: 2em; padding-bottom: 20px; }
.about .flex-container { gap: 4em; align-items: center; }
.about-content p { padding-bottom: 20px; line-height: 32px; font-size: 1.1em; }
.about-content ul li { display: inline-block; padding: 0.8em 1.5em 1em 1.6em; position: relative; font-size: 1.1em; line-height: 1; }
.about-content ul li:before { content: ""; width: 17px; height: 18px; left: 0; top: 14px; position: absolute; background: url(../images/about-dots.png); background-repeat: no-repeat; }
.about-content .caitlin-but { margin-top: 30px; }
/*Service*/
.home-service { padding: 5em 0; background: #eae6e1; text-align: center; }
.home-service p { font-size: 1.1em; width: 80%; margin: 0 auto; line-height: 1.7em; margin-bottom: 3em; }
.service-grid { position: relative; overflow: hidden; }
.service-grid img { transition: 0.8s; height: 540px; object-fit: cover; }
.service-grid:hover img { transform: scale(1.3) rotate(5deg); transition: 0.8s; }
.service-grid h3 { position: absolute; left: 0; bottom: 20px; z-index: 999; width: 100%; color: #fff; text-transform: uppercase; font-weight: 400; letter-spacing: 1px; transition: 0.8s; font-size: 1.4em; }
.service-grid:hover h3 a { margin-bottom: 1em; transition: 0.8s; box-shadow: none; }
.service-grid a.cfs-hyperlink { background: no-repeat; transition: 0.8s; transform: none; box-shadow: none; }
/*Why-choose*/
.why-choose { gap: 5em; background: #818b7e; }
.why-choose-content { flex: 0 1 calc((50% / 1) - 0em); padding-left: 16%; color: #fff; }
.why-choose-content p { line-height: 30px; padding: 30px 0 45px 0; }
.why-choose-img { flex: 0 1 calc((50% / 1) - 0em); overflow: hidden; }
.why-choose-img img { width: 100%; display: flex; transition: 0.8s; height: 100%; object-fit: cover; }
.why-choose-img:hover img { transform: scale(1.3) rotate(5deg); transition: 0.8s; }
.why-choose-content .caitlin-but { background: #fff; color: #000; }
.why-choose-content .caitlin-but:hover { background: #000; color: #fff; }
/*What-does*/
.what-does { background: url(../images/what-does-bg.jpg); padding: 5em 0; }
.what-does .flex-container { gap: 5em; }
.what-does-grid { background: #fff; padding: 4em 3em; flex: 1 1 calc((100% / 2) - 2em); }
.what-does-grid h2 { font-size: 1.8em; }
.what-does-grid p { line-height: 30px; padding: 15px 0px 30px 0px; }
/**/
.cta { background: url(../images/cta.jpg); height: 100vh; background-attachment: fixed; background-position: center; background-size: cover; background-repeat: no-repeat; }
/*Testimonials*/
.testimonials { padding: 6em 0; text-align: center; background: #eae6e1; }
#testimonials-slider { margin-top: 5em; }
.testimonials .flex-container { gap: 4em; align-items: center; }
.testimonials-img { flex: 0 1 calc((25% / 1) - 0em); padding: 15px; }
.testimonials-img img { border-radius: 50%; border: solid 10px #ffffff; box-shadow: 0 0 20px #0000001a; padding: 0px; }
.testimonials-content { flex: 0 1 calc((75% / 1) - 0em); text-align: left; position: relative; padding: 5em 0; }
.testimonials-content:before { content: ""; width: 69px; height: 48px; left: 0; top: 0px; position: absolute; background: url(../images/quote.png); background-repeat: no-repeat; }
.testimonials-content:after { content: ""; width: 69px; height: 48px; right: 0; bottom: 0px; position: absolute; background: url(../images/quote.png); background-repeat: no-repeat; transform: rotate(180deg); }
.testimonials-content strong { display: inline-block; width: 100%; font-size: 1.5em; text-transform: uppercase; font-weight: 400; letter-spacing: 1px; }
.testimonials-content span { display: inline-block; width: 100%; font-size: 1.2em; text-transform: uppercase; font-weight: 400; letter-spacing: 1px; padding: 6px 0 35px 0; }
.testimonials-content p { line-height: 30px; }
.star { position: absolute; top: 6em; right: 0; }
.star img { width: auto !important; }
.testimonials .owl-carousel { padding: 0 7em; }
/*contact-form*/
.contact-form { padding: 6em 0; text-align: center; }
.contact-form .caitlin-title { margin-bottom: 22px; }
.contact-form .container { width: 800px; }
.contact-form p a { color: #f3970d; text-decoration: none; }
.contact-form ul { display: flex; flex-wrap: wrap; gap: 1.5em; margin-top: 4em; }
.contact-form ul li { display: inline-block; flex: 1 1 calc((100% / 3) - 1em); text-align: left; }
.contact-form ul li:nth-child(4) { flex: 1 1 calc((100% / 1) - 1em); }
.contact-form ul li:last-child { flex: 0 1 calc((160px / 1) - 1em); }
.contact-form ul li input,
.contact-form ul li textarea,
.contact-form ul li select { width: 100%; border: solid 1px #ddd; height: 44px; margin-top: 10px; padding: 0 10px; }
.contact-form ul li textarea { height: 80px; padding: 10px 10px; }
.contact-form ul li input.caitlin-but { height: 54px; margin: 0; font-size: 14px; }
.contact-form ul li label { width: 100%; display: inline-block; margin: 0; font-size: 1em; }
/*footer*/
.footer { background: #333; padding: 14px 0; color: #fff; }
.footer .flex-container { align-items: center; justify-content: space-between; }
.footer ul { display: flex; gap: 10px; }
.footer ul li { display: inline-block; }
#return-to-top { width: 50px; text-align: center; height: 50px; background: #818b7e; position: fixed; right: 20px; bottom: 10px; border-radius: 4px; z-index: 99; padding: 15px 0; display: none; line-height: 1; }
#return-to-top:hover { background: #333; }
#return-to-top img { width: 20px }
/*404*/
.error404 .header { background: #fff; box-shadow: 0 0 20px #00000024; }
.error-404 { margin: 0px; padding: 0px; width: 100%; text-align: center; background: url(../images/home-pattern.png); height: 93vh; display: flex; align-items: center; line-height: 1; z-index: 1; position: relative; }
.error-404:before { content: ""; background: #ffffffba; position: absolute; left: 0; top: 0; z-index: -1; width: 100%; height: 100%; }
.error-404 h1 { font-size: 6em; font-weight: bold; margin: 0px; }
.error-404 p { font-size: 1.2em; padding: 10px 0; margin: 0 auto; text-transform: uppercase; font-weight: 700; }
.noresults { padding: 5em 0; text-align: center; }
.noresults .inner-header { margin-bottom: 20px; color: #000; }
.noresults form.is-search-form { width: 500px; margin: 20px auto 0 auto; }
.noresults .page-description.search-term { color: #ec6d1d; }
.is-search-form input { height: 46px !important; border-radius: 6px !important; }
/*inner-banner*/
.inner-banner { position: relative; }
.inner-banner:before { content: ""; background: #00000040; position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
.inner-banner h2 { position: absolute; left: 16%; top: 50%; color: #fff; font-size: 2em; text-transform: uppercase; font-weight: 600; transform: translateY(-50%); }
.certified-dog img { width: 100%; border-radius: 6px; }
.caitlin-inner-title h2 { font-size: 2.5em; text-transform: uppercase; letter-spacing: 3px; position: relative; margin-bottom: 10px; }
.certified-dog h3 { font-size: 1.8em; text-transform: uppercase; font-weight: normal; margin-bottom: 20px; }
.certified-dog p { padding-bottom: 10px; }
.resources-grid .panel-grid:nth-child(even) .panel-grid-cell:nth-child(2) { order: 2; }
.common-issues .so-widget-sow-image { position: relative; }
.common-issues h3 { color: #fff; font-size: 1.2em; text-transform: uppercase; font-weight: normal; padding: 15px 10px; display: inline-block; letter-spacing: 2px; position: absolute; bottom: 0; left: 0; width: 100%; text-align: center; background: rgb(0, 0, 0); background: -moz-linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.38283438375350143) 23%, rgba(0, 0, 0, 1) 100%); background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.38283438375350143) 23%, rgba(0, 0, 0, 1) 100%); background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.38283438375350143) 23%, rgba(0, 0, 0, 1) 100%); border-radius: 6px; }
.services-cta h4.sow-cta-title { text-transform: uppercase; letter-spacing: 2px; font-weight: 300; padding-bottom: 10px; width: 70%; margin: 0 auto !important; }
.certified-dog ul,
.individual ul { margin-top: 15px; }
.certified-dog ul li,
.individual ul li { position: relative; padding: 4px 0 4px 17px; }
.certified-dog ul li:before,
.individual ul li:before { content: ""; background: #fff; position: absolute; left: 0; top: 13px; width: 8px; height: 8px; border-radius: 100px; }
.individual ul li:before { background: #000; }
/**/ 
.common-issues .post-page h3 { letter-spacing: 0px; font-size: 1.1em; }
.common-issues .post-page h3 b { display: inline-block; width: 100%; padding: 7px 0 10px 0; font-weight: 800; font-size: 1.2em; color: #f3970d; text-transform: uppercase; }
.common-issues img { width: 100% !important; max-width: 100% !important; height: 500px !important; object-fit: cover; }
.services-cta .sow-cta-wrapper .so-widget-sow-button { display: none; }
.cta-btn { width: 500px; }
.services-cta .sow-cta-base { padding: 0px !important; }
.page-id-110 .common-issues img { height: 370px !important; border-radius: 6px; }
.contact-us.contact-form .container { width: 870px; }
.contact-us.contact-form ul { margin-top: 2em; }
.contact-us h3.widget-title { font-size: 2em; margin-bottom: 20px; }
.contact-grid { border-right: solid 2px #ededed; padding: 0.5em; }
.panel-cell-style-for-w68628b3a73839-1-1 { border: none; }
/*Shop*/
.shop-page .container { width: 90%; }
.shop-header { position: relative; }
.shop-header h2 { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); text-transform: uppercase; color: #fff; font-weight: bold; }
.single-product-page { padding: 4em 0; }
.single-product-page .woocommerce-breadcrumb { margin-bottom: 2rem; }
.single-product-page .woocommerce-product-gallery img { display: block; height: 600px !important; max-width: 100% !important; object-fit: cover; object-position: top; }
.single-product-page .entry-summary .woocommerce-Price-amount bdi { font-size: 1.5em; font-weight: bold; color: #FF9500; }
.single-product-page .product_title { margin-top: 1em; font-weight: bold !important; font-size: 2em !important; text-transform: uppercase; width: 75%; }
.single_add_to_cart_button,
.add_to_cart_button { background: #343434 !important; font-size: 1em !important; color: #fff !important; border: none; font-weight: normal; text-transform: capitalize; height: 52px; display: flex !important; align-items: center; justify-content: center; padding: 0 30px; }
.single_add_to_cart_button:hover,
.add_to_cart_button:hover { background: #FF9500 !important; color: #fff !important; }
.single-product-page .qty { border: solid 1px #bfbfbf !important; text-align: center; height: 52px; display: flex; align-items: center; }
.single-product .single-product-page div.product .product_meta { font-size: 1em; }
.single-product .single-product-page .cart { margin-top: 30px !important; }
.single-product .single-product-page .summary p.price { margin-bottom: 1rem; }
.single-product-page .woocommerce-product-details__short-description { max-width: 100% !important; }
.single-product-page .woocommerce-Tabs-panel { background: #FBF7F4; border: solid 1px #EBE6E2; padding: 2em !important; }
.single-product-page ul.tabs.wc-tabs { margin: 0px; border: none; }
.single-product-page .woocommerce-tabs ul li.active a { color: #000000; background-color: #fbf7f4; border: solid 1px #EBE6E2; position: relative; top: 1px; border-bottom: none; }
.additional_information_tab { background: #000; color: #fff; }
.single-product-page .entry-summary th,
.entry-summary td { border: none !important; }
.single-product-page .entry-summary table.variations select {
 margin-right: .5rem; border: solid 1px #ddd; }
.single-product-page .entry-summary th { width: 100px !important; }
.price del { opacity: 0.4; display: inline-block; color: #000000; }
/*related*/
.single-product-related { background: #818B7E; padding: 4em 0; }
.single-product-related ul.products li.product .woocommerce-loop-product__title { color: #fff; font-weight: bold; text-transform: uppercase; margin-top: 15px; }
.single-product-related .caitlin-title { text-align: center; color: #fff; margin-bottom: 40px; }
.price bdi { font-size: 1.2em; color: #FF9500; }
.single-product-related .single_add_to_cart_button,
.add_to_cart_button { background: #ffffff !important; color: #000000 !important; width: 100%; }
.single-product-related .products { gap: 3em; flex-wrap: nowrap !important; }
.single-product-related .product { margin: 0px !important; }
.single-product-related ul.products li.product .woocommerce-loop-product__title { color: #fff; font-weight: 600; text-transform: uppercase; margin-top: 0; position: absolute; bottom: 60px; background: rgb(0,0,0); background: -moz-linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%); background: -webkit-linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%); background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#000000", endColorstr="#000000", GradientType=1);
padding: 20px; width: 100%; text-align: center; font-size: 1.1em; display: flex; align-items: center; justify-content: center; height: 70px; margin: 0px; }
.single-product-related .product { position: relative; text-align: center; }
.single-product-related span.price { margin: 10px 0px !important; }
.single-product-related .price bdi { font-size: 1.5em; color: #FF9500; font-weight: bold; }
.related { display: none; }
.posted_in a,
.woocommerce-breadcrumb a { color: #ff9500; }
.woocommerce-product-details__short-description p { padding-bottom: 10px; }
.woocommerce-product-details__short-description ul li { width: 100%; position: relative; padding-bottom: 10px; align-items: center; gap: 14px; }
.woocommerce-product-details__short-description ul li:before { content: ""; background: #FF9500; width: 8px; height: 8px; border-radius: 100px; }
.woocommerce-tabs ul { border: none; }
.ow-button-base .sowb-button { border-radius: 4px !important; }
