/* ==========================================================================
   MAUVIEL SOUTH AFRICA — BRAND ENFORCEMENT LAYER
   Loaded last. It designs nothing. It only stops anything off-guide from
   reaching the page: Divi demo layouts ship pill buttons, 30px card corners,
   drop shadows, Figtree, Cabin and a purple accent; the WooCommerce plugins
   ship an orange sale badge. The catalogue has none of these.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. GEOMETRY — no rounded corner, no drop shadow, anywhere.
   -------------------------------------------------------------------------- */
.et_pb_section,.et_pb_row,.et_pb_column,.et_pb_module,
.et_pb_blurb,.et_pb_text,.et_pb_image .et_pb_image_wrap,.et_pb_image img,
.et_pb_button,.et_pb_tabs,.et_pb_toggle,.et_pb_cta,.et_pb_promo,
.et_pb_shop .et_shop_image>img,.et_pb_shop .et_shop_image .et_overlay,
.et_pb_shop img,.et_pb_wc_images img,.et_pb_wc_related_products img,
.et_pb_icon_wrap,.et_pb_testimonial_portrait,.et_pb_testimonial_portrait:before,
.et_pb_menu .nav li ul,.et_pb_menu__wrap,.et_mobile_menu,
.et_pb_slider,.et_pb_slide,.et_pb_gallery_item,
.woocommerce ul.products li.product,.woocommerce ul.products li.product img,
.dwe_single_woo_product,.dwe_single_woo_product img,
.mv-card,.mv-card img,.mv-tile,.mv-tile img
{border-radius:0!important;box-shadow:none!important}

/* Divi writes shadow presets as their own declaration blocks */
.et_pb_button,.et_pb_column,.et_pb_row,.et_pb_module,.et_box_shadow_preset1,
.et_box_shadow_preset2,.et_box_shadow_preset3,.et_box_shadow_preset4,
.et_box_shadow_preset5,.et_box_shadow_preset6,.et_box_shadow_preset7
{box-shadow:none!important}
#main-header,.et-fixed-header#main-header,.et-l--header .et_pb_row
{box-shadow:none!important}

/* --------------------------------------------------------------------------
   2. TYPE — two faces. Jost for everything, Barlow Semi Condensed for data.
   Pseudo-elements are left alone: Divi declares its icon fonts on those and
   an element rule must never reach them.
   -------------------------------------------------------------------------- */
.et_pb_module p,.et_pb_module li,.et_pb_module td,.et_pb_module th,
.et_pb_module label,.et_pb_module a,.et_pb_module blockquote,
.et_pb_text,.et_pb_blurb .et_pb_blurb_description,
.et_pb_button,.et_pb_menu .nav li a,.et_mobile_menu li a,
.woocommerce ul.products li.product h3,
.woocommerce ul.products li.product .price,
.et-l--footer p,.et-l--footer a,.et-l--footer li
{font-family:var(--mv-font-body)!important}

.et_pb_module h1,.et_pb_module h2,.et_pb_module h3,.et_pb_module h4,
.et_pb_module h5,.et_pb_module h6,.et_pb_blurb .et_pb_module_header,
.et-l h1,.et-l h2,.et-l h3,.et-l h4,.et-l h5,.et-l h6,
#main-header h1,#main-header h2
{font-family:var(--mv-font-display)!important;font-weight:400!important}

/* --------------------------------------------------------------------------
   3. COLOUR — the only chromatic UI colour is brass.
   -------------------------------------------------------------------------- */
.et_pb_shop .star-rating>span:before,.et_pb_shop .et_overlay:before,
.et_pb_shop .et_overlay,.star-rating>span:before,.star-rating:before,
.et_pb_icon_wrap .et-pb-icon,.et_pb_blurb .et-pb-icon
{color:var(--mv-brass)!important}

