/*
Theme Name: Her Curve Edit
Theme URI: https://hercurvesedit.com/
Author: Her Curve Edit
Author URI: https://hercurvesedit.com/
Description: Premium fashion, hair, nail art and personalized style discovery theme for HerCurvesEdit.com.
Version: 1.0.3
Text Domain: hercurvesedit
*/

/* =========================================================
   HER CURVE EDIT — DESIGN SYSTEM
   ========================================================= */

:root {
    --hce-background: #fbf8f6;
    --hce-white: #ffffff;

    --hce-text: #262222;
    --hce-dark: #211e1e;
    --hce-muted: #776e6b;

    --hce-rose: #b97979;
    --hce-rose-dark: #965d5d;
    --hce-champagne: #c7a36d;

    --hce-border: #eadfda;

    --hce-container: 1280px;

    --hce-radius-small: 10px;
    --hce-radius-medium: 18px;
    --hce-radius-large: 28px;

    --hce-shadow: 0 12px 35px rgba(44, 33, 31, 0.08);
}


/* =========================================================
   RESET
   ========================================================= */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;

    background: var(--hce-background);
    color: var(--hce-text);

    font-family: Arial, Helvetica, sans-serif;

    font-size: 16px;
    line-height: 1.65;
}

img {
    display: block;

    max-width: 100%;
    height: auto;
}

a {
    color: inherit;
    text-decoration: none;
}

button,
input,
textarea,
select {
    font: inherit;
}


/* =========================================================
   GLOBAL CONTAINER
   ========================================================= */

.hce-container {
    width: min(calc(100% - 48px), var(--hce-container));

    margin-left: auto;
    margin-right: auto;
}


/* =========================================================
   SITE HEADER
   ========================================================= */

.hce-site-header {
    position: relative;
    z-index: 100;

    width: 100%;

    background: rgba(255, 255, 255, 0.97);

    border-bottom: 1px solid var(--hce-border);
}

.hce-header-inner {
    min-height: 88px;

    display: flex;
    align-items: center;

    gap: 38px;
}


/* BRAND */

.hce-branding {
    flex-shrink: 0;
}

.hce-logo-text {
    display: flex;
    flex-direction: column;

    line-height: 1;
    letter-spacing: 0.04em;
}

.hce-logo-her {
    margin-bottom: 5px;

    color: var(--hce-rose);

    font-family: Arial, Helvetica, sans-serif;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 0.34em;
}

.hce-logo-main {
    color: var(--hce-dark);

    font-family: Georgia, "Times New Roman", serif;

    font-size: 27px;
    font-weight: 500;

    letter-spacing: 0.025em;
}


/* =========================================================
   PRIMARY NAVIGATION
   ========================================================= */

.hce-primary-navigation {
    margin-left: auto;
}

.hce-primary-menu {
    display: flex;
    align-items: center;

    gap: 27px;

    margin: 0;
    padding: 0;

    list-style: none;
}

.hce-primary-menu li {
    margin: 0;
}

.hce-primary-menu a {
    position: relative;

    display: block;

    padding: 32px 0;

    color: var(--hce-text);

    font-size: 13px;
    font-weight: 600;

    letter-spacing: 0.025em;
}

.hce-primary-menu a::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: 24px;

    width: 0;
    height: 1px;

    background: var(--hce-rose);

    transition: width 0.25s ease;
}

.hce-primary-menu a:hover::after {
    width: 100%;
}


/* =========================================================
   HEADER CTA
   ========================================================= */

.hce-header-quiz {
    flex-shrink: 0;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: 44px;

    padding: 0 22px;

    border: 1px solid var(--hce-dark);
    border-radius: 999px;

    color: var(--hce-dark);

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 0.04em;

    transition:
        background 0.2s ease,
        color 0.2s ease;
}

.hce-header-quiz:hover {
    background: var(--hce-dark);
    color: var(--hce-white);
}


/* =========================================================
   TEMPORARY HERO / WELCOME
   ========================================================= */

.hce-welcome {
    padding: 115px 0 125px;

    text-align: center;

    background:
        linear-gradient(
            135deg,
            #fbf5f2 0%,
            #ffffff 52%,
            #f7efed 100%
        );
}

.hce-eyebrow {
    margin: 0 0 21px;

    color: var(--hce-rose-dark);

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 0.21em;
}

.hce-welcome h1 {
    max-width: 900px;

    margin: 0 auto 25px;

    color: var(--hce-dark);

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(48px, 6vw, 82px);
    font-weight: 400;

    line-height: 1.03;

    letter-spacing: -0.035em;
}

.hce-welcome-text {
    max-width: 610px;

    margin: 0 auto 34px;

    color: var(--hce-muted);

    font-size: 18px;
    line-height: 1.75;
}


/* PRIMARY BUTTON */

.hce-primary-button {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: 52px;

    padding: 0 30px;

    border-radius: 999px;

    background: var(--hce-dark);
    color: var(--hce-white);

    font-size: 13px;
    font-weight: 700;

    letter-spacing: 0.04em;

    transition:
        transform 0.2s ease,
        background 0.2s ease;
}

.hce-primary-button:hover {
    transform: translateY(-2px);

    background: var(--hce-rose-dark);
}


/* =========================================================
   POSTS
   ========================================================= */

.hce-posts-section {
    padding: 75px 0;
}

.hce-post-preview {
    max-width: 760px;

    margin: 0 auto 40px;
    padding-bottom: 40px;

    border-bottom: 1px solid var(--hce-border);
}

.hce-post-preview h2 {
    font-family: Georgia, "Times New Roman", serif;

    font-weight: 400;
}


/* =========================================================
   FOOTER
   ========================================================= */

.hce-site-footer {
    padding: 55px 0;

    background: var(--hce-dark);

    color: var(--hce-white);
}

.hce-footer-inner {
    display: flex;

    justify-content: space-between;
    align-items: flex-end;

    gap: 40px;
}

.hce-footer-brand strong {
    font-family: Georgia, "Times New Roman", serif;

    font-size: 22px;
    font-weight: 400;

    letter-spacing: 0.04em;
}

.hce-footer-brand p,
.hce-copyright {
    margin-bottom: 0;

    color: rgba(255, 255, 255, 0.65);

    font-size: 13px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

    .hce-primary-navigation {
        display: none;
    }

    .hce-header-inner {
        min-height: 74px;
    }

    .hce-header-quiz {
        margin-left: auto;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .hce-container {
        width: min(
            calc(100% - 30px),
            var(--hce-container)
        );
    }

    .hce-logo-main {
        font-size: 21px;
    }

    .hce-logo-her {
        font-size: 9px;
    }

    .hce-header-quiz {
        min-height: 40px;

        padding: 0 14px;

        font-size: 10px;
    }

    .hce-welcome {
        padding: 78px 0 88px;
    }

    .hce-welcome h1 {
        font-size: 43px;
    }

    .hce-welcome-text {
        font-size: 16px;
    }

    .hce-primary-button {
        min-height: 48px;

        padding: 0 23px;
    }

    .hce-footer-inner {
        flex-direction: column;

        align-items: flex-start;
    }

}
/* =========================================================
   HER CURVE EDIT — HOMEPAGE
   ========================================================= */


/* HERO */

.hce-home-hero {
    padding: 88px 0 95px;

    background:
        linear-gradient(
            135deg,
            #f8efeb 0%,
            #fffdfc 48%,
            #f3e8e5 100%
        );
}

.hce-home-hero-inner {
    display: grid;

    grid-template-columns:
        minmax(0, 1.35fr)
        minmax(300px, 0.65fr);

    align-items: center;

    gap: 85px;
}


/* LEFT HERO */

.hce-home-kicker {
    margin: 0 0 20px;

    color: var(--hce-rose-dark);

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 0.22em;
}

.hce-home-hero-content h1 {
    max-width: 760px;

    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(58px, 6vw, 91px);

    font-weight: 400;

    line-height: 0.98;

    letter-spacing: -0.045em;
}

.hce-home-hero-content h1 span {
    display: block;

    color: var(--hce-rose-dark);
}

.hce-home-intro {
    max-width: 610px;

    margin: 30px 0 0;

    color: var(--hce-muted);

    font-size: 18px;

    line-height: 1.75;
}


/* BUTTONS */

.hce-home-actions {
    display: flex;

    align-items: center;

    gap: 28px;

    margin-top: 34px;
}

.hce-button-dark {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: 52px;

    padding: 0 28px;

    background: var(--hce-dark);
    color: var(--hce-white);

    border-radius: 999px;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 0.04em;

    transition:
        transform 0.2s ease,
        background 0.2s ease;
}

.hce-button-dark:hover {
    transform: translateY(-2px);

    background: var(--hce-rose-dark);
}

.hce-button-text {
    padding-bottom: 3px;

    border-bottom: 1px solid var(--hce-text);

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 0.05em;
}


/* HERO FEATURE CARD */

.hce-home-feature-card {
    padding: 50px 42px;

    background: var(--hce-white);

    border: 1px solid var(--hce-border);

    border-radius: var(--hce-radius-large);

    box-shadow: var(--hce-shadow);
}

.hce-feature-label {
    display: block;

    margin-bottom: 22px;

    color: var(--hce-rose-dark);

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 0.22em;
}

.hce-home-feature-card h2 {
    margin: 0 0 20px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 39px;
    font-weight: 400;

    line-height: 1.08;
}

.hce-home-feature-card p {
    margin-bottom: 27px;

    color: var(--hce-muted);

    font-size: 15px;

    line-height: 1.75;
}

.hce-home-feature-card a {
    font-size: 11px;
    font-weight: 700;

    letter-spacing: 0.06em;
}


/* =========================================================
   CONTENT PILLARS
   ========================================================= */

.hce-pillars {
    padding: 95px 0 110px;

    background: var(--hce-white);
}

.hce-section-heading {
    max-width: 650px;

    margin-bottom: 50px;
}

.hce-section-heading > p {
    margin: 0 0 13px;

    color: var(--hce-rose-dark);

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 0.22em;
}

.hce-section-heading h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(38px, 4vw, 55px);

    font-weight: 400;

    line-height: 1.08;

    letter-spacing: -0.025em;
}


/* GRID */

.hce-pillar-grid {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 22px;
}


/* CARDS */

.hce-pillar-card {
    position: relative;

    min-height: 410px;

    display: flex;
    flex-direction: column;

    justify-content: space-between;

    padding: 30px;

    overflow: hidden;

    border-radius: var(--hce-radius-large);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.hce-pillar-card:hover {
    transform: translateY(-5px);

    box-shadow: var(--hce-shadow);
}

.hce-pillar-fashion {
    background: #f1dfd9;
}

.hce-pillar-hair {
    background: #eee7df;
}

.hce-pillar-nails {
    background: #eadde4;
}


.hce-pillar-number {
    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 52px;

    color: rgba(38, 34, 34, 0.20);
}


.hce-pillar-content span {
    display: block;

    margin-bottom: 8px;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 0.19em;
}

.hce-pillar-content h3 {
    margin: 0 0 13px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 42px;
    font-weight: 400;
}

.hce-pillar-content p {
    max-width: 330px;

    margin: 0 0 24px;

    color: var(--hce-muted);

    font-size: 14px;

    line-height: 1.7;
}

.hce-pillar-content strong {
    font-size: 10px;

    letter-spacing: 0.08em;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1000px) {

    .hce-home-hero-inner {
        grid-template-columns: 1fr;

        gap: 55px;
    }

    .hce-home-feature-card {
        max-width: 620px;
    }

    .hce-pillar-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {

    .hce-home-hero {
        padding: 65px 0 70px;
    }

    .hce-home-hero-content h1 {
        font-size: 49px;
    }

    .hce-home-intro {
        font-size: 16px;
    }

    .hce-home-actions {
        align-items: flex-start;
        flex-direction: column;

        gap: 20px;
    }

    .hce-home-feature-card {
        padding: 34px 26px;
    }

    .hce-home-feature-card h2 {
        font-size: 32px;
    }

    .hce-pillars {
        padding: 70px 0 80px;
    }

    .hce-pillar-grid {
        grid-template-columns: 1fr;
    }

    .hce-pillar-card {
        min-height: 330px;
    }

}
/* =========================================================
   STYLE DISCOVERY
   ========================================================= */

.hce-style-discovery {
    padding: 100px 0 110px;

    background: var(--hce-background);
}


/* HEADER */

.hce-discovery-header {
    display: flex;

    justify-content: space-between;
    align-items: flex-end;

    gap: 40px;

    margin-bottom: 48px;
}

.hce-section-label {
    margin: 0 0 13px;

    color: var(--hce-rose-dark);

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 0.22em;
}

.hce-discovery-header h2 {
    max-width: 650px;

    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(38px, 4vw, 55px);

    font-weight: 400;

    line-height: 1.08;

    letter-spacing: -0.025em;
}

.hce-discovery-intro {
    max-width: 320px;

    margin: 0;

    color: var(--hce-muted);

    font-size: 15px;

    line-height: 1.7;
}


/* GRID */

.hce-discovery-grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 18px;
}


/* CARD */

.hce-discovery-card {
    min-height: 350px;

    display: flex;
    flex-direction: column;

    justify-content: space-between;

    padding: 27px;

    background: var(--hce-white);

    border: 1px solid var(--hce-border);

    border-radius: 22px;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
}

.hce-discovery-card:hover {
    transform: translateY(-5px);

    border-color: #dbc7bf;

    box-shadow: var(--hce-shadow);
}


/* TOP */

.hce-discovery-top {
    display: flex;

    align-items: center;
    justify-content: space-between;
}

.hce-discovery-number {
    font-family:
        Georgia,
        "Times New Roman",
        serif;

    color: #b6aaa5;

    font-size: 25px;
}

.hce-discovery-arrow {
    width: 37px;
    height: 37px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid var(--hce-border);
    border-radius: 50%;

    font-size: 16px;

    transition:
        background 0.2s ease,
        color 0.2s ease;
}

.hce-discovery-card:hover .hce-discovery-arrow {
    background: var(--hce-dark);
    color: var(--hce-white);
}


/* CONTENT */

.hce-card-label {
    display: block;

    margin-bottom: 10px;

    color: var(--hce-rose-dark);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 0.18em;
}

.hce-discovery-content h3 {
    margin: 0 0 14px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 34px;
    font-weight: 400;

    line-height: 1.04;
}

.hce-discovery-content p {
    margin: 0;

    color: var(--hce-muted);

    font-size: 13px;

    line-height: 1.7;
}


/* =========================================================
   DISCOVERY RESPONSIVE
   ========================================================= */

@media (max-width: 1050px) {

    .hce-discovery-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

}


@media (max-width: 650px) {

    .hce-style-discovery {
        padding: 70px 0 80px;
    }

    .hce-discovery-header {
        flex-direction: column;

        align-items: flex-start;

        gap: 20px;
    }

    .hce-discovery-grid {
        grid-template-columns: 1fr;
    }

    .hce-discovery-card {
        min-height: 280px;
    }

    .hce-discovery-content h3 {
        font-size: 31px;
    }

}
/* =========================================================
   TRENDING NOW
   ========================================================= */

.hce-trending {
    padding: 105px 0 115px;

    background: #ffffff;
}


/* HEADER */

.hce-trending-heading {
    display: flex;

    align-items: flex-end;
    justify-content: space-between;

    gap: 40px;

    margin-bottom: 48px;
}

.hce-trending-heading h2 {
    max-width: 650px;

    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(40px, 4.2vw, 58px);

    font-weight: 400;

    line-height: 1.05;

    letter-spacing: -0.03em;
}

.hce-view-all {
    flex-shrink: 0;

    padding-bottom: 4px;

    border-bottom: 1px solid var(--hce-dark);

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 0.08em;
}


/* =========================================================
   STORY GRID
   ========================================================= */

.hce-trending-grid {
    display: grid;

    grid-template-columns:
        repeat(12, minmax(0, 1fr));

    gap: 24px;
}


/* NORMAL STORY */

.hce-story-card {
    grid-column: span 4;

    min-width: 0;
}


/* FEATURED STORY */

.hce-story-featured {
    grid-column: span 8;

    grid-row: span 2;
}


/* IMAGE */

.hce-story-image {
    display: block;

    width: 100%;

    overflow: hidden;

    border-radius: 22px;

    background: #f3ece9;
}

.hce-story-card:not(.hce-story-featured) .hce-story-image {
    aspect-ratio: 4 / 5;
}

.hce-story-featured .hce-story-image {
    aspect-ratio: 16 / 10;
}

.hce-story-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.45s ease;
}

.hce-story-card:hover .hce-story-image img {
    transform: scale(1.025);
}


/* TEMPORARY PLACEHOLDERS */

.hce-story-placeholder {
    width: 100%;
    height: 100%;
    min-height: 330px;

    display: flex;

    align-items: center;
    justify-content: center;

    background:
        linear-gradient(
            145deg,
            #ead8d2,
            #f8eeeb
        );
}

.hce-story-featured .hce-story-placeholder {
    min-height: 500px;
}

.hce-story-placeholder span {
    color: rgba(38, 34, 34, 0.38);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(30px, 4vw, 60px);

    letter-spacing: 0.06em;
}

.hce-placeholder-hair {
    background:
        linear-gradient(
            145deg,
            #e5ded4,
            #f6f1eb
        );
}

.hce-placeholder-nails {
    background:
        linear-gradient(
            145deg,
            #e6d6de,
            #f8edf2
        );
}


/* STORY CONTENT */

.hce-story-content {
    padding-top: 22px;
}

.hce-story-meta {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    margin-bottom: 13px;
}

.hce-story-category {
    color: var(--hce-rose-dark);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 0.16em;
}

.hce-story-number {
    color: #aaa09d;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 16px;
}

.hce-story-content h3 {
    margin: 0 0 14px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 30px;
    font-weight: 400;

    line-height: 1.08;

    letter-spacing: -0.02em;
}

.hce-story-featured .hce-story-content h3 {
    max-width: 720px;

    font-size: clamp(35px, 4vw, 49px);
}

.hce-story-excerpt {
    max-width: 680px;

    margin: 0 0 18px;

    color: var(--hce-muted);

    font-size: 15px;

    line-height: 1.7;
}

.hce-story-link {
    display: inline-block;

    margin-top: 5px;

    padding-bottom: 3px;

    border-bottom: 1px solid var(--hce-text);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 0.09em;
}


/* =========================================================
   TRENDING — TABLET
   ========================================================= */

@media (max-width: 950px) {

    .hce-story-featured,
    .hce-story-card {
        grid-column: span 6;
    }

    .hce-story-featured {
        grid-row: auto;
    }

    .hce-story-featured .hce-story-image {
        aspect-ratio: 4 / 5;
    }

}


/* =========================================================
   TRENDING — MOBILE
   ========================================================= */

@media (max-width: 650px) {

    .hce-trending {
        padding: 72px 0 80px;
    }

    .hce-trending-heading {
        align-items: flex-start;
        flex-direction: column;

        gap: 22px;
    }

    .hce-trending-grid {
        display: block;
    }

    .hce-story-card {
        margin-bottom: 48px;
    }

    .hce-story-featured .hce-story-image,
    .hce-story-card:not(.hce-story-featured) .hce-story-image {
        aspect-ratio: 4 / 5;
    }

    .hce-story-placeholder,
    .hce-story-featured .hce-story-placeholder {
        min-height: 420px;
    }

    .hce-story-content h3,
    .hce-story-featured .hce-story-content h3 {
        font-size: 31px;
    }

}
/* =========================================================
   HER CURVE EDIT — FIXED DESKTOP DROPDOWN
   ========================================================= */

@media (min-width: 901px) {

    /* Top-level menu */
    .hce-primary-menu {
        display: flex;
        align-items: center;
        gap: 26px;

        margin: 0;
        padding: 0;

        list-style: none;
    }

    .hce-primary-menu > li {
        position: relative;

        margin: 0;
        padding: 0;

        list-style: none;
    }


    /* -----------------------------------------------------
       HIDE SUBMENUS BY DEFAULT
       ----------------------------------------------------- */

    .hce-primary-menu .sub-menu {
        position: absolute !important;

        top: calc(100% - 10px) !important;
        left: 50% !important;

        z-index: 9999 !important;

        width: 440px !important;

        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

        gap: 4px !important;

        margin: 0 !important;
        padding: 16px !important;

        list-style: none !important;

        background: #ffffff !important;

        border: 1px solid var(--hce-border) !important;
        border-radius: 18px !important;

        box-shadow:
            0 20px 55px rgba(34, 28, 27, 0.14) !important;

        opacity: 0 !important;
        visibility: hidden !important;

        pointer-events: none !important;

        transform: translate(-50%, 12px) !important;

        transition:
            opacity 0.18s ease,
            visibility 0.18s ease,
            transform 0.18s ease !important;
    }


    /* -----------------------------------------------------
       SHOW ON HOVER / KEYBOARD FOCUS
       ----------------------------------------------------- */

    .hce-primary-menu > li:hover > .sub-menu,
    .hce-primary-menu > li:focus-within > .sub-menu {
        opacity: 1 !important;
        visibility: visible !important;

        pointer-events: auto !important;

        transform: translate(-50%, 0) !important;
    }


    /* -----------------------------------------------------
       SUBMENU ITEMS
       ----------------------------------------------------- */

    .hce-primary-menu .sub-menu li {
        position: static !important;

        display: block !important;

        margin: 0 !important;
        padding: 0 !important;

        list-style: none !important;
    }

    .hce-primary-menu .sub-menu li::marker {
        content: "" !important;
    }

    .hce-primary-menu .sub-menu a {
        display: block !important;

        width: 100% !important;

        padding: 13px 14px !important;

        border-radius: 10px !important;

        color: var(--hce-text) !important;

        font-size: 12px !important;
        font-weight: 600 !important;

        line-height: 1.35 !important;

        letter-spacing: 0.01em !important;

        text-decoration: none !important;

        white-space: normal !important;
    }

    .hce-primary-menu .sub-menu a:hover,
    .hce-primary-menu .sub-menu a:focus {
        background: var(--hce-background) !important;

        color: var(--hce-rose-dark) !important;
    }


    /* Remove line animation inside dropdown */
    .hce-primary-menu .sub-menu a::before,
    .hce-primary-menu .sub-menu a::after {
        display: none !important;
    }


    /* Invisible hover bridge */
    .hce-primary-menu .sub-menu::before {
        content: "";

        position: absolute;

        top: -18px;
        left: 0;

        width: 100%;
        height: 20px;
    }

}


/* =========================================================
   MOBILE — NEVER SHOW DESKTOP SUBMENU
   ========================================================= */

@media (max-width: 900px) {

    .hce-primary-menu .sub-menu {
        display: none !important;
    }

}
/* =========================================================
   MOBILE NAVIGATION
   ========================================================= */

.hce-mobile-menu-button,
.hce-mobile-navigation {
    display: none;
}


/* Prevent background scrolling while menu is open */

body.hce-menu-open {
    overflow: hidden;
}


@media (max-width: 900px) {

    /* Hide desktop elements */

    .hce-primary-navigation,
    .hce-header-quiz {
        display: none;
    }


    /* HEADER */

    .hce-header-inner {
        min-height: 74px;

        justify-content: space-between;
    }


    /* HAMBURGER */

    .hce-mobile-menu-button {
        width: 44px;
        height: 44px;

        display: flex;

        flex-direction: column;

        align-items: center;
        justify-content: center;

        gap: 5px;

        padding: 0;

        border: 1px solid var(--hce-border);
        border-radius: 50%;

        background: #ffffff;

        cursor: pointer;
    }

    .hce-mobile-menu-button span {
        width: 17px;
        height: 1.5px;

        display: block;

        background: var(--hce-dark);

        transition:
            transform 0.2s ease,
            opacity 0.2s ease;
    }


    /* Turn hamburger into X */

    .hce-mobile-menu-button.is-open span:nth-child(1) {
        transform:
            translateY(6.5px)
            rotate(45deg);
    }

    .hce-mobile-menu-button.is-open span:nth-child(2) {
        opacity: 0;
    }

    .hce-mobile-menu-button.is-open span:nth-child(3) {
        transform:
            translateY(-6.5px)
            rotate(-45deg);
    }


    /* MENU PANEL */

    .hce-mobile-navigation {
        width: 100%;

        max-height: calc(100vh - 74px);

        overflow-y: auto;

        background: #ffffff;

        border-top: 1px solid var(--hce-border);

        box-shadow:
            0 18px 35px rgba(30, 25, 24, 0.08);
    }

    .hce-mobile-navigation:not([hidden]) {
        display: block;
    }

    .hce-mobile-navigation-inner {
        width: min(
            calc(100% - 30px),
            var(--hce-container)
        );

        margin: 0 auto;

        padding: 20px 0 30px;
    }


    /* MAIN ITEMS */

    .hce-mobile-menu,
    .hce-mobile-menu .sub-menu {
        margin: 0;
        padding: 0;

        list-style: none;
    }

    .hce-mobile-menu > li {
        position: relative;

        border-bottom: 1px solid var(--hce-border);
    }

    .hce-mobile-menu > li > a {
        display: block;

        padding: 17px 48px 17px 4px;

        color: var(--hce-dark);

        font-size: 14px;
        font-weight: 700;

        letter-spacing: 0.025em;
    }


    /* SUBMENU BUTTON */

    .hce-mobile-submenu-toggle {
        position: absolute;

        top: 7px;
        right: 0;

        width: 42px;
        height: 42px;

        display: flex;

        align-items: center;
        justify-content: center;

        padding: 0;

        border: 0;

        background: transparent;

        color: var(--hce-dark);

        cursor: pointer;
    }

    .hce-mobile-submenu-toggle span {
        font-size: 22px;
        font-weight: 300;

        transition: transform 0.2s ease;
    }

    .hce-mobile-submenu-toggle.is-open span {
        transform: rotate(45deg);
    }


    /* SUBMENUS */

    .hce-mobile-menu .sub-menu {
        padding:
            4px
            0
            15px
            15px;
    }

    .hce-mobile-menu .sub-menu[hidden] {
        display: none !important;
    }

    .hce-mobile-menu .sub-menu li {
        border: 0;
    }

    .hce-mobile-menu .sub-menu a {
        display: block;

        padding: 9px 4px;

        color: var(--hce-muted);

        font-size: 13px;
        font-weight: 500;

        line-height: 1.4;
    }


    /* QUIZ CTA */

    .hce-mobile-style-button {
        width: 100%;

        min-height: 50px;

        display: flex;

        align-items: center;
        justify-content: center;

        margin-top: 25px;

        background: var(--hce-dark);

        color: #ffffff;

        border-radius: 999px;

        font-size: 12px;
        font-weight: 700;

        letter-spacing: 0.05em;
    }

}
/* =========================================================
   HER CURVE EDIT — MOBILE HEADER & MENU
   ========================================================= */

.hce-mobile-menu-button,
.hce-mobile-navigation {
    display: none;
}


/* =========================================================
   MOBILE / TABLET
   ========================================================= */

@media (max-width: 900px) {

    /* Hide desktop navigation */
    .hce-primary-navigation,
    .hce-header-quiz {
        display: none !important;
    }


    /* Header */
    .hce-header-inner {
        min-height: 72px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
    }


    /* Logo */
    .hce-branding {
        flex-shrink: 0;
    }


    /* Hamburger button */
    .hce-mobile-menu-button {
        width: 44px;
        height: 44px;

        display: flex !important;
        flex-direction: column;
        align-items: center;
        justify-content: center;

        gap: 5px;

        padding: 0;

        background: #ffffff;

        border: 1px solid var(--hce-border);
        border-radius: 50%;

        cursor: pointer;
    }

    .hce-mobile-menu-button span {
        width: 18px;
        height: 1.5px;

        display: block;

        background: var(--hce-dark);

        transition:
            transform 0.2s ease,
            opacity 0.2s ease;
    }


    /* Hamburger becomes X */
    .hce-mobile-menu-button.is-open span:nth-child(1) {
        transform: translateY(6.5px) rotate(45deg);
    }

    .hce-mobile-menu-button.is-open span:nth-child(2) {
        opacity: 0;
    }

    .hce-mobile-menu-button.is-open span:nth-child(3) {
        transform: translateY(-6.5px) rotate(-45deg);
    }


    /* Mobile navigation panel */
    .hce-mobile-navigation {
        width: 100%;

        background: #ffffff;

        border-top: 1px solid var(--hce-border);

        box-shadow:
            0 18px 40px rgba(30, 25, 24, 0.08);
    }

    .hce-mobile-navigation:not([hidden]) {
        display: block !important;
    }


    .hce-mobile-navigation-inner {
        width: min(
            calc(100% - 30px),
            var(--hce-container)
        );

        margin: 0 auto;

        padding: 18px 0 28px;
    }


    /* Main mobile list */
    .hce-mobile-menu,
    .hce-mobile-menu .sub-menu {
        margin: 0;
        padding: 0;

        list-style: none;
    }


    .hce-mobile-menu > li {
        position: relative;

        border-bottom: 1px solid var(--hce-border);
    }


    .hce-mobile-menu > li > a {
        display: block;

        padding: 17px 50px 17px 3px;

        color: var(--hce-dark);

        font-size: 14px;
        font-weight: 700;

        letter-spacing: 0.03em;

        text-decoration: none;
    }


    /* + button */
    .hce-mobile-submenu-toggle {
        position: absolute;

        top: 7px;
        right: 0;

        width: 42px;
        height: 42px;

        display: flex;
        align-items: center;
        justify-content: center;

        padding: 0;

        border: 0;

        background: transparent;

        color: var(--hce-dark);

        cursor: pointer;
    }


    .hce-mobile-submenu-toggle span {
        font-size: 23px;
        font-weight: 300;

        line-height: 1;

        transition: transform 0.2s ease;
    }


    .hce-mobile-submenu-toggle.is-open span {
        transform: rotate(45deg);
    }


    /* Submenu */
    .hce-mobile-menu .sub-menu {
        padding: 0 0 14px 17px;
    }


    .hce-mobile-menu .sub-menu[hidden] {
        display: none !important;
    }


    .hce-mobile-menu .sub-menu li {
        border: 0;
    }


    .hce-mobile-menu .sub-menu a {
        display: block;

        padding: 9px 4px;

        color: var(--hce-muted);

        font-size: 13px;
        font-weight: 500;

        line-height: 1.45;

        text-decoration: none;
    }


    /* Bottom quiz button */
    .hce-mobile-style-button {
        width: 100%;

        min-height: 50px;

        display: flex;
        align-items: center;
        justify-content: center;

        margin-top: 25px;

        padding: 0 20px;

        background: var(--hce-dark);
        color: #ffffff;

        border-radius: 999px;

        font-size: 12px;
        font-weight: 700;

        letter-spacing: 0.05em;

        text-decoration: none;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {

    .hce-logo-main {
        font-size: 21px;
    }

    .hce-logo-her {
        font-size: 9px;
    }

}
/* =========================================================
   EDITORIAL HOMEPAGE HERO
   ========================================================= */

.hce-editorial-hero {
    padding: 82px 0 100px;
    background: #fbf8f6;
}


/* INTRO */

.hce-editorial-intro {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);

    align-items: end;
    gap: 70px;

    margin-bottom: 48px;
}

.hce-editorial-intro h1 {
    max-width: 850px;

    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(58px, 6.4vw, 94px);
    font-weight: 400;

    line-height: 0.95;
    letter-spacing: -0.05em;
}

.hce-editorial-intro h1 span {
    display: block;
    color: var(--hce-rose-dark);
}

.hce-editorial-intro-copy p {
    margin: 0 0 22px;

    color: var(--hce-muted);

    font-size: 16px;
    line-height: 1.75;
}

.hce-editorial-quiz-link {
    display: inline-block;

    padding-bottom: 3px;

    border-bottom: 1px solid var(--hce-dark);

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 0.09em;
}


/* =========================================================
   FEATURE GRID
   ========================================================= */

.hce-editorial-grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1.65fr)
        minmax(320px, 0.75fr);

    gap: 25px;
}


/* =========================================================
   MAIN FEATURE
   ========================================================= */

.hce-editorial-main {
    min-width: 0;
}

.hce-editorial-image {
    display: block;

    width: 100%;

    aspect-ratio: 16 / 10;

    overflow: hidden;

    border-radius: 26px;

    background: #eee4df;
}

.hce-editorial-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.45s ease;
}

.hce-editorial-main:hover .hce-editorial-image img {
    transform: scale(1.025);
}


.hce-editorial-main-content {
    max-width: 800px;

    padding-top: 24px;
}

.hce-editorial-category {
    display: inline-block;

    margin-bottom: 10px;

    color: var(--hce-rose-dark);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.hce-editorial-main-content h2 {
    margin: 0 0 14px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(34px, 3.7vw, 50px);
    font-weight: 400;

    line-height: 1.05;

    letter-spacing: -0.03em;
}

.hce-editorial-main-content p {
    max-width: 690px;

    margin: 0 0 19px;

    color: var(--hce-muted);

    font-size: 15px;
    line-height: 1.7;
}

.hce-editorial-read {
    display: inline-block;

    padding-bottom: 3px;

    border-bottom: 1px solid var(--hce-dark);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 0.09em;
}


/* =========================================================
   SIDE STORIES
   ========================================================= */

.hce-editorial-side {
    display: grid;

    grid-template-rows:
        repeat(2, minmax(0, 1fr));

    gap: 25px;
}

.hce-editorial-small {
    min-width: 0;
}

.hce-editorial-small-image {
    display: block;

    width: 100%;

    aspect-ratio: 16 / 10;

    margin-bottom: 17px;

    overflow: hidden;

    border-radius: 20px;

    background: #eee4df;
}

.hce-editorial-small-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.4s ease;
}

.hce-editorial-small:hover
.hce-editorial-small-image img {
    transform: scale(1.025);
}

.hce-editorial-small h3 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 26px;
    font-weight: 400;

    line-height: 1.08;

    letter-spacing: -0.02em;
}


/* =========================================================
   PLACEHOLDERS
   ========================================================= */

.hce-editorial-placeholder {
    width: 100%;
    height: 100%;

    display: flex;

    align-items: center;
    justify-content: center;
}

.hce-editorial-placeholder span {
    color: rgba(38, 34, 34, 0.30);

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(24px, 3vw, 50px);

    letter-spacing: 0.07em;
}

.hce-editorial-fashion {
    background:
        linear-gradient(
            145deg,
            #e7d1ca,
            #f8eeeb
        );
}

.hce-editorial-hair {
    background:
        linear-gradient(
            145deg,
            #ded5ca,
            #f6f0e9
        );
}

