
/* Hero height. Desktop here, mobile in the 860px block below. */
.rp-membership .mhero.wp-block-cover{min-height:760px}
/**
 * RP Fitness membership page. Front-of-body class: body.page-membership (or .rp-membership).
 * Reuses the homepage design tokens and shares the .h2 / .lead / .eb / button styles.
 * Scoped to .rp-membership so it never touches other pages.
 */
:root{--ivory:#F6F5EE;--navy:#002c41;--red:#e4022e;--ink:#0a2233;--muted:#4a5157;--gold:#FFC02E}

body.rp-membership{margin:0;background:var(--ivory);font-family:'Montserrat',Arial,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}
.rp-membership .entry-content > *{margin-block:0 !important}
.rp-membership .wp-block-post-title{display:none}
.rp-membership img{display:block;max-width:100%}
.rp-membership .wrap{max-width:1200px;margin:0 auto;padding:0 48px}

/* shared type, mirrors homepage */
.rp-membership .eb{color:var(--red);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin:0 0 16px}
.rp-membership .has-action-color{color:var(--red) !important;background-color:transparent !important}
.rp-membership mark.has-inline-color{background-color:transparent}
.rp-membership .lead{font-size:18px;line-height:1.62;color:var(--muted);margin:20px auto 0;max-width:680px}

/* buttons mirror homepage */
.rp-membership .wp-block-button__link{display:inline-block;background:var(--red);color:#fff;font-weight:700;font-size:15px;letter-spacing:.01em;padding:15px 34px;border-radius:10px;text-decoration:none;border:0;box-shadow:0 10px 24px rgba(228,2,46,.26)}
.rp-membership .wp-block-button__link:hover,.rp-membership .wp-block-button__link:focus{background:var(--red);color:#fff}
.rp-membership .wp-block-buttons{margin:0}

/* ---------- HERO (image, dark overlay, centred like homepage) ---------- */
.rp-membership .mhero{text-align:center}
.rp-membership .mhero .wp-block-cover__inner-container{width:100%}
.rp-membership .mhero .eb{color:#fff;text-align:center;opacity:.92}
.rp-membership .mh1{font-size:56px;font-weight:800;line-height:1.04;text-transform:uppercase;letter-spacing:.004em;margin:0;color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.3)}
.rp-membership .mhero .has-action-color{color:var(--red) !important}
.rp-membership .msub{font-size:18px;line-height:1.6;color:rgba(255,255,255,.94);margin:20px auto 0;max-width:580px}
.rp-membership .mhero .wp-block-buttons{justify-content:center;margin-top:16px}

/* ---------- MAKE THE CASE (mirrors homepage .intro) ---------- */
.rp-membership .mcase{background:var(--ivory);text-align:center;padding:72px 0 76px}
.rp-membership .mcase .lead{margin:22px auto 0;max-width:700px}

/* ---------- TRUST STRIP (compact accent, homepage star + review tone) ---------- */
.rp-membership .mtrust{background:#fff;text-align:center;padding:34px 0;border-top:1px solid rgba(0,44,65,.07);border-bottom:1px solid rgba(0,44,65,.07)}
.rp-membership .tstars{color:var(--gold);font-size:20px;letter-spacing:4px;margin:0}
.rp-membership .tcount{font-size:13px;letter-spacing:.05em;color:var(--ink);font-weight:700;margin:10px 0 0}
.rp-membership .tline{font-size:14.5px;line-height:1.65;color:var(--muted);font-weight:500;margin:10px auto 0;max-width:620px}

/* ---------- GALLERY GRID ---------- */
.rp-membership .mgallery-sec{padding:80px 0;background:var(--ivory)}
.rp-membership .mgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:44px}
.rp-membership .mgrid-item{margin:0 !important;overflow:hidden;border-radius:8px;aspect-ratio:16/10}
/* a lone last tile (10th) centres in the 3-col grid instead of orphaning left */
.rp-membership .mgrid-item:last-child:nth-child(3n+1){grid-column:2}
.rp-membership .mgrid-item img{width:100%;height:100%;object-fit:cover;display:block;cursor:zoom-in}

/* ---------- EVERYTHING UNDER ONE ROOF (icon grid, homepage icon style) ---------- */
.rp-membership .mroof{padding:72px 0 76px;text-align:center;background:#fff;border-top:1px solid rgba(0,44,65,.07)}
.rp-membership .iconwrap{display:grid;grid-template-columns:repeat(5,1fr);gap:36px 20px;max-width:900px;margin:46px auto 0}
.rp-membership .iconwrap .uitem{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;margin:0}
.rp-membership .iconwrap .uitem > *{margin:0}
.rp-membership .iconwrap .uicon{width:34px;height:34px;background-repeat:no-repeat;background-position:center;background-size:contain}
.rp-membership .iconwrap .ulab{font-size:11.5px;letter-spacing:.05em;color:#4a5157;text-transform:uppercase;font-weight:700;line-height:1.3}
/* Headed perk items (bring a friend / coffee), pulled out of the chip grid */
.rp-membership .mperks{display:grid;grid-template-columns:1fr 1fr;gap:26px 44px;max-width:820px;margin:38px auto 6px;text-align:center}
.rp-membership .mperk{margin:0}
.rp-membership .mperk-h{font-size:18px;font-weight:800;color:var(--navy);margin:0 0 8px;line-height:1.25}
.rp-membership .mperk-h span{color:var(--red)}
.rp-membership .mperk-b{font-size:15px;line-height:1.6;color:var(--muted);margin:0 auto;max-width:360px}
/* perk icons: reuse the chip SVGs (navy), sized for the headed layout */
.rp-membership .mperk-icon{width:38px;height:38px;margin:0 auto 14px;background-repeat:no-repeat;background-position:center;background-size:contain}
.rp-membership .uicon--clock{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23002c41%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%229%22%2F%3E%3Cpath%20d%3D%22M12%207.5V12l3%202%22%2F%3E%3C%2Fsvg%3E")}
.rp-membership .uicon--barbell{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23002c41%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2.5%2012h19%22%2F%3E%3Cpath%20d%3D%22M5.5%208.5v7M8%2010v4%22%2F%3E%3Cpath%20d%3D%22M18.5%208.5v7M16%2010v4%22%2F%3E%3C%2Fsvg%3E")}
.rp-membership .uicon--parking{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23002c41%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%224%22%20width%3D%2216%22%20height%3D%2216%22%20rx%3D%223.5%22%2F%3E%3Cpath%20d%3D%22M9.5%2016.5V7.8h3.1a2.35%202.35%200%200%201%200%204.7H9.5%22%2F%3E%3C%2Fsvg%3E")}
.rp-membership .uicon--coffee{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23002c41%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4.5%209.5h12v4.5a4%204%200%200%201-4%204h-4a4%204%200%200%201-4-4z%22%2F%3E%3Cpath%20d%3D%22M16.5%2010.5h2.2a2.25%202.25%200%200%201%200%204.5h-2.2%22%2F%3E%3Cpath%20d%3D%22M8%203.2c-.5%201%20.5%201.5%200%202.5M11.5%203.2c-.5%201%20.5%201.5%200%202.5%22%2F%3E%3C%2Fsvg%3E")}
.rp-membership .uicon--friend{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23002c41%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%228.5%22%20cy%3D%228%22%20r%3D%222.6%22%2F%3E%3Cpath%20d%3D%22M4%2018.5v-.6a4.5%204.5%200%200%201%209%200v.6%22%2F%3E%3Cpath%20d%3D%22M15.5%206.2a2.6%202.6%200%200%201%200%205%22%2F%3E%3Cpath%20d%3D%22M15%2014.1a4.5%204.5%200%200%201%204.5%204.4v.4%22%2F%3E%3C%2Fsvg%3E")}
.rp-membership .uicon--aircon{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23002c41%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%202.8v18.4M4.05%207.4l15.9%209.2M19.95%207.4%204.05%2016.6%22%2F%3E%3Cpath%20d%3D%22M9.6%204.2%2012%206.6l2.4-2.4M9.6%2019.8%2012%2017.4l2.4%202.4%22%2F%3E%3C%2Fsvg%3E")}
.rp-membership .uicon--shower{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23002c41%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M17%203.5V7%22%2F%3E%3Cpath%20d%3D%22M7%2011.5a5%205%200%200%201%2010%200z%22%2F%3E%3Cpath%20d%3D%22M9%2015v2M12%2015.5v2.5M15%2015v2%22%2F%3E%3C%2Fsvg%3E")}
.rp-membership .uicon--flex{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23002c41%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2011.5A8%208%200%200%200%206.3%206.1L4%208%22%2F%3E%3Cpath%20d%3D%22M4%204.2V8h3.8%22%2F%3E%3Cpath%20d%3D%22M4%2012.5a8%208%200%200%200%2013.7%205.4L20%2016%22%2F%3E%3Cpath%20d%3D%22M20%2019.8V16h-3.8%22%2F%3E%3C%2Fsvg%3E")}
.rp-membership .uicon--trainer{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23002c41%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Ccircle%20cx%3D%229.5%22%20cy%3D%226.5%22%20r%3D%222.5%22%2F%3E%3Cpath%20d%3D%22M5%2019v-.4a4.5%204.5%200%200%201%207.8-3.1%22%2F%3E%3Crect%20x%3D%2213.5%22%20y%3D%2211.5%22%20width%3D%226.5%22%20height%3D%228%22%20rx%3D%221.2%22%2F%3E%3Cpath%20d%3D%22M15.5%2011.5v-1.2h2.5v1.2%22%2F%3E%3C%2Fsvg%3E")}
.rp-membership .uicon--clinic{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23002c41%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%224%22%20y%3D%224%22%20width%3D%2216%22%20height%3D%2216%22%20rx%3D%224.5%22%2F%3E%3Cpath%20d%3D%22M12%208.5v7M8.5%2012h7%22%2F%3E%3C%2Fsvg%3E")}

/* ---------- ONE SIMPLE MEMBERSHIP (mirrors homepage .mem) ---------- */
.rp-membership .mprice-sec{background:var(--ivory);text-align:center;padding:88px 0}
.rp-membership .mprice-sec .lead{font-size:17px;line-height:1.6;margin:20px auto 6px;max-width:520px}
.rp-membership .price{font-size:56px;font-weight:800;color:var(--ink);margin:10px 0 2px;letter-spacing:-.015em;line-height:1}
.rp-membership .price span{font-size:16px;font-weight:600;color:var(--muted);letter-spacing:0}
.rp-membership .checks{display:inline-block;text-align:left;margin:22px auto 0}
.rp-membership .chk{display:flex;align-items:flex-start;gap:13px;margin:14px 0 !important}
.rp-membership .chk > *{margin:0}
.rp-membership .chk p:not(.ci){margin:0;font-size:16px;color:#23292f;font-weight:500}
.rp-membership .ci{flex:0 0 auto;width:24px;height:24px;border-radius:50%;background:var(--red);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;line-height:1;margin-top:1px}
.rp-membership .memcta{justify-content:center;margin-top:34px}

/* ---------- COMPARE band ---------- */
.rp-membership .mcompare{background:var(--navy);color:#fff;text-align:center;padding:76px 0}
.rp-membership .mcompare .h2{color:#fff}
.rp-membership .mcompare .lead{color:rgba(255,255,255,.9);margin-left:auto;margin-right:auto}
.rp-membership .mcompare-btns{justify-content:center;margin-top:30px}
.rp-membership .mcompare .is-style-rp-navy-outline .wp-block-button__link{background:transparent;border:2px solid #fff;color:#fff;box-shadow:none}
.rp-membership .mcompare .is-style-rp-navy-outline .wp-block-button__link:hover{background:#fff;color:var(--navy)}

/* ---------- FAQ ---------- */
.rp-membership .mfaq{padding:80px 0;background:#fff}
.rp-membership .mfaq .h2{text-align:center;margin-bottom:8px}
.rp-membership .faq-item{border-bottom:1px solid rgba(0,44,65,.1);padding:0;margin:0 auto !important}
.rp-membership .faq-item:first-of-type{border-top:1px solid rgba(0,44,65,.1);margin:40px auto 0 !important}
.rp-membership .faq-q{font-size:18px;font-weight:700;color:var(--ink);margin:0;line-height:1.4}
.rp-membership .faq-q button{display:block;width:100%;text-align:left;background:none;border:0;margin:0;padding:24px 44px 24px 0;font:inherit;color:inherit;letter-spacing:inherit;line-height:inherit;cursor:pointer;position:relative}
.rp-membership .faq-q button::after{content:"+";position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:24px;font-weight:400;color:var(--red);transition:transform .2s}
.rp-membership .faq-item.open .faq-q button::after{content:"–"}
.rp-membership .faq-q button:focus{outline:none}
.rp-membership .faq-q button:focus-visible,
.rp-membership .faq-q button.rp-kb-focus:focus{outline:2px solid var(--navy);outline-offset:-3px;border-radius:6px}
.rp-membership .faq-a{font-size:16px;line-height:1.7;color:var(--muted);margin:0;padding:0 44px 26px 0;max-width:none}
/* JS-collapsed by default; if JS off, show all (progressive enhancement) */
.rp-membership.js .faq-a{display:none}
.rp-membership.js .faq-item.open .faq-a{display:block}

/* ---------- FINAL CTA ---------- */
.rp-membership .mcta{padding:88px 0;text-align:center}
.rp-membership .mcta .lead{margin-left:auto;margin-right:auto;margin-bottom:30px}
.rp-membership .mcta .wp-block-buttons{justify-content:center}

/* FAQ group subheadings for scanning the longer list */
.rp-membership .faq-group{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--red);margin:38px 0 4px;padding:0}
.rp-membership .faq-group:first-of-type{margin-top:40px}
.rp-membership .faq-a a{color:var(--red);text-decoration:underline;text-underline-offset:2px}
.rp-membership .faq-item:first-of-type{border-top:0;margin-top:0 !important}
.rp-membership .faq-group + .faq-item{border-top:1px solid rgba(0,44,65,.1)}

/* ========================================================================
   COMPARISON MODAL
   ======================================================================== */
.rp-modal{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:24px}
.rp-modal.open{display:flex}
.rp-modal__backdrop{position:absolute;inset:0;background:rgba(4,16,24,.6)}
/* --rp-head-h mirrors the rendered .rp-modal__head height; the sticky column
   labels below key off it. Re-measure if the head padding or close button changes. */
.rp-modal__box:focus{outline:none}
.rp-modal__box{--rp-head-h:79px;position:relative;background:#fff;border-radius:14px;max-width:720px;width:100%;max-height:88vh;max-height:88dvh;overflow:auto;box-shadow:0 30px 80px rgba(0,0,0,.4)}
.rp-modal__head{position:sticky;top:0;background:#fff;border-bottom:1px solid rgba(0,44,65,.1);padding:22px 28px;display:flex;align-items:center;justify-content:space-between;z-index:2}
.rp-modal__head h2{font-size:20px;font-weight:800;text-transform:uppercase;letter-spacing:.01em;margin:0;color:var(--ink)}
.rp-modal__close{background:none;border:0;font-size:26px;line-height:1;color:var(--muted);cursor:pointer;padding:4px 8px}
.rp-modal__close:hover{color:var(--red)}
.rp-modal__body{padding:24px 28px 28px}
.rp-modal__intro{font-size:14px;color:var(--muted);line-height:1.6;margin:0 0 20px}

.rp-ctable{width:100%;border-collapse:collapse;font-size:14px}
/* Column labels: no navy bar, just small caps over a navy rule.
   Sticky offset must equal .rp-modal__head height (--rp-head-h). */
.rp-ctable thead th{background:#fff;color:#7d8890;font-size:11px;text-transform:uppercase;letter-spacing:.7px;font-weight:700;padding:6px 16px 9px;text-align:left;border-bottom:2px solid var(--navy);position:sticky;top:var(--rp-head-h)}
.rp-ctable thead th.c247{text-align:center}
.rp-ctable thead th.cfee,.rp-ctable thead th.cprice{text-align:right}
.rp-ctable tbody th{text-align:left;font-weight:600;color:var(--navy);font-size:14px;padding:13px 16px;border-bottom:1px solid #f0eee6}
.rp-ctable tbody td{padding:13px 16px;border-bottom:1px solid #f0eee6}
.rp-ctable .c247{text-align:center}
.rp-ctable .is-yes{color:var(--navy);font-weight:800;font-size:15px;line-height:1}
.rp-ctable .is-no{color:#c3c8cc;font-weight:700;line-height:1}
.rp-ctable .cfee{color:#7a838a;text-align:right}
.rp-ctable .cprice{text-align:right;font-weight:700;color:var(--navy);white-space:nowrap;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}
/* RP row: red-pink tint plus a 3px red accent inset on the first cell. */
.rp-ctable tr.rp-row th,.rp-ctable tr.rp-row td{background:#fdeef0}
.rp-ctable tr.rp-row th{color:var(--navy);font-weight:800;box-shadow:inset 3px 0 0 0 var(--red)}
.rp-ctable tr.rp-row .is-yes{color:var(--red)}
.rp-ctable tr.rp-row .cprice{color:var(--red);font-weight:800}
.rp-why{list-style:none;margin:22px 0 0;padding:20px 24px;background:#f7f9fa;border-radius:10px}
.rp-why li{position:relative;padding:8px 0 8px 30px;font-size:14.5px;color:var(--ink);line-height:1.5}
.rp-why li::before{content:"✓";position:absolute;left:0;top:8px;color:#1a8a44;font-weight:800}
.rp-why li:first-child{font-weight:700}
.rp-modal__note{font-size:11.5px;color:#8a9096;line-height:1.6;margin:18px 0 0}


/* ========================================================================
   GALLERY LIGHTBOX (built by rp-membership.js)
   ======================================================================== */
.rp-lightbox{position:fixed;inset:0;z-index:2000;display:none;background:rgba(4,10,16,.95)}
.rp-lightbox.open{display:block}
/* Scroll-snap track: native momentum + snap give the smooth follow-the-finger
   swipe, matching the on-page gallery strip. */
.rp-lightbox .rp-lb-track{position:absolute;inset:0;display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;touch-action:pan-x}
.rp-lightbox .rp-lb-track::-webkit-scrollbar{display:none}
.rp-lightbox .rp-lb-slide{flex:0 0 100%;height:100%;scroll-snap-align:center;display:flex;align-items:center;justify-content:center}
.rp-lightbox .rp-lb-simg{max-width:94vw;max-height:88vh;max-height:88dvh;object-fit:contain;border-radius:4px;-webkit-user-select:none;user-select:none;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.rp-lightbox button{position:absolute;z-index:2;background:rgba(255,255,255,.14);color:#fff;border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:50%;line-height:1;transition:background .15s}
.rp-lightbox button:hover{background:rgba(255,255,255,.28)}
.rp-lightbox:focus{outline:none}
.rp-lightbox button:focus-visible,
.rp-lightbox .rp-kb-focus:focus{outline:2px solid #fff;outline-offset:2px}
.rp-lightbox .rp-lb-close{top:16px;right:16px;width:46px;height:46px;font-size:28px}
.rp-lightbox .rp-lb-prev,.rp-lightbox .rp-lb-next{top:50%;transform:translateY(-50%);width:50px;height:50px;font-size:32px;padding-bottom:4px}
.rp-lightbox .rp-lb-prev{left:14px}
.rp-lightbox .rp-lb-next{right:14px}
.rp-lightbox .rp-lb-count{position:absolute;z-index:2;bottom:20px;left:50%;transform:translateX(-50%);color:rgba(255,255,255,.85);font-size:13px;letter-spacing:.06em;font-weight:600}

/* ============================ MOBILE (<=860px) ============================ */
@media (max-width:860px){
	.rp-membership .mhero.wp-block-cover{min-height:600px}

	.rp-membership .wrap{padding-left:24px;padding-right:24px}
	.rp-membership .mh1{font-size:34px}
	.rp-membership .msub{font-size:15px}
	.rp-membership .mroof,.rp-membership .mcompare,.rp-membership .mfaq,.rp-membership .mcta,.rp-membership .mcase,.rp-membership .mprice-sec{padding:52px 0}
	.rp-membership .mtrust{padding:26px 0}
	.rp-membership .price{font-size:44px}
	.rp-membership .iconwrap{grid-template-columns:repeat(2,1fr);gap:28px 14px;margin-top:32px}
	.rp-membership .mperks{grid-template-columns:1fr;gap:24px;margin-top:30px}
	.rp-membership .mgallery-sec{padding:52px 0}
	/* Horizontal swipe strip on mobile; ~one and a bit images in view. */
	/* Full-bleed swipe strip: break out of the .wrap 24px padding so it runs
	   edge to edge. overflow-x:auto keeps the scroll contained (no page scroll). */
	.rp-membership .mgrid{display:flex;grid-template-columns:none;gap:12px;margin:30px -24px 0 !important;max-width:none !important;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:10px;scrollbar-width:none;scroll-padding-inline:0}
	.rp-membership .mgrid::-webkit-scrollbar{display:none}
	.rp-membership .mgrid-item{flex:0 0 89%;scroll-snap-align:start}
	.rp-membership .mgrid-item:last-child{scroll-snap-align:end}
	.rp-membership .faq-q{font-size:16px}
	.rp-membership .faq-q button{padding-right:36px}
	.rp-modal{padding:0}
	.rp-modal__box{border-radius:0;max-height:100vh;height:100vh;max-height:100dvh;height:100dvh}
	/* Stays a real table on mobile, trimmed to three columns.
	   Joining fee is dropped so Gym / 24/7 / Monthly fit without scrolling.
	   The head wraps to two lines here, so the sticky offset grows. */
	.rp-modal__box{--rp-head-h:88px}
	.rp-ctable{min-width:0;font-size:13px}
	.rp-ctable .cfee{display:none}
	.rp-ctable thead th{padding:6px 8px 8px;letter-spacing:.5px}
	.rp-ctable tbody th{font-size:13.5px;padding:12px 8px}
	.rp-ctable tbody td{padding:12px 8px}
	.rp-ctable .cprice{font-size:14px}
	/* Lightbox: arrows give way to swipe on mobile; image fills the screen */
	.rp-lightbox .rp-lb-prev,.rp-lightbox .rp-lb-next{display:none}
	.rp-lightbox .rp-lb-simg{max-width:100vw;max-height:84vh;max-height:84dvh;border-radius:0}
	.rp-lightbox .rp-lb-close{top:10px;right:10px}
}