.et_pb_shop span.onsale,.woocommerce ul.products li.product .onsale,
.woocommerce span.onsale,.dwe-onsale
{background:var(--mv-ink)!important;color:#fff!important}



/* platform blues and pinks are not in the guide */
.et_pb_social_media_follow_network a.icon
{background-color:var(--mv-ink)!important}
.et_pb_social_media_follow_network a.icon:hover
{background-color:var(--mv-brass)!important}

/* Divi's demo purple and the old copper-brown, wherever they survive */
[style*="#8300e9"],[style*="#96694c"]{color:var(--mv-brass)!important}

/* --------------------------------------------------------------------------
   4. BUTTONS — hairline, square, uppercase. One primary: filled ink.
   -------------------------------------------------------------------------- */
.et_pb_button,
body #page-container .et_pb_section .et_pb_button,
body.et-db #page-container #et-boc .et-l .et_pb_section .et_pb_button
{border-radius:0!important;border:1px solid var(--mv-ink)!important;
 background-color:transparent!important;background-image:none!important;
 color:var(--mv-ink)!important;
 font-family:var(--mv-font-display)!important;font-weight:500!important;
 text-transform:uppercase;letter-spacing:var(--mv-track-caps-tight);
 font-size:.8125rem!important;line-height:1.2!important;
 padding:.85em 1.9em!important;transition:background-color .25s,color .25s}
.et_pb_button:hover,
body #page-container .et_pb_section .et_pb_button:hover,
body.et-db #page-container #et-boc .et-l .et_pb_section .et_pb_button:hover
{background-color:var(--mv-ink)!important;color:#fff!important;
 border-color:var(--mv-ink)!important;box-shadow:none!important}

.woocommerce button.button.alt,.woocommerce a.button.alt,
.woocommerce input.button.alt,.single_add_to_cart_button,
.woocommerce .checkout-button,.woocommerce #place_order
{background-color:var(--mv-ink)!important;color:#fff!important;
 border:1px solid var(--mv-ink)!important;border-radius:0!important;
 font-family:var(--mv-font-display)!important;text-transform:uppercase;
 letter-spacing:var(--mv-track-caps-tight);font-weight:500!important;
 font-size:.8125rem!important;padding:1em 2em!important;box-shadow:none!important}
.woocommerce button.button.alt:hover,.woocommerce a.button.alt:hover,
.single_add_to_cart_button:hover,.woocommerce .checkout-button:hover,
.woocommerce #place_order:hover
{background-color:var(--mv-brass)!important;border-color:var(--mv-brass)!important;
 color:#fff!important}

/* --------------------------------------------------------------------------
   5. FORM FIELDS — hairline under, not a grey pill.
   -------------------------------------------------------------------------- */
.woocommerce input.input-text,.woocommerce textarea,.woocommerce select,
.woocommerce .quantity input.qty,.et_pb_contact_form_container input,
.et_pb_contact_form_container textarea
{border-radius:0!important;background-color:#fff!important;
 border:1px solid var(--mv-ink-25)!important;color:var(--mv-ink)!important;
 font-family:var(--mv-font-body)!important;box-shadow:none!important}
.woocommerce input.input-text:focus,.woocommerce select:focus,
.woocommerce textarea:focus{outline:2px solid var(--mv-brass);outline-offset:1px}

/* --------------------------------------------------------------------------
   6. LEGIBILITY BACKSTOP — nothing lighter than 4.5:1 on white.
   -------------------------------------------------------------------------- */
.et_pb_module,.et_pb_text,.et_pb_blurb,.et-l--footer{color:var(--mv-ink)}
.et_pb_module p,.et_pb_text p,.et-l--footer p,.et-l--footer li{color:var(--mv-ink)}
.woocommerce .woocommerce-breadcrumb,.woocommerce .woocommerce-breadcrumb a
{color:var(--mv-ink-55)!important;font-family:var(--mv-font-data);
 font-size:.75rem;letter-spacing:var(--mv-track-data);text-transform:uppercase}
.woocommerce .woocommerce-breadcrumb a:hover{color:var(--mv-ink)!important}

/* --------------------------------------------------------------------------
   7. RESIDUE — values the sweep cannot reach because Divi hard-codes them.
   -------------------------------------------------------------------------- */
.et_pb_tabs_controls li,.et_pb_tabs_controls,.et_pb_all_tabs,.et_pb_tab
{border-color:var(--mv-ink-25)!important;background-color:transparent!important}
.et_pb_tabs_controls li.et_pb_tab_active{border-bottom:2px solid var(--mv-brass)!important}
.et_pb_tabs{border:0!important;border-bottom:1px solid var(--mv-ink-25)!important}
/* Divi still writes pill radii on buttons in a few demo layouts */
body #page-container .et_pb_section .et_pb_button,
body.et-db #page-container #et-boc .et-l .et_pb_section .et_pb_button,
.et_pb_wc_add_to_cart input,.et_pb_wc_add_to_cart .quantity input.qty,
.et_pb_wc_cart_notice .wc-forward,.et_pb_wc_cart_products table.cart button
{border-radius:0!important}

/* --------------------------------------------------------------------------
   8. MEASURE — the shop was capped at 1440px with 5.5% padding, which gave
   away 240px of rail per side on a 1920 screen. One place, set here last.
   -------------------------------------------------------------------------- */
.mv-shop,.mv-cat,.mv-page,.mv-results,.mv-hero__inner,.mv-band__inner,.mv-rail__head,
.woocommerce div.product,.woocommerce-products-header,.woocommerce .woocommerce-breadcrumb,
.mv-pagehead,.mv-backto,.mv-seen,.mv-stickybuy__in
{max-width:var(--mv-m)!important;margin-left:auto!important;margin-right:auto!important;
 padding-left:var(--mv-p)!important;padding-right:var(--mv-p)!important;box-sizing:border-box}
.mv-page{max-width:var(--mv-m-text)!important}
@media (max-width:900px){
 .mv-shop,.mv-cat,.mv-page,.mv-results,.mv-hero__inner,.mv-band__inner,
 .woocommerce div.product,.mv-pagehead,.mv-backto,.mv-seen,.mv-stickybuy__in
 {padding-left:4%!important;padding-right:4%!important}
}

/* --------------------------------------------------------------------------
   9. LEGIBILITY — Stefan's rule outranks the France guide.
   Brass #AB9974 measures 2.79:1 on white. It is a metal, not a text colour.
   On a light ground text uses --mv-brass-text #7F6B45 at 5.13:1; the metal
   is kept for rules, icons and anything reversed out of ink.
   -------------------------------------------------------------------------- */
.et_pb_menu .nav li.current-menu-item>a,.et_pb_menu .nav li a:hover,
.et_pb_text h4 a,.et_pb_text a,.et_pb_module a:not(.et_pb_button)
{color:var(--mv-brass-text)!important}
/* reversed out of ink, the metal is correct and legible */
.et-l--footer .et_pb_menu .nav li.current-menu-item>a,
.et-l--footer a:hover,#et-footer-nav .bottom-nav li.current-menu-item a,
#main-footer a:hover,.mvh--b .mvh__shop a:hover
{color:var(--mv-brass)!important}
/* product tabs were #939598 at 3.00:1 */
.woocommerce div.product .woocommerce-tabs ul.tabs li a,
.et_pb_tabs .et_pb_tabs_controls li a
{color:var(--mv-ink-55)!important;font-weight:500!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.et_pb_tabs .et_pb_tabs_controls li.et_pb_tab_active a
{color:var(--mv-ink)!important}
/* nothing lighter than ink-55 anywhere text is set */
/* Divi-corrective colour. It must not reach anything we render ourselves,
   which is why every selector is scoped away from .mvhome and .mvh. */
.et_pb_module,.et_pb_text,.et_pb_text p,.et_pb_blurb,.et_pb_blurb p,
.woocommerce-product-details__short-description,
.entry-content:not(.mvhome) p:not([class*="mvhome"]):not([class*="mvh__"]),
.entry-content li:not([class*="mvhome"])
{color:var(--mv-ink)}
.mvhome p,.mvhome li,.mvhome span,.mvh p,.mvh span{color:inherit}
[style*="color:#939598"],[style*="color: #939598"],
[style*="color:#999"],[style*="color: #999"],
[style*="color:#aaa"],[style*="color:#bbb"],[style*="color:#ccc"]
{color:var(--mv-ink-55)!important}
/* Jost 300 is too thin on a screen at body size */
.et_pb_text,.et_pb_text p,.entry-content p,.mv-body,.mv-note,
.woocommerce div.product,.et_pb_wc_description
{font-weight:400}
/* small type carries a little more weight so it stays readable */
.mv-card__sizes,.mv-card__eyebrow,.mv-facet__n,.mv-chip,.mv-opt__n,
.woocommerce .woocommerce-breadcrumb,.woocommerce-result-count
{font-weight:500}

/* --------------------------------------------------------------------------
   10. SPECIFICITY ARMOUR. Divi writes per-module selectors like
   .et_pb_menu_0_tb_header.et_pb_menu ul li.current-menu-item a  (0,3,3),
   which outranks a sensible rule. These match it and go one class higher.
   -------------------------------------------------------------------------- */
body [class*="et_pb_menu"].et_pb_menu ul li.current-menu-item>a,
body [class*="et_pb_menu"].et_pb_menu ul li.current-menu-ancestor>a,
body [class*="et_pb_menu"].et_pb_menu ul li a:hover
{color:var(--mv-brass-text)!important}
body .et-l--footer [class*="et_pb_menu"].et_pb_menu ul li.current-menu-item>a,
body #et-footer-nav .bottom-nav li.current-menu-item a
{color:var(--mv-brass)!important}

body [class*="et_pb_tabs"].et_pb_tabs .et_pb_tabs_controls li a,
body [class*="et_pb_wc_tabs"] .et_pb_tabs_controls li a
{color:var(--mv-ink-55)!important;font-weight:500!important}
body [class*="et_pb_tabs"].et_pb_tabs .et_pb_tabs_controls li.et_pb_tab_active a
{color:var(--mv-ink)!important}

/* brass headings on white measure 2.79:1 - use the text brass */
body [class*="et_pb_text"].et_pb_text h1,body [class*="et_pb_text"].et_pb_text h2,
body [class*="et_pb_text"].et_pb_text h3,body [class*="et_pb_text"].et_pb_text h4,
body [class*="et_pb_text"].et_pb_text h5,body [class*="et_pb_text"].et_pb_text h6,
body [class*="et_pb_blurb"].et_pb_blurb .et_pb_module_header
{color:var(--mv-ink)!important}
body .et-l--footer [class*="et_pb_text"].et_pb_text h1,
body .et-l--footer [class*="et_pb_text"].et_pb_text h2,
body .et-l--footer [class*="et_pb_text"].et_pb_text h3,
body .et-l--footer [class*="et_pb_text"].et_pb_text h4
{color:#FFFFFF!important}

/* icons and stars are decoration, but the metal still reads weak on white */
body [class*="et_pb_icon"] .et_pb_icon_wrap .et-pb-icon,
body .star-rating>span:before,body .star-rating:before
{color:var(--mv-brass-text)!important}
body .et-l--footer [class*="et_pb_icon"] .et_pb_icon_wrap .et-pb-icon
{color:var(--mv-brass)!important}

/* --------------------------------------------------------------------------
   11. LINKS. Divi's base stylesheet sets a{color:#2EA3F2} — its stock blue —
   so any link we have not styled turns up in it. Copper is the brand's answer.
   -------------------------------------------------------------------------- */
a{color:var(--mv-copper-text)}
a:hover{color:var(--mv-ink)}
/* structural links carry their own colour and must not inherit copper */
.mvh a:not([class]),.mvhome a:not([class]),.mv-card__link,.mv-card__link *,.mv-btn,
.mv-seen a:not([class]),.mv-404__cats a:not([class]),.et-l--footer a:not([class]),
.mv-chip,.mv-opt,.mv-facet a:not([class]),.mv-totop,
.woocommerce ul.products li.product a:not([class]),
.mv-stickybuy a:not([class]),.mv-backto a:not([class]),
.mvhome__hobs a:not([class]),.mvhome__tiles a:not([class]),
.mvhome__editlist a:not([class]),.mvhome__guidelist a:not([class])
{color:inherit}
.woocommerce div.product span.price,.entry-summary p.price ins{color:var(--mv-ink)!important}

/* the ink bands on the home page carry their own light type */
.mvhome .mvhome__band-body,.mvhome .mvhome__band .mvhome__eyebrow,
.mvhome .mvhome__close .mvhome__band-body,.mvhome__hero .mvhome__lead
{color:#DFDBD4!important}
.mvhome .mvhome__eyebrow--light{color:var(--mv-brass)!important}
.mvhome .mvhome__h2--light,.mvhome .mvhome__h1{color:#fff!important}
.mvhome .mvhome__fact-n{color:#fff!important}
.mvhome .mvhome__fact-l{color:#A9A298!important}


/* --------------------------------------------------------------------------
   The sticky buy bar CTA is ink on ink without this. A bare-element rule at
   (0,1,1) - .mv-stickybuy a {color:inherit} - was beating the button's own
   (0,1,0) colour, so the label rendered dark on a dark button and the only
   call to action on a long product page was invisible. Third instance of the
   same defect today: an element rule outranking a component class.
   -------------------------------------------------------------------------- */
.mv-stickybuy .mv-stickybuy__cta{color:#fff!important;background:var(--mv-ink)}
.mv-stickybuy .mv-stickybuy__cta:hover,
.mv-stickybuy .mv-stickybuy__cta:focus{color:#fff!important;background:var(--mv-copper-band,#A9866A)}

/* Divi ships its own back-to-top. We have one. Two arrows stacked in the
   corner is not a design. */
#et_pb_scroll_top{display:none!important}
