/* No Standards catalogue and cart styles.
 * Additive: site.css already carries the shared design system, so only the
 * rules the products page adds live here. Keeps the 200KB shared stylesheet
 * and the homepage untouched.
 */
.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.programs{color:#1b1a17;background:#f7f4ec}.programs-head{color:#f5f2ec;padding:clamp(64px, 8vw, 120px) var(--gutter) clamp(56px, 6vw, 90px);background:#090a0b}.programs-head h1{letter-spacing:-.075em;font-family:Manrope,Arial,sans-serif;font-size:clamp(46px,6.4vw,104px);font-weight:500;line-height:1.04}.programs-head h1 em{color:#e5c294;letter-spacing:-.045em;font-family:Cormorant Garamond,Georgia,serif;font-size:1.13em;font-style:italic}.programs-head p{color:#bab9b6;max-width:52ch;margin-top:28px;font-size:16px;line-height:1.8}.catalogue{padding:clamp(40px, 5vw, 72px) var(--gutter) clamp(72px, 9vw, 130px)}.filters{border-bottom:1px solid #1b1a1733;flex-wrap:wrap;align-items:flex-start;gap:30px 48px;padding-bottom:32px;display:flex}.filter-group{flex-direction:column;gap:12px;display:flex}.filter-label{letter-spacing:.14em;text-transform:uppercase;color:#6f6a60;font-size:11px}.filter-options{flex-wrap:wrap;gap:8px;display:flex}.filter-chip{color:#1b1a17;font:inherit;cursor:pointer;background:0 0;border:1px solid #1b1a173d;border-radius:40px;padding:8px 16px;font-size:13px;transition:background-color .16s,border-color .16s,color .16s}.filter-chip:hover{border-color:#1b1a17}.filter-chip[aria-pressed=true]{color:#f5f2ec;background:#121316;border-color:#121316}.filter-status{color:#6f6a60;align-self:flex-end;align-items:center;gap:18px;margin-left:auto;font-size:13px;display:flex}.program-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:20px;margin:40px 0 0;padding:0;list-style:none;display:grid}.program-card>article{background:#fdfcf8;border:1px solid #1b1a1729;border-radius:16px;flex-direction:column;min-width:0;height:100%;padding:26px 24px 22px;display:flex}.program-card.is-bundle>article{color:#f5f2ec;background:#121316;border-color:#e5c2944d}.program-flag{letter-spacing:.14em;text-transform:uppercase;color:#15120e;background:#e5c294;border-radius:40px;align-self:flex-start;margin-bottom:14px;padding:5px 11px;font-size:10px}.program-card h3{letter-spacing:-.04em;font-size:19px;font-weight:500;line-height:1.35}.program-blurb{color:#56524b;min-width:0;margin-top:12px;font-size:14px;line-height:1.72}.program-card.is-bundle .program-blurb,.program-card.is-bundle .program-connects{color:#a9a8a3}.program-meta{letter-spacing:.1em;text-transform:uppercase;color:#6f6a60;flex-wrap:wrap;gap:8px 10px;margin-top:18px;font-size:11px;display:flex}.program-meta span{white-space:nowrap}.program-meta span:not(:last-child):after{content:"·";margin-left:10px}.program-card.is-bundle .program-meta{color:#8d8b86}.program-connects{color:#6f6a60;margin-top:10px;font-size:12px}.program-buy{justify-content:space-between;align-items:center;gap:14px;margin-top:auto;padding-top:22px;display:flex}.program-price{letter-spacing:-.05em;font-family:Manrope,Arial,sans-serif;font-size:26px;font-weight:500}.add-button{color:#f5f2ec;font:inherit;cursor:pointer;background:#121316;border:1px solid #121316;border-radius:40px;padding:11px 20px;font-size:13px;font-weight:600;transition:background-color .16s,color .16s}.program-card.is-bundle .add-button{color:#15120e;background:#e5c294;border-color:#e5c294}.add-button:hover{background:#2b2d33}.program-card.is-bundle .add-button:hover{background:#fff3df}.add-button.in-cart{color:#1b1a17;background:0 0}.program-card.is-bundle .add-button.in-cart{color:#f5f2ec;background:0 0;border-color:#f5f2ec66}.add-button.covered,.add-button:disabled{color:#77726a;cursor:default;background:0 0;border-color:#1b1a1733}.filter-empty{color:#56524b;margin-top:40px;font-size:15px}.programs-foot{color:#f5f2ec;padding:clamp(72px, 9vw, 130px) var(--gutter) clamp(40px, 5vw, 70px);background:#090a0b}.programs-foot h2{letter-spacing:-.07em;font-family:Manrope,Arial,sans-serif;font-size:clamp(38px,5vw,76px);font-weight:500;line-height:1.08}.programs-foot h2 em{color:#e5c294;font-family:Cormorant Garamond,Georgia,serif;font-size:1.14em;font-style:italic}.programs-foot p{color:#bab9b6;max-width:46ch;margin:26px 0 34px;font-size:16px;line-height:1.8}.programs-foot footer{color:#8d8b86;border-top:1px solid #f5f2ec2e;flex-wrap:wrap;align-items:baseline;gap:10px 30px;margin-top:clamp(60px,8vw,110px);padding-top:26px;font-size:12px;display:flex}.programs-foot .footer-brand{letter-spacing:.12em;color:#f5f2ec;font-weight:600}.cart-button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #f5f2ec59;border-radius:40px;align-items:center;gap:9px;padding:9px 16px;font-size:13px;display:inline-flex;position:relative}.cart-button:hover{color:#e5c294;border-color:#e5c294}.cart-count{color:#15120e;background:#e5c294;border-radius:20px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:600;display:inline-flex}.cart-count[data-empty=true]{color:#cfcdc8;background:#f5f2ec2e}#cart-drawer{color:#f5f2ec;z-index:1000;background:#111214;border:0;flex-direction:column;width:min(92vw,440px);max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:74px 30px 30px;display:none;position:fixed;inset:0 0 0 auto}#cart-drawer[open]{display:flex}#cart-drawer::backdrop{background:#0000009e}#cart-heading{letter-spacing:-.05em;font-family:Manrope,Arial,sans-serif;font-size:26px;font-weight:500}#cart-close{color:inherit;cursor:pointer;background:0 0;border:0;font-size:34px;line-height:1;position:absolute;top:18px;right:22px}#cart-items{flex:1;min-height:0;margin-top:24px;overflow-y:auto}.cart-row{border-bottom:1px solid #f5f2ec24;grid-template-columns:1fr auto;align-items:baseline;gap:4px 16px;padding:17px 0;display:grid}.cart-row strong{font-size:15px;font-weight:500;display:block}.cart-row>div span{color:#a9a8a3;margin-top:4px;font-size:12px;display:block}.cart-price{font-size:15px}.cart-row button{font:inherit;color:#a9a8a3;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;grid-column:1/-1;justify-self:start;padding:0;font-size:12px;text-decoration:underline}.cart-row button:hover{color:#f5f2ec}.cart-empty{color:#a9a8a3;padding:20px 0;font-size:15px}#cart-foot{border-top:1px solid #f5f2ec33;padding-top:22px}.cart-total{color:#a9a8a3;justify-content:space-between;align-items:baseline;margin-bottom:20px;font-size:14px;display:flex}.cart-total strong{letter-spacing:-.05em;color:#f5f2ec;font-family:Manrope,Arial,sans-serif;font-size:28px;font-weight:500}#cart-checkout{cursor:pointer;width:100%;font:inherit;color:#15120e;background:#e5c294;border:0;border-radius:40px;justify-content:center;padding:16px 25px;font-size:14px;font-weight:600}#cart-checkout:hover{background:#fff3df}#cart-checkout:disabled{color:#8d8b86;cursor:default;background:#f5f2ec29}#cart-error{color:#f0b4a4;margin-top:14px;font-size:13px;line-height:1.7}.cart-note{color:#8d8b86;margin-top:14px;font-size:12px;line-height:1.7}@media (max-width:700px){.filters{gap:24px 32px}.filter-status{width:100%;margin-left:0;padding-top:0}.program-grid{grid-template-columns:1fr}#cart-drawer{width:100vw;padding:70px 22px 24px}}