/* Carefree Theme + Menu Engine V31.0.64 - content pages, footer, messages (setting crf_content_mode).
   Every rule starts html.crf-content: the class is printed in the head only while the setting is live for the visitor
   (Off = no class, no file, today's look). Stored page text is never edited; inline fonts, sizes and text colours in
   it are overridden inside the content area only, backgrounds are left alone (one known bright cell colour in product
   description tables is softened by its exact value). Messages (.alert) are restyled on an allow-list of pages only
   (product, information pages, account, home, category, search, specials, contact), never on the cart, checkout or
   quote pages, never inside the mini cart or the Quick Add popup, never one carrying its own inline colours; colours,
   borders, padding and fonts only (no display, visibility, height or position on a message, no class change). */

html.crf-content { --crf-ct-ink: #252525; --crf-ct-text: #3d3530; --crf-ct-mute: #6f665e; --crf-ct-cream: #faf6f2; --crf-ct-tint: #f3efeb;
  --crf-ct-line: #ece3da; --crf-ct-line-d: #ddd0c3; --crf-ct-pink: #d81b60; --crf-ct-red: #b91c1c; --crf-ct-red-t: #fdecec; --crf-ct-red-l: #d65b5b;
  --crf-ct-shadow: 0 4px 14px rgba(60, 40, 20, .08); --crf-ct-font: 'Montserrat', Arial, sans-serif; --crf-ct-link: #252525; --crf-ct-link-u: #c9bdb1; }

/* ============ 1. Information pages: one white reading card (body.information-information, every stored page) ============ */
html.crf-content body:is(.information-information, .information-sitemap) #content {
  background: #fff; border: 1px solid var(--crf-ct-line); border-radius: 14px; box-shadow: var(--crf-ct-shadow); padding: 28px 44px 32px;
  margin-top: 4px; margin-bottom: 40px; font: 400 16px/1.65 var(--crf-ct-font) !important; color: var(--crf-ct-text) !important; }
