/* ==========================================================================
   Akeso Socks — Custom Styles (migrated from Qode Bridge Options)
   --------------------------------------------------------------------------
   CONTENTS
     1.  Typography
     2.  Contact Form 7
     3.  Inline Form
     4.  Insights Page
     5.  SVG
     6.  Header Fixes
     7.  Page Layout Custom Classes
     8.  Latest Posts Fixes
     9.  Single Post Layout
     10. Responsive Width Adjustments
     11. WooCommerce — Cart
     12. WooCommerce — Misc
     13. WooCommerce — Cart Icon
     14. Responsive Table (.chkpt-table)
     15. Product Page
     16. Product Tabs
     17. Variations / Swatches
     18. Menu
     19. Log In Page
     20. Checkout
     21. Size Chart
     22. Reviews.io
     23. Responsive Video Player
     24. Currency Conversion Buttons
     25. GDPR Cookie Bar
     26. Footer
     27. Fire Blanket Product Page
     28. AffiliateWP Form Styles
     29. Call To Action
     30. PayPal Buttons Cart Fix
     31. Akeso Free Shipping Progress Bar
     32. Tablet-down Content Width
     33. WooCommerce Cart Page Fixes
     34. Checkout Styling To Match Cart
     35. Checkout Form Fields
     36. WooCommerce Cart — Two-Column Layout (Akeso)
     37. Checkout — primary CTAs (WPMC Next / Place Order)
   ========================================================================== */

/* ==========================================================================
   1. Typography
   ========================================================================== */

body {
  font-size: 100%;
}

html {
  font-size: 1em;
}

h1 {
  font-size: 2.986em;
}

h2 {
  font-size: 2.488em;
}

h3 {
  font-size: 2.074em;
}

h4 {
  font-size: 1.728em;
}

h5 {
  font-size: 1.44em;
  line-height: 1.2;
}

h6 {
  font-size: 1.2em;
  line-height: 1.3;
}

footer .footer_bottom p {
  font-size: 0.882em;
}

.content p,
.content ul {
  margin-bottom: 18px !important;
}

.content li {
  font-size: 17px !important;
}

/* Smartphones (portrait and landscape) ----------- */
@media only screen and (min-device-width: 320px) and (max-device-width: 480px) {
  h1 {
    font-size: 1.999em;
  }

  h2 {
    font-size: 1.764em;
  }

  h3 {
    font-size: 1.414em;
  }

  h4 {
    font-size: 1.248em;
  }

  h5 {
    font-size: 1.2em;
  }
}

blockquote {
  position: relative;
  width: 100%;
  max-width: 500px;
  padding-left: 40px;
  margin-bottom: 32px;
  border-left: 2px solid #e23230;
  box-sizing: border-box;
}

blockquote p {
  font-size: 24px;
  line-height: 33.6px;
  font-weight: 700;
}

.wp-caption-text {
  font-size: 0.75em;
}

.tp-caption {
  font-family: "roboto", "helvetica", sans-serif !important;
}

input.wpcf7-form-control.wpcf7-text {
  font-family: "roboto", "helvetica", sans-serif !important;
}

@media only screen and (max-width: 760px) {
  .header-widget.widget_block.widget_text.header-right-widget p,
  .header-widget.widget_block.widget_text.header-right-widget a {
    font-size: 10px !important;
  }
}

/* ==========================================================================
   Contact From 7
   ========================================================================== */

.contactButton {
  padding-top: 23px;
}

.contactButton input {
  border-radius: 3px !important;
  -moz-border-radius: 3px !important;
  -webkit-border-radius: 3px !important;
  font-size: 11px !important;
  line-height: 37px !important;
  height: 37px !important;
  font-weight: 700 !important;
  padding-left: 27px !important;
  padding-right: 27px !important;
  letter-spacing: 1px !important;
}

.captcha {
  margin-top: 20px;
}
.cf7_two_columns {
  display: flex;
}
.cf7_col_1 {
  margin-right: 8px;
}
.cf7_col_2 {
  margin-left: 8px;
}
.cf7_col_1,
.cf7_col_2 {
  flex: 1;
}
@media only screen and (max-width: 1199px) {
  .cf7_two_columns {
    display: block;
  }
  .cf7_col_1,
  .cf7_col_2 {
    margin: 0;
  }
}

/* ==========================================================================
   Inline Form
   ========================================================================== */

.inline_form_wrap {
  display: block;
  width: 100%;
}
.inline_form_wrap .inline_name,
.inline_form_wrap .inline_email {
  display: inline-block;
  width: 70%;
}
.inline_form_wrap .inline_submit {
  display: inline-block;
  margin-left: 23px;
}
.inline_submit .ajax-loader {
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  display: none !important;
}
.mc4wp-alert .mc4wp-success {
  text-align: center;
  padding: 10px;
}
.wpcf7-submit {
  margin-top: 15px !important;
}
@media only screen and (max-width: 1000px) {
  .inline_form_wrap .inline_name,
  .inline_form_wrap .inline_email,
  .inline_form_wrap .inline_submit {
    width: 100%;
    display: block;
  }
  .inline_form_wrap .inline_submit {
    margin-top: 20px;
    margin-left: 0px;
    width: 100%;
    text-align: center;
  }
  .inline_submit input {
    text-align: center !important;
    width: calc(100% - 4px) !important;
    padding: 0 !important;
  }
}

/* ==========================================================================
   Insights Page
   ========================================================================== */

.filter_outer {
  margin-top: 50px;
}

/* ==========================================================================
   SVG
   ========================================================================== */

.svg200 img {
  width: 200px !important;
  height: 60px !important;
}

.svg150 img {
  width: 150px !important;
}

.svg100 img {
  width: 100px !important;
  height: 100px !important;
}

.svg75 img {
  width: 75px !important;
  height: 75px !important;
}

.svg50 img {
  width: 50px !important;
  height: 50px !important;
}

.svg100p img {
  width: 100% !important;
  height: 100% !important;
}

.qode_client_image_holder img {
  width: 250px;
}

/* ==========================================================================
   Header Fixes
   ========================================================================== */

.q_logo a {
  height: 40px !important;
}
.q_logo a,
.q_logo a img {
  visibility: visible !important;
}
.drop_down .widget {
  padding: 0px 9px !important;
}
.custom-html-widget .menu_icon {
  font-size: 24px;
}
@media only screen and (min-width: 1100px) {
  header:not(.scrolled):not(.sticky) .q_logo a {
    height: 40px !important;
  }
  .header_bottom .wide .menu-item span {
    padding-left: 0px !important;
  }
  .marginLeft10 {
    margin-left: 10px !important;
  }
  .q_logo a {
    left: 0% !important;
  }
}

.header_top {
  height: 45px !important;
  line-height: 45px !important;
}
.header_top p {
  line-height: 45px;
}
.header_top .q_icon_list {
  display: inline-block;
  margin-right: 28px;
  margin-bottom: 0;
}

.home .content .container .container_inner.page_container_inner,
.home .full_page_container_inner {
  padding: 0 !important;
}

@media screen and (max-width: 1000px) {
  .sub_menu .has_sub ul {
    display: block !important;
  }
}

#nav-menu-item-2323 {
  display: none;
}
.leadinModal-content {
  overflow: hidden !important;
}

.header_top .left {
  display: none !important;
}
@media screen and (min-width: 1001px) {
  .header_top .right {
    float: none !important;
    text-align: center !important;
  }
  .header_top .right .inner > div,
  .header_top .right .inner > div:last-child {
    float: none !important;
  }
}

.top-shipping-text {
  margin-top: 20px;
}

