/* Patreon uses the same raised-header / inset-body material as course modules. */
.home-page .home-membership {margin-top:48px;font-family:'Segoe UI',Arial,sans-serif;color:var(--ecg-ui-text)}
.home-membership__body {display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start;gap:24px 28px;padding:26px 24px 24px}
.home-membership__copy {min-width:0;padding:20px;border:1px solid #7084a128;border-top-color:#050b1680;border-radius:12px;background:#0c15244d;box-shadow:inset 0 2px 7px #0005,0 1px #dee8ff0a}
.home-page .home-membership__eyebrow {margin:0 0 9px;color:var(--ecg-ui-silver);font:650 11px/1.4 'Segoe UI',Arial,sans-serif;letter-spacing:.1em}
.home-page .home-membership__copy h3 {margin:0;color:var(--ecg-ui-silver-bright);font:650 22px/1.35 'Segoe UI',Arial,sans-serif;letter-spacing:-.02em;text-shadow:none}
.home-page .home-membership__description {margin:13px 0 0;color:var(--ecg-ui-muted);font-size:15px;line-height:1.65}
.home-page .home-membership__features {display:flex;flex-wrap:wrap;gap:8px 18px;list-style:none;padding:0;margin:19px 0 22px;color:var(--ecg-ui-silver-bright);font:600 13px/1.5 'Segoe UI',Arial,sans-serif}
.home-membership__features li::before {content:'•';margin-right:7px;color:var(--ecg-ui-accent-soft)}
.home-page .home-membership__action,.home-page .home-academy-plans,.membership-lightbox button {display:inline-flex;align-items:center;justify-content:center;gap:14px;box-sizing:border-box;min-height:48px;padding:12px 16px;border:1px solid var(--ecg-ui-border-soft);border-top-color:var(--ecg-ui-line-strong);border-bottom:3px solid #060d16;border-radius:10px;background:var(--ecg-ui-action-bg);box-shadow:inset 0 1px #e9f2ff12,0 2px #050a13;color:var(--ecg-ui-silver-bright);font:650 14px/1.4 'Segoe UI',Arial,sans-serif;text-decoration:none;cursor:pointer;transition:transform .25s ease,border-color .3s ease,filter .3s ease}
.home-page .home-membership__action {width:100%;min-height:54px;background:var(--ecg-ui-selected-surface);border-color:var(--ecg-ui-selected-border);border-bottom-color:var(--ecg-ui-selected-base);color:var(--ecg-ui-selected-text);font-size:15px;text-align:center}
.home-membership__action>span {font-size:20px;line-height:1}
.home-page .home-membership__note {margin:13px 0 0;color:var(--ecg-ui-muted);font-size:13px;line-height:1.6}
.home-page .home-membership__academy {grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:22px;border-top:1px solid rgb(var(--ecg-ui-silver-rgb) / .18)}
.home-membership__academy strong {color:var(--ecg-ui-silver-bright);font-size:15px;line-height:1.4}
.home-page .home-membership__academy p {margin:6px 0 0;color:var(--ecg-ui-muted);font-size:14px;line-height:1.6}
.home-page .home-academy-plans {flex-shrink:0}

.home-page .membership-gallery {display:grid;gap:12px;align-self:center;min-width:0;padding:0;border:0;background:none;box-shadow:none}
.membership-gallery__heading {display:flex;flex-wrap:wrap;gap:4px 16px;align-items:baseline;justify-content:space-between;padding:0 2px 4px}
.home-page .membership-gallery__heading h3 {margin:0;font:650 15px/1.5 'Segoe UI',Arial,sans-serif;color:var(--ecg-ui-silver-bright)}
.home-page .membership-gallery__heading p {margin:0;font-size:12px;line-height:1.5;color:var(--ecg-ui-muted)}
.membership-gallery__mobile {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.home-page .membership-thumbnail {display:flex;flex-direction:column;min-width:0;width:100%;padding:0;border:1px solid #7d91af4a;border-top-color:var(--ecg-ui-line-strong);border-bottom:3px solid #070d18;border-radius:13px;background:var(--ecg-ui-action-bg);color:var(--ecg-ui-silver-bright);box-shadow:inset 0 1px #f0f5ff16,0 3px #050a13,0 6px 12px #0003;overflow:hidden;cursor:zoom-in;transition:transform 200ms ease,border-color 200ms ease,box-shadow 200ms ease}
.membership-thumbnail__image {display:block;width:100%;height:118px;min-height:0;padding:8px;box-sizing:border-box;background:#090f18;overflow:hidden}
.membership-thumbnail--pc .membership-thumbnail__image {height:auto;aspect-ratio:16/8;padding:8px}
.home-page .membership-thumbnail img {display:block;object-fit:contain;object-position:top center;width:100%;height:100%;image-rendering:auto}
.membership-thumbnail__caption {display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%;min-height:40px;box-sizing:border-box;padding:8px 10px;font:600 12px/1.4 'Segoe UI',Arial,sans-serif;text-align:left}
.membership-thumbnail--pc .membership-thumbnail__caption {font-size:13px}
.membership-thumbnail__zoom {font:20px/1 Arial,sans-serif;color:var(--ecg-ui-accent-soft)}
.home-page :is(.home-membership__action,.home-academy-plans,.membership-thumbnail,.membership-lightbox button):focus-visible {outline:3px solid var(--ecg-ui-focus);outline-offset:4px}
@media(hover:hover){
  .home-page :is(.home-membership__action,.home-academy-plans,.membership-thumbnail,.membership-lightbox button):hover {transform:translateY(-2px);border-color:var(--ecg-ui-accent-soft);box-shadow:inset 0 1px #ffffff26,0 3px var(--ecg-ui-shadow),0 0 20px var(--ecg-ui-accent-shadow)}
}
.home-page :is(.home-membership__action,.home-academy-plans,.membership-thumbnail,.membership-lightbox button):active {transform:translateY(1px)}

.home-page .membership-lightbox {position:fixed;inset:0;width:min(1180px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);box-sizing:border-box;margin:auto;padding:0;border:1px solid var(--ecg-ui-silver);border-radius:16px;background:var(--ecg-ui-bg);color:var(--ecg-ui-text);box-shadow:0 30px 90px #0009;overflow:hidden}
.home-page .membership-lightbox[open] {display:flex;flex-direction:column;animation:catalog-dialog-in 260ms ease both}
.membership-lightbox::backdrop {background:#03060de8}
.membership-lightbox__toolbar {display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--ecg-ui-border-soft);background:linear-gradient(135deg,var(--ecg-ui-surface),var(--ecg-ui-surface-end))}
.home-page .membership-lightbox__toolbar p {flex:1;margin:0;font:600 15px/1.45 'Segoe UI',Arial,sans-serif}
.membership-lightbox button {min-height:44px;font-size:13px;padding:10px 14px}
.membership-lightbox button[aria-pressed=true] {background:var(--ecg-ui-selected-surface);border-color:var(--ecg-ui-selected-border);color:var(--ecg-ui-selected-text)}
.membership-lightbox__viewport {flex:1;min-height:0;max-height:calc(100dvh - 184px);overflow:auto;padding:16px;overscroll-behavior:contain}
.home-page .membership-lightbox__viewport img {display:block;max-width:100%;max-height:calc(100dvh - 216px);width:auto;height:auto;margin:auto;image-rendering:auto}
.home-page .membership-lightbox.is-zoomed .membership-lightbox__viewport img {max-width:none;max-height:none;min-width:100%}
.membership-lightbox__navigation {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-top:1px solid var(--ecg-ui-border-soft);background:var(--ecg-ui-surface-end)}
.home-page .membership-lightbox__navigation p {margin:0;font-size:13px;color:var(--ecg-ui-silver);text-align:center}
.membership-lightbox__navigation button {min-width:112px}
html.membership-gallery-open {overflow:hidden}
@keyframes catalog-dialog-in {from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:900px){
  .home-page .home-membership {margin-top:32px}
  .home-membership__body {grid-template-columns:minmax(0,1fr);gap:22px;padding:18px 14px}
  .home-membership__copy {padding:17px 15px}
  .home-page .home-membership__copy h3 {font-size:19px}
  .home-page .home-membership__academy {display:grid;gap:16px;padding-top:20px}
  .home-page .home-academy-plans {width:100%}
  .home-page .home-membership__academy p {font-size:15px}
  .membership-gallery__mobile {gap:8px}
  .membership-thumbnail__image {height:120px;padding:6px}
  .membership-thumbnail__caption {justify-content:center;padding:8px 5px;text-align:center}
  .membership-thumbnail:not(.membership-thumbnail--pc) .membership-thumbnail__zoom {display:none}
  .membership-thumbnail--pc .membership-thumbnail__caption {justify-content:space-between}
  .membership-lightbox__toolbar {display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px}
  .home-page .membership-lightbox__toolbar p {grid-column:1/-1}
  .membership-lightbox__viewport {padding:10px;max-height:calc(100dvh - 212px)}
  .home-page .membership-lightbox__viewport img {max-height:calc(100dvh - 232px)}
  .home-page .membership-lightbox.is-zoomed .membership-lightbox__viewport img {max-height:none}
  .membership-lightbox__navigation {gap:8px;padding:12px}
  .membership-lightbox__navigation button {min-width:0;padding:10px 12px}
}
@media(max-width:360px){
  .home-membership__body {padding:16px 12px}
  .home-membership__copy {padding:15px 12px}
  .membership-thumbnail__image {height:110px}
  .membership-thumbnail__caption {font-size:12px}
}
@media(prefers-reduced-motion:reduce){
  .home-page :is(.home-membership__action,.home-academy-plans,.membership-thumbnail,.membership-lightbox button) {transition:none;transform:none!important}
  .home-page .membership-lightbox[open] {animation:none}
}