html.crf-content body:is(.information-information, .information-sitemap) #content:only-child { float: none; width: auto; max-width: 880px; margin-left: auto; margin-right: auto; }
html.crf-content body:is(.information-information, .information-sitemap) .container > .row:has(> #content:only-child) { margin-left: 0; margin-right: 0; }
html.crf-content body:is(.information-information, .information-sitemap) #content h1 { margin-top: 4px !important; }
html.crf-content body.information-information #content p { margin: 0 0 14px !important; }
html.crf-content body.information-information #content h2 { font: 700 22px/1.3 'Comfortaa', Arial, sans-serif !important; color: var(--crf-ct-ink) !important; margin: 30px 0 10px !important; text-align: left; }
html.crf-content body.information-information #content h3 { font: 700 18px/1.35 var(--crf-ct-font) !important; color: var(--crf-ct-ink) !important; margin: 26px 0 8px !important; text-align: left; }
html.crf-content body.information-information #content h4 { font: 700 16px/1.4 var(--crf-ct-font) !important; color: var(--crf-ct-ink) !important; }
html.crf-content body.information-information #content :is(strong, b) { font-weight: 600 !important; color: var(--crf-ct-ink); }
html.crf-content body.information-information #content em { font-style: normal; }
html.crf-content body.information-information #content :is(ul, ol) { padding-left: 1.3em; margin: 0 0 16px; }
html.crf-content body.information-information #content li { margin: 0 0 6px; }
html.crf-content body.information-information #content ol > li::marker { font-weight: 700; color: var(--crf-ct-ink); }
html.crf-content body.information-information #content table { border-collapse: collapse !important; width: 100% !important; margin: 0 0 18px; font-size: 15px; border: 1px solid var(--crf-ct-line) !important; }
html.crf-content body.information-information #content :is(td, th) { padding: 9px 12px !important; border: 0 !important; border-bottom: 1px solid var(--crf-ct-line) !important; vertical-align: top; text-align: left; }
html.crf-content body.information-information #content img { max-width: 100%; height: auto !important; border-radius: 10px; }
/* links in typed text: charcoal + underline (pink stays for buying) */
html.crf-content :is(body.information-information #content, body.information-sitemap #content, body[class*="product-category"] #content > h1 + .row:has(+ hr)) a:not(.btn) {
  color: var(--crf-ct-link) !important; text-decoration: underline !important; text-decoration-color: var(--crf-ct-link-u) !important; text-underline-offset: 3px; text-decoration-thickness: 1px; }
html.crf-content :is(body.information-information #content, body.information-sitemap #content, body[class*="product-category"] #content > h1 + .row:has(+ hr)) a:not(.btn):hover {
  text-decoration-color: currentColor !important; text-decoration-thickness: 2px; }
/* stored inline fonts, sizes and text colours, inside the reading card only. Text colour only by a declaration that
   starts with color (never background-color or border-color); the stored red warning stays red. */
html.crf-content body.information-information #content [style*="font-family"] { font-family: inherit !important; }
html.crf-content body.information-information #content :is([style^="color:"], [style*=";color:"], [style*=" color:"], font[color]):not(a) { color: inherit !important; }
html.crf-content body.information-information #content :is([style*="color:#ff0000"], [style*="color: #ff0000"], [style*="color:#FF0000"], [style*="color: #FF0000"], [style*="color:red"], [style*="color: red"], font[color="#ff0000"], font[color="red"]):not(a) { color: var(--crf-ct-red) !important; font-weight: 600; }
html.crf-content body.information-information #content [style*="font-size"] { font-size: inherit !important; line-height: inherit !important; }
html.crf-content body.information-information #content :is([style*="font-size:36px"], [style*="font-size: 36px"], [style*="font-size:28px"], [style*="font-size: 28px"], [style*="font-size:26px"], [style*="font-size: 26px"]) { font: 700 24px/1.3 'Comfortaa', Arial, sans-serif !important; color: var(--crf-ct-ink) !important; }
html.crf-content body.information-information #content :is([style*="font-size:22px"], [style*="font-size: 22px"]) { font-size: 18px !important; }
html.crf-content body.information-information #content [style*="margin-left:-"] { margin-left: 0 !important; }
/* Shipping Costs: the stored 20px bold lines read as a lead line and calm steps; PLEASE NOTE as a cream callout. The picture stays. */
html.crf-content body.information-information #content p:has(> span[style*="font-size:20px"] > strong) strong { font-weight: 500 !important; }
html.crf-content body.information-information #content > p:first-of-type:has(> span[style*="font-size:20px"]) strong { font-weight: 700 !important; font-size: 18px; }
html.crf-content body.information-information #content p:has(> span[style*="font-size:24px"]) {
  background: var(--crf-ct-cream); border: 1px solid var(--crf-ct-line); border-left: 4px solid var(--crf-ct-ink); border-radius: 10px; padding: 14px 16px; font-size: 15px !important; }
html.crf-content body.information-information #content p > span[style*="font-size:24px"] { font: 700 12px/1 var(--crf-ct-font) !important; letter-spacing: .08em; text-transform: uppercase; color: var(--crf-ct-ink) !important; display: block; margin-bottom: 6px; }
html.crf-content body.information-information #content .form-control { height: 44px; border-radius: 10px; border: 1px solid var(--crf-ct-line-d); box-shadow: none; font: 500 16px var(--crf-ct-font); }
html.crf-content body.information-information #content legend { font: 700 16px var(--crf-ct-font); color: var(--crf-ct-ink); border-bottom: 1px solid var(--crf-ct-line); padding-bottom: 8px; margin-top: 18px; }

/* ============ 2. F.A.Q (#faq-accordion, stored inline styles and the open-title colour the page script sets) ============ */
html.crf-content #faq-accordion { margin-top: 8px !important; }
html.crf-content #faq-accordion > .panel { border: 1px solid var(--crf-ct-line) !important; border-radius: 12px !important; box-shadow: none !important; margin: 0 0 10px !important; overflow: hidden; background: #fff; }
html.crf-content #faq-accordion > .panel > .panel-heading { background: #fff !important; padding: 0 !important; border: 0 !important; }
html.crf-content #faq-accordion .panel-title { font: 600 16px/1.4 var(--crf-ct-font) !important; }
html.crf-content body #content #faq-accordion .panel-title > a { position: relative; display: block; min-height: 56px; padding: 16px 52px 16px 18px !important; color: var(--crf-ct-ink) !important; font-weight: 600 !important; text-decoration: none !important; }
html.crf-content #faq-accordion .panel-title > a::after { content: "\f107"; font-family: FontAwesome; position: absolute; right: 18px; top: 50%; margin-top: -11px; font-size: 20px; line-height: 22px; color: var(--crf-ct-mute); transition: transform .15s; }
html.crf-content #faq-accordion .panel-title > a[aria-expanded="true"]::after { transform: rotate(180deg); color: var(--crf-ct-ink); }
html.crf-content #faq-accordion .panel-title > a:hover { background: var(--crf-ct-cream); }
html.crf-content #faq-accordion > .panel:has(.panel-collapse.in) { border-color: var(--crf-ct-line-d) !important; box-shadow: var(--crf-ct-shadow) !important; }
html.crf-content #faq-accordion .panel-body { border-top: 0 !important; padding: 0 18px 18px !important; font: 400 15.5px/1.65 var(--crf-ct-font) !important; color: var(--crf-ct-text) !important; background: #fff !important; }

