/* Package price grid — season x group size x tier.
   Panels are all in the DOM; the tabs only toggle .is-on. */
.pg{--pg-navy:#0D1F3C;--pg-blue:#2563EB;--pg-gold:#B8860B;--pg-line:#E5E7EB;
    --pg-ink:#111827;--pg-soft:#6B7280;--pg-wash:#F9FAFB;
    max-width:1100px;margin:28px auto;padding:0 16px;color:var(--pg-ink);
    /* The tab bar is sticky at 64/80px; without this an anchor jump to
       #package-pricing lands with the heading tucked underneath it. */
    scroll-margin-top:120px;}
.pg *{box-sizing:border-box;}
.pg-h{font-size:clamp(1.15rem,4vw,1.5rem);font-weight:800;color:var(--pg-navy);margin:0 0 14px;}
.pg-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}

.pg-tabs{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:16px;}
.pg-tab{background:#fff;border:1.5px solid var(--pg-line);border-radius:10px;padding:11px 18px;
        font-size:.9rem;font-weight:700;color:var(--pg-soft);cursor:pointer;min-height:46px;
        transition:all .18s;}
.pg-tab:hover{border-color:#93B4F5;}
.pg-tab.is-on{border-color:var(--pg-blue);background:#EFF6FF;color:var(--pg-blue);}

.pg-box{border:1px solid var(--pg-line);border-radius:16px;padding:14px;background:#fff;}
@media(min-width:768px){.pg-box{padding:18px;}}
.pg-seasons{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:14px;}
.pg-season{display:flex;align-items:center;gap:7px;background:var(--pg-wash);border:1.5px solid var(--pg-line);
           border-radius:10px;padding:10px 16px;font-size:.86rem;color:var(--pg-soft);cursor:pointer;
           min-height:46px;transition:all .18s;}
.pg-season strong{color:inherit;font-weight:800;}
.pg-season.is-on{border-color:var(--pg-blue);background:#EFF6FF;color:var(--pg-blue);}
.pg-months{font-size:.78rem;opacity:.85;}

.pg-panel{display:none;}
.pg-panel.is-on{display:block;}
.pg-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.pg-tbl{width:100%;border-collapse:collapse;min-width:560px;}
.pg-cap{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
.pg-tbl th,.pg-tbl td{border:1px solid var(--pg-line);padding:13px 14px;text-align:center;vertical-align:middle;}
.pg-tbl tbody th[scope=row]{text-align:left;font-weight:800;color:var(--pg-ink);background:#fff;font-size:.88rem;}
.pg-sub{display:block;font-weight:500;font-size:.72rem;color:var(--pg-soft);}
.pg-th{background:var(--pg-wash);}
.pg-th--pop{background:#EFF6FF;}
.pg-tier{display:block;font-weight:800;font-size:.98rem;color:var(--pg-ink);}
.pg-pop{display:inline-block;background:#DCFCE7;color:#166534;font-size:.62rem;font-weight:800;
        padding:2px 8px;border-radius:50px;margin-top:4px;}
.pg-blurb{display:block;font-size:.75rem;color:var(--pg-soft);font-weight:500;margin-top:3px;}
.pg-td--pop{background:#FAFCFF;}
.pg-total{display:block;font-size:1.15rem;font-weight:900;color:var(--pg-ink);}
.pg-save{display:block;font-size:.74rem;font-weight:700;color:#15803D;margin-top:3px;}
.pg-pp{font-size:1rem;font-weight:800;color:var(--pg-ink);}
.pg-na{color:var(--pg-soft);font-size:.82rem;}
.pg-inc span{display:inline-block;font-size:.78rem;color:var(--pg-soft);margin:0 5px;white-space:nowrap;}
.pg-cta{background:var(--pg-blue);color:#fff;border:none;border-radius:9px;padding:11px 20px;
        font-size:.86rem;font-weight:800;cursor:pointer;min-height:46px;width:100%;transition:background .18s;}
.pg-cta:hover{background:#1D4ED8;}
.pg-cta--pop{background:var(--pg-navy);}
.pg-cta--pop:hover{background:var(--pg-gold);}
.pg-note{display:flex;gap:8px;align-items:flex-start;background:var(--pg-wash);border:1px solid var(--pg-line);
         border-radius:10px;padding:11px 14px;margin:14px 0 0;font-size:.79rem;color:var(--pg-soft);line-height:1.6;}

@media(max-width:640px){
  .pg-tbl{min-width:520px;}
  .pg-tbl th,.pg-tbl td{padding:10px;}
  .pg-inc span{display:block;margin:2px 0;}
}