.hce-editorial-nails {
    background:
        linear-gradient(
            145deg,
            #e2d0d9,
            #f7ebf0
        );
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1000px) {

    .hce-editorial-intro {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .hce-editorial-intro-copy {
        max-width: 620px;
    }

    .hce-editorial-grid {
        grid-template-columns: 1fr;
    }

    .hce-editorial-side {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: auto;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {

    .hce-editorial-hero {
        padding: 60px 0 72px;
    }

    .hce-editorial-intro {
        margin-bottom: 35px;
    }

    .hce-editorial-intro h1 {
        font-size: 51px;
    }

    .hce-editorial-grid {
        gap: 42px;
    }

    .hce-editorial-image {
        aspect-ratio: 4 / 5;
        border-radius: 20px;
    }

    .hce-editorial-main-content h2 {
        font-size: 34px;
    }

    .hce-editorial-side {
        grid-template-columns: 1fr;
        gap: 38px;
    }

    .hce-editorial-small-image {
        aspect-ratio: 4 / 5;
    }

    .hce-editorial-small h3 {
        font-size: 28px;
    }

}
/* =========================================================
   HER CURVE EDIT — HERO STEP 2
   Paste at the VERY BOTTOM of your existing style.css.
   This does not modify the site header/navigation.
   ========================================================= */

.hce3-hero {
    position: relative;
    min-height: clamp(590px, 51vw, 760px);
    overflow: hidden;
    background: #f8eee9;
    isolation: isolate;
}

.hce3-hero-picture,
.hce3-hero-picture img,
.hce3-hero-overlay {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.hce3-hero-picture {
    z-index: -3;
}

.hce3-hero-picture img {
    display: block;
    object-fit: cover;
    object-position: center center;
}

.hce3-hero-overlay {
    z-index: -2;
    background:
        linear-gradient(
            90deg,
            rgba(255, 251, 248, 0.98) 0%,
            rgba(255, 251, 248, 0.96) 30%,
            rgba(255, 251, 248, 0.76) 43%,
            rgba(255, 251, 248, 0.18) 58%,
            rgba(255, 251, 248, 0.02) 70%
        );
}

.hce3-hero-inner {
    position: relative;
    min-height: inherit;
    display: flex;
    align-items: center;
    padding-top: 58px;
    padding-bottom: 58px;
}

.hce3-hero-content {
    width: min(610px, 48%);
}

.hce3-eyebrow {
    margin: 0 0 18px;
    color: #9e5a66;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.19em;
    line-height: 1.5;
}

.hce3-eyebrow span {
    margin: 0 5px;
}

.hce3-hero h1 {
    margin: 0;
    color: #211c1b;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(57px, 5.55vw, 86px);
    font-weight: 400;
    line-height: 0.91;
    letter-spacing: -0.047em;
}

.hce3-hero h1 em {
    display: block;
    margin-top: 7px;
    color: #b53c69;
    font-weight: 400;
    font-style: italic;
}

.hce3-intro {
    max-width: 545px;
    margin: 28px 0 0;
    color: #4e4745;
    font-size: 16px;
    line-height: 1.65;
}

.hce3-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.hce3-button {
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 23px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.055em;
    text-decoration: none;
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        background 0.2s ease;
}

.hce3-button:hover,
.hce3-button:focus {
    transform: translateY(-2px);
}

.hce3-button-primary {
    background: linear-gradient(135deg, #a93160, #c84777);
    color: #fff;
    box-shadow: 0 14px 30px rgba(169, 49, 96, 0.22);
}

.hce3-button-primary:hover,
.hce3-button-primary:focus {
    color: #fff;
    box-shadow: 0 17px 35px rgba(169, 49, 96, 0.28);
}

.hce3-button-secondary {
    border: 1px solid rgba(173, 61, 102, 0.46);
    background: rgba(255, 255, 255, 0.84);
    color: #2b2423;
}

.hce3-button-secondary:hover,
.hce3-button-secondary:focus {
    background: #fff;
    color: #a93160;
}

.hce3-arrow {
    font-size: 17px;
    font-weight: 400;
    line-height: 1;
}

.hce3-look-parts {
    width: min(510px, 100%);
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 34px;
    border-top: 1px solid rgba(145, 93, 89, 0.18);
    padding-top: 19px;
}

.hce3-look-part {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
    padding: 0 10px;
    color: #aa3966;
    border-right: 1px solid rgba(145, 93, 89, 0.17);
}

.hce3-look-part:last-child {
    border-right: 0;
}

.hce3-look-part svg {
    width: 27px;
    height: 27px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.35;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.hce3-look-part span {
    color: #312a28;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.08em;
}

.hce3-brand-note {
    position: absolute;
    right: 4.5%;
    bottom: 9%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding: 17px 20px;
    border: 1px solid rgba(255,255,255,.72);
    border-radius: 18px;
    background: rgba(255,255,255,.72);
    box-shadow: 0 16px 38px rgba(55, 37, 31, 0.12);
    backdrop-filter: blur(12px);
    color: #403532;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 14px;
    font-style: italic;
    line-height: 1.33;
}

.hce3-brand-note strong {
    color: #ad3b66;
    font-weight: 400;
}


/* TABLET */

@media (max-width: 1050px) {

    .hce3-hero {
        min-height: 650px;
    }

    .hce3-hero-content {
        width: 57%;
    }

    .hce3-hero-overlay {
        background:
            linear-gradient(
                90deg,
                rgba(255, 251, 248, 0.98) 0%,
                rgba(255, 251, 248, 0.94) 38%,
                rgba(255, 251, 248, 0.48) 58%,
                rgba(255, 251, 248, 0.04) 77%
            );
    }

    .hce3-brand-note {
        right: 2.5%;
    }
}


/* MOBILE */

@media (max-width: 700px) {

    .hce3-hero {
        min-height: 730px;
    }

    .hce3-hero-picture img {
        object-position: 52% 20%;
    }

    .hce3-hero-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(255,255,255,0.03) 0%,
                rgba(255,255,255,0.05) 31%,
                rgba(253,247,244,0.72) 48%,
                rgba(253,247,244,0.96) 62%,
                #fdf7f4 76%,
                #fdf7f4 100%
            );
    }

    .hce3-hero-inner {
        align-items: flex-end;
        padding-top: 260px;
        padding-bottom: 27px;
    }

    .hce3-hero-content {
        width: 100%;
    }

    .hce3-eyebrow {
        margin-bottom: 10px;
        font-size: 8px;
    }

    .hce3-hero h1 {
        max-width: 360px;
        font-size: clamp(43px, 13vw, 56px);
        line-height: 0.93;
    }

    .hce3-intro {
        max-width: 375px;
        margin-top: 16px;
        font-size: 13px;
        line-height: 1.5;
    }

    .hce3-actions {
        gap: 8px;
        margin-top: 18px;
    }

    .hce3-button {
        min-height: 43px;
        padding: 0 16px;
        font-size: 9px;
    }

    .hce3-look-parts {
        margin-top: 21px;
        padding-top: 14px;
    }

    .hce3-look-part {
        gap: 5px;
        padding: 0 5px;
    }

    .hce3-look-part svg {
        width: 22px;
        height: 22px;
    }

    .hce3-look-part span {
        font-size: 6.5px;
        letter-spacing: 0.04em;
    }

    .hce3-brand-note {
        display: none;
    }
}


/* SMALL PHONE */

@media (max-width: 390px) {

    .hce3-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .hce3-button {
        width: 100%;
    }
}
/* =========================================================
   HER CURVE EDIT
   SHOP BY STYLE — FINAL DESKTOP + MOBILE FIX
   ========================================================= */

.hce4-shop {
    width: 100%;
    padding: 34px 0 46px !important;
    background: #fffdfc !important;
}


/* -------------------------
   SECTION HEADING
   ------------------------- */

.hce4-shop-heading {
    width: 100%;

    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;

    gap: 25px;

    margin-bottom: 20px !important;
}

.hce4-shop-title-row {
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: wrap;

    gap: 8px 16px;
}

.hce4-shop-title-row h2 {
    margin: 0 !important;

    font-family: Georgia, "Times New Roman", serif !important;

    font-size: 38px !important;
    font-weight: 400 !important;

    line-height: 1 !important;
    letter-spacing: -0.035em;

    color: #211c1b !important;
}

.hce4-shop-title-row p {
    margin: 0 0 3px !important;

    font-size: 11px !important;
    line-height: 1.4;

    color: #756966 !important;
}

.hce4-view-all {
    flex-shrink: 0;

    color: #ad3d68 !important;

    font-size: 9px !important;
    font-weight: 700 !important;

    letter-spacing: 0.08em;

    text-decoration: none !important;
}


/* =========================================================
   DESKTOP GRID — 8 SMALL CARDS
   ========================================================= */

.hce4-shop-grid {
    width: 100% !important;

    display: grid !important;

    grid-template-columns:
        repeat(8, minmax(0, 1fr)) !important;

    gap: 12px !important;

    overflow: visible !important;
}


/* CARD */

.hce4-shop-card {
    width: 100% !important;
    min-width: 0 !important;

    display: block !important;

    overflow: hidden !important;

    border: 1px solid #eadfdb !important;
    border-radius: 11px !important;

    background: #ffffff !important;

    box-shadow:
        0 6px 18px rgba(51, 36, 32, 0.05) !important;

    text-decoration: none !important;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease !important;
}

.hce4-shop-card:hover {
    transform: translateY(-4px);

    box-shadow:
        0 13px 28px
        rgba(51, 36, 32, 0.10) !important;
}


/* -------------------------
   IMAGE — IMPORTANT FIX
   ------------------------- */

.hce4-shop-image {
    width: 100% !important;

    height: 180px !important;

    overflow: hidden !important;

    background: #f6ece8 !important;

    aspect-ratio: auto !important;
}

.hce4-shop-image img {
    width: 100% !important;
    height: 100% !important;

    display: block !important;

    object-fit: cover !important;
    object-position: center top !important;

    margin: 0 !important;
    padding: 0 !important;

    max-width: none !important;

    transition:
        transform 0.35s ease !important;
}

.hce4-shop-card:hover
.hce4-shop-image img {
    transform: scale(1.035);
}


/* CARD CAPTION */

.hce4-shop-card-copy {
    min-height: 58px !important;

    display: flex !important;
    flex-direction: column !important;

    align-items: center !important;
    justify-content: center !important;

    padding: 8px 5px 9px !important;

    background: #fbf0f1 !important;

    text-align: center !important;
}

.hce4-shop-card-copy h3 {
    margin: 0 !important;

    font-family: Georgia, "Times New Roman", serif !important;

    font-size: 15px !important;
    font-weight: 400 !important;

    line-height: 1.05 !important;

    color: #292221 !important;
}

.hce4-shop-card-copy p {
    margin: 4px 0 0 !important;

    font-size: 7.5px !important;

    line-height: 1.25;

    color: #776b68 !important;
}


/* =========================================================
   MEDIUM DESKTOP / LAPTOP
   ========================================================= */

@media (max-width: 1200px) {

    .hce4-shop-grid {
        grid-template-columns:
            repeat(4, minmax(0, 1fr)) !important;

        gap: 15px !important;
    }

    .hce4-shop-image {
        height: 230px !important;
    }

}


/* =========================================================
   MOBILE — HORIZONTAL SWIPE
   ========================================================= */

@media (max-width: 760px) {

    .hce4-shop {
        padding: 30px 0 38px !important;
    }


    .hce4-shop-heading {
        align-items: center !important;

        margin-bottom: 16px !important;
    }


    .hce4-shop-title-row h2 {
        font-size: 30px !important;
    }


    .hce4-shop-title-row p {
        display: none !important;
    }


    .hce4-shop-grid {
        display: flex !important;

        grid-template-columns: none !important;

        gap: 10px !important;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        padding:
            2px 2px 12px !important;

        scroll-snap-type: x proximity;

        scrollbar-width: none;
    }


    .hce4-shop-grid::-webkit-scrollbar {
        display: none;
    }


    .hce4-shop-card {
        flex: 0 0 128px !important;

        width: 128px !important;

        scroll-snap-align: start;
    }


    .hce4-shop-image {
        height: 150px !important;
    }


    .hce4-shop-card-copy {
        min-height: 48px !important;

        padding: 7px 4px !important;
    }


    .hce4-shop-card-copy h3 {
        font-size: 14px !important;
    }


    .hce4-shop-card-copy p {
        display: none !important;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 420px) {

    .hce4-shop-card {
        flex-basis: 116px !important;

        width: 116px !important;
    }

    .hce4-shop-image {
        height: 137px !important;
    }

}
/* =========================================================
   HER CURVE EDIT — FIND MY LOOK HOMEPAGE EXPERIENCE
   Paste this at the VERY BOTTOM of your existing style.css
   ========================================================= */

.hce5-find-look {
    padding: 82px 0;
    background: linear-gradient(120deg, #fffaf8 0%, #f9e9e9 100%);
}

.hce5-find-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(430px, .88fr);
    align-items: center;
    gap: clamp(55px, 7vw, 105px);
}

.hce5-kicker {
    margin: 0 0 11px;
    color: #ad3b68;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .22em;
}

.hce5-find-copy h2 {
    margin: 0;
    color: #211c1b;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(50px, 5.4vw, 77px);
    font-weight: 400;
    line-height: .94;
    letter-spacing: -.045em;
}

.hce5-description {
    max-width: 640px;
    margin: 24px 0 29px;
    color: #655b58;
    font-size: 15px;
    line-height: 1.7;
}

.hce5-step-grid {
    max-width: 650px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
    margin-bottom: 30px;
}

.hce5-step-card {
    min-height: 73px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    border: 1px solid #ecdada;
    border-radius: 13px;
    background: rgba(255, 255, 255, .76);
}

.hce5-step-number {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: linear-gradient(135deg, #a92f5d, #c64b78);
    color: #fff;
    font-size: 9px;
    font-weight: 700;
}

.hce5-step-card strong {
    display: block;
    margin-bottom: 3px;
    color: #2e2624;
    font-size: 12px;
}

.hce5-step-card small {
    display: block;
    color: #81726f;
    font-size: 8px;
    line-height: 1.3;
}

.hce5-start-button {
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 0 29px;
    border-radius: 999px;
    background: linear-gradient(135deg, #a82f5d, #c64a77);
    color: #fff !important;
    box-shadow: 0 14px 30px rgba(171, 48, 95, .20);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .08em;
    text-decoration: none !important;
    transition: transform .2s ease, box-shadow .2s ease;
}

.hce5-start-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 36px rgba(171, 48, 95, .27);
}

.hce5-start-button span {
    font-size: 18px;
    font-weight: 400;
}

.hce5-complete-look {
    padding: 32px;
    border: 1px solid #ead9d5;
    border-radius: 27px;
    background: rgba(255, 255, 255, .85);
    box-shadow: 0 22px 55px rgba(62, 42, 36, .08);
}

.hce5-complete-heading p {
    margin: 0 0 7px;
    color: #ae3b67;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .20em;
}

.hce5-complete-heading h3 {
    margin: 0 0 23px;
    color: #272120;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 39px;
    font-weight: 400;
    line-height: 1;
}

.hce5-complete-heading h3 em {
    display: block;
    margin-top: 4px;
    color: #ad3b67;
    font-weight: 400;
}

.hce5-look-collage {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    grid-template-rows: repeat(3, 112px);
    gap: 9px;
}

.hce5-look-main {
    position: relative;
    grid-row: 1 / 4;
    overflow: hidden;
    border-radius: 17px;
    background: #f2e3df;
}

.hce5-look-main img,
.hce5-look-hair img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
}

.hce5-look-main > span,
.hce5-look-hair > span {
    position: absolute;
    left: 9px;
    bottom: 9px;
    padding: 5px 9px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .92);
    color: #352b28;
    font-size: 7px;
    font-weight: 700;
    letter-spacing: .08em;
}

.hce5-look-mini {
    position: relative;
    overflow: hidden;
    border-radius: 13px;
}

.hce5-look-nails,
.hce5-look-accessories {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 10px;
    text-align: center;
}

.hce5-look-nails {
    background: linear-gradient(135deg, #f3d9df, #fff7f4);
}

.hce5-look-accessories {
    background: linear-gradient(135deg, #ede1d5, #fffaf5);
}

.hce5-simple-icon {
    margin-bottom: 4px;
    color: #ae3b67;
    font-size: 25px;
}

.hce5-look-mini strong {
    color: #332927;
    font-size: 8px;
    letter-spacing: .08em;
}

.hce5-look-mini small {
    margin-top: 4px;
    color: #847572;
    font-size: 7px;
}

.hce5-benefits {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 14px;
    margin: 22px 0 0;
    padding: 0;
    list-style: none;
}

.hce5-benefits li {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #574c49;
    font-size: 9px;
}

.hce5-benefits li span {
    width: 19px;
    height: 19px;
    flex: 0 0 19px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #ba456f;
    border-radius: 50%;
    color: #ae3b67;
    font-size: 9px;
}

@media (max-width: 950px) {
    .hce5-find-grid {
        grid-template-columns: 1fr;
    }

    .hce5-complete-look {
        max-width: 680px;
    }
}

@media (max-width: 600px) {
    .hce5-find-look {
        padding: 57px 0;
    }

    .hce5-find-grid {
        gap: 38px;
    }

    .hce5-find-copy h2 {
        font-size: 44px;
    }

    .hce5-description {
        font-size: 14px;
    }

    .hce5-step-grid {
        grid-template-columns: 1fr;
    }

    .hce5-start-button {
        width: 100%;
    }

    .hce5-complete-look {
        padding: 20px;
        border-radius: 20px;
    }

    .hce5-complete-heading h3 {
        font-size: 32px;
    }

    .hce5-look-collage {
        grid-template-rows: repeat(3, 90px);
    }

    .hce5-benefits {
        grid-template-columns: 1fr;
    }
}
/* =========================================================
   HER CURVE EDIT — TRENDING NOW
   ========================================================= */

.hce6-trending {
    padding: 76px 0 88px;
    background: #fff;
}


/* HEADING */

.hce6-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 30px;

    margin-bottom: 22px;
}

.hce6-kicker {
    margin: 0 0 8px;

    color: #b23e69;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .20em;
}

.hce6-heading h2 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(42px, 4.5vw, 64px);

    font-weight: 400;

    line-height: .98;

    letter-spacing: -.04em;
}

.hce6-heading h2 em {
    color: #b23e69;

    font-weight: 400;
}

.hce6-heading-copy {
    margin: 9px 0 0;

    color: #756b68;

    font-size: 11px;
}

.hce6-view-all {
    flex: 0 0 auto;

    color: #b23e69 !important;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .08em;

    text-decoration: none !important;
}


/* TOPIC BAR */

.hce6-topic-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 8px;

    margin-bottom: 24px;
}

.hce6-topic-row a {
    min-width: 75px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: 30px;

    padding: 0 14px;

    border: 1px solid #eee1df;

    border-radius: 999px;

    background: #fff;

    color: #5d5350;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .05em;

    text-decoration: none;

    transition: .2s ease;
}

.hce6-topic-row a:hover {
    border-color: #bd5278;

    color: #ac3864;
}

.hce6-topic-row .hce6-topic-active {
    border-color: #b63d68;

    background:
        linear-gradient(
            135deg,
            #aa315e,
            #c64a77
        );

    color: #fff;
}


/* ARTICLE GRID */

.hce6-grid {
    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 16px;
}


/* ARTICLE CARD */

.hce6-card {
    min-width: 0;

    overflow: hidden;

    border: 1px solid #eee4e0;

    border-radius: 14px;

    background: #fff;

    box-shadow:
        0 8px 22px
        rgba(55, 40, 35, .045);

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.hce6-card:hover {
    transform: translateY(-4px);

    box-shadow:
        0 15px 32px
        rgba(55, 40, 35, .09);
}


/* IMAGE */

.hce6-image {
    width: 100%;
    height: 245px;

    display: block;

    overflow: hidden;

    background: #f4e9e5;
}

.hce6-image img {
    width: 100% !important;
    height: 100% !important;

    display: block;

    object-fit: cover;

    object-position: center top;

    transition:
        transform .35s ease;
}

.hce6-card:hover
.hce6-image img {
    transform: scale(1.035);
}


/* COPY */

.hce6-card-copy {
    padding: 15px 15px 17px;
}

.hce6-category {
    display: block;

    margin-bottom: 7px;

    color: #b03b67;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .12em;

    text-transform: uppercase;
}

.hce6-card-copy h3 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 19px;
    font-weight: 400;

    line-height: 1.13;
}

.hce6-card-copy h3 a {
    color: #2a2321 !important;

    text-decoration: none !important;
}

.hce6-read {
    display: inline-block;

    margin-top: 13px;

    color: #a93661 !important;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .10em;

    text-decoration: none !important;
}


/* LAPTOP */

@media (max-width: 1100px) {

    .hce6-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

}


/* MOBILE */

@media (max-width: 700px) {

    .hce6-trending {
        padding: 58px 0 64px;
    }


    .hce6-heading {
        align-items: center;
    }


    .hce6-heading-copy {
        display: none;
    }


    .hce6-topic-row {
        flex-wrap: nowrap;

        overflow-x: auto;

        padding-bottom: 7px;

        scrollbar-width: none;
    }

    .hce6-topic-row::-webkit-scrollbar {
        display: none;
    }


    .hce6-topic-row a {
        flex: 0 0 auto;
    }


    .hce6-grid {
        display: flex;

        gap: 13px;

        overflow-x: auto;

        padding: 2px 2px 14px;

        scroll-snap-type: x proximity;

        scrollbar-width: none;
    }

    .hce6-grid::-webkit-scrollbar {
        display: none;
    }


    .hce6-card {
        flex: 0 0 225px;

        scroll-snap-align: start;
    }


    .hce6-image {
        height: 260px;
    }

}
/* =========================================================
   HER CURVE EDIT — FIND YOUR BODY SHAPE
   ========================================================= */

.hce7-bodyshape {
    padding: 78px 0 84px;
    background: #fffaf8;
}


/* HEADER */

.hce7-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 45px;

    margin-bottom: 30px;
}

.hce7-kicker {
    margin: 0 0 8px;

    color: #b53b68;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .2em;
}

.hce7-heading h2 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(43px, 4.7vw, 67px);

    font-weight: 400;

    line-height: .96;

    letter-spacing: -.04em;
}

.hce7-heading h2 em {
    display: block;

    color: #b43c68;

    font-weight: 400;
}

.hce7-heading-copy {
    max-width: 355px;

    margin: 0 0 4px;

    color: #776b68;

    font-size: 11px;

    line-height: 1.55;
}


/* =========================================================
   6 SHAPE CARDS
   ========================================================= */

.hce7-shape-grid {
    display: grid;

    grid-template-columns:
        repeat(6, minmax(0, 1fr));

    gap: 13px;
}

.hce7-shape-card {
    overflow: hidden;

    border: 1px solid #eadeda;

    border-radius: 15px;

    background: #fff;

    box-shadow:
        0 8px 24px
        rgba(60, 42, 36, .045);

    text-decoration: none !important;

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.hce7-shape-card:hover {
    transform: translateY(-5px);

    box-shadow:
        0 15px 34px
        rgba(60, 42, 36, .10);
}


/* VISUAL */

.hce7-shape-visual {
    height: 235px;

    display: flex;

    align-items: center;
    justify-content: center;

    position: relative;

    overflow: hidden;

    background:
        linear-gradient(
            180deg,
            #f8e8e9 0%,
            #fff7f4 100%
        );
}


/* =========================================================
   SIMPLE BODY-SHAPE SILHOUETTES
   Later we can replace these with real body-shape models.
   ========================================================= */

.hce7-figure {
    position: relative;

    width: 105px;
    height: 190px;
}


/* HEAD */

.hce7-figure::before {
    content: "";

    position: absolute;

    left: 50%;
    top: 3px;

    width: 36px;
    height: 36px;

    transform: translateX(-50%);

    border-radius: 50%;

    background:
        linear-gradient(
            135deg,
            #d7a27f,
            #b87655
        );

    box-shadow:
        0 4px 9px
        rgba(72, 44, 35, .12);
}


/* BODY */

.hce7-figure::after {
    content: "";

    position: absolute;

    left: 50%;
    top: 45px;

    width: 100%;
    height: 140px;

    transform: translateX(-50%);

    background:
        linear-gradient(
            180deg,
            #b8466c,
            #8f2d52
        );

    border-radius:
        28px 28px
        18px 18px;
}


/* APPLE */

.hce7-figure-apple::after {
    clip-path:
        polygon(
            32% 0%,
            68% 0%,
            79% 24%,
            82% 49%,
            70% 71%,
            63% 100%,
            37% 100%,
            30% 71%,
            18% 49%,
            21% 24%
        );
}


/* PEAR */

.hce7-figure-pear::after {
    clip-path:
        polygon(
            38% 0%,
            62% 0%,
            67% 28%,
            80% 58%,
            70% 100%,
            30% 100%,
            20% 58%,
            33% 28%
        );
}


/* HOURGLASS */

.hce7-figure-hourglass::after {
    clip-path:
        polygon(
            29% 0%,
            71% 0%,
            66% 25%,
            57% 45%,
            71% 70%,
            65% 100%,
            35% 100%,
            29% 70%,
            43% 45%,
            34% 25%
        );
}


/* RECTANGLE */

.hce7-figure-rectangle::after {
    clip-path:
        polygon(
            32% 0%,
            68% 0%,
            70% 100%,
            30% 100%
        );
}


/* INVERTED TRIANGLE */

.hce7-figure-inverted-triangle::after {
    clip-path:
        polygon(
            18% 0%,
            82% 0%,
            69% 37%,
            60% 100%,
            40% 100%,
            31% 37%
        );
}


/* NOT SURE */

.hce7-unsure {
    width: 115px;
    height: 115px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #dcaabd;

    border-radius: 50%;

    background:
        rgba(255,255,255,.75);

    color: #b43c68;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 68px;

    box-shadow:
        0 12px 28px
        rgba(65, 40, 35, .08);
}


/* CARD COPY */

.hce7-shape-copy {
    min-height: 77px;

    padding: 13px 9px;

    text-align: center;

    background: #fff;
}

.hce7-shape-copy h3 {
    margin: 0;

    color: #28211f !important;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 18px;

    font-weight: 400;
}

.hce7-shape-copy p {
    margin: 5px 0 0;

    color: #807370;

    font-size: 8px;

    line-height: 1.4;
}


/* =========================================================
   BOTTOM CTA
   ========================================================= */

.hce7-footer {
    display: flex;

    align-items: center;
    justify-content: flex-end;

    gap: 15px;

    margin-top: 21px;
}

.hce7-footer p {
    margin: 0;

    color: #766966;

    font-size: 10px;
}

.hce7-footer a {
    min-height: 37px;

    display: inline-flex;

    align-items: center;

    padding: 0 18px;

    border-radius: 999px;

    background: #ad3965;

    color: #fff !important;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .07em;

    text-decoration: none !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1050px) {

    .hce7-shape-grid {
        grid-template-columns:
            repeat(3, 1fr);
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {

    .hce7-bodyshape {
        padding:
            58px 0 64px;
    }


    .hce7-heading {
        display: block;

        margin-bottom: 23px;
    }


    .hce7-heading-copy {
        margin-top: 14px;
    }


    .hce7-shape-grid {
        display: flex;

        gap: 11px;

        overflow-x: auto;

        padding:
            2px 2px 13px;

        scroll-snap-type:
            x proximity;

        scrollbar-width: none;
    }


    .hce7-shape-grid::-webkit-scrollbar {
        display: none;
    }


    .hce7-shape-card {
        flex:
            0 0 150px;

        scroll-snap-align:
            start;
    }


    .hce7-shape-visual {
        height: 190px;
    }


    .hce7-figure {
        transform:
            scale(.82);
    }


    .hce7-footer {
        justify-content:
            space-between;

        margin-top: 15px;
    }

}
/* =========================================================
   HER CURVE EDIT — STYLE OVER 50
   ========================================================= */

.hce8-over50 {
    padding: 76px 0 88px;
    background: #fff;
}


/* HEADING */

.hce8-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 35px;

    margin-bottom: 26px;
}

.hce8-kicker {
    margin: 0 0 8px;

    color: #b53c68;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .2em;
}

.hce8-heading h2 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(43px, 4.5vw, 64px);

    font-weight: 400;

    line-height: .98;

    letter-spacing: -.04em;
}

.hce8-heading h2 em {
    color: #b43c68;

    font-weight: 400;
}

.hce8-heading-copy {
    margin: 9px 0 0;

    color: #776b68;

    font-size: 11px;

    line-height: 1.5;
}

.hce8-view-all {
    flex-shrink: 0;

    color: #b33c67 !important;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .08em;

    text-decoration: none !important;
}


/* GRID */

.hce8-grid {
    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 15px;
}


/* CARD */

.hce8-card {
    overflow: hidden;

    border: 1px solid #eee2de;

    border-radius: 14px;

    background: #fff;

    box-shadow:
        0 8px 22px
        rgba(52, 39, 35, .045);

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.hce8-card:hover {
    transform: translateY(-4px);

    box-shadow:
        0 15px 32px
        rgba(52, 39, 35, .09);
}


/* IMAGE */

.hce8-image {
    width: 100%;
    height: 290px;

    display: block;

    overflow: hidden;

    background: #f5eae6;
}

.hce8-image img {
    width: 100% !important;
    height: 100% !important;

    display: block;

    object-fit: cover;
    object-position: center top;

    transition:
        transform .35s ease;
}

.hce8-card:hover
.hce8-image img {
    transform: scale(1.035);
}


/* COPY */

.hce8-card-copy {
    padding: 15px 15px 18px;
}

.hce8-label {
    display: block;

    margin-bottom: 7px;

    color: #b23c68;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .13em;
}

.hce8-card-copy h3 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 20px;
    font-weight: 400;

    line-height: 1.12;
}

.hce8-card-copy h3 a {
    color: #292220 !important;

    text-decoration: none !important;
}

.hce8-read {
    display: inline-block;

    margin-top: 13px;

    color: #ac3863 !important;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .1em;

    text-decoration: none !important;
}


/* TABLET */

@media (max-width: 1050px) {

    .hce8-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

}


/* MOBILE */

@media (max-width: 700px) {

    .hce8-over50 {
        padding: 58px 0 66px;
    }

    .hce8-heading {
        align-items: center;
    }

    .hce8-heading-copy {
        display: none;
    }

    .hce8-grid {
        display: flex;

        gap: 12px;

        overflow-x: auto;

        padding:
            2px 2px 14px;

        scroll-snap-type:
            x proximity;

        scrollbar-width: none;
    }

    .hce8-grid::-webkit-scrollbar {
        display: none;
    }

    .hce8-card {
        flex: 0 0 220px;

        scroll-snap-align: start;
    }

    .hce8-image {
        height: 265px;
    }

}
/* =========================================================
   HER CURVE EDIT — HAIR + NAILS
   ========================================================= */

.hce9-beauty {
    padding: 82px 0 92px;
    background: #fbf4f2;
}


/* MAIN HEADING */

.hce9-main-heading {
    margin-bottom: 35px;
}

.hce9-kicker {
    margin: 0 0 8px;
    color: #b43b68;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .21em;
}

.hce9-main-heading h2 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(48px, 5vw, 70px);

    font-weight: 400;

    line-height: .95;

    letter-spacing: -.045em;
}

.hce9-main-heading h2 span {
    color: #b53c69;
    font-style: italic;
}

.hce9-main-heading > div > p:last-child {
    margin: 13px 0 0;

    color: #776b68;

    font-size: 12px;
}


/* TWO COLUMNS */

.hce9-columns {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 34px;
}


/* COLUMN */

.hce9-column {
    padding: 27px;

    border: 1px solid #eadeda;

    border-radius: 22px;

    background: #fff;
}

.hce9-column-heading {
    display: flex;

    align-items: flex-end;
    justify-content: space-between;

    gap: 20px;

    margin-bottom: 21px;
}

.hce9-column-heading p {
    margin: 0 0 5px;

    color: #b23b67;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .18em;
}

.hce9-column-heading h3 {
    margin: 0;

    color: #28211f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 34px;
    font-weight: 400;

    line-height: 1;
}

.hce9-column-heading h3 em {
    color: #b33c68;
    font-weight: 400;
}

.hce9-column-heading > a {
    flex-shrink: 0;

    color: #ad3964 !important;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .08em;

    text-decoration: none !important;
}


/* CARD GRID */

.hce9-card-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 11px;
}


/* CARD */

.hce9-card {
    min-width: 0;

    overflow: hidden;

    border: 1px solid #eee3df;

    border-radius: 13px;

    background: #fff;

    transition:
        transform .22s ease,
        box-shadow .22s ease;
}

.hce9-card:hover {
    transform: translateY(-3px);

    box-shadow:
        0 13px 28px
        rgba(60, 40, 34, .09);
}


/* IMAGE */

.hce9-image {
    width: 100%;
    height: 205px;

    display: block;

    overflow: hidden;

    background: #f5e8e5;
}

.hce9-image img {
    width: 100% !important;
    height: 100% !important;

    display: block;

    object-fit: cover;
    object-position: center top;

    transition:
        transform .35s ease;
}

.hce9-card:hover
.hce9-image img {
    transform: scale(1.035);
}


/* NAIL PLACEHOLDER */

.hce9-nail-placeholder {
    width: 100%;
    height: 100%;

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    gap: 7px;

    background:
        linear-gradient(
            135deg,
            #f4d9df,
            #fff7f4
        );

    color: #b43d68;
}

.hce9-nail-placeholder span {
    font-size: 34px;
}

.hce9-nail-placeholder strong {
    font-size: 8px;

    letter-spacing: .15em;
}


/* COPY */

.hce9-card-copy {
    padding: 12px 11px 14px;
}

.hce9-card-copy > span {
    display: block;

    margin-bottom: 6px;

    color: #b33d68;

    font-size: 6.5px;
    font-weight: 700;

    letter-spacing: .12em;
}

.hce9-card-copy h4 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 17px;
    font-weight: 400;

    line-height: 1.12;
}

.hce9-card-copy h4 a {
    color: #292220 !important;

    text-decoration: none !important;
}

.hce9-explore {
    display: inline-block;

    margin-top: 10px;

    color: #ad3964 !important;

    font-size: 6.5px;
    font-weight: 700;

    letter-spacing: .09em;

    text-decoration: none !important;
}


/* TABLET */

@media (max-width: 1000px) {

    .hce9-columns {
        grid-template-columns: 1fr;
    }

}


/* MOBILE */

@media (max-width: 650px) {

    .hce9-beauty {
        padding: 58px 0 67px;
    }

    .hce9-column {
        padding: 20px;
    }

    .hce9-card-grid {
        display: flex;

        gap: 10px;

        overflow-x: auto;

        padding-bottom: 12px;

        scroll-snap-type: x proximity;

        scrollbar-width: none;
    }

    .hce9-card-grid::-webkit-scrollbar {
        display: none;
    }

    .hce9-card {
        flex: 0 0 175px;

        scroll-snap-align: start;
    }

    .hce9-image {
        height: 215px;
    }

}
/* =========================================================
   HER CURVE EDIT — SEASONAL + OCCASIONS
   ========================================================= */

.hce10-seasonal {
    padding: 82px 0 92px;
    background: #fffdfc;
}


/* HEADING */

.hce10-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 35px;

    margin-bottom: 28px;
}

.hce10-kicker {
    margin: 0 0 8px;

    color: #b43b68;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .21em;
}

.hce10-heading h2 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(45px, 4.7vw, 67px);

    font-weight: 400;

    line-height: .96;

    letter-spacing: -.04em;
}

.hce10-heading h2 span {
    color: #b43b68;
}

.hce10-heading h2 em {
    color: #b43b68;

    font-weight: 400;
}

.hce10-heading-copy {
    max-width: 560px;

    margin: 12px 0 0;

    color: #776b68;

    font-size: 11px;

    line-height: 1.55;
}

.hce10-view-all {
    flex-shrink: 0;

    color: #ad3965 !important;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .08em;

    text-decoration: none !important;
}


/* GRID */

.hce10-grid {
    display: grid;

    grid-template-columns:
        repeat(6, minmax(0, 1fr));

    gap: 14px;
}


/* CARD */

.hce10-card {
    min-width: 0;

    overflow: hidden;

    border: 1px solid #eee1dd;

    border-radius: 16px;

    background: #fff;

    box-shadow:
        0 8px 24px
        rgba(58, 40, 34, .05);

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.hce10-card:hover {
    transform: translateY(-5px);

    box-shadow:
        0 16px 34px
        rgba(58, 40, 34, .10);
}


/* IMAGE */

.hce10-image {
    position: relative;

    width: 100%;
    height: 285px;

    display: block;

    overflow: hidden;

    background: #f2e5e1;
}

.hce10-image img {
    width: 100% !important;
    height: 100% !important;

    display: block;

    object-fit: cover;
    object-position: center top;

    transition:
        transform .4s ease;
}

.hce10-card:hover
.hce10-image img {
    transform: scale(1.045);
}


/* IMAGE GRADIENT */

.hce10-image-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(30,20,18,0) 45%,
            rgba(30,20,18,.70) 100%
        );
}


/* IMAGE TEXT */

.hce10-image-text {
    position: absolute;

    left: 17px;
    right: 17px;
    bottom: 16px;

    color: #fff;
}

.hce10-image-text span {
    display: block;

    margin-bottom: 5px;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .16em;
}

.hce10-image-text h3 {
    margin: 0;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 24px;
    font-weight: 400;

    line-height: 1;
}


/* COPY */

.hce10-copy {
    min-height: 92px;

    padding: 13px 14px 15px;
}

.hce10-copy p {
    margin: 0;

    color: #766a67;

    font-size: 9px;

    line-height: 1.5;
}

.hce10-copy > a {
    display: inline-block;

    margin-top: 10px;

    color: #ae3964 !important;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .1em;

    text-decoration: none !important;
}


/* LAPTOP */

@media (max-width: 1200px) {

    .hce10-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

    .hce10-image {
        height: 320px;
    }

}


/* MOBILE */

@media (max-width: 700px) {

    .hce10-seasonal {
        padding: 58px 0 66px;
    }


    .hce10-heading {
        align-items: center;
    }


    .hce10-heading-copy {
        display: none;
    }


    .hce10-grid {
        display: flex;

        gap: 12px;

        overflow-x: auto;

        padding:
            2px 2px 14px;

        scroll-snap-type:
            x proximity;

        scrollbar-width: none;
    }


    .hce10-grid::-webkit-scrollbar {
        display: none;
    }


    .hce10-card {
        flex: 0 0 220px;

        scroll-snap-align: start;
    }


    .hce10-image {
        height: 285px;
    }

}
/* =========================================================
   HER CURVE EDIT — FINAL FIND MY LOOK CTA
   ========================================================= */

.hce11-final {
    padding: 88px 0 100px;

    background:
        linear-gradient(
            180deg,
            #fffdfc 0%,
            #f9eded 100%
        );
}


/* BIG CARD */

.hce11-card {
    min-height: 510px;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(420px, .9fr);

    overflow: hidden;

    border: 1px solid #ead9d5;

    border-radius: 30px;

    background:
        #fff;

    box-shadow:
        0 26px 70px
        rgba(63, 42, 36, .09);
}


/* =========================================================
   LEFT COPY
   ========================================================= */

.hce11-copy {
    display: flex;
    flex-direction: column;

    justify-content: center;

    padding:
        clamp(45px, 6vw, 82px);
}

.hce11-kicker {
    margin: 0 0 11px;

    color: #b33b68;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .21em;
}

.hce11-copy h2 {
    max-width: 650px;

    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(50px, 5vw, 75px);

    font-weight: 400;

    line-height: .95;

    letter-spacing: -.045em;
}

.hce11-copy h2 em {
    display: block;

    color: #b43b68;

    font-weight: 400;
}

.hce11-description {
    max-width: 590px;

    margin:
        24px 0 30px;

    color: #6f6360;

    font-size: 14px;

    line-height: 1.7;
}


/* BUTTONS */

.hce11-buttons {
    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 12px;
}

.hce11-primary,
.hce11-secondary {
    min-height: 50px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    border-radius: 999px;

    padding:
        0 25px;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .08em;

    text-decoration: none !important;
}

.hce11-primary {
    gap: 13px;

    border:
        1px solid #ae3763;

    background:
        linear-gradient(
            135deg,
            #a92f5d,
            #ca4c79
        );

    color: #fff !important;

    box-shadow:
        0 14px 30px
        rgba(177, 52, 97, .20);
}

.hce11-primary span {
    font-size: 17px;
    font-weight: 400;
}

.hce11-secondary {
    border:
        1px solid #d9c5c1;

    background: #fff;

    color: #342b29 !important;
}


/* =========================================================
   IMAGE SIDE
   ========================================================= */

.hce11-visual {
    position: relative;

    min-height: 510px;

    overflow: hidden;

    background: #f3e4df;
}

.hce11-image-main {
    position: absolute;

    inset: 0;
}

.hce11-image-main img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    /*
     * Signature model stays visible.
     */
    object-position: 67% center;
}


/* SOFT GRADIENT */

.hce11-visual::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,.13),
            rgba(255,255,255,0) 45%
        );

    pointer-events: none;
}


/* FLOATING CARD */

.hce11-floating-card {
    position: absolute;

    z-index: 2;

    right: 25px;
    bottom: 25px;

    width: 190px;

    padding:
        20px 18px;

    border:
        1px solid rgba(
            255,
            255,
            255,
            .65
        );

    border-radius: 18px;

    background:
        rgba(
            255,
            250,
            248,
            .91
        );

    backdrop-filter:
        blur(8px);

    box-shadow:
        0 18px 40px
        rgba(45, 30, 25, .13);
}

.hce11-floating-card span {
    display: block;

    margin-bottom: 8px;

    color: #b33c68;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .15em;
}

.hce11-floating-card strong {
    display: block;

    color: #2c2422;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 20px;

    font-weight: 400;

    line-height: 1.2;
}