/* ==========================================================================
   Page Layout Custom Classes
   ========================================================================== */

.reversed-text p {
  color: #fff;
}

.reversed-heading h1,
.reversed-heading h2,
.reversed-heading h3,
.reversed-heading h4,
.reversed-heading h5,
.reversed-heading h6 {
  color: #fff;
}

.add_shadow {
  box-shadow:
    0 4px 6px -1px rgba(10, 13, 18, 0.1),
    0 2px 4px -2px rgba(10, 13, 18, 0.06);
}
.qode-pl-holder .qode-pli .qode-pli-rating-holder {
  display: none;
}

/* ==========================================================================
   Latest Posts Fixes
   ========================================================================== */

.latest_post_two_holder .latest_post_two_text .latest_post_two_excerpt {
  display: none;
}

.latest_post_two_holder .latest_post_two_text {
  padding: 32px !important;
}

.latest_post_two_holder .latest_post_two_text .latest_post_two_excerpt {
  display: none;
}

.latest_post_two_holder .latest_post_two_info {
  display: none;
}

.latest_post_two_holder .latest_post_two_text .separator.small {
  display: none;
}

.latest_post_two_holder .latest_post_two_inner {
  box-shadow:
    0 4px 6px -1px rgba(10, 13, 18, 0.1),
    0 2px 4px -2px rgba(10, 13, 18, 0.06);
}

.latest_post_two_holder .latest_post_two_image img {
  box-shadow:
    0 4px 6px -1px rgba(10, 13, 18, 0.1),
    0 2px 4px -2px rgba(10, 13, 18, 0.06);
}

.blog_pinterest article {
  box-shadow:
    0 4px 6px -1px rgba(10, 13, 18, 0.1),
    0 2px 4px -2px rgba(10, 13, 18, 0.06);
}

/* ==========================================================================
   Single Post Layout
   ========================================================================== */

.author_description_inner .image {
  border-radius: 0px !important;
}
.author_description .author_email {
  display: none;
}
.author_description .author_name {
  padding-top: 18px;
}
.post_text_inner h1,
.post_text_inner h2,
.post_text_inner h3,
.post_text_inner h4,
.post_text_inner h5,
.post_text_inner h6 {
  margin-bottom: 18px;
}

@media screen and (max-width: 770px) {
  #applyNowButton {
    margin-top: 20px;
  }
  .blankTeamMember {
    display: none;
  }
}
@media screen and (min-width: 1000px) {
  .blog_holder.single_image_title_post article .post_image,
  .single-post .content .container_inner .post_image {
    height: 540px;
    overflow-y: hidden;
    position: relative;
  }
  .single-post .content .container_inner .post_image img {
    position: absolute;
    top: -100%;
    left: 0;
    right: 0;
    bottom: -100%;
    margin: auto;
  }
}
@media screen and (min-width: 1920px) {
  .ourValuesWidow {
    padding-left: 80px !important;
    padding-right: 80px !important;
  }
}

.pagination ul li a {
  background-color: rgba(0, 0, 0, 0.01) !important;
  border: 2px solid #d8d8d8 !important;
  color: #d8d8d8 !important;
  font-family: "Roboto";
  font-weight: 700;
}

.pagination ul li.active span {
  background-color: #e23230 !important;
  border: 2px solid #e23230 !important;
  color: #fff !important;
  font-family: "Roboto";
  font-weight: 700;
}

.pagination ul li a:hover {
  background-color: #e23230 !important;
  border: 2px solid #e23230 !important;
  color: #fff !important;
  font-family: "Roboto";
  font-weight: 700;
}

/* ==========================================================================
   Responsive Width Adjustments
   ========================================================================== */

@media only screen and (min-width: 1000px) {
  .blog_single .post_text_inner,
  .blog_single .section_inner .author_description {
    width: 50% !important;
    margin: 0 auto !important;
  }
  .blog_single .itp_post_text,
  .blog_single .section_inner {
    width: 1300px;
    margin: 20px auto;
  }
  .blog_single .section_inner .single_bottom_part {
    display: block !important;
    width: 50% !important;
    margin: 10px auto !important;
  }
}
@media only screen and (max-width: 1000px) {
  .blog_single .post_text_inner,
  .blog_single .section_inner {
    width: 86% !important;
    margin: 0 auto !important;
  }
  .blog_single .post_text_inner,
  .blog_single .section_inner .author_description,
  .post .post_text_inner {
    padding: 40px auto 0 auto !important;
  }
  .blog_single .section_inner .author_description {
    text-align: center;
  }
  .blog_single .section_inner .author_description .image {
    margin: 0 auto;
  }
}

/* ==========================================================================
   WooCommerce - Cart 
   ========================================================================== */

.shopping_cart_outer:hover .shopping_cart_dropdown {
  border-radius: 0px 0px 8px 8px;
}

/* --------------------------------------------------------------------------
   DISABLED — Legacy responsive cart-table CSS.
   This block was invalid (single-slash "comments" and curly quotes), so it
   never actually applied. Preserved commented-out for reference; it will be
   superseded by the cart redesign. Safe to delete once the new cart lands.
   -------------------------------------------------------------------------- */
