:root {
    --shared-orange:#B85B2A;
    --shared-orange-dark:#7F3718;
    --shared-espresso:#3C1711;
    --shared-copper:#D4834F;
    --shared-ivory:#FBF6F1;
    --shared-ink:#211D1A;
    --shared-muted:#716861;
    --shared-line:#E8D8CA;
}

/* One formula system shared by Home and Product. */
.unified-formula {
    width:100% !important;
    color:#fff !important;
    background:linear-gradient(145deg,var(--shared-orange-dark),var(--shared-espresso)) !important;
}
.unified-formula-host {
    width:min(1180px,calc(100% - 48px)) !important;
    max-width:1180px !important;
    margin-inline:auto !important;
    padding-inline:0 !important;
}
.shared-formula-header {
    max-width:820px;
    margin-bottom:42px;
    text-align:left;
}
.shared-formula-kicker,
.shared-formula-label {
    display:flex;
    align-items:center;
    gap:14px;
    color:#F4B98D;
    font-size:11px;
    font-weight:700;
    letter-spacing:.18em;
    text-transform:uppercase;
}
.shared-formula-kicker::after,
.shared-formula-label::after {
    content:"";
    width:72px;
    height:1px;
    background:rgba(255,255,255,.32);
}
.shared-formula-title {
    margin:17px 0 18px;
    color:#fff;
    font-family:"Microsoft YaHei","Noto Sans SC","PingFang SC",Inter,Arial,sans-serif;
    font-size:clamp(2.7rem,5.5vw,5rem);
    font-weight:700;
    letter-spacing:-.045em;
    line-height:1.08;
}
.shared-formula-lead {
    color:rgba(255,255,255,.78);
    font-size:15px;
    line-height:1.9;
}
.shared-formula-stats {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    margin:0 0 46px;
    padding:26px 0;
    border-top:1px solid rgba(255,255,255,.22);
    border-bottom:1px solid rgba(255,255,255,.22);
}
.shared-formula-stat {
    padding:0 28px;
    border-left:1px solid rgba(255,255,255,.2);
    text-align:center;
}
.shared-formula-stat:first-child { border-left:0; }
.shared-formula-stat strong {
    display:block;
    color:#FFC18F;
    font-family:Inter,"Helvetica Neue",Arial,sans-serif;
    font-size:clamp(2.2rem,4vw,4rem);
    font-weight:650;
    line-height:1;
}
.shared-formula-stat span {
    display:block;
    margin-top:10px;
    color:#fff;
    font-size:13px;
    font-weight:650;
}
.shared-formula-label { margin-bottom:20px; }
.shared-formula-track,
.shared-review-track {
    display:flex;
    gap:18px;
    overflow-x:auto;
    overflow-y:hidden;
    padding:4px 2px 18px;
    scroll-snap-type:x mandatory;
    overscroll-behavior-x:contain;
    touch-action:pan-y pinch-zoom;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
}
.shared-formula-track::-webkit-scrollbar,
.shared-review-track::-webkit-scrollbar { display:none; }
.shared-formula-card {
    flex:0 0 calc((100% - 36px)/3);
    display:flex;
    flex-direction:column;
    overflow:hidden;
    scroll-snap-align:start;
    scroll-snap-stop:always;
    border-radius:18px;
    color:var(--shared-ink);
    background:#fff;
    box-shadow:0 22px 55px rgba(23,8,5,.24);
}
.shared-formula-media {
    aspect-ratio:16/9;
    overflow:hidden;
    background:var(--shared-ivory);
}
.shared-formula-media img {
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.shared-formula-copy {
    flex:1;
    display:flex;
    flex-direction:column;
    padding:22px;
}
.shared-formula-num {
    color:var(--shared-orange-dark);
    font-size:10px;
    font-weight:750;
    letter-spacing:.14em;
    text-transform:uppercase;
}
.shared-formula-copy h3 {
    margin:8px 0 5px;
    min-height:56px;
    color:var(--shared-ink);
    font-size:21px;
    font-weight:750;
    line-height:1.3;
}
.shared-formula-country {
    min-height:19px;
    color:var(--shared-orange);
    font-size:11px;
    font-weight:700;
}
.shared-formula-alias {
    min-height:42px;
    margin-top:6px;
    color:var(--shared-muted);
    font-size:11px;
    font-style:italic;
    font-weight:600;
    line-height:1.55;
}
.shared-formula-tags,
.shared-formula-microtags,
.shared-formula-badges {
    display:flex;
    flex-wrap:wrap;
    gap:6px;
}
.shared-formula-tags { min-height:56px; margin:10px 0 12px; align-content:flex-start; }
.shared-formula-tags span,
.shared-formula-microtags span {
    padding:5px 8px;
    border-radius:999px;
    color:#8C4D16;
    background:#FFF0C9;
    font-size:9px;
    font-weight:700;
    line-height:1.2;
}
.shared-formula-tags .tag-acne { color:#943746; background:#FDE1E6; }
.shared-formula-tags .tag-metabolism { color:#286348; background:#DCF0E4; }
.shared-formula-tags .tag-brightening { color:#8B6214; background:#FFF0BB; }
.shared-formula-tags .tag-barrier { color:#315B8F; background:#DFEBFA; }
.shared-formula-summary {
    min-height:112px;
    color:#625750;
    font-size:12px;
    line-height:1.8;
}
.shared-formula-detail {
    margin-top:12px;
    padding-top:12px;
    border-top:1px solid var(--shared-line);
}
.shared-formula-detail-title {
    display:block;
    margin-bottom:9px;
    color:var(--shared-orange-dark);
    font-size:11px;
    font-weight:750;
}
.shared-formula-detail > p {
    min-height:52px;
    color:#625750;
    font-size:12px;
    line-height:1.75;
}
.shared-formula-metrics {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
    margin:15px 0 13px;
}
.shared-formula-metric {
    min-height:82px;
    padding:13px;
    border:1px solid var(--shared-line);
    border-radius:12px;
}
.shared-formula-metric strong {
    display:block;
    color:var(--shared-orange);
    font-size:22px;
    line-height:1.1;
}
.shared-formula-metric span {
    display:block;
    margin-top:9px;
    color:#716861;
    font-size:9px;
    font-weight:650;
    line-height:1.4;
}
.shared-formula-microtags span {
    color:#625750;
    background:#fff;
    border:1px solid var(--shared-line);
}
.shared-formula-badges {
    min-height:24px;
    margin-top:14px;
    padding-top:0;
}
.shared-formula-badges span {
    padding:5px 8px;
    border-radius:6px;
    color:#fff;
    background:var(--shared-orange-dark);
    font-size:8px;
    font-weight:700;
}
.shared-progress {
    width:min(220px,55%);
    height:4px;
    margin:10px auto 48px;
    overflow:hidden;
    border-radius:999px;
    background:rgba(255,255,255,.2);
}
.shared-progress > span {
    display:block;
    width:25%;
    height:100%;
    border-radius:inherit;
    background:#FFC18F;
    transform-origin:left center;
    transition:transform .18s ease;
}
.shared-support { margin-top:12px; }
.shared-support-intro { max-width:760px; margin:20px 0 28px; }
.shared-support-intro h3 { color:#fff; font-size:clamp(1.8rem,3vw,2.6rem); font-weight:700; }
.shared-support-intro p { margin-top:8px; color:rgba(255,255,255,.75); font-size:14px; }
.shared-support-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.shared-support-card {
    align-self:start;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.24);
    border-radius:16px;
    color:var(--shared-ink);
    background:#fff;
}
.shared-support-card summary {
    list-style:none;
    display:grid;
    grid-template-columns:42px 1fr auto;
    align-items:center;
    gap:14px;
    padding:18px 20px;
    cursor:pointer;
}
.shared-support-card summary::-webkit-details-marker { display:none; }
.shared-support-number { color:var(--shared-orange); font-size:12px; font-weight:750; }
.shared-support-name strong { display:block; font-size:16px; }
.shared-support-name span { display:block; margin-top:2px; color:#8A817A; font-size:11px; }
.shared-support-plus { color:var(--shared-orange); font-size:22px; transition:transform .35s ease; }
.shared-support-card[open] .shared-support-plus { transform:rotate(45deg); }
.shared-support-body { padding:0 20px 20px 76px; color:#625750; font-size:13px; line-height:1.8; }
.shared-support-benefit { margin-bottom:8px; color:var(--shared-orange); font-size:10px; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }
.shared-formula-note {
    margin-top:34px;
    padding:22px 24px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:16px;
    color:rgba(255,255,255,.78);
    background:rgba(255,255,255,.07);
    font-size:13px;
    line-height:1.8;
}
.shared-formula-note strong { color:#fff; }

/* One review carousel shared by Home and Product. */
.pricing-feedback-carousel.js-pricing-feedbacks-slider {
    display:block !important;
    overflow:visible !important;
    padding:0 !important;
}
.shared-review-shell { width:100%; }
.shared-review-track { gap:16px; padding-bottom:12px; }
.shared-review-card {
    flex:0 0 calc((100% - 48px)/4);
    overflow:hidden;
    scroll-snap-align:start;
    scroll-snap-stop:always;
    border:1px solid var(--shared-line);
    border-radius:16px;
    background:#fff;
    box-shadow:0 14px 34px rgba(60,23,17,.08);
    cursor:zoom-in;
}
.shared-review-card img {
    width:100%;
    height:auto;
    display:block;
    object-fit:contain;
}
.shared-review-progress {
    width:min(260px,62%);
    height:4px;
    margin:18px auto 0;
    overflow:hidden;
    border-radius:999px;
    background:#EADDD2;
}
.shared-review-progress > span {
    display:block;
    width:18%;
    height:100%;
    border-radius:inherit;
    background:var(--shared-orange);
    transform-origin:left center;
    transition:transform .18s ease;
}

@media (max-width:1023px) {
    .shared-formula-card { flex-basis:48%; }
    .shared-review-card { flex-basis:48%; }
}
@media (max-width:767px) {
    .unified-formula-host { width:calc(100% - 32px) !important; }
    .shared-formula-header { margin-bottom:30px; }
    .shared-formula-title { font-size:2.65rem; }
    .shared-formula-lead { font-size:13px; }
    .shared-formula-stats { grid-template-columns:repeat(4,minmax(0,1fr)); padding:20px 0; margin-bottom:34px; }
    .shared-formula-stat { padding:0 6px; }
    .shared-formula-stat strong { font-size:1.85rem; }
    .shared-formula-stat span { margin-top:8px; font-size:9px; line-height:1.35; }
    .shared-formula-track { gap:12px; padding-right:16px; }
    .shared-formula-card { flex-basis:88%; border-radius:16px; }
    .shared-formula-copy { padding:16px; }
    .shared-formula-copy h3,
    .shared-formula-country,
    .shared-formula-alias,
    .shared-formula-tags,
    .shared-formula-summary,
    .shared-formula-detail > p,
    .shared-formula-badges { min-height:0; }
    .shared-formula-copy h3 { font-size:18px; }
    .shared-formula-summary,.shared-formula-detail > p { font-size:11px; line-height:1.72; }
    .shared-formula-tags { margin:9px 0 11px; }
    .shared-formula-support { margin-top:8px; }
    .shared-support-list { grid-template-columns:1fr; }
    .shared-support-card summary { padding:16px; }
    .shared-support-body { padding:0 16px 18px 72px; }
    .shared-review-card { flex-basis:86%; }
    .shared-review-track { gap:12px; padding-right:16px; }
}

@media (prefers-reduced-motion:reduce) {
    .shared-progress > span,.shared-review-progress > span { transition:none; }
}