.hce11-floating-card small {
    display: block;

    margin-top: 7px;

    color: #756864;

    font-size: 8px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 950px) {

    .hce11-card {
        grid-template-columns:
            1fr;
    }

    .hce11-visual {
        min-height: 500px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .hce11-final {
    padding: 88px 0 65px;
}


    .hce11-card {
        border-radius: 22px;
    }


    .hce11-copy {
        padding:
            38px 23px 42px;
    }


    .hce11-copy h2 {
        font-size: 45px;
    }


    .hce11-buttons {
        display: grid;

        grid-template-columns:
            1fr;
    }


    .hce11-primary,
    .hce11-secondary {
        width: 100%;
    }


    .hce11-visual {
        min-height: 420px;
    }


    .hce11-floating-card {
        right: 15px;
        bottom: 15px;

        width: 165px;
    }

}
/* =========================================================
   HER CURVE EDIT — PREMIUM FOOTER
   ========================================================= */

.hce-footer {
    position: relative;

    background: #211d1c;

    color: #fff;
}


/* =========================================================
   MAIN FOOTER
   ========================================================= */

.hce-footer-main {
    padding: 78px 0 66px;
}

.hce-footer-grid {
    display: grid;

    grid-template-columns:
        minmax(300px, 1.65fr)
        repeat(3, minmax(150px, .75fr));

    gap: clamp(35px, 5vw, 80px);
}


/* =========================================================
   BRAND
   ========================================================= */

.hce-footer-brand {
    max-width: 420px;
}

.hce-footer-logo {
    display: inline-block;

    color: #fff !important;

    text-decoration: none !important;
}

.hce-footer-logo-main {
    display: block;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 42px;

    line-height: .95;

    letter-spacing: -.04em;
}

.hce-footer-logo-main > span {
    color: #d2678e;
}

.hce-footer-logo small {
    display: block;

    margin-top: 8px;

    color: #d1c3c0;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .22em;
}

.hce-footer-about {
    max-width: 390px;

    margin: 24px 0 25px;

    color: #c8bcba;

    font-size: 12px;

    line-height: 1.75;
}


/* QUIZ LINK */

.hce-footer-quiz {
    min-height: 42px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 12px;

    padding: 0 20px;

    border-radius: 999px;

    background:
        linear-gradient(
            135deg,
            #b03363,
            #d0527e
        );

    color: #fff !important;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .1em;

    text-decoration: none !important;

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.hce-footer-quiz:hover {
    transform: translateY(-2px);

    box-shadow:
        0 12px 25px
        rgba(183, 54, 100, .25);
}

.hce-footer-quiz span {
    font-size: 16px;
}


/* =========================================================
   LINK COLUMNS
   ========================================================= */

.hce-footer-column h3 {
    margin: 3px 0 20px;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 21px;
    font-weight: 400;
}

.hce-footer-column nav {
    display: flex;

    flex-direction: column;

    align-items: flex-start;

    gap: 12px;
}

.hce-footer-column nav a {
    position: relative;

    color: #bfb4b1 !important;

    font-size: 10px;

    text-decoration: none !important;

    transition:
        color .2s ease,
        transform .2s ease;
}

.hce-footer-column nav a:hover {
    color: #fff !important;

    transform: translateX(3px);
}


/* =========================================================
   BRAND STATEMENT
   ========================================================= */

.hce-footer-statement {
    border-top:
        1px solid rgba(255,255,255,.08);

    border-bottom:
        1px solid rgba(255,255,255,.08);

    padding: 24px 0;

    text-align: center;
}

.hce-footer-statement p {
    margin: 0;

    color: #bcaeab;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .24em;
}

.hce-footer-statement span {
    color: #dc779c;
}


/* =========================================================
   FOOTER BOTTOM
   ========================================================= */

.hce-footer-bottom {
    padding: 22px 0 27px;
}

.hce-footer-bottom-inner {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 25px;
}

.hce-footer-bottom p {
    margin: 0;

    color: #8f8280;

    font-size: 8px;
}

.hce-footer-legal {
    display: flex;

    align-items: center;

    gap: 20px;
}

.hce-footer-legal a {
    color: #9e918e !important;

    font-size: 8px;

    text-decoration: none !important;
}

.hce-footer-legal a:hover {
    color: #fff !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 950px) {

    .hce-footer-grid {
        grid-template-columns:
            repeat(2, 1fr);

        gap: 50px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .hce-footer-main {
        padding:
            58px 0 48px;
    }


    .hce-footer-grid {
        grid-template-columns:
            1fr;

        gap: 39px;
    }


    .hce-footer-brand {
        max-width: none;
    }


    .hce-footer-logo-main {
        font-size: 38px;
    }


    .hce-footer-column {
        padding-top: 4px;

        border-top:
            1px solid rgba(
                255,
                255,
                255,
                .08
            );
    }


    .hce-footer-column h3 {
        margin-top: 20px;
    }


    .hce-footer-column nav {
        display: grid;

        grid-template-columns:
            repeat(2, 1fr);

        gap: 13px 18px;
    }


    .hce-footer-statement {
        padding:
            20px 15px;
    }


    .hce-footer-statement p {
        line-height: 1.8;
    }


    .hce-footer-bottom-inner {
        flex-direction: column;

        align-items: flex-start;

        gap: 14px;
    }


    .hce-footer-legal {
        flex-wrap: wrap;

        gap: 11px 18px;
    }

}
/* =========================================================
   HER CURVES EDIT — PREMIUM CATEGORY ARCHIVE
   ========================================================= */

.hcecat-page {
    background: #fff;
}


/* =========================================================
   HERO
   ========================================================= */

.hcecat-hero {
    padding: 82px 0 44px;

    background:
        linear-gradient(
            135deg,
            #fffaf8 0%,
            #f9eded 100%
        );
}

.hcecat-hero-grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1.35fr)
        minmax(280px, .65fr);

    align-items: end;

    gap: 65px;
}

.hcecat-kicker {
    margin: 0 0 10px;

    color: #b43b68;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .22em;
}

.hcecat-hero h1 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(58px, 7vw, 105px);

    font-weight: 400;

    line-height: .9;

    letter-spacing: -.055em;
}

.hcecat-description {
    max-width: 700px;

    margin-top: 22px;

    color: #6d615e;

    font-size: 14px;

    line-height: 1.7;
}

.hcecat-description p {
    margin: 0;
}


/* SIDE NOTE */

.hcecat-hero-note {
    padding: 27px;

    border:
        1px solid #ead7d4;

    border-radius: 20px;

    background:
        rgba(
            255,
            255,
            255,
            .68
        );
}

.hcecat-hero-note span {
    display: block;

    margin-bottom: 10px;

    color: #b43c68;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .18em;
}

.hcecat-hero-note p {
    margin: 0;

    color: #443936;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 23px;

    line-height: 1.25;
}


/* =========================================================
   SUBCATEGORY CHIPS
   ========================================================= */

.hcecat-subcats {
    display: flex;

    flex-wrap: wrap;

    gap: 9px;

    margin-top: 40px;
}

.hcecat-subcats a {
    min-height: 38px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    padding: 0 18px;

    border:
        1px solid #dfcdca;

    border-radius: 999px;

    background: #fff;

    color: #433936 !important;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .04em;

    text-decoration: none !important;

    transition: .2s ease;
}

.hcecat-subcats a:hover {
    border-color: #b9406c;

    color: #ad3964 !important;

    transform:
        translateY(-2px);
}


/* =========================================================
   SECTION HEADINGS
   ========================================================= */

.hcecat-section-heading {
    margin-bottom: 25px;
}

.hcecat-section-heading > div > p {
    margin: 0 0 7px;

    color: #b43c68;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .2em;
}

.hcecat-section-heading h2 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(40px, 4vw, 60px);

    font-weight: 400;

    line-height: 1;
}

.hcecat-section-heading h2 em {
    color: #b43c68;

    font-weight: 400;
}


/* =========================================================
   FEATURED STORY
   ========================================================= */

.hcecat-featured {
    padding: 72px 0 82px;

    background: #fff;
}

.hcecat-featured-card {
    display: grid;

    grid-template-columns:
        minmax(0, 1.2fr)
        minmax(340px, .8fr);

    overflow: hidden;

    border:
        1px solid #eadeda;

    border-radius: 25px;

    background: #fff;

    box-shadow:
        0 18px 50px
        rgba(59, 41, 35, .07);
}

.hcecat-featured-image {
    height: 560px;

    display: block;

    overflow: hidden;

    background: #f4e8e4;
}

.hcecat-featured-image img {
    width: 100% !important;
    height: 100% !important;

    display: block;

    object-fit: cover;

    object-position: center top;

    transition:
        transform .4s ease;
}

.hcecat-featured-card:hover
.hcecat-featured-image img {
    transform:
        scale(1.025);
}

.hcecat-featured-copy {
    display: flex;

    flex-direction: column;

    justify-content: center;

    padding:
        clamp(38px, 5vw, 68px);
}

.hcecat-post-category {
    display: block;

    margin-bottom: 10px;

    color: #b43c68;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .15em;

    text-transform: uppercase;
}

.hcecat-featured-copy h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(34px, 3.4vw, 53px);

    font-weight: 400;

    line-height: 1.02;
}

.hcecat-featured-copy h2 a {
    color: #292220 !important;

    text-decoration: none !important;
}

.hcecat-featured-copy > p {
    margin: 21px 0 0;

    color: #6f6360;

    font-size: 12px;

    line-height: 1.7;
}

.hcecat-featured-button {
    width: fit-content;

    min-height: 45px;

    display: inline-flex;

    align-items: center;

    gap: 13px;

    margin-top: 27px;

    padding: 0 20px;

    border-radius: 999px;

    background:
        linear-gradient(
            135deg,
            #aa315f,
            #ca4c79
        );

    color: #fff !important;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .08em;

    text-decoration: none !important;
}


/* PLACEHOLDER */

.hcecat-placeholder {
    width: 100%;
    height: 100%;

    display: flex;

    align-items: center;
    justify-content: center;

    background:
        linear-gradient(
            135deg,
            #f1ddda,
            #fbf2ef
        );

    color: #b9a6a2;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 25px;

    letter-spacing: .08em;
}


/* =========================================================
   LATEST POSTS
   ========================================================= */

.hcecat-latest {
    padding: 82px 0 92px;

    background: #fbf7f5;
}

.hcecat-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 24px 19px;
}


/* POST CARD */

.hcecat-card {
    overflow: hidden;

    border:
        1px solid #eadfdb;

    border-radius: 15px;

    background: #fff;

    box-shadow:
        0 7px 22px
        rgba(55, 40, 35, .045);

    transition:
        transform .24s ease,
        box-shadow .24s ease;
}

.hcecat-card:hover {
    transform:
        translateY(-4px);

    box-shadow:
        0 15px 32px
        rgba(55, 40, 35, .09);
}

.hcecat-card-image {
    width: 100%;
    height: 390px;

    display: block;

    overflow: hidden;

    background: #f4e7e3;
}

.hcecat-card-image img {
    width: 100% !important;
    height: 100% !important;

    display: block;

    object-fit: cover;

    object-position: center top;

    transition:
        transform .35s ease;
}

.hcecat-card:hover
.hcecat-card-image img {
    transform:
        scale(1.03);
}

.hcecat-card-copy {
    padding: 18px 18px 21px;
}

.hcecat-card-copy h3 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 25px;
    font-weight: 400;

    line-height: 1.08;
}

.hcecat-card-copy h3 a {
    color: #292220 !important;

    text-decoration: none !important;
}

.hcecat-card-copy > p {
    margin: 12px 0 0;

    color: #776b68;

    font-size: 10px;

    line-height: 1.6;
}

.hcecat-read {
    display: inline-block;

    margin-top: 14px;

    color: #ad3964 !important;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .1em;

    text-decoration: none !important;
}


/* =========================================================
   PAGINATION
   ========================================================= */

.hcecat-pagination {
    margin-top: 45px;
}

.hcecat-pagination .nav-links {
    display: flex;

    align-items: center;
    justify-content: center;

    flex-wrap: wrap;

    gap: 7px;
}

.hcecat-pagination .page-numbers {
    min-width: 40px;
    height: 40px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    padding: 0 12px;

    border:
        1px solid #dfd0cc;

    border-radius: 999px;

    background: #fff;

    color: #463b38;

    font-size: 8px;
    font-weight: 700;

    text-decoration: none;
}

.hcecat-pagination
.page-numbers.current {
    border-color: #ad3964;

    background: #ad3964;

    color: #fff;
}


/* =========================================================
   QUIZ CTA
   ========================================================= */

.hcecat-quiz-cta {
    padding: 82px 0;

    background: #fff;
}

.hcecat-quiz-card {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 40px;

    padding:
        48px clamp(35px, 6vw, 75px);

    border-radius: 24px;

    background:
        linear-gradient(
            135deg,
            #f5dddd,
            #fff5f2
        );
}

.hcecat-quiz-card > div > p {
    margin: 0 0 7px;

    color: #b43b68;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .18em;
}

.hcecat-quiz-card h2 {
    margin: 0;

    color: #28211f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(36px, 4vw, 58px);

    font-weight: 400;

    line-height: .97;
}

.hcecat-quiz-card h2 em {
    color: #b43b68;

    font-weight: 400;
}

.hcecat-quiz-card > div > span {
    max-width: 560px;

    display: block;

    margin-top: 13px;

    color: #6d615e;

    font-size: 11px;

    line-height: 1.6;
}

.hcecat-quiz-card > a {
    min-width: 185px;
    min-height: 49px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 12px;

    flex-shrink: 0;

    padding: 0 22px;

    border-radius: 999px;

    background:
        linear-gradient(
            135deg,
            #aa315f,
            #ca4c79
        );

    color: #fff !important;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .08em;

    text-decoration: none !important;
}


/* =========================================================
   EMPTY
   ========================================================= */

.hcecat-empty {
    padding: 70px;

    border: 1px solid #eadeda;

    border-radius: 20px;

    background: #fff;

    text-align: center;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 950px) {

    .hcecat-hero-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .hcecat-hero-note {
        max-width: 500px;
    }

    .hcecat-featured-card {
        grid-template-columns: 1fr;
    }

    .hcecat-featured-image {
        height: 520px;
    }

    .hcecat-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {

    .hcecat-hero {
        padding:
            55px 0 35px;
    }

    .hcecat-hero h1 {
        font-size: 58px;
    }

    .hcecat-hero-note {
        padding: 20px;
    }

    .hcecat-subcats {
        flex-wrap: nowrap;

        overflow-x: auto;

        padding-bottom: 8px;

        scrollbar-width: none;
    }

    .hcecat-subcats::-webkit-scrollbar {
        display: none;
    }

    .hcecat-subcats a {
        flex: 0 0 auto;
    }


    .hcecat-featured {
        padding: 55px 0 62px;
    }

    .hcecat-featured-image {
        height: 420px;
    }

    .hcecat-featured-copy {
        padding: 30px 22px 35px;
    }


    .hcecat-latest {
        padding: 58px 0 65px;
    }

    .hcecat-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .hcecat-card-image {
        height: 440px;
    }


    .hcecat-quiz-cta {
        padding: 58px 0;
    }

    .hcecat-quiz-card {
        display: block;

        padding: 35px 24px;
    }

    .hcecat-quiz-card > a {
        width: 100%;

        margin-top: 25px;
    }

}
/* =========================================================
   HER CURVES EDIT — PREMIUM SINGLE ARTICLE
   ========================================================= */

.hcesingle {
    background: #fff;
}


/* =========================================================
   HERO
   ========================================================= */

.hcesingle-hero {
    padding: 55px 0 50px;

    background:
        linear-gradient(
            135deg,
            #fffaf8 0%,
            #f9eeee 100%
        );
}


/* BREADCRUMBS */

.hcesingle-breadcrumbs {
    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 8px;

    margin-bottom: 40px;

    color: #9b8c88;

    font-size: 8px;

    letter-spacing: .04em;
}

.hcesingle-breadcrumbs a {
    color: #8c7c78 !important;

    text-decoration: none !important;
}

.hcesingle-breadcrumbs strong {
    max-width: 430px;

    overflow: hidden;

    color: #5b504d;

    font-weight: 500;

    text-overflow: ellipsis;

    white-space: nowrap;
}


/* TITLE */

.hcesingle-title-wrap {
    max-width: 1050px;

    margin: 0 auto;

    text-align: center;
}

.hcesingle-category {
    margin: 0 0 12px;

    color: #b43b68;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .2em;

    text-transform: uppercase;
}

.hcesingle-title-wrap h1 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(52px, 6vw, 88px);

    font-weight: 400;

    line-height: .98;

    letter-spacing: -.05em;
}

.hcesingle-deck {
    max-width: 750px;

    margin: 24px auto 0;

    color: #6f6360;

    font-size: 15px;

    line-height: 1.65;
}


/* META */

.hcesingle-meta {
    display: flex;

    align-items: center;
    justify-content: center;

    flex-wrap: wrap;

    gap: 10px;

    margin-top: 25px;

    color: #8b7d79;

    font-size: 9px;
}

.hcesingle-meta strong {
    color: #493e3b;
}

.hcesingle-dot {
    color: #c18ba0;
}


/* =========================================================
   FEATURED IMAGE
   ========================================================= */

.hcesingle-featured {
    padding: 45px 0 0;

    background: #fff;
}

.hcesingle-featured figure {
    margin: 0;
}

.hcesingle-featured-img {
    width: 100%;
    max-height: 760px;

    display: block;

    object-fit: cover;

    object-position: center;

    border-radius: 22px;
}

.hcesingle-featured figcaption {
    margin-top: 9px;

    color: #948581;

    font-size: 8px;

    text-align: center;
}


/* =========================================================
   BODY
   ========================================================= */

.hcesingle-body {
    padding: 70px 0 95px;
}

.hcesingle-layout {
    max-width: 1370px;

    display: grid;

    grid-template-columns:
        170px
        minmax(0, 760px)
        320px;

    justify-content: center;

    align-items: start;

    gap: 34px;

    margin: 0 auto;

}


/* =========================================================
   SIDEBAR
   ========================================================= */

.hcesingle-side {
    align-self: start;

    position: sticky;

    top: 120px;

    display: flex;

    flex-direction: column;

    gap: 15px;
}

.hcesingle-side-card,
.hcesingle-quiz-side {
    padding: 21px;

    border: 1px solid #eadeda;

    border-radius: 16px;

    background: #fff;
}

.hcesingle-side-card > span {
    display: block;

    margin-bottom: 8px;

    color: #b33c68;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .17em;
}

.hcesingle-side-card p {
    margin: 0;

    color: #716562;

    font-size: 10px;

    line-height: 1.55;
}


/* QUIZ CARD */

.hcesingle-quiz-side {
    background:
        linear-gradient(
            145deg,
            #f5dddd,
            #fff8f5
        );

    text-decoration: none !important;
}

.hcesingle-quiz-side small {
    display: block;

    color: #ad3964;

    font-size: 6px;
    font-weight: 700;

    letter-spacing: .13em;
}

.hcesingle-quiz-side strong {
    display: block;

    margin: 8px 0 6px;

    color: #29211f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 23px;

    font-weight: 400;
}

.hcesingle-quiz-side > span {
    color: #a63762;

    font-size: 8px;
}


/* =========================================================
   ARTICLE CONTENT
   ========================================================= */

.hcesingle-content {
    min-width: 0;
}


/* DISCLOSURE */

.hcesingle-disclosure {
    margin-bottom: 33px;

    padding: 14px 17px;

    border-left: 3px solid #bb456f;

    background: #fff6f5;

    color: #766a67;

    font-size: 9px;

    line-height: 1.55;
}

.hcesingle-disclosure strong {
    color: #4b3e3b;
}


/* TEXT */

.hcesingle-entry {
    color: #403735;

    font-size: 17px;

    line-height: 1.85;
}

.hcesingle-entry > p {
    margin: 0 0 25px;
}

.hcesingle-entry h2 {
    margin:
        55px 0 21px;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(34px, 4vw, 48px);

    font-weight: 400;

    line-height: 1.05;

    letter-spacing: -.035em;
}

.hcesingle-entry h3 {
    margin:
        38px 0 16px;

    color: #292220;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 30px;

    font-weight: 400;

    line-height: 1.12;
}

.hcesingle-entry h4 {
    margin:
        30px 0 13px;

    color: #332a27;

    font-size: 18px;
}

.hcesingle-entry a {
    color: #a93461;

    text-decoration:
        underline;

    text-underline-offset:
        3px;
}


/* LISTS */

.hcesingle-entry ul,
.hcesingle-entry ol {
    margin:
        22px 0 28px;

    padding-left: 27px;
}

.hcesingle-entry li {
    margin-bottom: 10px;
}


/* ARTICLE IMAGES */

.hcesingle-entry img {
    max-width: 100%;
    height: auto;

    border-radius: 14px;
}

.hcesingle-entry figure {
    margin:
        38px 0;
}

.hcesingle-entry figcaption {
    margin-top: 8px;

    color: #938582;

    font-size: 9px;

    text-align: center;
}


/* QUOTES */

.hcesingle-entry blockquote {
    margin:
        42px 0;

    padding:
        12px 0 12px 27px;

    border-left:
        3px solid #ba426d;

    color: #594b47;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 25px;

    font-style: italic;

    line-height: 1.45;
}


/* TABLES */

.hcesingle-entry table {
    width: 100%;

    margin:
        35px 0;

    border-collapse:
        collapse;

    font-size: 12px;
}

.hcesingle-entry th,
.hcesingle-entry td {
    padding: 12px;

    border:
        1px solid #eadeda;

    text-align: left;
}

.hcesingle-entry th {
    background: #fbefef;

    color: #473b38;
}


/* =========================================================
   PRODUCT / SHOP LINKS
   ========================================================= */

.hcesingle-entry a[href*="amazon.com"],
.hcesingle-entry a[href*="amzn.to"] {
    display: inline-flex;

    align-items: center;

    min-height: 43px;

    margin:
        8px 0 16px;

    padding:
        0 19px;

    border-radius:
        999px;

    background:
        #211d1c;

    color:
        #fff !important;

    font-size:
        9px;

    font-weight:
        700;

    letter-spacing:
        .05em;

    text-decoration:
        none !important;
}


/* =========================================================
   END CTA
   ========================================================= */

.hcesingle-end-cta {
    margin-top: 65px;

    padding:
        42px;

    border-radius:
        22px;

    background:
        linear-gradient(
            135deg,
            #f4dddd,
            #fff7f4
        );
}

.hcesingle-end-cta > p {
    margin: 0 0 8px;

    color: #b43b68;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .18em;
}

.hcesingle-end-cta h2 {
    margin: 0;

    color: #28211f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 37px;

    font-weight: 400;

    line-height: 1.05;
}

.hcesingle-end-cta h2 em {
    color: #b43b68;

    font-weight: 400;
}

.hcesingle-end-cta > a {
    min-height: 46px;

    display: inline-flex;

    align-items: center;

    gap: 13px;

    margin-top: 24px;

    padding:
        0 21px;

    border-radius:
        999px;

    background:
        linear-gradient(
            135deg,
            #aa315f,
            #ca4c79
        );

    color:
        #fff !important;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: .08em;

    text-decoration:
        none !important;
}


/* =========================================================
   RELATED ARTICLES
   ========================================================= */

.hcesingle-related {
    padding:
        80px 0 95px;

    background:
        #fbf6f4;
}

.hcesingle-related-heading {
    margin-bottom:
        27px;
}

.hcesingle-related-heading p {
    margin:
        0 0 7px;

    color:
        #b43b68;

    font-size:
        8px;

    font-weight:
        700;

    letter-spacing:
        .2em;
}

.hcesingle-related-heading h2 {
    margin: 0;

    color:
        #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        52px;

    font-weight:
        400;

    line-height:
        1;
}

.hcesingle-related-heading h2 em {
    color:
        #b43b68;

    font-weight:
        400;
}

.hcesingle-related-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap:
        18px;
}

.hcesingle-related-card {
    overflow:
        hidden;

    border:
        1px solid #eadeda;

    border-radius:
        15px;

    background:
        #fff;
}

.hcesingle-related-image {
    height:
        330px;

    display:
        block;

    overflow:
        hidden;

    background:
        #f1e5e1;
}

.hcesingle-related-image img {
    width:
        100% !important;

    height:
        100% !important;

    display:
        block;

    object-fit:
        cover;

    object-position:
        center top;

    transition:
        transform .35s ease;
}

.hcesingle-related-card:hover
.hcesingle-related-image img {
    transform:
        scale(1.035);
}

.hcesingle-related-copy {
    padding:
        17px;
}

.hcesingle-related-copy > span {
    display:
        block;

    margin-bottom:
        7px;

    color:
        #b43c68;

    font-size:
        7px;

    font-weight:
        700;

    letter-spacing:
        .13em;
}

.hcesingle-related-copy h3 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        23px;

    font-weight:
        400;

    line-height:
        1.1;
}

.hcesingle-related-copy h3 a {
    color:
        #292220 !important;

    text-decoration:
        none !important;
}

.hcesingle-related-read {
    display:
        inline-block;

    margin-top:
        13px;

    color:
        #ad3964 !important;

    font-size:
        7px;

    font-weight:
        700;

    letter-spacing:
        .09em;

    text-decoration:
        none !important;
}