/*
@media screen and (max-width: 766px) and (min-width: 300px) { / START Make the cart table responsive /
/ http://css-tricks.com/responsive-data-tables/ /
@media screen and (max-width: 600px) { / Force table to not be like tables anymore /
.woocommerce table.shop_table,
.woocommerce table.shop_table thead,
.woocommerce table.shop_table tbody,
.woocommerce table.shop_table th,
.woocommerce table.shop_table td,
.woocommerce table.shop_table tr {
display: block;
} / Hide table headers (but not display: none;, for accessibility) /
.woocommerce table.shop_table thead tr {
position: absolute;
top: -9999px;
left: -9999px;
} .woocommerce table.shop_table tr {
/border: 1px solid #d2d3d3; /
} .woocommerce table.shop_table td {
/ Behave like a “row” /
border: 1px solid #d2d3d3;
position: relative;
padding-left: 50% !important;
} .woocommerce table.shop_table {
border: none;
} .woocommerce table.shop_table td.product-spacer {
border-color: #FFF;
height: 10px;
} .woocommerce table.shop_table td:before {
/ Now like a table header /
position: absolute;
/ Top/left values mimic padding /
top: 6px;
left: 6px;
width: 25%;
padding-right: 10px;
white-space: nowrap;
} /
Label the data /
.woocommerce table.shop_table td.product-remove:before {
content: “DELETE”;
} .woocommerce table.shop_table td.product-thumbnail:before {
content: “IMAGE”;
} .woocommerce table.shop_table td.product-name:before {
content: “PRODUCT”;
} .woocommerce table.shop_table td.product-price:before {
content: “PRICE”;
} .woocommerce table.shop_table td.product-quantity:before {
content: “QUANTITY”;
} .woocommerce table.shop_table td.product-subtotal:before {
content: “SUBTOTAL”;
} .woocommerce table.shop_table td.product-total:before {
content: “TOTAL”;
} .woocommerce .quantity,
.woocommerce #content .quantity,
.woocommerce .quantity,
.woocommerce #content .quantity {
margin: 0;
} .woocommerce table.cart td.actions,
.woocommerce #content table.cart td.actions {
text-align: left;
border:0;
padding-left: 0 !important;
} .woocommerce table.cart td.actions .button.alt,
.woocommerce #content table.cart td.actions .button.alt {
float: left;
margin-top: 10px;
} .woocommerce table.cart td.actions div,
.woocommerce #content table.cart td.actions div,
.woocommerce table.cart td.actions input,
.woocommerce #content table.cart td.actions input {
margin-bottom: 10px;
} .woocommerce .cart-collaterals .cart_totals {
float: left;
width: 100%;
text-align: left;
} .woocommerce .cart-collaterals .cart_totals th,
.woocommerce .cart-collaterals .cart_totals td {
border:0 !important;
} .woocommerce .cart-collaterals .cart_totals table tr.cart-subtotal td,
.woocommerce .cart-collaterals .cart_totals table tr.shipping td,
.woocommerce .cart-collaterals .cart_totals table tr.total td {
padding-left: 6px !important;
} .woocommerce table.shop_table tr.cart-subtotal td,
.woocommerce table.shop_table tr.shipping td,
.woocommerce table.shop_table tr.total td,
.woocommerce table.shop_table.order_details tfoot th,
.woocommerce table.shop_table.order_details tfoot td {
padding-left: 6px !important;
border:0 !important;
} .woocommerce table.shop_table tbody {
padding-top: 10px;
} .woocommerce .col2-set .col-1,
.woocommerce .col2-set .col-1,
.woocommerce .col2-set .col-2,
.woocommerce .col2-set .col-2,
.woocommerce form .form-row-first,
.woocommerce form .form-row-last,
.woocommerce form .form-row-first,
.woocommerce form .form-row-last {
float: none;
width: 100%;
} .woocommerce .order_details ul,
.woocommerce .order_details ul,
.woocommerce .order_details,
.woocommerce .order_details {
padding:0;
} .woocommerce .order_details li,
.woocommerce .order_details li {
clear: left;
margin-bottom: 10px;
border:0;
} / make buttons full width, text wide anyway, improves effectiveness /
#content table.cart td.actions .button,
.woocommerce #content table.cart td.actions .input-text,
.woocommerce #content table.cart td.actions input,
.woocommerce table.cart td.actions .button,
.woocommerce table.cart td.actions .input-text,
.woocommerce table.cart td.actions input,
.woocommerce #content table.cart td.actions .button,
.woocommerce #content table.cart td.actions .input-text,
.woocommerce #content table.cart td.actions input,
.woocommerce table.cart td.actions .button,
.woocommerce table.cart td.actions .input-text,
.woocommerce table.cart td.actions input {
width: 100%;
font-size:12px !important;
} .woocommerce tfoot{
display:block !important;
}
.woocommerce tfoot td{
width:100% !important;
display:block !important;
}
/ keep coupon at 50% /
#content table.cart td.actions .coupon .button,
.woocommerce #content table.cart td.actions .coupon .input-text,
.woocommerce #content table.cart td.actions .coupon input,
.woocommerce table.cart td.actions .coupon .button,
.woocommerce table.cart td.actions .coupon .input-text,
.woocommerce table.cart td.actions .coupon input,
.woocommerce #content table.cart td.actions .coupon .button,
.woocommerce #content table.cart td.actions .coupon .input-text,
.woocommerce #content table.cart td.actions .coupon input,
.woocommerce table.cart td.actions .coupon .button,
.woocommerce table.cart td.actions .coupon .input-text,
.woocommerce table.cart td.actions .coupon input {
width: 48%;
font-size:12px !important;
} / clean up how coupon inputs display /
#content table.cart td.actions .coupon,
.woocommerce table.cart td.actions .coupon,
.woocommerce #content table.cart td.actions .coupon,
.woocommerce table.cart td.actions .coupon {
margin-top: 1.5em;
} #content table.cart td.actions .coupon .input-text,
.woocommerce table.cart td.actions .coupon .input-text,
.woocommerce #content table.cart td.actions .coupon .input-text,
.woocommerce table.cart td.actions .coupon .input-text {
margin-bottom: 1em;
} / remove cross sells, they interfere with flow between cart and cart totals + shipping calculator /
.woocommerce .cart-collaterals .cross-sells,
.woocommerce .cart-collaterals .cross-sells {
display: none;
} }
/ END Make the cart table responsive / }
*/

.shopping_cart_dropdown .variation-Size,
.shopping_cart_dropdown .variation-Size {
  color: #9d9d9d !important;
}

.shopping_cart_dropdown .variation-Size,
.shopping_cart_dropdown .variation-PackSize {
  color: #9d9d9d !important;
}

.shopping_cart_dropdown .variation-Size,
.shopping_cart_dropdown .variation-Colour {
  color: #9d9d9d !important;
}

.shopping_cart_dropdown ul li a,
.shopping_cart_dropdown .variation-Size,
.shopping_cart_dropdown .variation-Size p {
  color: #fff;
}

.shopping_cart_dropdown ul li a,
.shopping_cart_dropdown .variation-PackSize,
.shopping_cart_dropdown .variation-PackSize p {
  color: #fff;
}

.shopping_cart_dropdown ul li a,
.shopping_cart_dropdown .variation-Colour,
.shopping_cart_dropdown .variation-Colour p {
  color: #fff;
}

#wc-stripe-express-checkout-element {
  padding-top: 16px;
  margin: unset !important;
}

.ppcp-messages {
  padding-top: 8px;
}

/* ==========================================================================
   WooCommerce - Misc
   ========================================================================== */

.myaccount_user,
.woocommerce .woocommerce-error,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message,
.woocommerce div.message {
  font-family: "Roboto", sans-serif !important;
}

.woocommerce-page .bundled_item_images_head,
.woocommerce-page .bundled_item_images_col {
  display: none;
}
.bundled_products {
  width: 100%;
}
.woocommerce div.product .summary p.price,
.woocommerce div.product .summary p.price span.amount {
  line-height: 1.1;
}
table.bundled_products th.bundled_item_col,
table.bundled_products td.bundled_item_col {
  padding: 0 !important;
}

.products li {
  box-shadow:
    0 4px 6px -1px rgba(10, 13, 18, 0.1),
    0 2px 4px -2px rgba(10, 13, 18, 0.06);
}

.qode-comparative-features-table {
  box-shadow:
    0 4px 6px -1px rgba(10, 13, 18, 0.1),
    0 2px 4px -2px rgba(10, 13, 18, 0.06);
}
.qode-comparative-features-table .qode-cft-column-title-holder:nth-child(2),
.qode-comparative-features-table
  .qode-cft-row
  .qode-cft-feature-value:nth-child(2) {
  background-color: #e23230 !important;
}
.qode-comparative-features-table .qode-cft-column-title-holder:nth-child(2) h4,
.qode-comparative-features-table
  .qode-cft-row
  .qode-cft-feature-value:nth-child(2)
  span {
  color: #fff !important;
}

@media only screen and (max-width: 768px) {
  .qode-comparative-features-table .qode-cft-row div:first-of-type p {
    color: #fff !important;
  }
}

/* ==========================================================================
   WooCommerce - Cart Icon
   ========================================================================== */

.shopping_cart_header .header_cart.cart_icon .header_cart_span {
  background-color: #e23230 !important;
}

.shopping_cart_header .header_cart.cart_icon:before {
  color: #e23230 !important;
}

@media only screen and (max-width: 420px) {
  .shopping_cart_outer {
    display: table !important;
  }
}

.top-product-section .image-wrapper img {
  width: 100%;
}

.vc_column-inner ul {
  align-self: stretch;
}

ul.products {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 32px;
}

ul.products li.product {
  display: flex !important;
  flex-direction: column;
  flex: 1 1 calc(25% - 32px);
  max-width: calc(25% - 32px);
  margin: 0 !important;
  height: unset !important;
}

