/* Wick & Ember Candle Co theme base tokens (generated by mfo/build/build_theme.py). */
:root {
    --mfo-brand:    #201c19;
    --mfo-on-brand: #faf6f0;
    --mfo-secondary: #f3ead9;
    --mfo-accent:   #b08652;
    --mfo-on-accent: #ffffff;
    --mfo-btn:       #201c19;
    --mfo-btn-hover: #b08652;
    --mfo-on-btn:    #faf6f0;
    --mfo-nav-bg:    #faf6f0;
    --mfo-nav-ink:   #201c19;
    --mfo-nav-hover: #b08652;
    --mfo-nav-hover-ink: var(--mfo-nav-hover);
    --mfo-utility-ink: #faf6f0;
    --mfo-brand-ink:   #faf6f0;
    --mfo-bg:       #faf6f0;
    --mfo-surface:  #ffffff;
    --mfo-card:     #ffffff;
    --mfo-border:   #e3d9c8;
    --mfo-ink:      #201c19;
    --mfo-body:     #3d3733;
    --mfo-muted:    #7a6f66;
    --mfo-savings:  #5f8a4a;
    --mfo-hairline: #ece4d6;
    --mfo-radius:    4px;
    --mfo-radius-sm: 2.4px;
    --mfo-radius-lg: 6.4px;
    --mfo-shadow:    0 2px 14px rgba(40, 30, 20, 0.08);
    --mfo-font-heading: 'Playfair Display', Georgia, serif;
    --mfo-font-body:    'Nunito Sans', system-ui, -apple-system, sans-serif;
    --mfo-density:   1;
}

/* Brand type carries store-wide (stock Cornerstone areas included). */
body { font-family: var(--mfo-font-body); }

/* ── Containment reset ─────────────────────────────────────────
   Neutralizes Cornerstone's base styles (link underlines, list
   bullets, heading margins) inside MFO blocks ONLY. Stock areas
   (PDP internals, cart, account) keep Cornerstone's own styling. */
:is(.mfo-utility, .mfo-header, .mfo-navbar, .mfo-nav-master-panel, .mfo-announce, .mfo-hero,
    .mfo-section, .mfo-home, .mfo-footer, .mfo-news, .mfo-cathead, .mfo-toolbar,
    .mfo-404, .mfo-shipbar, .mfo-drawer, .mfo-cartpage, .mfo-plp) a {
    color: inherit;
    text-decoration: none;
}
:is(.mfo-utility, .mfo-header, .mfo-navbar, .mfo-nav-master-panel, .mfo-announce, .mfo-hero,
    .mfo-section, .mfo-home, .mfo-footer, .mfo-news, .mfo-cathead, .mfo-toolbar,
    .mfo-404, .mfo-shipbar, .mfo-drawer, .mfo-cartpage, .mfo-plp) :is(ul, ol) {
    margin: 0;
    padding: 0;
    list-style: none;
}
/* MF1 widget headings carry their own color logic (Design-tab settings with
   token fallbacks); excluding them here keeps this chrome rule from
   out-specifying the widgets' single-class heading rules. */
:is(.mfo-utility, .mfo-header, .mfo-navbar, .mfo-nav-master-panel, .mfo-announce, .mfo-hero,
    .mfo-section, .mfo-home, .mfo-footer, .mfo-news, .mfo-cathead, .mfo-toolbar,
    .mfo-404, .mfo-shipbar, .mfo-drawer, .mfo-cartpage, .mfo-plp) :is(h1, h2, h3, h4):not([class*="mf1-"]) {
    font-family: var(--mfo-font-heading);
    color: var(--mfo-ink);
    line-height: 1.15;
    margin: 0;
}
:is(.mfo-utility, .mfo-header, .mfo-navbar, .mfo-nav-master-panel, .mfo-announce, .mfo-hero,
    .mfo-section, .mfo-home, .mfo-footer, .mfo-news, .mfo-cathead, .mfo-toolbar,
    .mfo-404, .mfo-shipbar, .mfo-drawer, .mfo-cartpage, .mfo-plp) p {
    margin: 0;
}
:is(.mfo-utility, .mfo-header, .mfo-navbar, .mfo-nav-master-panel, .mfo-announce, .mfo-hero,
    .mfo-section, .mfo-home, .mfo-footer, .mfo-news, .mfo-cathead, .mfo-toolbar,
    .mfo-404, .mfo-shipbar, .mfo-drawer, .mfo-cartpage, .mfo-plp) :is(img, svg) {
    display: block;
    max-width: 100%;
}
:is(.mfo-utility, .mfo-header, .mfo-navbar, .mfo-nav-master-panel, .mfo-announce, .mfo-hero,
    .mfo-section, .mfo-home, .mfo-footer, .mfo-news, .mfo-cathead, .mfo-toolbar,
    .mfo-404, .mfo-shipbar, .mfo-drawer, .mfo-cartpage, .mfo-plp) button {
    font: inherit;
    cursor: pointer;
}

/* Text inputs inside MFO forms (newsletter, footer, 404 search) */
:is(.mfo-news-form, .mfo-footer-news, .mfo-404-search) input {
    font: inherit;
    color: var(--mfo-ink);
    background: var(--mfo-surface);
    border: 1px solid var(--mfo-border);
    border-radius: var(--mfo-radius-sm);
    padding: 12px 14px;
    min-width: 0;
}
:is(.mfo-news-form, .mfo-footer-news, .mfo-404-search) input::placeholder { color: var(--mfo-muted); }
:is(.mfo-news-form, .mfo-footer-news, .mfo-404-search) input:focus {
    outline: none;
    border-color: var(--mfo-brand);
}