.hcesingle-related-placeholder {
    width:
        100%;

    height:
        100%;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    background:
        #f4e5e1;

    color:
        #baa6a1;

    font-family:
        Georgia,
        "Times New Roman",
        serif;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 950px) {

    .hcesingle-layout {
        grid-template-columns:
            1fr;

        max-width:
            760px;
    }

    .hcesingle-side {
        position:
            static;

        display:
            grid;

        grid-template-columns:
            repeat(2, 1fr);
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {

    .hcesingle-hero {
        padding:
            40px 0 42px;
    }

    .hcesingle-breadcrumbs {
        margin-bottom:
            27px;
    }

    .hcesingle-title-wrap h1 {
        font-size:
            47px;
    }

    .hcesingle-deck {
        font-size:
            14px;
    }


    .hcesingle-featured {
        padding-top:
            25px;
    }

    .hcesingle-featured-img {
        min-height:
            380px;

        object-fit:
            cover;

        border-radius:
            16px;
    }


    .hcesingle-body {
        padding:
            48px 0 65px;
    }

    .hcesingle-layout {
        gap:
            35px;
    }

    .hcesingle-side {
        grid-template-columns:
            1fr;
    }


    .hcesingle-entry {
        font-size:
            16px;
    }

    .hcesingle-entry h2 {
        font-size:
            35px;
    }

    .hcesingle-entry h3 {
        font-size:
            27px;
    }


    .hcesingle-end-cta {
        padding:
            30px 22px;
    }

    .hcesingle-end-cta h2 {
        font-size:
            31px;
    }


    .hcesingle-related {
        padding:
            58px 0 68px;
    }

    .hcesingle-related-heading h2 {
        font-size:
            42px;
    }

    .hcesingle-related-grid {
        display:
            flex;

        gap:
            12px;

        overflow-x:
            auto;

        padding-bottom:
            14px;

        scrollbar-width:
            none;
    }

    .hcesingle-related-grid::-webkit-scrollbar {
        display:
            none;
    }

    .hcesingle-related-card {
        flex:
            0 0 245px;
    }

    .hcesingle-related-image {
        height:
            290px;
    }

}
/* =========================================================
   ARTICLE TABLE OF CONTENTS
   ========================================================= */

.hcesingle-toc {
    margin:
        0 0 42px;

    overflow:
        hidden;

    border:
        1px solid #eadbd8;

    border-radius:
        17px;

    background:
        #fff;
}


/* HEADER */

.hcesingle-toc-toggle {
    width:
        100%;

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        20px;

    padding:
        20px 22px;

    border:
        0;

    background:
        linear-gradient(
            135deg,
            #fff7f5,
            #f9e8e9
        );

    cursor:
        pointer;

    text-align:
        left;
}


.hcesingle-toc-toggle span {
    display:
        block;
}


.hcesingle-toc-toggle small {
    display:
        block;

    margin-bottom:
        4px;

    color:
        #b43b68;

    font-size:
        7px;

    font-weight:
        700;

    letter-spacing:
        .18em;
}


.hcesingle-toc-toggle strong {
    display:
        block;

    color:
        #28211f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        25px;

    font-weight:
        400;
}


.hcesingle-toc-toggle b {
    width:
        32px;

    height:
        32px;

    flex:
        0 0 32px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    border:
        1px solid #ddb9c6;

    border-radius:
        50%;

    color:
        #b43b68;

    font-size:
        20px;

    font-weight:
        400;
}


/* LINKS */

.hcesingle-toc-links {
    display:
        grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap:
        0;

    padding:
        12px 22px 18px;
}


.hcesingle-toc-links a {
    position:
        relative;

    padding:
        10px 12px 10px 19px;

    color:
        #554946 !important;

    font-size:
        10px;

    line-height:
        1.45;

    text-decoration:
        none !important;

    transition:
        color .2s ease,
        transform .2s ease;
}


.hcesingle-toc-links a::before {
    content:
        "";

    position:
        absolute;

    left:
        2px;

    top:
        16px;

    width:
        5px;

    height:
        5px;

    border-radius:
        50%;

    background:
        #bd4771;
}


.hcesingle-toc-links a:hover {
    color:
        #ad3964 !important;

    transform:
        translateX(2px);
}


/* COLLAPSED */

.hcesingle-toc.is-collapsed
.hcesingle-toc-links {
    display:
        none;
}


/* MOBILE */

@media (max-width: 650px) {

    .hcesingle-toc {
        margin-bottom:
            32px;
    }


    .hcesingle-toc-toggle {
        padding:
            17px 18px;
    }


    .hcesingle-toc-toggle strong {
        font-size:
            22px;
    }


    .hcesingle-toc-links {
        grid-template-columns:
            1fr;

        padding:
            10px 17px 16px;
    }

}
/* =========================================================
   HER CURVES EDIT — AMAZON PRODUCT CARD
   ========================================================= */

.hce-product-card {
    display: grid;

    grid-template-columns:
        220px minmax(0, 1fr);

    gap: 28px;

    margin:
        42px 0;

    padding: 20px;

    border:
        1px solid #eadbd7;

    border-radius: 20px;

    background:
        linear-gradient(
            135deg,
            #fff 0%,
            #fff9f7 100%
        );

    box-shadow:
        0 13px 34px
        rgba(60, 42, 36, .06);
}


/* IMAGE */

.hce-product-image {
    position: relative;

    min-height: 250px;

    overflow: hidden;

    border-radius: 14px;

    background: #f7eeeb;
}

.hce-product-image > a {
    width: 100%;
    height: 100%;

    display: block;
}

.hce-product-image img {
    width: 100% !important;
    height: 100% !important;

    display: block;

    object-fit: cover;

    border-radius: 14px !important;
}


/* BADGE */

.hce-product-badge {
    position: absolute;

    z-index: 2;

    left: 11px;
    top: 11px;

    padding:
        6px 10px;

    border-radius:
        999px;

    background:
        #b63c69;

    color:
        #fff;

    font-size:
        7px;

    font-weight:
        700;

    letter-spacing:
        .1em;
}


/* CONTENT */

.hce-product-content {
    align-self: center;
}

.hce-product-eyebrow {
    margin:
        0 0 8px !important;

    color:
        #b43b68;

    font-size:
        8px !important;

    font-weight:
        700;

    letter-spacing:
        .18em;
}

.hcesingle-entry
.hce-product-content h3 {
    margin:
        0 !important;

    color:
        #27201e;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        30px;

    font-weight:
        400;

    line-height:
        1.08;
}

.hce-product-description {
    margin:
        13px 0 18px !important;

    color:
        #716562;

    font-size:
        12px !important;

    line-height:
        1.65 !important;
}


/* SHOP BUTTON */

.hcesingle-entry
.hce-product-button {
    width:
        fit-content;

    min-height:
        48px;

    display:
        inline-flex;

    align-items:
        center;

    gap:
        15px;

    margin:
        0 !important;

    padding:
        0 20px;

    border-radius:
        999px;

    background:
        #211d1c;

    color:
        #fff !important;

    text-decoration:
        none !important;

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.hce-product-button:hover {
    transform:
        translateY(-2px);

    box-shadow:
        0 12px 25px
        rgba(40, 30, 27, .15);
}

.hce-product-button span {
    color:
        #d8c7c3;

    font-size:
        8px;
}

.hce-product-button strong {
    color:
        #fff;

    font-size:
        8px;

    letter-spacing:
        .07em;
}


/* DISCLOSURE */

.hce-product-note {
    display:
        block;

    margin-top:
        11px;

    color:
        #9a8b87;

    font-size:
        7px;

    line-height:
        1.45;
}


/* MOBILE */

@media (max-width: 650px) {

    .hce-product-card {
        grid-template-columns:
            1fr;

        gap:
            20px;

        margin:
            32px 0;

        padding:
            15px;
    }


    .hce-product-image {
        height:
            360px;
    }


    .hcesingle-entry
    .hce-product-content h3 {
        font-size:
            27px;
    }


    .hcesingle-entry
    .hce-product-button {
        width:
            100%;

        justify-content:
            center;
    }

}
/* =========================================================
   HER CURVES EDIT — LIVE PINTEREST ARTICLE SIDEBAR
   ========================================================= */

.hcesingle-pinterest {
    min-width: 0;

    align-self: start;

    position: sticky;

    top: 105px;
}


.hcesingle-pinterest-card {
    overflow: hidden;

    padding: 17px;

    border:
        1px solid #eadeda;

    border-radius: 18px;

    background: #fff;

    box-shadow:
        0 12px 35px
        rgba(55, 40, 35, .06);
}


/* HEADING */

.hcesingle-pinterest-heading {
    display: flex;

    align-items: center;

    gap: 11px;

    margin-bottom: 12px;
}


.hcesingle-pinterest-icon {
    width: 38px;
    height: 38px;

    flex:
        0 0 38px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #e60023;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 22px;

    font-weight: 700;
}


.hcesingle-pinterest-heading small {
    display: block;

    margin-bottom: 3px;

    color: #b43b68;

    font-size: 6px;

    font-weight: 700;

    letter-spacing: .16em;
}


.hcesingle-pinterest-heading h3 {
    margin: 0;

    color: #2b2321;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 17px;

    font-weight: 400;

    line-height: 1.05;
}


.hcesingle-pinterest-heading h3 span {
    display: block;

    color: #776966;

    font-family:
        Arial,
        sans-serif;

    font-size: 8px;

    font-weight: 400;

    margin-top: 3px;
}


/* COPY */

.hcesingle-pinterest-copy {
    margin: 0 0 15px;

    color: #756865;

    font-size: 9px;

    line-height: 1.5;
}


/* PINTEREST LIVE WIDGET */

.hcesingle-pinterest-widget {
    width: 100%;

    min-height: 500px;

    overflow: hidden;

    border-radius: 13px;

    background: #faf6f4;
}


.hcesingle-pinterest-widget > span,
.hcesingle-pinterest-widget iframe {
    max-width: 100% !important;
}


/* FOLLOW BUTTON */

.hcesingle-pinterest-follow {
    min-height: 41px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-top: 14px;

    border-radius: 999px;

    background: #e60023;

    color: #fff !important;

    font-size: 7px;

    font-weight: 700;

    letter-spacing: .09em;

    text-decoration: none !important;

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}


.hcesingle-pinterest-follow:hover {
    transform: translateY(-2px);

    box-shadow:
        0 10px 24px
        rgba(230, 0, 35, .16);
}


/* =========================================================
   MEDIUM DESKTOP
   Hide the small left sidebar first,
   but KEEP Pinterest visible.
   ========================================================= */

@media (max-width: 1250px) {

    .hcesingle-layout {
        max-width: 1100px;

        grid-template-columns:
            minmax(0, 740px)
            300px;

        gap: 32px;
    }


    .hcesingle-side {
        display: none;
    }

}


/* =========================================================
   TABLET / MOBILE
   Pinterest sidebar disappears because the screen
   is too narrow. Pinterest Save buttons still work
   on article imagery.
   ========================================================= */

@media (max-width: 950px) {

    .hcesingle-layout {
        display: block;

        max-width: 760px;
    }


    .hcesingle-pinterest {
        display: none;
    }

}

/* =========================================================
   HER CURVES EDIT — SINGLE ARTICLE RESPONSIVE LOCK
   Final desktop / laptop / tablet / mobile rules.
   Keep this block at the VERY BOTTOM of style.css.
   ========================================================= */

/* ---------- SAFE BASE ---------- */

.hcesingle,
.hcesingle * {
    min-width: 0;
}

.hcesingle img {
    max-width: 100%;
}

.hcesingle-title-wrap {
    max-width: 980px;
}

.hcesingle-title-wrap h1 {
    font-size: clamp(48px, 5.5vw, 78px);
    line-height: 1;
}

.hcesingle-deck {
    max-width: 720px;
    font-size: 15px;
    line-height: 1.7;
}


/* ---------- FEATURED IMAGE: SHOW THE FULL IMAGE ---------- */

.hcesingle-featured {
    padding-top: 38px;
}

.hcesingle-featured figure {
    width: 100%;
    margin: 0;
}

.hcesingle-featured-img {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    display: block;
    object-fit: contain !important;
    object-position: center center !important;
    border-radius: 22px;
}


/* ---------- LARGE DESKTOP: 3 COLUMNS ---------- */

.hcesingle-layout {
    width: 100%;
    max-width: 1256px;
    margin: 0 auto;

    display: grid !important;
    grid-template-columns:
        180px
        minmax(0, 740px)
        280px !important;

    align-items: start !important;
    justify-content: center;
    gap: 28px !important;
}

.hcesingle-content {
    width: 100%;
    min-width: 0;
}

.hcesingle-side,
.hcesingle-pinterest {
    align-self: start;
    position: sticky;
    top: 108px;
}


/* ---------- LEFT SIDEBAR READABILITY ---------- */

.hcesingle-side {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.hcesingle-side-card,
.hcesingle-quiz-side {
    width: 100%;
    padding: 22px 18px;
    border-radius: 18px;
}

.hcesingle-side-card > span,
.hcesingle-quiz-side small {
    font-size: 8px;
    line-height: 1.4;
    letter-spacing: .14em;
}

.hcesingle-side-card p {
    margin: 10px 0 0;
    color: #615754;
    font-size: 12.5px;
    line-height: 1.65;
}

.hcesingle-quiz-side strong {
    margin: 10px 0 8px;
    font-size: 27px;
    line-height: 1.12;
}

.hcesingle-quiz-side > span {
    font-size: 9.5px;
    line-height: 1.45;
}


/* ---------- ARTICLE READING ---------- */

.hcesingle-disclosure {
    margin-bottom: 30px;
    padding: 15px 18px;
    font-size: 11px;
    line-height: 1.6;
}

.hcesingle-entry {
    width: 100%;
    max-width: 740px;
    margin: 0 auto;

    color: #403735;
    font-size: 17px;
    line-height: 1.82;

    overflow-wrap: anywhere;
    word-break: normal;
}

.hcesingle-entry > p,
.hcesingle-entry p {
    margin-top: 0;
    margin-bottom: 1.35em;
}

.hcesingle-entry h2 {
    margin: 50px 0 18px;
    font-size: clamp(32px, 3vw, 42px);
    line-height: 1.12;
}

.hcesingle-entry h3 {
    margin: 35px 0 14px;
    font-size: 27px;
    line-height: 1.17;
}

.hcesingle-entry h4 {
    font-size: 19px;
    line-height: 1.25;
}

.hcesingle-entry figure {
    max-width: 100%;
    margin: 34px 0;
}

.hcesingle-entry img {
    width: auto;
    max-width: 100%;
    height: auto !important;
    margin-left: auto;
    margin-right: auto;
    border-radius: 14px;
}

.hcesingle-entry iframe,
.hcesingle-entry video,
.hcesingle-entry embed {
    max-width: 100%;
}

.hcesingle-entry table {
    width: 100%;
    max-width: 100%;
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}


/* ---------- TABLE OF CONTENTS ---------- */

.hcesingle-toc {
    margin-bottom: 38px;
    border-radius: 19px;
}

.hcesingle-toc-toggle {
    padding: 22px 24px;
}

.hcesingle-toc-toggle small {
    font-size: 8px;
}

.hcesingle-toc-toggle strong {
    font-size: 28px;
    line-height: 1.15;
}

.hcesingle-toc-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 24px;
    padding: 16px 24px 22px;
}

.hcesingle-toc-links a {
    padding: 9px 8px 9px 18px;
    color: #504744 !important;
    font-size: 12px;
    line-height: 1.5;
}

.hcesingle-toc-links a::before {
    top: 15px;
}


/* ---------- PINTEREST SIDEBAR ---------- */

.hcesingle-pinterest {
    width: 100%;
    min-width: 0;
}

.hcesingle-pinterest-card {
    width: 100%;
    max-width: 280px;
    padding: 18px;
    border-radius: 19px;
}

.hcesingle-pinterest-heading {
    gap: 10px;
}

.hcesingle-pinterest-icon {
    width: 40px;
    height: 40px;
    flex-basis: 40px;
    font-size: 23px;
}

.hcesingle-pinterest-heading small {
    font-size: 7px;
}

.hcesingle-pinterest-heading h3 {
    font-size: 19px;
    line-height: 1.05;
}

.hcesingle-pinterest-heading h3 span {
    font-size: 9px;
}

.hcesingle-pinterest-copy {
    margin-bottom: 13px;
    color: #655b58;
    font-size: 11.5px;
    line-height: 1.6;
}

.hcesingle-pinterest-widget {
    width: 100%;
    min-height: 330px;
    max-height: 360px;
    margin: 0 auto;
    overflow: hidden;
    border-radius: 14px;
    background: #faf5f3;
}

.hcesingle-pinterest-widget > span,
.hcesingle-pinterest-widget iframe {
    width: 100% !important;
    max-width: 100% !important;
}

.hcesingle-pinterest-follow {
    min-height: 43px;
    margin-top: 13px;
    font-size: 8px;
}


/* ---------- END CTA ---------- */

.hcesingle-end-cta {
    margin-top: 58px;
    padding: 36px;
}

.hcesingle-end-cta h2 {
    font-size: 34px;
    line-height: 1.08;
}


/* ---------- RELATED POSTS ---------- */

.hcesingle-related-grid {
    gap: 18px;
}

.hcesingle-related-image {
    height: 320px;
}

.hcesingle-related-copy h3 {
    font-size: 22px;
}


/* =========================================================
   LAPTOP — 1021px to 1250px
   Hide the small left rail. Keep article + Pinterest.
   ========================================================= */

@media (max-width: 1250px) and (min-width: 1021px) {

    .hcesingle-layout {
        max-width: 1040px;
        grid-template-columns:
            minmax(0, 730px)
            280px !important;
        gap: 30px !important;
    }

    .hcesingle-side {
        display: none !important;
    }

    .hcesingle-entry {
        max-width: 730px;
    }
}


/* =========================================================
   TABLET — 701px to 1020px
   Reading first. Supporting cards follow below.
   ========================================================= */

@media (max-width: 1020px) {

    .hcesingle-body {
        padding-top: 52px;
        padding-bottom: 76px;
    }

    .hcesingle-layout {
        max-width: 820px;
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }

    .hcesingle-content {
        grid-column: 1 !important;
        grid-row: 1 !important;
    }

    .hcesingle-side {
        grid-column: 1 !important;
        grid-row: 2 !important;

        position: static !important;

        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .hcesingle-pinterest {
        grid-column: 1 !important;
        grid-row: 3 !important;

        position: static !important;
        margin-top: 4px;
    }

    .hcesingle-pinterest-card {
        max-width: 620px;
        margin: 0 auto;
    }

    .hcesingle-pinterest-widget {
        max-width: 420px;
        min-height: 310px;
        max-height: 340px;
    }

    .hcesingle-entry {
        max-width: 760px;
    }

    .hcesingle-featured {
        padding-top: 30px;
    }

    .hcesingle-title-wrap h1 {
        font-size: clamp(44px, 7vw, 62px);
    }

    .hcesingle-related-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
    }

    .hcesingle-related-image {
        height: 280px;
    }
}


/* =========================================================
   MOBILE — 700px and below
   Full-width reading, no cropping, no horizontal overflow.
   ========================================================= */

@media (max-width: 700px) {

    .hcesingle {
        overflow-x: clip;
    }

    .hcesingle-hero {
        padding: 34px 0 36px;
    }

    .hcesingle-breadcrumbs {
        gap: 6px;
        margin-bottom: 22px;
        font-size: 8px;
        line-height: 1.45;
    }

    .hcesingle-breadcrumbs strong {
        max-width: 100%;
        white-space: normal;
    }

    .hcesingle-title-wrap h1 {
        font-size: clamp(34px, 10.5vw, 44px);
        line-height: 1.03;
        letter-spacing: -.035em;
    }

    .hcesingle-category {
        margin-bottom: 9px;
        font-size: 8px;
    }

    .hcesingle-deck {
        margin-top: 17px;
        font-size: 14px;
        line-height: 1.62;
    }

    .hcesingle-meta {
        gap: 7px;
        margin-top: 18px;
        font-size: 8.5px;
    }

    .hcesingle-featured {
        padding-top: 22px;
    }

    .hcesingle-featured .hce-container {
        width: min(calc(100% - 24px), var(--hce-container));
    }

    .hcesingle-featured-img {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        object-fit: contain !important;
        border-radius: 15px;
    }

    .hcesingle-body {
        padding: 40px 0 58px;
    }

    .hcesingle-layout {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 26px !important;
    }

    .hcesingle-disclosure {
        margin-bottom: 24px;
        padding: 13px 14px;
        font-size: 10.5px;
    }

    .hcesingle-entry {
        max-width: 100%;
        font-size: 16.5px;
        line-height: 1.78;
    }

    .hcesingle-entry > p,
    .hcesingle-entry p {
        margin-bottom: 1.25em;
    }

    .hcesingle-entry h2 {
        margin: 40px 0 15px;
        font-size: clamp(28px, 8.5vw, 34px);
        line-height: 1.14;
    }

    .hcesingle-entry h3 {
        margin: 30px 0 12px;
        font-size: 24px;
        line-height: 1.18;
    }

    .hcesingle-entry h4 {
        font-size: 18px;
    }

    .hcesingle-entry ul,
    .hcesingle-entry ol {
        padding-left: 21px;
    }

    .hcesingle-entry blockquote {
        margin: 32px 0;
        padding-left: 18px;
        font-size: 21px;
    }

    .hcesingle-entry figure {
        margin: 28px 0;
    }

    .hcesingle-entry img {
        max-width: 100% !important;
        height: auto !important;
        border-radius: 12px;
    }

    .hcesingle-toc {
        margin-bottom: 28px;
        border-radius: 16px;
    }

    .hcesingle-toc-toggle {
        padding: 17px 16px;
    }

    .hcesingle-toc-toggle strong {
        font-size: 23px;
    }

    .hcesingle-toc-toggle b {
        width: 30px;
        height: 30px;
        flex-basis: 30px;
        font-size: 18px;
    }

    .hcesingle-toc-links {
        grid-template-columns: 1fr;
        gap: 0;
        padding: 9px 14px 15px;
    }

    .hcesingle-toc-links a {
        padding: 9px 8px 9px 18px;
        font-size: 11.5px;
        line-height: 1.5;
    }

    .hcesingle-side {
        grid-template-columns: 1fr !important;
        gap: 12px;
    }

    .hcesingle-side-card,
    .hcesingle-quiz-side {
        padding: 19px 18px;
    }

    .hcesingle-side-card p {
        font-size: 13px;
    }

    .hcesingle-quiz-side strong {
        font-size: 26px;
    }

    .hcesingle-pinterest-card {
        max-width: 100%;
        padding: 17px;
    }

    .hcesingle-pinterest-copy {
        font-size: 12px;
    }

    .hcesingle-pinterest-widget {
        max-width: 360px;
        min-height: 285px;
        max-height: 315px;
    }

    .hcesingle-end-cta {
        margin-top: 48px;
        padding: 27px 20px;
        border-radius: 18px;
    }

    .hcesingle-end-cta h2 {
        font-size: 29px;
    }

    .hcesingle-end-cta > a {
        width: 100%;
        justify-content: center;
    }

    .hcesingle-related {
        padding: 52px 0 62px;
    }

    .hcesingle-related-heading h2 {
        font-size: 38px;
    }

    .hcesingle-related-grid {
        display: flex;
        gap: 12px;
        overflow-x: auto;
        padding: 2px 2px 14px;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
    }

    .hcesingle-related-grid::-webkit-scrollbar {
        display: none;
    }

    .hcesingle-related-card {
        flex: 0 0 82%;
        max-width: 300px;
        scroll-snap-align: start;
    }

    .hcesingle-related-image {
        height: 300px;
    }

    .hcesingle-related-copy h3 {
        font-size: 21px;
    }
}


/* =========================================================
   SMALL PHONE — 420px and below
   ========================================================= */

@media (max-width: 420px) {

    .hcesingle-title-wrap h1 {
        font-size: 36px;
    }

    .hcesingle-entry {
        font-size: 16px;
    }

    .hcesingle-featured .hce-container {
        width: calc(100% - 18px);
    }

    .hcesingle-pinterest-widget {
        min-height: 260px;
        max-height: 290px;
    }

    .hcesingle-related-card {
        flex-basis: 86%;
    }
}



/* =========================================================
   HER CURVES EDIT — HOMEPAGE FINAL POLISH
   Readability + dual style tools + Pinterest CTA
   ========================================================= */

.hce3-eyebrow,
.hce5-kicker,
.hce6-kicker,
.hce7-kicker,
.hce8-kicker,
.hce9-kicker,
.hce10-kicker,
.hce11-kicker {
    font-size: 11px !important;
    font-weight: 800 !important;
}

.hce3-button,
.hce5-start-button,
.hce11-primary,
.hce11-secondary {
    min-height: 52px;
    font-size: 12px !important;
    font-weight: 800 !important;
}

.hce4-view-all,
.hce6-view-all,
.hce8-view-all,
.hce9-column-heading > a,
.hce10-view-all {
    font-size: 11px !important;
    font-weight: 800 !important;
}

.hce4-shop-card-copy {
    min-height: 78px !important;
    padding: 10px 7px 11px !important;
}

.hce4-shop-card-copy h3 {
    font-size: 16px !important;
}

.hce4-shop-card-copy p {
    font-size: 9px !important;
}

.hce4-shop-cta {
    display: block;
    margin-top: 5px;
    color: #a92f5d;
    font-size: 8.5px;
    font-weight: 800;
    letter-spacing: .07em;
}

.hce5-step-card strong {
    font-size: 13px !important;
}

.hce5-step-card small {
    font-size: 10.5px !important;
    line-height: 1.4 !important;
}

.hce5-benefits li {
    font-size: 10.5px !important;
    line-height: 1.45;
}

.hce5-look-main > span,
.hce5-look-hair > span,
.hce5-look-mini strong {
    font-size: 9px !important;
}

.hce5-look-mini small {
    font-size: 8.5px !important;
}

.hce5-complete-button {
    width: 100%;
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 22px;
    padding: 0 22px;
    border-radius: 999px;
    background: #271f1d;
    color: #fff !important;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .07em;
    text-decoration: none !important;
    transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}

.hce5-complete-button:hover,
.hce5-complete-button:focus-visible {
    transform: translateY(-2px);
    background: #a92f5d;
    box-shadow: 0 14px 28px rgba(169,47,93,.18);
}

.hce5-complete-button span {
    font-size: 18px;
    font-weight: 400;
}

.hce6-heading-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 12px;
}

.hce6-pinterest {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    border-radius: 999px;
    background: linear-gradient(135deg,#a92f5d,#c94b78);
    color: #fff !important;
    box-shadow: 0 10px 22px rgba(169,47,93,.16);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .06em;
    text-decoration: none !important;
    transition: transform .2s ease, box-shadow .2s ease;
}

.hce6-pinterest:hover,
.hce6-pinterest:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(169,47,93,.24);
}

.hce6-category,
.hce8-label,
.hce9-card-copy > span,
.hce10-image-text span {
    font-size: 9px !important;
}

.hce6-read,
.hce8-read,
.hce9-explore,
.hce10-copy > a {
    font-size: 9.5px !important;
    font-weight: 800 !important;
}

.hce6-card-copy h3 {
    font-size: 20px !important;
}

.hce10-copy p {
    font-size: 11px !important;
    line-height: 1.55 !important;
}

.hce11-description {
    font-size: 15px !important;
}

.hce-footer-tools {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.hce-footer-quiz {
    min-height: 44px !important;
    font-size: 9.5px !important;
}

.hce-footer-quiz-secondary {
    border: 1px solid rgba(255,255,255,.34);
    background: transparent !important;
    box-shadow: none !important;
}

.hce-footer-quiz-secondary:hover,
.hce-footer-quiz-secondary:focus-visible {
    border-color: #d2678e;
    background: rgba(210,103,142,.12) !important;
}

.hce-footer-logo small {
    font-size: 8px !important;
}

.hce-footer-column nav a {
    font-size: 11px !important;
}

.hce3-button:focus-visible,
.hce4-shop-card:focus-visible,
.hce5-start-button:focus-visible,
.hce5-complete-button:focus-visible,
.hce6-pinterest:focus-visible,
.hce11-primary:focus-visible,
.hce11-secondary:focus-visible {
    outline: 3px solid rgba(183,55,102,.28);
    outline-offset: 3px;
}

@media (max-width: 760px) {
    .hce4-shop-card-copy {
        min-height: 58px !important;
    }

    .hce4-shop-cta {
        font-size: 8px;
    }

    .hce6-heading {
        align-items: flex-start !important;
        gap: 18px;
    }

    .hce6-heading-actions {
        width: 100%;
        justify-content: flex-start;
    }

    .hce6-pinterest {
        min-height: 40px;
        padding: 0 15px;
    }

    .hce-footer-tools {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 600px) {
    .hce3-button,
    .hce5-start-button,
    .hce5-complete-button,
    .hce11-primary,
    .hce11-secondary {
        width: 100%;
        min-height: 50px;
    }

    .hce11-buttons {
        width: 100%;
    }
}
/* =========================================================
   HERO MINI STYLE BUTTONS — FINAL
   ========================================================= */

.hce3-look-parts {
    width: min(560px, 100%);
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 28px;
    padding-top: 0;
    border-top: 0;
}

.hce3-look-part {
    min-height: 92px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;

    padding: 12px 8px;

    border: 1px solid rgba(183,55,102,.25);
    border-radius: 15px;

    background: rgba(255,255,255,.88);
    color: #332725;

    box-shadow: 0 7px 18px rgba(70,45,40,.07);

    text-align: center;
    text-decoration: none !important;

    transition:
        transform .2s ease,
        background .2s ease,
        color .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}

.hce3-look-icon {
    width: 31px;
    height: 31px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 3px;

    border-radius: 50%;

    background: #f8e6ec;
    color: #ad3563;

    font-size: 16px;

    transition:
        background .2s ease,
        color .2s ease;
}

.hce3-look-part strong {
    color: inherit;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .07em;
    line-height: 1.2;
}

.hce3-look-part small {
    color: #8b7470;
    font-size: 7px;
    font-weight: 700;
    letter-spacing: .03em;
}

/* HOVER */

.hce3-look-part:hover,
.hce3-look-part:focus-visible {
    transform: translateY(-3px);

    border-color: #b73766;

    background:
        linear-gradient(
            135deg,
            #a92f5d,
            #c84b78
        );

    color: #ffffff;

    box-shadow:
        0 13px 27px rgba(169,47,93,.22);
}

.hce3-look-part:hover .hce3-look-icon,
.hce3-look-part:focus-visible .hce3-look-icon {
    background: rgba(255,255,255,.18);
    color: #ffffff;
}

.hce3-look-part:hover small,
.hce3-look-part:focus-visible small {
    color: rgba(255,255,255,.85);
}

/* CLICK / PRESS */

.hce3-look-part:active {
    transform: translateY(0) scale(.97);
    background: #7f2347;
}


/* MOBILE */

@media (max-width: 700px) {

    .hce3-look-parts {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
        margin-top: 20px;
    }

    .hce3-look-part {
        min-height: 76px;
        padding: 9px 6px;
    }

    .hce3-look-icon {
        width: 27px;
        height: 27px;
        font-size: 14px;
    }

    .hce3-look-part strong {
        font-size: 8px;
    }
}
/* =========================================================
   HERCURVESEDIT — GLOBAL BUTTON SYSTEM
   FINAL SITE-WIDE OVERRIDE
   Paste at the VERY BOTTOM of style.css
   ========================================================= */

:root{
    --hce-btn-rose-1:#8f234b;
    --hce-btn-rose-2:#bf3f6c;
    --hce-btn-rose-3:#d96a8f;
    --hce-btn-soft:#fff1f5;
    --hce-btn-soft-2:#f9e3ea;
    --hce-btn-dark:#211e1e;
    --hce-btn-text:#2a2221;
    --hce-btn-border:#d98aa5;
    --hce-btn-shadow:0 10px 24px rgba(143,35,75,.18);
    --hce-btn-shadow-hover:0 15px 30px rgba(143,35,75,.27);
}


/* =========================================================
   1) PRIMARY CTAs
   Rose gradient, white text, very clear
   ========================================================= */

.hce-primary-button,
.hce3-button-primary,
.hce5-start-button,
.hce11-primary,
.hce-footer-quiz,
.hce-mobile-style-button,
.hcequiz2-shop,
#hcequiz2-save,
#hcequiz2-email,
#hce-shop-outfit-button,
#hce-shop-shoes-button,
#hce-shop-accessories-button,
#hcecomplete-shop,
.hcecomplete-actions a:first-child,
.hcecomplete-actions button:first-of-type {

    min-height:52px !important;

    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    gap:10px !important;

    padding:0 25px !important;

    border:1px solid rgba(255,255,255,.24) !important;
    border-radius:999px !important;

    background:
        linear-gradient(
            135deg,
            var(--hce-btn-rose-1),
            var(--hce-btn-rose-2)
        ) !important;

    color:#fff !important;

    box-shadow:
        var(--hce-btn-shadow),
        inset 0 1px 0 rgba(255,255,255,.25) !important;

    font-family:Arial,Helvetica,sans-serif !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:1.15 !important;

    letter-spacing:.055em !important;

    text-align:center !important;
    text-decoration:none !important;

    cursor:pointer !important;

    transition:
        transform .18s ease,
        background .18s ease,
        border-color .18s ease,
        box-shadow .18s ease,
        color .18s ease !important;
}


/* PRIMARY HOVER */

.hce-primary-button:hover,
.hce-primary-button:focus-visible,
.hce3-button-primary:hover,
.hce3-button-primary:focus-visible,
.hce5-start-button:hover,
.hce5-start-button:focus-visible,
/* =========================================================
   FIND MY LOOK — FINAL MOBILE POLISH
   Paste at the VERY BOTTOM of style.css
   ========================================================= */

@media (max-width: 700px) {

    /* -----------------------------------------------------
       1) SHOW ALL 6 QUIZ STEPS IN ONE ROW
       ----------------------------------------------------- */

    .hcequiz2-progress-wrap .hcequiz2-container {
        width: calc(100% - 20px) !important;
        max-width: none !important;
    }

    .hcequiz2-progress {
        display: grid !important;
        grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
        width: 100% !important;

        gap: 2px !important;

        padding: 13px 0 11px !important;

        overflow: visible !important;
    }

    .hcequiz2-progress-item {
        min-width: 0 !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;

        gap: 4px !important;

        text-align: center !important;
    }

    .hcequiz2-progress-item span {
        width: 28px !important;
        height: 28px !important;

        flex: 0 0 28px !important;

        font-size: 9px !important;
        line-height: 1 !important;
    }

    .hcequiz2-progress-item small {
        display: block !important;

        width: 100% !important;

        overflow: hidden !important;

        color: inherit !important;

        font-size: 7.5px !important;
        font-weight: 700 !important;
        line-height: 1.15 !important;

        letter-spacing: 0 !important;

        text-align: center !important;
        text-overflow: clip !important;
        white-space: nowrap !important;
    }

    .hcequiz2-progress-item.is-active small {
        color: #b73766 !important;
        font-weight: 800 !important;
    }

    .hcequiz2-progress-item.is-done small {
        color: #4d4340 !important;
    }


    /* -----------------------------------------------------
       2) RECOMMENDED FOR YOU — EASIER MOBILE READING
       ----------------------------------------------------- */

    .hcequiz2-recommended-content {
        padding: 14px 13px 16px !important;
    }

    .hcequiz2-recommended-content h4 {
        min-height: 0 !important;

        margin: 0 !important;

        font-size: 18px !important;
        line-height: 1.28 !important;

        letter-spacing: -.015em !important;
    }

    .hcequiz2-recommended-content > a {
        margin-top: 13px !important;

        font-size: 10px !important;
        line-height: 1.2 !important;
    }
}


/* Extra-small phones */

@media (max-width: 380px) {

    .hcequiz2-progress-wrap .hcequiz2-container {
        width: calc(100% - 12px) !important;
    }

    .hcequiz2-progress-item span {
        width: 26px !important;
        height: 26px !important;
        flex-basis: 26px !important;
    }

    .hcequiz2-progress-item small {
        font-size: 7px !important;
    }
}
/* =========================================================
   COMPLETE MY LOOK — FINAL MOBILE POLISH
   Paste at the VERY BOTTOM of style.css
   Desktop stays unchanged.
   ========================================================= */

@media (max-width: 650px) {

    /* -----------------------------------------------------
       1) COMPACT 2-COLUMN LOOK PICKER
       ----------------------------------------------------- */

    .hcecomplete-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .hcecomplete-card {
        min-height: 245px !important;
        border-radius: 16px !important;
        box-shadow: 0 8px 20px rgba(54, 36, 31, .09) !important;
    }

    .hcecomplete-card::after {
        inset: 38% 0 0 !important;
        background:
            linear-gradient(
                transparent,
                rgba(25, 16, 16, .88)
            ) !important;
    }

    .hcecomplete-card span,
    .hcecomplete-card strong,
    .hcecomplete-card small {
        left: 12px !important;
        right: 10px !important;
    }

    .hcecomplete-card span {
        bottom: 61px !important;
        font-size: 7px !important;
        line-height: 1.2 !important;
        letter-spacing: .10em !important;
    }

    .hcecomplete-card strong {
        bottom: 34px !important;
        font-size: 22px !important;
        line-height: 1 !important;
    }

    .hcecomplete-card small {
        bottom: 13px !important;
        font-size: 7px !important;
        line-height: 1.2 !important;
        letter-spacing: .035em !important;
        white-space: nowrap !important;
    }


    /* -----------------------------------------------------
       2) CLEAR SELECTED STATE
       ----------------------------------------------------- */

    .hcecomplete-card.is-selected {
        border-color: #b73766 !important;
        box-shadow:
            0 0 0 2px rgba(183, 55, 102, .10),
            0 12px 26px rgba(83, 42, 55, .16) !important;
    }


    /* -----------------------------------------------------
       3) KEEP RESULT SPACING CLEAN
       Result design itself stays unchanged.
       ----------------------------------------------------- */

    .hcecomplete-result {
        margin-top: 42px !important;
    }

    .hcecomplete-result-head {
        scroll-margin-top: 90px;
    }

    #hcecomplete-result {
        scroll-margin-top: 88px;
    }
}


/* Extra-small phones */

@media (max-width: 370px) {

    .hcecomplete-grid {
        gap: 8px !important;
    }

    .hcecomplete-card {
        min-height: 225px !important;
    }

    .hcecomplete-card strong {
        font-size: 20px !important;
    }

    .hcecomplete-card span,
    .hcecomplete-card small {
        font-size: 6.5px !important;
    }
}
/* =========================================================
   HERCURVESEDIT — CATEGORY MOBILE FINAL POLISH
   Fashion + Hairstyles + Nail Art
   Paste at the VERY BOTTOM of style.css
   Desktop stays unchanged.
   ========================================================= */

@media (max-width: 650px) {

    /* -----------------------------------------------------
       1) SUBCATEGORY / FILTER CHIPS
       Easier to read and tap on mobile.
       ----------------------------------------------------- */

    .hcecat-page .hcecat-subcats {
        gap: 8px !important;
        margin-top: 28px !important;
        padding: 2px 2px 10px !important;
        scroll-padding-inline: 2px;
    }

    .hcecat-page .hcecat-subcats a {
        min-height: 42px !important;
        padding: 0 15px !important;

        font-size: 9px !important;
        line-height: 1 !important;
        letter-spacing: .025em !important;
    }


    /* -----------------------------------------------------
       2) EDITOR'S PICK FEATURE IMAGE
       Standard 16:9 editorial frame.
       ----------------------------------------------------- */

    .hcecat-page .hcecat-featured-image {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
    }

    .hcecat-page .hcecat-featured-image img {
        width: 100% !important;
        height: 100% !important;

        object-fit: cover !important;
        object-position: center center !important;
    }

    .hcecat-page .hcecat-featured-copy {
        padding: 26px 20px 30px !important;
    }

    .hcecat-page .hcecat-featured-copy h2 {
        font-size: 30px !important;
        line-height: 1.08 !important;
    }

    .hcecat-page .hcecat-featured-copy > p {
        margin-top: 14px !important;

        font-size: 12px !important;
        line-height: 1.65 !important;
    }

    .hcecat-page .hcecat-featured-button {
        min-height: 46px !important;
        margin-top: 20px !important;
        padding: 0 19px !important;

        font-size: 9px !important;
    }


    /* -----------------------------------------------------
       3) LATEST ARTICLE CARDS
       Consistent 16:9 thumbnails + better readability.
       ----------------------------------------------------- */

    .hcecat-page .hcecat-grid {
        gap: 18px !important;
    }

    .hcecat-page .hcecat-card {
        border-radius: 16px !important;

        box-shadow:
            0 8px 24px
            rgba(55, 40, 35, .055) !important;
    }

    .hcecat-page .hcecat-card-image {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
    }

    .hcecat-page .hcecat-card-image img {
        width: 100% !important;
        height: 100% !important;

        object-fit: cover !important;
        object-position: center center !important;
    }

    .hcecat-page .hcecat-card-copy {
        padding: 18px 18px 20px !important;
    }

    .hcecat-page .hcecat-card-copy h3 {
        font-size: 23px !important;
        line-height: 1.14 !important;
    }

    .hcecat-page .hcecat-card-copy > p {
        margin-top: 10px !important;

        font-size: 12px !important;
        line-height: 1.62 !important;
    }

    .hcecat-page .hcecat-read {
        min-height: 38px !important;

        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;

        margin-top: 14px !important;
        padding: 0 14px !important;

        border: 1px solid #d85a86 !important;
        border-radius: 999px !important;

        font-size: 9px !important;
        line-height: 1 !important;
        letter-spacing: .06em !important;
    }


    /* -----------------------------------------------------
       4) SECTION RHYTHM
       Slightly cleaner spacing on smaller screens.
       ----------------------------------------------------- */

    .hcecat-page .hcecat-featured {
        padding: 48px 0 54px !important;
    }

    .hcecat-page .hcecat-latest {
        padding: 52px 0 60px !important;
    }

    .hcecat-page .hcecat-section-heading {
        margin-bottom: 22px !important;
    }

    .hcecat-page .hcecat-section-heading h2 {
        font-size: 38px !important;
        line-height: 1.02 !important;
    }
}


/* Extra-small phones */

@media (max-width: 380px) {

    .hcecat-page .hcecat-card-copy h3 {
        font-size: 21px !important;
    }

    .hcecat-page .hcecat-section-heading h2 {
        font-size: 35px !important;
    }

    .hcecat-page .hcecat-subcats a {
        padding: 0 13px !important;
        font-size: 8.5px !important;
    }
}
/*
Theme Name: Her Curve Edit
Theme URI: https://hercurveedit.com/
Author: Her Curve Edit
Author URI: https://hercurveedit.com/
Description: Premium fashion, hair, nail art and personalized style discovery theme for HerCurvesEdit.com.
Version: 1.0.2
Text Domain: hercurveedit
*/

/* =========================================================
   HER CURVE EDIT — DESIGN SYSTEM
   ========================================================= */

:root {
    --hce-background: #fbf8f6;
    --hce-white: #ffffff;

    --hce-text: #262222;
    --hce-dark: #211e1e;
    --hce-muted: #776e6b;

    --hce-rose: #b97979;
    --hce-rose-dark: #965d5d;
    --hce-champagne: #c7a36d;

    --hce-border: #eadfda;

    --hce-container: 1280px;

    --hce-radius-small: 10px;
    --hce-radius-medium: 18px;
    --hce-radius-large: 28px;

    --hce-shadow: 0 12px 35px rgba(44, 33, 31, 0.08);
}


/* =========================================================
   RESET
   ========================================================= */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;

    background: var(--hce-background);
    color: var(--hce-text);

    font-family: Arial, Helvetica, sans-serif;

    font-size: 16px;
    line-height: 1.65;
}

img {
    display: block;

    max-width: 100%;
    height: auto;
}

a {
    color: inherit;
    text-decoration: none;
}

button,
input,
textarea,
select {
    font: inherit;
}


/* =========================================================
   GLOBAL CONTAINER
   ========================================================= */

.hce-container {
    width: min(calc(100% - 48px), var(--hce-container));

    margin-left: auto;
    margin-right: auto;
}


/* =========================================================
   SITE HEADER
   ========================================================= */

.hce-site-header {
    position: relative;
    z-index: 100;

    width: 100%;

    background: rgba(255, 255, 255, 0.97);

    border-bottom: 1px solid var(--hce-border);
}

.hce-header-inner {
    min-height: 88px;

    display: flex;
    align-items: center;

    gap: 38px;
}


/* BRAND */

.hce-branding {
    flex-shrink: 0;
}

.hce-logo-text {
    display: flex;
    flex-direction: column;

    line-height: 1;
    letter-spacing: 0.04em;
}

.hce-logo-her {
    margin-bottom: 5px;

    color: var(--hce-rose);

    font-family: Arial, Helvetica, sans-serif;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 0.34em;
}

.hce-logo-main {
    color: var(--hce-dark);

    font-family: Georgia, "Times New Roman", serif;

    font-size: 27px;
    font-weight: 500;

    letter-spacing: 0.025em;
}


/* =========================================================
   PRIMARY NAVIGATION
   ========================================================= */

.hce-primary-navigation {
    margin-left: auto;
}

.hce-primary-menu {
    display: flex;
    align-items: center;

    gap: 27px;

    margin: 0;
    padding: 0;

    list-style: none;
}

.hce-primary-menu li {
    margin: 0;
}

.hce-primary-menu a {
    position: relative;

    display: block;

    padding: 32px 0;

    color: var(--hce-text);

    font-size: 13px;
    font-weight: 600;

    letter-spacing: 0.025em;
}

.hce-primary-menu a::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: 24px;

    width: 0;
    height: 1px;

    background: var(--hce-rose);

    transition: width 0.25s ease;
}

.hce-primary-menu a:hover::after {
    width: 100%;
}


/* =========================================================
   HEADER CTA
   ========================================================= */

.hce-header-quiz {
    flex-shrink: 0;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: 44px;

    padding: 0 22px;

    border: 1px solid var(--hce-dark);
    border-radius: 999px;

    color: var(--hce-dark);

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 0.04em;

    transition:
        background 0.2s ease,
        color 0.2s ease;
}

.hce-header-quiz:hover {
    background: var(--hce-dark);
    color: var(--hce-white);
}


/* =========================================================
   TEMPORARY HERO / WELCOME
   ========================================================= */

.hce-welcome {
    padding: 115px 0 125px;

    text-align: center;

    background:
        linear-gradient(
            135deg,
            #fbf5f2 0%,
            #ffffff 52%,
            #f7efed 100%
        );
}

.hce-eyebrow {
    margin: 0 0 21px;

    color: var(--hce-rose-dark);

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 0.21em;
}

.hce-welcome h1 {
    max-width: 900px;

    margin: 0 auto 25px;

    color: var(--hce-dark);

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(48px, 6vw, 82px);
    font-weight: 400;

    line-height: 1.03;

    letter-spacing: -0.035em;
}

.hce-welcome-text {
    max-width: 610px;

    margin: 0 auto 34px;

    color: var(--hce-muted);

    font-size: 18px;
    line-height: 1.75;
}


/* PRIMARY BUTTON */

.hce-primary-button {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: 52px;

    padding: 0 30px;

    border-radius: 999px;

    background: var(--hce-dark);
    color: var(--hce-white);

    font-size: 13px;
    font-weight: 700;

    letter-spacing: 0.04em;

    transition:
        transform 0.2s ease,
        background 0.2s ease;
}

.hce-primary-button:hover {
    transform: translateY(-2px);

    background: var(--hce-rose-dark);
}


/* =========================================================
   POSTS
   ========================================================= */

.hce-posts-section {
    padding: 75px 0;
}

.hce-post-preview {
    max-width: 760px;

    margin: 0 auto 40px;
    padding-bottom: 40px;

    border-bottom: 1px solid var(--hce-border);
}

.hce-post-preview h2 {
    font-family: Georgia, "Times New Roman", serif;

    font-weight: 400;
}


/* =========================================================
   FOOTER
   ========================================================= */

.hce-site-footer {
    padding: 55px 0;

    background: var(--hce-dark);

    color: var(--hce-white);
}

.hce-footer-inner {
    display: flex;

    justify-content: space-between;
    align-items: flex-end;

    gap: 40px;
}

.hce-footer-brand strong {
    font-family: Georgia, "Times New Roman", serif;

    font-size: 22px;
    font-weight: 400;

    letter-spacing: 0.04em;
}

.hce-footer-brand p,
.hce-copyright {
    margin-bottom: 0;

    color: rgba(255, 255, 255, 0.65);

    font-size: 13px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 900px) {

    .hce-primary-navigation {
        display: none;
    }

    .hce-header-inner {
        min-height: 74px;
    }

    .hce-header-quiz {
        margin-left: auto;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .hce-container {
        width: min(
            calc(100% - 30px),
            var(--hce-container)
        );
    }

    .hce-logo-main {
        font-size: 21px;
    }

    .hce-logo-her {
        font-size: 9px;
    }

    .hce-header-quiz {
        min-height: 40px;

        padding: 0 14px;

        font-size: 10px;
    }

    .hce-welcome {
        padding: 78px 0 88px;
    }

    .hce-welcome h1 {
        font-size: 43px;
    }

    .hce-welcome-text {
        font-size: 16px;
    }

    .hce-primary-button {
        min-height: 48px;

        padding: 0 23px;
    }

    .hce-footer-inner {
        flex-direction: column;

        align-items: flex-start;
    }

}
/* =========================================================
   HER CURVE EDIT — HOMEPAGE
   ========================================================= */


/* HERO */

.hce-home-hero {
    padding: 88px 0 95px;

    background:
        linear-gradient(
            135deg,
            #f8efeb 0%,
            #fffdfc 48%,
            #f3e8e5 100%
        );
}

.hce-home-hero-inner {
    display: grid;

    grid-template-columns:
        minmax(0, 1.35fr)
        minmax(300px, 0.65fr);

    align-items: center;

    gap: 85px;
}


/* LEFT HERO */

.hce-home-kicker {
    margin: 0 0 20px;

    color: var(--hce-rose-dark);

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 0.22em;
}

.hce-home-hero-content h1 {
    max-width: 760px;

    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(58px, 6vw, 91px);

    font-weight: 400;

    line-height: 0.98;

    letter-spacing: -0.045em;
}

.hce-home-hero-content h1 span {
    display: block;

    color: var(--hce-rose-dark);
}

.hce-home-intro {
    max-width: 610px;

    margin: 30px 0 0;

    color: var(--hce-muted);

    font-size: 18px;

    line-height: 1.75;
}


/* BUTTONS */

.hce-home-actions {
    display: flex;

    align-items: center;

    gap: 28px;

    margin-top: 34px;
}

.hce-button-dark {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: 52px;

    padding: 0 28px;

    background: var(--hce-dark);
    color: var(--hce-white);

    border-radius: 999px;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 0.04em;

    transition:
        transform 0.2s ease,
        background 0.2s ease;
}

.hce-button-dark:hover {
    transform: translateY(-2px);

    background: var(--hce-rose-dark);
}

.hce-button-text {
    padding-bottom: 3px;

    border-bottom: 1px solid var(--hce-text);

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 0.05em;
}


/* HERO FEATURE CARD */

.hce-home-feature-card {
    padding: 50px 42px;

    background: var(--hce-white);

    border: 1px solid var(--hce-border);

    border-radius: var(--hce-radius-large);

    box-shadow: var(--hce-shadow);
}

.hce-feature-label {
    display: block;

    margin-bottom: 22px;

    color: var(--hce-rose-dark);

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 0.22em;
}

.hce-home-feature-card h2 {
    margin: 0 0 20px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 39px;
    font-weight: 400;

    line-height: 1.08;
}

.hce-home-feature-card p {
    margin-bottom: 27px;

    color: var(--hce-muted);

    font-size: 15px;

    line-height: 1.75;
}

.hce-home-feature-card a {
    font-size: 11px;
    font-weight: 700;

    letter-spacing: 0.06em;
}


/* =========================================================
   CONTENT PILLARS
   ========================================================= */

.hce-pillars {
    padding: 95px 0 110px;

    background: var(--hce-white);
}

.hce-section-heading {
    max-width: 650px;

    margin-bottom: 50px;
}

.hce-section-heading > p {
    margin: 0 0 13px;

    color: var(--hce-rose-dark);

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 0.22em;
}

.hce-section-heading h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(38px, 4vw, 55px);

    font-weight: 400;

    line-height: 1.08;

    letter-spacing: -0.025em;
}


/* GRID */

.hce-pillar-grid {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 22px;
}


/* CARDS */

.hce-pillar-card {
    position: relative;

    min-height: 410px;

    display: flex;
    flex-direction: column;

    justify-content: space-between;

    padding: 30px;

    overflow: hidden;

    border-radius: var(--hce-radius-large);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.hce-pillar-card:hover {
    transform: translateY(-5px);

    box-shadow: var(--hce-shadow);
}

.hce-pillar-fashion {
    background: #f1dfd9;
}

.hce-pillar-hair {
    background: #eee7df;
}

.hce-pillar-nails {
    background: #eadde4;
}


.hce-pillar-number {
    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 52px;

    color: rgba(38, 34, 34, 0.20);
}


.hce-pillar-content span {
    display: block;

    margin-bottom: 8px;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 0.19em;
}

.hce-pillar-content h3 {
    margin: 0 0 13px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 42px;
    font-weight: 400;
}

.hce-pillar-content p {
    max-width: 330px;

    margin: 0 0 24px;

    color: var(--hce-muted);

    font-size: 14px;

    line-height: 1.7;
}

.hce-pillar-content strong {
    font-size: 10px;

    letter-spacing: 0.08em;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1000px) {

    .hce-home-hero-inner {
        grid-template-columns: 1fr;

        gap: 55px;
    }

    .hce-home-feature-card {
        max-width: 620px;
    }

    .hce-pillar-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {

    .hce-home-hero {
        padding: 65px 0 70px;
    }

    .hce-home-hero-content h1 {
        font-size: 49px;
    }

    .hce-home-intro {
        font-size: 16px;
    }

    .hce-home-actions {
        align-items: flex-start;
        flex-direction: column;

        gap: 20px;
    }

    .hce-home-feature-card {
        padding: 34px 26px;
    }

    .hce-home-feature-card h2 {
        font-size: 32px;
    }

    .hce-pillars {
        padding: 70px 0 80px;
    }

    .hce-pillar-grid {
        grid-template-columns: 1fr;
    }

    .hce-pillar-card {
        min-height: 330px;
    }

}
/* =========================================================
   STYLE DISCOVERY
   ========================================================= */

.hce-style-discovery {
    padding: 100px 0 110px;

    background: var(--hce-background);
}


/* HEADER */

.hce-discovery-header {
    display: flex;

    justify-content: space-between;
    align-items: flex-end;

    gap: 40px;

    margin-bottom: 48px;
}

.hce-section-label {
    margin: 0 0 13px;

    color: var(--hce-rose-dark);

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 0.22em;
}

.hce-discovery-header h2 {
    max-width: 650px;

    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(38px, 4vw, 55px);

    font-weight: 400;

    line-height: 1.08;

    letter-spacing: -0.025em;
}

.hce-discovery-intro {
    max-width: 320px;

    margin: 0;

    color: var(--hce-muted);

    font-size: 15px;

    line-height: 1.7;
}


/* GRID */

.hce-discovery-grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 18px;
}


/* CARD */

.hce-discovery-card {
    min-height: 350px;

    display: flex;
    flex-direction: column;

    justify-content: space-between;

    padding: 27px;

    background: var(--hce-white);

    border: 1px solid var(--hce-border);

    border-radius: 22px;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
}

.hce-discovery-card:hover {
    transform: translateY(-5px);

    border-color: #dbc7bf;

    box-shadow: var(--hce-shadow);
}


/* TOP */

.hce-discovery-top {
    display: flex;

    align-items: center;
    justify-content: space-between;
}

.hce-discovery-number {
    font-family:
        Georgia,
        "Times New Roman",
        serif;

    color: #b6aaa5;

    font-size: 25px;
}

.hce-discovery-arrow {
    width: 37px;
    height: 37px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid var(--hce-border);
    border-radius: 50%;

    font-size: 16px;

    transition:
        background 0.2s ease,
        color 0.2s ease;
}

.hce-discovery-card:hover .hce-discovery-arrow {
    background: var(--hce-dark);
    color: var(--hce-white);
}


/* CONTENT */

.hce-card-label {
    display: block;

    margin-bottom: 10px;

    color: var(--hce-rose-dark);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 0.18em;
}

.hce-discovery-content h3 {
    margin: 0 0 14px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 34px;
    font-weight: 400;

    line-height: 1.04;
}

.hce-discovery-content p {
    margin: 0;

    color: var(--hce-muted);

    font-size: 13px;

    line-height: 1.7;
}


/* =========================================================
   DISCOVERY RESPONSIVE
   ========================================================= */

@media (max-width: 1050px) {

    .hce-discovery-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

}


@media (max-width: 650px) {

    .hce-style-discovery {
        padding: 70px 0 80px;
    }

    .hce-discovery-header {
        flex-direction: column;

        align-items: flex-start;

        gap: 20px;
    }

    .hce-discovery-grid {
        grid-template-columns: 1fr;
    }

    .hce-discovery-card {
        min-height: 280px;
    }

    .hce-discovery-content h3 {
        font-size: 31px;
    }

}
/* =========================================================
   TRENDING NOW
   ========================================================= */

.hce-trending {
    padding: 105px 0 115px;

    background: #ffffff;
}


/* HEADER */

.hce-trending-heading {
    display: flex;

    align-items: flex-end;
    justify-content: space-between;

    gap: 40px;

    margin-bottom: 48px;
}

.hce-trending-heading h2 {
    max-width: 650px;

    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(40px, 4.2vw, 58px);

    font-weight: 400;

    line-height: 1.05;

    letter-spacing: -0.03em;
}

.hce-view-all {
    flex-shrink: 0;

    padding-bottom: 4px;

    border-bottom: 1px solid var(--hce-dark);

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 0.08em;
}


/* =========================================================
   STORY GRID
   ========================================================= */

.hce-trending-grid {
    display: grid;

    grid-template-columns:
        repeat(12, minmax(0, 1fr));

    gap: 24px;
}


/* NORMAL STORY */

.hce-story-card {
    grid-column: span 4;

    min-width: 0;
}


/* FEATURED STORY */

.hce-story-featured {
    grid-column: span 8;

    grid-row: span 2;
}


/* IMAGE */

.hce-story-image {
    display: block;

    width: 100%;

    overflow: hidden;

    border-radius: 22px;

    background: #f3ece9;
}

.hce-story-card:not(.hce-story-featured) .hce-story-image {
    aspect-ratio: 4 / 5;
}

.hce-story-featured .hce-story-image {
    aspect-ratio: 16 / 10;
}

.hce-story-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.45s ease;
}

.hce-story-card:hover .hce-story-image img {
    transform: scale(1.025);
}


/* TEMPORARY PLACEHOLDERS */

.hce-story-placeholder {
    width: 100%;
    height: 100%;
    min-height: 330px;

    display: flex;

    align-items: center;
    justify-content: center;

    background:
        linear-gradient(
            145deg,
            #ead8d2,
            #f8eeeb
        );
}

.hce-story-featured .hce-story-placeholder {
    min-height: 500px;
}

.hce-story-placeholder span {
    color: rgba(38, 34, 34, 0.38);

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(30px, 4vw, 60px);

    letter-spacing: 0.06em;
}

.hce-placeholder-hair {
    background:
        linear-gradient(
            145deg,
            #e5ded4,
            #f6f1eb
        );
}

.hce-placeholder-nails {
    background:
        linear-gradient(
            145deg,
            #e6d6de,
            #f8edf2
        );
}


/* STORY CONTENT */

.hce-story-content {
    padding-top: 22px;
}

.hce-story-meta {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    margin-bottom: 13px;
}

.hce-story-category {
    color: var(--hce-rose-dark);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 0.16em;
}

.hce-story-number {
    color: #aaa09d;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 16px;
}

.hce-story-content h3 {
    margin: 0 0 14px;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 30px;
    font-weight: 400;

    line-height: 1.08;

    letter-spacing: -0.02em;
}

.hce-story-featured .hce-story-content h3 {
    max-width: 720px;

    font-size: clamp(35px, 4vw, 49px);
}

.hce-story-excerpt {
    max-width: 680px;

    margin: 0 0 18px;

    color: var(--hce-muted);

    font-size: 15px;

    line-height: 1.7;
}

.hce-story-link {
    display: inline-block;

    margin-top: 5px;

    padding-bottom: 3px;

    border-bottom: 1px solid var(--hce-text);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 0.09em;
}


/* =========================================================
   TRENDING — TABLET
   ========================================================= */

@media (max-width: 950px) {

    .hce-story-featured,
    .hce-story-card {
        grid-column: span 6;
    }

    .hce-story-featured {
        grid-row: auto;
    }

    .hce-story-featured .hce-story-image {
        aspect-ratio: 4 / 5;
    }

}


/* =========================================================
   TRENDING — MOBILE
   ========================================================= */

@media (max-width: 650px) {

    .hce-trending {
        padding: 72px 0 80px;
    }

    .hce-trending-heading {
        align-items: flex-start;
        flex-direction: column;

        gap: 22px;
    }

    .hce-trending-grid {
        display: block;
    }

    .hce-story-card {
        margin-bottom: 48px;
    }

    .hce-story-featured .hce-story-image,
    .hce-story-card:not(.hce-story-featured) .hce-story-image {
        aspect-ratio: 4 / 5;
    }

    .hce-story-placeholder,
    .hce-story-featured .hce-story-placeholder {
        min-height: 420px;
    }

    .hce-story-content h3,
    .hce-story-featured .hce-story-content h3 {
        font-size: 31px;
    }

}
/* =========================================================
   HER CURVE EDIT — FIXED DESKTOP DROPDOWN
   ========================================================= */

@media (min-width: 901px) {

    /* Top-level menu */
    .hce-primary-menu {
        display: flex;
        align-items: center;
        gap: 26px;

        margin: 0;
        padding: 0;

        list-style: none;
    }

    .hce-primary-menu > li {
        position: relative;

        margin: 0;
        padding: 0;

        list-style: none;
    }


    /* -----------------------------------------------------
       HIDE SUBMENUS BY DEFAULT
       ----------------------------------------------------- */

    .hce-primary-menu .sub-menu {
        position: absolute !important;

        top: calc(100% - 10px) !important;
        left: 50% !important;

        z-index: 9999 !important;

        width: 440px !important;

        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

        gap: 4px !important;

        margin: 0 !important;
        padding: 16px !important;

        list-style: none !important;

        background: #ffffff !important;

        border: 1px solid var(--hce-border) !important;
        border-radius: 18px !important;

        box-shadow:
            0 20px 55px rgba(34, 28, 27, 0.14) !important;

        opacity: 0 !important;
        visibility: hidden !important;

        pointer-events: none !important;

        transform: translate(-50%, 12px) !important;

        transition:
            opacity 0.18s ease,
            visibility 0.18s ease,
            transform 0.18s ease !important;
    }


    /* -----------------------------------------------------
       SHOW ON HOVER / KEYBOARD FOCUS
       ----------------------------------------------------- */

    .hce-primary-menu > li:hover > .sub-menu,
    .hce-primary-menu > li:focus-within > .sub-menu {
        opacity: 1 !important;
        visibility: visible !important;

        pointer-events: auto !important;

        transform: translate(-50%, 0) !important;
    }


    /* -----------------------------------------------------
       SUBMENU ITEMS
       ----------------------------------------------------- */

    .hce-primary-menu .sub-menu li {
        position: static !important;

        display: block !important;

        margin: 0 !important;
        padding: 0 !important;

        list-style: none !important;
    }

    .hce-primary-menu .sub-menu li::marker {
        content: "" !important;
    }

    .hce-primary-menu .sub-menu a {
        display: block !important;

        width: 100% !important;

        padding: 13px 14px !important;

        border-radius: 10px !important;

        color: var(--hce-text) !important;

        font-size: 12px !important;
        font-weight: 600 !important;

        line-height: 1.35 !important;

        letter-spacing: 0.01em !important;

        text-decoration: none !important;

        white-space: normal !important;
    }

    .hce-primary-menu .sub-menu a:hover,
    .hce-primary-menu .sub-menu a:focus {
        background: var(--hce-background) !important;

        color: var(--hce-rose-dark) !important;
    }


    /* Remove line animation inside dropdown */
    .hce-primary-menu .sub-menu a::before,
    .hce-primary-menu .sub-menu a::after {
        display: none !important;
    }


    /* Invisible hover bridge */
    .hce-primary-menu .sub-menu::before {
        content: "";

        position: absolute;

        top: -18px;
        left: 0;

        width: 100%;
        height: 20px;
    }

}


/* =========================================================
   MOBILE — NEVER SHOW DESKTOP SUBMENU
   ========================================================= */

@media (max-width: 900px) {

    .hce-primary-menu .sub-menu {
        display: none !important;
    }

}
/* =========================================================
   MOBILE NAVIGATION
   ========================================================= */

.hce-mobile-menu-button,
.hce-mobile-navigation {
    display: none;
}


/* Prevent background scrolling while menu is open */

body.hce-menu-open {
    overflow: hidden;
}


@media (max-width: 900px) {

    /* Hide desktop elements */

    .hce-primary-navigation,
    .hce-header-quiz {
        display: none;
    }


    /* HEADER */

    .hce-header-inner {
        min-height: 74px;

        justify-content: space-between;
    }


    /* HAMBURGER */

    .hce-mobile-menu-button {
        width: 44px;
        height: 44px;

        display: flex;

        flex-direction: column;

        align-items: center;
        justify-content: center;

        gap: 5px;

        padding: 0;

        border: 1px solid var(--hce-border);
        border-radius: 50%;

        background: #ffffff;

        cursor: pointer;
    }

    .hce-mobile-menu-button span {
        width: 17px;
        height: 1.5px;

        display: block;

        background: var(--hce-dark);

        transition:
            transform 0.2s ease,
            opacity 0.2s ease;
    }


    /* Turn hamburger into X */

    .hce-mobile-menu-button.is-open span:nth-child(1) {
        transform:
            translateY(6.5px)
            rotate(45deg);
    }

    .hce-mobile-menu-button.is-open span:nth-child(2) {
        opacity: 0;
    }

    .hce-mobile-menu-button.is-open span:nth-child(3) {
        transform:
            translateY(-6.5px)
            rotate(-45deg);
    }


    /* MENU PANEL */

    .hce-mobile-navigation {
        width: 100%;

        max-height: calc(100vh - 74px);

        overflow-y: auto;

        background: #ffffff;

        border-top: 1px solid var(--hce-border);

        box-shadow:
            0 18px 35px rgba(30, 25, 24, 0.08);
    }

    .hce-mobile-navigation:not([hidden]) {
        display: block;
    }

    .hce-mobile-navigation-inner {
        width: min(
            calc(100% - 30px),
            var(--hce-container)
        );

        margin: 0 auto;

        padding: 20px 0 30px;
    }


    /* MAIN ITEMS */

    .hce-mobile-menu,
    .hce-mobile-menu .sub-menu {
        margin: 0;
        padding: 0;

        list-style: none;
    }

    .hce-mobile-menu > li {
        position: relative;

        border-bottom: 1px solid var(--hce-border);
    }

    .hce-mobile-menu > li > a {
        display: block;

        padding: 17px 48px 17px 4px;

        color: var(--hce-dark);

        font-size: 14px;
        font-weight: 700;

        letter-spacing: 0.025em;
    }


    /* SUBMENU BUTTON */

    .hce-mobile-submenu-toggle {
        position: absolute;

        top: 7px;
        right: 0;

        width: 42px;
        height: 42px;

        display: flex;

        align-items: center;
        justify-content: center;

        padding: 0;

        border: 0;

        background: transparent;

        color: var(--hce-dark);

        cursor: pointer;
    }

    .hce-mobile-submenu-toggle span {
        font-size: 22px;
        font-weight: 300;

        transition: transform 0.2s ease;
    }

    .hce-mobile-submenu-toggle.is-open span {
        transform: rotate(45deg);
    }


    /* SUBMENUS */

    .hce-mobile-menu .sub-menu {
        padding:
            4px
            0
            15px
            15px;
    }

    .hce-mobile-menu .sub-menu[hidden] {
        display: none !important;
    }

    .hce-mobile-menu .sub-menu li {
        border: 0;
    }

    .hce-mobile-menu .sub-menu a {
        display: block;

        padding: 9px 4px;

        color: var(--hce-muted);

        font-size: 13px;
        font-weight: 500;

        line-height: 1.4;
    }


    /* QUIZ CTA */

    .hce-mobile-style-button {
        width: 100%;

        min-height: 50px;

        display: flex;

        align-items: center;
        justify-content: center;

        margin-top: 25px;

        background: var(--hce-dark);

        color: #ffffff;

        border-radius: 999px;

        font-size: 12px;
        font-weight: 700;

        letter-spacing: 0.05em;
    }

}
/* =========================================================
   HER CURVE EDIT — MOBILE HEADER & MENU
   ========================================================= */

.hce-mobile-menu-button,
.hce-mobile-navigation {
    display: none;
}


/* =========================================================
   MOBILE / TABLET
   ========================================================= */

@media (max-width: 900px) {

    /* Hide desktop navigation */
    .hce-primary-navigation,
    .hce-header-quiz {
        display: none !important;
    }


    /* Header */
    .hce-header-inner {
        min-height: 72px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
    }


    /* Logo */
    .hce-branding {
        flex-shrink: 0;
    }


    /* Hamburger button */
    .hce-mobile-menu-button {
        width: 44px;
        height: 44px;

        display: flex !important;
        flex-direction: column;
        align-items: center;
        justify-content: center;

        gap: 5px;

        padding: 0;

        background: #ffffff;

        border: 1px solid var(--hce-border);
        border-radius: 50%;

        cursor: pointer;
    }

    .hce-mobile-menu-button span {
        width: 18px;
        height: 1.5px;

        display: block;

        background: var(--hce-dark);

        transition:
            transform 0.2s ease,
            opacity 0.2s ease;
    }


    /* Hamburger becomes X */
    .hce-mobile-menu-button.is-open span:nth-child(1) {
        transform: translateY(6.5px) rotate(45deg);
    }

    .hce-mobile-menu-button.is-open span:nth-child(2) {
        opacity: 0;
    }

    .hce-mobile-menu-button.is-open span:nth-child(3) {
        transform: translateY(-6.5px) rotate(-45deg);
    }


    /* Mobile navigation panel */
    .hce-mobile-navigation {
        width: 100%;

        background: #ffffff;

        border-top: 1px solid var(--hce-border);

        box-shadow:
            0 18px 40px rgba(30, 25, 24, 0.08);
    }

    .hce-mobile-navigation:not([hidden]) {
        display: block !important;
    }


    .hce-mobile-navigation-inner {
        width: min(
            calc(100% - 30px),
            var(--hce-container)
        );

        margin: 0 auto;

        padding: 18px 0 28px;
    }


    /* Main mobile list */
    .hce-mobile-menu,
    .hce-mobile-menu .sub-menu {
        margin: 0;
        padding: 0;

        list-style: none;
    }


    .hce-mobile-menu > li {
        position: relative;

        border-bottom: 1px solid var(--hce-border);
    }


    .hce-mobile-menu > li > a {
        display: block;

        padding: 17px 50px 17px 3px;

        color: var(--hce-dark);

        font-size: 14px;
        font-weight: 700;

        letter-spacing: 0.03em;

        text-decoration: none;
    }


    /* + button */
    .hce-mobile-submenu-toggle {
        position: absolute;

        top: 7px;
        right: 0;

        width: 42px;
        height: 42px;

        display: flex;
        align-items: center;
        justify-content: center;

        padding: 0;

        border: 0;

        background: transparent;

        color: var(--hce-dark);

        cursor: pointer;
    }


    .hce-mobile-submenu-toggle span {
        font-size: 23px;
        font-weight: 300;

        line-height: 1;

        transition: transform 0.2s ease;
    }


    .hce-mobile-submenu-toggle.is-open span {
        transform: rotate(45deg);
    }


    /* Submenu */
    .hce-mobile-menu .sub-menu {
        padding: 0 0 14px 17px;
    }


    .hce-mobile-menu .sub-menu[hidden] {
        display: none !important;
    }


    .hce-mobile-menu .sub-menu li {
        border: 0;
    }


    .hce-mobile-menu .sub-menu a {
        display: block;

        padding: 9px 4px;

        color: var(--hce-muted);

        font-size: 13px;
        font-weight: 500;

        line-height: 1.45;

        text-decoration: none;
    }


    /* Bottom quiz button */
    .hce-mobile-style-button {
        width: 100%;

        min-height: 50px;

        display: flex;
        align-items: center;
        justify-content: center;

        margin-top: 25px;

        padding: 0 20px;

        background: var(--hce-dark);
        color: #ffffff;

        border-radius: 999px;

        font-size: 12px;
        font-weight: 700;

        letter-spacing: 0.05em;

        text-decoration: none;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {

    .hce-logo-main {
        font-size: 21px;
    }

    .hce-logo-her {
        font-size: 9px;
    }

}
/* =========================================================
   EDITORIAL HOMEPAGE HERO
   ========================================================= */

.hce-editorial-hero {
    padding: 82px 0 100px;
    background: #fbf8f6;
}


/* INTRO */

.hce-editorial-intro {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);

    align-items: end;
    gap: 70px;

    margin-bottom: 48px;
}

.hce-editorial-intro h1 {
    max-width: 850px;

    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(58px, 6.4vw, 94px);
    font-weight: 400;

    line-height: 0.95;
    letter-spacing: -0.05em;
}

.hce-editorial-intro h1 span {
    display: block;
    color: var(--hce-rose-dark);
}

.hce-editorial-intro-copy p {
    margin: 0 0 22px;

    color: var(--hce-muted);

    font-size: 16px;
    line-height: 1.75;
}

.hce-editorial-quiz-link {
    display: inline-block;

    padding-bottom: 3px;

    border-bottom: 1px solid var(--hce-dark);

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 0.09em;
}


/* =========================================================
   FEATURE GRID
   ========================================================= */

.hce-editorial-grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1.65fr)
        minmax(320px, 0.75fr);

    gap: 25px;
}


