/* Product-only beauty editorial system. No shared Library or admin selectors. */
.editorial-product { --plum:#402538; --ink:#30242b; --rose:#f0dcd9; --cream:#fcf7ee; --line:#cdbabf; background:var(--cream); color:var(--ink); font-family:Arial,Helvetica,sans-serif; }
.editorial-product .nav { position:relative; background:var(--cream); padding:18px max(20px,calc((100% - 1160px)/2)); border-bottom:1px solid #e8dcd4; min-height:72px; }
.editorial-product .nav .brand { font-family:Georgia,serif; font-size:27px; letter-spacing:-1.5px; font-weight:normal; white-space:nowrap; }
.editorial-product .nav .brand span { color:#81506a; display:inline-block; font-size:23px; margin-left:3px; }
.editorial-product .nav .button { background:var(--plum); color:var(--cream); border-radius:40px; }
.editorial-product .product-page { max-width:1200px; margin:auto; padding:0 20px; }
.editorial-product .back-link { margin:23px 0; font-size:13px; color:#63535a; }
.editorial-product h1,.editorial-product h2 { font-family:Georgia,'Times New Roman',serif; font-weight:normal; letter-spacing:-.045em; }
.editorial-product h2 { font-size:52px; line-height:1.05; margin:0 0 20px; }
.editorial-product h2 em { color:#81506a; font-weight:normal; }
.editorial-product .product-hero { position:relative; isolation:isolate; overflow:hidden; border:0; border-radius:4px 80px 4px 4px; background:var(--plum); color:var(--cream); padding:52px; display:grid; grid-template-columns:1.1fr 1fr; gap:40px; align-items:end; }
.editorial-product .product-hero h1 { font-size:64px; line-height:1; max-width:620px; margin:12px 0 25px; overflow-wrap:anywhere; }
.hero-kicker { font-size:13px; margin:0 0 35px; color:#ead0d9; }
.editorial-product #productBrand { color:#f2dbcd; font-size:14px; font-weight:700; letter-spacing:.12em; }
.hero-deck { font-size:18px; line-height:1.45; margin-bottom:20px; }
.hero-deck em { color:#edcbbf; }
.art-caption { font-size:11px; color:#dfc8d4; max-width:250px; margin:0; }
.hero-ribbons { position:absolute; z-index:-1; width:420px; height:500px; right:-180px; top:-190px; transform:rotate(-35deg); opacity:.55; }
.hero-ribbons i { position:absolute; inset:0; border:24px solid #b989a0; border-radius:48%; }
.hero-ribbons i:nth-child(2) { inset:32px; border-color:#e2a995; }
.hero-ribbons i:nth-child(3) { inset:64px; border-color:#805e7a; }
.hero-ribbons i:nth-child(4) { inset:96px; border-color:#f1c9bc; }
.hero-story-label { font-family:Georgia,serif; font-size:23px; font-style:italic; max-width:280px; line-height:1.2; }
.experience-preview { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.story-peek { text-decoration:none; color:var(--plum); background:#edd5cd; border-radius:22px 22px 4px 4px; padding:19px 16px; display:flex; flex-direction:column; align-items:start; gap:8px; min-width:0; transition:transform .18s; }
.story-peek.peek-1 { background:#ded3e6; border-radius:4px 4px 22px 22px; }
.story-peek:hover { transform:translateY(-3px); }
.peek-author { font-size:12px; font-weight:700; overflow-wrap:anywhere; }
.peek-duration { font-family:Georgia,serif; font-weight:normal; font-size:37px; line-height:1.05; letter-spacing:-.04em; }
.peek-caption { font-size:12px; margin-top:-5px; }
.peek-heading { font-family:Georgia,serif; font-weight:normal; font-size:23px; line-height:1.1; }
.peek-summary { font-size:14px; line-height:1.4; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.peek-more { font-size:12px; font-weight:700; margin-top:auto; padding-top:9px; }
.hero-cta { color:var(--cream); text-decoration:none; border-bottom:1px solid #b79aa9; padding:16px 0 8px; display:flex; justify-content:space-between; font-size:16px; }
.hero-cta span { font-size:26px; }
.overview-empty { grid-column:1/-1; font-family:Georgia,serif; font-size:24px; }
.product-jump-nav { display:flex; justify-content:center; gap:32px; border-bottom:1px solid var(--line); padding:10px 0; }
.product-jump-nav a { display:flex; align-items:center; min-height:44px; color:var(--plum); font-size:14px; font-weight:700; text-decoration:none; }
.product-jump-nav a:hover { text-decoration:underline; text-underline-offset:5px; }
.editorial-product .section { padding:55px 0; }
.editorial-product .section-head { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:24px; }
.section-number { font-size:12px; letter-spacing:.03em; color:#755467; margin:0 0 17px; }
.section-intro { font-size:16px; max-width:300px; color:#65545e; margin-bottom:20px; }
.editorial-product .evidence-list { display:block; max-width:none; }
.group-title { font-family:Georgia,serif; font-weight:normal; font-size:25px; margin:0 0 8px; }
.editorial-context { font-size:14px; color:#65545e; margin:0 0 22px; }
.editorial-split { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; align-items:start; }
.editorial-report { padding:30px; border:0; border-radius:26px 26px 4px 4px; background:#f2ddd3; color:var(--ink); min-width:0; overflow-wrap:anywhere; scroll-margin-top:25px; }
.editorial-report.tone-1 { background:#e6deed; border-radius:4px 4px 26px 26px; }
.account-top { display:flex; align-items:center; gap:15px; border-bottom:1px solid #bfa8b1; padding-bottom:15px; margin-bottom:22px; }
.account-index { font-family:Georgia,serif; font-size:34px; font-style:italic; line-height:1; }
.account-kind { font-size:12px; max-width:210px; line-height:1.4; }
.report-attribution { margin:0 0 22px; }
.report-attribution strong { display:block; font-size:19px; }
.report-attribution span { font-size:13px; }
.wear-moment { display:flex; align-items:baseline; flex-wrap:wrap; gap:12px; margin:15px 0; }
.wear-moment > span { font-family:Georgia,serif; font-size:64px; letter-spacing:-.06em; line-height:1; }
.wear-moment small { font-size:14px; }
.report-title { font-family:Georgia,serif; font-size:27px; font-weight:normal; line-height:1.15; margin:0 0 18px; }
.report-facts { display:flex; flex-wrap:wrap; gap:12px 25px; margin:0 0 20px; border-bottom:1px solid #bfa8b1; padding-bottom:18px; }
.report-facts dt { font-size:12px; color:#634a59; }
.report-facts dd { font-size:15px; font-weight:700; margin:3px 0 0; }
.report-findings h5 { font-size:12px; font-weight:normal; margin:0 0 10px; color:#634a59; }
.report-findings p,.report-findings li { font-size:17px; line-height:1.55; }
.report-findings ul { padding-left:21px; margin:0 0 20px; }
.report-findings li { padding:0 0 8px 5px; }
.report-date { font-size:12px; color:#634a59; margin:20px 0 5px; }
.report-source { display:flex; justify-content:space-between; align-items:center; min-height:48px; font-size:15px; font-weight:700; text-underline-offset:4px; padding:10px 0; }
.report-disclosures { border-top:1px solid #bfa8b1; margin-top:10px; font-size:14px; }
.report-disclosures summary { padding:14px 0; min-height:48px; cursor:pointer; }
.report-disclosures summary > span { float:right; }
.report-disclosures p { line-height:1.5; margin:0 0 16px; }
.brand-group { margin-top:45px; }
.brand-group .editorial-split { gap:30px; }
.editorial-report.brand-report { background:transparent; border-radius:0; padding:20px 0 0; border-top:2px solid var(--plum); }
.brand-report .account-top { border:0; padding:0; }
.brand-report .account-index { color:#7b526c; }
.brand-report .report-title { font-size:24px; }
.brand-report .report-findings p { font-size:16px; }
.brand-report .report-facts { display:none; }
.editorial-unknowns { border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin-top:32px; }
.editorial-unknowns summary { font-family:Georgia,serif; font-size:22px; padding:20px 0; cursor:pointer; }
.editorial-unknowns summary > span { float:right; }
.editorial-unknowns div { max-width:760px; font-size:15px; line-height:1.6; }
.editorial-product .product-notebook { background:#e9e2d3; border-radius:4px 38px 4px 4px; padding:28px; }
#productSpecs > summary { cursor:pointer; list-style:none; display:flex; flex-direction:column; gap:5px; position:relative; padding-right:28px; }
#productSpecs > summary::after { content:'＋'; position:absolute; right:0; top:25px; }
#productSpecs[open] > summary::after { content:'−'; }
.notebook-title { font-family:Georgia,serif; font-size:30px; line-height:1.1; }
.notebook-content { padding-top:24px; max-width:800px; }
.editorial-product .product-description { font-size:16px; }
.editorial-product .source-ledger { padding:22px 0; font-size:14px; color:#65545e; }
.source-ledger summary { padding:10px 0; cursor:pointer; }
.source-ledger summary span { margin-left:8px; }
.ledger-content { padding-top:15px; }
.editorial-product .community-invite { display:grid; grid-template-columns:1fr .5fr; align-items:center; gap:20px; padding:40px; margin-top:15px; background:#ecd6d8; border-radius:80px 4px 4px 4px; }
.community-invite p { max-width:430px; font-size:16px; }
.community-flower { color:#966b80; font-size:220px; line-height:1; text-align:center; }
.editorial-product .button { background:var(--plum); color:var(--cream); border-radius:40px; font-size:14px; min-height:44px; }
.editorial-product footer { max-width:1200px; margin:40px auto 0; padding:25px 20px; font-size:13px; color:#65545e; border-top:1px solid var(--line); }
.editorial-product :focus-visible { outline:3px solid #9b583f; outline-offset:5px; }
.editorial-product .product-hero :focus-visible { outline-color:#ffdb9d; }
.skip-product { position:absolute; top:-100px; }
.skip-product:focus { top:5px; left:5px; z-index:100; background:white; padding:15px; }
.editorial-product #community,.editorial-product #externalEvidenceSection,.editorial-product #productSpecs { scroll-margin-top:20px; }
.editorial-product .empty-state { background:#edd9cf; border:0; border-radius:30px 4px; padding:30px; }
@media (max-width:850px) {
  .editorial-product .product-hero { grid-template-columns:1fr; padding:28px; gap:25px; }
  .editorial-product .product-hero h1 { font-size:53px; }
  .hero-kicker { margin-bottom:20px; }
  .hero-deck { margin:15px 0; }
  .hero-deck br { display:none; }
  .hero-stories { max-width:600px; }
  .hero-story-label { max-width:none; font-size:21px; margin-bottom:15px; }
  .editorial-product .section-head { display:block; }
  .section-intro { max-width:none; }
}
@media (max-width:600px) {
  .editorial-product .nav { padding:13px 16px; gap:10px; min-height:64px; }
  .editorial-product .nav nav { gap:10px; }
  .editorial-product .nav .brand { font-size:25px; }
  .editorial-product .nav .button { font-size:12px; padding:10px 12px; }
  .editorial-product .product-page { padding:0 16px; }
  .editorial-product .back-link { margin:17px 0; }
  .editorial-product .product-hero { padding:24px 18px; border-radius:4px 48px 4px 4px; gap:20px; }
  .editorial-product .product-hero h1 { font-size:43px; margin:10px 0 15px; }
  .hero-kicker { font-size:12px; max-width:180px; margin-bottom:18px; }
  .hero-deck { font-size:16px; }
  .art-caption { font-size:10px; }
  .hero-story-label { font-size:20px; }
  .story-peek { padding:15px 12px; }
  .peek-duration { font-size:32px; }
  .peek-summary { font-size:14px; -webkit-line-clamp:3; }
  .peek-author { font-size:12px; }
  .peek-heading { font-size:21px; }
  .hero-cta { font-size:15px; }
  .product-jump-nav { gap:0; justify-content:space-between; }
  .product-jump-nav a { font-size:13px; }
  .editorial-product h2 { font-size:39px; }
  .editorial-product .section { padding:35px 0; }
  .editorial-product .section-head { margin-bottom:20px; }
  .section-number { margin-bottom:14px; }
  .section-intro { font-size:15px; }
  .group-title { font-size:22px; }
  .editorial-split { grid-template-columns:1fr; gap:18px; }
  .editorial-report { padding:23px; }
  .report-title { font-size:26px; }
  .report-findings p,.report-findings li { font-size:17px; }
  .wear-moment > span { font-size:53px; }
  .account-top { margin-bottom:18px; }
  .brand-group { margin-top:35px; }
  .brand-group .editorial-split { gap:18px; }
  .editorial-product .product-notebook { padding:24px; }
  .notebook-title { font-size:28px; }
  .editorial-product .source-ledger { padding:15px 0; }
  .editorial-product .community-invite { grid-template-columns:1fr; padding:36px 25px; border-radius:48px 4px 4px 4px; position:relative; overflow:hidden; }
  .community-flower { position:absolute; right:-8px; bottom:15px; font-size:100px; opacity:.25; pointer-events:none; }
  .community-invite .button { position:relative; z-index:1; }
}
@media (prefers-reduced-motion:reduce) { .story-peek { transition:none; } html:has(.editorial-product) { scroll-behavior:auto; } }
@media print { .report-disclosures > *, .editorial-unknowns > *, #productSpecs > *, .source-ledger details > * { display:block !important; } }
.account-index { flex-shrink:0; white-space:nowrap; }
.editorial-product .nav .brand svg { display:block; width:24px; height:24px; }
.community-flower svg { display:block; width:100%; height:auto; }
.hero-cta > span, .report-source > span[aria-hidden], .peek-more > span { display:inline-block; flex-shrink:0; width:10px; height:10px; border-right:1.5px solid currentColor; border-top:1.5px solid currentColor; transform:rotate(0deg); margin:4px; }
.hero-cta > span { transform:rotate(90deg); }
@media(max-width:600px) { .community-flower { width:100px; } }
/* Allow enlarged text to reflow rather than squeeze navigation or story previews. */
.editorial-product .nav { flex-wrap:wrap; }
.story-peek > * { max-width:100%; overflow-wrap:anywhere; }
.editorial-product .product-hero { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); }
.hero-identity,.hero-stories { min-width:0; }
.experience-preview { grid-template-columns:repeat(2,minmax(0,1fr)); }
@media(max-width:850px) { .editorial-product .product-hero { grid-template-columns:minmax(0,1fr); } }
/* Decorative ribbons are clipped in their own layer, never a scrollable text container. */
.editorial-product .product-hero { overflow:clip; }
.hero-ribbons { inset:0; width:auto; height:auto; transform:none; overflow:clip; }
.hero-ribbons i { inset:auto; top:-190px; right:-180px; width:420px; height:500px; transform:rotate(-35deg); }
.hero-ribbons i:nth-child(2) { inset:auto; top:-158px; right:-148px; width:356px; height:436px; }
.hero-ribbons i:nth-child(3) { inset:auto; top:-126px; right:-116px; width:292px; height:372px; }
.hero-ribbons i:nth-child(4) { inset:auto; top:-94px; right:-84px; width:228px; height:308px; }

/* Qualifiers remain verbatim, but do not break across letters on a narrow card. */
.peek-duration .duration-qualifier { display:block; font-size:14px; line-height:1.4; letter-spacing:normal; }
.wear-moment .duration-qualifier { display:block; font-size:20px; line-height:1.5; letter-spacing:normal; }
@media(max-width:360px) { .peek-duration .duration-qualifier { font-size:12px; } }

/* The one-minute product summary appears before long source cards. */
.editorial-product .quick-read{padding:34px 0 28px;}
.editorial-product .quick-read-heading{max-width:760px;margin:0 0 24px;}
.editorial-product .quick-read-heading h2{font-size:clamp(32px,4.5vw,54px);line-height:1.13;}
.editorial-product .quick-read-heading>p:last-child{font-size:16px;color:#65545e;line-height:1.6;}
.editorial-product .quick-read-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:15px;align-items:stretch;}
.editorial-product .quick-read-panel{background:#f1e1db;border:1px solid #e4cbd0;padding:25px 22px;border-radius:24px 24px 6px 6px;min-width:0;overflow-wrap:anywhere;}
.editorial-product .quick-read-panel:nth-child(2){background:#eae8dc;border-color:#dcd9c9;}
.editorial-product .quick-read-panel:nth-child(3){background:#e9e3ef;border-color:#dbcee4;}
.editorial-product .quick-read-panel h3{font:normal 29px/1.15 Georgia,serif;margin:0 0 22px;color:#412a3a;letter-spacing:-.025em;}
.editorial-product .quick-read-panel p{font-size:15px;line-height:1.64;margin:0 0 13px;}
.editorial-product .quick-read-panel .quick-read-intro{font-size:14px;color:#654854;}
.editorial-product .quick-read-account{border-top:1px solid #c8adb6;padding:16px 0 0;margin-top:16px;}
.editorial-product .quick-read-account>p{font-size:17px;line-height:1.55;}
.editorial-product .quick-read-credit{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;font-size:12px;color:#6c5260;}
.editorial-product .quick-read-credit a,.editorial-product .quick-read-panel>a{font-size:13px;font-weight:700;min-height:44px;display:inline-flex;align-items:center;color:#4b2940;text-underline-offset:4px;}
.editorial-product .quick-read-panel .quick-read-fine{font-size:13px;color:#695766;}
@media(max-width:900px){.editorial-product .quick-read-grid{grid-template-columns:1fr 1fr;}.editorial-product .quick-read-people{grid-column:1/-1;}}
@media(max-width:600px){.editorial-product .quick-read{padding:26px 0 12px;}.editorial-product .quick-read-grid{display:flex;flex-direction:column;gap:12px;}.editorial-product .quick-read-panel{padding:24px 20px;}.editorial-product .quick-read-panel h3{font-size:27px;margin-bottom:14px;}.editorial-product .quick-read-heading h2{font-size:37px;}}

/* HairProof consumer experience redesign: compact, editorial and mobile first. */
.beauty-product .hp-compact-hero{display:flex;flex-wrap:wrap;align-items:center;gap:20px;min-height:0;background:var(--hp-primary);padding:42px 48px;border:0;}
.beauty-product .hp-compact-hero .hero-identity{padding:0;flex:1 1 340px;}
.beauty-product .hp-compact-hero h1{font-size:clamp(33px,4vw,58px);line-height:1.08;margin:10px 0 14px;max-width:900px;}
.beauty-product .hp-compact-hero .hero-kicker{margin:0 0 14px;font-size:11px;letter-spacing:.14em;}
.beauty-product .hp-compact-hero .hero-deck{font:15px/1.6 Arial,sans-serif;margin:0 0 16px;color:#f3e4e9;}
.beauty-product .hp-listing-link{color:#fff3e8;font-weight:700;font-size:13px;display:inline-flex;min-height:40px;align-items:center;text-underline-offset:5px;}
.beauty-product .hp-product-picture{flex:0 1 220px;max-width:240px;align-self:stretch;}
.beauty-product .hp-product-picture img{width:100%;height:100%;max-height:260px;object-fit:contain;background:#fff8f0;}
.beauty-product .product-jump-nav{justify-content:flex-start;gap:26px;padding:6px 4px 12px;flex-wrap:wrap;}
.beauty-product .product-jump-nav a{font-size:13px;}
.beauty-product .hp-experiences{padding:36px 0 35px;}
.beauty-product .hp-experiences .section-head{align-items:center;margin:0 0 22px;gap:28px;}
.beauty-product .hp-experiences .section-head h2{font-size:clamp(34px,4vw,51px);margin:0;}
.beauty-product .hp-experiences .section-intro{font-size:14px;line-height:1.6;margin:0;max-width:355px;}
.beauty-product .hp-experiences .section-number{margin:0 0 10px;}
.beauty-product .hp-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.beauty-product .hp-review-card{padding:23px 24px;border:1px solid #e1d0cc;border-top:3px solid #845d72;background:var(--hp-porcelain);min-width:0;overflow-wrap:anywhere;}
.beauty-product .hp-review-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px;flex-wrap:wrap;}
.beauty-product .hp-platform{font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:#7d526a;}
.beauty-product .hp-material-label{font-size:11px;background:#f4dfd5;padding:5px 8px;color:#684359;}
.beauty-product .hp-review-card h3{font:normal 22px/1.2 Georgia,serif;margin:0 0 10px;color:#402538;}
.beauty-product .hp-review-card .hp-review-text{font-size:16px;line-height:1.55;margin:0 0 12px;color:#40313a;}
.beauty-product .hp-duration{font-weight:700;color:#725167;font-size:13px;margin:0 0 10px;}
.beauty-product .hp-review-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:12px;font-size:12px;}
.beauty-product .hp-source-link{font-weight:700;color:#533148;text-underline-offset:4px;display:inline-flex;min-height:36px;align-items:center;font-size:13px;}
.beauty-product .hp-source-context{font-size:13px;border-top:1px solid #d8bfca;padding-top:8px;margin-top:8px;}
.beauty-product .hp-source-context summary{cursor:pointer;min-height:36px;display:flex;align-items:center;}
.beauty-product .hp-source-context p{line-height:1.5;color:#6a5660;}
.beauty-product .hp-no-reviews{padding:22px 24px;background:#f4e7df;border-left:3px solid #986f81;}
.beauty-product .hp-no-reviews p{margin:0 0 7px;}
.beauty-product .hp-about-hair{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:40px;border-top:1px solid #decfc9;padding:30px 0;}
.beauty-product .hp-about-hair h2{font-size:clamp(32px,3.5vw,45px);margin:0 0 12px;}
.beauty-product .hp-about-hair>div>p{font-size:14px;color:#665460;}
.beauty-product .hp-product-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:18px 0;gap:12px 28px;}
.beauty-product .hp-fact{padding-top:10px;border-top:1px solid #e2d1d0;}
.beauty-product .hp-fact dt{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#715367;margin-bottom:6px;}
.beauty-product .hp-fact dd{font-size:15px;line-height:1.5;margin:0;overflow-wrap:anywhere;}
.beauty-product .hp-fact small{display:block;color:#765e6e;font-size:11px;}
.beauty-product .hp-brand-link{display:inline-flex;min-height:42px;align-items:center;color:#533148;font-weight:700;font-size:13px;text-underline-offset:4px;}
.beauty-product .hp-small-notes{margin:12px 0;color:#654a60;font-size:13px;}
.beauty-product .hp-small-notes summary{cursor:pointer;min-height:35px;}
.beauty-product .hp-more-sources{border-left:1px solid #dac8d1;padding-left:25px;}
.beauty-product .hp-more-sources h3{font:25px Georgia,serif;margin:4px 0 8px;}
.beauty-product .hp-more-sources>p{font-size:13px;}
.beauty-product .hp-more-sources ul{padding:0;margin:12px 0;list-style:none;}
.beauty-product .hp-more-sources li{padding:10px 0;border-bottom:1px solid #e5d9d4;font-size:13px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;}
.beauty-product .hp-contribute{padding:30px 35px;background:#f0dedb;border-left:4px solid #8d6477;margin:20px 0;}
.beauty-product .hp-contribute h2{font-size:clamp(32px,3.5vw,42px);margin:0 0 10px;}
.beauty-product .hp-contribute p{font-size:15px;max-width:580px;}
.beauty-product #similarSection{padding:30px 0 50px;}
.beauty-product #similarSection h2{font-size:clamp(32px,4vw,45px);}
.beauty-product #similarGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;}
.beauty-product #similarGrid .card{padding:20px;}
.beauty-product #similarGrid h3{font:normal 21px/1.2 Georgia,serif;margin:5px 0 12px;}
.beauty-product #similarGrid p{font-size:13px;line-height:1.5;}
.beauty-product #wearJourneySection{padding:25px 0;}
.beauty-product #wearJourneySection h2{font-size:clamp(30px,4vw,44px);}
@media(max-width:900px){.beauty-product .hp-about-hair{grid-template-columns:1fr;gap:12px;}.beauty-product .hp-more-sources{border-left:0;border-top:1px solid #dac8d1;padding:20px 0 0;}.beauty-product #similarGrid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:650px){.beauty-product .hp-compact-hero{padding:26px 22px;min-height:0;display:block;}.beauty-product .hp-compact-hero .hero-identity{padding:0;}.beauty-product .hp-compact-hero h1{font-size:34px;line-height:1.12;margin:8px 0 12px;}.beauty-product .hp-compact-hero .hero-kicker{font-size:10px;margin-bottom:8px;}.beauty-product .hp-compact-hero .hero-deck{font-size:13px;}.beauty-product .product-jump-nav{gap:8px;justify-content:space-between;}.beauty-product .product-jump-nav a{font-size:11px;}.beauty-product .hp-experiences{padding:27px 0 16px;}.beauty-product .hp-experiences .section-head{display:block;}.beauty-product .hp-experiences .section-head h2{font-size:35px;margin-bottom:12px;}.beauty-product .hp-experiences .section-intro{font-size:13px;}.beauty-product .hp-review-grid{grid-template-columns:1fr;gap:11px;}.beauty-product .hp-review-card{padding:17px 18px;}.beauty-product .hp-review-card h3{font-size:20px;}.beauty-product .hp-review-card .hp-review-text{font-size:15px;}.beauty-product .hp-about-hair{padding:28px 0 12px;}.beauty-product .hp-product-facts{gap:10px;}.beauty-product .hp-contribute{padding:25px 20px;margin:15px 0;}.beauty-product #similarGrid{grid-template-columns:1fr;}}

/* Respect native hidden state across all beauty-theme display rules. */
.beauty-product [hidden] { display:none!important; }

/* Focused mobile product refinements */
.beauty-product .hp-external-icon{display:inline-block;flex:none;vertical-align:middle;width:15px;height:15px;margin-left:5px;stroke:currentColor;}
.beauty-product .hp-review-variant{font-size:13px;line-height:1.5;color:#6d4860;margin:0 0 8px;overflow-wrap:anywhere;}
.beauty-product .hp-review-variant strong{font-weight:700;}
.beauty-product .hp-source-context{margin-top:10px;padding-top:0;}
.beauty-product .hp-source-context summary{display:flex;justify-content:space-between;gap:10px;align-items:center;min-height:44px;font-size:13px;font-weight:700;color:#633d56;list-style:none;cursor:pointer;}
.beauty-product .hp-source-context summary::-webkit-details-marker{display:none;}
.beauty-product .hp-context-chevron{width:15px;height:15px;flex:none;transition:transform .16s ease;}
.beauty-product .hp-source-context[open] .hp-context-chevron{transform:rotate(180deg);}
.beauty-product .hp-source-context p{margin:3px 0 12px;font-size:13px;line-height:1.55;}
.beauty-product .hp-source-link,.beauty-product .hp-brand-link,.beauty-product .hp-listing-link{display:inline-flex;align-items:center;min-height:44px;gap:2px;}
@media(max-width:650px){
 .beauty-product .hp-compact-hero{padding:19px 18px 18px;}
 .beauty-product .hp-compact-hero .hero-kicker{font-size:9px;margin-bottom:5px;line-height:1.35;}
 .beauty-product .hp-compact-hero h1{font-size:clamp(29px,7.7vw,34px);line-height:1.07;margin:6px 0 8px;}
 .beauty-product .hp-compact-hero .hero-deck{font-size:12px;line-height:1.45;margin:0 0 7px;}
 .beauty-product .hp-compact-hero #productBrand{font-size:11px;}
 .beauty-product .hp-listing-link{min-height:40px;font-size:12px;}
 .beauty-product .product-jump-nav{padding:4px 0 6px;}
 .beauty-product .hp-review-card{padding:18px;}
 .beauty-product .hp-review-text{line-height:1.6;}
}

/* Keep final compact-header refinements ahead of later beauty-stories.css in specificity. */
body.beauty-product .hp-compact-hero{display:flex;flex-wrap:wrap;align-items:center;min-height:0;padding:42px 48px;}
body.beauty-product .hp-compact-hero h1{font-size:clamp(33px,3.8vw,54px);line-height:1.08;max-width:900px;margin:10px 0 14px;}
body.beauty-product .hp-compact-hero #productBrand{margin:0 0 9px;}
body.beauty-product .hp-compact-hero .hero-deck{margin:0 0 12px;}
body.beauty-product .product-jump-nav{gap:26px;padding:6px 4px 12px;}
@media(max-width:650px){
 body.beauty-product .hp-compact-hero{display:block;padding:19px 18px 18px;min-height:0;}
 body.beauty-product .hp-compact-hero h1{font-size:clamp(29px,7.7vw,34px);line-height:1.07;margin:6px 0 8px;}
 body.beauty-product .hp-compact-hero .hero-kicker{font-size:9px;margin-bottom:5px;}
 body.beauty-product .hp-compact-hero .hero-deck{font-size:12px;line-height:1.45;margin:0 0 7px;}
 body.beauty-product .product-jump-nav{gap:8px;padding:4px 0 6px;justify-content:space-between;}
}

/* Highest-specificity final viewport refinements: no changes to shared theme. */
body.beauty-product .hp-compact-hero h1{
 font-size:clamp(34px,4.2vw,55px);
 line-height:1.07;
 margin:9px 0 13px;
 max-width:900px;
}
body.beauty-product .product-jump-nav{
 display:flex;
 flex-wrap:nowrap;
 align-items:stretch;
 justify-content:flex-start;
}
@media(max-width:650px){
 body.beauty-product .hp-compact-hero h1{
   font-size:clamp(29px,7.7vw,34px);
   line-height:1.07;
   margin:6px 0 8px;
 }
 body.beauty-product .product-jump-nav{
   display:grid;
   grid-template-columns:1.25fr 1fr 1fr;
   align-items:center;
   gap:5px;
   padding:2px 0 5px;
 }
 body.beauty-product .product-jump-nav a{
   font-size:10px;
   line-height:1.25;
   justify-content:center;
   text-align:center;
   min-height:44px;
   padding:3px;
 }
}


/* Comfortable mobile reading; disclosures use words as well as icons. */
.beauty-product .hp-review-credit{font-size:14px;line-height:1.5;color:#6a5660;margin:0 0 16px;}
.beauty-product .hp-disclosure-badges{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 10px;}
.beauty-product .hp-disclosure-badges span{font:13px/1.5 Arial,sans-serif;background:#f3e8e2;color:#533148;border:1px solid #dbc8cc;border-radius:12px;padding:5px 9px;max-width:100%;}
.beauty-product .hp-review-card .hp-review-text,.beauty-product .hp-fallback-review .hp-review-text{font-size:17px;line-height:1.65;margin:0 0 12px;max-width:60ch;}
.beauty-product .hp-review-card h3,.beauty-product .hp-fallback-review h3{line-height:1.3;}
.beauty-product .hp-fallback-review .hp-source-context summary{min-height:44px;cursor:pointer;}
@media(max-width:650px){.beauty-product .hp-review-card{padding:22px 20px;}.beauty-product .hp-review-grid{gap:18px;}}

/* Outcome first; accessible context stays in the existing burgundy/cream palette. */
.hp-review-card,.hp-fallback-review,.hp-account,.hp-qa-entry,.source-details{min-width:0;overflow-wrap:anywhere;}
.hp-review-disclosure,.source-disclosure{font-size:14px;line-height:1.6;margin:14px 0;color:#624653;}
.hp-source-context{margin-top:12px;}
.hp-source-context summary{min-height:44px;display:flex;align-items:center;cursor:pointer;gap:8px;}
.hp-source-context summary::after{content:'+';margin-left:auto;}
.hp-source-context[open] summary::after{content:'−';}
.hp-source-context p{font-size:15px;line-height:1.65;max-width:60ch;}
.hp-source-context summary:focus-visible,.hp-source-link:focus-visible{outline:2px solid #71394b;outline-offset:4px;}
.hp-story,.hp-qa-answer,.source-details{line-height:1.65;max-width:65ch;}
.hp-original-reviews a{display:inline-block;min-height:44px;padding:10px 0;}
@media(max-width:650px){.hp-review-card h3,.hp-account h3,.hp-qa-entry h4{font-size:23px;line-height:1.3;}.hp-review-foot{flex-wrap:wrap;gap:10px;}}

/* One bounded research image; keep independent evidence close on narrow screens. */
body.beauty-product .hp-product-picture{flex:0 1 220px;max-width:220px;align-self:center;height:auto;}
body.beauty-product .hp-product-picture img{display:block;width:100%;height:auto;max-height:220px;object-fit:contain;}
body.beauty-product .hp-photo-credit{color:#fff3e8;font-size:12px;line-height:1.5;display:inline-flex;align-items:center;min-height:44px;text-underline-offset:3px;}
body.beauty-product .hp-photo-caption{color:#f3e4e9;font-size:11px;line-height:1.5;margin:0;}
@media(max-width:650px){body.beauty-product .hp-product-picture{max-width:none;display:grid;grid-template-columns:120px minmax(0,1fr);column-gap:14px;align-items:center;margin-top:12px;}body.beauty-product .hp-product-picture img{grid-row:1/3;max-height:120px;}body.beauty-product .hp-photo-caption{grid-column:2;}}