ul.products li.product > a {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

ul.products li.product .button {
  margin-top: auto;
}

@media (max-width: 768px) {
  ul.products li.product {
    flex: 1 1 100%;
    max-width: 100%;
  }
}

/* ==========================================================================
   Responsive Table
   ========================================================================== */

.tableWrapper table {
  width: 100%;
}
table.chkpt-table {
  border-collapse: collapse;
  text-align: left;
  vertical-align: middle;
}
@media only screen and (max-width: 760px) {
  .tableWrapper {
    overflow-x: scroll;
  }
  .tableWrapper table.chkpt-table {
    width: 700px;
  }
}
table.chkpt-table thead {
  background-color: #e43030;
  color: #fff;
}
table.chkpt-table th {
  padding: 13px;
  color: white;
  font-weight: 500;
  text-align: left;
  vertical-align: middle;
}
table.chkpt-table th:not(:last-child) {
  border-right: 1px solid #fff;
}
table.chkpt-table td {
  padding: 13px;
  text-align: left;
}
table.chkpt-table tbody tr {
  background-color: #eee;
}
table.chkpt-table tbody tr td {
  border-right: 1px solid #bbb;
  border-bottom: 1px solid #bbb;
}
table.chkpt-table tbody tr td:last-child {
  border-right: 0px solid #fff;
}
table.chkpt-table tbody tr:last-child td {
  border-bottom: 0px solid #fff;
}
table.chkpt-table tbody tr td table tr td {
  border-right: 0px solid #bbb;
  border-bottom: 0px;
  width: 50%;
  padding: 0;
}
table.chkpt-table tbody tr.spacing,
table.chkpt-table tbody tr.spacing table tr {
  background-color: #333333;
}
table.chkpt-table tbody tr.spacing td {
  color: #fff;
  border-bottom: 0;
  border-top: 0;
  border-right: 1px solid #fff;
}
table.chkpt-table tbody tr.spacing td:last-child {
  border-right: 0px solid #fff !important;
}
table.chkpt-table tbody tr.spacing table,
table.chkpt-table tbody tr.spacing table td {
  margin: 0;
  border: 0px !important;
}

/* ==========================================================================
   Product Page
   ========================================================================== */

.woocommerce .quantity .plus,
.woocommerce .quantity .minus,
.woocommerce-page .quantity .plus,
.woocommerce-page .quantity .minus {
  position: relative;
}
.woocommerce .quantity input.qty,
.woocommerce-page .quantity input.qty {
  float: none;
}
.woocommerce .qode-single-product-summary .woocommerce-variation-price,
.woocommerce .qode-single-product-summary .woocommerce-variation-availability {
  display: inline;
}
.woocommerce
  .qode-single-product-summary
  .woocommerce-variation-price
  .price
  .woocommerce-Price-amount {
  color: #e23230;
  font-size: 32px;
  font-weight: 600;
}

.woocommerce .product .onsale.out-of-stock-button {
  background-color: #e23230;
  font-family: Roboto, sans-serif;
  font-weight: 800;
}

.q_icon_list {
  margin-bottom: 8px;
}

.q_icon_list p {
  margin-bottom: unset !important;
  font-weight: 600;
}

.ruk_rating_snippet i {
  font-size: 20px !important;
}

.ruk_rating_snippet span {
  font-size: 16px !important;
}

.product_meta {
  display: none;
}

/* ==========================================================================
   Product Tabs
   ========================================================================== */

.product .tabs-nav {
  background-color: #fff !important;
}
.product .q_tabs #tab-description {
  text-align: left !important;
}
.product .q_tabs .tabs-nav li:first-child a {
  padding-left: 14px !important;
}

/* ==========================================================================
   Variations / Swatches
   ========================================================================== */

div.swatch-wrapper.selected {
  border: 2px solid #e23230;
}
.variations .label {
  display: none;
}
.variations .value {
  padding: 0;
}
.woocommerce div.product .summary table.variations {
  margin-bottom: 0;
}
.swatch-wrapper {
  border-radius: 2em;
}
.tawcvs-swatches .swatch-label {
  border: 2px solid #333333 !important;
  color: #333333 !important;
  opacity: 1 !important;
}
.tawcsv-swatches .cv-tooltip,
.swatch .cv-tooltip {
  display: none !important;
}
.tawcvs-swatches .swatch-label.selected,
.tawcvs-swatches .swatch-label:hover {
  border: 2px solid #e23230 !important;
  background-color: #e23230 !important;
  color: #fff !important;
}
.tawcvs-swatches .swatch-color {
  opacity: 1 !important;
}
.tawcvs-swatches .swatch-color.selected,
.tawcvs-swatches .swatch-color:hover {
  border-color: #e23230 !important;
}
.tawcvs-swatches {
  padding-top: 0px !important;
  display: inline;
}
.variations #picker_pa_color .swatch-anchor {
  border-radius: 2em;
}

.woocommerce-variation-description,
.woocommerce-variation-add-to-cart {
  display: inline !important;
}
.q_accordion_holder.accordion.boxed .ui-accordion-header {
  background-color: #fff;
  color: #333333;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 1px;
}
.q_accordion_holder.accordion h6.ui-accordion-header {
  padding: 16px 20px;
}
.q_accordion_holder.accordion.boxed .ui-accordion-header {
  text-align: left;
}
.size_chart {
  margin-bottom: 20px;
}
@media only screen and (max-width: 800px) {
  .tawcvs-swatches .swatch {
    margin-right: 10px !important;
  }
}
/* ==========================================================================
   Menu
   ========================================================================== */

.main_menu #menu-main-navigation {
  width: 155% !important;
  left: -55% !important;
}

nav.mobile_menu ul > li.has_sub > span.mobile_arrow {
  padding: 12px 10px 0 0;
}
/* ==========================================================================
   Log In Page
   ========================================================================== */

.login h1 a {
  height: 110px !important;
}
.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="password"] {
  width: 100%;
}

/* ==========================================================================
   Checkout
   ========================================================================== */
@media only screen and (min-width: 1024px) {
  .wpmc-nav-wrapper #wpmc-back-to-cart {
    order: 2;
  }
  .wpmc-nav-wrapper #wpmc-prev {
    order: 1;
  }
  .wpmc-nav-wrapper #wpmc-next {
    order: 3;
  }
}

.product-remove {
  display: none;
}
.woocommerce-input-wrapper input,
.woocommerce-input-wrapper textarea {
  width: 100%;
}
.woocommerce-checkout-payment #eway_payments-card-name,
.woocommerce-checkout-payment #eway_payments-card-number {
  width: 90%;
}
.woocommerce-checkout-payment .form-row-first,
.woocommerce-checkout-payment .form-row-last {
  display: inline-block;
}
.woocommerce-checkout-payment .form-row-first {
  margin-right: 20px;
}
.woocommerce-input-wrapper input {
  width: 96%;
}
@media only screen and (min-width: 800px) {
  /* Two-column billing/shipping via flexbox using WooCommerce's
     form-row-first/last/wide classes (replaces the old nth-child pairing, which
     scrambled grouping once email moved to the top). The flex gap provides both
     the column gap and the vertical spacing between rows. */
  .woocommerce-billing-fields__field-wrapper,
  .woocommerce-shipping-fields__field-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 2%;
  }
  .woocommerce-billing-fields__field-wrapper .form-row,
  .woocommerce-shipping-fields__field-wrapper .form-row {
    margin-bottom: 0;
  }
  .woocommerce-billing-fields__field-wrapper .form-row-first,
  .woocommerce-shipping-fields__field-wrapper .form-row-first,
  .woocommerce-billing-fields__field-wrapper .form-row-last,
  .woocommerce-shipping-fields__field-wrapper .form-row-last {
    flex: 1 1 0;
    min-width: 0; /* share the row evenly; avoids sub-pixel wrapping */
  }
  .woocommerce-billing-fields__field-wrapper .form-row-wide,
  .woocommerce-shipping-fields__field-wrapper .form-row-wide {
    flex: 0 0 100%;
  }
  /* Address fields get their form-row-* classes re-applied by WooCommerce's
     i18n JS, so pair Suburb|State and Postcode|Phone by ID instead (ID
     specificity also overrides the form-row-wide rule above). */
  #billing_city_field,
  #billing_state_field,
  #billing_postcode_field,
  #billing_phone_field,
  #shipping_city_field,
  #shipping_state_field,
  #shipping_postcode_field,
  #shipping_phone_field {
    flex: 1 1 0;
    min-width: 0;
  }
}
@media only screen and (max-width: 800px) {
  .woocommerce-input-wrapper input {
    width: 94%;
  }
  #billing_country_field {
    margin-bottom: 40px !important;
  }
}