/* =========================================================
   MAIN FEATURE
   ========================================================= */

.hce-editorial-main {
    min-width: 0;
}

.hce-editorial-image {
    display: block;

    width: 100%;

    aspect-ratio: 16 / 10;

    overflow: hidden;

    border-radius: 26px;

    background: #eee4df;
}

.hce-editorial-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.45s ease;
}

.hce-editorial-main:hover .hce-editorial-image img {
    transform: scale(1.025);
}


.hce-editorial-main-content {
    max-width: 800px;

    padding-top: 24px;
}

.hce-editorial-category {
    display: inline-block;

    margin-bottom: 10px;

    color: var(--hce-rose-dark);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.hce-editorial-main-content h2 {
    margin: 0 0 14px;

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(34px, 3.7vw, 50px);
    font-weight: 400;

    line-height: 1.05;

    letter-spacing: -0.03em;
}

.hce-editorial-main-content p {
    max-width: 690px;

    margin: 0 0 19px;

    color: var(--hce-muted);

    font-size: 15px;
    line-height: 1.7;
}

.hce-editorial-read {
    display: inline-block;

    padding-bottom: 3px;

    border-bottom: 1px solid var(--hce-dark);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 0.09em;
}


/* =========================================================
   SIDE STORIES
   ========================================================= */

.hce-editorial-side {
    display: grid;

    grid-template-rows:
        repeat(2, minmax(0, 1fr));

    gap: 25px;
}

.hce-editorial-small {
    min-width: 0;
}

.hce-editorial-small-image {
    display: block;

    width: 100%;

    aspect-ratio: 16 / 10;

    margin-bottom: 17px;

    overflow: hidden;

    border-radius: 20px;

    background: #eee4df;
}

.hce-editorial-small-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.4s ease;
}

.hce-editorial-small:hover
.hce-editorial-small-image img {
    transform: scale(1.025);
}

.hce-editorial-small h3 {
    margin: 0;

    font-family: Georgia, "Times New Roman", serif;

    font-size: 26px;
    font-weight: 400;

    line-height: 1.08;

    letter-spacing: -0.02em;
}


/* =========================================================
   PLACEHOLDERS
   ========================================================= */

.hce-editorial-placeholder {
    width: 100%;
    height: 100%;

    display: flex;

    align-items: center;
    justify-content: center;
}

.hce-editorial-placeholder span {
    color: rgba(38, 34, 34, 0.30);

    font-family: Georgia, "Times New Roman", serif;

    font-size: clamp(24px, 3vw, 50px);

    letter-spacing: 0.07em;
}

.hce-editorial-fashion {
    background:
        linear-gradient(
            145deg,
            #e7d1ca,
            #f8eeeb
        );
}

.hce-editorial-hair {
    background:
        linear-gradient(
            145deg,
            #ded5ca,
            #f6f0e9
        );
}