/* ============ 3. Site map: two clean columns ============ */
html.crf-content body.information-sitemap #content:only-child { max-width: 1000px; }
html.crf-content body.information-sitemap #content > .row { display: grid; grid-template-columns: 1fr 1fr; gap: 0 32px; margin: 0; }
html.crf-content body.information-sitemap #content > .row::before, html.crf-content body.information-sitemap #content > .row::after { display: none; }
html.crf-content body.information-sitemap #content > .row > [class*="col-"] { float: none; width: auto; padding: 0; min-width: 0; }
html.crf-content body.information-sitemap #content ul { list-style: none; padding: 0; margin: 0; }
html.crf-content body.information-sitemap #content > .row > div > ul > li { padding: 12px 0; border-bottom: 1px solid var(--crf-ct-line); font: 700 16px/1.4 var(--crf-ct-font); color: var(--crf-ct-ink); }
html.crf-content body.information-sitemap #content .row ul li a:not(.btn) { text-decoration: none !important; }
html.crf-content body.information-sitemap #content .row ul li a:not(.btn):hover { text-decoration: underline !important; text-decoration-color: currentColor !important; }
html.crf-content body.information-sitemap #content > .row > div > ul > li > a { font: 700 16px/1.4 var(--crf-ct-font); color: var(--crf-ct-ink) !important; }
html.crf-content body.information-sitemap #content ul ul { margin: 6px 0 0 2px; padding-left: 14px; border-left: 2px solid var(--crf-ct-line); }
html.crf-content body.information-sitemap #content ul ul li { padding: 3px 0; }
html.crf-content body.information-sitemap #content ul ul a { font: 500 15px/1.5 var(--crf-ct-font); color: var(--crf-ct-text) !important; }

/* ============ 4. Category pages: the "Shop by type" sub-category list as chips; the description in the typed-text look ============ */
html.crf-content body[class*="product-category"] #content > h3:has(+ .row ul) { font: 700 12px/1.2 var(--crf-ct-font) !important; letter-spacing: .08em; text-transform: uppercase; color: var(--crf-ct-mute) !important; margin: 18px 0 10px !important; text-align: left !important; }
html.crf-content body[class*="product-category"] #content > h3 + .row:has(ul) { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 22px; }
html.crf-content body[class*="product-category"] #content > h3 + .row:has(ul)::before, html.crf-content body[class*="product-category"] #content > h3 + .row:has(ul)::after { display: none; }
html.crf-content body[class*="product-category"] #content > h3 + .row:has(ul) > [class*="col-"], html.crf-content body[class*="product-category"] #content > h3 + .row:has(ul) > [class*="col-"] > ul { display: contents; }
html.crf-content body[class*="product-category"] #content > h3 + .row:has(ul) li { list-style: none; display: block; }
html.crf-content body[class*="product-category"] #content > h3 + .row:has(ul) li > a {
  display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px 0 18px; border-radius: 999px; background: #fff; border: 1px solid var(--crf-ct-line-d);
  font: 600 15px/1.2 var(--crf-ct-font); color: var(--crf-ct-ink) !important; text-decoration: none !important; box-shadow: 0 1px 2px rgba(60, 40, 20, .05); }
html.crf-content body[class*="product-category"] #content > h3 + .row:has(ul) li > a::after { content: "\f105"; font-family: FontAwesome; font-size: 16px; color: var(--crf-ct-mute); }
html.crf-content body[class*="product-category"] #content > h3 + .row:has(ul) li > a:hover { border-color: var(--crf-ct-ink); background: var(--crf-ct-tint); }
/* the description row only (the row followed by the stock rule line), never the sort bar or the product tiles */
html.crf-content body[class*="product-category"] #content > h1 + .row:has(+ hr) :is(p, div) { font: 400 16px/1.65 var(--crf-ct-font) !important; color: var(--crf-ct-text) !important; }
html.crf-content body[class*="product-category"] #content > h1 + .row:has(+ hr) strong { font-weight: 600; color: var(--crf-ct-ink); }

