/* successbyrx.com landing page. Productivity Stacks brand, same tokens as blog.successbyrx.com */
:root{
  --bg:#ffffff; --ink:#4d4d4d; --ink-strong:#2f3136; --soft:#6f7378; --faint:#8c9096;
  --line:#e6e8eb; --tint:#f5f9fb; --tint2:#f8f3fd;
  --sky:#00afef; --sky-text:#0079a8; --purple:#c457ff; --purple-text:#8a2fc2;
  --grad:linear-gradient(135deg,#00afef,#c457ff);
  --head:"Nunito","Century Gothic","Trebuchet MS",sans-serif;
  --body:"Lato","Open Sans","Segoe UI",sans-serif;
  color-scheme:light;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.65;overflow-x:hidden}
img{max-width:100%;height:auto}
a{color:var(--sky-text);text-underline-offset:3px}
a:hover{color:var(--purple-text)}
:focus-visible{outline:3px solid var(--sky);outline-offset:2px;border-radius:3px}
.wrap{max-width:1120px;margin:0 auto;padding-inline:20px}
.narrow{max-width:760px}
.bar{height:5px;background:var(--grad)}
h1,h2,h3{font-family:var(--head);color:var(--ink-strong);text-wrap:balance;margin:0}
p{margin:0 0 1em}
.kicker{font-family:var(--head);font-weight:800;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--purple-text);margin:0 0 10px}
section{scroll-margin-top:16px}

