/* FRAMElogic Academy: the app showcase (/app, the home page app section, the founding page app block).
   Phones are drawn in HTML and CSS. Every size inside a phone is in cqw (container width), so a
   screen scales like a picture: 100cqw is the phone's outer width, and the screens are designed on
   a 400 unit grid (4 units = 1cqw). */

/* ============ the device ============ */
.sc-phone{position:relative;container-type:inline-size;aspect-ratio:400/824;width:100%}
.sc-phone .dv{position:absolute;inset:0;border-radius:17cqw;padding:1.25cqw;
  background:linear-gradient(135deg,#7A7E77 0%,#2E312D 20%,#575B55 44%,#1E201D 66%,#636760 86%,#8E928A 100%);
  box-shadow:0 0 0 .3cqw rgba(0,0,0,.6),0 18cqw 26cqw -12cqw rgba(0,0,0,.62),0 5cqw 9cqw -4cqw rgba(0,0,0,.4)}
.sc-phone .dv::before,.sc-phone .dv::after{content:"";position:absolute;left:-.7cqw;width:.9cqw;border-radius:.5cqw 0 0 .5cqw;background:linear-gradient(90deg,#1E201D,#5C6059)}
.sc-phone .dv::before{top:25cqw;height:7.5cqw}
.sc-phone .dv::after{top:39cqw;height:30cqw;background:linear-gradient(90deg,rgba(30,32,29,1),rgba(92,96,89,1)) 0 0/100% 13cqw no-repeat,linear-gradient(90deg,#1E201D,#5C6059) 0 17cqw/100% 13cqw no-repeat;border-radius:0}
.sc-phone .bz{position:relative;height:100%;border-radius:15.75cqw;background:#030403;padding:2.5cqw;box-shadow:inset 0 0 0 .3cqw #262826}
.sc-phone .bz::after{content:"";position:absolute;right:-2cqw;top:43cqw;width:.9cqw;height:20cqw;border-radius:0 .5cqw .5cqw 0;background:linear-gradient(90deg,#5C6059,#1E201D)}
.sc-phone .scr{position:relative;height:100%;border-radius:13.25cqw;overflow:hidden;isolation:isolate;display:flex;flex-direction:column;
  background:var(--paper);color:var(--text);font-family:var(--body);text-align:left;-webkit-font-smoothing:antialiased;line-height:1.3}
.sc-phone .scr::before{content:"";position:absolute;z-index:40;top:2.9cqw;left:50%;width:29cqw;height:8.4cqw;margin-left:-14.5cqw;border-radius:9cqw;
  background:radial-gradient(circle at 79% 50%,#1B2633 0 1.25cqw,#0A0E13 1.3cqw 1.9cqw,#000 2cqw)}
.sc-phone .scr::after{content:"";position:absolute;inset:0;z-index:45;pointer-events:none;border-radius:inherit;
  background:linear-gradient(118deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,0) 26%,rgba(255,255,255,0) 74%,rgba(255,255,255,.035) 100%);box-shadow:inset 0 0 0 .25cqw rgba(0,0,0,.18)}
.sc-phone svg{display:block}
.ap-hi{position:absolute;z-index:41;bottom:2.1cqw;left:50%;width:33.5cqw;height:1.25cqw;margin-left:-16.75cqw;border-radius:1cqw;background:var(--ink);opacity:.88}
.ap-hi.lt{background:#fff;opacity:.92}

/* ============ inside the app: shared parts ============ */
.ap-sb{flex:none;position:relative;z-index:5;height:13.6cqw;display:flex;align-items:center;justify-content:space-between;padding:1.4cqw 7.4cqw 0 9.8cqw;font:600 3.75cqw/1 var(--body);letter-spacing:-.01em;color:var(--ink)}
.ap-sb.lt{color:#fff}
.ap-sb .ap-si{width:17cqw;height:auto}
.ap-body{flex:1;min-height:0;overflow:hidden;position:relative;z-index:1;padding:1.2cqw 4.6cqw 3cqw;display:flex;flex-direction:column;gap:3cqw}
.ap-k{display:block;font:600 2.45cqw/1.2 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.ap-k.g{color:var(--gold-text)}
.ap-h1{display:block;margin-top:1.4cqw;font:600 8cqw/1.02 var(--serif);letter-spacing:-.022em;color:var(--ink)}
.ap-h1 em{font-style:italic;color:var(--gold-text)}
.ap-h2{display:block;font:600 4.6cqw/1.16 var(--serif);letter-spacing:-.01em;color:var(--ink)}
.ap-h2.lg{font-size:5.7cqw;line-height:1.1}
.ap-top{display:flex;justify-content:space-between;align-items:flex-end;gap:3cqw;padding-top:.6cqw}
.ap-tb{flex:none;width:6.2cqw;height:6.2cqw;color:var(--ink);margin-bottom:1cqw}
.ap-av{flex:none;width:10.5cqw;height:10.5cqw;border-radius:50%;display:grid;place-items:center;background:var(--night);color:var(--gold-light);font:italic 600 4.6cqw/1 var(--serif);box-shadow:0 0 0 .5cqw var(--paper),0 0 0 .8cqw rgba(201,154,91,.65)}
.ap-av.sm{width:7.6cqw;height:7.6cqw;font-size:3.5cqw;background:var(--sage-2);color:var(--green-deep);box-shadow:none}
.ap-av.coach{background:var(--night);color:var(--gold-light);box-shadow:0 0 0 .45cqw #fff,0 0 0 .75cqw var(--gold)}
.ap-row-h{display:flex;justify-content:space-between;align-items:baseline;gap:2cqw}
.ap-card{background:#fff;border-radius:4.6cqw;padding:3.6cqw;box-shadow:inset 0 0 0 .25cqw var(--line),0 1.2cqw 3.2cqw -2.2cqw rgba(29,41,32,.28)}
.ap-code{display:inline-grid;place-items:center;white-space:nowrap;font:600 2.3cqw/1 var(--mono);letter-spacing:.1em;color:var(--oxblood);padding:0 0 .9cqw;box-shadow:inset 0 -.25cqw 0 rgba(139,46,42,.45)}
.ap-pill{display:inline-flex;align-items:center;white-space:nowrap;font:600 2.25cqw/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:1.4cqw 2.1cqw;border-radius:9cqw;background:var(--sage);color:var(--green-deep)}
.ap-pill.bk{background:var(--night);color:var(--gold-light)}
.ap-pill.ox{background:var(--oxblood);color:#fff}
.ap-pill.lt{background:rgba(255,255,255,.92);color:var(--ink)}
.ap-list{display:grid;background:#fff;border-radius:4.6cqw;box-shadow:inset 0 0 0 .25cqw var(--line);overflow:hidden}
.ap-li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:3cqw;padding:2.9cqw 3.6cqw}
.ap-list .ap-li+.ap-li{box-shadow:0 -.25cqw 0 var(--line)}
.ap-ic{width:8.6cqw;height:8.6cqw;border-radius:2.4cqw;display:grid;place-items:center;background:var(--sage);color:var(--green-deep)}
.ap-ic svg{width:5cqw;height:5cqw}
.ap-li .t{display:grid;gap:.7cqw;min-width:0}
.ap-li .t b{font:600 3.45cqw/1.2 var(--body);color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ap-li .t small{font:400 2.8cqw/1.25 var(--body);color:var(--mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ap-li .ch{width:4cqw;height:4cqw;color:var(--mute-2)}
.ap-li .ap-code{width:16.5cqw;padding-inline:0;justify-self:start}
.ap-tabs{flex:none;position:relative;z-index:4;display:grid;grid-template-columns:repeat(5,1fr);padding:2.3cqw 1.6cqw 8.2cqw;background:rgba(251,250,246,.96);box-shadow:0 -.25cqw 0 var(--line)}
.ap-tabs span{position:relative;display:grid;justify-items:center;gap:1.1cqw;font:500 2.4cqw/1 var(--body);color:var(--mute-2)}
.ap-tabs svg{width:6.2cqw;height:6.2cqw}
.ap-s-home [data-t=home],.ap-s-learn [data-t=learn],.ap-s-tool [data-t=tool],.ap-s-comm [data-t=comm],.ap-s-shop [data-t=shop]{color:var(--ink);font-weight:600}
.ap-s-home [data-t=home]::before,.ap-s-learn [data-t=learn]::before,.ap-s-tool [data-t=tool]::before,.ap-s-comm [data-t=comm]::before,.ap-s-shop [data-t=shop]::before{content:"";position:absolute;top:-2.3cqw;width:6cqw;height:.55cqw;border-radius:0 0 1cqw 1cqw;background:var(--gold-deep)}
.ap-nav{flex:none;position:relative;z-index:3;display:grid;grid-template-columns:7cqw minmax(0,1fr) 7cqw;align-items:center;gap:2cqw;padding:.6cqw 4cqw 3cqw;background:var(--paper);box-shadow:0 .25cqw 0 var(--line)}
.ap-nav .b{width:6.2cqw;height:6.2cqw;color:var(--ink)}
.ap-nav .b:last-child{justify-self:end;color:var(--mute)}
.ap-nav .t{display:grid;justify-items:center;text-align:center;gap:1cqw;min-width:0}
.ap-nav .t b{display:inline-flex;align-items:center;gap:1.6cqw;font:600 3.6cqw/1.15 var(--body);color:var(--ink);white-space:nowrap}
.ap-nav .t small{font:600 2.3cqw/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.lv{flex:none;display:inline-block;width:2.2cqw;height:2.2cqw;border-radius:50%;background:var(--oxblood);box-shadow:0 0 0 0 rgba(139,46,42,.45);animation:sc-pulse 2.4s ease-out infinite}
@keyframes sc-pulse{0%{box-shadow:0 0 0 0 rgba(139,46,42,.45)}70%{box-shadow:0 0 0 2.4cqw rgba(139,46,42,0)}100%{box-shadow:0 0 0 0 rgba(139,46,42,0)}}

/* ---------- home ---------- */
.ap-goal{position:relative;display:grid;grid-template-columns:26cqw minmax(0,1fr);gap:4cqw;align-items:center;padding:3.4cqw 4cqw 3.4cqw 3.2cqw;border-radius:5cqw;
  background:radial-gradient(120% 150% at 0% 0%,#2D4234,#15211A 62%);color:#fff;box-shadow:0 3cqw 6cqw -3cqw rgba(21,33,26,.65)}
.ap-goal::after{content:"";position:absolute;inset:.9cqw;border-radius:4.2cqw;border:.25cqw solid rgba(238,214,166,.16);pointer-events:none}
.ap-dial{position:relative;width:26cqw;aspect-ratio:1}
.ap-dial svg{width:100%;height:100%}
.ap-dial .tk line{stroke:rgba(247,246,240,.24);stroke-width:1;stroke-linecap:round}
.ap-dial .tk line.on{stroke:var(--gold-light)}
.ap-dial .tr{fill:none;stroke:rgba(247,246,240,.1);stroke-width:2.2}
.ap-dial .pg{fill:none;stroke:var(--gold);stroke-width:2.6;stroke-linecap:round}
.ap-dial .n{position:absolute;inset:0;display:grid;place-content:center;text-align:center;font:600 2.1cqw/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.66)}
.ap-dial .n b{display:block;margin-bottom:.8cqw;font:500 8.6cqw/1 var(--serif);letter-spacing:-.03em;color:#fff;text-transform:none}
.ap-goal-t{display:grid;gap:1.3cqw;min-width:0}
.ap-goal-t .ap-k{color:var(--gold-light)}
.ap-goal-t b{font:600 4.6cqw/1.14 var(--serif);color:#fff}
.ap-goal-t>span:last-child{font:400 2.85cqw/1.35 var(--body);color:rgba(255,255,255,.7)}
.ap-road{display:grid;gap:1.4cqw;padding:0 .6cqw}
.ap-road svg{width:100%;height:auto;overflow:visible}
.ap-road .bl{stroke:var(--line-2);stroke-width:1}
.ap-road .pl{stroke:var(--gold);stroke-width:1.6}
.ap-road .tk line{stroke:rgba(29,41,32,.3);stroke-width:1;stroke-linecap:round}
.ap-road .tk line.on{stroke:var(--gold-deep)}
.ap-road .hr{fill:rgba(201,154,91,.18);stroke:var(--gold);stroke-width:1}
.ap-road .hd{fill:var(--gold-deep)}
.ap-road .rn text{font:italic 600 10.5px var(--serif);fill:var(--ink);text-anchor:middle}
.ap-sos{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:3cqw;padding:3.2cqw 3.8cqw;border-radius:4.6cqw;color:#fff;
  background:linear-gradient(180deg,#983430,#782522);box-shadow:0 2.6cqw 5cqw -2.6cqw rgba(120,37,34,.75),inset 0 .25cqw 0 rgba(255,255,255,.14)}
.ap-sos .lv{background:#F6E2D2;animation-name:sc-pulse-lt}
@keyframes sc-pulse-lt{0%{box-shadow:0 0 0 0 rgba(246,226,210,.55)}70%{box-shadow:0 0 0 2.4cqw rgba(246,226,210,0)}100%{box-shadow:0 0 0 0 rgba(246,226,210,0)}}
.ap-sos .t{display:grid;gap:.7cqw;min-width:0}
.ap-sos b{font:600 3.6cqw/1.15 var(--body)}
.ap-sos small{font:400 2.8cqw/1.3 var(--body);color:rgba(255,255,255,.8)}
.ap-sos .ch{width:4cqw;height:4cqw;color:rgba(255,255,255,.85)}

/* ---------- the on shoot thread ---------- */
.ap-thread{flex:1;min-height:0;overflow:hidden;padding:2.6cqw 4.2cqw 2cqw;display:flex;flex-direction:column;gap:2.3cqw;background:linear-gradient(180deg,var(--paper),#F1F0E8)}
.ap-post{display:grid;gap:1.9cqw;padding:3cqw;border-radius:4.6cqw;background:#fff;box-shadow:inset 0 0 0 .25cqw var(--line),0 1.6cqw 4cqw -2.6cqw rgba(29,41,32,.32)}
.ap-who{display:flex;align-items:center;gap:2cqw;min-width:0}
.ap-who b{font:600 3.3cqw/1 var(--body);color:var(--ink)}
.ap-tag{margin-left:auto;display:inline-flex;align-items:center;gap:1cqw;white-space:nowrap;font:600 2.25cqw/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--oxblood);background:var(--oxblood-soft);padding:1.2cqw 1.9cqw;border-radius:9cqw}
.ap-tag svg{width:2.8cqw;height:2.8cqw}
.ap-post p,.ap-msg p{font:400 3.25cqw/1.42 var(--body);color:var(--text)}
.ap-shot{position:relative;overflow:hidden;border-radius:3cqw;aspect-ratio:16/10;background:#D9D8D2}
.ap-shot img{width:100%;height:100%;object-fit:cover}
.ap-shot.blown .fr{position:absolute;width:150%;aspect-ratio:1600/1068;left:-48%;top:-16%}
.ap-shot.blown img{filter:brightness(1.1) contrast(.86) saturate(.8)}
.ap-shot .w{position:absolute;border-radius:.3cqw;background:#fff;box-shadow:0 0 2.6cqw 1.4cqw rgba(255,255,255,.92)}
.ap-shot .w::after{--zb:calc(.62cqw * 1.41421);content:"";position:absolute;inset:0;opacity:.7;background:repeating-linear-gradient(135deg,rgba(20,24,21,.3) 0 .16cqw,transparent .16cqw .62cqw) 0 0/var(--zb) var(--zb);animation:sc-zebra 1.6s linear infinite}
@keyframes sc-zebra{to{background-position:var(--zb) 0}}
.ap-shot .w1{left:63%;top:38.4%;width:21.6%;height:16.8%}
.ap-shot .w2{left:94.2%;top:32.3%;width:3.2%;height:9.8%}
.ap-shot .w3{left:55.6%;top:43.6%;width:2.8%;height:18.8%}
.ap-shot .ex{position:absolute;left:2cqw;bottom:2cqw;font:600 2.15cqw/1 var(--mono);letter-spacing:.06em;color:#fff;background:rgba(14,18,15,.66);padding:1.3cqw 1.7cqw;border-radius:1.2cqw}
.ap-msg{display:grid;grid-template-columns:7.6cqw minmax(0,1fr);gap:2.2cqw;align-items:start}
.ap-msg .bd{display:grid;gap:1.3cqw;padding:2.6cqw 3.1cqw;border-radius:1.2cqw 4.2cqw 4.2cqw 4.2cqw;background:#fff;box-shadow:inset 0 0 0 .25cqw var(--line)}
.ap-msg:has(.coach) .bd{background:var(--gold-wash);box-shadow:inset 0 0 0 .25cqw rgba(201,154,91,.4)}
.ap-msg .ap-who b{font-size:3.1cqw}
.ap-badge{display:inline-flex;align-items:center;font:700 2.05cqw/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-light);background:var(--night);padding:1.05cqw 1.7cqw;border-radius:9cqw}
.ap-solved{display:grid;grid-template-columns:13cqw minmax(0,1fr);gap:3cqw;align-items:center;padding:2.2cqw 3.4cqw 2.2cqw 2.2cqw;border-radius:4.6cqw;color:#fff;
  background:radial-gradient(120% 160% at 0 0,#2D4234,#15211A 65%);box-shadow:0 2.4cqw 5cqw -2.6cqw rgba(21,33,26,.65)}
.ap-solved .th{position:relative;aspect-ratio:1;border-radius:2.6cqw;overflow:hidden;box-shadow:0 0 0 .3cqw rgba(238,214,166,.45)}
.ap-solved .th picture{position:absolute;width:300%;left:-170%;top:-30%}
.ap-solved .th img{width:100%;height:auto}
.ap-solved .t{display:grid;gap:.9cqw;min-width:0}
.ap-solved .sv{display:inline-flex;align-items:center;gap:1cqw;font:700 2.25cqw/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-light)}
.ap-solved .sv svg{width:3cqw;height:3cqw}
.ap-solved b{font:600 3.9cqw/1.15 var(--serif);color:#fff}
.ap-solved small{font:400 2.6cqw/1.3 var(--body);color:rgba(255,255,255,.7)}
.ap-compose{flex:none;position:relative;z-index:3;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:2.4cqw;padding:2.4cqw 4cqw 8.6cqw;background:rgba(251,250,246,.97);box-shadow:0 -.25cqw 0 var(--line)}
.ap-compose>svg{width:6.4cqw;height:6.4cqw;color:var(--mute)}
.ap-compose .in{font:400 3.1cqw/1 var(--body);color:var(--mute-2);background:#fff;border-radius:9cqw;padding:2.6cqw 3.6cqw;box-shadow:inset 0 0 0 .25cqw var(--line-2);white-space:nowrap;overflow:hidden}
.ap-compose .sd{width:8cqw;height:8cqw;border-radius:50%;display:grid;place-items:center;background:var(--night);color:var(--gold-light)}
.ap-compose .sd svg{width:4.4cqw;height:4.4cqw}
/* the thread plays out once it scrolls into view */
.js .rv .ap-s-shoot .m1,.js .rv .ap-s-shoot .m2,.js .rv .ap-s-shoot .m3{transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js .rv:not(.in) .ap-s-shoot .m1,.js .rv:not(.in) .ap-s-shoot .m2,.js .rv:not(.in) .ap-s-shoot .m3{opacity:0;transform:translateY(4cqw)}
.js .rv .ap-s-shoot .m1{transition-delay:.6s}.js .rv .ap-s-shoot .m2{transition-delay:1.05s}.js .rv .ap-s-shoot .m3{transition-delay:1.55s}

/* ---------- lock screen ---------- */
.ap-s-lock{background:#0C120F;color:#fff}
.ap-s-lock .wall{position:absolute;inset:0;z-index:0}
.ap-s-lock .wall img{width:100%;height:100%;object-fit:cover;object-position:44% 50%;filter:brightness(.8) saturate(.95)}
.ap-s-lock .wall::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,10,8,.42),rgba(6,10,8,0) 34%,rgba(6,10,8,.12) 56%,rgba(6,10,8,.66))}
.ap-lk-top{position:relative;z-index:2;display:grid;justify-items:center;text-align:center;padding-top:.6cqw}
.ap-lk-top .lk{width:4.4cqw;height:4.4cqw;color:#fff;opacity:.9}
.ap-lk-top .d{margin-top:2.2cqw;font:500 4.1cqw/1 var(--body);color:rgba(255,255,255,.94);text-shadow:0 .5cqw 2cqw rgba(0,0,0,.35)}
.ap-lk-top .tm{margin-top:1cqw;font:500 24cqw/.92 var(--serif);letter-spacing:-.035em;color:#FBF6EA;text-shadow:0 1cqw 6cqw rgba(0,0,0,.3);font-variant-numeric:lining-nums}
.ap-notes{position:relative;z-index:2;margin-top:auto;display:grid;gap:2cqw;padding:0 3cqw 3.4cqw}
.ap-note{display:grid;grid-template-columns:9.4cqw minmax(0,1fr);gap:2.6cqw;align-items:start;padding:3cqw 3.2cqw;border-radius:5.2cqw;color:var(--ink);
  background:rgba(246,244,238,.8);-webkit-backdrop-filter:blur(5cqw) saturate(170%);backdrop-filter:blur(5cqw) saturate(170%);box-shadow:0 2cqw 6cqw -2cqw rgba(0,0,0,.4)}
.ap-note .ai{width:9.4cqw;height:9.4cqw;border-radius:2.2cqw}
.ap-note .c{display:grid;gap:.75cqw;min-width:0}
.ap-note .h{display:flex;justify-content:space-between;align-items:baseline;gap:2cqw}
.ap-note .h b{font:600 2.8cqw/1 var(--body);color:#3A443C}
.ap-note .h small{font:400 2.6cqw/1 var(--body);color:#4F5850}
.ap-note .tt{font:600 3.2cqw/1.25 var(--body);color:var(--ink)}
.ap-note .x{font:400 3.05cqw/1.3 var(--body);color:#2C352E;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.ap-note.n2{margin:0 2.4cqw;padding-block:2.4cqw;opacity:.9}
.ap-note.n2 .x{-webkit-line-clamp:1}
.ap-lk-bot{position:relative;z-index:2;display:flex;justify-content:space-between;padding:1.6cqw 11cqw 9.4cqw}
.ap-lk-bot span{width:12.6cqw;height:12.6cqw;border-radius:50%;display:grid;place-items:center;color:#fff;background:rgba(18,24,20,.5);-webkit-backdrop-filter:blur(4cqw);backdrop-filter:blur(4cqw)}
.ap-lk-bot svg{width:5.4cqw;height:5.4cqw}
.js .rv .ap-s-lock .ap-note{transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js .rv:not(.in) .ap-s-lock .ap-note{opacity:0;transform:translateY(-5cqw) scale(.97)}
.js .rv .ap-s-lock .n2{transition-delay:.3s}.js .rv .ap-s-lock .n1{transition-delay:1.1s}.js .rv .ap-s-lock .n0{transition-delay:.7s}

/* ---------- learn ---------- */
.ap-track{display:grid;gap:2.2cqw}
.ap-bar{height:1.1cqw;border-radius:1cqw;background:var(--sage-2);overflow:hidden}
.ap-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold-deep),var(--gold))}
.ap-phs{display:grid;grid-template-columns:repeat(4,1fr);font:italic 600 3.2cqw/1 var(--serif);color:#7B827B}
.ap-phs .dn{color:var(--gold-text)}
.ap-phs .nw{color:var(--ink)}
.ap-list.cls .ap-li{padding-block:2.5cqw}
.ap-reps{display:grid;grid-template-columns:1fr 1fr;gap:2.6cqw}
.ap-rep{display:grid;gap:.8cqw;min-width:0}
.ap-rep .ph{position:relative;aspect-ratio:16/10;border-radius:3cqw;overflow:hidden;margin-bottom:.8cqw}
.ap-rep img{width:100%;height:100%;object-fit:cover}
.ap-rep .pl{position:absolute;left:2cqw;bottom:2cqw;width:7cqw;height:7cqw;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.9);color:var(--ink)}
.ap-rep .pl svg{width:3.4cqw;height:3.4cqw;margin-left:.4cqw}
.ap-rep b{font:600 3.05cqw/1.2 var(--body);color:var(--ink)}
.ap-rep small{font:400 2.65cqw/1.25 var(--body);color:var(--mute)}

/* ---------- community ---------- */
.ap-seg{display:grid;grid-template-columns:repeat(3,1fr);padding:.8cqw;border-radius:9cqw;background:var(--sage)}
.ap-seg span{text-align:center;padding:2cqw 0;border-radius:9cqw;font:500 3cqw/1 var(--body);color:var(--mute)}
.ap-seg .on{background:#fff;color:var(--ink);font-weight:600;box-shadow:0 .5cqw 1.6cqw -.5cqw rgba(29,41,32,.3)}
.ap-pin{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:2.4cqw;padding:2.5cqw 3.4cqw;border-radius:3.6cqw;background:var(--oxblood-soft);color:var(--oxblood);box-shadow:inset 0 0 0 .25cqw rgba(139,46,42,.18)}
.ap-pin b{font:600 3.1cqw/1.2 var(--body);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ap-pin .ch{width:3.8cqw;height:3.8cqw}
.ap-shot.crit{aspect-ratio:1600/1068}
.ap-shot .mk{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.ap-shot .mk path,.sc-plate .mk path{fill:none;stroke:#fff;stroke-width:1.1;vector-effect:non-scaling-stroke}
.ap-shot .mk .gd,.sc-plate .mk .gd{stroke-dasharray:4 3}
.ap-shot .lt{position:absolute;width:5cqw;height:5cqw;margin:-2.5cqw 0 0 -2.5cqw;border-radius:50%;display:grid;place-items:center;background:var(--gold-light);color:var(--ink);font:italic 600 3.1cqw/1 var(--serif);box-shadow:0 0 0 .3cqw rgba(29,41,32,.45)}
.ap-rooms .ap-body{gap:0}
.ap-rooms .ap-top{margin-bottom:3cqw}
.ap-room{display:grid;grid-template-columns:8.6cqw minmax(0,1fr) auto;align-items:center;gap:3cqw;padding:2.8cqw .6cqw;box-shadow:0 .25cqw 0 var(--line)}
.ap-room .ri{width:8.6cqw;height:8.6cqw;border-radius:2.4cqw;display:grid;place-items:center;background:var(--sage);color:var(--green-deep)}
.ap-room .ri svg{width:4.6cqw;height:4.6cqw}
.ap-room .t{display:grid;gap:.8cqw;min-width:0}
.ap-room b{font:600 3.35cqw/1.2 var(--body);color:var(--ink)}
.ap-room small{font:400 2.8cqw/1.3 var(--body);color:var(--mute);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ap-room .un{width:1.9cqw;height:1.9cqw;border-radius:50%;background:var(--gold-deep)}
.ap-room.em{margin-bottom:1.6cqw;padding:3.2cqw;border-radius:4.6cqw;color:#fff;background:linear-gradient(180deg,#983430,#782522);box-shadow:0 2.4cqw 5cqw -2.6cqw rgba(120,37,34,.7)}
.ap-room.em .ri{background:rgba(255,255,255,.14);color:#fff}
.ap-room.em b{color:#fff}
.ap-room.em small{color:rgba(255,255,255,.82);white-space:normal}
.ap-room.em .ap-pill{background:rgba(255,255,255,.16);color:#fff}
.ap-mentor{margin-top:3.4cqw;display:grid;grid-template-columns:8.6cqw minmax(0,1fr) auto;align-items:center;gap:3cqw;padding:3.2cqw;border-radius:4.6cqw;background:var(--night);color:#fff}
.ap-mentor .ri{width:8.6cqw;height:8.6cqw;border-radius:2.4cqw;display:grid;place-items:center;background:rgba(238,214,166,.14);color:var(--gold-light)}
.ap-mentor .ri svg{width:5cqw;height:5cqw}
.ap-mentor .t{display:grid;gap:.8cqw;min-width:0}
.ap-mentor b{font:600 3.35cqw/1.2 var(--body);color:#fff}
.ap-mentor small{font:400 2.8cqw/1.3 var(--body);color:rgba(255,255,255,.7)}
.ap-mentor .ch{width:4cqw;height:4cqw;color:var(--gold-light)}

/* ---------- replay ---------- */
.ap-video{position:relative;flex:none;z-index:2;aspect-ratio:16/9;overflow:hidden;background:#000}
.ap-video img{width:100%;height:100%;object-fit:cover;filter:brightness(.8)}
.ap-video .pl{position:absolute;left:50%;top:50%;width:13cqw;height:13cqw;margin:-6.5cqw 0 0 -6.5cqw;border-radius:50%;display:grid;place-items:center;color:#fff;background:rgba(255,255,255,.16);-webkit-backdrop-filter:blur(3cqw);backdrop-filter:blur(3cqw);box-shadow:inset 0 0 0 .3cqw rgba(255,255,255,.6)}
.ap-video .pl svg{width:5.4cqw;height:5.4cqw;margin-left:.7cqw}
.ap-video .sc{position:absolute;left:4cqw;right:4cqw;bottom:3cqw;height:.7cqw;border-radius:1cqw;background:rgba(255,255,255,.32)}
.ap-video .sc i{position:absolute;left:0;top:0;bottom:0;width:38%;border-radius:inherit;background:var(--gold-light)}
.ap-video .sc i::after{content:"";position:absolute;right:-1.4cqw;top:50%;width:2.8cqw;height:2.8cqw;margin-top:-1.4cqw;border-radius:50%;background:#fff}
.ap-replay .ap-body{padding-top:4cqw;gap:2.2cqw}
.ap-rh{display:flex;align-items:center;gap:2.4cqw}
.ap-k.ap-sec{margin-top:1.6cqw;padding-top:3cqw;box-shadow:0 -.25cqw 0 var(--line)}
.ap-chs{display:grid}
.ap-chs span{display:flex;align-items:center;gap:2.2cqw;padding:2.3cqw 0;font:400 3.15cqw/1.25 var(--body);color:var(--text);box-shadow:0 .25cqw 0 var(--line)}
.ap-chs span:last-child{box-shadow:none}
.ap-chs span::before{content:"";flex:none;width:1.8cqw;height:1.8cqw;margin:0 .8cqw;border-radius:50%;box-shadow:inset 0 0 0 .25cqw #7B827B}
.ap-chs .on{color:var(--ink);font-weight:600}
.ap-chs .on::before{display:none}
.ap-chs .on svg{flex:none;width:3.4cqw;height:3.4cqw;color:var(--gold-deep)}

/* ---------- shop ---------- */
.ap-chips{display:flex;gap:1.6cqw;overflow:hidden}
.ap-chips span{flex:none;padding:1.9cqw 3cqw;border-radius:9cqw;font:500 2.9cqw/1 var(--body);color:var(--mute);box-shadow:inset 0 0 0 .25cqw var(--line-2)}
.ap-chips .on{background:var(--night);color:#fff;box-shadow:none}
.ap-feat{position:relative;flex:none;aspect-ratio:16/11;border-radius:4.6cqw;overflow:hidden}
.ap-feat img{width:100%;height:100%;object-fit:cover}
.ap-feat .ov{position:absolute;left:0;right:0;bottom:0;display:grid;gap:1.2cqw;padding:12cqw 4cqw 3.6cqw;background:linear-gradient(180deg,rgba(10,14,11,0),rgba(10,14,11,.84))}
.ap-feat .ov .ap-k{color:var(--gold-light)}
.ap-feat .ov b{font:600 5.4cqw/1.1 var(--serif);color:#fff}
.ap-feat .ap-pill{position:absolute;top:3cqw;right:3cqw}
.ap-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.8cqw}
.ap-prod{display:grid;gap:1.1cqw;min-width:0}
.ap-prod .ph{position:relative;aspect-ratio:1;border-radius:3.6cqw;overflow:hidden;margin-bottom:.8cqw}
.ap-prod img{width:100%;height:100%;object-fit:cover}
.ap-prod .split .raw{position:absolute;inset:0;clip-path:inset(0 50% 0 0)}
.ap-prod .split .raw img{filter:saturate(.4) contrast(.8) brightness(.9) sepia(.14)}
.ap-prod .split::after{content:"";position:absolute;top:0;bottom:0;left:50%;width:.3cqw;margin-left:-.15cqw;background:#fff;box-shadow:0 0 1.2cqw rgba(0,0,0,.35)}
.ap-prod b{font:600 3.25cqw/1.2 var(--body);color:var(--ink)}
.ap-s-shop .ap-body>.ap-li{background:#fff;border-radius:4cqw;box-shadow:inset 0 0 0 .25cqw var(--line)}

/* ---------- pricing calculator ---------- */
.ap-calc .ap-body{padding-top:3.4cqw;gap:2.6cqw}
.ap-pk{display:flex;justify-content:space-between;align-items:center;gap:2cqw}
.ap-pk .t{display:grid;gap:1.1cqw;min-width:0}
.ap-pk b{font:600 3.6cqw/1.2 var(--body);color:var(--ink)}
.ap-sq{display:flex;align-items:baseline;gap:1.6cqw;margin:2.2cqw 0 3cqw}
.ap-sq b{font:500 11cqw/1 var(--serif);letter-spacing:-.03em;color:var(--ink);font-variant-numeric:lining-nums tabular-nums}
.ap-sq span{font:600 2.7cqw/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.ap-slide{position:relative;height:5.4cqw}
.ap-slide::before{content:"";position:absolute;left:0;right:0;top:50%;height:.45cqw;margin-top:-.22cqw;border-radius:1cqw;background:var(--sage-2)}
.ap-slide i{position:absolute;left:0;top:50%;width:var(--pos,25%);height:.65cqw;margin-top:-.32cqw;border-radius:1cqw;background:var(--gold-deep)}
.ap-slide>b{position:absolute;top:50%;width:.3cqw;height:2.4cqw;margin:-1.2cqw 0 0 -.15cqw;background:rgba(29,41,32,.3)}
.ap-slide .kn{position:absolute;left:var(--pos,25%);top:50%;width:5.4cqw;height:5.4cqw;margin:-2.7cqw 0 0 -2.7cqw;border-radius:50%;background:#fff;box-shadow:0 .6cqw 1.8cqw rgba(29,41,32,.32),inset 0 0 0 .25cqw var(--line-2)}
.ap-scale{display:flex;justify-content:space-between;margin-top:1.6cqw;font:500 2.2cqw/1 var(--mono);color:var(--mute-2)}
.ap-addon{display:flex;justify-content:space-between;align-items:center;gap:3cqw}
.ap-addon .t{display:grid;gap:.9cqw;min-width:0}
.ap-addon b{font:600 3.5cqw/1.2 var(--body);color:var(--ink)}
.ap-addon small{font:400 2.75cqw/1.3 var(--body);color:var(--mute)}
.ap-sw{flex:none;position:relative;width:12.6cqw;height:7.6cqw;border-radius:9cqw;background:var(--sage-2);transition:background .3s ease}
.ap-sw i{position:absolute;top:.8cqw;left:.8cqw;width:6cqw;height:6cqw;border-radius:50%;background:#fff;box-shadow:0 .5cqw 1.2cqw rgba(0,0,0,.25);transition:transform .3s var(--ease)}
.ap-sw.on{background:var(--green-deep)}
.ap-sw.on i{transform:translateX(5cqw)}
.ap-quote{position:relative;display:grid;gap:1.7cqw;padding:4cqw;border-radius:5cqw;color:#fff;background:radial-gradient(130% 120% at 100% 0%,#2D4234,#15211A 60%);box-shadow:0 3cqw 6cqw -3cqw rgba(21,33,26,.65)}
.ap-quote::after{content:"";position:absolute;inset:.9cqw;border-radius:4.2cqw;border:.25cqw solid rgba(238,214,166,.16);pointer-events:none}
.ap-quote .ap-k{color:var(--gold-light)}
.ap-quote .ap-row-h .ap-k:last-child{color:rgba(255,255,255,.55)}
.ap-quote .tot{margin:.6cqw 0 1cqw;font:500 13cqw/1 var(--serif);letter-spacing:-.03em;color:#fff;font-variant-numeric:lining-nums tabular-nums}
.ap-quote .ln{display:flex;justify-content:space-between;gap:2cqw;padding-top:1.7cqw;font:400 2.95cqw/1.3 var(--body);color:rgba(255,255,255,.74);box-shadow:0 -.25cqw 0 rgba(255,255,255,.1)}
.ap-quote .ln span:last-child{font-family:var(--mono);font-weight:600;color:#fff}
.ap-btns{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:2cqw;margin-top:1.8cqw}
.ap-btns span{display:flex;align-items:center;justify-content:center;gap:1.4cqw;padding:2.7cqw 0;border-radius:9cqw;font:600 2.9cqw/1 var(--display);color:#fff;background:rgba(255,255,255,.1);box-shadow:inset 0 0 0 .25cqw rgba(255,255,255,.2)}
.ap-btns .pr{color:#1E170C;background:linear-gradient(180deg,#E0B97E,var(--gold-deep));box-shadow:none}
.ap-btns svg{width:3.6cqw;height:3.6cqw}

/* ---------- the member area in a phone browser (home) ---------- */
.sc-web .dv{box-shadow:0 0 0 .3cqw rgba(0,0,0,.45),0 16cqw 24cqw -12cqw rgba(29,41,32,.5),0 4cqw 8cqw -4cqw rgba(29,41,32,.3)}
.ap-web .scroll{flex:1;min-height:0;overflow:hidden;padding:2px 5cqw 12px;display:grid;gap:11px;align-content:start}
.ap-url{flex:none;position:relative;z-index:3;padding:2.6cqw 5cqw 8.6cqw;background:rgba(251,250,246,.97);box-shadow:0 -.25cqw 0 var(--line)}
.ap-url>span{display:flex;align-items:center;justify-content:center;gap:1.6cqw;padding:2.7cqw 0;border-radius:9cqw;background:#fff;box-shadow:inset 0 0 0 .25cqw var(--line-2),0 1.2cqw 3cqw -2cqw rgba(29,41,32,.35);font:500 3.4cqw/1 var(--body);letter-spacing:-.005em;color:var(--ink)}
.ap-url b{font-weight:500}
.ap-url svg{flex:none;width:3.4cqw;height:3.4cqw;color:var(--mute)}

/* ============ phone groups ============ */
.sc-stage{position:relative}
.sc-group{position:relative;width:100%;max-width:820px;margin-inline:auto;aspect-ratio:820/700}
.sc-group .sc-phone{position:absolute}
.sc-group .g-c{width:38%;left:31%;top:0;z-index:3}
.sc-group .g-l{width:31.5%;left:5%;top:12.5%;z-index:2}
.sc-group .g-r{width:31.5%;right:5%;top:12.5%;z-index:2}
.sc-group::after{content:"";position:absolute;z-index:0;left:14%;right:14%;bottom:-2%;height:9%;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.5),rgba(0,0,0,0));filter:blur(6px)}
.sc-halo{position:absolute;z-index:0;left:50%;top:46%;width:min(1040px,128%);aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none;opacity:.2;
  -webkit-mask-image:radial-gradient(closest-side,#000 60%,transparent);mask-image:radial-gradient(closest-side,#000 60%,transparent)}
.sc-halo img{width:100%;height:100%}
.sc-stage>.sc-group{z-index:1}
.sc-honest{display:flex;align-items:center;justify-content:center;gap:14px;margin:clamp(26px,3vw,36px) auto 0;max-width:820px;text-align:center;font:500 13.5px/1.5 var(--body);color:var(--mute)}
.sc-honest::before,.sc-honest::after{content:"";flex:1 1 30px;max-width:60px;height:1px;background:currentColor;opacity:.35}
.sc-dark .sc-honest,.sc-honest.on-dark{color:rgba(255,255,255,.66)}

/* ============ page sections ============ */
.sc-dark{position:relative;overflow:hidden;color:#fff;background:#101912}
.sc-dark h2,.sc-dark h3{color:#fff}
.sc-dark :focus-visible,.sc-card.dk :focus-visible{outline-color:var(--gold-light)}
.sc-spot,.sc-offer{scroll-margin-top:40px}
.sc-dark .lede{color:rgba(255,255,255,.74)}
.sc-dark em.gold,.sc-dark h1 em,.sc-dark h2 em{color:var(--gold-light)}
.sc-br{display:block}
.sc-kicker{display:inline-flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px 10px;line-height:1.3;font:600 12px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--gold-light)}
.sc-kicker .sep{display:inline-flex;align-items:center;gap:10px}
.sec-head.center .sc-kicker,.sc-hero .sc-kicker{justify-content:center}
.sc-kicker .sep::before{content:"";width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.7}
.sc-kicker .lv{width:7px;height:7px;background:var(--gold-light);animation:sc-pulse-page 2.4s ease-out infinite}
@keyframes sc-pulse-page{0%{box-shadow:0 0 0 0 rgba(238,214,166,.5)}70%{box-shadow:0 0 0 8px rgba(238,214,166,0)}100%{box-shadow:0 0 0 0 rgba(238,214,166,0)}}

/* /app hero */
.sc-hero{margin-top:-74px;padding-top:74px;background:radial-gradient(60% 46% at 50% 76%,rgba(201,154,91,.2),rgba(201,154,91,0) 72%),radial-gradient(900px 520px at 88% -8%,rgba(185,212,94,.07),transparent 60%),#0F1812}
.sc-hero .wrap{position:relative;z-index:1;padding-block:clamp(52px,7vw,96px) clamp(64px,8vw,110px);text-align:center}
.sc-hero h1{margin:20px auto 22px;max-width:15ch;color:#fff}
.sc-hero .lede{margin-inline:auto;max-width:58ch}
.sc-hero .hero-ctas{justify-content:center;margin:32px 0 18px}
.sc-plat{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;font:600 11.5px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.62)}
.sc-plat span{display:inline-flex;align-items:center;gap:8px}
.sc-plat span+span::before{content:"";width:4px;height:4px;border-radius:50%;background:var(--gold);opacity:.8;margin-right:10px}
.sc-hero .sc-stage{margin-top:clamp(44px,6vw,76px)}
.sc-hero .sc-group{max-width:900px;aspect-ratio:900/720}

/* the signature: help on the shoot */
.sc-spot{background:radial-gradient(46% 42% at 50% 58%,rgba(201,154,91,.17),rgba(201,154,91,0) 72%),radial-gradient(120% 80% at 50% 120%,rgba(139,46,42,.16),transparent 60%),#0A100C}
.sc-spot::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.35),transparent 22%,transparent 78%,rgba(0,0,0,.35))}
.sc-spot .wrap{position:relative;z-index:1}
.sc-spot .sec-head{max-width:820px;margin-inline:auto}
.sc-spot-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px) minmax(0,1fr);gap:clamp(28px,4.4vw,72px);align-items:center}
.sc-spot-phone{position:relative}
.sc-spot-phone .sc-phone{max-width:380px;margin-inline:auto}
.sc-spot-phone::before{content:"";position:absolute;left:50%;top:50%;width:150%;aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(201,154,91,.16),transparent);pointer-events:none}
.sc-beats{display:grid;align-self:center}
.sc-beat{display:grid;grid-template-columns:34px minmax(0,1fr);gap:4px 16px;padding:24px 0;border-top:1px solid rgba(238,214,166,.2)}
.sc-beat:last-child{border-bottom:1px solid rgba(238,214,166,.2)}
.sc-beat svg{grid-row:span 2;width:30px;height:30px;color:var(--gold-light);margin-top:2px}
.sc-beat h3{font:italic 600 clamp(24px,2.3vw,30px)/1.1 var(--serif);letter-spacing:-.01em;color:#fff}
.sc-beat p{font-size:15.5px;line-height:1.55;color:rgba(255,255,255,.72)}
.sc-lock{display:grid;justify-items:center;gap:22px;align-self:end}
.sc-lock .sc-phone{max-width:260px}
.sc-lock p{max-width:30ch;text-align:center;font-size:15px;line-height:1.55;color:rgba(255,255,255,.72)}
.sc-lock p b{display:block;margin-bottom:4px;font:italic 600 21px/1.2 var(--serif);color:#fff}

/* toolkit */
.sc-tool-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:clamp(32px,6vw,96px);align-items:center}
.sc-tool-grid .sc-phone{max-width:360px;margin-inline:auto;filter:drop-shadow(0 30px 40px rgba(29,41,32,.12))}
.sc-tool-grid .sc-phone .dv{box-shadow:0 0 0 .3cqw rgba(0,0,0,.45),0 16cqw 24cqw -12cqw rgba(29,41,32,.5),0 4cqw 8cqw -4cqw rgba(29,41,32,.3)}
.sc-calc{position:relative;padding:clamp(24px,3.4vw,40px);border-radius:var(--r-lg);background:#fff;box-shadow:inset 0 0 0 1px var(--line),0 30px 60px -40px rgba(29,41,32,.35)}
.sc-calc::before{content:"";position:absolute;inset:7px;border-radius:calc(var(--r-lg) - 6px);border:1px solid rgba(201,154,91,.22);pointer-events:none}
.sc-calc-h{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:22px}
.sc-calc-h h3{font-size:clamp(24px,2.4vw,30px)}
.sc-ex{flex:none;font:700 11px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--oxblood);background:var(--oxblood-soft);padding:7px 10px;border-radius:6px}
.sc-field{margin:0;padding:18px 0;border:0;border-top:1px solid var(--line);min-width:0}
.sc-lab{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px}
.sc-lab label,.sc-field legend{float:left;padding:0;font:700 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.sc-field legend{margin-bottom:14px}
.sc-field legend+*{clear:both}
.sc-lab output{font:600 clamp(26px,2.6vw,32px)/1 var(--serif);letter-spacing:-.02em;color:var(--ink);font-variant-numeric:lining-nums tabular-nums}
.sc-range{-webkit-appearance:none;appearance:none;display:block;width:100%;height:32px;margin:0;background:transparent;cursor:pointer;--pos:24.56%}
.sc-range::-webkit-slider-runnable-track{height:3px;border-radius:3px;background:linear-gradient(90deg,var(--gold-deep) var(--pos),var(--sage-2) var(--pos))}
.sc-range::-moz-range-track{height:3px;border-radius:3px;background:linear-gradient(90deg,var(--gold-deep) var(--pos),var(--sage-2) var(--pos))}
.sc-range::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;margin-top:-10.5px;border-radius:50%;background:#fff;border:0;box-shadow:0 3px 10px rgba(29,41,32,.28),inset 0 0 0 1px var(--line-2)}
.sc-range::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:#fff;border:0;box-shadow:0 3px 10px rgba(29,41,32,.28),inset 0 0 0 1px var(--line-2)}
.sc-range:focus-visible{outline:none}
.sc-range:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--ink)}
.sc-range:focus-visible::-moz-range-thumb{box-shadow:0 0 0 3px #fff,0 0 0 6px var(--ink)}
.sc-scale{display:flex;justify-content:space-between;margin-top:6px;font:500 12px/1 var(--mono);color:var(--mute)}
.sc-check{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center;cursor:pointer}
.sc-check input,.sc-seg input{position:absolute;opacity:0;width:1px;height:1px}
.sc-check .sw{position:relative;width:46px;height:28px;border-radius:99px;background:var(--sage-2);transition:background .25s ease}
.sc-check .sw::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.22);transition:transform .25s var(--ease)}
.sc-check input:checked+.sw{background:var(--green-deep)}
.sc-check input:checked+.sw::after{transform:translateX(18px)}
.sc-check input:focus-visible+.sw{outline:3px solid var(--ink);outline-offset:3px}
.sc-check .t{display:grid;gap:3px}
.sc-check b{font:600 16px/1.25 var(--body);color:var(--ink)}
.sc-check small{font-size:14px;color:var(--mute)}
.sc-seg{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;border:0}
.sc-seg label{position:relative;cursor:pointer}
.sc-seg span{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:99px;font:600 14px/1 var(--mono);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-2);transition:background .2s,color .2s,box-shadow .2s}
.sc-seg input:checked+span{background:var(--night);color:var(--gold-light);box-shadow:none}
.sc-seg input:focus-visible+span{outline:3px solid var(--ink);outline-offset:2px}
.sc-out{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 16px;padding:22px 0 4px;border-top:1px solid var(--line)}
.sc-out .k{font:700 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--oxblood)}
.sc-out b{font:600 clamp(48px,5.2vw,64px)/1 var(--serif);letter-spacing:-.03em;color:var(--ink);font-variant-numeric:lining-nums tabular-nums}
.sc-out span.sc-brk{flex-basis:100%;font-size:14.5px;color:var(--mute)}
.sc-note{margin-top:14px;font-size:13.5px;line-height:1.55;color:var(--mute)}
html:not(.js) .sc-calc .sc-live-only{display:none}
.sc-index{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:clamp(20px,3vw,40px);margin-top:clamp(56px,7vw,96px)}
.sc-ix{display:grid;grid-template-columns:26px minmax(0,1fr);gap:6px 14px;align-content:start;padding:22px 0 26px;border-top:1px solid var(--line-2)}
.sc-ix svg{grid-row:span 2;width:26px;height:26px;color:var(--gold-deep)}
.sc-ix h3{font:600 19px/1.2 var(--serif);color:var(--ink)}
.sc-ix p{font-size:14.5px;line-height:1.5;color:var(--mute)}
.sc-index-h{grid-column:1/-1;display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:16px}
.sc-index-h h3{font-size:clamp(22px,2.2vw,28px)}

/* community */
.sc-comm-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,320px);gap:clamp(32px,5vw,80px);align-items:center}
.sc-comm-grid .sc-phone{max-width:320px;margin-inline:auto}
.sc-comm-grid .sc-phone .dv{box-shadow:0 0 0 .3cqw rgba(0,0,0,.45),0 16cqw 24cqw -12cqw rgba(29,41,32,.5),0 4cqw 8cqw -4cqw rgba(29,41,32,.3)}
.sc-plate{margin:0;padding:clamp(18px,2.4vw,28px);border-radius:var(--r-lg);background:#fff;box-shadow:inset 0 0 0 1px var(--line),0 40px 70px -46px rgba(29,41,32,.45)}
.sc-plate-bar{display:flex;gap:4px;padding:4px;margin-bottom:18px;border-radius:99px;background:var(--sage);width:max-content;max-width:100%}
.sc-plate-bar span{padding:9px 16px;border-radius:99px;font:500 13.5px/1 var(--body);color:var(--mute)}
.sc-plate-bar .on{background:#fff;color:var(--ink);font-weight:600;box-shadow:0 2px 6px -2px rgba(29,41,32,.3)}
.sc-who{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.sc-who .av{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--sage-2);color:var(--green-deep);font:italic 600 15px/1 var(--serif)}
.sc-who .av.co{background:var(--night);color:var(--gold-light);box-shadow:0 0 0 2px #fff,0 0 0 3px var(--gold)}
.sc-who b{font:600 15px/1 var(--body);color:var(--ink)}
.sc-who .tag{font:700 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--oxblood);background:var(--oxblood-soft);padding:6px 9px;border-radius:99px}
.sc-who .badge{font:700 10.5px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-light);background:var(--night);padding:6px 9px;border-radius:99px}
.sc-plate .q{margin:12px 0 16px;font:400 17px/1.5 var(--body);color:var(--text)}
.sc-plate-img{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:1600/1068;background:#E6E5DF}
.sc-plate-img img{width:100%;height:100%;object-fit:cover}
.sc-plate .mk{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.sc-plate .mk path{stroke-width:1.25;filter:drop-shadow(0 0 1.5px rgba(0,0,0,.55))}
.sc-plate .lt{position:absolute;width:30px;height:30px;margin:-15px 0 0 -15px;border-radius:50%;display:grid;place-items:center;background:var(--gold-light);color:var(--ink);font:italic 600 17px/1 var(--serif);box-shadow:0 0 0 1.5px rgba(29,41,32,.55),0 6px 14px -4px rgba(0,0,0,.4)}
.sc-plate figcaption{display:grid;gap:14px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}
.sc-notes{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.sc-notes li{display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;font-size:15.5px;line-height:1.5;color:var(--text)}
.sc-notes i{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font:italic 600 15px/1 var(--serif);color:var(--gold-ink);box-shadow:inset 0 0 0 1px rgba(168,119,53,.55)}
.sc-notes b{font-weight:600;color:var(--ink)}
.sc-verdict{font:italic 600 19px/1.3 var(--serif);color:var(--ink)}
.sc-feats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:clamp(20px,3vw,40px);margin-top:clamp(48px,6vw,80px)}
.sc-feat{padding-top:20px;border-top:1px solid var(--line-2);display:grid;gap:8px;align-content:start}
.sc-feat svg{width:26px;height:26px;color:var(--gold-deep);margin-bottom:6px}
.sc-feat h3{font:600 20px/1.2 var(--serif)}
.sc-feat p{font-size:15px;line-height:1.55;color:var(--mute)}

/* courses and the marketplace */
.sc-two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,2.4vw,28px)}
.sc-card{position:relative;display:flex;flex-direction:column;overflow:hidden;border-radius:28px;padding:clamp(28px,3.6vw,48px) clamp(24px,3.6vw,48px) 0;background:#fff;box-shadow:inset 0 0 0 1px var(--line)}
.sc-card.dk{background:radial-gradient(90% 70% at 50% 100%,rgba(201,154,91,.16),transparent 70%),var(--night);box-shadow:none}
.sc-card.dk h3,.sc-card.dk .sc-list li{color:#fff}
.sc-card.dk p{color:rgba(255,255,255,.72)}
.sc-card h3{margin:14px 0 12px}
.sc-card p{color:var(--mute);max-width:46ch}
.sc-list{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:8px}
.sc-list li{display:flex;gap:10px;align-items:baseline;font-size:15px;color:var(--ink)}
.sc-list li::before{content:"";flex:none;width:14px;height:1px;background:var(--gold-deep);transform:translateY(-4px)}
.sc-peek{position:relative;margin-top:clamp(28px,3.6vw,44px);height:clamp(320px,36vw,500px);overflow:hidden;-webkit-mask-image:linear-gradient(#000 78%,transparent);mask-image:linear-gradient(#000 78%,transparent)}
.sc-peek .sc-phone{width:min(72%,300px);margin:0 auto}
.sc-peek .sc-phone .dv{box-shadow:0 0 0 .3cqw rgba(0,0,0,.45),0 8cqw 16cqw -8cqw rgba(29,41,32,.45)}
.sc-card.dk .sc-peek .sc-phone .dv{box-shadow:0 0 0 .3cqw rgba(0,0,0,.6),0 8cqw 16cqw -8cqw rgba(0,0,0,.7)}

/* the founding block on /app */
.sc-offer .plans.two{align-items:stretch}
.sc-offer .window{max-width:860px;margin-inline:auto}

/* home: the app section */
.sc-home{background:radial-gradient(55% 42% at 50% 62%,rgba(201,154,91,.17),rgba(201,154,91,0) 72%),radial-gradient(120% 70% at 50% 120%,rgba(139,46,42,.14),transparent 60%),#0D1510}
.sc-home .sec-head{max-width:860px;margin-inline:auto}
.sc-home .sc-stage{margin-top:clamp(8px,2vw,24px)}
.sc-points{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:clamp(18px,2.6vw,36px);margin-top:clamp(48px,6vw,80px)}
.sc-pt{display:grid;gap:8px;align-content:start;padding-top:20px;border-top:1px solid rgba(238,214,166,.22)}
.sc-pt svg{width:28px;height:28px;color:var(--gold-light);margin-bottom:6px}
.sc-pt h3{font:600 20px/1.2 var(--serif);color:#fff}
.sc-pt p{font-size:15px;line-height:1.55;color:rgba(255,255,255,.7)}
.sc-pt.lead h3{font-style:italic;color:var(--gold-light)}
.sc-ctas{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:clamp(40px,5vw,56px)}

/* the track page: a slim app band, the shoot phone rising from the bottom edge */
.sc-band{padding-top:clamp(48px,6vw,76px);background:radial-gradient(50% 90% at 80% 100%,rgba(201,154,91,.2),transparent 70%),radial-gradient(120% 70% at 50% 130%,rgba(139,46,42,.14),transparent 60%),#0F1812}
.sc-band .wrap{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,600px) minmax(0,340px);justify-content:center;gap:clamp(28px,8vw,140px);align-items:stretch}
.sc-band-copy{display:grid;gap:16px;justify-items:start;align-self:center;padding-bottom:clamp(48px,6vw,76px)}
.sc-band-copy .h-md{font-size:clamp(30px,3.6vw,46px)}
.sc-band-copy p{max-width:52ch;font-size:16.5px;line-height:1.6;color:rgba(255,255,255,.74)}
.sc-band-copy .btn{margin-top:6px}
/* the phone is anchored to the bottom, so the reply, the tip and the Solved card always show */
.sc-band-dev{position:relative;display:flex;flex-direction:column;justify-content:flex-end;height:clamp(360px,36vw,470px);overflow:hidden;-webkit-mask-image:linear-gradient(transparent,#000 22%);mask-image:linear-gradient(transparent,#000 22%)}
.sc-band-dev .sc-phone{flex:none;width:min(300px,100%);margin-inline:auto}

/* founding: the app block */
.sc-found .sc-found-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(30px,4vw,60px);align-items:center}
.sc-found .sc-group{max-width:680px;width:min(680px,100%)}
@media (min-width:601px){
  .sc-found .sc-group{aspect-ratio:820/760}
  .sc-found .sc-group .g-c{width:44%;left:28%}
  .sc-found .sc-group .g-l{width:33%;left:0;top:13%}
  .sc-found .sc-group .g-r{width:33%;right:0;top:13%}
}
.sc-found .sc-stage{margin-right:clamp(-40px,calc((1180px - 100vw) / 2),0px)}
.page-hero+.sc-found{box-shadow:inset 0 1px 0 rgba(238,214,166,.14)}
.sc-found .sec-head{margin:0;max-width:none}
.sc-found .sc-ctas{justify-content:flex-start;margin-top:34px}
.sc-found .sc-honest{justify-content:flex-start;text-align:left;margin-left:0}
.sc-found .sc-honest::before,.sc-found .sc-honest::after{display:none}

/* ============ responsive ============ */
@media (max-width:1060px){
  .sc-spot-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px 48px}
  .sc-spot-phone{grid-column:1;grid-row:1 / span 2}
  .sc-beats{grid-column:2;grid-row:1}
  .sc-lock{grid-column:2;grid-row:2;align-self:start;grid-template-columns:minmax(0,170px) minmax(0,1fr);align-items:center;justify-items:start;gap:22px}
  .sc-lock p{text-align:left}
  .sc-index{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sc-comm-grid{grid-template-columns:minmax(0,1fr) minmax(0,280px);gap:36px}
  .sc-feats,.sc-points{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:26px}
  .sc-found .sc-found-grid{grid-template-columns:1fr}
  .sc-found .sc-group{max-width:640px}
}
@media (max-width:860px){
  .sc-band .wrap{grid-template-columns:minmax(0,1fr)}
  .sc-band-copy{padding-bottom:6px}
  .sc-band-dev{height:320px}
  .sc-band-dev .sc-phone{width:min(290px,80vw)}
  .sc-tool-grid{grid-template-columns:1fr}
  .sc-tool-grid .sc-phone{max-width:300px}
  .sc-comm-grid{grid-template-columns:1fr}
  .sc-comm-grid .sc-phone{max-width:280px}
  .sc-two{grid-template-columns:1fr}
  .sc-peek{height:clamp(300px,74vw,440px)}
}
@media (max-width:700px){
  .sc-spot-grid{grid-template-columns:1fr;gap:36px}
  .sc-spot-phone,.sc-beats,.sc-lock{grid-column:auto;grid-row:auto}
  .sc-spot-phone{order:-1}
  .sc-spot-phone .sc-phone{max-width:min(340px,82vw)}
  .sc-lock{grid-template-columns:minmax(0,150px) minmax(0,1fr);gap:18px}
  .sc-beat{grid-template-columns:28px minmax(0,1fr);padding:20px 0}
  .sc-beat svg{width:26px;height:26px}
  .sc-points,.sc-feats{grid-template-columns:1fr;row-gap:0}
  .sc-pt,.sc-feat{padding:18px 0 20px}
  .sc-index{grid-template-columns:1fr}
  .sc-ix{padding:18px 0 20px}
}
/* small screens: the phone group bleeds to the screen edges, the centre phone large */
@media (max-width:640px){
  .sc-group,.sc-hero .sc-group{width:calc(100% + var(--gutter) * 2);max-width:none;margin-inline:calc(var(--gutter) * -1);aspect-ratio:100/122;overflow:hidden}
  .sc-group .g-c{width:58%;left:21%;top:0}
  .sc-group .g-l{width:46%;left:-21%;top:9%}
  .sc-group .g-r{width:46%;right:-21%;top:9%;left:auto}
  .sc-group::after{bottom:0}
  .sc-calc-h{flex-wrap:wrap}
  .sc-plate-bar span{padding:8px 12px;font-size:13px}
  .sc-honest{font-size:13px}
  .sc-honest::before,.sc-honest::after{display:none}
}
@media (max-width:600px){
  .sc-home .sc-group,.sc-hero .sc-group{aspect-ratio:auto;width:min(86vw,330px);max-width:none;margin-inline:auto;overflow:visible}
  .sc-home .sc-group .g-l,.sc-home .sc-group .g-r,.sc-hero .sc-group .g-l,.sc-hero .sc-group .g-r{display:none}
  .sc-home .sc-group .g-c,.sc-hero .sc-group .g-c{position:relative;left:auto;right:auto;top:auto;width:100%}
  .sc-home .sc-group::after,.sc-hero .sc-group::after{left:6%;right:6%;bottom:-3%}
}
@media (max-width:520px){
  .sc-plat{gap:6px 16px;letter-spacing:.1em}
  .sc-plat span+span::before{display:none}
  .sc-kicker .sep::before{display:none}
  .sc-kicker .sep{flex-basis:100%}
  .sec-head.center .sc-kicker .sep,.sc-hero .sc-kicker .sep{justify-content:center}
}
@media (max-width:420px){
  .sc-lock{grid-template-columns:1fr;justify-items:center}
  .sc-lock .sc-phone{max-width:220px}
  .sc-lock p{text-align:center}
  .sc-plate{padding:14px}
  .sc-plate .lt{width:24px;height:24px;margin:-12px 0 0 -12px;font-size:14px}
  .sc-plate-bar{width:100%}
  .sc-plate-bar span{flex:1;text-align:center;padding:8px 6px;font-size:12.5px}
  .sc-card{border-radius:22px}
}

/* ============ the nav: six links ============ */
.nav-links a,.nav-cta .signin{white-space:nowrap}
@media (min-width:1061px){
  .nav-links{gap:2px}
  .nav-links a{padding:9px 11px;font-size:14px}
}
@media (min-width:1061px) and (max-width:1300px){
  .nav .wrap{gap:10px}
  .nav-links{gap:0}
  .nav-links a{padding:9px 8px;font-size:13.5px}
  .nav-cta{gap:4px}
  .nav-cta .signin{padding:9px 6px;font-size:13.5px}
  .nav-cta .btn-sm{padding:0 14px;font-size:13.5px}
}

/* ============ motion ============ */
@media (prefers-reduced-motion:reduce){
  .lv,.sc-kicker .lv,.ap-shot .w::after{animation:none!important}
  .js .rv .ap-s-shoot .m1,.js .rv .ap-s-shoot .m2,.js .rv .ap-s-shoot .m3,.js .rv .ap-s-lock .ap-note{opacity:1!important;transform:none!important;transition:none!important}
}
@media print{.sc-group,.sc-peek,.sc-halo{display:none}}
