/* CoverCapy "Reading Room" FAQ — self-contained, portable across pages.
   Ported from the compare-ppo hub with brand colors hardcoded (no page-var deps). */
.cc-faq{--f-green:#14525B;--f-green-d:#0C3A42;--f-gold:#B8893B;--f-gold-d:#8A6516;
  --f-ink:#082A30;--f-line:#E8E2D8;--f-line2:#DCCFB2;--f-card:#FFFDF8;--f-sage:#EAF4EF;
  --f-muted:#56655F;--f-serif:'Fraunces',Georgia,serif;--f-sans:'Inter Tight',system-ui,sans-serif;
  padding:48px 0}
.cc-faq .cc-faq-wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.cc-faq-grid{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:50px;align-items:start;max-width:1140px;margin:0 auto}
.cc-faq-rail{position:sticky;top:84px}
.cc-faq-rail .cc-faq-eye{font-family:var(--f-sans);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--f-green)}
.cc-faq-rail .cc-faq-eye .sp{color:var(--f-gold)}
.cc-faq-rail h2{font-family:var(--f-serif);font-weight:500;font-size:clamp(26px,3vw,34px);line-height:1.1;color:var(--f-ink);margin:10px 0 0}
.cc-faq-rail h2 em{font-style:italic;color:var(--f-green)}
.cc-faq-rail .lede{font-family:var(--f-sans);font-size:14px;color:var(--f-muted);line-height:1.6;margin:12px 0 0}
.cc-faq-cats{margin-top:24px;border-top:1px solid var(--f-line)}
.cc-faq-cat{width:100%;display:grid;grid-template-columns:26px 1fr auto;gap:10px;align-items:baseline;text-align:left;padding:13px 4px 13px 2px;border:0;border-bottom:1px solid var(--f-line);background:none;cursor:pointer;position:relative;transition:padding .3s ease}
.cc-faq-cat::before{content:'';position:absolute;left:0;top:50%;transform:translateY(-50%) scaleY(0);width:2px;height:60%;background:var(--f-gold);border-radius:2px;transition:transform .3s ease}
.cc-faq-cat:hover{padding-left:8px}.cc-faq-cat.active{padding-left:12px}
.cc-faq-cat.active::before{transform:translateY(-50%) scaleY(1)}
.cc-faq-cat-num{font-family:var(--f-serif);font-style:italic;font-size:12px;color:var(--f-gold-d)}
.cc-faq-cat-name{font-family:var(--f-serif);font-size:16px;letter-spacing:-.01em;color:var(--f-ink);opacity:.78;transition:opacity .2s,color .2s}
.cc-faq-cat:hover .cc-faq-cat-name,.cc-faq-cat.active .cc-faq-cat-name{opacity:1;color:var(--f-green)}
.cc-faq-cat.active .cc-faq-cat-name{font-style:italic}
.cc-faq-cat-count{font-family:var(--f-sans);font-size:10px;letter-spacing:.12em;color:var(--f-muted)}
.cc-faq-openall{margin-top:18px;display:inline-flex;align-items:center;gap:8px;background:none;border:0;border-bottom:1px solid rgba(184,137,59,.4);font-family:var(--f-sans);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--f-gold-d);padding:9px 0;cursor:pointer}
.cc-faq-openall:hover{color:var(--f-green);border-bottom-color:var(--f-gold)}
.cc-faq-openall .glyph{color:var(--f-gold)}
.cc-faq-note{margin-top:26px;padding:16px 18px;background:var(--f-sage);border:1px solid var(--f-line);border-left:3px solid var(--f-gold);border-radius:13px}
.cc-faq-note .h{font-family:var(--f-sans);font-size:9.5px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--f-gold-d);margin-bottom:6px}
.cc-faq-note p{font-family:var(--f-serif);font-style:italic;font-size:13.5px;line-height:1.6;color:var(--f-ink);opacity:.86;margin:0}
.cc-faq-note p em{color:var(--f-green);opacity:1}
.cc-faq-entries{display:flex;flex-direction:column;gap:14px}
.cc-fq{position:relative;background:var(--f-card);border:1px solid var(--f-line);border-radius:18px;box-shadow:0 2px 10px rgba(40,52,40,.04);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.cc-fq:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(40,52,40,.08);border-color:var(--f-line2)}
.cc-fq.open{border-color:rgba(184,137,59,.4);box-shadow:0 10px 28px rgba(40,52,40,.08)}
.cc-fq.hide{display:none}
.cc-fq-q{width:100%;display:grid;grid-template-columns:42px 1fr 36px;gap:14px;align-items:start;text-align:left;padding:22px;cursor:pointer;background:none;border:0}
.cc-fq-num{font-family:var(--f-serif);font-style:italic;font-size:15px;color:var(--f-gold-d);padding-top:3px}
.cc-fq-title{font-family:var(--f-serif);font-size:19px;line-height:1.3;letter-spacing:-.01em;color:var(--f-ink)}
.cc-fq.open .cc-fq-title{font-style:italic;color:var(--f-green)}
.cc-fq-ind{width:32px;height:32px;border-radius:50%;border:1px solid rgba(184,137,59,.4);background:var(--f-card);display:grid;place-items:center;color:var(--f-gold-d);font-size:16px;line-height:1;justify-self:end;transition:transform .4s ease,background .3s,color .3s,border-color .3s}
.cc-fq.open .cc-fq-ind{transform:rotate(45deg);background:var(--f-green);border-color:var(--f-green-d);color:#fff}
.cc-fq-a{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .5s cubic-bezier(.4,0,.2,1),opacity .4s ease}
.cc-fq.open .cc-fq-a{grid-template-rows:1fr;opacity:1}
.cc-fq-a-inner{overflow:hidden}
.cc-fq-a-pad{padding:0 22px 24px 78px;font-family:var(--f-sans);font-size:14.5px;line-height:1.68;color:var(--f-ink);opacity:.86}
.cc-fq-a-pad p{margin:0}
.cc-fq-act{margin-top:14px;display:inline-flex;align-items:center;gap:7px;background:none;border:0;border-bottom:1px solid var(--f-green);color:var(--f-green-d);font-family:var(--f-sans);font-size:13px;font-weight:600;cursor:pointer;padding:2px 0;text-decoration:none}
.cc-fq-act:hover{color:var(--f-green)}
@media(max-width:920px){.cc-faq-grid{grid-template-columns:1fr;gap:30px}.cc-faq-rail{position:static}.cc-fq-a-pad{padding-left:22px}}