.woocommerce-billing-fields #mailchimp_woocommerce_newsletter {
  float: left;
}
.woocommerce-billing-fields .mailchimp-newsletter .woocommerce-form__label {
  margin-left: 25px;
}
.woocommerce-shipping-fields #ship-to-different-address {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
}

/* ==========================================================================
   Size Chart
   ========================================================================== */

.size_chart,
table.variations {
  display: inline-block;
}
.variations_form .reset_variations {
  display: none !important;
}

.size_chart .qbutton {
  height: 35px !important;
  line-height: 35px !important;
}
.overlay {
  background: #000;
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0.5;
  z-index: 1002;
}
.sizeChartPopup,
.maskPopup {
  position: fixed;
  text-align: center;
  z-index: 1010;
  left: 50%;
  margin-left: -300px;
  max-width: 600px;
  width: 600px;
  top: 35%;
  display: none;
}
.sizeChartTop,
.maskTop {
  position: fixed;
  text-align: center;
  z-index: 1010;
  left: 50%;
  margin-left: -300px;
  max-width: 600px;
  width: 600px;
  top: 35%;
  display: none;
}
.maskTop,
.maskPopup {
  top: 15%;
}

.closeButton {
  position: absolute;
  right: 0px;
  top: -38px;
  color: #fff;
  font-size: 24px;
}
.closeButton:hover {
  color: #000;
  cursor: pointer;
}
.sizeChartImg,
.maskImg {
  position: absolute;
  top: -70px;
}
.sizeChartImg img,
.maskImg img {
  width: 55px;
  height: 55px;
  display: none;
}
.maskInstructions .maskHelpImg img {
  height: 150px;
}
.maskInstructions .maskImgLabel h5,
.maskInstructions .maskImgLabel p {
  text-align: center;
  color: #fff;
}

.chkpt-table .spacing td {
  padding: 0px;
}
.chkpt-table .spacing table td {
  padding: 15px;
}
.chkpt-table .spacing table td:not(:last-child) {
  border-right: 1px solid white !important;
}
.tab {
  overflow: hidden;
}
.tab button {
  background-color: #333;
  color: #fff;
  float: left;
  border: none;
  outline: none;
  cursor: pointer;
  padding: 14px 16px;
  transition: 0.3s;
  font-family: "Roboto", sans-serif;
  font-size: 16px;
  font-weight: 500;
  margin: 0;
}
.tab button:hover {
  background-color: #e23230;
}
.tab button.active {
  background-color: #e23230;
}
.tabcontent {
  display: none;
}

@media only screen and (max-width: 760px) {
  .sizeChartPopup,
  .sizeChartTop,
  .maskPopup,
  .maskTop {
    max-width: 80%;
    margin-left: 10%;
    left: 0;
    top: 10%;
  }
  .maskPopup,
  .maskTop {
    top: 10%;
  }
  .maskInstructions .maskHelpImg img {
    height: 100px;
    margin-bottom: 10px;
  }
  .maskInstructions .maskImgLabel h5 {
    font-size: 1rem;
  }
  .maskInstructions .maskImgLabel p {
    font-size: 0.8rem;
  }
  .maskInstructions .maskHelpImg {
    margin-bottom: 10px;
  }
  .sizeChartImg img,
  .maskImg img {
    display: block;
  }
}

/* ==========================================================================
   Reviews.io Fixs
   ========================================================================== */

.ElementsWidget__inner {
  width: 100%;
  padding-top: 32px;
}

.woocommerce ul.products li.product .ruk_rating_snippet {
  display: flex;
  justify-content: center;
  padding: 0 0 16px 0;
}

/* ==========================================================================
   Responsive Video Player Class
   ========================================================================== */

.video-container {
  position: relative !important;
  padding-bottom: 56.25% !important;
  padding-top: 30px !important;
  height: 0 !important;
  overflow: hidden !important;
}

.video-container iframe,
.video-container object,
.video-container embed {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

/* ==========================================================================
   Currency Conversion Buttons
   ========================================================================== */

.footer_bottom ul li {
  margin-right: 0px;
  margin-left: 8px;
  float: right;
}

.footer_bottom ul li .active {
  color: #333333;
}

@media only screen and (max-width: 800px) {
  .footer_bottom ul li {
    float: none;
  }
  .footer_bottom ul li:not(:last-child) {
    margin: 0 10px 0 0;
  }
  .footer_bottom ul li:last-child {
    margin: 0 5px 0 0;
  }
  .woocommerce-multi-currency.wmc-sidebar {
    display: none !important;
  }
}

/* ==========================================================================
   GDPR Cookie Bar
   ========================================================================== */

#cookie-law-info-bar {
  font-size: 12px;
  padding-top: 8px;
  padding-bottom: 8px;
  line-height: 1.4;
}

/* ==========================================================================
   Footer 
   ========================================================================== */

.column3 .footer_bottom img {
  width: 40px !important;
}
.footer_top .column4 .wpcf7-submit {
  background-color: #fff;
}
.footer_top #text-14 img {
  width: 115px;
}

/* ==========================================================================
   Payment thing
   ========================================================================== */

.wmc-sub-currency {
  background-color: #333;
}

.wmc-currency:hover {
  background-color: #636363 !important;
}

/* ==========================================================================
   Fire Blanket Product Page
   ========================================================================== */

.fr-image-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.fr-image {
  width: 15%; /* Adjust as needed */
  margin: 10px;
  box-sizing: border-box;
}

.fr-image img {
  width: 100%;
  height: auto;
  display: block;
}

/* ==========================================================================
   AffiliateWP Form Styles
   ========================================================================== */

.affwp-form input[type="text"],
.affwp-form input[type="email"],
.affwp-form input[type="password"],
.affwp-form input[type="url"],
.affwp-form input[type="textarea"] {
  display: block;
  margin: 5px 0 0;
  padding: 15px;
  border: 1px solid rgba(51, 51, 51, 1); /* Add a border */
  border-radius: 3px; /* Rounded corners */
  outline: 0;
  resize: none;
  font-size: 14px; /* Adjust font size */
  line-height: 17px;
  background-color: rgba(255, 255, 255, 0);
  color: #818181;
  font-family: "Roboto", "Helvetica", sans-serif; /* Use Roboto font */
  font-weight: 400;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-appearance: none;
}

/* ==========================================================================
   Call to action styling
   ========================================================================== */

.call_to_action {
  background-color: #bc1a19 !important;
}

/* ==========================================================================
   PayPal Buttons Cart Fix
   ========================================================================== */
.ppc-button-wrapper {
  padding-top: 12px;
}

/* ==========================================================================
   Akeso Free Shipping Progress Bar Cart + Header Dropdown (Bridge)
   ========================================================================== */

