/* Celebrity color-season pages — self-contained (no dependence on the
   analyzer stylesheet; these render inside arbitrary theme templates). */
.sca-cp{
  --cp-ink:#2b2724;
  --cp-ink2:#5c554f;
  --cp-ink3:#7a726b;
  --cp-paper:#faf7f2;
  --cp-paper2:#f3ede4;
  --cp-line:rgba(0,0,0,.09);
  --cp-rose:#8B2246;
  --cp-accent:#8B2246;
  --cp-card-bg:#fff;
  --cp-card-border:rgba(0,0,0,.08);
  --cp-card-shadow:0 4px 24px rgba(42,31,26,.06);
  --cp-mono:ui-monospace,Menlo,Consolas,monospace;
  max-width:920px;
  margin:2rem auto 3rem;
  padding:2rem 2.25rem 2.5rem;
  color:var(--cp-ink);
  line-height:1.6;
  background:var(--cp-card-bg);
  border:1px solid var(--cp-card-border);
  border-radius:20px;
  box-shadow:var(--cp-card-shadow);
}
.sca-cp h1{font-size:clamp(1.85rem,4.5vw,2.55rem);line-height:1.1;margin:0 0 .65rem;letter-spacing:-.02em;font-weight:700}
.sca-cp h2{font-size:1.35rem;margin:0 0 .85rem;letter-spacing:-.01em}
.sca-cp h3{font-size:1.05rem;margin:0 0 .5rem}
.sca-cp a {
    color: #8B2246;
}

.sca-cp-breadcrumb{font-size:.82rem;color:var(--cp-ink2);margin-bottom:1.5rem}
.sca-cp-breadcrumb a{color:var(--cp-ink2);text-decoration:none}
.sca-cp-breadcrumb a:hover{color:var(--cp-accent)}
.sca-cp-breadcrumb--short{display:none}

/* Hero */
.sca-cp-hero{
  display:flex;
  gap:1.75rem;
  align-items:flex-start;
  margin-bottom:2.25rem;
  padding:1.5rem;
  border-radius:9px;
    background: #fbe9ee;
    border: 1px solid #efccd6;
}
.sca-cp-hero--hub{display:block;padding:1.75rem 1.5rem}
.sca-cp-hero-media{flex:0 0 auto}
.sca-cp-photo{
  width:200px;
  height:auto;
  border-radius:16px;
  object-fit:cover;
  display:block;
  box-shadow:0 8px 28px rgba(0,0,0,.14);
  border:3px solid #fff;
}
.sca-cp-photo--initials{
  display:flex;
  align-items:center;
  justify-content:center;
  width:200px;
  height:260px;
  border-radius:16px;
  background:var(--cp-paper);
  border:1px solid var(--cp-line);
  font-size:2.6rem;
  font-weight:600;
  color:var(--cp-ink2);
}
.sca-cp-season-badge{
  display:inline-block;
  margin:0 0 .55rem;
  padding:.35rem .85rem;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
  text-decoration:none;
  color:var(--cp-ink);
  background:#fff;
  border:1px solid #efccd6;
  border-radius:999px;
}
.sca-cp-season-badge--static{cursor:default;pointer-events:none}
.sca-cp-season-badge:not(.sca-cp-season-badge--static):hover{
  background:color-mix(in srgb,var(--cp-accent) 22%,#fff);
  color:var(--cp-ink);
}
.sca-cp-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 .85rem}
.sca-cp-chip{
  display:inline-block;
  padding:.28rem .7rem;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--cp-ink2);
  background:#fff;
  border:1px solid var(--cp-line);
  border-radius:999px;
}
.sca-cp-intro{font-size:1.05rem;margin:0;line-height:1.65}
.sca-cp-intro--seo{margin-top:.75rem;color:var(--cp-ink2);font-size:.95rem}

/* Sections */
.sca-cp-section{margin:2.5rem 0;padding-top:2rem;border-top:1px solid var(--cp-line)}
.sca-cp-section h2::after {
    content: '';
    display: block;
    width: 2.5rem;
    height: 3px;
    margin-top: .45rem;
    border-radius: 2px;
    background: #8B2246;
}