/* ============ 5. Product description tab (#tab-description): typed-text look, calm tables ============ */
html.crf-content body[class*="product-product"] #tab-description { font: 400 16px/1.65 var(--crf-ct-font) !important; color: var(--crf-ct-text) !important; }
html.crf-content body[class*="product-product"] #tab-description [style*="font-family"] { font-family: inherit !important; }
html.crf-content body[class*="product-product"] #tab-description :is([style^="color:"], [style*=";color:"], [style*=" color:"], font[color]):not(a) { color: inherit !important; }
html.crf-content body[class*="product-product"] #tab-description [style*="font-size"] { font-size: inherit !important; line-height: inherit !important; }
html.crf-content body[class*="product-product"] #tab-description :is(h1, h2) { font: 700 22px/1.3 'Comfortaa', Arial, sans-serif !important; color: var(--crf-ct-ink) !important; margin: 18px 0 10px !important; }
html.crf-content body[class*="product-product"] #tab-description :is(h3, h4) { font: 700 17px/1.4 var(--crf-ct-font) !important; color: var(--crf-ct-ink) !important; margin: 18px 0 8px !important; }
html.crf-content body[class*="product-product"] #tab-description p { margin: 0 0 12px !important; }
html.crf-content body[class*="product-product"] #tab-description a:not(.btn) { color: var(--crf-ct-link) !important; text-decoration: underline !important; text-decoration-color: var(--crf-ct-link-u) !important; text-underline-offset: 3px; }
html.crf-content body[class*="product-product"] #tab-description table { border-collapse: collapse !important; width: 100% !important; font-size: 15px; border: 1px solid var(--crf-ct-line) !important; }
html.crf-content body[class*="product-product"] #tab-description :is(td, th) { padding: 9px 12px !important; border: 0 !important; border-bottom: 1px solid var(--crf-ct-line) !important; text-align: left; vertical-align: top; }
html.crf-content body[class*="product-product"] #tab-description tr > :first-child { color: var(--crf-ct-ink); font-weight: 600; }
/* the stored bright blue price-table column becomes a soft blue; every other stored cell colour is kept */
html.crf-content body[class*="product-product"] #tab-description :is([style*="background-color:rgb(102, 204, 255)"], [style*="background-color: rgb(102, 204, 255)"], [style*="background-color:#66ccff"], [style*="background-color: #66ccff"]) { background-color: #e3f3fb !important; }

/* ============ 6. Messages (.alert) on the allow-listed pages only ============ */
html.crf-content :is(body[class^="product-product"], body[class*=" product-product"], body[class^="information-"], body[class*=" information-"], body[class^="account-"], body[class*=" account-"], body.common-home, body[class^="product-category"], body[class*=" product-category"], body.product-search, body.product-special) .alert:not(#cart *):not(#oc-pop *):not([style*="background"]):not([style*="color"]) {
  border-radius: 10px !important; border: 1px solid var(--crf-ct-line) !important; background: var(--crf-ct-cream) !important; color: var(--crf-ct-text) !important;
  font: 500 15px/1.5 var(--crf-ct-font) !important; padding: 13px 16px !important; box-shadow: none; text-shadow: none; }
