/* Generated skin.css — skin "b" (Wellness Minimal).

 * Produced by AstroGeneratorService.emitSkin — do not edit by hand.

 * All rules scoped under a DOUBLED class (html.rose-wellness.rose-wellness) so they win over the

 * later-loaded theme.css bundle regardless of <link> order. */

/* vietnamese */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/6NU78FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0KxCBTeO-U.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/6NU78FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0KxCFTeO-U.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/6NU78FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0KxC9TeA.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/6NU78FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0KxCBTeO-U.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/6NU78FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0KxCFTeO-U.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/6NU78FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0KxC9TeA.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/6NU78FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0KxCBTeO-U.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/6NU78FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0KxCFTeO-U.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/6NU78FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0KxC9TeA.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* vietnamese */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/fonts/6NU78FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0KxCBTeO-U.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/fonts/6NU78FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0KxCFTeO-U.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/fonts/6NU78FyLNQOQZAnv9bYEvDiIdE9Ea92uemAk_WBq8U_9v0c2Wa0KxC9TeA.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0gotcqA.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk2wotcqA.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0AotcqA.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0QotcqA.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk3wot.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0gotcqA.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk2wotcqA.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0AotcqA.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0QotcqA.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk3wot.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0gotcqA.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk2wotcqA.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0AotcqA.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0QotcqA.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk3wot.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0gotcqA.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk2wotcqA.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0AotcqA.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0QotcqA.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk3wot.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0gotcqA.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk2wotcqA.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0AotcqA.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk0QotcqA.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(/fonts/1Ptvg83HX_SGhgqk3wot.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

html.rose-wellness.rose-wellness {
  --font-heading: "Sora", system-ui, -apple-system, sans-serif;
  --font-body: "Nunito Sans", system-ui, -apple-system, sans-serif;
  --heading-weight: 700;
  --radius-card: 22px;
  --radius-btn: 999px;
  --card-shadow: none;
  --color-primary: #E08A76;
  --color-primary-dark: #CE6E58;
  --color-bg: #FBF6F2;
  --color-bg-surface: #FFFFFF;
  --color-bg-card: #F5EBE4;
  --color-text: #3A2B25;
  --color-text-muted: #706055;
  --color-border: #EDE0D7;
  --color-link: #CE6E58;
  --color-link-hover: #B85742;
  --nav-icon-color: #3A2B25;
}

html.rose-wellness.rose-wellness body { font-family: var(--font-body); }
html.rose-wellness.rose-wellness h1, html.rose-wellness.rose-wellness h2, html.rose-wellness.rose-wellness h3, html.rose-wellness.rose-wellness h4, html.rose-wellness.rose-wellness h5, html.rose-wellness.rose-wellness h6, html.rose-wellness.rose-wellness .hero__title, html.rose-wellness.rose-wellness .product-card__name, html.rose-wellness.rose-wellness .article-card__title, html.rose-wellness.rose-wellness .cta-card__heading, html.rose-wellness.rose-wellness .article-cards__header, html.rose-wellness.rose-wellness .product-cards__header, html.rose-wellness.rose-wellness .faq-section__header, html.rose-wellness.rose-wellness .site-header__brand-text, html.rose-wellness.rose-wellness .expert-card__name, html.rose-wellness.rose-wellness .authors-index__title, html.rose-wellness.rose-wellness .author-articles__card-title { font-family: var(--font-heading); font-weight: var(--heading-weight); }
html.rose-wellness.rose-wellness .product-card, html.rose-wellness.rose-wellness .faq-item, html.rose-wellness.rose-wellness .info-box, html.rose-wellness.rose-wellness .cta-card, html.rose-wellness.rose-wellness .expert-card, html.rose-wellness.rose-wellness .expert-opinion, html.rose-wellness.rose-wellness .author-articles__card { border-radius: var(--radius-card); }
html.rose-wellness.rose-wellness .product-card { box-shadow: var(--card-shadow); }
html.rose-wellness.rose-wellness .hero__btn, html.rose-wellness.rose-wellness .cta-button, html.rose-wellness.rose-wellness .product-card__cta { border-radius: var(--radius-btn); }
html.rose-wellness.rose-wellness .info-box--warning { background-color: var(--infobox-warning-bg, #FFFBEB); }
html.rose-wellness.rose-wellness .info-box--success { background-color: var(--infobox-success-bg, #F0FDF4); }

/* ============================================================================
 * Skin B · "Wellness Minimal" — COMPONENT LAYER  (Skin Engine, Phase 1)
 * ----------------------------------------------------------------------------
 * Distinctive geometry only. Fonts + coral-clay palette + card/button radius
 * (22px card, 999px pill buttons) come from the generated skin.css tokens
 * (deploy/skins/catalog.ts) via skin-base.css. Scoped under html.rose-wellness.rose-wellness.
 * Mockup [data-reveal] reveal dropped (Phase 2+).
 * ==========================================================================*/

/* Heading finish (weight from --heading-weight token = 700) */
html.rose-wellness.rose-wellness h1, html.rose-wellness.rose-wellness h2, html.rose-wellness.rose-wellness h3, html.rose-wellness.rose-wellness h4,
html.rose-wellness.rose-wellness .hero__title, html.rose-wellness.rose-wellness .product-card__name,
html.rose-wellness.rose-wellness .article-card__title, html.rose-wellness.rose-wellness .cta-card__heading,
html.rose-wellness.rose-wellness .article-cards__header, html.rose-wellness.rose-wellness .product-cards__header,
html.rose-wellness.rose-wellness .faq-section__header { letter-spacing: -.02em; }

/* Soft rounded, low-contrast, breathing */
html.rose-wellness.rose-wellness .product-card, html.rose-wellness.rose-wellness .faq-item { border-color: var(--color-border); }
html.rose-wellness.rose-wellness .cta-card {
  border-radius: 28px;
  box-shadow: 0 14px 40px -18px rgba(196, 110, 94, .42);
  border-color: transparent;
}
html.rose-wellness.rose-wellness .product-card__badge { border-radius: 999px; }
html.rose-wellness.rose-wellness .product-card__image { background: linear-gradient(135deg, #F7E7DE 0%, #F1D9CE 100%); color: #B88C7B; }
html.rose-wellness.rose-wellness .product-card:hover {
  box-shadow: 0 14px 40px -18px rgba(196, 110, 94, .42);
  transform: translateY(-4px) scale(1.01);
}

/* Article cards → discrete rounded surfaces (override theme's ruled list) */
html.rose-wellness.rose-wellness .article-cards__list { border-top: none; }
html.rose-wellness.rose-wellness .article-card {
  border-bottom: none;
  margin-bottom: .5rem;
  background: var(--color-bg-surface);
  border: 1px solid var(--color-border);
  border-radius: 18px;
  padding: 1rem;
  transition: box-shadow .3s ease, transform .3s ease;
}
html.rose-wellness.rose-wellness .article-card:hover {
  box-shadow: 0 14px 40px -18px rgba(196, 110, 94, .42);
  transform: translateY(-3px);
  border-color: transparent;
}
html.rose-wellness.rose-wellness .faq-item { margin-bottom: 1rem; }
@media (prefers-reduced-motion: reduce) {
  html.rose-wellness.rose-wellness .article-card, html.rose-wellness.rose-wellness .product-card { transition: none; }
}

/* Section headers centered & calm */
html.rose-wellness.rose-wellness .article-cards__header,
html.rose-wellness.rose-wellness .product-cards__header,
html.rose-wellness.rose-wellness .faq-section__header { text-align: center; font-size: 2rem; margin-bottom: 1.75rem; }

/* Hero → centered minimal, soft radial wash + blurred blooms */
html.rose-wellness.rose-wellness .hero {
  position: relative;
  overflow: hidden;
  background: radial-gradient(120% 90% at 50% -10%, #FBE3D8 0%, #FBF6F2 62%);
  padding: 5.5rem 1.25rem 4.5rem;
}
html.rose-wellness.rose-wellness .hero::before {
  content: "";
  position: absolute; width: 340px; height: 340px; border-radius: 50%;
  background: radial-gradient(circle, rgba(224, 138, 118, .34), transparent 68%);
  top: -90px; left: calc(50% - 340px); filter: blur(6px);
}
html.rose-wellness.rose-wellness .hero::after {
  content: "";
  position: absolute; width: 300px; height: 300px; border-radius: 50%;
  background: radial-gradient(circle, rgba(210, 180, 140, .30), transparent 68%);
  bottom: -120px; right: calc(50% - 320px); filter: blur(8px);
}
html.rose-wellness.rose-wellness .hero__inner { position: relative; z-index: 1; }
html.rose-wellness.rose-wellness .hero__title { font-size: 3.1rem; font-weight: 800; line-height: 1.08; letter-spacing: -.03em; max-width: 16ch; margin-inline: auto; }
html.rose-wellness.rose-wellness .hero__subtitle { font-size: 1.18rem; max-width: 46ch; }
html.rose-wellness.rose-wellness .hero__btn { padding: .9rem 2.2rem; }
html.rose-wellness.rose-wellness .hero__badges { padding-top: .5rem; }

/* Contrast fix — the soft coral primary (#E08A76) fails white button text (2.6:1).
   Use a deeper coral for FILLED CTAs so white text reaches ≈5.8:1 (accent stays warm). */
html.rose-wellness.rose-wellness .cta-button,
html.rose-wellness.rose-wellness .product-card__cta,
html.rose-wellness.rose-wellness .hero__btn--primary { background: #B85742; color: #FFFFFF; }
@media (max-width: 680px) { html.rose-wellness.rose-wellness .hero__title { font-size: 2.4rem; } }