/* Base shipbar (applies everywhere) */
.akeso-shipbar {
  background: #fff;
  border: 1px solid #e6e6e6;
  border-radius: 10px;
  padding: 12px 14px;
  margin: 6px 0 16px;
  color: #333333;
  font-family: Roboto, sans-serif;
  font-size: 14px;
  line-height: 1.4;
  font-weight: 400;
}

.akeso-shipbar__text {
  margin: 0 0 10px;
}

.akeso-shipbar__track {
  width: 100%;
  height: 8px;
  border-radius: 999px;
  background: #e9e9e9;
  overflow: hidden;
}

.akeso-shipbar__fill {
  display: block;
  height: 100%;
  border-radius: 999px;
}

/* Locked vs unlocked colour */
.akeso-shipbar:not(.is-unlocked) .akeso-shipbar__fill {
  background: #333333;
}

.akeso-shipbar.is-unlocked .akeso-shipbar__fill {
  background: #e23230; /* brand red */
}

/* ----------------
   Cart page styling
   IMPORTANT: scope to cart form only so it does not affect header dropdown
   ---------------- */

/* Most themes */
body.woocommerce-cart form.woocommerce-cart-form .akeso-shipbar {
  padding: 16px 18px;
  border-radius: 12px;
  margin: 0 0 16px;
}

/* Fallback in case the form class differs */
body.woocommerce-cart .woocommerce-cart-form .akeso-shipbar {
  padding: 16px 18px;
  border-radius: 12px;
  margin: 0 0 16px;
}

/* ----------------
   Header dropdown mini-cart styling (Bridge)
   ---------------- */

.shopping_cart_dropdown
  .shopping_cart_dropdown_inner
  .akeso-shipbar.akeso-shipbar--mini {
  padding: 10px 12px;
  border-radius: 10px;
  margin: 10px 0 12px;
}

.shopping_cart_dropdown
  .shopping_cart_dropdown_inner
  .akeso-shipbar.akeso-shipbar--mini
  p.akeso-shipbar__text {
  font-size: 13px;
  line-height: 1.35;
}

.shopping_cart_dropdown
  .shopping_cart_dropdown_inner
  .akeso-shipbar.akeso-shipbar--mini
  .akeso-shipbar__text {
  margin: 0 0 8px;
}

.shopping_cart_dropdown
  .shopping_cart_dropdown_inner
  .akeso-shipbar.akeso-shipbar--mini
  .akeso-shipbar__track {
  height: 6px;
}

/* =====================================
   Improve content width on Tablet Down
   ===================================== */

@media (max-width: 1024px) {
  .container_inner,
  .content .container .container_inner,
  .grid_section .section_inner {
    width: 92% !important;
    max-width: 92% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .header_bottom {
    padding: unset !important;
  }
}

/* ==========================================================================
   WooCommerce Cart Page Fixes
   ========================================================================== */

.woocommerce-message {
  border: 1px solid #e6e6e6;
  border-radius: 10px;
  padding: 14px 16px !important;
  font-family: "Roboto", sans-serif;
}

table.shop_table.shop_table_responsive.cart.woocommerce-cart-form__contents
  thead
  th {
  background: #fff !important;
  font-family: "Roboto", sans-serif;
}

table.shop_table.shop_table_responsive.cart.woocommerce-cart-form__contents
  tbody
  tr
  td {
  background: #fff !important;
}

table.shop_table.shop_table_responsive.cart.woocommerce-cart-form__contents
  tbody
  tr
  td.actions {
  background: transparent !important;
}

/* ================================
   Checkout styling to match cart
   ================================ */

/* Order review table shell */
.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table {
  background: #fff;
  border: 1px solid #e6e6e6;
  border-radius: 12px;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
}

/* Header row */
.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  thead
  th {
  background: #fff !important;
}

/* Body cells */
.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  tbody
  td,
.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  tfoot
  td,
.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  tfoot
  th {
  background: #fff !important;
}

/* Inner dividers */
.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  tbody
  tr
  td,
.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  tfoot
  tr
  th,
.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  tfoot
  tr
  td {
  border-top: 1px solid #eeeeee;
}

/* No divider above first body row */
.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  tbody
  tr:first-child
  td {
  border-top: 0;
}

/* Top corners */
.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  thead
  tr
  th:first-child {
  border-top-left-radius: 12px;
}

.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  thead
  tr
  th:last-child {
  border-top-right-radius: 12px;
}

/* Bottom corners on final row */
.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  tfoot
  tr:last-child
  th:first-child,
.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  tfoot
  tr:last-child
  td:first-child {
  border-bottom-left-radius: 12px;
}

.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  tfoot
  tr:last-child
  th:last-child,
.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  tfoot
  tr:last-child
  td:last-child {
  border-bottom-right-radius: 12px;
}

/* Payment section shell */
.woocommerce-checkout #payment {
  background: #fff;
  border: 1px solid #e6e6e6;
  border-radius: 12px;
  overflow: hidden;
}

/* Individual payment method rows */
.woocommerce-checkout #payment ul.payment_methods {
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #eeeeee;
}

.woocommerce-checkout #payment ul.payment_methods > li {
  list-style: none;
  margin: 0;
  padding: 18px 20px;
  border-top: 1px solid #eeeeee;
}

.woocommerce-checkout #payment ul.payment_methods > li:first-child {
  border-top: 0;
}

/* Payment box content */
.woocommerce-checkout #payment div.payment_box {
  background: #fff;
  margin: 12px 0 0;
  padding: 16px 0 0;
}

/* Place order row */
.woocommerce-checkout #payment .place-order {
  padding: 20px;
  background: #fff;
}

/* Optional: tighten review table spacing slightly */
.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  th,
.woocommerce-checkout
  table.shop_table.woocommerce-checkout-review-order-table
  td {
  padding-top: 18px;
  padding-bottom: 18px;
}

.woocommerce #payment ul.payment_methods li label img {
  padding-bottom: 24px;
}

/* =====================================
   Checkout form fields
   ===================================== */

/* Native text inputs, selects and textarea */
.woocommerce-checkout input.input-text,
.woocommerce-checkout select,
.woocommerce-checkout textarea,
.woocommerce-checkout .select2-container--default .select2-selection--single,
.woocommerce-checkout .select2-container--default .select2-selection--multiple {
  background: #fff !important;
  border: 1px solid #d9d9d9 !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  color: #333333 !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  min-height: 46px !important;
  padding: 12px 14px !important;
  box-sizing: border-box !important;
}

/* Textarea should have more height and normal vertical behaviour */
.woocommerce-checkout textarea {
  min-height: 120px !important;
  resize: vertical;
}

/* Focus states */
.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus,
.woocommerce-checkout
  .select2-container--default.select2-container--focus
  .select2-selection--single,
.woocommerce-checkout
  .select2-container--default.select2-container--focus
  .select2-selection--multiple,