.hce-editorial-nails {
    background:
        linear-gradient(
            145deg,
            #e2d0d9,
            #f7ebf0
        );
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1000px) {

    .hce-editorial-intro {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .hce-editorial-intro-copy {
        max-width: 620px;
    }

    .hce-editorial-grid {
        grid-template-columns: 1fr;
    }

    .hce-editorial-side {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: auto;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {

    .hce-editorial-hero {
        padding: 60px 0 72px;
    }

    .hce-editorial-intro {
        margin-bottom: 35px;
    }

    .hce-editorial-intro h1 {
        font-size: 51px;
    }

    .hce-editorial-grid {
        gap: 42px;
    }

    .hce-editorial-image {
        aspect-ratio: 4 / 5;
        border-radius: 20px;
    }

    .hce-editorial-main-content h2 {
        font-size: 34px;
    }

    .hce-editorial-side {
        grid-template-columns: 1fr;
        gap: 38px;
    }

    .hce-editorial-small-image {
        aspect-ratio: 4 / 5;
    }

    .hce-editorial-small h3 {
        font-size: 28px;
    }

}
/* =========================================================
   HER CURVE EDIT — HERO STEP 2
   Paste at the VERY BOTTOM of your existing style.css.
   This does not modify the site header/navigation.
   ========================================================= */

.hce3-hero {
    position: relative;
    min-height: clamp(590px, 51vw, 760px);
    overflow: hidden;
    background: #f8eee9;
    isolation: isolate;
}

.hce3-hero-picture,
.hce3-hero-picture img,
.hce3-hero-overlay {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.hce3-hero-picture {
    z-index: -3;
}

.hce3-hero-picture img {
    display: block;
    object-fit: cover;
    object-position: center center;
}

.hce3-hero-overlay {
    z-index: -2;
    background:
        linear-gradient(
            90deg,
            rgba(255, 251, 248, 0.98) 0%,
            rgba(255, 251, 248, 0.96) 30%,
            rgba(255, 251, 248, 0.76) 43%,
            rgba(255, 251, 248, 0.18) 58%,
            rgba(255, 251, 248, 0.02) 70%
        );
}

.hce3-hero-inner {
    position: relative;
    min-height: inherit;
    display: flex;
    align-items: center;
    padding-top: 58px;
    padding-bottom: 58px;
}

.hce3-hero-content {
    width: min(610px, 48%);
}

.hce3-eyebrow {
    margin: 0 0 18px;
    color: #9e5a66;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.19em;
    line-height: 1.5;
}

.hce3-eyebrow span {
    margin: 0 5px;
}

.hce3-hero h1 {
    margin: 0;
    color: #211c1b;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(57px, 5.55vw, 86px);
    font-weight: 400;
    line-height: 0.91;
    letter-spacing: -0.047em;
}

.hce3-hero h1 em {
    display: block;
    margin-top: 7px;
    color: #b53c69;
    font-weight: 400;
    font-style: italic;
}

.hce3-intro {
    max-width: 545px;
    margin: 28px 0 0;
    color: #4e4745;
    font-size: 16px;
    line-height: 1.65;
}

.hce3-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 28px;
}

.hce3-button {
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 23px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.055em;
    text-decoration: none;
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        background 0.2s ease;
}

.hce3-button:hover,
.hce3-button:focus {
    transform: translateY(-2px);
}

.hce3-button-primary {
    background: linear-gradient(135deg, #a93160, #c84777);
    color: #fff;
    box-shadow: 0 14px 30px rgba(169, 49, 96, 0.22);
}

.hce3-button-primary:hover,
.hce3-button-primary:focus {
    color: #fff;
    box-shadow: 0 17px 35px rgba(169, 49, 96, 0.28);
}

.hce3-button-secondary {
    border: 1px solid rgba(173, 61, 102, 0.46);
    background: rgba(255, 255, 255, 0.84);
    color: #2b2423;
}

.hce3-button-secondary:hover,
.hce3-button-secondary:focus {
    background: #fff;
    color: #a93160;
}

.hce3-arrow {
    font-size: 17px;
    font-weight: 400;
    line-height: 1;
}

.hce3-look-parts {
    width: min(510px, 100%);
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-top: 34px;
    border-top: 1px solid rgba(145, 93, 89, 0.18);
    padding-top: 19px;
}

.hce3-look-part {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 7px;
    padding: 0 10px;
    color: #aa3966;
    border-right: 1px solid rgba(145, 93, 89, 0.17);
}

.hce3-look-part:last-child {
    border-right: 0;
}

.hce3-look-part svg {
    width: 27px;
    height: 27px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.35;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.hce3-look-part span {
    color: #312a28;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.08em;
}

.hce3-brand-note {
    position: absolute;
    right: 4.5%;
    bottom: 9%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding: 17px 20px;
    border: 1px solid rgba(255,255,255,.72);
    border-radius: 18px;
    background: rgba(255,255,255,.72);
    box-shadow: 0 16px 38px rgba(55, 37, 31, 0.12);
    backdrop-filter: blur(12px);
    color: #403532;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 14px;
    font-style: italic;
    line-height: 1.33;
}

.hce3-brand-note strong {
    color: #ad3b66;
    font-weight: 400;
}


/* TABLET */

@media (max-width: 1050px) {

    .hce3-hero {
        min-height: 650px;
    }

    .hce3-hero-content {
        width: 57%;
    }

    .hce3-hero-overlay {
        background:
            linear-gradient(
                90deg,
                rgba(255, 251, 248, 0.98) 0%,
                rgba(255, 251, 248, 0.94) 38%,
                rgba(255, 251, 248, 0.48) 58%,
                rgba(255, 251, 248, 0.04) 77%
            );
    }

    .hce3-brand-note {
        right: 2.5%;
    }
}


/* MOBILE */

@media (max-width: 700px) {

    .hce3-hero {
        min-height: 730px;
    }

    .hce3-hero-picture img {
        object-position: 52% 20%;
    }

    .hce3-hero-overlay {
        background:
            linear-gradient(
                180deg,
                rgba(255,255,255,0.03) 0%,
                rgba(255,255,255,0.05) 31%,
                rgba(253,247,244,0.72) 48%,
                rgba(253,247,244,0.96) 62%,
                #fdf7f4 76%,
                #fdf7f4 100%
            );
    }

    .hce3-hero-inner {
        align-items: flex-end;
        padding-top: 260px;
        padding-bottom: 27px;
    }

    .hce3-hero-content {
        width: 100%;
    }

    .hce3-eyebrow {
        margin-bottom: 10px;
        font-size: 8px;
    }

    .hce3-hero h1 {
        max-width: 360px;
        font-size: clamp(43px, 13vw, 56px);
        line-height: 0.93;
    }

    .hce3-intro {
        max-width: 375px;
        margin-top: 16px;
        font-size: 13px;
        line-height: 1.5;
    }

    .hce3-actions {
        gap: 8px;
        margin-top: 18px;
    }

    .hce3-button {
        min-height: 43px;
        padding: 0 16px;
        font-size: 9px;
    }

    .hce3-look-parts {
        margin-top: 21px;
        padding-top: 14px;
    }

    .hce3-look-part {
        gap: 5px;
        padding: 0 5px;
    }

    .hce3-look-part svg {
        width: 22px;
        height: 22px;
    }

    .hce3-look-part span {
        font-size: 6.5px;
        letter-spacing: 0.04em;
    }

    .hce3-brand-note {
        display: none;
    }
}


/* SMALL PHONE */

@media (max-width: 390px) {

    .hce3-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .hce3-button {
        width: 100%;
    }
}
/* =========================================================
   HER CURVE EDIT
   SHOP BY STYLE — FINAL DESKTOP + MOBILE FIX
   ========================================================= */

.hce4-shop {
    width: 100%;
    padding: 34px 0 46px !important;
    background: #fffdfc !important;
}


/* -------------------------
   SECTION HEADING
   ------------------------- */

.hce4-shop-heading {
    width: 100%;

    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;

    gap: 25px;

    margin-bottom: 20px !important;
}

.hce4-shop-title-row {
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: wrap;

    gap: 8px 16px;
}

.hce4-shop-title-row h2 {
    margin: 0 !important;

    font-family: Georgia, "Times New Roman", serif !important;

    font-size: 38px !important;
    font-weight: 400 !important;

    line-height: 1 !important;
    letter-spacing: -0.035em;

    color: #211c1b !important;
}

.hce4-shop-title-row p {
    margin: 0 0 3px !important;

    font-size: 11px !important;
    line-height: 1.4;

    color: #756966 !important;
}

.hce4-view-all {
    flex-shrink: 0;

    color: #ad3d68 !important;

    font-size: 9px !important;
    font-weight: 700 !important;

    letter-spacing: 0.08em;

    text-decoration: none !important;
}


/* =========================================================
   DESKTOP GRID — 8 SMALL CARDS
   ========================================================= */

.hce4-shop-grid {
    width: 100% !important;

    display: grid !important;

    grid-template-columns:
        repeat(8, minmax(0, 1fr)) !important;

    gap: 12px !important;

    overflow: visible !important;
}


/* CARD */

.hce4-shop-card {
    width: 100% !important;
    min-width: 0 !important;

    display: block !important;

    overflow: hidden !important;

    border: 1px solid #eadfdb !important;
    border-radius: 11px !important;

    background: #ffffff !important;

    box-shadow:
        0 6px 18px rgba(51, 36, 32, 0.05) !important;

    text-decoration: none !important;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease !important;
}

.hce4-shop-card:hover {
    transform: translateY(-4px);

    box-shadow:
        0 13px 28px
        rgba(51, 36, 32, 0.10) !important;
}


/* -------------------------
   IMAGE — IMPORTANT FIX
   ------------------------- */

.hce4-shop-image {
    width: 100% !important;

    height: 180px !important;

    overflow: hidden !important;

    background: #f6ece8 !important;

    aspect-ratio: auto !important;
}

.hce4-shop-image img {
    width: 100% !important;
    height: 100% !important;

    display: block !important;

    object-fit: cover !important;
    object-position: center top !important;

    margin: 0 !important;
    padding: 0 !important;

    max-width: none !important;

    transition:
        transform 0.35s ease !important;
}

.hce4-shop-card:hover
.hce4-shop-image img {
    transform: scale(1.035);
}


/* CARD CAPTION */

.hce4-shop-card-copy {
    min-height: 58px !important;

    display: flex !important;
    flex-direction: column !important;

    align-items: center !important;
    justify-content: center !important;

    padding: 8px 5px 9px !important;

    background: #fbf0f1 !important;

    text-align: center !important;
}

.hce4-shop-card-copy h3 {
    margin: 0 !important;

    font-family: Georgia, "Times New Roman", serif !important;

    font-size: 15px !important;
    font-weight: 400 !important;

    line-height: 1.05 !important;

    color: #292221 !important;
}

.hce4-shop-card-copy p {
    margin: 4px 0 0 !important;

    font-size: 7.5px !important;

    line-height: 1.25;

    color: #776b68 !important;
}


/* =========================================================
   MEDIUM DESKTOP / LAPTOP
   ========================================================= */

@media (max-width: 1200px) {

    .hce4-shop-grid {
        grid-template-columns:
            repeat(4, minmax(0, 1fr)) !important;

        gap: 15px !important;
    }

    .hce4-shop-image {
        height: 230px !important;
    }

}


/* =========================================================
   MOBILE — HORIZONTAL SWIPE
   ========================================================= */

@media (max-width: 760px) {

    .hce4-shop {
        padding: 30px 0 38px !important;
    }


    .hce4-shop-heading {
        align-items: center !important;

        margin-bottom: 16px !important;
    }


    .hce4-shop-title-row h2 {
        font-size: 30px !important;
    }


    .hce4-shop-title-row p {
        display: none !important;
    }


    .hce4-shop-grid {
        display: flex !important;

        grid-template-columns: none !important;

        gap: 10px !important;

        overflow-x: auto !important;
        overflow-y: hidden !important;

        padding:
            2px 2px 12px !important;

        scroll-snap-type: x proximity;

        scrollbar-width: none;
    }


    .hce4-shop-grid::-webkit-scrollbar {
        display: none;
    }


    .hce4-shop-card {
        flex: 0 0 128px !important;

        width: 128px !important;

        scroll-snap-align: start;
    }


    .hce4-shop-image {
        height: 150px !important;
    }


    .hce4-shop-card-copy {
        min-height: 48px !important;

        padding: 7px 4px !important;
    }


    .hce4-shop-card-copy h3 {
        font-size: 14px !important;
    }


    .hce4-shop-card-copy p {
        display: none !important;
    }

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 420px) {

    .hce4-shop-card {
        flex-basis: 116px !important;

        width: 116px !important;
    }

    .hce4-shop-image {
        height: 137px !important;
    }

}
/* =========================================================
   HER CURVE EDIT — FIND MY LOOK HOMEPAGE EXPERIENCE
   Paste this at the VERY BOTTOM of your existing style.css
   ========================================================= */

.hce5-find-look {
    padding: 82px 0;
    background: linear-gradient(120deg, #fffaf8 0%, #f9e9e9 100%);
}

.hce5-find-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(430px, .88fr);
    align-items: center;
    gap: clamp(55px, 7vw, 105px);
}

.hce5-kicker {
    margin: 0 0 11px;
    color: #ad3b68;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .22em;
}

.hce5-find-copy h2 {
    margin: 0;
    color: #211c1b;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(50px, 5.4vw, 77px);
    font-weight: 400;
    line-height: .94;
    letter-spacing: -.045em;
}

.hce5-description {
    max-width: 640px;
    margin: 24px 0 29px;
    color: #655b58;
    font-size: 15px;
    line-height: 1.7;
}

.hce5-step-grid {
    max-width: 650px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
    margin-bottom: 30px;
}

.hce5-step-card {
    min-height: 73px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 14px;
    border: 1px solid #ecdada;
    border-radius: 13px;
    background: rgba(255, 255, 255, .76);
}

.hce5-step-number {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: linear-gradient(135deg, #a92f5d, #c64b78);
    color: #fff;
    font-size: 9px;
    font-weight: 700;
}

.hce5-step-card strong {
    display: block;
    margin-bottom: 3px;
    color: #2e2624;
    font-size: 12px;
}

.hce5-step-card small {
    display: block;
    color: #81726f;
    font-size: 8px;
    line-height: 1.3;
}

.hce5-start-button {
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 0 29px;
    border-radius: 999px;
    background: linear-gradient(135deg, #a82f5d, #c64a77);
    color: #fff !important;
    box-shadow: 0 14px 30px rgba(171, 48, 95, .20);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .08em;
    text-decoration: none !important;
    transition: transform .2s ease, box-shadow .2s ease;
}

.hce5-start-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 18px 36px rgba(171, 48, 95, .27);
}

.hce5-start-button span {
    font-size: 18px;
    font-weight: 400;
}

.hce5-complete-look {
    padding: 32px;
    border: 1px solid #ead9d5;
    border-radius: 27px;
    background: rgba(255, 255, 255, .85);
    box-shadow: 0 22px 55px rgba(62, 42, 36, .08);
}

.hce5-complete-heading p {
    margin: 0 0 7px;
    color: #ae3b67;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .20em;
}

.hce5-complete-heading h3 {
    margin: 0 0 23px;
    color: #272120;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 39px;
    font-weight: 400;
    line-height: 1;
}

.hce5-complete-heading h3 em {
    display: block;
    margin-top: 4px;
    color: #ad3b67;
    font-weight: 400;
}

.hce5-look-collage {
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    grid-template-rows: repeat(3, 112px);
    gap: 9px;
}

.hce5-look-main {
    position: relative;
    grid-row: 1 / 4;
    overflow: hidden;
    border-radius: 17px;
    background: #f2e3df;
}

.hce5-look-main img,
.hce5-look-hair img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
}

.hce5-look-main > span,
.hce5-look-hair > span {
    position: absolute;
    left: 9px;
    bottom: 9px;
    padding: 5px 9px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .92);
    color: #352b28;
    font-size: 7px;
    font-weight: 700;
    letter-spacing: .08em;
}

.hce5-look-mini {
    position: relative;
    overflow: hidden;
    border-radius: 13px;
}

.hce5-look-nails,
.hce5-look-accessories {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 10px;
    text-align: center;
}

.hce5-look-nails {
    background: linear-gradient(135deg, #f3d9df, #fff7f4);
}

.hce5-look-accessories {
    background: linear-gradient(135deg, #ede1d5, #fffaf5);
}

.hce5-simple-icon {
    margin-bottom: 4px;
    color: #ae3b67;
    font-size: 25px;
}

.hce5-look-mini strong {
    color: #332927;
    font-size: 8px;
    letter-spacing: .08em;
}

.hce5-look-mini small {
    margin-top: 4px;
    color: #847572;
    font-size: 7px;
}

.hce5-benefits {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 14px;
    margin: 22px 0 0;
    padding: 0;
    list-style: none;
}

.hce5-benefits li {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #574c49;
    font-size: 9px;
}

.hce5-benefits li span {
    width: 19px;
    height: 19px;
    flex: 0 0 19px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #ba456f;
    border-radius: 50%;
    color: #ae3b67;
    font-size: 9px;
}

@media (max-width: 950px) {
    .hce5-find-grid {
        grid-template-columns: 1fr;
    }

    .hce5-complete-look {
        max-width: 680px;
    }
}

@media (max-width: 600px) {
    .hce5-find-look {
        padding: 57px 0;
    }

    .hce5-find-grid {
        gap: 38px;
    }

    .hce5-find-copy h2 {
        font-size: 44px;
    }

    .hce5-description {
        font-size: 14px;
    }

    .hce5-step-grid {
        grid-template-columns: 1fr;
    }

    .hce5-start-button {
        width: 100%;
    }

    .hce5-complete-look {
        padding: 20px;
        border-radius: 20px;
    }

    .hce5-complete-heading h3 {
        font-size: 32px;
    }

    .hce5-look-collage {
        grid-template-rows: repeat(3, 90px);
    }

    .hce5-benefits {
        grid-template-columns: 1fr;
    }
}
/* =========================================================
   HER CURVE EDIT — TRENDING NOW
   ========================================================= */

.hce6-trending {
    padding: 76px 0 88px;
    background: #fff;
}


/* HEADING */

.hce6-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 30px;

    margin-bottom: 22px;
}

.hce6-kicker {
    margin: 0 0 8px;

    color: #b23e69;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .20em;
}

.hce6-heading h2 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(42px, 4.5vw, 64px);

    font-weight: 400;

    line-height: .98;

    letter-spacing: -.04em;
}

.hce6-heading h2 em {
    color: #b23e69;

    font-weight: 400;
}

.hce6-heading-copy {
    margin: 9px 0 0;

    color: #756b68;

    font-size: 11px;
}

.hce6-view-all {
    flex: 0 0 auto;

    color: #b23e69 !important;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .08em;

    text-decoration: none !important;
}


/* TOPIC BAR */

.hce6-topic-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 8px;

    margin-bottom: 24px;
}

.hce6-topic-row a {
    min-width: 75px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: 30px;

    padding: 0 14px;

    border: 1px solid #eee1df;

    border-radius: 999px;

    background: #fff;

    color: #5d5350;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .05em;

    text-decoration: none;

    transition: .2s ease;
}

.hce6-topic-row a:hover {
    border-color: #bd5278;

    color: #ac3864;
}

.hce6-topic-row .hce6-topic-active {
    border-color: #b63d68;

    background:
        linear-gradient(
            135deg,
            #aa315e,
            #c64a77
        );

    color: #fff;
}


/* ARTICLE GRID */

.hce6-grid {
    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 16px;
}


/* ARTICLE CARD */

.hce6-card {
    min-width: 0;

    overflow: hidden;

    border: 1px solid #eee4e0;

    border-radius: 14px;

    background: #fff;

    box-shadow:
        0 8px 22px
        rgba(55, 40, 35, .045);

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.hce6-card:hover {
    transform: translateY(-4px);

    box-shadow:
        0 15px 32px
        rgba(55, 40, 35, .09);
}


/* IMAGE */

.hce6-image {
    width: 100%;
    height: 245px;

    display: block;

    overflow: hidden;

    background: #f4e9e5;
}

.hce6-image img {
    width: 100% !important;
    height: 100% !important;

    display: block;

    object-fit: cover;

    object-position: center top;

    transition:
        transform .35s ease;
}

.hce6-card:hover
.hce6-image img {
    transform: scale(1.035);
}


/* COPY */

.hce6-card-copy {
    padding: 15px 15px 17px;
}

.hce6-category {
    display: block;

    margin-bottom: 7px;

    color: #b03b67;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .12em;

    text-transform: uppercase;
}

.hce6-card-copy h3 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 19px;
    font-weight: 400;

    line-height: 1.13;
}

.hce6-card-copy h3 a {
    color: #2a2321 !important;

    text-decoration: none !important;
}

.hce6-read {
    display: inline-block;

    margin-top: 13px;

    color: #a93661 !important;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .10em;

    text-decoration: none !important;
}


/* LAPTOP */

@media (max-width: 1100px) {

    .hce6-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

}


/* MOBILE */

@media (max-width: 700px) {

    .hce6-trending {
        padding: 58px 0 64px;
    }


    .hce6-heading {
        align-items: center;
    }


    .hce6-heading-copy {
        display: none;
    }


    .hce6-topic-row {
        flex-wrap: nowrap;

        overflow-x: auto;

        padding-bottom: 7px;

        scrollbar-width: none;
    }

    .hce6-topic-row::-webkit-scrollbar {
        display: none;
    }


    .hce6-topic-row a {
        flex: 0 0 auto;
    }


    .hce6-grid {
        display: flex;

        gap: 13px;

        overflow-x: auto;

        padding: 2px 2px 14px;

        scroll-snap-type: x proximity;

        scrollbar-width: none;
    }

    .hce6-grid::-webkit-scrollbar {
        display: none;
    }


    .hce6-card {
        flex: 0 0 225px;

        scroll-snap-align: start;
    }


    .hce6-image {
        height: 260px;
    }

}
/* =========================================================
   HER CURVE EDIT — FIND YOUR BODY SHAPE
   ========================================================= */

.hce7-bodyshape {
    padding: 78px 0 84px;
    background: #fffaf8;
}


/* HEADER */

.hce7-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 45px;

    margin-bottom: 30px;
}

.hce7-kicker {
    margin: 0 0 8px;

    color: #b53b68;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .2em;
}

.hce7-heading h2 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(43px, 4.7vw, 67px);

    font-weight: 400;

    line-height: .96;

    letter-spacing: -.04em;
}

.hce7-heading h2 em {
    display: block;

    color: #b43c68;

    font-weight: 400;
}

.hce7-heading-copy {
    max-width: 355px;

    margin: 0 0 4px;

    color: #776b68;

    font-size: 11px;

    line-height: 1.55;
}


/* =========================================================
   6 SHAPE CARDS
   ========================================================= */

.hce7-shape-grid {
    display: grid;

    grid-template-columns:
        repeat(6, minmax(0, 1fr));

    gap: 13px;
}

.hce7-shape-card {
    overflow: hidden;

    border: 1px solid #eadeda;

    border-radius: 15px;

    background: #fff;

    box-shadow:
        0 8px 24px
        rgba(60, 42, 36, .045);

    text-decoration: none !important;

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.hce7-shape-card:hover {
    transform: translateY(-5px);

    box-shadow:
        0 15px 34px
        rgba(60, 42, 36, .10);
}


/* VISUAL */

.hce7-shape-visual {
    height: 235px;

    display: flex;

    align-items: center;
    justify-content: center;

    position: relative;

    overflow: hidden;

    background:
        linear-gradient(
            180deg,
            #f8e8e9 0%,
            #fff7f4 100%
        );
}


/* =========================================================
   SIMPLE BODY-SHAPE SILHOUETTES
   Later we can replace these with real body-shape models.
   ========================================================= */

.hce7-figure {
    position: relative;

    width: 105px;
    height: 190px;
}


/* HEAD */

.hce7-figure::before {
    content: "";

    position: absolute;

    left: 50%;
    top: 3px;

    width: 36px;
    height: 36px;

    transform: translateX(-50%);

    border-radius: 50%;

    background:
        linear-gradient(
            135deg,
            #d7a27f,
            #b87655
        );

    box-shadow:
        0 4px 9px
        rgba(72, 44, 35, .12);
}


/* BODY */

.hce7-figure::after {
    content: "";

    position: absolute;

    left: 50%;
    top: 45px;

    width: 100%;
    height: 140px;

    transform: translateX(-50%);

    background:
        linear-gradient(
            180deg,
            #b8466c,
            #8f2d52
        );

    border-radius:
        28px 28px
        18px 18px;
}


/* APPLE */

.hce7-figure-apple::after {
    clip-path:
        polygon(
            32% 0%,
            68% 0%,
            79% 24%,
            82% 49%,
            70% 71%,
            63% 100%,
            37% 100%,
            30% 71%,
            18% 49%,
            21% 24%
        );
}


/* PEAR */

.hce7-figure-pear::after {
    clip-path:
        polygon(
            38% 0%,
            62% 0%,
            67% 28%,
            80% 58%,
            70% 100%,
            30% 100%,
            20% 58%,
            33% 28%
        );
}


/* HOURGLASS */

.hce7-figure-hourglass::after {
    clip-path:
        polygon(
            29% 0%,
            71% 0%,
            66% 25%,
            57% 45%,
            71% 70%,
            65% 100%,
            35% 100%,
            29% 70%,
            43% 45%,
            34% 25%
        );
}


/* RECTANGLE */

.hce7-figure-rectangle::after {
    clip-path:
        polygon(
            32% 0%,
            68% 0%,
            70% 100%,
            30% 100%
        );
}


/* INVERTED TRIANGLE */

.hce7-figure-inverted-triangle::after {
    clip-path:
        polygon(
            18% 0%,
            82% 0%,
            69% 37%,
            60% 100%,
            40% 100%,
            31% 37%
        );
}


/* NOT SURE */

.hce7-unsure {
    width: 115px;
    height: 115px;

    display: flex;

    align-items: center;
    justify-content: center;

    border: 1px solid #dcaabd;

    border-radius: 50%;

    background:
        rgba(255,255,255,.75);

    color: #b43c68;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 68px;

    box-shadow:
        0 12px 28px
        rgba(65, 40, 35, .08);
}


/* CARD COPY */

.hce7-shape-copy {
    min-height: 77px;

    padding: 13px 9px;

    text-align: center;

    background: #fff;
}

.hce7-shape-copy h3 {
    margin: 0;

    color: #28211f !important;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 18px;

    font-weight: 400;
}

.hce7-shape-copy p {
    margin: 5px 0 0;

    color: #807370;

    font-size: 8px;

    line-height: 1.4;
}


/* =========================================================
   BOTTOM CTA
   ========================================================= */

.hce7-footer {
    display: flex;

    align-items: center;
    justify-content: flex-end;

    gap: 15px;

    margin-top: 21px;
}

.hce7-footer p {
    margin: 0;

    color: #766966;

    font-size: 10px;
}

.hce7-footer a {
    min-height: 37px;

    display: inline-flex;

    align-items: center;

    padding: 0 18px;

    border-radius: 999px;

    background: #ad3965;

    color: #fff !important;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .07em;

    text-decoration: none !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1050px) {

    .hce7-shape-grid {
        grid-template-columns:
            repeat(3, 1fr);
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {

    .hce7-bodyshape {
        padding:
            58px 0 64px;
    }


    .hce7-heading {
        display: block;

        margin-bottom: 23px;
    }


    .hce7-heading-copy {
        margin-top: 14px;
    }


    .hce7-shape-grid {
        display: flex;

        gap: 11px;

        overflow-x: auto;

        padding:
            2px 2px 13px;

        scroll-snap-type:
            x proximity;

        scrollbar-width: none;
    }


    .hce7-shape-grid::-webkit-scrollbar {
        display: none;
    }


    .hce7-shape-card {
        flex:
            0 0 150px;

        scroll-snap-align:
            start;
    }


    .hce7-shape-visual {
        height: 190px;
    }


    .hce7-figure {
        transform:
            scale(.82);
    }


    .hce7-footer {
        justify-content:
            space-between;

        margin-top: 15px;
    }

}
/* =========================================================
   HER CURVE EDIT — STYLE OVER 50
   ========================================================= */

.hce8-over50 {
    padding: 76px 0 88px;
    background: #fff;
}


/* HEADING */

.hce8-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 35px;

    margin-bottom: 26px;
}

.hce8-kicker {
    margin: 0 0 8px;

    color: #b53c68;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .2em;
}

.hce8-heading h2 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(43px, 4.5vw, 64px);

    font-weight: 400;

    line-height: .98;

    letter-spacing: -.04em;
}

.hce8-heading h2 em {
    color: #b43c68;

    font-weight: 400;
}

.hce8-heading-copy {
    margin: 9px 0 0;

    color: #776b68;

    font-size: 11px;

    line-height: 1.5;
}

.hce8-view-all {
    flex-shrink: 0;

    color: #b33c67 !important;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .08em;

    text-decoration: none !important;
}


/* GRID */

.hce8-grid {
    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 15px;
}


/* CARD */

.hce8-card {
    overflow: hidden;

    border: 1px solid #eee2de;

    border-radius: 14px;

    background: #fff;

    box-shadow:
        0 8px 22px
        rgba(52, 39, 35, .045);

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.hce8-card:hover {
    transform: translateY(-4px);

    box-shadow:
        0 15px 32px
        rgba(52, 39, 35, .09);
}


/* IMAGE */

.hce8-image {
    width: 100%;
    height: 290px;

    display: block;

    overflow: hidden;

    background: #f5eae6;
}

.hce8-image img {
    width: 100% !important;
    height: 100% !important;

    display: block;

    object-fit: cover;
    object-position: center top;

    transition:
        transform .35s ease;
}

.hce8-card:hover
.hce8-image img {
    transform: scale(1.035);
}


/* COPY */

.hce8-card-copy {
    padding: 15px 15px 18px;
}

.hce8-label {
    display: block;

    margin-bottom: 7px;

    color: #b23c68;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .13em;
}

.hce8-card-copy h3 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 20px;
    font-weight: 400;

    line-height: 1.12;
}

.hce8-card-copy h3 a {
    color: #292220 !important;

    text-decoration: none !important;
}

.hce8-read {
    display: inline-block;

    margin-top: 13px;

    color: #ac3863 !important;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .1em;

    text-decoration: none !important;
}


/* TABLET */

@media (max-width: 1050px) {

    .hce8-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

}


/* MOBILE */

@media (max-width: 700px) {

    .hce8-over50 {
        padding: 58px 0 66px;
    }

    .hce8-heading {
        align-items: center;
    }

    .hce8-heading-copy {
        display: none;
    }

    .hce8-grid {
        display: flex;

        gap: 12px;

        overflow-x: auto;

        padding:
            2px 2px 14px;

        scroll-snap-type:
            x proximity;

        scrollbar-width: none;
    }

    .hce8-grid::-webkit-scrollbar {
        display: none;
    }

    .hce8-card {
        flex: 0 0 220px;

        scroll-snap-align: start;
    }

    .hce8-image {
        height: 265px;
    }

}
/* =========================================================
   HER CURVE EDIT — HAIR + NAILS
   ========================================================= */

.hce9-beauty {
    padding: 82px 0 92px;
    background: #fbf4f2;
}


/* MAIN HEADING */

.hce9-main-heading {
    margin-bottom: 35px;
}

.hce9-kicker {
    margin: 0 0 8px;
    color: #b43b68;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .21em;
}

.hce9-main-heading h2 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(48px, 5vw, 70px);

    font-weight: 400;

    line-height: .95;

    letter-spacing: -.045em;
}

.hce9-main-heading h2 span {
    color: #b53c69;
    font-style: italic;
}

.hce9-main-heading > div > p:last-child {
    margin: 13px 0 0;

    color: #776b68;

    font-size: 12px;
}


/* TWO COLUMNS */

.hce9-columns {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 34px;
}


/* COLUMN */

.hce9-column {
    padding: 27px;

    border: 1px solid #eadeda;

    border-radius: 22px;

    background: #fff;
}

.hce9-column-heading {
    display: flex;

    align-items: flex-end;
    justify-content: space-between;

    gap: 20px;

    margin-bottom: 21px;
}

.hce9-column-heading p {
    margin: 0 0 5px;

    color: #b23b67;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .18em;
}

.hce9-column-heading h3 {
    margin: 0;

    color: #28211f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 34px;
    font-weight: 400;

    line-height: 1;
}

.hce9-column-heading h3 em {
    color: #b33c68;
    font-weight: 400;
}

.hce9-column-heading > a {
    flex-shrink: 0;

    color: #ad3964 !important;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .08em;

    text-decoration: none !important;
}


/* CARD GRID */

.hce9-card-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 11px;
}


/* CARD */

.hce9-card {
    min-width: 0;

    overflow: hidden;

    border: 1px solid #eee3df;

    border-radius: 13px;

    background: #fff;

    transition:
        transform .22s ease,
        box-shadow .22s ease;
}

.hce9-card:hover {
    transform: translateY(-3px);

    box-shadow:
        0 13px 28px
        rgba(60, 40, 34, .09);
}


/* IMAGE */

.hce9-image {
    width: 100%;
    height: 205px;

    display: block;

    overflow: hidden;

    background: #f5e8e5;
}

.hce9-image img {
    width: 100% !important;
    height: 100% !important;

    display: block;

    object-fit: cover;
    object-position: center top;

    transition:
        transform .35s ease;
}

.hce9-card:hover
.hce9-image img {
    transform: scale(1.035);
}


/* NAIL PLACEHOLDER */

.hce9-nail-placeholder {
    width: 100%;
    height: 100%;

    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    gap: 7px;

    background:
        linear-gradient(
            135deg,
            #f4d9df,
            #fff7f4
        );

    color: #b43d68;
}

.hce9-nail-placeholder span {
    font-size: 34px;
}

.hce9-nail-placeholder strong {
    font-size: 8px;

    letter-spacing: .15em;
}


/* COPY */

.hce9-card-copy {
    padding: 12px 11px 14px;
}

.hce9-card-copy > span {
    display: block;

    margin-bottom: 6px;

    color: #b33d68;

    font-size: 6.5px;
    font-weight: 700;

    letter-spacing: .12em;
}

.hce9-card-copy h4 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 17px;
    font-weight: 400;

    line-height: 1.12;
}

.hce9-card-copy h4 a {
    color: #292220 !important;

    text-decoration: none !important;
}

.hce9-explore {
    display: inline-block;

    margin-top: 10px;

    color: #ad3964 !important;

    font-size: 6.5px;
    font-weight: 700;

    letter-spacing: .09em;

    text-decoration: none !important;
}


/* TABLET */

@media (max-width: 1000px) {

    .hce9-columns {
        grid-template-columns: 1fr;
    }

}


/* MOBILE */

@media (max-width: 650px) {

    .hce9-beauty {
        padding: 58px 0 67px;
    }

    .hce9-column {
        padding: 20px;
    }

    .hce9-card-grid {
        display: flex;

        gap: 10px;

        overflow-x: auto;

        padding-bottom: 12px;

        scroll-snap-type: x proximity;

        scrollbar-width: none;
    }

    .hce9-card-grid::-webkit-scrollbar {
        display: none;
    }

    .hce9-card {
        flex: 0 0 175px;

        scroll-snap-align: start;
    }

    .hce9-image {
        height: 215px;
    }

}
/* =========================================================
   HER CURVE EDIT — SEASONAL + OCCASIONS
   ========================================================= */

.hce10-seasonal {
    padding: 82px 0 92px;
    background: #fffdfc;
}


/* HEADING */

.hce10-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 35px;

    margin-bottom: 28px;
}

.hce10-kicker {
    margin: 0 0 8px;

    color: #b43b68;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .21em;
}

.hce10-heading h2 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(45px, 4.7vw, 67px);

    font-weight: 400;

    line-height: .96;

    letter-spacing: -.04em;
}

.hce10-heading h2 span {
    color: #b43b68;
}

.hce10-heading h2 em {
    color: #b43b68;

    font-weight: 400;
}

.hce10-heading-copy {
    max-width: 560px;

    margin: 12px 0 0;

    color: #776b68;

    font-size: 11px;

    line-height: 1.55;
}

.hce10-view-all {
    flex-shrink: 0;

    color: #ad3965 !important;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .08em;

    text-decoration: none !important;
}


/* GRID */

.hce10-grid {
    display: grid;

    grid-template-columns:
        repeat(6, minmax(0, 1fr));

    gap: 14px;
}


/* CARD */

.hce10-card {
    min-width: 0;

    overflow: hidden;

    border: 1px solid #eee1dd;

    border-radius: 16px;

    background: #fff;

    box-shadow:
        0 8px 24px
        rgba(58, 40, 34, .05);

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.hce10-card:hover {
    transform: translateY(-5px);

    box-shadow:
        0 16px 34px
        rgba(58, 40, 34, .10);
}


/* IMAGE */

.hce10-image {
    position: relative;

    width: 100%;
    height: 285px;

    display: block;

    overflow: hidden;

    background: #f2e5e1;
}

.hce10-image img {
    width: 100% !important;
    height: 100% !important;

    display: block;

    object-fit: cover;
    object-position: center top;

    transition:
        transform .4s ease;
}

.hce10-card:hover
.hce10-image img {
    transform: scale(1.045);
}


/* IMAGE GRADIENT */

.hce10-image-overlay {
    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(30,20,18,0) 45%,
            rgba(30,20,18,.70) 100%
        );
}


/* IMAGE TEXT */

.hce10-image-text {
    position: absolute;

    left: 17px;
    right: 17px;
    bottom: 16px;

    color: #fff;
}

.hce10-image-text span {
    display: block;

    margin-bottom: 5px;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .16em;
}

.hce10-image-text h3 {
    margin: 0;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 24px;
    font-weight: 400;

    line-height: 1;
}


/* COPY */

.hce10-copy {
    min-height: 92px;

    padding: 13px 14px 15px;
}

.hce10-copy p {
    margin: 0;

    color: #766a67;

    font-size: 9px;

    line-height: 1.5;
}

.hce10-copy > a {
    display: inline-block;

    margin-top: 10px;

    color: #ae3964 !important;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .1em;

    text-decoration: none !important;
}


/* LAPTOP */

@media (max-width: 1200px) {

    .hce10-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));
    }

    .hce10-image {
        height: 320px;
    }

}


/* MOBILE */

@media (max-width: 700px) {

    .hce10-seasonal {
        padding: 58px 0 66px;
    }


    .hce10-heading {
        align-items: center;
    }


    .hce10-heading-copy {
        display: none;
    }


    .hce10-grid {
        display: flex;

        gap: 12px;

        overflow-x: auto;

        padding:
            2px 2px 14px;

        scroll-snap-type:
            x proximity;

        scrollbar-width: none;
    }


    .hce10-grid::-webkit-scrollbar {
        display: none;
    }


    .hce10-card {
        flex: 0 0 220px;

        scroll-snap-align: start;
    }


    .hce10-image {
        height: 285px;
    }

}
/* =========================================================
   HER CURVE EDIT — FINAL FIND MY LOOK CTA
   ========================================================= */

.hce11-final {
    padding: 88px 0 100px;

    background:
        linear-gradient(
            180deg,
            #fffdfc 0%,
            #f9eded 100%
        );
}


/* BIG CARD */

.hce11-card {
    min-height: 510px;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(420px, .9fr);

    overflow: hidden;

    border: 1px solid #ead9d5;

    border-radius: 30px;

    background:
        #fff;

    box-shadow:
        0 26px 70px
        rgba(63, 42, 36, .09);
}


/* =========================================================
   LEFT COPY
   ========================================================= */

.hce11-copy {
    display: flex;
    flex-direction: column;

    justify-content: center;

    padding:
        clamp(45px, 6vw, 82px);
}

.hce11-kicker {
    margin: 0 0 11px;

    color: #b33b68;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .21em;
}

.hce11-copy h2 {
    max-width: 650px;

    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(50px, 5vw, 75px);

    font-weight: 400;

    line-height: .95;

    letter-spacing: -.045em;
}

.hce11-copy h2 em {
    display: block;

    color: #b43b68;

    font-weight: 400;
}

.hce11-description {
    max-width: 590px;

    margin:
        24px 0 30px;

    color: #6f6360;

    font-size: 14px;

    line-height: 1.7;
}


/* BUTTONS */

.hce11-buttons {
    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 12px;
}

.hce11-primary,
.hce11-secondary {
    min-height: 50px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    border-radius: 999px;

    padding:
        0 25px;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .08em;

    text-decoration: none !important;
}

.hce11-primary {
    gap: 13px;

    border:
        1px solid #ae3763;

    background:
        linear-gradient(
            135deg,
            #a92f5d,
            #ca4c79
        );

    color: #fff !important;

    box-shadow:
        0 14px 30px
        rgba(177, 52, 97, .20);
}

.hce11-primary span {
    font-size: 17px;
    font-weight: 400;
}

.hce11-secondary {
    border:
        1px solid #d9c5c1;

    background: #fff;

    color: #342b29 !important;
}


/* =========================================================
   IMAGE SIDE
   ========================================================= */

.hce11-visual {
    position: relative;

    min-height: 510px;

    overflow: hidden;

    background: #f3e4df;
}

.hce11-image-main {
    position: absolute;

    inset: 0;
}

.hce11-image-main img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    /*
     * Signature model stays visible.
     */
    object-position: 67% center;
}


/* SOFT GRADIENT */

.hce11-visual::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(255,255,255,.13),
            rgba(255,255,255,0) 45%
        );

    pointer-events: none;
}


/* FLOATING CARD */

.hce11-floating-card {
    position: absolute;

    z-index: 2;

    right: 25px;
    bottom: 25px;

    width: 190px;

    padding:
        20px 18px;

    border:
        1px solid rgba(
            255,
            255,
            255,
            .65
        );

    border-radius: 18px;

    background:
        rgba(
            255,
            250,
            248,
            .91
        );

    backdrop-filter:
        blur(8px);

    box-shadow:
        0 18px 40px
        rgba(45, 30, 25, .13);
}

.hce11-floating-card span {
    display: block;

    margin-bottom: 8px;

    color: #b33c68;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .15em;
}

.hce11-floating-card strong {
    display: block;

    color: #2c2422;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 20px;

    font-weight: 400;

    line-height: 1.2;
}

.hce11-floating-card small {
    display: block;

    margin-top: 7px;

    color: #756864;

    font-size: 8px;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 950px) {

    .hce11-card {
        grid-template-columns:
            1fr;
    }

    .hce11-visual {
        min-height: 500px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .hce11-final {
    padding: 88px 0 65px;
}


    .hce11-card {
        border-radius: 22px;
    }


    .hce11-copy {
        padding:
            38px 23px 42px;
    }


    .hce11-copy h2 {
        font-size: 45px;
    }


    .hce11-buttons {
        display: grid;

        grid-template-columns:
            1fr;
    }


    .hce11-primary,
    .hce11-secondary {
        width: 100%;
    }


    .hce11-visual {
        min-height: 420px;
    }


    .hce11-floating-card {
        right: 15px;
        bottom: 15px;

        width: 165px;
    }

}
/* =========================================================
   HER CURVE EDIT — PREMIUM FOOTER
   ========================================================= */

.hce-footer {
    position: relative;

    background: #211d1c;

    color: #fff;
}


/* =========================================================
   MAIN FOOTER
   ========================================================= */

.hce-footer-main {
    padding: 78px 0 66px;
}

.hce-footer-grid {
    display: grid;

    grid-template-columns:
        minmax(300px, 1.65fr)
        repeat(3, minmax(150px, .75fr));

    gap: clamp(35px, 5vw, 80px);
}


/* =========================================================
   BRAND
   ========================================================= */

.hce-footer-brand {
    max-width: 420px;
}

.hce-footer-logo {
    display: inline-block;

    color: #fff !important;

    text-decoration: none !important;
}

.hce-footer-logo-main {
    display: block;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 42px;

    line-height: .95;

    letter-spacing: -.04em;
}

.hce-footer-logo-main > span {
    color: #d2678e;
}

.hce-footer-logo small {
    display: block;

    margin-top: 8px;

    color: #d1c3c0;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .22em;
}

.hce-footer-about {
    max-width: 390px;

    margin: 24px 0 25px;

    color: #c8bcba;

    font-size: 12px;

    line-height: 1.75;
}


/* QUIZ LINK */

.hce-footer-quiz {
    min-height: 42px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 12px;

    padding: 0 20px;

    border-radius: 999px;

    background:
        linear-gradient(
            135deg,
            #b03363,
            #d0527e
        );

    color: #fff !important;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .1em;

    text-decoration: none !important;

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.hce-footer-quiz:hover {
    transform: translateY(-2px);

    box-shadow:
        0 12px 25px
        rgba(183, 54, 100, .25);
}

.hce-footer-quiz span {
    font-size: 16px;
}


/* =========================================================
   LINK COLUMNS
   ========================================================= */

.hce-footer-column h3 {
    margin: 3px 0 20px;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 21px;
    font-weight: 400;
}

.hce-footer-column nav {
    display: flex;

    flex-direction: column;

    align-items: flex-start;

    gap: 12px;
}

.hce-footer-column nav a {
    position: relative;

    color: #bfb4b1 !important;

    font-size: 10px;

    text-decoration: none !important;

    transition:
        color .2s ease,
        transform .2s ease;
}

.hce-footer-column nav a:hover {
    color: #fff !important;

    transform: translateX(3px);
}


/* =========================================================
   BRAND STATEMENT
   ========================================================= */

.hce-footer-statement {
    border-top:
        1px solid rgba(255,255,255,.08);

    border-bottom:
        1px solid rgba(255,255,255,.08);

    padding: 24px 0;

    text-align: center;
}

.hce-footer-statement p {
    margin: 0;

    color: #bcaeab;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .24em;
}

.hce-footer-statement span {
    color: #dc779c;
}


/* =========================================================
   FOOTER BOTTOM
   ========================================================= */

.hce-footer-bottom {
    padding: 22px 0 27px;
}

.hce-footer-bottom-inner {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 25px;
}

.hce-footer-bottom p {
    margin: 0;

    color: #8f8280;

    font-size: 8px;
}

.hce-footer-legal {
    display: flex;

    align-items: center;

    gap: 20px;
}

.hce-footer-legal a {
    color: #9e918e !important;

    font-size: 8px;

    text-decoration: none !important;
}

.hce-footer-legal a:hover {
    color: #fff !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 950px) {

    .hce-footer-grid {
        grid-template-columns:
            repeat(2, 1fr);

        gap: 50px;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .hce-footer-main {
        padding:
            58px 0 48px;
    }


    .hce-footer-grid {
        grid-template-columns:
            1fr;

        gap: 39px;
    }


    .hce-footer-brand {
        max-width: none;
    }


    .hce-footer-logo-main {
        font-size: 38px;
    }


    .hce-footer-column {
        padding-top: 4px;

        border-top:
            1px solid rgba(
                255,
                255,
                255,
                .08
            );
    }


    .hce-footer-column h3 {
        margin-top: 20px;
    }


    .hce-footer-column nav {
        display: grid;

        grid-template-columns:
            repeat(2, 1fr);

        gap: 13px 18px;
    }


    .hce-footer-statement {
        padding:
            20px 15px;
    }


    .hce-footer-statement p {
        line-height: 1.8;
    }


    .hce-footer-bottom-inner {
        flex-direction: column;

        align-items: flex-start;

        gap: 14px;
    }


    .hce-footer-legal {
        flex-wrap: wrap;

        gap: 11px 18px;
    }

}
/* =========================================================
   HER CURVES EDIT — PREMIUM CATEGORY ARCHIVE
   ========================================================= */

.hcecat-page {
    background: #fff;
}


/* =========================================================
   HERO
   ========================================================= */

.hcecat-hero {
    padding: 82px 0 44px;

    background:
        linear-gradient(
            135deg,
            #fffaf8 0%,
            #f9eded 100%
        );
}

.hcecat-hero-grid {
    display: grid;

    grid-template-columns:
        minmax(0, 1.35fr)
        minmax(280px, .65fr);

    align-items: end;

    gap: 65px;
}

.hcecat-kicker {
    margin: 0 0 10px;

    color: #b43b68;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .22em;
}

.hcecat-hero h1 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(58px, 7vw, 105px);

    font-weight: 400;

    line-height: .9;

    letter-spacing: -.055em;
}

.hcecat-description {
    max-width: 700px;

    margin-top: 22px;

    color: #6d615e;

    font-size: 14px;

    line-height: 1.7;
}

.hcecat-description p {
    margin: 0;
}


/* SIDE NOTE */

.hcecat-hero-note {
    padding: 27px;

    border:
        1px solid #ead7d4;

    border-radius: 20px;

    background:
        rgba(
            255,
            255,
            255,
            .68
        );
}

.hcecat-hero-note span {
    display: block;

    margin-bottom: 10px;

    color: #b43c68;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .18em;
}

.hcecat-hero-note p {
    margin: 0;

    color: #443936;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 23px;

    line-height: 1.25;
}


/* =========================================================
   SUBCATEGORY CHIPS
   ========================================================= */

.hcecat-subcats {
    display: flex;

    flex-wrap: wrap;

    gap: 9px;

    margin-top: 40px;
}

.hcecat-subcats a {
    min-height: 38px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    padding: 0 18px;

    border:
        1px solid #dfcdca;

    border-radius: 999px;

    background: #fff;

    color: #433936 !important;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .04em;

    text-decoration: none !important;

    transition: .2s ease;
}

.hcecat-subcats a:hover {
    border-color: #b9406c;

    color: #ad3964 !important;

    transform:
        translateY(-2px);
}


/* =========================================================
   SECTION HEADINGS
   ========================================================= */

.hcecat-section-heading {
    margin-bottom: 25px;
}

.hcecat-section-heading > div > p {
    margin: 0 0 7px;

    color: #b43c68;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .2em;
}

.hcecat-section-heading h2 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(40px, 4vw, 60px);

    font-weight: 400;

    line-height: 1;
}

.hcecat-section-heading h2 em {
    color: #b43c68;

    font-weight: 400;
}


/* =========================================================
   FEATURED STORY
   ========================================================= */

.hcecat-featured {
    padding: 72px 0 82px;

    background: #fff;
}

.hcecat-featured-card {
    display: grid;

    grid-template-columns:
        minmax(0, 1.2fr)
        minmax(340px, .8fr);

    overflow: hidden;

    border:
        1px solid #eadeda;

    border-radius: 25px;

    background: #fff;

    box-shadow:
        0 18px 50px
        rgba(59, 41, 35, .07);
}

.hcecat-featured-image {
    height: 560px;

    display: block;

    overflow: hidden;

    background: #f4e8e4;
}

.hcecat-featured-image img {
    width: 100% !important;
    height: 100% !important;

    display: block;

    object-fit: cover;

    object-position: center top;

    transition:
        transform .4s ease;
}

.hcecat-featured-card:hover
.hcecat-featured-image img {
    transform:
        scale(1.025);
}

.hcecat-featured-copy {
    display: flex;

    flex-direction: column;

    justify-content: center;

    padding:
        clamp(38px, 5vw, 68px);
}

.hcecat-post-category {
    display: block;

    margin-bottom: 10px;

    color: #b43c68;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .15em;

    text-transform: uppercase;
}

.hcecat-featured-copy h2 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(34px, 3.4vw, 53px);

    font-weight: 400;

    line-height: 1.02;
}

.hcecat-featured-copy h2 a {
    color: #292220 !important;

    text-decoration: none !important;
}

.hcecat-featured-copy > p {
    margin: 21px 0 0;

    color: #6f6360;

    font-size: 12px;

    line-height: 1.7;
}

.hcecat-featured-button {
    width: fit-content;

    min-height: 45px;

    display: inline-flex;

    align-items: center;

    gap: 13px;

    margin-top: 27px;

    padding: 0 20px;

    border-radius: 999px;

    background:
        linear-gradient(
            135deg,
            #aa315f,
            #ca4c79
        );

    color: #fff !important;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .08em;

    text-decoration: none !important;
}


/* PLACEHOLDER */

.hcecat-placeholder {
    width: 100%;
    height: 100%;

    display: flex;

    align-items: center;
    justify-content: center;

    background:
        linear-gradient(
            135deg,
            #f1ddda,
            #fbf2ef
        );

    color: #b9a6a2;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 25px;

    letter-spacing: .08em;
}


/* =========================================================
   LATEST POSTS
   ========================================================= */

.hcecat-latest {
    padding: 82px 0 92px;

    background: #fbf7f5;
}

.hcecat-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 24px 19px;
}


/* POST CARD */

.hcecat-card {
    overflow: hidden;

    border:
        1px solid #eadfdb;

    border-radius: 15px;

    background: #fff;

    box-shadow:
        0 7px 22px
        rgba(55, 40, 35, .045);

    transition:
        transform .24s ease,
        box-shadow .24s ease;
}

.hcecat-card:hover {
    transform:
        translateY(-4px);

    box-shadow:
        0 15px 32px
        rgba(55, 40, 35, .09);
}

.hcecat-card-image {
    width: 100%;
    height: 390px;

    display: block;

    overflow: hidden;

    background: #f4e7e3;
}

.hcecat-card-image img {
    width: 100% !important;
    height: 100% !important;

    display: block;

    object-fit: cover;

    object-position: center top;

    transition:
        transform .35s ease;
}

.hcecat-card:hover
.hcecat-card-image img {
    transform:
        scale(1.03);
}

.hcecat-card-copy {
    padding: 18px 18px 21px;
}

.hcecat-card-copy h3 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 25px;
    font-weight: 400;

    line-height: 1.08;
}

.hcecat-card-copy h3 a {
    color: #292220 !important;

    text-decoration: none !important;
}

.hcecat-card-copy > p {
    margin: 12px 0 0;

    color: #776b68;

    font-size: 10px;

    line-height: 1.6;
}

.hcecat-read {
    display: inline-block;

    margin-top: 14px;

    color: #ad3964 !important;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .1em;

    text-decoration: none !important;
}


/* =========================================================
   PAGINATION
   ========================================================= */

.hcecat-pagination {
    margin-top: 45px;
}

.hcecat-pagination .nav-links {
    display: flex;

    align-items: center;
    justify-content: center;

    flex-wrap: wrap;

    gap: 7px;
}

