/* Apeks v9 (3 Nov 2026): the three door pages (for-members, for-gyms, for-brands) and the app cards that sit on the door photos.
   Loaded by index.html (for .ac) and by the three door pages (after deep.css, deep-x.css, deep-v8.css).
   Ground is chalk; the two ink bands have clean edges, no gradient merges. */

/* ---------- the app card: one object, three versions ---------- */
.ac{--tone:#FF725E;--acs:15px;position:relative;overflow:hidden;width:100%;display:grid;gap:.8em;padding:1.25em 1.3em 1.1em;border-radius:1.4em;font-size:var(--acs);
  background:linear-gradient(168deg,#FFFFFF,#F5F3FA);color:#191A20;text-align:left;line-height:1.25;
  box-shadow:inset 0 1px 0 #fff,0 2.6em 3.4em -1.8em #000a,0 0 0 1px #191A2014}
.ac::before{content:"";position:absolute;left:0;right:0;top:0;height:.38em;background:linear-gradient(90deg,#FF725E,#F08AA8 55%,#C5B7EB)}
.ac-top{display:flex;align-items:center;gap:.65em;margin-top:.2em;font-size:.7em;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#5d5e66;white-space:nowrap}
.ac-mark{flex:none;display:grid;place-items:center;width:2.7em;height:2.7em;border-radius:50%;background:#191A20;color:#fff}
.ac-mark svg{width:1.6em;height:1.3em}
.ac-chip{margin-left:auto;padding:.5em 1em;border-radius:99px;background:#191A20;color:#fff;letter-spacing:.12em}
.ac-big{display:block;font-size:2.55em;font-weight:800;letter-spacing:-.045em;line-height:1}
.ac-sub{font-size:1em;font-weight:500;color:#45464d}
.ac-foot{display:flex;align-items:center;gap:.6em;padding-top:.8em;border-top:1.5px dashed #191A2026;font-size:.8em;font-weight:600;color:#45464d}
.ac-foot b{font-weight:700;color:#191A20}
.ac-ok{flex:none;display:grid;place-items:center;width:1.7em;height:1.7em;border-radius:50%;background:#2C52D0;color:#fff}
.ac-ok svg{width:1em;height:1em}
/* members: the thank-you pass */
.ac-m .ac-foot{color:#191A20}
/* gyms: the comeback list, three members, three states */
.ac-g .ac-big{font-size:1.5em;letter-spacing:-.035em}
.ac-rows{display:grid;gap:.5em}
.ac-row{display:flex;align-items:center;gap:.75em;padding:.55em .7em;border-radius:.9em;background:#191A200a}
.ac-row i{flex:none;width:1.9em;height:1.9em;border-radius:50%;background:#191A2022}
.ac-row u{flex:1;height:.55em;border-radius:.55em;background:#191A2018}
.ac-row em{flex:none;padding:.35em .8em;border-radius:99px;font-style:normal;font-size:.76em;font-weight:700;letter-spacing:.04em;background:#191A2014;color:#45464d}
.ac-row.nudged em{background:#C5B7EB;color:#191A20}
.ac-row.back{background:#FF725E;box-shadow:0 .9em 1.6em -.9em #FF725Ecc}
.ac-row.back i{background:#191A2030}.ac-row.back u{background:#191A2030}
.ac-row.back em{background:#191A20;color:#fff}
/* brands: the sponsored perk, as a member sees it */
.ac-b::before{background:linear-gradient(90deg,#F0E99B,#F6C65B)}
.ac-perk{display:flex;align-items:center;gap:1em}
.ac-tile{flex:none;display:grid;place-items:center;width:4.4em;height:4.4em;border-radius:1.1em;background:linear-gradient(160deg,#FBF4B8,#EEE58C);box-shadow:inset 0 0 0 1px #7a5a0022}
.ac-tile svg{width:2.4em;height:2.4em}
.ac-perk .ac-big{font-size:1.9em}
.ac-tag{flex:none;padding:.5em 1em;border-radius:99px;background:#F0E99B;color:#5c4400;letter-spacing:.12em}
.ac-b .ac-foot b{color:#5c4400}

/* ---------- on the landing doors: the card floats over the photo ---------- */
.dp-ov{pointer-events:none}
.dp-ov .ac{width:min(100%,292px);--acs:14.5px}
.dp-m .dp-ov,.dp-b .dp-ov{justify-content:flex-end}
.dp-g .dp-ov{justify-content:flex-start}

/* ---------- door pages ---------- */
body.door{--ink2:#45464d}
.door .dh .brand{color:var(--ink)}
.dx-hero{padding:clamp(108px,12vw,148px) 0 clamp(52px,6vw,96px)}
.dx-hero .wrap{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(28px,5vw,84px);align-items:center}
.dx-hero h1{font-size:clamp(44px,5.6vw,88px)}
.dx-hero .lede{max-width:34em}
.dx-chips{margin-top:26px;display:flex;flex-wrap:wrap;gap:10px}
.dx-chips span{padding:7px 14px;border-radius:99px;border:1px solid #191A2024;font-size:13.5px;font-weight:600;color:#45464d;background:#ffffff80}
.dx-chips span:first-child{background:#191A20;border-color:#191A20;color:#fff}
.dx-cta{margin-top:30px;display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}
.dx-cta .btn,.dx-end .btn{display:inline-flex;align-items:center;gap:10px;min-height:54px;padding:14px 28px;border:0;border-radius:99px;background:var(--ink);color:#fff;font:700 17px Satoshi,sans-serif;cursor:pointer;text-decoration:none;transition:background .3s,translate .3s var(--ease)}
.dx-cta .btn:hover,.dx-end .btn:hover{background:#2a2b33;translate:0 -2px}
.dx-cta .btn span,.dx-end .btn span{transition:translate .3s var(--ease)}
.dx-cta .btn:hover span,.dx-end .btn:hover span{translate:4px 0}
.dx-cta a.more{font-size:16px;font-weight:600;text-underline-offset:5px;text-decoration-thickness:1.5px}
.dx-photo{position:relative;margin:0;border-radius:34px;overflow:hidden;aspect-ratio:4/4.7;background:#2a2b31;box-shadow:0 60px 90px -52px #191A20bb,0 0 0 1px #191A2014}
.dx-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dx-photo::after{content:"";position:absolute;inset:auto 0 0;height:46%;background:linear-gradient(transparent,#191A2099);pointer-events:none}
.dx-photo .ac{position:absolute;left:clamp(14px,5%,32px);bottom:clamp(14px,5%,32px);z-index:2;width:min(86%,370px);--acs:clamp(13.5px,1.15vw,16.5px)}
.dx-photo figcaption{position:absolute;right:16px;top:14px;z-index:2;padding:5px 11px;border-radius:99px;background:#191A20b3;color:#fff;font-size:11.5px;font-weight:600;letter-spacing:.04em}
.dx-members .dx-photo>img{object-position:50% 38%}.dx-gyms .dx-photo>img{object-position:38% 50%}.dx-brands .dx-photo>img{object-position:50% 28%}

/* at a glance: who does what, what it costs */
.dx-glance{padding:0 0 clamp(56px,8vw,112px)}
.dx-glance .wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,20px)}
.dx-g{position:relative;display:flex;flex-direction:column;gap:10px;padding:clamp(22px,2.4vw,32px);border-radius:26px;background:#fff;box-shadow:inset 0 1px 0 #fff,0 40px 64px -46px #191A2066,0 0 0 1px #191A2010}
.dx-g small{align-self:flex-start;padding:6px 12px;border-radius:99px;background:#191A200d;font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#45464d}
.dx-g b{font-size:clamp(24px,2.3vw,32px);letter-spacing:-.04em;line-height:1.06}
.dx-g span{font-size:16.5px;line-height:1.5;color:#45464d}
.dx-g.hot{background:linear-gradient(160deg,#FFE7DF,#FFD3C6);box-shadow:inset 0 1px 0 #ffffffb3,0 40px 64px -40px #FF725E88}
.dx-g.hot small{background:#191A20;color:#fff}

/* ink bands: solid, clean edges */
.dx-band{background:var(--ink);color:#F7F7F2;padding:clamp(60px,8vw,120px) 0}
.dx-band .eb{color:#C5B7EB}
.dx-band h2{font-size:clamp(34px,4.2vw,64px);color:#fff}
.dx-band h2 em{background:linear-gradient(90deg,#FF725E,#C5B7EB);-webkit-background-clip:text;background-clip:text;color:transparent}
.dx-band .big{margin:0;max-width:24ch;font-size:clamp(28px,3.4vw,52px);font-weight:800;letter-spacing:-.04em;line-height:1.08;color:#fff}
.dx-band .big em{font-style:normal;color:#FF725E}
.dx-band .sub{margin:18px 0 0;max-width:52ch;font-size:clamp(17px,1.3vw,20px);color:#F7F7F2b8}
.dx-steps{list-style:none;margin:clamp(32px,4vw,56px) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,28px);counter-reset:s}
.dx-steps li{position:relative;padding:28px 26px 30px;border-radius:26px;background:#ffffff0f;box-shadow:inset 0 1px 0 #ffffff1c,0 0 0 1px #ffffff1a}
.dx-steps li::after{content:"";position:absolute;top:50px;left:calc(100% + 2px);width:calc(clamp(14px,2vw,28px) - 4px);border-top:2px dotted #ffffff55}
.dx-steps li:last-child::after{display:none}
.dx-steps i{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#ffffff1f;font-style:normal;font-weight:800;font-size:18px;color:#fff}
.dx-steps .hot{background:linear-gradient(160deg,#FF725E,#F2606c);box-shadow:0 36px 60px -34px #FF725E}
.dx-steps .hot i{background:#191A20}
.dx-steps b{display:block;margin-top:18px;font-size:clamp(22px,2vw,28px);letter-spacing:-.035em;line-height:1.1;color:#fff}
.dx-steps .hot b{color:#191A20}
.dx-steps span{display:block;margin-top:8px;font-size:16px;line-height:1.5;color:#F7F7F2b8}
.dx-steps .hot span{color:#191A20d0}

/* free sections */
.dx-sec{padding:clamp(56px,8vw,112px) 0}
.dx-sec h2{font-size:clamp(32px,3.8vw,56px)}
.dx-sec .sub{margin:18px 0 0;max-width:54ch;color:#45464d}
.dx-photoblk{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:center}
.dx-photoblk figure{margin:0;border-radius:30px;overflow:hidden;aspect-ratio:3/2;box-shadow:0 50px 80px -50px #191A20aa,0 0 0 1px #191A2012}
.dx-photoblk img{width:100%;height:100%;object-fit:cover}
.dx-photoblk p{margin:18px 0 0;max-width:46ch;color:#45464d}
.dx-photoblk .note{font-size:14px;color:var(--mute)}
.dx-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,2vw,28px);margin-top:clamp(28px,3vw,44px)}
.dx-col{padding:clamp(24px,2.6vw,36px);border-radius:28px;background:linear-gradient(160deg,#FFFFFF,#F4F1FB);box-shadow:inset 0 1px 0 #fff,0 40px 70px -46px #191A2077,0 0 0 1px #191A2010}
.dx-col.hot{background:linear-gradient(160deg,#FFE7DF,#FFD3C6);box-shadow:inset 0 1px 0 #ffffffb3,0 40px 70px -40px #FF725E88}
.dx-col h3{margin:0;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}
.dx-col ol,.dx-col ul{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:18px}
.dx-col li{display:grid;gap:2px}
.dx-col li b{font-size:clamp(21px,1.9vw,27px);letter-spacing:-.035em;line-height:1.12}
.dx-col li span{font-size:16px;line-height:1.45;color:#45464d}
.dx-col.no li b::before{content:"\2715";margin-right:10px;color:var(--coral);font-size:.8em}
.dx-col.yes li b::before{content:"\2713";margin-right:10px;color:#2C52D0;font-size:.85em}
.dx-put{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(12px,1.6vw,20px);margin-top:clamp(28px,3vw,44px)}
.dx-put>div{display:flex;flex-direction:column;gap:8px;padding:clamp(22px,2.4vw,30px);border-radius:24px;background:#fff;box-shadow:0 40px 64px -46px #191A2066,0 0 0 1px #191A2010}
.dx-put b{font-size:clamp(22px,2vw,28px);letter-spacing:-.035em}
.dx-put span{font-size:16px;line-height:1.5;color:#45464d}
.dx-put i{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:linear-gradient(160deg,#FBF4B8,#EEE58C)}
.dx-put i svg{width:24px;height:24px}

/* the end: one button, other ways to reach us */
.dx-end{background:var(--ink);color:#F7F7F2;padding:clamp(72px,10vw,150px) 0;text-align:center}
.dx-end h2{font-size:clamp(40px,5.4vw,84px);color:#fff}
.dx-end h2 em{background:linear-gradient(90deg,#FF725E,#C5B7EB);-webkit-background-clip:text;background-clip:text;color:transparent}
.dx-end p{margin:18px auto 0;max-width:46ch;color:#F7F7F2c0}
.dx-end .btn{margin-top:30px;background:#fff;color:var(--ink)}
.dx-end .btn:hover{background:#F0E99B}
.dx-alt{margin-top:26px;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 14px;font-size:15px;color:#F7F7F2b8}
.dx-alt a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border-radius:99px;border:1px solid #ffffff33;color:#fff;text-decoration:none;font-weight:600}
.dx-alt a:hover{background:#ffffff14}
.dx-alt a[hidden]{display:none}
.dx-end .small{display:block;margin-top:18px;font-size:13.5px;color:#F7F7F29a}
.door .qa{padding:clamp(56px,8vw,112px) 0}
.door .dx-sec+.dx-sec{padding-top:0}
.door .pn{padding-top:clamp(40px,5vw,72px)}

@media (max-width:900px){
  .dx-hero .wrap{grid-template-columns:1fr}
  .dx-photo{order:-1;aspect-ratio:4/4.2;border-radius:28px}
  .dx-hero{padding-top:92px}
  .dx-glance .wrap,.dx-put,.dx-two,.dx-photoblk{grid-template-columns:1fr}
  .dx-steps{grid-template-columns:1fr}
  .dx-steps li::after{display:none}
  .dx-photoblk figure{order:-1}
  .dx-cta .btn{width:100%;justify-content:center}
}
@media (prefers-reduced-motion:reduce){.dx-cta .btn,.dx-end .btn{transition:none}.dx-cta .btn:hover,.dx-end .btn:hover{translate:none}}

.dx-g b .nw{font:inherit;letter-spacing:inherit;color:inherit;line-height:inherit}

/* who's behind Apeks: a proof page needs a name */
.dx-whocard{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(20px,3vw,44px);align-items:start;padding:clamp(26px,3.4vw,48px);border-radius:32px;background:linear-gradient(160deg,#FFFFFF,#F4F1FB);box-shadow:inset 0 1px 0 #fff,0 50px 80px -52px #191A2077,0 0 0 1px #191A2010}
.dx-wm{display:grid;place-items:center;width:clamp(64px,7vw,92px);height:clamp(64px,7vw,92px);border-radius:50%;background:#191A20;color:#fff}
.dx-wm svg{width:55%;height:45%}
.dx-whocard h2{font-size:clamp(30px,3.4vw,48px)}
.dx-whocard ul{list-style:none;margin:clamp(20px,2.4vw,30px) 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,28px)}
.dx-whocard li{display:grid;gap:4px;padding-top:14px;border-top:1.5px solid #191A2018}
.dx-whocard li b{font-size:clamp(18px,1.6vw,22px);letter-spacing:-.03em}
.dx-whocard li span{font-size:15.5px;line-height:1.5;color:#45464d}
.dx-whocard a{color:#2C52D0;font-weight:700;overflow-wrap:anywhere}
@media (max-width:900px){.dx-whocard{grid-template-columns:1fr}.dx-whocard ul{grid-template-columns:1fr}}

.dx-tbl{margin-top:clamp(24px,3vw,40px);overflow-x:auto}.dx-tbl table{width:100%;border-collapse:collapse;font-size:16px;background:#fff;border-radius:20px;box-shadow:0 0 0 1px #191A2012}.dx-tbl caption{caption-side:top;text-align:left;padding:0 0 12px;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}.dx-tbl th,.dx-tbl td{padding:14px 18px;text-align:left;border-bottom:1px solid #191A2012}.dx-tbl thead th{font-size:13px;color:var(--mute);font-weight:700}.dx-tbl tbody th{font-weight:600}.dx-tbl td{color:var(--mute);font-variant-numeric:tabular-nums}.dx-tbl tr:last-child th,.dx-tbl tr:last-child td{border-bottom:0}.dx-tbl .note{margin-top:12px;font-size:14px;color:var(--mute)}
