/* Reputation and social: shared editorial family, native platform mockups intact. */
.public-shell .cp-sr-page {
  --sr-ink:#1b1f1d; --sr-green:#1f7a4f; --sr-deep:#0f3f2e;
  --sr-paper:#f6f5f1; --sr-white:#fff; --sr-copy:#4b5b50; --sr-line:#dce6dc;
  color:var(--sr-ink); background:var(--sr-white);
}
.public-shell .cp-sr-page .cp-hero { padding:clamp(124px,12vw,180px) 0 clamp(80px,8vw,116px); background:var(--sr-paper); }
.public-shell .cp-sr-page .cp-hero::after { display:none; }
.public-shell .cp-sr-page .cp-hero-grid { grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:clamp(40px,5vw,84px); }
.public-shell .cp-sr-page .cp-display,.public-shell .cp-sr-page .cp-title {
  font-family:Fraunces,Georgia,serif; font-weight:400; letter-spacing:-.02em;
}
.public-shell .cp-sr-page .cp-display { margin:19px 0 0; font-size:clamp(46px,5vw,76px); line-height:1.04; text-wrap:balance; }
.public-shell .cp-sr-page .cp-title { margin-top:17px; font-size:clamp(38px,4.2vw,62px); line-height:1.08; text-wrap:balance; }
.public-shell .cp-sr-page .cp-eyebrow { color:var(--sr-green); background:transparent; border:0; padding:0; font:700 14px/1.35 Inter,sans-serif; letter-spacing:.015em; text-transform:none; }
.public-shell .cp-sr-page .cp-eyebrow::before { display:none; }
.public-shell .cp-sr-page .cp-hero .cp-lede { max-width:49ch; margin-top:25px; color:var(--sr-copy); font-size:18px; line-height:1.65; }
.public-shell .cp-sr-page .cp-hero-note { margin-top:20px; color:#647368; font-size:14px; line-height:1.55; }
.public-shell .cp-sr-page .cp-hero-note a { color:var(--sr-deep); font-weight:700; text-underline-offset:4px; }
.public-shell .cp-sr-page .cp-actions { flex-wrap:wrap; margin-top:30px; gap:12px; }
.public-shell .cp-sr-page .cp-button { min-height:54px; border-radius:10px; font-size:15px; }
.public-shell .cp-sr-page .cp-button--primary { background:var(--sr-deep); border-color:var(--sr-deep); color:#fff; }
.public-shell .cp-sr-page .cp-button--primary:hover { background:var(--sr-green); border-color:var(--sr-green); }
.public-shell .cp-sr-page :is(.cp-button,a,summary):focus-visible { outline:3px solid var(--sr-green); outline-offset:4px; }
.public-shell .cp-sr-page .cp-demo { border:1px solid var(--sr-line); border-radius:20px; background:#fff; box-shadow:0 28px 80px rgba(15,63,46,.12); }
.public-shell .cp-sr-page .cp-demo-bar { min-height:62px; padding:13px 21px; background:#fff; border-color:var(--sr-line); }
.public-shell .cp-sr-page .cp-demo-title { color:var(--sr-ink); font-size:14px; }
.public-shell .cp-sr-page .cp-demo-body { padding:clamp(18px,2.5vw,30px); }
.public-shell .cp-sr-page .cp-demo-body > .mockup { display:block; width:100%; max-width:none; margin:0 auto; }
.public-shell .cp-sr-page .cp-safety-note { color:var(--sr-copy); font-size:14px; line-height:1.55; }
.public-shell .cp-sr-page > .cp-container > .cp-availability-note { margin:0; padding:22px 0; border-bottom:1px solid var(--sr-line); color:var(--sr-copy); font-size:14px; line-height:1.6; }
.public-shell .cp-sr-page .cp-availability-note__badge { border-color:#c7dfce; border-radius:7px; background:#eef6ee; color:var(--sr-green); font-size:12px; letter-spacing:0; text-transform:none; }
.public-shell .cp-sr-page .cp-section { padding:clamp(78px,8vw,122px) 0; }
.public-shell .cp-sr-page .cp-section--cream { background:var(--sr-paper); }
.public-shell .cp-sr-page .cp-section--mint { background:#eaf3e9; }
.public-shell .cp-sr-page .cp-section--ink { background:var(--sr-deep); color:#fff; }
.public-shell .cp-sr-page .cp-section--ink .cp-title { color:#fff; }
.public-shell .cp-sr-page .cp-section--ink .cp-eyebrow { color:#add8b7; }
.public-shell .cp-sr-page .cp-sr-intro,.public-shell .cp-sr-page .cp-sr-process,.public-shell .cp-sr-page .cp-sr-close {
  display:grid; grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr); gap:clamp(44px,7vw,124px); align-items:start;
}
.public-shell .cp-sr-page .cp-sr-intro > div:first-child > p,.public-shell .cp-sr-page .cp-sr-process > div:first-child > p {
  max-width:50ch; margin:21px 0 0; color:var(--sr-copy); font-size:17px; line-height:1.7;
}
.public-shell .cp-sr-page .cp-sr-process > div:first-child > p { color:#d8e9dc; }
.public-shell .cp-sr-page .cp-sr-feature-ledger { border-top:1px solid var(--sr-line); }
.public-shell .cp-sr-page .cp-sr-feature-ledger > div { display:flex; gap:24px; padding:23px 0; border-bottom:1px solid var(--sr-line); }
.public-shell .cp-sr-page .cp-sr-feature-ledger > div > span { flex:none; color:var(--sr-green); font-size:14px; font-weight:700; }
.public-shell .cp-sr-page .cp-sr-feature-ledger h3 { margin:0; color:var(--sr-ink); font:400 24px/1.2 Fraunces,Georgia,serif; }
.public-shell .cp-sr-page .cp-sr-feature-ledger p { margin:8px 0 0; color:var(--sr-copy); font-size:15px; line-height:1.65; }
.public-shell .cp-sr-page .cp-sr-section-head { display:grid; grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr); gap:0 clamp(44px,7vw,124px); align-items:start; margin-bottom:37px; }
.public-shell .cp-sr-page .cp-sr-section-head .cp-eyebrow { grid-column:1; }
.public-shell .cp-sr-page .cp-sr-section-head .cp-title { grid-column:1; }
.public-shell .cp-sr-page .cp-sr-section-head .cp-lede { grid-column:2; grid-row:1 / 3; margin:0; color:var(--sr-copy); font-size:17px; line-height:1.7; }
.public-shell .cp-sr-page .cp-sr-showcase .cp-demo { box-shadow:none; }
.public-shell .cp-sr-page .cp-review-deck { max-width:none; }
.public-shell .cp-sr-page .cp-social-grid { gap:20px; margin-top:0; }
.public-shell .cp-sr-page .cp-social-example { min-width:0; }
.public-shell .cp-sr-page .cp-social-grid .mockup { font-size:15px; }
.public-shell .cp-sr-page :is(.google-review__text,.yelp-review__text,.google-review__response-text,.yelp-review__response-text,.instagram-post__caption,.facebook-post__content,.twitter-post__content) { font-size:15px; line-height:1.6; }
.public-shell .cp-sr-page .instagram-post__creative-list { font-size:15px; }
.public-shell .cp-sr-page .cp-social-label,.public-shell .cp-sr-page .cp-social-approval { font-size:14px; }
.public-shell .cp-sr-page .cp-loop {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:none;
  grid-auto-flow:row; grid-auto-columns:auto; gap:0 28px; margin:0; padding:0;
  overflow:visible; scroll-snap-type:none; border-top:1px solid #ffffff54;
}
.public-shell .cp-sr-page .cp-loop-step { min-width:0; padding:22px 0; border:0; border-bottom:1px solid #ffffff54; border-radius:0; background:transparent; scroll-snap-align:none; }
.public-shell .cp-sr-page .cp-loop-step::before { margin-bottom:12px; color:#add8b7; font-size:14px; letter-spacing:0; }
.public-shell .cp-sr-page .cp-loop-step strong { color:#fff; font:400 24px/1.2 Fraunces,Georgia,serif; }
.public-shell .cp-sr-page .cp-loop-step span { display:block; margin-top:7px; color:#d4e7d8; font-size:15px; line-height:1.58; }
.public-shell .cp-sr-page .cp-sr-close .cp-lede { margin:0; color:var(--sr-copy); font-size:17px; line-height:1.7; }
.public-shell .cp-sr-page .cp-sr-close .cp-actions { margin-top:25px; }
@media (max-width:1000px) {
  .public-shell .cp-sr-page .cp-hero-grid,.public-shell .cp-sr-page .cp-sr-intro,
  .public-shell .cp-sr-page .cp-sr-process,.public-shell .cp-sr-page .cp-sr-close,
  .public-shell .cp-sr-page .cp-sr-section-head { grid-template-columns:1fr; gap:36px; }
  .public-shell .cp-sr-page .cp-sr-section-head .cp-eyebrow,
  .public-shell .cp-sr-page .cp-sr-section-head .cp-title,
  .public-shell .cp-sr-page .cp-sr-section-head .cp-lede { grid-column:1; grid-row:auto; }
  .public-shell .cp-sr-page .cp-hero .cp-demo { width:min(100%,690px); }
  .public-shell .cp-sr-page .cp-social-grid {
    grid-template-columns:none; grid-template-rows:1fr; grid-auto-flow:column; grid-auto-columns:min(68vw,440px);
    overflow-x:auto; scroll-snap-type:x mandatory; padding:5px 3px 20px;
  }
}
@media (max-width:600px) {
  .public-shell .cp-sr-page .cp-hero { padding:102px 0 74px; }
  .public-shell .cp-sr-page .cp-display { font-size:clamp(42px,10.5vw,58px); }
  .public-shell .cp-sr-page .cp-hero .cp-lede { font-size:16px; }
  .public-shell .cp-sr-page .cp-actions { display:grid; }
  .public-shell .cp-sr-page .cp-section { padding:72px 0; }
  .public-shell .cp-sr-page .cp-demo-body { padding:16px; }
  .public-shell .cp-sr-page .cp-loop { grid-template-columns:1fr; grid-auto-flow:row; grid-auto-columns:auto; overflow:visible; }
  .public-shell .cp-sr-page .cp-social-grid { grid-auto-columns:88%; }
}