.woocommerce-checkout
  .select2-container--default.select2-container--open
  .select2-selection--single {
  border-color: #999999 !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Placeholder styling */
.woocommerce-checkout input.input-text::placeholder,
.woocommerce-checkout textarea::placeholder {
  color: #9a9a9a !important;
  opacity: 1;
}

/* Select2 single select text alignment */
.woocommerce-checkout .select2-container--default .select2-selection--single {
  display: flex !important;
  align-items: center !important;
  padding-right: 38px !important;
}

.woocommerce-checkout
  .select2-container--default
  .select2-selection--single
  .select2-selection__rendered {
  color: #333333 !important;
  line-height: 1.4 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.woocommerce-checkout
  .select2-container--default
  .select2-selection--single
  .select2-selection__arrow {
  height: 100% !important;
  right: 12px !important;
}

/* Remove old theme inset styling if present */
.woocommerce-checkout .form-row input,
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row select {
  margin: 0 !important;
}

/* Labels */
.woocommerce-checkout .form-row label,
.woocommerce-checkout h3,
.woocommerce-checkout #ship-to-different-address label {
  color: #333333;
}

/* Checkbox alignment */
.woocommerce-checkout input[type="checkbox"],
.woocommerce-checkout input[type="radio"] {
  vertical-align: middle;
}

/* Fix Select2 dropdown arrow vertical alignment */
.woocommerce-checkout
  .select2-container--default
  .select2-selection--single
  .select2-selection__arrow {
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  top: 0 !important;
}

/* Ensure the whole select box matches input height */
.woocommerce-checkout .select2-container--default .select2-selection--single {
  height: 46px !important;
  display: flex !important;
  align-items: center !important;
}

/* Checkout payment method logos */

.woocommerce-checkout .wc_payment_method label img {
  width: auto !important;
  height: 18px !important;
  max-width: 40px !important;
  max-height: 30px !important;
  vertical-align: middle !important;
  object-fit: contain !important;
  display: inline-block !important;
}

/* Checkout inline checkbox alignment */
.woocommerce-checkout label.checkbox.inline,
.woocommerce-checkout .woocommerce-form__label-for-checkbox {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  line-height: 1.3 !important;
}

.woocommerce-checkout label.checkbox.inline input[type="checkbox"],
.woocommerce-checkout
  .woocommerce-form__label-for-checkbox
  input[type="checkbox"] {
  margin: 0 !important;
  flex: 0 0 auto;
}

.woocommerce-checkout label.checkbox.inline span,
.woocommerce-checkout .woocommerce-form__label-for-checkbox span {
  display: inline-block;
}

.woocommerce-checkout
  .woocommerce-billing-fields
  .mailchimp-newsletter
  .woocommerce-form__label {
  margin-left: 0 !important;
}

/* Fix typography mismatch for checkbox labels */
.woocommerce-checkout label.woocommerce-form__label span {
  font-family: inherit;
  font-size: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  display: inline-block;
  letter-spacing: 0.02em;
}

/* Hide payment method logos on mobile */
@media (max-width: 768px) {
  .woocommerce-checkout .wc_payment_method label img {
    display: none !important;
  }
}

/* Restore emphasis to Woo totals on cart + checkout */
.woocommerce table.shop_table strong,
.woocommerce table.shop_table th {
  font-weight: 600 !important;
}

/* Final total row stronger */
.woocommerce table.shop_table .order-total strong,
.woocommerce table.shop_table .order-total th,
.woocommerce table.shop_table .order-total td {
  font-weight: 700 !important;
}

/* Mobile: make checkout order table easier to scan */
@media (max-width: 768px) {
  .woocommerce-checkout-review-order-table th,
  .woocommerce-checkout-review-order-table td {
    text-align: left !important;
    vertical-align: top;
  }

  .woocommerce-checkout-review-order-table thead th:first-child,
  .woocommerce-checkout-review-order-table tbody td:first-child,
  .woocommerce-checkout-review-order-table tfoot th {
    width: 52%;
  }

  .woocommerce-checkout-review-order-table thead th:last-child,
  .woocommerce-checkout-review-order-table tbody td:last-child,
  .woocommerce-checkout-review-order-table tfoot td {
    width: 48%;
  }

  .woocommerce-checkout-review-order-table td,
  .woocommerce-checkout-review-order-table th {
    padding: 14px 16px !important;
  }

  .woocommerce-checkout-review-order-table .product-name,
  .woocommerce-checkout-review-order-table .product-total,
  .woocommerce-checkout-review-order-table .shipping td,
  .woocommerce-checkout-review-order-table .shipping th,
  .woocommerce-checkout-review-order-table .order-total td,
  .woocommerce-checkout-review-order-table .order-total th {
    text-align: left !important;
  }

  .woocommerce-checkout-review-order-table ul#shipping_method {
    margin: 0;
    padding: 0;
  }

  .woocommerce-checkout-review-order-table ul#shipping_method li {
    text-align: left !important;
    line-height: 1.4;
    margin-bottom: 6px;
  }
}

/* Mobile only: tidy shipping radio alignment */
@media (max-width: 768px) {
  .woocommerce-checkout-review-order-table ul#shipping_method li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 8px;
  }

  .woocommerce-checkout-review-order-table
    ul#shipping_method
    li
    input[type="radio"] {
    margin: 4px 0 0 !important;
    flex: 0 0 auto;
  }

  .woocommerce-checkout-review-order-table ul#shipping_method li label {
    margin: 0 !important;
    line-height: 1.4;
    display: block;
  }
}

/* Desktop: restore normal shipping method layout */
@media (min-width: 769px) {
  .woocommerce-checkout-review-order-table ul#shipping_method li {
    display: block !important;
    margin-bottom: 6px;
  }

  .woocommerce-checkout-review-order-table
    ul#shipping_method
    li
    input[type="radio"] {
    margin: 0 4px 0 0 !important;
    vertical-align: middle !important;
  }

  .woocommerce-checkout-review-order-table ul#shipping_method li label {
    display: inline !important;
    margin: 0 !important;
    line-height: 1.4;
  }
}

/* ==========================================================================
   36. WooCommerce Cart — Two-Column Layout (Akeso)
   ========================================================================== */

/* Desktop: items left, sticky order-summary right.
   The <form> is the grid container; its two direct children are the columns. */
@media (min-width: 1025px) {
  .akeso-cart .woocommerce-cart-form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 32px;
    align-items: start;
  }
}

.akeso-cart__main {
  min-width: 0;
}

/* Items table: keep the actions row (Update cart) left-aligned, no card bg */
.akeso-cart__main table.cart td.actions {
  background: transparent !important;
  text-align: left;
  padding-left: 0 !important;
}

/* ---- Order summary card (right) ---- */
.akeso-cart__aside {
  background: #fff;
  border: 1px solid #e6e6e6;
  border-radius: 12px;
  padding: 20px;
}

@media (min-width: 1025px) {
  .akeso-cart__aside {
    position: sticky;
    top: 24px;
  }
}

@media (max-width: 1024px) {
  .akeso-cart__aside {
    margin-top: 24px;
  }
}

/* Totals: borderless, full width inside the card */
.akeso-cart__aside .cart_totals {
  width: 100% !important;
  float: none !important;
  margin: 0;
  text-align: left;
}

.akeso-cart__aside .cart_totals h2 {
  font-size: 1.2em;
  margin: 0 0 12px;
}

.akeso-cart__aside .cart_totals table.shop_table {
  border: 0 !important;
  margin: 0;
}

.akeso-cart__aside .cart_totals table.shop_table th,
.akeso-cart__aside .cart_totals table.shop_table td {
  border: 0 !important;
  padding: 8px 0 !important;
  background: transparent !important;
}

.akeso-cart__aside .cart_totals .order-total th,
.akeso-cart__aside .cart_totals .order-total td {
  border-top: 1px solid #e6e6e6 !important;
  padding-top: 14px !important;
  font-size: 1.05em;
}

/* ---- Coupon: collapsed (native <details>, no JS) ---- */
.akeso-coupon {
  margin: 14px 0;
  border-top: 1px solid #eee;
  padding-top: 14px;
}

.akeso-coupon__toggle {
  cursor: pointer;
  font-weight: 600;
  list-style: none;
  color: #333333;
}