html.crf-content :is(body[class^="product-product"], body[class*=" product-product"], body[class^="information-"], body[class*=" information-"], body[class^="account-"], body[class*=" account-"], body.common-home, body[class^="product-category"], body[class*=" product-category"], body.product-search, body.product-special) .alert:not(#cart *):not(#oc-pop *):not([style*="background"]):not([style*="color"]) > .fa:first-child { margin-right: 6px; color: var(--crf-ct-ink); }
html.crf-content :is(body[class^="product-product"], body[class*=" product-product"], body[class^="information-"], body[class*=" information-"], body[class^="account-"], body[class*=" account-"], body.common-home, body[class^="product-category"], body[class*=" product-category"], body.product-search, body.product-special) .alert-success:not(#cart *):not(#oc-pop *):not([style*="background"]):not([style*="color"]) { background: #fff !important; border-left: 4px solid #15803d !important; }
html.crf-content :is(body[class^="product-product"], body[class*=" product-product"], body[class^="information-"], body[class*=" information-"], body[class^="account-"], body[class*=" account-"], body.common-home, body[class^="product-category"], body[class*=" product-category"], body.product-search, body.product-special) .alert-success:not(#cart *):not(#oc-pop *):not([style*="background"]):not([style*="color"]) > .fa:first-child { color: #15803d; }
/* warnings and errors stay clearly warm (amber, red): a money or benefit message is never quieter than today */
html.crf-content :is(body[class^="product-product"], body[class*=" product-product"], body[class^="information-"], body[class*=" information-"], body[class^="account-"], body[class*=" account-"], body.common-home, body[class^="product-category"], body[class*=" product-category"], body.product-search, body.product-special) .alert-warning:not(#cart *):not(#oc-pop *):not([style*="background"]):not([style*="color"]) { background: #fff4dc !important; border-color: #e9c77f !important; border-left: 4px solid #d97706 !important; color: #5c4210 !important; }
html.crf-content :is(body[class^="product-product"], body[class*=" product-product"], body[class^="information-"], body[class*=" information-"], body[class^="account-"], body[class*=" account-"], body.common-home, body[class^="product-category"], body[class*=" product-category"], body.product-search, body.product-special) .alert-warning:not(#cart *):not(#oc-pop *):not([style*="background"]):not([style*="color"]) > .fa:first-child { color: #a16207; }
html.crf-content :is(body[class^="product-product"], body[class*=" product-product"], body[class^="information-"], body[class*=" information-"], body[class^="account-"], body[class*=" account-"], body.common-home, body[class^="product-category"], body[class*=" product-category"], body.product-search, body.product-special) .alert-danger:not(#cart *):not(#oc-pop *):not([style*="background"]):not([style*="color"]) { background: var(--crf-ct-red-t) !important; border-color: #f2b8b8 !important; border-left: 4px solid var(--crf-ct-red) !important; color: #7f1d1d !important; }
html.crf-content :is(body[class^="product-product"], body[class*=" product-product"], body[class^="information-"], body[class*=" information-"], body[class^="account-"], body[class*=" account-"], body.common-home, body[class^="product-category"], body[class*=" product-category"], body.product-search, body.product-special) .alert-danger:not(#cart *):not(#oc-pop *):not([style*="background"]):not([style*="color"]) > .fa:first-child { color: var(--crf-ct-red); }
html.crf-content :is(body[class^="product-product"], body[class*=" product-product"], body[class^="information-"], body[class*=" information-"], body[class^="account-"], body[class*=" account-"], body.common-home, body[class^="product-category"], body[class*=" product-category"], body.product-search, body.product-special) .alert:not(#cart *):not(#oc-pop *):not([style*="background"]):not([style*="color"]) > .close {
  width: 44px; height: 44px; margin: -12px -12px -12px 4px; padding: 0; opacity: .6; font-size: 24px; line-height: 44px; color: var(--crf-ct-ink); text-shadow: none; }
html.crf-content :is(body[class^="product-product"], body[class*=" product-product"], body[class^="information-"], body[class*=" information-"], body[class^="account-"], body[class*=" account-"], body.common-home, body[class^="product-category"], body[class*=" product-category"], body.product-search, body.product-special) .alert:not(#cart *):not(#oc-pop *):not([style*="background"]):not([style*="color"]) a:not(.btn) {
  color: inherit !important; text-decoration: underline !important; text-underline-offset: 3px; }
/* field errors under form boxes: account pages, contact and the information-route forms only (never the product page) */
html.crf-content :is(body[class^="account-"], body[class*=" account-"], body[class^="information-"], body[class*=" information-"]) #content .form-group .text-danger { color: var(--crf-ct-red) !important; font: 500 14px/1.4 var(--crf-ct-font); margin-top: 6px; }
html.crf-content :is(body[class^="account-"], body[class*=" account-"], body[class^="information-"], body[class*=" information-"]) #content .form-group .text-danger::before { content: "\f06a"; font-family: FontAwesome; margin-right: 6px; }
html.crf-content :is(body[class^="account-"], body[class*=" account-"], body[class^="information-"], body[class*=" information-"]) #content .form-group.has-error .form-control { border-color: var(--crf-ct-red-l) !important; }

/* ============ 7. Guest wish-list popup (content.js builds it; nothing here shows without it) ============ */
html.crf-content .crf-ct-wl { position: fixed; z-index: 100000; top: 0; right: 0; bottom: 0; left: 0; background: rgba(37, 37, 37, .22); }
html.crf-content .crf-ct-wlc { position: absolute; top: 140px; right: 24px; width: 380px; max-width: calc(100vw - 24px); box-sizing: border-box; display: flex; gap: 12px; align-items: flex-start;
  padding: 14px 8px 14px 16px; background: #fff; border-left: 4px solid var(--crf-ct-pink); border-radius: 12px; box-shadow: 0 10px 30px rgba(60, 40, 20, .22);
  font: 500 14px/1.45 var(--crf-ct-font); color: var(--crf-ct-text); text-align: left; outline: 0; }
html.crf-content .crf-ct-wlc > .fa { font-size: 20px; color: var(--crf-ct-pink); margin-top: 2px; flex: 0 0 auto; }
html.crf-content .crf-ct-wlb { flex: 1 1 auto; min-width: 0; }
html.crf-content .crf-ct-wlb b { display: block; font: 600 15px/1.35 var(--crf-ct-font); color: var(--crf-ct-ink); margin: 2px 0 0; }
html.crf-content .crf-ct-wlb p { display: flex; gap: 8px; flex-wrap: wrap; margin: 10px 0 0; }
html.crf-content .crf-ct-wlb p a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 16px; border-radius: 10px; font: 600 14px var(--crf-ct-font); text-decoration: none !important; }
html.crf-content .crf-ct-wlb p a.crf-ct-b1 { background: var(--crf-ct-ink); color: #fff !important; }
html.crf-content .crf-ct-wlb p a.crf-ct-b2 { background: #fff; color: var(--crf-ct-text) !important; box-shadow: inset 0 0 0 1px var(--crf-ct-line-d); }
html.crf-content .crf-ct-wlb p a:focus-visible, html.crf-content .crf-ct-x:focus-visible { outline: 2px solid var(--crf-ct-ink); outline-offset: 2px; }
html.crf-content .crf-ct-x { flex: 0 0 44px; width: 44px; height: 44px; margin: -10px 0 0 auto; padding: 0; border: 0; background: transparent; font-size: 24px; line-height: 44px; color: var(--crf-ct-mute); cursor: pointer; }

/* ============ 8. Footer: cream (beats fonts_neon.css footer colours by specificity, V87) ============ */
html.crf-content body footer { background: var(--crf-ct-cream) !important; border-top: 1px solid var(--crf-ct-line); padding: 40px 0 26px !important; margin-top: 40px; text-align: left !important; }
html.crf-content body footer > .container > .row { display: grid; grid-template-columns: 1fr 1fr 1.25fr 1.35fr; gap: 28px; margin: 0; }
html.crf-content body footer > .container > .row::before, html.crf-content body footer > .container > .row::after { display: none; }
html.crf-content body footer > .container > .row > [class*="col-"] { float: none; width: auto; padding: 0; min-width: 0; }
html.crf-content body footer h5 { font: 700 12px/1.2 var(--crf-ct-font) !important; letter-spacing: .09em; text-transform: uppercase !important; color: var(--crf-ct-mute) !important; margin: 0 0 12px !important;
  padding: 0 !important; border: 0 !important; float: none !important; text-align: left !important; }
html.crf-content body footer h5::after, html.crf-content body footer h5::before { display: none !important; }
html.crf-content body footer ul.list-unstyled { margin: 0; padding: 0; }
html.crf-content body footer ul.list-unstyled > li { margin: 0; }
html.crf-content body footer ul.list-unstyled > li > a, html.crf-content body footer .footer-contact li { display: inline-flex; align-items: center; min-height: 32px; font: 500 15px/1.4 var(--crf-ct-font) !important; color: var(--crf-ct-text) !important; text-decoration: none; }
html.crf-content body footer ul.list-unstyled > li > a:hover { color: var(--crf-ct-ink) !important; text-decoration: underline; text-underline-offset: 3px; }
/* "For business" caption over Wholesale (or over Trade when Wholesale is not in the list) */
html.crf-content body footer ul.list-unstyled:not(.footer-contact) > li:has(> a[href$="/Wholesale"])::before,
html.crf-content body footer ul.list-unstyled:not(.footer-contact) > li:not(:has(> a[href$="/Wholesale"])) + li:has(> a[href$="/Trade"])::before {
  content: "For business"; display: block; font: 700 12px/1.2 var(--crf-ct-font); letter-spacing: .09em; text-transform: uppercase; color: var(--crf-ct-mute); margin: 16px 0 6px; }
html.crf-content body footer .footer-contact li { display: block; position: relative; padding: 5px 0 5px 26px; min-height: 0; }
html.crf-content body footer .footer-contact li span { margin-left: 0 !important; color: var(--crf-ct-text) !important; }
html.crf-content body footer .footer-contact li a { display: inline-flex; align-items: center; min-height: 32px; margin: -6px 0; color: var(--crf-ct-text) !important; }
html.crf-content body footer .footer-contact .fa { position: absolute; left: 0; top: 9px; width: 16px; text-align: center; color: var(--crf-ct-ink) !important; margin: 0 !important; }
html.crf-content body footer .social-icons { text-align: left !important; }
html.crf-content body footer .payment-methods { margin-top: 0 !important; justify-content: flex-start !important; }
html.crf-content body footer .payment-methods::before { content: "We accept"; flex: 0 0 100%; display: block; font: 700 12px/1.2 var(--crf-ct-font); letter-spacing: .09em; text-transform: uppercase; color: var(--crf-ct-mute); margin: 0 0 6px; }
/* the copyright line sits after the footer, not in it */
html.crf-content body .copyright { background: var(--crf-ct-tint) !important; border-top: 1px solid var(--crf-ct-line); color: var(--crf-ct-mute) !important; font: 500 13px/1.4 var(--crf-ct-font) !important; padding: 14px 0 !important; text-align: left !important; }
html.crf-content body .copyright .container { color: var(--crf-ct-mute) !important; }

/* ============ Phones ============ */
@media (max-width: 767px) {
  html.crf-content body:is(.information-information, .information-sitemap) #content { padding: 18px 16px 22px; margin-bottom: 28px; border-radius: 12px; font-size: 15.5px !important; }
  html.crf-content body.information-information #content h2 { font-size: 19px !important; }
  html.crf-content body.information-information #content h3 { font-size: 17px !important; }
  html.crf-content body.information-information #content :is([style*="font-size:36px"], [style*="font-size: 36px"], [style*="font-size:28px"], [style*="font-size: 28px"], [style*="font-size:26px"], [style*="font-size: 26px"]) { font-size: 20px !important; }
  html.crf-content body.information-sitemap #content > .row { grid-template-columns: 1fr; }
  html.crf-content body.information-sitemap #content ul ul li { padding: 0; }
  html.crf-content body.information-sitemap #content ul ul a { display: flex; align-items: center; min-height: 40px; }
  html.crf-content #faq-accordion .panel-title { font-size: 15.5px !important; }
  html.crf-content body #content #faq-accordion .panel-title > a { padding: 14px 44px 14px 14px !important; }
  html.crf-content #faq-accordion .panel-title > a::after { right: 14px; }
  html.crf-content #faq-accordion .panel-body { padding: 0 14px 16px !important; }
  html.crf-content body[class*="product-category"] #content > h3 + .row:has(ul) { flex-wrap: nowrap; overflow-x: auto; margin: 0 -15px 18px; padding: 0 15px 4px; scrollbar-width: none; }
  html.crf-content body[class*="product-category"] #content > h3 + .row:has(ul) li > a { white-space: nowrap; }
  html.crf-content body[class*="product-product"] #tab-description table:has(td:nth-child(4)) { display: block; overflow-x: auto; font-size: 14px; }
  html.crf-content body[class*="product-product"] #tab-description :is(td, th) { padding: 7px 8px !important; }
  html.crf-content body footer { padding: 28px 0 18px !important; }
  html.crf-content body footer > .container > .row { grid-template-columns: 1fr 1fr; gap: 22px 16px; }
  html.crf-content body footer > .container > .row > :is(:has(> .footer-contact), .social-icons) { grid-column: 1 / -1; }
  html.crf-content body footer ul.list-unstyled:not(.footer-contact) > li > a { min-height: 44px; }
  html.crf-content body footer h5 { margin-bottom: 4px !important; }
  html.crf-content body .copyright { text-align: center !important; }
  html.crf-content .crf-ct-wlc { top: auto; bottom: calc(76px + env(safe-area-inset-bottom, 0px)); left: 12px; right: 12px; width: auto; max-width: none; }
}