.hcecat-pagination .page-numbers {
    min-width: 40px;
    height: 40px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    padding: 0 12px;

    border:
        1px solid #dfd0cc;

    border-radius: 999px;

    background: #fff;

    color: #463b38;

    font-size: 8px;
    font-weight: 700;

    text-decoration: none;
}

.hcecat-pagination
.page-numbers.current {
    border-color: #ad3964;

    background: #ad3964;

    color: #fff;
}


/* =========================================================
   QUIZ CTA
   ========================================================= */

.hcecat-quiz-cta {
    padding: 82px 0;

    background: #fff;
}

.hcecat-quiz-card {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 40px;

    padding:
        48px clamp(35px, 6vw, 75px);

    border-radius: 24px;

    background:
        linear-gradient(
            135deg,
            #f5dddd,
            #fff5f2
        );
}

.hcecat-quiz-card > div > p {
    margin: 0 0 7px;

    color: #b43b68;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .18em;
}

.hcecat-quiz-card h2 {
    margin: 0;

    color: #28211f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(36px, 4vw, 58px);

    font-weight: 400;

    line-height: .97;
}

.hcecat-quiz-card h2 em {
    color: #b43b68;

    font-weight: 400;
}

.hcecat-quiz-card > div > span {
    max-width: 560px;

    display: block;

    margin-top: 13px;

    color: #6d615e;

    font-size: 11px;

    line-height: 1.6;
}

.hcecat-quiz-card > a {
    min-width: 185px;
    min-height: 49px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 12px;

    flex-shrink: 0;

    padding: 0 22px;

    border-radius: 999px;

    background:
        linear-gradient(
            135deg,
            #aa315f,
            #ca4c79
        );

    color: #fff !important;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .08em;

    text-decoration: none !important;
}


/* =========================================================
   EMPTY
   ========================================================= */

.hcecat-empty {
    padding: 70px;

    border: 1px solid #eadeda;

    border-radius: 20px;

    background: #fff;

    text-align: center;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 950px) {

    .hcecat-hero-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .hcecat-hero-note {
        max-width: 500px;
    }

    .hcecat-featured-card {
        grid-template-columns: 1fr;
    }

    .hcecat-featured-image {
        height: 520px;
    }

    .hcecat-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {

    .hcecat-hero {
        padding:
            55px 0 35px;
    }

    .hcecat-hero h1 {
        font-size: 58px;
    }

    .hcecat-hero-note {
        padding: 20px;
    }

    .hcecat-subcats {
        flex-wrap: nowrap;

        overflow-x: auto;

        padding-bottom: 8px;

        scrollbar-width: none;
    }

    .hcecat-subcats::-webkit-scrollbar {
        display: none;
    }

    .hcecat-subcats a {
        flex: 0 0 auto;
    }


    .hcecat-featured {
        padding: 55px 0 62px;
    }

    .hcecat-featured-image {
        height: 420px;
    }

    .hcecat-featured-copy {
        padding: 30px 22px 35px;
    }


    .hcecat-latest {
        padding: 58px 0 65px;
    }

    .hcecat-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .hcecat-card-image {
        height: 440px;
    }


    .hcecat-quiz-cta {
        padding: 58px 0;
    }

    .hcecat-quiz-card {
        display: block;

        padding: 35px 24px;
    }

    .hcecat-quiz-card > a {
        width: 100%;

        margin-top: 25px;
    }

}
/* =========================================================
   HER CURVES EDIT — PREMIUM SINGLE ARTICLE
   ========================================================= */

.hcesingle {
    background: #fff;
}


/* =========================================================
   HERO
   ========================================================= */

.hcesingle-hero {
    padding: 55px 0 50px;

    background:
        linear-gradient(
            135deg,
            #fffaf8 0%,
            #f9eeee 100%
        );
}


/* BREADCRUMBS */

.hcesingle-breadcrumbs {
    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 8px;

    margin-bottom: 40px;

    color: #9b8c88;

    font-size: 8px;

    letter-spacing: .04em;
}

.hcesingle-breadcrumbs a {
    color: #8c7c78 !important;

    text-decoration: none !important;
}

.hcesingle-breadcrumbs strong {
    max-width: 430px;

    overflow: hidden;

    color: #5b504d;

    font-weight: 500;

    text-overflow: ellipsis;

    white-space: nowrap;
}


/* TITLE */

.hcesingle-title-wrap {
    max-width: 1050px;

    margin: 0 auto;

    text-align: center;
}

.hcesingle-category {
    margin: 0 0 12px;

    color: #b43b68;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: .2em;

    text-transform: uppercase;
}

.hcesingle-title-wrap h1 {
    margin: 0;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(52px, 6vw, 88px);

    font-weight: 400;

    line-height: .98;

    letter-spacing: -.05em;
}

.hcesingle-deck {
    max-width: 750px;

    margin: 24px auto 0;

    color: #6f6360;

    font-size: 15px;

    line-height: 1.65;
}


/* META */

.hcesingle-meta {
    display: flex;

    align-items: center;
    justify-content: center;

    flex-wrap: wrap;

    gap: 10px;

    margin-top: 25px;

    color: #8b7d79;

    font-size: 9px;
}

.hcesingle-meta strong {
    color: #493e3b;
}

.hcesingle-dot {
    color: #c18ba0;
}


/* =========================================================
   FEATURED IMAGE
   ========================================================= */

.hcesingle-featured {
    padding: 45px 0 0;

    background: #fff;
}

.hcesingle-featured figure {
    margin: 0;
}

.hcesingle-featured-img {
    width: 100%;
    max-height: 760px;

    display: block;

    object-fit: cover;

    object-position: center;

    border-radius: 22px;
}

.hcesingle-featured figcaption {
    margin-top: 9px;

    color: #948581;

    font-size: 8px;

    text-align: center;
}


/* =========================================================
   BODY
   ========================================================= */

.hcesingle-body {
    padding: 70px 0 95px;
}

.hcesingle-layout {
    max-width: 1370px;

    display: grid;

    grid-template-columns:
        170px
        minmax(0, 760px)
        320px;

    justify-content: center;

    align-items: start;

    gap: 34px;

    margin: 0 auto;

}


/* =========================================================
   SIDEBAR
   ========================================================= */

.hcesingle-side {
    align-self: start;

    position: sticky;

    top: 120px;

    display: flex;

    flex-direction: column;

    gap: 15px;
}

.hcesingle-side-card,
.hcesingle-quiz-side {
    padding: 21px;

    border: 1px solid #eadeda;

    border-radius: 16px;

    background: #fff;
}

.hcesingle-side-card > span {
    display: block;

    margin-bottom: 8px;

    color: #b33c68;

    font-size: 7px;
    font-weight: 700;

    letter-spacing: .17em;
}

.hcesingle-side-card p {
    margin: 0;

    color: #716562;

    font-size: 10px;

    line-height: 1.55;
}


/* QUIZ CARD */

.hcesingle-quiz-side {
    background:
        linear-gradient(
            145deg,
            #f5dddd,
            #fff8f5
        );

    text-decoration: none !important;
}

.hcesingle-quiz-side small {
    display: block;

    color: #ad3964;

    font-size: 6px;
    font-weight: 700;

    letter-spacing: .13em;
}

.hcesingle-quiz-side strong {
    display: block;

    margin: 8px 0 6px;

    color: #29211f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 23px;

    font-weight: 400;
}

.hcesingle-quiz-side > span {
    color: #a63762;

    font-size: 8px;
}


/* =========================================================
   ARTICLE CONTENT
   ========================================================= */

.hcesingle-content {
    min-width: 0;
}


/* DISCLOSURE */

.hcesingle-disclosure {
    margin-bottom: 33px;

    padding: 14px 17px;

    border-left: 3px solid #bb456f;

    background: #fff6f5;

    color: #766a67;

    font-size: 9px;

    line-height: 1.55;
}

.hcesingle-disclosure strong {
    color: #4b3e3b;
}


/* TEXT */

.hcesingle-entry {
    color: #403735;

    font-size: 17px;

    line-height: 1.85;
}

.hcesingle-entry > p {
    margin: 0 0 25px;
}

.hcesingle-entry h2 {
    margin:
        55px 0 21px;

    color: #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        clamp(34px, 4vw, 48px);

    font-weight: 400;

    line-height: 1.05;

    letter-spacing: -.035em;
}

.hcesingle-entry h3 {
    margin:
        38px 0 16px;

    color: #292220;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 30px;

    font-weight: 400;

    line-height: 1.12;
}

.hcesingle-entry h4 {
    margin:
        30px 0 13px;

    color: #332a27;

    font-size: 18px;
}

.hcesingle-entry a {
    color: #a93461;

    text-decoration:
        underline;

    text-underline-offset:
        3px;
}


/* LISTS */

.hcesingle-entry ul,
.hcesingle-entry ol {
    margin:
        22px 0 28px;

    padding-left: 27px;
}

.hcesingle-entry li {
    margin-bottom: 10px;
}


/* ARTICLE IMAGES */

.hcesingle-entry img {
    max-width: 100%;
    height: auto;

    border-radius: 14px;
}

.hcesingle-entry figure {
    margin:
        38px 0;
}

.hcesingle-entry figcaption {
    margin-top: 8px;

    color: #938582;

    font-size: 9px;

    text-align: center;
}


/* QUOTES */

.hcesingle-entry blockquote {
    margin:
        42px 0;

    padding:
        12px 0 12px 27px;

    border-left:
        3px solid #ba426d;

    color: #594b47;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 25px;

    font-style: italic;

    line-height: 1.45;
}


/* TABLES */

.hcesingle-entry table {
    width: 100%;

    margin:
        35px 0;

    border-collapse:
        collapse;

    font-size: 12px;
}

.hcesingle-entry th,
.hcesingle-entry td {
    padding: 12px;

    border:
        1px solid #eadeda;

    text-align: left;
}

.hcesingle-entry th {
    background: #fbefef;

    color: #473b38;
}


/* =========================================================
   PRODUCT / SHOP LINKS
   ========================================================= */

.hcesingle-entry a[href*="amazon.com"],
.hcesingle-entry a[href*="amzn.to"] {
    display: inline-flex;

    align-items: center;

    min-height: 43px;

    margin:
        8px 0 16px;

    padding:
        0 19px;

    border-radius:
        999px;

    background:
        #211d1c;

    color:
        #fff !important;

    font-size:
        9px;

    font-weight:
        700;

    letter-spacing:
        .05em;

    text-decoration:
        none !important;
}


/* =========================================================
   END CTA
   ========================================================= */

.hcesingle-end-cta {
    margin-top: 65px;

    padding:
        42px;

    border-radius:
        22px;

    background:
        linear-gradient(
            135deg,
            #f4dddd,
            #fff7f4
        );
}

.hcesingle-end-cta > p {
    margin: 0 0 8px;

    color: #b43b68;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: .18em;
}

.hcesingle-end-cta h2 {
    margin: 0;

    color: #28211f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 37px;

    font-weight: 400;

    line-height: 1.05;
}

.hcesingle-end-cta h2 em {
    color: #b43b68;

    font-weight: 400;
}

.hcesingle-end-cta > a {
    min-height: 46px;

    display: inline-flex;

    align-items: center;

    gap: 13px;

    margin-top: 24px;

    padding:
        0 21px;

    border-radius:
        999px;

    background:
        linear-gradient(
            135deg,
            #aa315f,
            #ca4c79
        );

    color:
        #fff !important;

    font-size: 8px;

    font-weight: 700;

    letter-spacing: .08em;

    text-decoration:
        none !important;
}


/* =========================================================
   RELATED ARTICLES
   ========================================================= */

.hcesingle-related {
    padding:
        80px 0 95px;

    background:
        #fbf6f4;
}

.hcesingle-related-heading {
    margin-bottom:
        27px;
}

.hcesingle-related-heading p {
    margin:
        0 0 7px;

    color:
        #b43b68;

    font-size:
        8px;

    font-weight:
        700;

    letter-spacing:
        .2em;
}

.hcesingle-related-heading h2 {
    margin: 0;

    color:
        #211c1b;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        52px;

    font-weight:
        400;

    line-height:
        1;
}

.hcesingle-related-heading h2 em {
    color:
        #b43b68;

    font-weight:
        400;
}

.hcesingle-related-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap:
        18px;
}

.hcesingle-related-card {
    overflow:
        hidden;

    border:
        1px solid #eadeda;

    border-radius:
        15px;

    background:
        #fff;
}

.hcesingle-related-image {
    height:
        330px;

    display:
        block;

    overflow:
        hidden;

    background:
        #f1e5e1;
}

.hcesingle-related-image img {
    width:
        100% !important;

    height:
        100% !important;

    display:
        block;

    object-fit:
        cover;

    object-position:
        center top;

    transition:
        transform .35s ease;
}

.hcesingle-related-card:hover
.hcesingle-related-image img {
    transform:
        scale(1.035);
}

.hcesingle-related-copy {
    padding:
        17px;
}

.hcesingle-related-copy > span {
    display:
        block;

    margin-bottom:
        7px;

    color:
        #b43c68;

    font-size:
        7px;

    font-weight:
        700;

    letter-spacing:
        .13em;
}

.hcesingle-related-copy h3 {
    margin: 0;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        23px;

    font-weight:
        400;

    line-height:
        1.1;
}

.hcesingle-related-copy h3 a {
    color:
        #292220 !important;

    text-decoration:
        none !important;
}

.hcesingle-related-read {
    display:
        inline-block;

    margin-top:
        13px;

    color:
        #ad3964 !important;

    font-size:
        7px;

    font-weight:
        700;

    letter-spacing:
        .09em;

    text-decoration:
        none !important;
}

.hcesingle-related-placeholder {
    width:
        100%;

    height:
        100%;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    background:
        #f4e5e1;

    color:
        #baa6a1;

    font-family:
        Georgia,
        "Times New Roman",
        serif;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 950px) {

    .hcesingle-layout {
        grid-template-columns:
            1fr;

        max-width:
            760px;
    }

    .hcesingle-side {
        position:
            static;

        display:
            grid;

        grid-template-columns:
            repeat(2, 1fr);
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 650px) {

    .hcesingle-hero {
        padding:
            40px 0 42px;
    }

    .hcesingle-breadcrumbs {
        margin-bottom:
            27px;
    }

    .hcesingle-title-wrap h1 {
        font-size:
            47px;
    }

    .hcesingle-deck {
        font-size:
            14px;
    }


    .hcesingle-featured {
        padding-top:
            25px;
    }

    .hcesingle-featured-img {
        min-height:
            380px;

        object-fit:
            cover;

        border-radius:
            16px;
    }


    .hcesingle-body {
        padding:
            48px 0 65px;
    }

    .hcesingle-layout {
        gap:
            35px;
    }

    .hcesingle-side {
        grid-template-columns:
            1fr;
    }


    .hcesingle-entry {
        font-size:
            16px;
    }

    .hcesingle-entry h2 {
        font-size:
            35px;
    }

    .hcesingle-entry h3 {
        font-size:
            27px;
    }


    .hcesingle-end-cta {
        padding:
            30px 22px;
    }

    .hcesingle-end-cta h2 {
        font-size:
            31px;
    }


    .hcesingle-related {
        padding:
            58px 0 68px;
    }

    .hcesingle-related-heading h2 {
        font-size:
            42px;
    }

    .hcesingle-related-grid {
        display:
            flex;

        gap:
            12px;

        overflow-x:
            auto;

        padding-bottom:
            14px;

        scrollbar-width:
            none;
    }

    .hcesingle-related-grid::-webkit-scrollbar {
        display:
            none;
    }

    .hcesingle-related-card {
        flex:
            0 0 245px;
    }

    .hcesingle-related-image {
        height:
            290px;
    }

}
/* =========================================================
   ARTICLE TABLE OF CONTENTS
   ========================================================= */

.hcesingle-toc {
    margin:
        0 0 42px;

    overflow:
        hidden;

    border:
        1px solid #eadbd8;

    border-radius:
        17px;

    background:
        #fff;
}


/* HEADER */

.hcesingle-toc-toggle {
    width:
        100%;

    display:
        flex;

    align-items:
        center;

    justify-content:
        space-between;

    gap:
        20px;

    padding:
        20px 22px;

    border:
        0;

    background:
        linear-gradient(
            135deg,
            #fff7f5,
            #f9e8e9
        );

    cursor:
        pointer;

    text-align:
        left;
}


.hcesingle-toc-toggle span {
    display:
        block;
}


.hcesingle-toc-toggle small {
    display:
        block;

    margin-bottom:
        4px;

    color:
        #b43b68;

    font-size:
        7px;

    font-weight:
        700;

    letter-spacing:
        .18em;
}


.hcesingle-toc-toggle strong {
    display:
        block;

    color:
        #28211f;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        25px;

    font-weight:
        400;
}


.hcesingle-toc-toggle b {
    width:
        32px;

    height:
        32px;

    flex:
        0 0 32px;

    display:
        flex;

    align-items:
        center;

    justify-content:
        center;

    border:
        1px solid #ddb9c6;

    border-radius:
        50%;

    color:
        #b43b68;

    font-size:
        20px;

    font-weight:
        400;
}


/* LINKS */

.hcesingle-toc-links {
    display:
        grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap:
        0;

    padding:
        12px 22px 18px;
}


.hcesingle-toc-links a {
    position:
        relative;

    padding:
        10px 12px 10px 19px;

    color:
        #554946 !important;

    font-size:
        10px;

    line-height:
        1.45;

    text-decoration:
        none !important;

    transition:
        color .2s ease,
        transform .2s ease;
}


.hcesingle-toc-links a::before {
    content:
        "";

    position:
        absolute;

    left:
        2px;

    top:
        16px;

    width:
        5px;

    height:
        5px;

    border-radius:
        50%;

    background:
        #bd4771;
}


.hcesingle-toc-links a:hover {
    color:
        #ad3964 !important;

    transform:
        translateX(2px);
}


/* COLLAPSED */

.hcesingle-toc.is-collapsed
.hcesingle-toc-links {
    display:
        none;
}


/* MOBILE */

@media (max-width: 650px) {

    .hcesingle-toc {
        margin-bottom:
            32px;
    }


    .hcesingle-toc-toggle {
        padding:
            17px 18px;
    }


    .hcesingle-toc-toggle strong {
        font-size:
            22px;
    }


    .hcesingle-toc-links {
        grid-template-columns:
            1fr;

        padding:
            10px 17px 16px;
    }

}
/* =========================================================
   HER CURVES EDIT — AMAZON PRODUCT CARD
   ========================================================= */

.hce-product-card {
    display: grid;

    grid-template-columns:
        220px minmax(0, 1fr);

    gap: 28px;

    margin:
        42px 0;

    padding: 20px;

    border:
        1px solid #eadbd7;

    border-radius: 20px;

    background:
        linear-gradient(
            135deg,
            #fff 0%,
            #fff9f7 100%
        );

    box-shadow:
        0 13px 34px
        rgba(60, 42, 36, .06);
}


/* IMAGE */

.hce-product-image {
    position: relative;

    min-height: 250px;

    overflow: hidden;

    border-radius: 14px;

    background: #f7eeeb;
}

.hce-product-image > a {
    width: 100%;
    height: 100%;

    display: block;
}

.hce-product-image img {
    width: 100% !important;
    height: 100% !important;

    display: block;

    object-fit: cover;

    border-radius: 14px !important;
}


/* BADGE */

.hce-product-badge {
    position: absolute;

    z-index: 2;

    left: 11px;
    top: 11px;

    padding:
        6px 10px;

    border-radius:
        999px;

    background:
        #b63c69;

    color:
        #fff;

    font-size:
        7px;

    font-weight:
        700;

    letter-spacing:
        .1em;
}


/* CONTENT */

.hce-product-content {
    align-self: center;
}

.hce-product-eyebrow {
    margin:
        0 0 8px !important;

    color:
        #b43b68;

    font-size:
        8px !important;

    font-weight:
        700;

    letter-spacing:
        .18em;
}

.hcesingle-entry
.hce-product-content h3 {
    margin:
        0 !important;

    color:
        #27201e;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:
        30px;

    font-weight:
        400;

    line-height:
        1.08;
}

.hce-product-description {
    margin:
        13px 0 18px !important;

    color:
        #716562;

    font-size:
        12px !important;

    line-height:
        1.65 !important;
}


/* SHOP BUTTON */

.hcesingle-entry
.hce-product-button {
    width:
        fit-content;

    min-height:
        48px;

    display:
        inline-flex;

    align-items:
        center;

    gap:
        15px;

    margin:
        0 !important;

    padding:
        0 20px;

    border-radius:
        999px;

    background:
        #211d1c;

    color:
        #fff !important;

    text-decoration:
        none !important;

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.hce-product-button:hover {
    transform:
        translateY(-2px);

    box-shadow:
        0 12px 25px
        rgba(40, 30, 27, .15);
}

.hce-product-button span {
    color:
        #d8c7c3;

    font-size:
        8px;
}

.hce-product-button strong {
    color:
        #fff;

    font-size:
        8px;

    letter-spacing:
        .07em;
}


/* DISCLOSURE */

.hce-product-note {
    display:
        block;

    margin-top:
        11px;

    color:
        #9a8b87;

    font-size:
        7px;

    line-height:
        1.45;
}


/* MOBILE */

@media (max-width: 650px) {

    .hce-product-card {
        grid-template-columns:
            1fr;

        gap:
            20px;

        margin:
            32px 0;

        padding:
            15px;
    }


    .hce-product-image {
        height:
            360px;
    }


    .hcesingle-entry
    .hce-product-content h3 {
        font-size:
            27px;
    }


    .hcesingle-entry
    .hce-product-button {
        width:
            100%;

        justify-content:
            center;
    }

}
/* =========================================================
   HER CURVES EDIT — LIVE PINTEREST ARTICLE SIDEBAR
   ========================================================= */

.hcesingle-pinterest {
    min-width: 0;

    align-self: start;

    position: sticky;

    top: 105px;
}


.hcesingle-pinterest-card {
    overflow: hidden;

    padding: 17px;

    border:
        1px solid #eadeda;

    border-radius: 18px;

    background: #fff;

    box-shadow:
        0 12px 35px
        rgba(55, 40, 35, .06);
}


/* HEADING */

.hcesingle-pinterest-heading {
    display: flex;

    align-items: center;

    gap: 11px;

    margin-bottom: 12px;
}


.hcesingle-pinterest-icon {
    width: 38px;
    height: 38px;

    flex:
        0 0 38px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: #e60023;

    color: #fff;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 22px;

    font-weight: 700;
}


.hcesingle-pinterest-heading small {
    display: block;

    margin-bottom: 3px;

    color: #b43b68;

    font-size: 6px;

    font-weight: 700;

    letter-spacing: .16em;
}


.hcesingle-pinterest-heading h3 {
    margin: 0;

    color: #2b2321;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 17px;

    font-weight: 400;

    line-height: 1.05;
}


.hcesingle-pinterest-heading h3 span {
    display: block;

    color: #776966;

    font-family:
        Arial,
        sans-serif;

    font-size: 8px;

    font-weight: 400;

    margin-top: 3px;
}


/* COPY */

.hcesingle-pinterest-copy {
    margin: 0 0 15px;

    color: #756865;

    font-size: 9px;

    line-height: 1.5;
}


/* PINTEREST LIVE WIDGET */

.hcesingle-pinterest-widget {
    width: 100%;

    min-height: 500px;

    overflow: hidden;

    border-radius: 13px;

    background: #faf6f4;
}


.hcesingle-pinterest-widget > span,
.hcesingle-pinterest-widget iframe {
    max-width: 100% !important;
}


/* FOLLOW BUTTON */

.hcesingle-pinterest-follow {
    min-height: 41px;

    display: flex;

    align-items: center;
    justify-content: center;

    margin-top: 14px;

    border-radius: 999px;

    background: #e60023;

    color: #fff !important;

    font-size: 7px;

    font-weight: 700;

    letter-spacing: .09em;

    text-decoration: none !important;

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}


.hcesingle-pinterest-follow:hover {
    transform: translateY(-2px);

    box-shadow:
        0 10px 24px
        rgba(230, 0, 35, .16);
}


/* =========================================================
   MEDIUM DESKTOP
   Hide the small left sidebar first,
   but KEEP Pinterest visible.
   ========================================================= */

@media (max-width: 1250px) {

    .hcesingle-layout {
        max-width: 1100px;

        grid-template-columns:
            minmax(0, 740px)
            300px;

        gap: 32px;
    }


    .hcesingle-side {
        display: none;
    }

}


/* =========================================================
   TABLET / MOBILE
   Pinterest sidebar disappears because the screen
   is too narrow. Pinterest Save buttons still work
   on article imagery.
   ========================================================= */

@media (max-width: 950px) {

    .hcesingle-layout {
        display: block;

        max-width: 760px;
    }


    .hcesingle-pinterest {
        display: none;
    }

}

/* =========================================================
   HER CURVES EDIT — SINGLE ARTICLE RESPONSIVE LOCK
   Final desktop / laptop / tablet / mobile rules.
   Keep this block at the VERY BOTTOM of style.css.
   ========================================================= */

/* ---------- SAFE BASE ---------- */

.hcesingle,
.hcesingle * {
    min-width: 0;
}

.hcesingle img {
    max-width: 100%;
}

.hcesingle-title-wrap {
    max-width: 980px;
}

.hcesingle-title-wrap h1 {
    font-size: clamp(48px, 5.5vw, 78px);
    line-height: 1;
}

.hcesingle-deck {
    max-width: 720px;
    font-size: 15px;
    line-height: 1.7;
}


/* ---------- FEATURED IMAGE: SHOW THE FULL IMAGE ---------- */

.hcesingle-featured {
    padding-top: 38px;
}

.hcesingle-featured figure {
    width: 100%;
    margin: 0;
}

.hcesingle-featured-img {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    display: block;
    object-fit: contain !important;
    object-position: center center !important;
    border-radius: 22px;
}


/* ---------- LARGE DESKTOP: 3 COLUMNS ---------- */

.hcesingle-layout {
    width: 100%;
    max-width: 1256px;
    margin: 0 auto;

    display: grid !important;
    grid-template-columns:
        180px
        minmax(0, 740px)
        280px !important;

    align-items: start !important;
    justify-content: center;
    gap: 28px !important;
}

.hcesingle-content {
    width: 100%;
    min-width: 0;
}

.hcesingle-side,
.hcesingle-pinterest {
    align-self: start;
    position: sticky;
    top: 108px;
}


/* ---------- LEFT SIDEBAR READABILITY ---------- */

.hcesingle-side {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.hcesingle-side-card,
.hcesingle-quiz-side {
    width: 100%;
    padding: 22px 18px;
    border-radius: 18px;
}

.hcesingle-side-card > span,
.hcesingle-quiz-side small {
    font-size: 8px;
    line-height: 1.4;
    letter-spacing: .14em;
}

.hcesingle-side-card p {
    margin: 10px 0 0;
    color: #615754;
    font-size: 12.5px;
    line-height: 1.65;
}

.hcesingle-quiz-side strong {
    margin: 10px 0 8px;
    font-size: 27px;
    line-height: 1.12;
}

.hcesingle-quiz-side > span {
    font-size: 9.5px;
    line-height: 1.45;
}


/* ---------- ARTICLE READING ---------- */

.hcesingle-disclosure {
    margin-bottom: 30px;
    padding: 15px 18px;
    font-size: 11px;
    line-height: 1.6;
}

.hcesingle-entry {
    width: 100%;
    max-width: 740px;
    margin: 0 auto;

    color: #403735;
    font-size: 17px;
    line-height: 1.82;

    overflow-wrap: anywhere;
    word-break: normal;
}

.hcesingle-entry > p,
.hcesingle-entry p {
    margin-top: 0;
    margin-bottom: 1.35em;
}

.hcesingle-entry h2 {
    margin: 50px 0 18px;
    font-size: clamp(32px, 3vw, 42px);
    line-height: 1.12;
}

.hcesingle-entry h3 {
    margin: 35px 0 14px;
    font-size: 27px;
    line-height: 1.17;
}

.hcesingle-entry h4 {
    font-size: 19px;
    line-height: 1.25;
}

.hcesingle-entry figure {
    max-width: 100%;
    margin: 34px 0;
}

.hcesingle-entry img {
    width: auto;
    max-width: 100%;
    height: auto !important;
    margin-left: auto;
    margin-right: auto;
    border-radius: 14px;
}

.hcesingle-entry iframe,
.hcesingle-entry video,
.hcesingle-entry embed {
    max-width: 100%;
}

.hcesingle-entry table {
    width: 100%;
    max-width: 100%;
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}


/* ---------- TABLE OF CONTENTS ---------- */

.hcesingle-toc {
    margin-bottom: 38px;
    border-radius: 19px;
}

.hcesingle-toc-toggle {
    padding: 22px 24px;
}

.hcesingle-toc-toggle small {
    font-size: 8px;
}

.hcesingle-toc-toggle strong {
    font-size: 28px;
    line-height: 1.15;
}

.hcesingle-toc-links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 24px;
    padding: 16px 24px 22px;
}

.hcesingle-toc-links a {
    padding: 9px 8px 9px 18px;
    color: #504744 !important;
    font-size: 12px;
    line-height: 1.5;
}

.hcesingle-toc-links a::before {
    top: 15px;
}


/* ---------- PINTEREST SIDEBAR ---------- */

.hcesingle-pinterest {
    width: 100%;
    min-width: 0;
}

.hcesingle-pinterest-card {
    width: 100%;
    max-width: 280px;
    padding: 18px;
    border-radius: 19px;
}

.hcesingle-pinterest-heading {
    gap: 10px;
}

.hcesingle-pinterest-icon {
    width: 40px;
    height: 40px;
    flex-basis: 40px;
    font-size: 23px;
}

.hcesingle-pinterest-heading small {
    font-size: 7px;
}

.hcesingle-pinterest-heading h3 {
    font-size: 19px;
    line-height: 1.05;
}

.hcesingle-pinterest-heading h3 span {
    font-size: 9px;
}

.hcesingle-pinterest-copy {
    margin-bottom: 13px;
    color: #655b58;
    font-size: 11.5px;
    line-height: 1.6;
}

.hcesingle-pinterest-widget {
    width: 100%;
    min-height: 330px;
    max-height: 360px;
    margin: 0 auto;
    overflow: hidden;
    border-radius: 14px;
    background: #faf5f3;
}

.hcesingle-pinterest-widget > span,
.hcesingle-pinterest-widget iframe {
    width: 100% !important;
    max-width: 100% !important;
}

.hcesingle-pinterest-follow {
    min-height: 43px;
    margin-top: 13px;
    font-size: 8px;
}


/* ---------- END CTA ---------- */

.hcesingle-end-cta {
    margin-top: 58px;
    padding: 36px;
}

.hcesingle-end-cta h2 {
    font-size: 34px;
    line-height: 1.08;
}


/* ---------- RELATED POSTS ---------- */

.hcesingle-related-grid {
    gap: 18px;
}

.hcesingle-related-image {
    height: 320px;
}

.hcesingle-related-copy h3 {
    font-size: 22px;
}


/* =========================================================
   LAPTOP — 1021px to 1250px
   Hide the small left rail. Keep article + Pinterest.
   ========================================================= */

@media (max-width: 1250px) and (min-width: 1021px) {

    .hcesingle-layout {
        max-width: 1040px;
        grid-template-columns:
            minmax(0, 730px)
            280px !important;
        gap: 30px !important;
    }

    .hcesingle-side {
        display: none !important;
    }

    .hcesingle-entry {
        max-width: 730px;
    }
}


/* =========================================================
   TABLET — 701px to 1020px
   Reading first. Supporting cards follow below.
   ========================================================= */

@media (max-width: 1020px) {

    .hcesingle-body {
        padding-top: 52px;
        padding-bottom: 76px;
    }

    .hcesingle-layout {
        max-width: 820px;
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }

    .hcesingle-content {
        grid-column: 1 !important;
        grid-row: 1 !important;
    }

    .hcesingle-side {
        grid-column: 1 !important;
        grid-row: 2 !important;

        position: static !important;

        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 14px;
    }

    .hcesingle-pinterest {
        grid-column: 1 !important;
        grid-row: 3 !important;

        position: static !important;
        margin-top: 4px;
    }

    .hcesingle-pinterest-card {
        max-width: 620px;
        margin: 0 auto;
    }

    .hcesingle-pinterest-widget {
        max-width: 420px;
        min-height: 310px;
        max-height: 340px;
    }

    .hcesingle-entry {
        max-width: 760px;
    }

    .hcesingle-featured {
        padding-top: 30px;
    }

    .hcesingle-title-wrap h1 {
        font-size: clamp(44px, 7vw, 62px);
    }

    .hcesingle-related-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 14px;
    }

    .hcesingle-related-image {
        height: 280px;
    }
}


/* =========================================================
   MOBILE — 700px and below
   Full-width reading, no cropping, no horizontal overflow.
   ========================================================= */

@media (max-width: 700px) {

    .hcesingle {
        overflow-x: clip;
    }

    .hcesingle-hero {
        padding: 34px 0 36px;
    }

    .hcesingle-breadcrumbs {
        gap: 6px;
        margin-bottom: 22px;
        font-size: 8px;
        line-height: 1.45;
    }

    .hcesingle-breadcrumbs strong {
        max-width: 100%;
        white-space: normal;
    }

    .hcesingle-title-wrap h1 {
        font-size: clamp(34px, 10.5vw, 44px);
        line-height: 1.03;
        letter-spacing: -.035em;
    }

    .hcesingle-category {
        margin-bottom: 9px;
        font-size: 8px;
    }

    .hcesingle-deck {
        margin-top: 17px;
        font-size: 14px;
        line-height: 1.62;
    }

    .hcesingle-meta {
        gap: 7px;
        margin-top: 18px;
        font-size: 8.5px;
    }

    .hcesingle-featured {
        padding-top: 22px;
    }

    .hcesingle-featured .hce-container {
        width: min(calc(100% - 24px), var(--hce-container));
    }

    .hcesingle-featured-img {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        object-fit: contain !important;
        border-radius: 15px;
    }

    .hcesingle-body {
        padding: 40px 0 58px;
    }

    .hcesingle-layout {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 26px !important;
    }

    .hcesingle-disclosure {
        margin-bottom: 24px;
        padding: 13px 14px;
        font-size: 10.5px;
    }

    .hcesingle-entry {
        max-width: 100%;
        font-size: 16.5px;
        line-height: 1.78;
    }

    .hcesingle-entry > p,
    .hcesingle-entry p {
        margin-bottom: 1.25em;
    }

    .hcesingle-entry h2 {
        margin: 40px 0 15px;
        font-size: clamp(28px, 8.5vw, 34px);
        line-height: 1.14;
    }

    .hcesingle-entry h3 {
        margin: 30px 0 12px;
        font-size: 24px;
        line-height: 1.18;
    }

    .hcesingle-entry h4 {
        font-size: 18px;
    }

    .hcesingle-entry ul,
    .hcesingle-entry ol {
        padding-left: 21px;
    }

    .hcesingle-entry blockquote {
        margin: 32px 0;
        padding-left: 18px;
        font-size: 21px;
    }

    .hcesingle-entry figure {
        margin: 28px 0;
    }

    .hcesingle-entry img {
        max-width: 100% !important;
        height: auto !important;
        border-radius: 12px;
    }

    .hcesingle-toc {
        margin-bottom: 28px;
        border-radius: 16px;
    }

    .hcesingle-toc-toggle {
        padding: 17px 16px;
    }

    .hcesingle-toc-toggle strong {
        font-size: 23px;
    }

    .hcesingle-toc-toggle b {
        width: 30px;
        height: 30px;
        flex-basis: 30px;
        font-size: 18px;
    }

    .hcesingle-toc-links {
        grid-template-columns: 1fr;
        gap: 0;
        padding: 9px 14px 15px;
    }

    .hcesingle-toc-links a {
        padding: 9px 8px 9px 18px;
        font-size: 11.5px;
        line-height: 1.5;
    }

    .hcesingle-side {
        grid-template-columns: 1fr !important;
        gap: 12px;
    }

    .hcesingle-side-card,
    .hcesingle-quiz-side {
        padding: 19px 18px;
    }

    .hcesingle-side-card p {
        font-size: 13px;
    }

    .hcesingle-quiz-side strong {
        font-size: 26px;
    }

    .hcesingle-pinterest-card {
        max-width: 100%;
        padding: 17px;
    }

    .hcesingle-pinterest-copy {
        font-size: 12px;
    }

    .hcesingle-pinterest-widget {
        max-width: 360px;
        min-height: 285px;
        max-height: 315px;
    }

    .hcesingle-end-cta {
        margin-top: 48px;
        padding: 27px 20px;
        border-radius: 18px;
    }

    .hcesingle-end-cta h2 {
        font-size: 29px;
    }

    .hcesingle-end-cta > a {
        width: 100%;
        justify-content: center;
    }

    .hcesingle-related {
        padding: 52px 0 62px;
    }

    .hcesingle-related-heading h2 {
        font-size: 38px;
    }

    .hcesingle-related-grid {
        display: flex;
        gap: 12px;
        overflow-x: auto;
        padding: 2px 2px 14px;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
    }

    .hcesingle-related-grid::-webkit-scrollbar {
        display: none;
    }

    .hcesingle-related-card {
        flex: 0 0 82%;
        max-width: 300px;
        scroll-snap-align: start;
    }

    .hcesingle-related-image {
        height: 300px;
    }

    .hcesingle-related-copy h3 {
        font-size: 21px;
    }
}


/* =========================================================
   SMALL PHONE — 420px and below
   ========================================================= */

@media (max-width: 420px) {

    .hcesingle-title-wrap h1 {
        font-size: 36px;
    }

    .hcesingle-entry {
        font-size: 16px;
    }

    .hcesingle-featured .hce-container {
        width: calc(100% - 18px);
    }

    .hcesingle-pinterest-widget {
        min-height: 260px;
        max-height: 290px;
    }

    .hcesingle-related-card {
        flex-basis: 86%;
    }
}



/* =========================================================
   HER CURVES EDIT — HOMEPAGE FINAL POLISH
   Readability + dual style tools + Pinterest CTA
   ========================================================= */

.hce3-eyebrow,
.hce5-kicker,
.hce6-kicker,
.hce7-kicker,
.hce8-kicker,
.hce9-kicker,
.hce10-kicker,
.hce11-kicker {
    font-size: 11px !important;
    font-weight: 800 !important;
}

.hce3-button,
.hce5-start-button,
.hce11-primary,
.hce11-secondary {
    min-height: 52px;
    font-size: 12px !important;
    font-weight: 800 !important;
}

.hce4-view-all,
.hce6-view-all,
.hce8-view-all,
.hce9-column-heading > a,
.hce10-view-all {
    font-size: 11px !important;
    font-weight: 800 !important;
}

.hce4-shop-card-copy {
    min-height: 78px !important;
    padding: 10px 7px 11px !important;
}

.hce4-shop-card-copy h3 {
    font-size: 16px !important;
}

.hce4-shop-card-copy p {
    font-size: 9px !important;
}

.hce4-shop-cta {
    display: block;
    margin-top: 5px;
    color: #a92f5d;
    font-size: 8.5px;
    font-weight: 800;
    letter-spacing: .07em;
}

.hce5-step-card strong {
    font-size: 13px !important;
}

.hce5-step-card small {
    font-size: 10.5px !important;
    line-height: 1.4 !important;
}

.hce5-benefits li {
    font-size: 10.5px !important;
    line-height: 1.45;
}

.hce5-look-main > span,
.hce5-look-hair > span,
.hce5-look-mini strong {
    font-size: 9px !important;
}

.hce5-look-mini small {
    font-size: 8.5px !important;
}

.hce5-complete-button {
    width: 100%;
    min-height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 22px;
    padding: 0 22px;
    border-radius: 999px;
    background: #271f1d;
    color: #fff !important;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .07em;
    text-decoration: none !important;
    transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
}

.hce5-complete-button:hover,
.hce5-complete-button:focus-visible {
    transform: translateY(-2px);
    background: #a92f5d;
    box-shadow: 0 14px 28px rgba(169,47,93,.18);
}

.hce5-complete-button span {
    font-size: 18px;
    font-weight: 400;
}

.hce6-heading-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 12px;
}