/* buttons */
.btn{display:inline-block;background:var(--ink-strong);color:#fff;text-decoration:none;font-family:var(--head);font-weight:800;font-size:17px;padding:14px 26px;border-radius:12px;transition:background .15s,transform .15s}
.btn:hover{color:#fff;background:#1c1e22;transform:translateY(-1px)}
.btn.grad{background:var(--grad)}
.btn.grad:hover{background:var(--grad);filter:brightness(1.06)}
.btn.ghost{background:transparent;color:var(--ink-strong);border:2px solid var(--line)}
.btn.ghost:hover{border-color:var(--sky);color:var(--ink-strong)}
.ctas{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* header */
header.site{border-bottom:1px solid var(--line)}
.head{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;padding-block:16px}
.home{display:flex;flex-direction:column;text-decoration:none;line-height:1.15}
.sbx{font-family:var(--head);font-weight:800;font-size:22px;color:var(--ink-strong)}
.now{font-size:13px;color:var(--soft)}
header nav{display:flex;flex-wrap:wrap;align-items:center;gap:4px 20px}
header nav a{font-family:var(--head);font-weight:700;font-size:15px;color:var(--ink);text-decoration:none;padding-block:4px;border-bottom:2px solid transparent}
header nav a:hover{color:var(--ink-strong);border-bottom-color:var(--sky)}
header nav a.join{color:var(--sky-text)}

/* hero */
.hero{padding-block:64px 56px;background:radial-gradient(900px 420px at 85% 0%,#c457ff14,transparent 70%),radial-gradient(700px 380px at 0% 100%,#00afef12,transparent 70%)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:48px;align-items:center}
.hero h1{font-size:clamp(34px,5.4vw,56px);font-weight:800;line-height:1.06;margin:0 0 20px}
.hero h1 .hl{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.lede{font-size:20px;line-height:1.6;color:var(--soft);max-width:58ch;margin:0 0 28px}
.hero-note{font-size:14.5px;color:var(--faint);margin:16px 0 0}
.dial{border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 50px #1f2a3a1a;padding:26px 24px 22px;position:relative;overflow:hidden}
.dial::before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:var(--grad)}
.dial h2{font-size:15px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--soft);margin:4px 0 16px}
.dial ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.dial li{display:flex;gap:14px;align-items:center;padding:12px 14px;border-radius:12px;background:var(--tint)}
.dial li:nth-child(2){background:#f3f0fd}
.dial li:nth-child(3){background:var(--tint2)}
.dot{flex:none;width:12px;height:12px;border-radius:50%;background:var(--sky)}
.dial li:nth-child(2) .dot{background:linear-gradient(135deg,#00afef,#c457ff)}
.dial li:nth-child(3) .dot{background:var(--purple)}
.dial b{display:block;font-family:var(--head);font-size:17px;color:var(--ink-strong);line-height:1.25}
.dial small{display:block;font-size:14px;color:var(--soft);line-height:1.4}
.dial .yes{margin:16px 0 0;font-family:var(--head);font-weight:800;color:var(--ink-strong);text-align:center;font-size:16px}

/* generic section */
.block{padding-block:72px}
.block.tint{background:var(--tint)}
.sec-head{max-width:720px;margin:0 0 36px}
.sec-head h2{font-size:clamp(28px,3.8vw,40px);font-weight:800;line-height:1.12;margin:0 0 14px}
.sec-head p{font-size:18.5px;color:var(--soft);margin:0}

/* three paths */
.paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.path{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 24px;display:flex;flex-direction:column}
.path .tag{align-self:flex-start;font-family:var(--head);font-weight:800;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;padding:5px 11px;border-radius:999px;background:#e6f7fd;color:var(--sky-text);margin:0 0 14px}
.path:nth-child(2) .tag{background:#f1ecfd;color:#5d47c9}
.path:nth-child(3) .tag{background:#f6ebfe;color:var(--purple-text)}
.path h3{font-size:21px;line-height:1.25;font-weight:800;margin:0 0 10px}
.path p{font-size:16px;color:var(--soft);margin:0}

/* inside the Doers */
.inside{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 28px;list-style:none;padding:0;margin:0 0 36px}
.inside li{display:flex;gap:16px;align-items:flex-start;padding:20px;border-radius:16px;background:#fff;border:1px solid var(--line)}
.ic{flex:none;width:44px;height:44px;border-radius:12px;background:var(--grad);display:grid;place-items:center}
.ic svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.inside h3{font-size:18px;line-height:1.3;font-weight:800;margin:2px 0 4px}
.inside p{font-size:15.5px;color:var(--soft);margin:0;line-height:1.55}
.cta-row{display:flex;flex-wrap:wrap;gap:14px 22px;align-items:center}
.cta-row p{margin:0;font-size:15px;color:var(--soft)}

/* translators */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}
.split h2{font-size:clamp(28px,3.6vw,38px);font-weight:800;line-height:1.15;margin:0 0 16px}
.split p{font-size:17.5px}
.members{border-radius:18px;background:var(--ink-strong);color:#e9ebee;padding:28px 26px}
.members .kicker{color:#7fd8f8}
.members h3{color:#fff;font-size:22px;font-weight:800;margin:0 0 10px}
.members p{font-size:16px;color:#c9cdd3}
.members a{color:#7fd8f8}
.members .btn{background:#fff;color:var(--ink-strong);margin-top:4px}
.members .btn:hover{background:#eef3f6;color:var(--ink-strong)}

/* newsletter */
.news{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,440px);gap:48px;align-items:center}
.news h2{font-size:clamp(28px,3.6vw,38px);font-weight:800;line-height:1.15;margin:0 0 14px}
.news p{font-size:17.5px;color:var(--soft)}
.form-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 10px 30px #1f2a3a12}
.form-card::before{content:"";display:block;height:5px;background:var(--grad)}
iframe.beehiiv-embed{display:block;width:100%;max-width:100%;height:320px;border:0;margin:0 auto}
.fine-print{font-size:13px;color:var(--faint);text-align:center;margin:0;padding:6px 18px 16px}

/* more links */
.more{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.more a{display:flex;flex-direction:column;gap:6px;padding:22px 24px;border-radius:16px;border:1.5px solid var(--line);text-decoration:none;color:var(--ink);background:#fff}
.more a:hover{border-color:var(--sky);color:var(--ink)}
.more b{font-family:var(--head);font-size:19px;color:var(--ink-strong)}
.more span{font-size:15.5px;color:var(--soft)}
.more i{font-style:normal;font-family:var(--head);font-weight:800;font-size:14.5px;color:var(--sky-text)}

/* closing band */
.close{padding-block:72px;text-align:center;background:var(--ink-strong);color:#e9ebee}
.close h2{color:#fff;font-size:clamp(28px,4vw,42px);font-weight:800;line-height:1.12;margin:0 auto 14px;max-width:22ch}
.close p{font-size:18px;color:#c9cdd3;max-width:56ch;margin:0 auto 28px}

/* footer */
footer.site{border-top:1px solid var(--line);background:var(--tint)}
.foot{padding-block:32px 40px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 32px;align-items:start}
.pslogo img{display:block;height:50px;width:auto}
.foot p{margin:0;font-size:15px;max-width:72ch}
.foot .fine{grid-column:2;font-size:13px;color:var(--faint)}

/* 404 */
.lost{padding-block:72px 64px}
.lost h1{font-size:clamp(32px,5vw,48px);font-weight:800;line-height:1.1;margin:0 0 16px}

@media (max-width:960px){
  .hero-grid,.split,.news{grid-template-columns:minmax(0,1fr);gap:36px}
  .paths{grid-template-columns:minmax(0,1fr)}
  .inside{grid-template-columns:minmax(0,1fr)}
  .news .form-card{max-width:520px}
}
@media (max-width:600px){
  body{font-size:16px}
  .hero{padding-block:44px 44px}
  .lede{font-size:18px}
  .block,.close{padding-block:52px}
  header nav{gap:4px 16px}
  header nav a.hide-sm{display:none}
  .more{grid-template-columns:minmax(0,1fr)}
  .btn{width:100%;text-align:center}
  .foot{grid-template-columns:minmax(0,1fr)}
  .foot .fine{grid-column:1}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* ---- v2: mascot + lighter text ---- */
.sprite{display:block;height:auto;width:auto;max-width:100%;user-select:none}
.center{text-align:center;margin-inline:auto}
.hero{padding-block:48px 40px}
.lede{font-size:21px;margin-bottom:28px}
.stage{position:relative;display:grid;place-items:center;min-height:420px}
.blob{position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#00afef33,#c457ff2e 60%,transparent 72%)}
.hero-sprite{position:relative;height:350px;width:auto;filter:drop-shadow(0 12px 18px #1f2a3a22)}
.chip{position:absolute;background:#fff;border:1px solid var(--line);box-shadow:0 8px 22px #1f2a3a1c;border-radius:999px;padding:8px 14px;font-family:var(--head);font-weight:800;font-size:15px;color:var(--ink-strong);white-space:nowrap}
.chip.c1{top:40px;left:2%}
.chip.c2{top:46%;right:0}
.chip.c3{bottom:34px;left:6%}
.sec-head.center{margin-bottom:28px}
.path{align-items:center;text-align:center;padding:24px 22px 26px}
.path .sprite{height:150px;margin:0 auto 14px}
.path .tag{align-self:center}
.path h3{font-size:20px}
.path p{font-size:16px}
.inside-wrap{display:grid;grid-template-columns:280px minmax(0,1fr);gap:40px;align-items:center}
.inside-side h2{font-size:clamp(28px,3.4vw,38px);font-weight:800;line-height:1.12;margin:0 0 18px}
.inside-side .sprite{height:190px}
.tiles{list-style:none;padding:0;margin:0 0 28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.tiles li{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:4px}
.tiles .ic{margin-bottom:8px;width:40px;height:40px}
.tiles b{font-family:var(--head);font-size:17px;color:var(--ink-strong);line-height:1.25}
.tiles span:not(.ic){font-size:14.5px;color:var(--soft);line-height:1.45}
.duo{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:28px;align-items:stretch}
.card-t{display:flex;gap:24px;align-items:center}
.card-t .sprite{height:200px;flex:none}
.card-t h2{font-size:clamp(26px,3.2vw,34px);font-weight:800;line-height:1.15;margin:0 0 10px}
.card-t p:not(.kicker){font-size:17px;margin:0}
.members{display:flex;gap:18px;align-items:center}
.members .sprite{height:150px;flex:none}
.members p:not(.kicker){margin-bottom:14px}
.news-copy{display:flex;gap:22px;align-items:center}
.news-copy .sprite{height:170px;flex:none}
.news-copy p:not(.kicker){margin:0}
.block.slim{padding-block:44px}
.close{padding-block:48px}
.close-grid{display:flex;align-items:center;justify-content:center;gap:36px;text-align:left}
.close-grid .sprite{height:190px;filter:drop-shadow(0 0 28px #c457ff55)}
.close h2{margin:0 0 6px;max-width:16ch}
.close p{margin:0 0 20px}
@media (max-width:960px){
  .inside-wrap{grid-template-columns:minmax(0,1fr);gap:20px}
  .inside-side{display:flex;flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:20px}
  .inside-side .sprite{height:130px}
  .tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .duo{grid-template-columns:minmax(0,1fr)}
  .paths{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
}
@media (max-width:720px){
  .paths{grid-template-columns:minmax(0,1fr)}
  .path{flex-direction:row;text-align:left;gap:16px;align-items:center;flex-wrap:wrap}
  .path .sprite{height:110px;margin:0}
  .path > div{flex:1}
}
@media (max-width:600px){
  .stage{min-height:360px}
  .blob{width:280px;height:280px}
  .hero-sprite{height:280px}
  .chip{font-size:13.5px;padding:7px 12px}
  .chip.c1{top:18px;left:0}
  .chip.c2{top:44%;right:0}
  .chip.c3{bottom:16px;left:4%}
  .tiles{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
  .tiles li{padding:14px}
  .card-t,.members,.news-copy{gap:14px}
  .card-t .sprite{height:130px}
  .members .sprite{height:110px}
  .news-copy .sprite{height:120px}
  .close-grid{flex-direction:column;text-align:center;gap:16px}
  .close h2{margin-inline:auto}
  .close-grid .sprite{height:150px}
}
.lost-grid{justify-content:flex-start}
.lost-grid .sprite{height:230px;filter:none}
.lost h1{max-width:18ch}
@media (max-width:960px){.inside-side h2{margin:0}}
@media (max-width:600px){.inside-side h2{font-size:26px}.inside-side .sprite{height:110px}}
/* hero portrait */
.portrait{position:relative;display:block;width:320px;aspect-ratio:600/753;padding:6px;border-radius:999px 999px 28px 28px;background:var(--grad);box-shadow:0 22px 50px #1f2a3a26}
.portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:999px 999px 23px 23px;background:#fff}
.stage{min-height:460px}
.blob{width:420px;height:420px}
.chip{z-index:2}
.chip.c1{top:52px;left:0}
.chip.c2{top:50%;right:-4px}
.chip.c3{bottom:40px;left:2%}
@media (max-width:600px){
  .stage{min-height:400px}
  .portrait{width:250px}
  .blob{width:300px;height:300px}
  .chip.c1{top:22px;left:0}
  .chip.c2{top:52%;right:0}
  .chip.c3{bottom:12px;left:2%}
}
/* hero portrait v2: transparent cutout, no frame, sits on the hero's bottom edge */
.hero{padding-bottom:0}
.hero-grid{align-items:end}
.hero-grid > div:first-child{padding-bottom:56px;align-self:center}
.stage{min-height:0;align-self:end;place-items:end center}
img.portrait{display:block;width:380px;max-width:100%;height:auto;padding:0;border-radius:0;background:none;box-shadow:none;aspect-ratio:auto;filter:drop-shadow(0 10px 30px #1f2a3a1f)}
.chip.c1{top:18%;left:0}
.chip.c2{top:40%;right:0}
.chip.c3{bottom:16%;left:2%}
@media (max-width:960px){.hero-grid > div:first-child{padding-bottom:0}.hero{padding-top:40px}}
@media (max-width:600px){
  img.portrait{width:280px}
  .chip.c1{top:12%;left:0}
  .chip.c2{top:38%;right:0}
  .chip.c3{bottom:14%;left:0}
}
img.portrait{-webkit-mask-image:linear-gradient(to left,transparent 0,#000 9%);mask-image:linear-gradient(to left,transparent 0,#000 9%)}
img.portrait{filter:none}
/* chips anchored to the photo, kept below the face */
.pic{position:relative;display:inline-block;line-height:0}
.pic .chip{line-height:1.3}
.pic .chip.c1{top:50%;left:-14%;right:auto;bottom:auto}
.pic .chip.c2{top:64%;right:-12%;left:auto;bottom:auto}
.pic .chip.c3{top:auto;bottom:7%;left:-8%;right:auto}
@media (max-width:600px){
  .pic .chip.c1{top:50%;left:-8%}
  .pic .chip.c2{top:66%;right:-6%}
  .pic .chip.c3{bottom:5%;left:-4%}
}
