/* ---- New components for probate-rules-by-state / probate-basics pages ---- */
.pr-wrap{max-width:var(--container-max,1280px); margin:0 auto; padding:0 var(--gutter,60px);}
@media (max-width:760px){ .pr-wrap{padding:0 var(--gutter-sm,24px);} }
.pr-hero{padding:calc(var(--s-11,80px) + 90px) 0 var(--s-9,48px); background:linear-gradient(180deg, rgba(250,250,247,0.55) 0%, rgba(250,250,247,0.50) 40%, rgba(250,250,247,0.88) 80%, rgba(250,250,247,1) 100%), url('/agent/visual/assets/optimized/img-03.jpg') center/cover no-repeat; position:relative;}
.pr-hero h1{font-family:var(--font-serif); font-size:var(--fs-display,56px); line-height:var(--lh-display,1.1); letter-spacing:var(--ls-tight,-0.02em); color:var(--fg,#092419); margin:var(--s-3,12px) 0 0;}
.pr-eyebrow{font-family:var(--font-meta); font-size:var(--fs-meta,13px); font-weight:600; letter-spacing:var(--ls-meta,.02em); text-transform:uppercase; color:var(--fg-3,rgba(9,36,25,.6));}
.pr-lede{font-family:var(--font-sans); font-size:var(--fs-body-lg,19px); line-height:var(--lh-body,1.4); color:var(--fg-2,rgba(9,36,25,.8)); max-width:66ch; margin-top:var(--s-5,20px);}
.pr-back{display:inline-flex; align-items:center; gap:6px; font-family:var(--font-sans); font-size:var(--fs-body-sm,15px); font-weight:600; color:var(--fg-3,rgba(9,36,25,.6)); margin-bottom:var(--s-4,16px);}
.pr-back:hover{color:var(--fg,#092419);}

.pr-stat-strip{display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:var(--s-6,24px); padding:var(--s-9,48px) 0;}
.pr-stat-tile{padding:var(--s-6,24px) 0; border-top:1px solid var(--line-strong,rgba(9,36,25,.2));}
.pr-stat-tile .num{font-family:var(--font-serif); font-size:34px; color:var(--earthy,var(--earthy, #465D38));}
.pr-stat-tile .desc{margin-top:var(--s-2,8px); font-family:var(--font-sans); font-size:var(--fs-body-sm,15px); color:var(--fg-3,rgba(9,36,25,.6));}

.pr-section{padding:var(--s-11,80px) 0; border-top:1px solid var(--line,rgba(9,36,25,.1));}
.pr-section-head{margin-bottom:var(--s-7,32px); max-width:64ch;}
.pr-section-head h2{font-family:var(--font-serif); font-size:var(--fs-h2,36px); color:var(--fg,#092419);}
.pr-section-head p{margin-top:var(--s-3,12px); font-family:var(--font-sans); font-size:var(--fs-body,17px); color:var(--fg-3,rgba(9,36,25,.6));}

.pr-fact{padding:var(--s-7,32px) 0; border-top:1px solid var(--line,rgba(9,36,25,.1));}
.pr-fact:first-child{border-top:none; padding-top:0;}
.pr-fact h3{font-family:var(--font-serif); font-size:var(--fs-h4,22px); color:var(--fg,#092419); margin-bottom:var(--s-3,12px);}
.pr-fact p{font-family:var(--font-sans); font-size:var(--fs-body,17px); line-height:var(--lh-body,1.4); color:var(--fg-2,rgba(9,36,25,.8)); max-width:70ch; margin:0 0 var(--s-3,12px);}
.pr-fact ul, .pr-fact ol{font-family:var(--font-sans); font-size:var(--fs-body,17px); color:var(--fg-2,rgba(9,36,25,.8)); max-width:70ch; padding-left:1.2em; margin:0 0 var(--s-3,12px); display:flex; flex-direction:column; gap:6px;}

.pr-card-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:var(--s-5,20px);}
.pr-card{background:var(--bg-elev,#fff); border:1px solid var(--line,rgba(9,36,25,.1)); border-radius:var(--r-lg,16px); padding:var(--s-6,24px); box-shadow:var(--shadow-1); display:flex; flex-direction:column; gap:6px;}
.pr-card p{font-family:var(--font-sans); font-size:var(--fs-body-sm,15px); color:var(--fg-2,rgba(9,36,25,.8)); margin:0;}

.pr-compare-scroll{overflow-x:auto; border:1px solid var(--line,rgba(9,36,25,.1)); border-radius:var(--r-lg,16px); background:var(--bg-elev,#fff); box-shadow:var(--shadow-1);}
.pr-compare-table{width:100%; border-collapse:collapse; min-width:560px;}
.pr-compare-table th, .pr-compare-table td{padding:var(--s-4,16px) var(--s-6,24px); border-top:1px solid var(--line,rgba(9,36,25,.1)); font-family:var(--font-sans); font-size:var(--fs-body-sm,15px); color:var(--fg,#092419); text-align:left; font-weight:400;}
.pr-compare-table tbody tr:first-child th, .pr-compare-table tbody tr:first-child td{border-top:none;}
.pr-compare-table tbody th{font-weight:600; color:var(--fg-2,rgba(9,36,25,.8)); background:var(--bg-elev,#fff);}
.pr-compare-table thead th{font-family:var(--font-meta); font-size:11px; text-transform:uppercase; letter-spacing:.06em; color:var(--fg-3,rgba(9,36,25,.6)); font-weight:600; background:var(--bg-elev,#fff); border-bottom:1px solid var(--line,rgba(9,36,25,.1)); border-top:none;}
.pr-quick-check{background:var(--bg-elev,#fff); border:1px solid var(--line,rgba(9,36,25,.1)); border-left:3px solid var(--earthy,var(--earthy, #465D38)); border-radius:var(--r-sm,8px); padding:var(--s-6,24px); margin-bottom:var(--s-7,32px);}
.pr-quick-check p{font-family:var(--font-sans); font-size:var(--fs-body,17px); color:var(--fg,#092419); margin:6px 0 0;}

.pr-directory{display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:var(--s-5,20px); list-style:none; margin:0; padding:0;}
.pr-directory li{display:contents;}
.pr-state-card{display:flex; flex-direction:column; gap:8px; background:var(--bg-elev,#fff); border:1px solid var(--line,rgba(9,36,25,.1)); border-radius:var(--r-lg,16px); padding:var(--s-6,24px); box-shadow:var(--shadow-1); text-decoration:none; color:var(--fg,#092419); transition:transform .15s ease, box-shadow .15s ease;}
.pr-state-card:hover{transform:translateY(-2px); box-shadow:var(--shadow-3, 0 18px 40px -16px rgba(9,36,25,0.18), 0 2px 6px rgba(9,36,25,0.04));}
.pr-state-card h3{font-family:var(--font-serif); font-size:var(--fs-h4,22px); margin:0;}
.pr-state-card .authority{font-family:var(--font-sans); font-size:var(--fs-body-sm,15px); color:var(--fg-3,rgba(9,36,25,.6));}
.pr-state-card .stat{margin-top:auto; padding-top:10px; border-top:1px solid var(--line,rgba(9,36,25,.1));}
.pr-state-card .stat .num{display:block; font-family:var(--font-serif); font-size:22px; color:var(--earthy,var(--earthy, #465D38));}
.pr-state-card .stat .desc{display:block; margin-top:2px; font-family:var(--font-sans); font-size:13px; color:var(--fg-3,rgba(9,36,25,.6));}
.pr-state-card .cta{font-family:var(--font-sans); font-size:var(--fs-body-sm,15px); font-weight:600; color:var(--fg,#092419);}

.pr-sources{display:flex; flex-wrap:wrap; gap:6px 24px; font-family:var(--font-sans); font-size:13px; color:var(--fg-3,rgba(9,36,25,.6));}
.pr-disclaimer{font-family:var(--font-sans); font-size:13px; color:var(--fg-mute,rgba(9,36,25,.5)); max-width:70ch; margin-top:var(--s-4,16px);}

/* ============================================================
   CLOSING CTA BAND  (same as the partner pages)
   ============================================================ */
.close-cta { background: var(--paper); border-top: 1px solid var(--ink-10); padding: clamp(48px, 6.5vw, 96px) 0; }
.close-cta-wrap { width: 100%; max-width: var(--max-w); margin: 0 auto; padding: 0 var(--gutter); }
.close-cta-inner { text-align: center; max-width: 640px; margin: 0 auto; display: flex; flex-direction: column; align-items: center; gap: var(--s-5); }
.close-cta-eyebrow { font-family: var(--font-meta); font-weight: 500; font-size: var(--fs-meta); letter-spacing: var(--ls-meta); text-transform: uppercase; color: var(--earthy, #465D38); }
.close-cta h2 { font-family: var(--font-serif); font-weight: 400; font-size: clamp(32px, 4vw, 52px); line-height: var(--lh-display, 1.10); letter-spacing: var(--ls-tight); color: var(--fg); margin: 0; }
.close-cta p { font-family: var(--font-sans); font-weight: 350; font-size: clamp(17px, 1.5vw, 20px); line-height: 1.6; color: var(--fg-2); margin: 0; }
.close-cta .pill { all: unset; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 10px; margin-top: var(--s-2); padding: 18px 32px; border-radius: var(--r-pill); background: var(--light-green, #DBE5CF); color: var(--ink); font-family: var(--font-sans); font-weight: 350; font-size: 17px; letter-spacing: 0.01em; line-height: 1; white-space: nowrap; transition: background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out); }
.close-cta .pill .dot { width: 6px; height: 6px; border-radius: var(--r-pill); flex-shrink: 0; background: var(--ink); transition: background var(--dur-fast) var(--ease-out); }
.close-cta .pill:hover { background: var(--ink); color: var(--white); }
.close-cta .pill:hover .dot { background: var(--white); }
.close-cta .pill:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
@media (max-width: 960px) { .close-cta-wrap { padding: 0 var(--gutter-sm); } }
@media (max-width: 480px) { .close-cta .pill { white-space: normal; text-align: center; padding: 16px 24px; } }

.pr-faq-item{border-top:1px solid var(--line,rgba(9,36,25,.1));}
.pr-faq-item:last-child{border-bottom:1px solid var(--line,rgba(9,36,25,.1));}
.pr-faq-q{width:100%; background:none; border:none; text-align:left; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:var(--s-6,24px); padding:var(--s-5,20px) 0; color:var(--fg,#092419);}
.pr-faq-q h3{font-family:var(--font-serif); font-weight:400; font-size:20px; margin:0;}
.pr-faq-icon{flex:none; width:20px; height:20px; position:relative;}
.pr-faq-icon::before, .pr-faq-icon::after{content:""; position:absolute; background:var(--fg,#092419); border-radius:2px; top:50%; left:50%;}
.pr-faq-icon::before{width:14px; height:2px; transform:translate(-50%,-50%);}
.pr-faq-icon::after{width:2px; height:14px; transform:translate(-50%,-50%); transition:transform .2s ease, opacity .2s ease;}
.pr-faq-item[data-open="true"] .pr-faq-icon::after{transform:translate(-50%,-50%) rotate(90deg); opacity:0;}
.pr-faq-panel{display:grid; grid-template-rows:0fr; transition:grid-template-rows .3s ease;}
.pr-faq-item[data-open="true"] .pr-faq-panel{grid-template-rows:1fr;}
.pr-faq-panel-inner{overflow:hidden;}
.pr-faq-a{margin:0; padding:0 0 var(--s-5,20px); max-width:66ch; font-family:var(--font-sans); font-size:var(--fs-body,17px); color:var(--fg-2,rgba(9,36,25,.8));}

/* Keep the eyebrow's own typography inside cards: .pr-card p and
   .pr-quick-check p share its specificity and would otherwise win. */
p.pr-eyebrow, .pr-card p.pr-eyebrow, .pr-quick-check p.pr-eyebrow{font-family:var(--font-meta); font-size:var(--fs-meta,13px); font-weight:600; letter-spacing:var(--ls-meta,.02em); text-transform:uppercase; color:var(--fg-mute,rgba(9,36,25,0.5));}