/* Why cards */
.sca-cp-why-cards{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:.85rem;
}
.sca-cp-why-card {
    margin: 0;
    padding: 1rem 1.1rem;
    border-radius: 9px;
    background: #ffffff;
    border: 1px solid #efccd6;
}
.sca-cp-why-label{
  display:block;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--cp-ink2);
  margin-bottom:.35rem;
}
.sca-cp-why-card p{margin:0;font-size:.92rem;color:var(--cp-ink)}

/* Palette duo */
.sca-cp-palette-lead{margin:0 0 .5rem;font-size:1rem;color:var(--cp-ink)}
.sca-cp-palette-personal{margin:0 0 1.25rem;font-size:.9rem;color:var(--cp-ink2);font-style:italic}
.sca-cp-palette-duo{
  display:grid;
  grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);
  gap:1.75rem 2rem;
  align-items:start;
}
.sca-cp-palette-heading{
  margin:0 0 .85rem;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.sca-cp-palette-heading--wear{color:#4a4528}
.sca-cp-palette-heading--avoid{color:#8b3a2a}

/* Palette swatch cards (matches core analyzer design) */
.sca-cp .sca-palette-card-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:.75rem;
}
.sca-cp .swatch-item.sca-palette-swatch-card{
  display:block;
  width:100%;
  cursor:pointer;
  text-align:left;
  transition:transform .22s cubic-bezier(.16,1,.3,1);
}
.sca-cp .swatch-item.sca-palette-swatch-card:hover{transform:translateY(-3px)}
.sca-cp .swatch-item.sca-palette-swatch-card:focus-visible{
  outline:2px solid var(--cp-accent);
  outline-offset:3px;
  border-radius:14px;
}
.sca-cp .sca-palette-swatch-card-inner{
  display:flex;
  align-items:center;
  gap:1rem 1.1rem;
  min-height:5rem;
  padding:.85rem 1rem;
  background:#fff;
  border:1px solid var(--cp-line);
  border-radius:14px;
  box-shadow:0 2px 10px rgba(42,31,26,.05);
  transition:border-color .2s ease,box-shadow .22s ease;
}
.sca-cp .swatch-item.sca-palette-swatch-card:hover .sca-palette-swatch-card-inner{
  border-color:color-mix(in srgb,var(--cp-accent) 22%,var(--cp-line));
  box-shadow:0 10px 28px rgba(42,31,26,.1);
}
.sca-cp .sca-palette-swatch-card--avoid .sca-palette-swatch-card-inner{
  background:#fbe9ee;
  border-color:#efccd6;
}
.sca-cp .sca-palette-swatch-dot{
  flex-shrink:0;
  width:72px;
  height:72px;
  margin:0;
  border-radius:50%;
  border:1px solid rgba(0,0,0,.1);
  box-shadow:0 4px 14px rgba(42,31,26,.18),inset 0 0 0 1px rgba(255,255,255,.18);
  transition:transform .22s cubic-bezier(.16,1,.3,1),box-shadow .22s ease;
}
.sca-cp .swatch-item.sca-palette-swatch-card:hover .sca-palette-swatch-dot{
  transform:translateY(-2px) scale(1.04);
  box-shadow:inset 0 1px 2px rgba(0,0,0,.1),0 6px 16px rgba(42,31,26,.18);
}
.sca-cp .sca-palette-swatch-text{
  flex:1;
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:.2rem;
}
.sca-cp .swatch-palette-card-name{
  display:block;
  font-size:.9rem;
  font-weight:700;
  color:var(--cp-ink);
  line-height:1.25;
}
.sca-cp .swatch-palette-card-sub{
  display:block;
  font-size:.75rem;
  line-height:1.45;
  color:var(--cp-ink2);
}
.sca-cp .swatch-palette-hex-pill{
  flex-shrink:0;
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  gap:.12rem;
  padding:.4rem .5rem;
  font-size:.66rem;
  font-weight:600;
  letter-spacing:.05em;
  color:var(--cp-ink2);
  background:var(--cp-paper2);
  border:1px solid #ddd4c4;
  border-radius:8px;
  font-family:var(--cp-mono);
  transition:background .2s ease,border-color .2s ease,color .2s ease;
}
.sca-cp .sca-swatch-copy-hint{
  display:block;
  font-size:.5rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--cp-ink3);
  font-family:system-ui,sans-serif;
  opacity:0;
  max-height:0;
  overflow:hidden;
  transition:opacity .2s ease,max-height .2s ease;
}
.sca-cp .swatch-item.sca-palette-swatch-card:hover .swatch-palette-hex-pill{
  background:color-mix(in srgb,var(--cp-accent) 12%,var(--cp-paper2));
  border-color:color-mix(in srgb,var(--cp-accent) 28%,#ddd4c4);
}
.sca-cp .swatch-item.sca-palette-swatch-card:hover .sca-swatch-copy-hint{
  opacity:1;
  max-height:1rem;
}
.sca-cp .swatch-item.sca-palette-swatch-card.is-copied .swatch-palette-hex-pill{
  background:color-mix(in srgb,var(--cp-accent) 18%,#fff);
  border-color:var(--cp-accent);
  color:var(--cp-ink);
}
.sca-cp .swatch-palette-card-x{
  flex-shrink:0;
  width:2rem;
  height:2rem;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.15rem;
  line-height:1;
  font-weight:300;
  color:#a94442;
  border:1px solid #e8d0ce;
  border-radius:8px;
  background:#faf5f4;
}

/* Celebrity grid */
.sca-cp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.85rem}
.sca-cp-grid--related{margin-bottom:1rem}
.sca-cp-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.35rem;
  padding:.9rem .5rem;
  background:var(--cp-paper);
  border:1px solid var(--cp-line);
  border-radius:12px;
  text-decoration:none;
  color:var(--cp-ink);
  text-align:center;
  transition:box-shadow .15s ease,transform .15s ease;
}
.sca-cp-card:hover{
  box-shadow:0 6px 18px rgba(0,0,0,.1);
  transform:translateY(-2px);
  color:var(--cp-ink);
}
.sca-cp-card-photo{width:72px;height:72px;border-radius:50%;object-fit:cover}
.sca-cp-card .sca-cp-photo--initials{width:72px;height:72px;border-radius:50%;font-size:1.4rem;border:none;box-shadow:none}
.sca-cp-card-name{font-size:.88rem;font-weight:600;line-height:1.25}
.sca-cp-card-prof{font-size:.72rem;color:var(--cp-ink2)}
.sca-cp-card-blurb{font-size:.68rem;color:var(--cp-ink3);line-height:1.35;margin-top:.15rem}

.sca-cp-lookalike-lead,.sca-cp-compare p{font-size:.95rem;color:var(--cp-ink2)}
.sca-cp-compare-links{font-size:.85rem;margin-top:.75rem}
.sca-cp-compare-links a{color:var(--cp-accent);text-decoration:none;font-weight:600}
.sca-cp-compare-links a:hover{text-decoration:underline}
.sca-cp-styling-list{margin:.25rem 0 0;padding-left:1.25rem;color:var(--cp-ink2)}
.sca-cp-styling-list li{margin-bottom:.45rem}
.sca-cp-styling-list li:last-child{margin-bottom:0}

.sca-cp-related{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.4rem .9rem}
.sca-cp-related li{padding:.3rem 0}
.sca-cp-related a{text-decoration:none;font-weight:600}
.sca-cp-related a:hover{text-decoration:underline}
.sca-cp-related-prof{font-size:.75rem;color:var(--cp-ink2);margin-left:.3rem}
.sca-cp-hublink-wrap{margin:1rem 0 0;text-align:center}
.sca-cp-hublink{font-weight:600;text-decoration:none}

/* CTA */
.sca-cp-cta {
    margin: 2.5rem 0;
    padding: 1.75rem 1.75rem;
    background: #fbe9ee;
    border: 1px solid #efccd6;
    border-radius: 9px;
}
.sca-cp-cta--slim{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:.75rem 1.25rem;
  margin:0 0 2rem;
  padding:1rem 1.25rem;
}
.sca-cp-cta-slim-lead{
  margin:0;
  flex:1;
  min-width:min(100%,200px);
  font-size:.95rem;
  font-weight:600;
  color:var(--cp-ink);
  line-height:1.4;
}
.sca-cp-cta--slim .sca-cp-cta-btn{
  padding:.65rem 1.35rem;
  font-size:.9rem;
}
.sca-cp-cta--full{margin:2.5rem 0}
.sca-cp-cta-inner{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:1.25rem 1.5rem;
}
.sca-cp-cta-copy{flex:1;min-width:200px}
.sca-cp-cta-badge{
  display:inline-block;
  margin-bottom:.45rem;
  padding:.22rem .65rem;
  font-size:.65rem;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--cp-ink2);
  background:rgba(255,255,255,.7);
  border:1px solid var(--cp-line);
  border-radius:999px;
}
.sca-cp-cta h2{margin:0 0 .35rem;font-size:1.25rem}
.sca-cp-cta p{margin:0;color:var(--cp-ink2);font-size:.95rem}
.sca-cp-cta-btn{
  display:inline-block;
  flex-shrink:0;
  padding:.8rem 1.75rem;
  background:#8B2246;
  color:#fff !important;
  border-radius:999px;
  font-weight:600;
  text-decoration:none;
  box-shadow:0 4px 14px color-mix(in srgb,var(--cp-accent) 40%,transparent);
  white-space:nowrap;
}
.sca-cp-cta-btn:hover{filter:brightness(1.07);color:#fff !important}

.sca-cp-seasons{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.9rem;margin:1.5rem 0}
.sca-cp-season-card{
  display:flex;
  flex-direction:column;
  gap:.45rem;
  padding:1rem;
  background:var(--cp-paper);
  border:1px solid var(--cp-line);
  border-radius:14px;
  text-decoration:none;
  color:var(--cp-ink);
  transition:box-shadow .15s ease,transform .15s ease;
}
.sca-cp-season-card:hover{box-shadow:0 6px 18px rgba(0,0,0,.1);transform:translateY(-2px);color:var(--cp-ink)}
.sca-cp-season-swatches{display:flex;gap:.3rem}
.sca-cp-season-swatches span{width:22px;height:22px;border-radius:50%;border:1px solid rgba(0,0,0,.1)}
.sca-cp-season-name{font-weight:700;font-size:1.02rem}
.sca-cp-season-count{font-size:.78rem;color:var(--cp-ink2)}

.sca-cp-attr{
  font-size:.72rem;
  color:var(--cp-ink2);
  margin-top:2rem;
  padding-top:1.25rem;
  border-top:1px solid var(--cp-line);
  text-align:center;
}
.sca-cp-faq dt{font-weight:700;margin:1rem 0 .25rem}
.sca-cp-faq dd{margin:0 0 .5rem;color:var(--cp-ink2)}
.sca-cp-methodology{font-size:.82rem;color:var(--cp-ink2);margin-top:1.5rem;padding:1rem;background:var(--cp-paper);border:1px solid var(--cp-line);border-radius:10px}

.sca-cp-pillar-links{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin:.75rem 0 1.25rem;font-size:.85rem}
.sca-cp-pillar-links a{color:var(--cp-accent);font-weight:600;text-decoration:none}
.sca-cp-pillar-links a:hover{text-decoration:underline}

.sca-cp-site-nav{
  margin-top:2.5rem;
  padding-top:1.75rem;
  border-top:1px solid var(--cp-line);
}
.sca-cp-site-nav-context{margin:0 0 1.25rem;font-size:.88rem;font-weight:600}
.sca-cp-site-nav-context a{color:var(--cp-accent);text-decoration:none}
.sca-cp-site-nav-context a:hover{text-decoration:underline}
.sca-cp-site-nav-heading{font-size:1rem;margin:0 0 .65rem}
.sca-cp-site-nav-current{font-weight:700;color:var(--cp-ink)}
.sca-cp-site-nav-season-list{margin-top:0}
/* Astra back-to-top — match season accent on celebrity pages */
body.sca-celeb-page #ast-scroll-top{
  background-color:var(--cp-accent,#a4485a) !important;
  color:#fff !important;
  border:1px solid color-mix(in srgb,var(--cp-accent,#a4485a) 80%,#000) !important;
  box-shadow:0 4px 14px color-mix(in srgb,var(--cp-accent,#a4485a) 35%,transparent) !important;
}
body.sca-celeb-page #ast-scroll-top:hover,
body.sca-celeb-page #ast-scroll-top:focus{
  background-color:color-mix(in srgb,var(--cp-accent,#a4485a) 88%,#000) !important;
  color:#fff !important;
}

@media (max-width:760px){
  .sca-cp-palette-duo{grid-template-columns:1fr}
  .sca-cp-cta-inner{flex-direction:column;align-items:stretch;text-align:center}
  .sca-cp-cta-btn{text-align:center}
}

@media (max-width:600px){
  .sca-cp{margin:1rem auto 2rem;padding:1.25rem 1rem 2rem;border-radius:14px}
  .sca-cp-breadcrumb--full{display:none}
  .sca-cp-breadcrumb--short{display:block;margin-bottom:1rem}
  .sca-cp-hero{flex-direction:column;align-items:center;text-align:center;padding:1.25rem 1rem}
  .sca-cp-hero-media{width:100%;display:flex;justify-content:center}
  .sca-cp-photo,.sca-cp-photo--initials{width:150px}
  .sca-cp-photo--initials{height:195px}
  .sca-cp-chips{justify-content:center}
  .sca-cp-section h2::after{margin-left:auto;margin-right:auto}
  .sca-cp-cta--slim{flex-direction:column;align-items:stretch;text-align:center}
  .sca-cp-cta--slim .sca-cp-cta-btn{width:100%;text-align:center}
  .sca-cp .sca-palette-swatch-dot{width:56px;height:56px}
  .sca-cp .sca-palette-swatch-card-inner{gap:.75rem;padding:.75rem}
  .sca-cp .swatch-palette-card-sub{font-size:.7rem}
}

/* --- SEO additions: editorial intro + hub jump navigation --- */
.sca-cp-intro--editorial{margin-top:.75rem;color:var(--cp-ink2);font-size:.95rem;line-height:1.65}
.sca-cp-jumpnav{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.25rem}
.sca-cp-jumpnav a{display:inline-block;padding:.35rem .8rem;border:1px solid var(--cp-line,rgba(0,0,0,.12));border-radius:999px;font-size:.82rem;text-decoration:none;color:var(--cp-ink2);background:var(--cp-card,transparent)}
.sca-cp-jumpnav a:hover{border-color:var(--cp-accent);color:var(--cp-accent)}
@media (max-width:640px){
  .sca-cp-jumpnav{gap:.4rem}
  .sca-cp-jumpnav a{font-size:.78rem;padding:.3rem .65rem}
}

/* Email capture + sticky analyzer CTA */
.sca-cp-cta-actions{display:flex;flex-direction:column;gap:1rem;align-items:flex-start}
.sca-cp-email-capture{margin-top:.5rem;padding-top:1rem;border-top:1px solid var(--cp-line,rgba(0,0,0,.1));width:100%}
.sca-cp-email-lead{margin:0 0 .5rem;font-size:.85rem;color:var(--cp-ink2)}
.sca-cp-email-row{display:flex;gap:.5rem;flex-wrap:wrap}
.sca-cp-email-row input[type=email]{flex:1;min-width:180px;padding:.55rem .75rem;border:1px solid var(--cp-line,rgba(0,0,0,.15));border-radius:8px}
.sca-cp-email-row button{padding:.55rem 1rem;border:0;border-radius:8px;background:var(--cp-accent,#a4485a);color:#fff;font-weight:600;cursor:pointer}
.sca-cp-email-status{margin:.5rem 0 0;font-size:.82rem;color:var(--cp-ink2)}
.sca-cp-email-invalid{border-color:#c0392b!important}
.sca-cp-sticky{position:fixed;bottom:0;left:0;right:0;z-index:9999;padding:.65rem 1rem;background:rgba(255,255,255,.96);border-top:1px solid rgba(0,0,0,.08);box-shadow:0 -4px 24px rgba(0,0,0,.08);display:flex;justify-content:center}
.sca-cp-sticky-btn{display:inline-block;padding:.7rem 1.25rem;border-radius:999px;background:var(--cp-accent,#a4485a);color:#fff!important;font-weight:700;text-decoration:none!important;font-size:.92rem}
body.sca-celeb-page{padding-bottom:4.5rem}
