/* Shared stylesheet moved out of inline <style> blocks so browsers cache it.
   Used by: /full-home/lake-oswego-or/, /full-home/portland-or/, /home-additions/lake-oswego-or/, /home-additions/portland-or/ */

    #pricing .pr-wrap { max-width:1200px;margin:0 auto;padding:0 32px; }
    #pricing .pr-eyebrow { font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:0.18em;text-transform:uppercase;color:var(--red);text-align:center;margin-bottom:14px; }
    #pricing .pr-heading { font-family:var(--serif);font-size:clamp(1.9rem,3.2vw,2.8rem);line-height:1.08;letter-spacing:-0.03em;color:var(--charcoal);margin:0 0 14px;text-align:center; }
    #pricing .pr-sub { font-size:14px;color:#666;line-height:1.75;max-width:580px;margin:0 auto 52px;text-align:center; }
    #pricing .pr-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:16px; }
    #pricing .pr-card { border:1px solid rgba(0,0,0,0.1);border-radius:14px;padding:32px 28px;position:relative;background:#fff; }
    #pricing .pr-card.featured { border-color:var(--charcoal);background:var(--charcoal); }
    #pricing .pr-tier { font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:0.2em;text-transform:uppercase;color:rgba(0,0,0,0.35);margin-bottom:12px; }
    #pricing .pr-card.featured .pr-tier { color:rgba(255,255,255,0.4); }
    #pricing .pr-price { font-family:var(--serif);font-size:2.4rem;color:var(--charcoal);line-height:1;margin-bottom:6px; }
    #pricing .pr-card.featured .pr-price { color:#fff; }
    #pricing .pr-range { font-size:12px;color:#999;margin-bottom:20px; }
    #pricing .pr-card.featured .pr-range { color:rgba(255,255,255,0.4); }
    #pricing .pr-divider { height:1px;background:rgba(0,0,0,0.08);margin-bottom:20px; }
    #pricing .pr-card.featured .pr-divider { background:rgba(255,255,255,0.1); }
    #pricing .pr-list { list-style:none;padding:0;margin:0 0 24px;display:flex;flex-direction:column;gap:10px; }
    #pricing .pr-list li { font-size:13px;color:#555;display:flex;align-items:flex-start;gap:8px;line-height:1.5; }
    #pricing .pr-card.featured .pr-list li { color:rgba(255,255,255,0.72); }
    #pricing .pr-list li::before { content:'✓';color:var(--red);font-weight:700;flex-shrink:0;margin-top:1px; }
    #pricing .pr-card.featured .pr-list li::before { color:#c87f5a; }
    #pricing .pr-note { font-size:11px;color:#aaa;margin-top:28px;text-align:center; }
    /* Neighborhoods */
    #pricing .nbr-heading { font-family:var(--serif);font-size:clamp(1.4rem,2.2vw,1.8rem);color:var(--charcoal);text-align:center;margin:64px 0 10px;letter-spacing:-0.02em; }
    #pricing .nbr-sub { font-size:13px;color:#888;text-align:center;margin:0 0 28px; }
    #pricing .nbr-tags { display:flex;flex-wrap:wrap;gap:10px;justify-content:center;max-width:860px;margin:0 auto; }
    #pricing .nbr-tag { font-family:var(--sans);font-size:12px;font-weight:500;color:var(--charcoal);background:var(--cream);border:1px solid rgba(0,0,0,0.1);border-radius:999px;padding:7px 18px;transition:background 0.18s,border-color 0.18s; }
    #pricing .nbr-tag:hover { background:#ede9e0;border-color:rgba(0,0,0,0.18); }
    @media(max-width:860px){ #pricing .pr-grid { grid-template-columns:1fr;max-width:460px;margin:0 auto 16px; } }
    @media(max-width:480px){ #pricing .pr-wrap { padding:0 20px; } }
  