.akeso-coupon__toggle::-webkit-details-marker {
  display: none;
}

.akeso-coupon__toggle::after {
  content: "+";
  float: right;
  font-weight: 400;
}

.akeso-coupon[open] .akeso-coupon__toggle::after {
  content: "\2212"; /* minus */
}

.akeso-coupon__row {
  margin-top: 12px;
}

.akeso-coupon__row .input-text {
  width: 100%;
  margin-bottom: 8px;
  box-sizing: border-box;
}

.akeso-coupon__row .button {
  width: 100%;
}

/* ---- Checkout + express buttons ---- */
.akeso-cart__checkout {
  margin-top: 8px;
}

.akeso-cart__checkout .wc-proceed-to-checkout {
  padding: 0 !important;
}

.akeso-cart__checkout .checkout-button,
.akeso-cart__checkout a.checkout-button {
  display: block; /* fills the card width without width:100% (avoids overflow) */
  text-align: center;
  background-color: #e23130 !important;
  border: 2px solid #e23130 !important; /* border matches bg so no black outline */
  color: #fff !important;
  font-weight: 700;
  padding: 14px 18px !important;
  border-radius: 50px; /* pill, matching the site's primary buttons */
  margin: 0 0 12px;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

.akeso-cart__checkout .checkout-button:hover,
.akeso-cart__checkout .checkout-button:focus,
.akeso-cart__checkout a.checkout-button:hover,
.akeso-cart__checkout a.checkout-button:focus {
  background-color: #bc1b19 !important;
  border-color: #bc1b19 !important;
  color: #fff !important;
}

/* Pay-later message (PPCP) renders above the CTA — keep it compact. */
.akeso-cart__checkout .ppcp-messages {
  margin: 0 0 12px !important;
}

/* Express buttons (Stripe G Pay/Link + PayPal) render below the CTA via the
   same hook. Anchor an "or express checkout" divider to the first one (Stripe).
   If Stripe isn't eligible, the divider simply won't show. */
.akeso-cart__checkout #wc-stripe-express-checkout-element {
  border-top: 1px solid #e6e6e6;
  margin-top: 16px !important;
  padding-top: 20px;
  position: relative;
  clear: both;
}

.akeso-cart__checkout #wc-stripe-express-checkout-element::before {
  content: "or express checkout";
  position: absolute;
  top: -8px;
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
  padding: 0 10px;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #999999;
  white-space: nowrap;
}

.akeso-cart__checkout .ppc-button-wrapper {
  margin-top: 10px !important;
}

/* ---- Trust line ---- */
.akeso-cart__trust {
  text-align: center;
  font-size: 13px;
  color: #777777;
  margin: 14px 0 0;
}

/* ---- Shipping calculator ---- */
.akeso-cart__shipping-calc {
  margin-top: 16px;
  border-top: 1px solid #eee;
  padding-top: 14px;
}

/* Theme wraps the toggle in an <h2>; bring it down to ~h6 and drop uppercase */
.akeso-cart__shipping-calc h6 {
  font-size: 1.1em;
  line-height: 1.3;
  margin: 0;
  text-transform: none;
  letter-spacing: 0;
}

.akeso-cart__shipping-calc .shipping-calculator-button {
  color: #333333;
  font-weight: 600;
  text-transform: none;
}

.akeso-cart__shipping-calc .shipping-calculator-form {
  margin-top: 14px;
}

.akeso-cart__shipping-calc .form-row {
  margin: 0 0 12px;
  padding: 0;
}

.akeso-cart__shipping-calc .form-row > span {
  display: block;
}

/* Make ALL cart form fields visible (coupon + shipping calculator), matching
   the checkout input styling. Scoped to .akeso-cart and !important to beat the
   theme's borderless white input styling. */
.akeso-cart .input-text,
.akeso-cart select {
  width: 100%;
  min-height: 46px;
  padding: 12px 14px;
  background: #fff !important;
  border: 1px solid #d9d9d9 !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  color: #333333;
  font-size: 14px;
  line-height: 1.4;
  box-sizing: border-box;
}

.akeso-cart .input-text:focus,
.akeso-cart select:focus {
  border-color: #999999 !important;
  outline: none;
}

/* Select2-enhanced dropdowns: match height/border... */
.akeso-cart .select2-container--default .select2-selection--single {
  min-height: 46px;
  border: 1px solid #d9d9d9;
  border-radius: 4px;
  display: flex;
  align-items: center;
  padding: 0 14px;
}

/* ...and zero out the inner padding so text isn't double-indented (the
   container above already provides the 14px). */
.akeso-cart
  .select2-container--default
  .select2-selection--single
  .select2-selection__rendered {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.akeso-cart__shipping-calc .button {
  width: 100%;
}

/* Cross-sells not used on the cart */
.akeso-cart .cross-sells {
  display: none !important;
}

/* Quantity input: the shared field styling also hits .qty (it carries the
   .input-text class); give it a sensible fixed width instead of 100%. */
.akeso-cart .quantity input.qty {
  width: 48px;
  min-width: 32px;
  padding: 8px 4px;
  text-align: center;
}

/* Down-arrow next to the shipping toggle needs a little breathing room */
.akeso-cart__shipping-calc .shipping-calculator-button span {
  padding-left: 8px;
}

/* Theme uses Raleway on some headings/buttons; force Roboto across the cart */
.akeso-cart,
.akeso-cart h2,
.akeso-cart h6,
.akeso-cart th,
.akeso-cart button,
.akeso-cart .button,
.akeso-cart a.checkout-button,
.akeso-cart input,
.akeso-cart select {
  font-family: "Roboto", sans-serif !important;
}

/* Stack the items table into cards earlier than the theme's 480px.
   Mirrors bridge/css/woocommerce_responsive.css (the @480 cart block) at
   768px so all phones + small tablets get the stacked layout. */
@media (max-width: 768px) {
  .akeso-cart table.cart {
    display: block;
    text-align: center;
  }
  .akeso-cart table.cart thead {
    display: none;
  }
  .akeso-cart table.cart tbody {
    display: block;
  }
  .akeso-cart table.cart tbody tr {
    display: block;
    width: 100%;
    padding: 10px 0;
  }
  .akeso-cart table.cart tbody tr:not(:nth-last-child(2)) {
    border-bottom: none;
  }
  .akeso-cart table.cart tbody td {
    display: block;
    text-align: center;
  }
  .akeso-cart table.cart tbody td img {
    margin: 0 auto;
  }
}

/* ==========================================================================
   37. Checkout — primary CTAs (WPMC Next / Place Order)
   ========================================================================== */

/* The forward/submit actions should be the filled red pill (matching the cart
   checkout button). Back / Previous / Back to Cart stay as outline buttons. */
#wpmc-next,
.woocommerce-checkout #place_order {
  background-color: #e23130 !important;
  border: 2px solid #e23130 !important;
  color: #fff !important;
  border-radius: 50px;
  font-weight: 700;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

#wpmc-next:hover,
#wpmc-next:focus,
.woocommerce-checkout #place_order:hover,
.woocommerce-checkout #place_order:focus {
  background-color: #bc1b19 !important;
  border-color: #bc1b19 !important;
  color: #fff !important;
}

/* PayPal Smart Buttons render in .place-order (after the submit button) via the
   PPCP hook. Float them to the TOP of that area — above the privacy/terms, right
   by the PayPal option — using flex order. CSS-only: no DOM/iframe move. */
.woocommerce-checkout #payment .place-order {
  display: flex;
  flex-direction: column;
}
.woocommerce-checkout #payment .place-order .ppc-button-wrapper {
  order: -1;
  margin: 0 0 24px;
}