.hce6-pinterest {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 18px;
    border-radius: 999px;
    background: linear-gradient(135deg,#a92f5d,#c94b78);
    color: #fff !important;
    box-shadow: 0 10px 22px rgba(169,47,93,.16);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .06em;
    text-decoration: none !important;
    transition: transform .2s ease, box-shadow .2s ease;
}

.hce6-pinterest:hover,
.hce6-pinterest:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(169,47,93,.24);
}

.hce6-category,
.hce8-label,
.hce9-card-copy > span,
.hce10-image-text span {
    font-size: 9px !important;
}

.hce6-read,
.hce8-read,
.hce9-explore,
.hce10-copy > a {
    font-size: 9.5px !important;
    font-weight: 800 !important;
}

.hce6-card-copy h3 {
    font-size: 20px !important;
}

.hce10-copy p {
    font-size: 11px !important;
    line-height: 1.55 !important;
}

.hce11-description {
    font-size: 15px !important;
}

.hce-footer-tools {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.hce-footer-quiz {
    min-height: 44px !important;
    font-size: 9.5px !important;
}

.hce-footer-quiz-secondary {
    border: 1px solid rgba(255,255,255,.34);
    background: transparent !important;
    box-shadow: none !important;
}

.hce-footer-quiz-secondary:hover,
.hce-footer-quiz-secondary:focus-visible {
    border-color: #d2678e;
    background: rgba(210,103,142,.12) !important;
}

.hce-footer-logo small {
    font-size: 8px !important;
}

.hce-footer-column nav a {
    font-size: 11px !important;
}

.hce3-button:focus-visible,
.hce4-shop-card:focus-visible,
.hce5-start-button:focus-visible,
.hce5-complete-button:focus-visible,
.hce6-pinterest:focus-visible,
.hce11-primary:focus-visible,
.hce11-secondary:focus-visible {
    outline: 3px solid rgba(183,55,102,.28);
    outline-offset: 3px;
}

@media (max-width: 760px) {
    .hce4-shop-card-copy {
        min-height: 58px !important;
    }

    .hce4-shop-cta {
        font-size: 8px;
    }

    .hce6-heading {
        align-items: flex-start !important;
        gap: 18px;
    }

    .hce6-heading-actions {
        width: 100%;
        justify-content: flex-start;
    }

    .hce6-pinterest {
        min-height: 40px;
        padding: 0 15px;
    }

    .hce-footer-tools {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 600px) {
    .hce3-button,
    .hce5-start-button,
    .hce5-complete-button,
    .hce11-primary,
    .hce11-secondary {
        width: 100%;
        min-height: 50px;
    }

    .hce11-buttons {
        width: 100%;
    }
}
/* =========================================================
   HERCURVESEDIT — SINGLE ARTICLE MOBILE READABILITY POLISH
   Paste at the VERY BOTTOM of style.css
   Mobile only. Desktop stays unchanged.
   ========================================================= */

@media (max-width: 700px) {

    /* Top breadcrumb */
    .hcesingle .hcesingle-breadcrumbs {
        gap: 7px !important;
        margin-bottom: 24px !important;

        font-size: 11px !important;
        line-height: 1.5 !important;
        letter-spacing: .015em !important;
    }

    .hcesingle .hcesingle-breadcrumbs a,
    .hcesingle .hcesingle-breadcrumbs strong {
        line-height: 1.5 !important;
    }


    /* Category label above title */
    .hcesingle .hcesingle-category {
        font-size: 10px !important;
        line-height: 1.3 !important;
        letter-spacing: .16em !important;
    }


    /* Author / date / read time */
    .hcesingle .hcesingle-meta {
        gap: 8px !important;
        margin-top: 19px !important;

        font-size: 11px !important;
        line-height: 1.45 !important;
    }

    .hcesingle .hcesingle-meta strong {
        font-weight: 700 !important;
    }


    /* Main reading experience */
    .hcesingle .hcesingle-entry {
        font-size: 17px !important;
        line-height: 1.82 !important;
    }

    .hcesingle .hcesingle-entry p {
        margin-bottom: 1.3em !important;
    }

    .hcesingle .hcesingle-entry h2 {
        margin-top: 38px !important;
        margin-bottom: 14px !important;

        font-size: 30px !important;
        line-height: 1.15 !important;
    }

    .hcesingle .hcesingle-entry h3 {
        margin-top: 28px !important;
        margin-bottom: 11px !important;

        font-size: 24px !important;
        line-height: 1.2 !important;
    }

    .hcesingle .hcesingle-entry li {
        margin-bottom: 7px !important;
    }


    /* Affiliate note — keep readable without making it bulky */
    .hcesingle .hcesingle-disclosure {
        font-size: 11.5px !important;
        line-height: 1.55 !important;
    }
}


/* Extra-small phones */
@media (max-width: 380px) {

    .hcesingle .hcesingle-entry {
        font-size: 16.5px !important;
    }

    .hcesingle .hcesingle-meta,
    .hcesingle .hcesingle-breadcrumbs {
        font-size: 10.5px !important;
    }
}

/* ==============================================================
   HERCURVESEDIT — PREMIUM HEADER | brand + Pinterest + two-row nav
   Scope: header only. Existing mobile menu and dropdowns preserved.
   ============================================================== */
.hce-site-header {
    background: rgba(255, 255, 255, .99);
    border-bottom: 1px solid #eadde0;
}
.hce-site-header .hce-header-inner {
    min-height: 81px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
}
.hce-site-header .hce-branding {
    flex: 0 1 auto;
    min-width: 0;
}
.hce-site-header .hce-brand-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    max-width: 100%;
    text-decoration: none;
    color: #262022;
}
.hce-site-header .hce-brand-icon {
    display: flex;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid #ead4dc;
    border-radius: 15px;
    background: #fff0f3;
    color: #ae3563;
}
.hce-site-header .hce-brand-image {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: contain;
}
.hce-site-header .hce-brand-monogram {
    font-family: Georgia, "Times New Roman", serif;
    font-size: 23px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -.11em;
    padding-right: 3px;
}
.hce-site-header .hce-brand-wordmark {
    display: flex;
    min-width: 0;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
}
.hce-site-header .hce-brand-kicker {
    display: block;
    color: #ac6179;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .18em;
    line-height: 1.2;
    white-space: nowrap;
}
.hce-site-header .hce-brand-name {
    display: block;
    color: #282123;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(23px, 2.1vw, 30px);
    font-weight: 400;
    line-height: 1;
    letter-spacing: -.045em;
    white-space: nowrap;
}
.hce-site-header .hce-brand-name > span { color: #b63d6a; }
.hce-site-header .hce-brand-link:hover .hce-brand-name { color: #9d325d; }
.hce-site-header .hce-header-actions {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 13px;
    margin-left: auto;
}
.hce-site-header .hce-header-pinterest {
    display: inline-flex;
    min-height: 43px;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 4px 12px 4px 5px;
    border: 1px solid #f0dce3;
    border-radius: 999px;
    background: #fff7f9;
    color: #a6315d;
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
    transition: background .2s ease, transform .2s ease;
}
.hce-site-header .hce-header-pinterest:hover,
.hce-site-header .hce-header-pinterest:focus-visible {
    background: #fce6ed;
    color: #96264f;
    transform: translateY(-1px);
}
.hce-site-header .hce-header-pinterest-glyph {
    display: inline-flex;
    width: 32px;
    height: 32px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #bd315d;
    color: #fff;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 23px;
    font-weight: 700;
    font-style: italic;
    line-height: 1;
}
.hce-site-header .hce-header-quiz {
    display: inline-flex;
    min-height: 43px;
    flex-shrink: 0;
    align-items: center;
    gap: 11px;
    padding: 0 21px;
    margin: 0;
    border: 1px solid #b33763;
    border-radius: 999px;
    background: linear-gradient(120deg, #a82f5e, #c44878);
    box-shadow: 0 6px 17px rgba(175, 53, 101, .14);
    color: #fff !important;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .02em;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease;
}
.hce-site-header .hce-header-quiz:hover,
.hce-site-header .hce-header-quiz:focus-visible {
    background: linear-gradient(120deg, #92234e, #b33765);
    color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 9px 21px rgba(175, 53, 101, .24);
}
.hce-site-header .hce-header-quiz span {
    font-size: 17px;
    font-weight: 400;
    line-height: 1;
}
.hce-site-header .hce-header-nav-row {
    position: relative;
    z-index: 1;
    display: block;
    border-top: 1px solid #f4e8e9;
    background: #fffdfd;
}
.hce-site-header .hce-header-nav-inner {
    display: flex;
    min-height: 49px;
    align-items: center;
    justify-content: center;
}
.hce-site-header .hce-header-nav-row .hce-primary-navigation {
    margin: 0;
    width: 100%;
}
.hce-site-header .hce-header-nav-row .hce-primary-menu {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    gap: clamp(12px, 1.85vw, 28px);
    margin: 0;
    padding: 0;
}
.hce-site-header .hce-header-nav-row .hce-primary-menu > li > a {
    display: block;
    padding: 14px 0;
    color: #46373b;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: .045em;
    white-space: nowrap;
}
.hce-site-header .hce-header-nav-row .hce-primary-menu > li > a::after {
    bottom: 9px;
    height: 2px;
    border-radius: 10px;
    background: #bc426e;
}
.hce-site-header .hce-header-nav-row .hce-primary-menu > li > a:hover,
.hce-site-header .hce-header-nav-row .hce-primary-menu > li.current-menu-item > a,
.hce-site-header .hce-header-nav-row .hce-primary-menu > li.current-menu-ancestor > a {
    color: #a82f5e;
}
.hce-site-header a:focus-visible,
.hce-site-header button:focus-visible {
    outline: 2px solid #b63867;
    outline-offset: 3px;
}
@media (min-width: 901px) {
    /* Prevent dropdowns at the right edge from leaving the viewport. */
    .hce-site-header .hce-primary-menu > li:last-child > .sub-menu {
        left: auto !important;
        right: 0 !important;
        transform: translateY(12px) !important;
    }
    .hce-site-header .hce-primary-menu > li:last-child:hover > .sub-menu,
    .hce-site-header .hce-primary-menu > li:last-child:focus-within > .sub-menu {
        transform: translateY(0) !important;
    }
}
@media (min-width: 901px) and (max-width: 1120px) {
    .hce-site-header .hce-header-nav-row .hce-primary-menu {
        gap: 13px;
    }
    .hce-site-header .hce-header-nav-row .hce-primary-menu > li > a {
        font-size: 10px;
        letter-spacing: .01em;
    }
}
@media (max-width: 900px) {
    .hce-site-header .hce-header-inner { min-height: 72px; gap: 12px; }
    .hce-site-header .hce-header-nav-row { display: none !important; }
    .hce-site-header .hce-header-quiz { display: none !important; }
    .hce-site-header .hce-header-actions { gap: 10px; }
    .hce-site-header .hce-header-pinterest {
        width: 42px;
        height: 42px;
        min-height: 42px;
        padding: 0;
    }
    .hce-site-header .hce-header-pinterest-text { display: none; }
    .hce-site-header .hce-mobile-menu-button { flex: 0 0 44px; }
    .hce-site-header .hce-brand-icon {
        width: 43px;
        height: 43px;
        flex-basis: 43px;
        border-radius: 13px;
    }
    .hce-site-header .hce-brand-name { font-size: 26px; }
}
@media (max-width: 480px) {
    .hce-site-header .hce-header-inner { gap: 7px; }
    .hce-site-header .hce-brand-link { gap: 8px; }
    .hce-site-header .hce-brand-icon {
        width: 38px;
        height: 38px;
        flex-basis: 38px;
        border-radius: 11px;
    }
    .hce-site-header .hce-brand-monogram { font-size: 20px; }
    .hce-site-header .hce-brand-name { font-size: 22px; }
    .hce-site-header .hce-brand-kicker { font-size: 7px; letter-spacing: .12em; }
    .hce-site-header .hce-header-actions { gap: 6px; }
    .hce-site-header .hce-header-pinterest {
        width: 37px;
        height: 37px;
        min-height: 37px;
    }
    .hce-site-header .hce-header-pinterest-glyph {
        width: 29px;
        height: 29px;
        font-size: 21px;
    }
}
@media (max-width: 365px) {
    .hce-site-header .hce-brand-name { font-size: 19px; }
    .hce-site-header .hce-brand-kicker { font-size: 6.5px; }
    .hce-site-header .hce-brand-link { gap: 6px; }
    .hce-site-header .hce-brand-icon { flex-basis: 34px; width: 34px; height: 34px; }
    .hce-site-header .hce-header-actions { gap: 5px; }
    .hce-site-header .hce-header-pinterest { width: 34px; height: 34px; min-height: 34px; }
    .hce-site-header .hce-header-pinterest-glyph { width: 26px; height: 26px; font-size: 19px; }
}


/* ================================================================
   HERCURVESEDIT — MOBILE-FIRST HOMEPAGE POLISH, SEP 2026
   Scope: homepage only. Preserve premium header, desktop grid,
   WordPress post queries and the existing quiz/download tools.
   ================================================================ */
.hce5-find-look a.hce5-step-card {
    position: relative;
    color: #2e2624;
    text-decoration: none !important;
    cursor: pointer;
    transition: border-color .2s ease, box-shadow .2s ease,
                background-color .2s ease, transform .2s ease;
}
.hce5-find-look a.hce5-step-card > div { min-width: 0; }
.hce5-find-look a.hce5-step-card::after {
    content: "→";
    flex: 0 0 auto;
    margin-left: auto;
    color: #ad3866;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 19px;
    font-weight: 600;
    line-height: 1;
}
.hce5-find-look a.hce5-step-card:hover,
.hce5-find-look a.hce5-step-card:focus-visible {
    border-color: #be6a8a;
    background: #fffafb;
    box-shadow: 0 7px 20px rgba(174, 58, 101, .10);
    transform: translateY(-2px);
}
.hce5-find-look a.hce5-step-card:focus-visible {
    outline: 2px solid #b33c68;
    outline-offset: 3px;
}

/* Visible only where its associated card row can be scrolled. */
.hce-mobile-swipe-hint { display: none; }

@media (max-width: 760px) {
    .hce4-shop .hce-mobile-swipe-hint {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 6px;
        margin: 0 0 9px;
        color: #a33561;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: .02em;
    }
    .hce4-shop .hce-mobile-swipe-hint span { font-size: 18px; line-height: 1; }
    .hce4-shop-grid .hce4-shop-card {
        flex: 0 0 164px !important;
        width: 164px !important;
    }
    .hce4-shop-grid .hce4-shop-image { height: 190px !important; }
    .hce4-shop-grid .hce4-shop-card-copy {
        min-height: 74px !important;
        padding: 9px 7px 11px !important;
    }
    .hce4-shop-grid .hce4-shop-card-copy h3 { font-size: 18px !important; }
    .hce4-shop-grid .hce4-shop-cta { font-size: 10px !important; }
}

@media (max-width: 700px) {
    .hce6-trending .hce-mobile-swipe-hint,
    .hce7-bodyshape .hce-mobile-swipe-hint,
    .hce8-over50 .hce-mobile-swipe-hint,
    .hce9-beauty .hce-mobile-swipe-hint,
    .hce10-seasonal .hce-mobile-swipe-hint {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 6px;
        margin: 0 0 9px;
        color: #a33561;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: .02em;
    }
    .hce-mobile-swipe-hint span { font-size: 18px; line-height: 1; }

    /* Make section headings fit 320–390px screens with room for actions. */
    .hce6-heading h2,
    .hce7-heading h2,
    .hce8-heading h2,
    .hce9-main-heading h2,
    .hce10-heading h2 {
        font-size: clamp(36px, 10.5vw, 48px) !important;
        line-height: 1.03 !important;
    }
    .hce5-find-copy h2 {
        font-size: clamp(42px, 12vw, 52px) !important;
        line-height: 1 !important;
    }
    .hce5-description { font-size: 15px !important; line-height: 1.65 !important; }
    .hce5-find-look a.hce5-step-card {
        min-height: 82px;
        padding: 13px 13px;
    }
    .hce5-find-look a.hce5-step-card strong { font-size: 13.5px !important; }
    .hce5-find-look a.hce5-step-card small {
        font-size: 11.5px !important;
        line-height: 1.4 !important;
    }

    /* Slider cards occupy most of the viewport; next card peeks in. */
    .hce6-grid .hce6-card { flex: 0 0 252px; }
    .hce6-grid .hce6-image { height: 286px; }
    .hce6-card-copy { padding: 17px 17px 19px; }
    .hce6-card-copy h3 { font-size: 23px !important; line-height: 1.2; }

    .hce7-shape-grid .hce7-shape-card { flex: 0 0 178px; }
    .hce7-shape-copy h3 { font-size: 20px !important; }
    .hce7-shape-copy p { font-size: 11px !important; line-height: 1.5 !important; }

    .hce8-grid .hce8-card { flex: 0 0 252px; }
    .hce8-grid .hce8-image { height: 292px; }
    .hce8-card-copy { padding: 17px 17px 19px; }
    .hce8-card-copy h3 { font-size: 23px !important; line-height: 1.2; }

    /* Grid items must shrink; otherwise the hair slider can widen the page. */
    .hce9-columns, .hce9-column { min-width: 0; }
    .hce9-column { width: 100%; padding: 17px; }
    .hce9-card-grid { width: 100%; max-width: 100%; min-width: 0; }
    .hce9-card-grid .hce9-card { flex: 0 0 228px; }
    .hce9-card-grid .hce9-image { height: 270px; }
    .hce9-card-copy { padding: 15px 15px 18px; }
    .hce9-card-copy h4 { font-size: 22px !important; line-height: 1.22; }

    .hce10-grid .hce10-card { flex: 0 0 245px; }
    .hce10-grid .hce10-image { height: 305px; }
    .hce10-image-text h3 { font-size: 27px !important; }
    .hce10-copy { padding: 15px 16px 18px; }
    .hce10-copy p { font-size: 13px !important; line-height: 1.55 !important; }

    /* Text hierarchy, contrast, and finger-friendly article actions. */
    .hce6-category,
    .hce8-label,
    .hce9-card-copy > span,
    .hce10-image-text span { font-size: 10.5px !important; }
    .hce6-read,
    .hce8-read,
    .hce9-explore,
    .hce10-copy > a {
        display: inline-flex;
        align-items: center;
        min-height: 38px;
        margin-top: 6px;
        padding-right: 13px;
        font-size: 11px !important;
        font-weight: 700;
        line-height: 1.3;
    }
    .hce4-shop-grid,
    .hce6-grid,
    .hce7-shape-grid,
    .hce8-grid,
    .hce9-card-grid,
    .hce10-grid { -webkit-overflow-scrolling: touch; }
}

@media (max-width: 380px) {
    /* Shorter labels still fit on small phones. */
    .hce5-find-look a.hce5-step-card { padding: 12px 11px; gap: 9px; }
    .hce5-find-look a.hce5-step-card::after { font-size: 17px; }
    .hce9-card-grid .hce9-card { flex-basis: 221px; }
}

@media (prefers-reduced-motion: reduce) {
    .hce5-find-look a.hce5-step-card { transition: none; }
    .hce5-find-look a.hce5-step-card:hover { transform: none; }
}


/* ================================================================
   HCE v1.6 — article intro shopping placement & typography polish.
   Scope strictly to single-post article copy; preserve all other
   header, sidebar, Pinterest and shopping button presentation.
   ================================================================ */
.hcesingle .hcesingle-entry { color:#3d3438; }
.hcesingle .hcesingle-entry > h2:not([id^="hce-auto-shop-heading"]) {
    color:#30242b;
    letter-spacing:-.025em;
}
.hcesingle .hcesingle-entry > h3 { color:#803552; }
.hcesingle .hcesingle-entry > h4 { color:#4c3240; }
.hcesingle .hcesingle-entry > p,
.hcesingle .hcesingle-entry > ul,
.hcesingle .hcesingle-entry > ol { color:#3d3438; }
.hcesingle .hcesingle-entry > p a:not([href*="amazon.com"]):not([href*="amzn.to"]),
.hcesingle .hcesingle-entry > li a:not([href*="amazon.com"]):not([href*="amzn.to"]) {
    color:#843050;
    text-decoration-color:#b86a8a;
}
.hcesingle .hcesingle-entry > p a:not([href*="amazon.com"]):not([href*="amzn.to"]):hover {
    color:#67233f;
    text-decoration-color:currentColor;
}
/* Place the selected 3 looks between the intro and first article section. */
.hcesingle .hcesingle-entry > .hce-shop-after-intro {
    margin-top:24px;
    margin-bottom:36px;
}
@media(max-width:690px) {
    .hcesingle .hcesingle-entry > .hce-shop-after-intro {
        margin-top:21px;
        margin-bottom:28px;
    }
}

/* Coordinated header and tools polish. Existing article and home sections retain their styling. */
.hce-skip-link{position:fixed;z-index:99999;top:8px;left:8px;transform:translateY(-180%);background:#fff;color:#8a244c;padding:12px 18px;border:2px solid #a22c59;border-radius:10px}.hce-skip-link:focus{transform:none}
.hce-site-header .hce-header-inner{min-height:76px}.hce-site-header .hce-header-nav-row{background:#fffaf9}.hce-site-header .hce-primary-menu{gap:clamp(12px,1.8vw,26px);flex-wrap:wrap}.hce-site-header .hce-primary-menu>li>a{font-size:12px;letter-spacing:.015em;text-transform:none;padding-block:15px}.hce-site-header .hce-primary-menu .sub-menu{z-index:60}.hce-site-header .hce-primary-menu li:focus-within>.sub-menu{display:block;opacity:1;visibility:visible;pointer-events:auto}
.hce-site-header .hce-header-quiz{background:linear-gradient(125deg,#aa315d,#bf4c75);color:#fff;border-radius:12px;min-height:44px;box-shadow:0 5px 15px #a62f5917}.hce-site-header .hce-header-quiz:hover{background:linear-gradient(125deg,#90244e,#a63261);transform:translateY(-2px)}
.hce-site-header .hce-header-pinterest{color:#9b474e;background:#fff0e8;min-height:44px}.hce-site-header .hce-header-pinterest:hover{background:#e60023;color:#fff}.hce-site-header .hce-header-pinterest:hover .hce-header-pinterest-glyph{background:#fff;color:#e60023}
.hce-header-search{position:relative}.hce-header-search summary{list-style:none;display:grid;place-items:center;width:44px;height:44px;cursor:pointer;background:#fff6f8;color:#973051;border:1px solid #ebd8df;border-radius:12px}.hce-header-search summary::-webkit-details-marker{display:none}.hce-header-search[open] summary{background:#f9e3eb}.hce-search-panel{position:absolute;z-index:100;right:0;top:54px;width:min(400px,calc(100vw - 28px));background:#fffdfc;box-shadow:0 18px 45px #4c203525;border:1px solid #e7cad5;border-radius:16px;padding:22px}.hce-search-panel label{display:block;font:400 21px/1.3 Georgia,serif;color:#3b2c32;margin-bottom:14px}.hce-search-panel form>div{display:flex;gap:8px}.hce-search-panel input{min-width:0;width:100%;min-height:46px;padding:10px;border:1px solid #dcc8cf;border-radius:9px;font-size:16px}.hce-search-panel button{background:#a52d59;color:#fff;border:0;padding:10px 14px;border-radius:9px;font-weight:700;white-space:nowrap}
.hce-site-header :is(a,button,summary,input):focus-visible{outline:3px solid #8d2851;outline-offset:4px}.hce-mobile-navigation[hidden],.hce-mobile-navigation .sub-menu[hidden]{display:none!important}
.hcequiz2-page,.hcecomplete-page{--hce-tool-berry:#a52d59;--hce-tool-ink:#34272d;--hce-tool-line:#ead3dc;background:#fffaf9;color:var(--hce-tool-ink);font-size:16px}.hcequiz2-page [hidden],.hcecomplete-page [hidden]{display:none!important}
.hcequiz2-page .hcequiz2-container,.hcecomplete-page .hcecomplete-container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.hcequiz2-page .hcequiz2-hero,.hcecomplete-page .hcecomplete-hero{padding:42px 0 28px;background:linear-gradient(125deg,#fffaf8,#f9e7ed);border-bottom:1px solid #f0dfe5}.hcequiz2-page .hcequiz2-hero h1,.hcecomplete-page .hcecomplete-hero h1{font-size:clamp(42px,5.4vw,66px);line-height:1.04;letter-spacing:-.04em}.hcequiz2-page .hcequiz2-intro,.hcecomplete-page .hcecomplete-intro{max-width:620px;font-size:16px;line-height:1.65;margin:16px auto 0;color:#715e65}.hcequiz2-hero-tools{display:flex;gap:16px;justify-content:center;align-items:center;flex-wrap:wrap;margin:19px auto 0;padding-inline:14px;font-size:12px;color:#755d68}.hcequiz2-hero-tools button,.hcequiz2-choice-summary button{background:#fff;border:1px solid #d8aeba;color:#90244e;border-radius:10px;padding:10px 15px;font-size:13px;font-weight:700;min-height:44px;cursor:pointer}.hcequiz2-noscript{padding:10px 20px;color:#90244e}
.hcequiz2-page .hcequiz2-main,.hcecomplete-page .hcecomplete-main{padding:34px 0 64px}.hcequiz2-page .hcequiz2-step-heading,.hcecomplete-page .hcecomplete-heading{margin:0 auto 24px;max-width:800px}.hcequiz2-page .hcequiz2-step-heading h2,.hcecomplete-page .hcecomplete-heading h2{font-size:clamp(30px,3.5vw,43px);line-height:1.13}.hcequiz2-page .hcequiz2-step-heading p,.hcecomplete-page .hcecomplete-heading p{font-size:15px;color:#705e64;line-height:1.6}.hcequiz2-page .hcequiz2-progress-wrap{background:#fffdfc;border-bottom:1px solid #f0dfe5}.hcequiz2-page .hcequiz2-progress{padding-block:16px}.hcequiz2-page .hcequiz2-progress-item{border:0;background:transparent;color:#795969;padding:8px;border-radius:12px;cursor:pointer;font-family:inherit;min-height:48px}.hcequiz2-page .hcequiz2-progress-item:disabled{opacity:.6;cursor:default}.hcequiz2-page .hcequiz2-progress-item.is-active{background:#fbe8ef;color:#90244e}.hcequiz2-page .hcequiz2-progress-item small{font-size:12px}.hcequiz2-page .hcequiz2-progress-item:focus-visible{outline:2px solid #a52d59;outline-offset:-2px}
.hcequiz2-page :is(.hcequiz2-shape-card,.hcequiz2-photo-card,.hcequiz2-color-card,.hcequiz2-option-card){border-radius:16px;position:relative;transition:transform .2s,box-shadow .2s;border:2px solid #efdee4;box-sizing:border-box}.hcequiz2-page label.is-selected{border-color:#a52d59;box-shadow:0 0 0 3px #f6dce6}.hcequiz2-page label.is-selected:after{content:'✓';position:absolute;right:10px;top:10px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#a52d59;color:#fff;font:bold 15px Arial;box-shadow:0 2px 10px #59253a33;z-index:2}.hcequiz2-page label:focus-within{outline:3px solid #8e2851;outline-offset:3px}.hcequiz2-page .hcequiz2-photo-card{height:auto;min-height:0;aspect-ratio:3/4}.hcequiz2-page .hcequiz2-photo-card img{height:100%;width:100%;object-fit:cover}.hcequiz2-page .hcequiz2-shape-visual{height:auto;aspect-ratio:3/4}.hcequiz2-page .hcequiz2-shape-visual img{height:100%;width:100%;object-fit:contain}.hcequiz2-page .hcequiz2-shape-card strong{font-size:19px}.hcequiz2-page .hcequiz2-shape-card small{font-size:12px;line-height:1.4}.hcequiz2-page .hcequiz2-error{font-size:15px;line-height:1.5;border:1px solid #d29aaf;border-radius:10px;background:#fff1f5;padding:14px;color:#842445}
.hcequiz2-page .hcequiz2-navigation{margin-top:24px;gap:12px}.hcequiz2-page .hcequiz2-next{background:linear-gradient(125deg,#a52d59,#bf4b76);color:#fff;border:1px solid #a52d59;border-radius:12px;min-height:50px;padding:14px 28px;box-shadow:0 5px 16px #a52d5920}.hcequiz2-page .hcequiz2-back{background:#fff;color:#8e2851;border:1px solid #d8b6c4;border-radius:12px;min-height:50px}.hcequiz2-page .hcequiz2-back:disabled{opacity:.5}.hcequiz2-page :is(button,a):focus-visible,.hcecomplete-page :is(button,a):focus-visible{outline:3px solid #8d2851;outline-offset:4px}
.hcequiz2-page .hcequiz2-result{margin-top:0;padding-top:0}.hcequiz2-page .hcequiz2-result-heading h2,.hcecomplete-page .hcecomplete-result-head h2{font-size:clamp(34px,4.5vw,52px);line-height:1.1}.hcequiz2-choice-summary{display:flex;justify-content:space-between;gap:20px;align-items:center;background:#fff;border:1px solid #ead3dc;border-radius:16px;padding:18px 22px;margin-bottom:24px}.hcequiz2-choice-summary small{display:block;color:#9b3459;font-size:10px;font-weight:800;letter-spacing:.1em;margin-bottom:9px}#hcequiz2-choice-chips{display:flex;flex-wrap:wrap;gap:6px}#hcequiz2-choice-chips span{padding:5px 9px;background:#fcf0f4;border:1px solid #eedbe3;border-radius:20px;font-size:12px;color:#6e4155}.hcequiz2-choice-summary button{flex-shrink:0}.hcequiz2-page .hcequiz2-result-photo{min-height:0;align-self:start;aspect-ratio:auto;background:#f7e9ed}.hcequiz2-page #hcequiz2-result-image{position:relative;display:block;height:auto;max-height:850px;width:100%;object-fit:contain}.hcequiz2-page .hcequiz2-result-box strong{font-size:18px;line-height:1.5}.hcequiz2-page .hcequiz2-result-main h3{font-size:30px;line-height:1.2}.hcequiz2-page .hcequiz2-result-main p{font-size:15px;line-height:1.7;color:#725d66}.hcequiz2-page .hcequiz2-result-actions{gap:10px;justify-content:center}.hcequiz2-page .hcequiz2-result-actions>*{min-height:46px;border-radius:11px;font-size:11px;background:#fff;color:#8d2a51;border:1px solid #dcb6c6;box-shadow:none}.hcequiz2-page #hcequiz2-save{background:#a52d59;color:#fff;border-color:#a52d59}.hcequiz2-page #hcequiz2-download{background:#faf0e7;color:#865235;border-color:#e6cbb7}.hcequiz2-page #hcequiz2-restart{background:transparent;border-color:transparent;text-decoration:underline}.hcequiz2-page .hcequiz2-result-actions>*:hover{transform:translateY(-2px);box-shadow:0 5px 15px #7d325118}.hcequiz2-page .hcequiz2-recommended-card-image img{object-fit:contain}.hcequiz2-page .hcequiz2-saved-panel{margin-bottom:28px}.hcequiz2-page .hcequiz2-saved-card-image img{object-fit:contain}.hcequiz2-page .hcequiz2-result-heading span{font-size:15px;line-height:1.6}
.hcecomplete-page .hcecomplete-card{min-height:0;aspect-ratio:3/4;border-radius:17px;border:2px solid #ead3dc;box-shadow:0 7px 24px #5c2c4210}.hcecomplete-page .hcecomplete-card.is-selected{border-color:#a52d59;box-shadow:0 0 0 3px #f4d5e1}.hcecomplete-page .hcecomplete-result-image-wrap{min-height:0;align-self:start;aspect-ratio:auto}.hcecomplete-page #hcecomplete-image{position:relative;width:100%;height:auto;max-height:800px;object-fit:contain}.hcecomplete-page .hcecomplete-actions{display:flex;gap:10px;flex-wrap:wrap}.hcecomplete-page .hcecomplete-actions>*{background:#fff;color:#8e2851;border:1px solid #dab6c5;border-radius:11px;min-height:46px;font-size:11px;box-shadow:none}.hcecomplete-page .hcecomplete-actions #hcecomplete-shop{background:#a52d59;color:#fff;border-color:#a52d59}.hcecomplete-page .hcecomplete-actions #hcecomplete-download{background:#faf0e7;color:#865235;border-color:#e6cbb7}.hcecomplete-page .hcecomplete-actions #hcecomplete-restart{background:transparent;color:#8e2851}.hcecomplete-saved{background:#fff;border:1px solid #e9d0db;border-radius:15px;padding:22px;margin-bottom:26px}.hcecomplete-saved h3{font:400 26px Georgia,serif;margin:0 0 8px}.hcecomplete-saved p{font-size:13px;color:#765e68}.hcecomplete-saved>div{display:flex;gap:8px;flex-wrap:wrap}.hcecomplete-saved button{background:#fbecf2;border:1px solid #d7aebf;color:#8b2850;padding:11px 16px;border-radius:11px;min-height:44px;font-size:13px;cursor:pointer}
@media(max-width:900px){.hce-site-header .hce-header-actions{gap:8px}.hce-site-header .hce-header-inner{min-height:74px}.hce-site-header .hce-mobile-menu-button{width:44px;height:44px}.hce-site-header .hce-header-pinterest{display:none}.hce-site-header .hce-mobile-navigation{max-height:calc(100dvh - 74px);overflow-y:auto}.hce-site-header .hce-primary-menu{display:none}.hce-site-header .hce-brand-name{font-size:26px}.hce-site-header .hce-brand-icon{width:40px;height:40px;flex-basis:40px}.hce-site-header .hce-search-panel{right:-52px}.hce-site-header .hce-mobile-menu li>a{min-height:44px;display:flex;align-items:center}.hce-mobile-submenu-toggle{min-width:44px;min-height:44px}}
@media(max-width:650px){.hcequiz2-page .hcequiz2-container,.hcecomplete-page .hcecomplete-container{width:calc(100% - 28px)}.hcequiz2-page .hcequiz2-hero,.hcecomplete-page .hcecomplete-hero{padding:30px 0 22px}.hcequiz2-page .hcequiz2-intro,.hcecomplete-page .hcecomplete-intro{font-size:15px;line-height:1.65}.hcequiz2-page .hcequiz2-main,.hcecomplete-page .hcecomplete-main{padding:26px 0 48px}.hcequiz2-page .hcequiz2-progress-meta{padding-top:10px}.hcequiz2-page .hcequiz2-progress-item{flex:0 0 65px;padding:5px}.hcequiz2-page .hcequiz2-progress{gap:4px;padding:8px 14px 10px}.hcequiz2-page .hcequiz2-step-heading h2,.hcecomplete-page .hcecomplete-heading h2{font-size:30px}.hcequiz2-page .hcequiz2-shape-grid,.hcequiz2-page .hcequiz2-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hcequiz2-page .hcequiz2-photo-card strong{font-size:20px;left:12px;bottom:12px}.hcequiz2-page .hcequiz2-shape-card strong{font-size:18px}.hcequiz2-page .hcequiz2-navigation{position:sticky;z-index:20;bottom:0;display:grid;grid-template-columns:100px minmax(0,1fr);background:#fffaf9f5;border-top:1px solid #ead3dc;padding:12px 0 calc(12px + env(safe-area-inset-bottom));backdrop-filter:blur(10px);margin-bottom:-12px}.hcequiz2-page .hcequiz2-navigation button{width:100%;font-size:12px;padding:12px}.hcequiz2-choice-summary{flex-direction:column;align-items:stretch;padding:16px;gap:14px}.hcequiz2-choice-summary button{align-self:flex-start}.hcequiz2-page .hcequiz2-result-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.hcequiz2-page .hcequiz2-result-actions>*{width:100%;padding:12px 8px;line-height:1.35}.hcequiz2-page .hcequiz2-result-mini-grid{grid-template-columns:1fr}.hcequiz2-page .hcequiz2-result-main h3{font-size:26px}.hcecomplete-page .hcecomplete-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hcecomplete-page .hcecomplete-card{padding:14px;min-height:235px;aspect-ratio:3/4}.hcecomplete-page .hcecomplete-card strong{font-size:23px}.hcecomplete-page .hcecomplete-card>span{font-size:9px}.hcecomplete-page .hcecomplete-card>small{font-size:9px}.hcecomplete-page .hcecomplete-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.hcecomplete-page .hcecomplete-actions>*{padding:12px 9px;width:100%}.hcecomplete-page #hcecomplete-shop{grid-column:1/-1}}
@media(max-width:380px){.hce-site-header .hce-brand-name{font-size:23px}.hce-site-header .hce-brand-icon{display:none}.hce-site-header .hce-brand-kicker{font-size:8px}.hcecomplete-page .hcecomplete-card{min-height:210px}.hcecomplete-page .hcecomplete-card strong{font-size:21px}}
@media(prefers-reduced-motion:reduce){.hce-site-header *,.hcequiz2-page *,.hcecomplete-page *{transition:none!important;animation:none!important;scroll-behavior:auto!important}.hcequiz2-page label:hover,.hcecomplete-page .hcecomplete-card:hover{transform:none}}


.hcequiz2-page :is(.hcequiz2-result-box,.hcequiz2-palette) small{font-size:10px;line-height:1.5;letter-spacing:.1em;color:#9b3159}.hcequiz2-page .hcequiz2-shape-card small{color:#72595f}.hcequiz2-page .hcequiz2-question-block h3{font-size:25px;line-height:1.3}.hcequiz2-page .hcequiz2-option-card{min-height:52px}
