:root {
  --ink: #f8f4ff;
  --muted: #b9b1c8;
  --night: #07060d;
  --panel: #100d19;
  --line: rgba(255,255,255,.12);
  --bam: #df32c8;
  --jack: #4a7dff;
  --aim: #8d5cff;
  --cream: #f4ede3;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--night); color: var(--ink); font-family: "DM Sans", sans-serif; line-height: 1.6; overflow-x: hidden; }
a { color: inherit; }
.ambient { position: fixed; width: 34rem; height: 34rem; filter: blur(120px); opacity: .13; border-radius: 50%; pointer-events: none; z-index: -1; }
.ambient-one { background: var(--bam); top: -12rem; right: -10rem; }
.ambient-two { background: var(--jack); left: -16rem; top: 40rem; }
.site-header { height: 78px; padding: 0 clamp(1.2rem, 4vw, 4.5rem); display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); position: sticky; top: 0; background: rgba(7,6,13,.84); backdrop-filter: blur(18px); z-index: 20; }
.brand { display: flex; gap: .85rem; align-items: center; font-family: "Space Grotesk", sans-serif; text-decoration: none; font-weight: 700; letter-spacing: .08em; }
.brand b, .brand-mark span { color: var(--bam); }
.brand-mark { display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid var(--line); border-radius: 50%; letter-spacing: -.08em; background: linear-gradient(135deg, rgba(74,125,255,.15), rgba(223,50,200,.15)); }
.brand-logo { width: 46px; height: 46px; border-radius: 50%; object-fit: cover; box-shadow: 0 0 20px rgba(223,50,200,.22); }
.site-header .brand-title{display:flex;flex-direction:column;align-items:flex-start;gap:.08rem;line-height:1}.site-header .brand-title>span{white-space:nowrap}.site-header .brand-title small{color:#ddd1e7;font:600 .56rem "DM Sans";letter-spacing:.2em;white-space:nowrap}
.site-header:not(.home-header) .brand>span:not(.brand-title){display:flex;flex-direction:column;align-items:flex-start;gap:.08rem;line-height:1}.site-header:not(.home-header) .brand>span:not(.brand-title)::after{content:"EAST WEST FRIENDS";color:#ddd1e7;font:600 .56rem "DM Sans";letter-spacing:.2em;white-space:nowrap}
.site-header:not(.home-header) .brand>span:not(.brand-title){display:block;line-height:1;white-space:nowrap}.site-header:not(.home-header) .brand>span:not(.brand-title)::after{display:block;margin-top:.18rem}
nav { display: flex; gap: clamp(1rem, 3vw, 2.5rem); }
nav a { text-decoration: none; color: var(--muted); font-size: .92rem; }
nav a:hover { color: white; }
.menu-button { display: none; }
.section-pad { padding: clamp(5rem, 10vw, 9rem) clamp(1.25rem, 8vw, 8rem); }
.hero { min-height: calc(100vh - 78px); display: flex; flex-direction: column; justify-content: center; position: relative; max-width: 1500px; margin: auto; }
.eyebrow, .section-kicker, .card-label { text-transform: uppercase; letter-spacing: .17em; font-size: .75rem; font-weight: 700; color: #c5b1ff; }
h1, h2, h3 { font-family: "Space Grotesk", sans-serif; margin: 0; line-height: 1.02; }
h1 { font-size: clamp(3.8rem, 9.4vw, 9.5rem); letter-spacing: -.075em; max-width: 1100px; }
h1 em { font-style: normal; color: transparent; -webkit-text-stroke: 1.5px rgba(255,255,255,.82); }
h2 { font-size: clamp(2.7rem, 5.5vw, 5.5rem); letter-spacing: -.055em; }
h3 { font-size: clamp(2rem, 3.2vw, 3.2rem); letter-spacing: -.04em; }
.hero-copy { max-width: 620px; color: var(--muted); font-size: clamp(1.05rem, 1.5vw, 1.35rem); margin: 2rem 0; }
.hero-actions { display: flex; flex-wrap: wrap; gap: .8rem; }
.button { display: inline-flex; align-items: center; justify-content: center; padding: .9rem 1.3rem; border-radius: 999px; text-decoration: none; font-weight: 700; border: 1px solid transparent; transition: transform .2s, background .2s; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: linear-gradient(100deg, var(--jack), var(--bam)); color: white; }
.button-light { background: var(--cream); color: #130e1c; }
.button-quiet { border-color: var(--line); color: var(--ink); }
.hero-orbit { position: absolute; width: clamp(250px, 32vw, 480px); aspect-ratio: 1; right: 4%; bottom: 9%; display: grid; place-items: center; opacity: .88; }
.orbit-ring { position: absolute; inset: 8%; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; box-shadow: inset 0 0 80px rgba(141,92,255,.13); animation: spin 22s linear infinite; }
.orbit-ring:before, .orbit-ring:after { content: ""; position: absolute; width: 16px; height: 16px; border-radius: 50%; background: var(--bam); top: 13%; left: 13%; box-shadow: 0 0 25px var(--bam); }
.orbit-ring:after { background: var(--jack); top: auto; left: auto; right: 7%; bottom: 20%; box-shadow: 0 0 25px var(--jack); }
.orbit-core { width: 38%; aspect-ratio: 1; display: grid; place-items: center; border-radius: 50%; background: radial-gradient(circle at 35% 30%, #aa78ff, #311b68 65%, #100a22); font: 700 clamp(1.5rem, 4vw, 3.5rem) "Space Grotesk"; box-shadow: 0 0 80px rgba(141,92,255,.4); overflow: hidden; }
.orbit-core img { width: 100%; height: 100%; object-fit: cover; }
.orbit-jack, .orbit-bam { position: absolute; font: 700 .78rem "Space Grotesk"; letter-spacing: .2em; }
.orbit-jack { left: 0; color: #8baaff; }
.orbit-bam { right: 0; color: #f185e4; }
@keyframes spin { to { transform: rotate(360deg); } }
.intro { display: grid; grid-template-columns: 1.1fr .9fr; gap: 8vw; align-items: end; border-top: 1px solid var(--line); }
.intro-copy { color: var(--muted); font-size: 1.12rem; }
.intro-copy strong { color: white; }
.duo-story { border-top: 1px solid var(--line); background: linear-gradient(110deg, rgba(74,125,255,.06), rgba(223,50,200,.06)); }
.duo-quote { max-width: 1050px; font: 600 clamp(2.4rem,5.2vw,5.2rem)/1.08 "Space Grotesk"; letter-spacing: -.05em; }
.duo-columns { margin-top: clamp(3rem,7vw,6rem); display:grid; grid-template-columns:1fr 1fr; gap:clamp(2rem,7vw,7rem); color:var(--muted); font-size:1.08rem; }
.section-heading { margin-bottom: 3rem; max-width: 760px; }
.section-heading > p:last-child { color: var(--muted); font-size: 1.1rem; }
.join { background: linear-gradient(180deg, transparent, rgba(141,92,255,.05), transparent); }
.join-grid { display: grid; grid-template-columns: repeat(2, 1fr); max-width: 1200px; gap: 1rem; }
.join-card { min-height: 540px; border: 1px solid var(--line); border-radius: 28px; padding: clamp(2rem, 4vw, 4rem); display: flex; flex-direction: column; align-items: flex-start; overflow: hidden; position: relative; }
.join-card:after { content: ""; position: absolute; width: 220px; height: 220px; border-radius: 50%; filter: blur(70px); right: -70px; top: -70px; opacity: .25; }
.full-community { background: linear-gradient(145deg, #121020, #0b0911); }
.full-community:after { background: var(--aim); }
.lite-community { background: linear-gradient(145deg, #1b1020, #111322); }
.lite-community:after { background: var(--bam); }
.join-card h3 { margin: 1rem 0; }
.join-card p, .join-card li { color: var(--muted); }
.join-card ul { padding-left: 1.2rem; margin: 1rem 0 2.5rem; }
.join-card .button { margin-top: auto; }
.join-card small { color: #938a9f; margin-top: .8rem; }
.creator-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.creator-card { border-top: 1px solid var(--line); padding: 3rem 0; display: grid; grid-template-columns: 120px 1fr; gap: 2rem; }
.creator-initial { width: 100px; height: 100px; display: grid; place-items: center; border-radius: 50%; font: 700 3rem "Space Grotesk"; }
.jack-card .creator-initial { background: rgba(74,125,255,.12); border: 1px solid rgba(74,125,255,.45); color: #8baaff; }
.bam-card .creator-initial { background: rgba(223,50,200,.12); border: 1px solid rgba(223,50,200,.45); color: #f185e4; }
.creator-card p { color: var(--muted); max-width: 470px; }
.social-links { display: flex; flex-wrap: wrap; gap: .6rem; }
.social-links a { text-decoration: none; border: 1px solid var(--line); border-radius: 999px; padding: .45rem .8rem; font-size: .88rem; }
.social-links a:hover { background: rgba(255,255,255,.08); }
.profile-button { margin-top: 1rem; }
.directory-callout { margin-top: 3rem; padding: clamp(2rem, 5vw, 4rem); border: 1px solid var(--line); border-radius: 28px; background: linear-gradient(110deg, rgba(141,92,255,.13), rgba(223,50,200,.07)); display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.directory-callout p:not(.section-kicker) { color: var(--muted); margin-bottom: 0; }
.blog { border-top: 1px solid var(--line); }
.blog-heading { max-width: none; display: flex; justify-content: space-between; gap: 3rem; align-items: end; }
.blog-heading > p { max-width: 430px; }
.post-grid { display: grid; grid-template-columns: 1.25fr 1fr 1fr; gap: 1rem; }
.post-card { padding: 2rem; min-height: 380px; border: 1px solid var(--line); border-radius: 24px; background: var(--panel); display: flex; flex-direction: column; cursor: pointer; transition: transform .2s, border-color .2s; }
.post-card:hover { transform: translateY(-4px); border-color: rgba(255,255,255,.3); }
.post-card:first-child { background: linear-gradient(150deg, rgba(74,125,255,.18), rgba(223,50,200,.11)); }
.post-date { color: #958ba4; font-size: .8rem; }
.post-card h3 { font-size: 2rem; margin: auto 0 1rem; }
.post-card p { color: var(--muted); }
.read-more { font-weight: 700; color: #d9caff; }
.closing { text-align: center; background: linear-gradient(120deg, #33206c, #771c69); }
.closing h2 { margin: 1rem auto 2rem; }
footer { padding: 2.5rem clamp(1.25rem, 8vw, 8rem); display: flex; justify-content: space-between; gap: 1rem; align-items: center; color: var(--muted); font-size: .86rem; }
dialog { max-width: 720px; width: calc(100% - 2rem); border: 1px solid var(--line); border-radius: 24px; background: #120f1a; color: var(--ink); padding: clamp(2rem, 5vw, 4rem); box-shadow: 0 30px 100px #000; }
dialog::backdrop { background: rgba(4,3,8,.8); backdrop-filter: blur(8px); }
.dialog-close { position: absolute; top: 1rem; right: 1rem; border: 0; background: transparent; color: white; font-size: 2rem; cursor: pointer; }
#dialog-content .post-body { color: var(--muted); white-space: pre-line; }
.reveal { opacity: 0; transform: translateY(24px); transition: opacity .75s, transform .75s; }
.reveal.visible { opacity: 1; transform: none; }
@media (max-width: 850px) {
  .menu-button { display: block; background: transparent; color: white; border: 1px solid var(--line); border-radius: 99px; padding: .5rem .8rem; }
  nav { display: none; position: absolute; top: 78px; left: 0; right: 0; background: #0b0911; padding: 1.5rem; flex-direction: column; border-bottom: 1px solid var(--line); }
  nav.open { display: flex; }
  .hero { padding-bottom: 20rem; }
  .hero-orbit { left: 50%; right: auto; transform: translateX(-50%); bottom: 2rem; width: 300px; }
  .intro, .join-grid, .creator-grid, .post-grid, .duo-columns { grid-template-columns: 1fr; }
  .join-card { min-height: 490px; }
  .blog-heading, footer, .directory-callout { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 520px) {
  .brand > span:last-child { display: none; }
  .creator-card { grid-template-columns: 1fr; }
  .creator-initial { width: 72px; height: 72px; font-size: 2rem; }
  .section-pad { padding-left: 1.15rem; padding-right: 1.15rem; }
}

/* Compact Jack N Bam landing page */
.simple-home{min-height:100vh}.simple-home .site-header{position:relative}.simple-home main{position:relative;z-index:1}.simple-hero{width:min(1180px,calc(100% - 3rem));margin:0 auto;padding:clamp(3rem,7vw,6rem) 0 2rem;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(2rem,6vw,6rem)}.simple-copy h1{margin:.8rem 0 1.25rem;font:700 clamp(3.2rem,6.8vw,6.6rem)/.9 "Space Grotesk";letter-spacing:-.07em}.simple-copy h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.76)}.simple-copy>p:last-child{max-width:650px;color:var(--muted);font-size:1.06rem;line-height:1.65}.simple-orbit{position:relative;aspect-ratio:1;width:min(390px,38vw);display:grid;place-items:center;justify-self:center}.simple-orbit .orbit-ring{inset:8%}.simple-orbit .orbit-core{z-index:2}.simple-orbit .orbit-jack{left:-8%;white-space:nowrap}.simple-orbit .orbit-bam{right:-15%;white-space:nowrap}.simple-join{width:min(1050px,calc(100% - 3rem));margin:0 auto;padding:2rem 0 2.5rem;border-top:1px solid var(--line)}.simple-section-heading{text-align:center;margin-bottom:1.2rem}.simple-section-heading h2{margin:.35rem 0;font-size:clamp(2rem,4vw,3.5rem)}.simple-join-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.simple-choice{display:block;padding:1.5rem 1.7rem;border:1px solid var(--line);border-radius:22px;color:white;text-decoration:none;background:rgba(255,255,255,.035);transition:.2s}.simple-choice:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.28)}.simple-choice>span{font-size:.62rem;letter-spacing:.18em;color:#bfa8d8}.simple-choice>strong{display:block;margin:.35rem 0;font:700 clamp(2rem,4vw,3rem) "Space Grotesk"}.simple-choice p{margin:.3rem 0 1rem;color:var(--muted)}.simple-choice b{font-size:.85rem}.aim-choice{box-shadow:inset 0 0 50px rgba(82,128,255,.07)}.lite-choice{box-shadow:inset 0 0 50px rgba(223,59,200,.07)}.simple-profiles{width:min(1050px,calc(100% - 3rem));margin:0 auto 3rem;padding:1.4rem 1.6rem;border:1px solid var(--line);border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.simple-profiles p{margin:0;color:var(--muted)}.simple-profiles div{display:flex;flex-wrap:wrap;gap:.7rem}.simple-profiles a{padding:.65rem .9rem;border-radius:999px;border:1px solid var(--line);color:white;text-decoration:none;font-size:.85rem}.simple-home footer{width:min(1180px,calc(100% - 3rem));margin:0 auto}
@media(max-width:780px){.simple-home .site-header{height:auto;min-height:78px;flex-wrap:wrap;padding-block:.8rem}.simple-home #main-nav{display:flex;position:static;width:100%;justify-content:center;gap:.8rem;background:none;border:0;padding:.5rem 0 0}.simple-home #main-nav a{font-size:.74rem}.simple-hero{grid-template-columns:1fr;text-align:center;padding-top:3rem}.simple-copy>p:last-child{margin-inline:auto}.simple-orbit{width:min(320px,80vw)}.simple-join-grid{grid-template-columns:1fr}.simple-profiles{flex-direction:column;text-align:center}.simple-profiles div{justify-content:center}}

/* Minimal front page */
.front-landing{min-height:100vh;padding:clamp(3rem,7vw,6rem) 1.5rem 1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;z-index:1}.front-logo{width:clamp(110px,14vw,180px);aspect-ratio:1;border-radius:50%;box-shadow:0 0 75px rgba(223,50,200,.3)}.front-landing h1{margin:.7rem 0 1rem;font:700 clamp(3rem,7vw,6.8rem)/.9 "Space Grotesk";letter-spacing:-.07em}.front-landing h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.75)}.front-intro{max-width:600px;margin:0 0 1.6rem;color:var(--muted);font-size:1.05rem}.front-links{display:flex;justify-content:center;flex-wrap:wrap;gap:.7rem}.front-links a{padding:.85rem 1.1rem;border:1px solid var(--line);border-radius:999px;color:white;text-decoration:none;font-weight:700;transition:.2s}.front-links a:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.35)}.join-links{margin-top:.8rem}.join-links a{padding:1rem 1.4rem;background:linear-gradient(105deg,#527cff,#d936c6);border:0;box-shadow:0 12px 35px rgba(118,62,211,.22)}.join-links a+ a{background:linear-gradient(105deg,#7337a8,#e46dba)}.front-landing footer{width:min(900px,100%);margin-top:clamp(2.5rem,7vh,5rem);padding:1.2rem 0 0;border-top:1px solid var(--line);font-size:.72rem}

/* Dedicated duo page */
.duo-page-hero{width:min(1180px,calc(100% - 3rem));margin:0 auto;padding:clamp(3rem,7vw,6rem) 0;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:clamp(2rem,7vw,7rem)}.duo-page-copy h1{margin:.8rem 0 1.4rem;font:700 clamp(3rem,6vw,6.2rem)/.92 "Space Grotesk";letter-spacing:-.065em}.duo-page-copy h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.75)}.duo-page-copy>p:last-child{color:var(--muted);font-size:1.08rem;line-height:1.7}.duo-orbit{position:relative;aspect-ratio:1;width:min(410px,40vw);display:grid;place-items:center;justify-self:center}.duo-orbit .orbit-ring{inset:8%}.duo-orbit .orbit-core{z-index:2}.duo-orbit .orbit-jack{left:-8%;white-space:nowrap}.duo-orbit .orbit-bam{right:-15%;white-space:nowrap}.duo-page-story{padding:clamp(3rem,7vw,6rem) max(1.5rem,calc((100vw - 1050px)/2));border-top:1px solid var(--line);background:rgba(255,255,255,.025)}.duo-page-story blockquote{margin:0 auto 2.5rem;max-width:900px;text-align:center;font:600 clamp(2rem,4vw,3.6rem)/1.2 "Space Grotesk"}.duo-page-story>div{display:grid;grid-template-columns:1fr 1fr;gap:2rem;color:var(--muted);line-height:1.75}.duo-page-story nav{display:flex;justify-content:center;gap:.8rem;margin-top:2rem}.duo-page-story nav a{padding:.8rem 1rem;border:1px solid var(--line);border-radius:999px;color:white;text-decoration:none}.duo-page .profile-nav a[aria-current="page"]{color:white}
@media(max-width:780px){.duo-page-hero{grid-template-columns:1fr;text-align:center}.duo-page-copy>p:last-child{margin-inline:auto}.duo-orbit{width:min(320px,80vw)}.duo-page-story>div{grid-template-columns:1fr}.duo-page-story nav{flex-wrap:wrap}}

/* Front-page orbit and tagline */
.front-tagline{margin:.3rem 0 .15rem;color:rgba(255,255,255,.72);font:600 clamp(.85rem,1.6vw,1.05rem) "Space Grotesk";letter-spacing:.18em;text-transform:uppercase}
.front-intro{margin-bottom:1rem}
.front-orbit{position:relative;width:min(290px,64vw);aspect-ratio:1;display:grid;place-items:center;margin:.25rem auto 1.25rem}
.front-orbit .orbit-ring{inset:8%}
.front-orbit .orbit-core{z-index:2}
.front-orbit .orbit-jack{left:-12%;white-space:nowrap}
.front-orbit .orbit-bam{right:-22%;white-space:nowrap}
@media(max-width:520px){.front-orbit{width:min(250px,68vw)}.front-orbit .orbit-jack{left:-16%}.front-orbit .orbit-bam{right:-28%}}

/* Refreshed home page */
.home-header .brand span{display:flex;flex-direction:column;align-items:flex-start}.home-header .brand small{margin-top:.12rem;color:#ddd1e7;font:600 .58rem "DM Sans";letter-spacing:.2em}.refreshed-home main{position:relative;z-index:1}.home-hero{width:min(1180px,calc(100% - 3rem));min-height:calc(100vh - 78px);margin:auto;padding:clamp(3rem,6vw,6rem) 0;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(2rem,6vw,6rem)}.home-copy h1{margin:0 0 1.2rem;font:600 clamp(3rem,6vw,6.3rem)/.98 "Space Grotesk";letter-spacing:-.055em}.home-copy h1 em{font-style:normal;background:linear-gradient(100deg,#7994ff 5%,#db43cd 55%,#ed85ba);-webkit-background-clip:text;background-clip:text;color:transparent}.home-copy>p{max-width:590px;color:var(--muted);font-size:1.08rem;line-height:1.65}.home-hero .front-orbit{width:min(410px,39vw);margin:0}.quick-joins{display:flex;gap:.8rem;margin-top:1.8rem}.quick-joins a{min-width:190px;padding:1rem 1.25rem;border-radius:18px;color:white;text-decoration:none;text-align:center;background:linear-gradient(110deg,#577bff,#cd3bd1);box-shadow:0 14px 36px rgba(101,68,225,.2)}.quick-joins a+ a{background:linear-gradient(110deg,#8736b9,#e36eb6)}.quick-joins strong,.quick-joins span{display:block}.quick-joins span{margin-top:.35rem;font-size:.82rem;color:rgba(255,255,255,.82)}.community-section,.suggestion-section,.schedule-main{width:min(1050px,calc(100% - 3rem));margin:0 auto;padding:clamp(4rem,7vw,7rem) 0}.community-section{border-top:1px solid var(--line)}.section-heading{text-align:center;margin-bottom:2rem}.section-heading h2,.suggestion-section h2{margin:.4rem 0;font-size:clamp(2.2rem,4vw,4rem)}.community-cards,.schedule-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.community-cards article,.schedule-grid article{padding:clamp(1.6rem,3vw,2.5rem);border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.035)}.community-cards article>span,.schedule-grid article>span{color:#c8b0dd;font-size:.7rem;text-transform:uppercase;letter-spacing:.16em}.community-cards h3{margin:.45rem 0;font-size:clamp(2.5rem,5vw,4rem)}.community-cards p,.schedule-grid p,.schedule-intro,.suggestion-section>div>p:last-child{color:var(--muted);line-height:1.7}.community-cards a,.schedule-actions a{display:inline-block;margin-top:1rem;padding:.9rem 1.1rem;border-radius:999px;color:white;text-decoration:none;background:linear-gradient(105deg,#527cff,#d936c6);font-weight:700}.suggestion-section{border-top:1px solid var(--line);display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,7vw,6rem);align-items:start}.suggestion-section h2{line-height:1.05}.suggestion-section form{display:grid;gap:1rem;padding:1.5rem;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.035)}.suggestion-section label{font-weight:700;font-size:.86rem}.suggestion-section label span,.form-note{font-weight:400;color:var(--muted)}.suggestion-section input,.suggestion-section textarea{display:block;width:100%;margin-top:.4rem;padding:.85rem;border:1px solid var(--line);border-radius:12px;background:#0c0914;color:white;font:inherit}.suggestion-section button{padding:1rem;border:0;border-radius:999px;color:white;background:linear-gradient(105deg,#527cff,#d936c6);font-weight:700;cursor:pointer}.form-note{margin:0;font-size:.75rem;line-height:1.4}.home-footer{width:min(1050px,calc(100% - 3rem));margin:0 auto}.schedule-main{min-height:calc(100vh - 170px)}.schedule-main h1{margin:.5rem 0;font-size:clamp(3rem,7vw,6rem)}.schedule-intro{max-width:700px;margin-bottom:2rem}.schedule-grid h2{font-size:clamp(1.7rem,3vw,2.5rem)}.schedule-actions{display:flex;gap:.7rem}.schedule-page .profile-nav a[aria-current="page"]{color:white}
@media(max-width:900px){.home-header{height:auto;min-height:78px;flex-wrap:wrap;padding-block:.8rem}.home-header .profile-nav{width:100%;overflow-x:auto;padding:.65rem 0 .1rem;justify-content:flex-start}.home-header .profile-nav a{white-space:nowrap}.home-hero{grid-template-columns:1fr;text-align:center}.home-copy>p{margin-inline:auto}.quick-joins{justify-content:center}.home-hero .front-orbit{width:min(350px,75vw);justify-self:center}.community-cards,.schedule-grid,.suggestion-section{grid-template-columns:1fr}}
@media(max-width:560px){.quick-joins{flex-direction:column}.quick-joins a{min-width:0}.home-copy h1{font-size:clamp(2.8rem,13vw,4rem)}.home-hero .front-orbit{width:min(280px,75vw)}}

/* Stronger Jack/Bambi color balance and compact home layout */
.refreshed-home{--jack:#3478ff;--bam:#ff28bf}.refreshed-home .ambient-one{background:#0c42b8;opacity:.23}.refreshed-home .ambient-two{background:#d10086;opacity:.2}.brand-name{display:inline!important;white-space:nowrap;font:700 1rem "Space Grotesk";letter-spacing:.09em}.brand-name i,.brand-name strong{font-style:normal}.brand-name i{color:#6ea0ff}.brand-name b{color:#fff}.brand-name strong{color:#ff43c5}.home-header .brand>span{gap:0}.compact-hero{min-height:auto;padding:clamp(2rem,4vw,3.5rem) 0;grid-template-columns:1.18fr .82fr;align-items:center}.compact-hero .home-copy h1{font-size:clamp(2.8rem,5.1vw,5.2rem);margin-bottom:.75rem}.compact-hero .community-section{width:100%;padding:.2rem 0 0;border:0}.compact-hero .section-heading{margin:0 0 .7rem}.compact-hero .section-heading h2{margin:0;font-size:clamp(1.15rem,2vw,1.55rem)}.compact-hero .community-cards{gap:.7rem}.compact-hero .community-cards article{padding:1.1rem;border-radius:14px;background:linear-gradient(145deg,rgba(36,90,210,.1),rgba(255,255,255,.025))}.compact-hero .community-cards article+article{background:linear-gradient(145deg,rgba(202,0,126,.1),rgba(255,255,255,.025))}.compact-hero .community-cards h3{font-size:clamp(1.5rem,2.5vw,2.2rem)}.compact-hero .community-cards p{font-size:.78rem;line-height:1.55}.compact-hero .community-cards a{font-size:.67rem;padding:.65rem .8rem;background:var(--jack);box-shadow:0 8px 22px rgba(52,120,255,.24)}.compact-hero .community-cards article+article a{background:var(--bam);box-shadow:0 8px 22px rgba(255,40,191,.22)}.compact-hero .front-orbit{width:min(420px,38vw);justify-self:center}.compact-hero .front-orbit:before{content:"";position:absolute;left:-8%;right:-12%;top:50%;height:1px;background:linear-gradient(90deg,transparent,var(--jack) 22%,rgba(255,255,255,.3) 50%,var(--bam) 78%,transparent);z-index:1}.compact-hero .front-orbit .orbit-jack,.compact-hero .front-orbit .orbit-bam{top:50%;transform:translateY(-50%);z-index:3;font-size:.8rem;text-shadow:0 2px 8px #05040a}.compact-hero .front-orbit .orbit-jack{left:-7%;color:#62a0ff}.compact-hero .front-orbit .orbit-bam{right:-13%;color:#ff4fca}.compact-hero .orbit-ring:before{background:var(--jack);box-shadow:0 0 25px var(--jack)}.compact-hero .orbit-ring:after{background:var(--bam);box-shadow:0 0 25px var(--bam)}.suggestion-section button{background:linear-gradient(100deg,var(--jack) 0 48%,var(--bam) 72%)}
@media(max-width:900px){.compact-hero{grid-template-columns:1fr}.compact-hero .front-orbit{width:min(360px,76vw)}.compact-hero .community-section{max-width:680px;margin-inline:auto}}
@media(max-width:560px){.compact-hero .community-cards{grid-template-columns:1fr}.compact-hero .front-orbit .orbit-jack{left:-10%}.compact-hero .front-orbit .orbit-bam{right:-18%}}

/* Electric-green accent and safe orbit labels */
.refreshed-home{--electric:#63ff62}.refreshed-home .brand-name b{color:var(--electric);text-shadow:0 0 12px rgba(99,255,98,.45)}.compact-hero .front-orbit{overflow:visible}.compact-hero .front-orbit .orbit-jack{left:2%}.compact-hero .front-orbit .orbit-bam{right:1%}.compact-hero .front-orbit:before{left:1%;right:1%;background:linear-gradient(90deg,var(--jack),var(--electric) 50%,var(--bam))}.compact-hero .orbit-ring{border-color:rgba(99,255,98,.3);box-shadow:inset 0 0 80px rgba(52,120,255,.11),0 0 22px rgba(99,255,98,.08)}.compact-hero .community-cards article{border-top-color:rgba(99,255,98,.42)}.compact-hero .community-cards a:hover,.suggestion-section button:hover{outline:2px solid var(--electric);outline-offset:2px}.home-header{border-bottom-color:rgba(99,255,98,.4)}
@media(max-width:560px){.compact-hero .front-orbit .orbit-jack{left:1%}.compact-hero .front-orbit .orbit-bam{right:0}.compact-hero .front-orbit .orbit-jack,.compact-hero .front-orbit .orbit-bam{font-size:.68rem;letter-spacing:.14em}}

/* Subtle blue/magenta particle atmosphere */
.refreshed-home:before{content:"";position:fixed;inset:78px 0 auto 0;height:min(48vw,560px);background:linear-gradient(180deg,rgba(7,6,13,.34),rgba(7,6,13,.9)),url("assets/blue-magenta-particles.png") center/cover no-repeat;opacity:.14;filter:saturate(1.15) contrast(1.05);pointer-events:none;z-index:0}.refreshed-home .brand-name b{color:#fff;text-shadow:none}.home-header{border-bottom-color:var(--line)}.compact-hero .front-orbit:before{background:linear-gradient(90deg,var(--jack),rgba(255,255,255,.38) 50%,var(--bam))}.compact-hero .orbit-ring{border-color:rgba(255,255,255,.22);box-shadow:inset 0 0 80px rgba(52,120,255,.11),0 0 22px rgba(255,40,191,.07)}.compact-hero .community-cards article{border-top-color:var(--line)}.compact-hero .community-cards a:hover{outline-color:var(--jack)}.compact-hero .community-cards article+article a:hover,.suggestion-section button:hover{outline-color:var(--bam)}

/* Animated purple smoke with blue highlights */
.refreshed-home:before{inset:78px -12% auto;height:min(62vw,720px);background:radial-gradient(ellipse at 18% 42%,rgba(93,35,176,.74) 0,rgba(77,25,144,.38) 26%,transparent 58%),radial-gradient(ellipse at 68% 24%,rgba(142,40,173,.56) 0,rgba(76,25,128,.32) 30%,transparent 61%),radial-gradient(ellipse at 82% 70%,rgba(38,91,255,.42) 0,rgba(26,73,201,.2) 22%,transparent 53%),radial-gradient(ellipse at 38% 76%,rgba(54,113,255,.3) 0,transparent 47%);background-size:115% 105%,125% 115%,110% 120%,130% 110%;opacity:.5;filter:blur(34px) saturate(1.18);transform:translate3d(0,0,0) scale(1.08);animation:purpleSmoke 18s ease-in-out infinite alternate;will-change:transform,background-position}.refreshed-home:after{content:"";position:fixed;inset:78px 0 auto;height:min(55vw,650px);background:radial-gradient(circle at 72% 36%,rgba(86,142,255,.18),transparent 24%),radial-gradient(circle at 24% 64%,rgba(134,69,217,.18),transparent 28%);filter:blur(22px);opacity:.55;pointer-events:none;z-index:0;animation:blueGlow 13s ease-in-out infinite alternate}@keyframes purpleSmoke{0%{background-position:0% 20%,100% 0%,85% 80%,10% 100%;transform:translate3d(-2%,0,0) scale(1.08)}50%{background-position:25% 35%,72% 18%,60% 58%,35% 70%;transform:translate3d(2%,-2%,0) scale(1.14)}100%{background-position:8% 55%,90% 38%,72% 28%,18% 52%;transform:translate3d(-1%,2%,0) scale(1.1)}}@keyframes blueGlow{from{opacity:.32;transform:translate3d(-2%,1%,0) scale(1)}to{opacity:.66;transform:translate3d(3%,-2%,0) scale(1.08)}}@media(prefers-reduced-motion:reduce){.refreshed-home:before,.refreshed-home:after{animation:none}}

/* Neon-eclipse treatment — visual only, layout unchanged */
.refreshed-home:before{opacity:.25;filter:blur(48px) saturate(1.1)}.compact-hero{position:relative;isolation:isolate}.compact-hero:after{content:"";position:absolute;z-index:-1;width:min(54vw,670px);aspect-ratio:1;right:-8%;top:50%;transform:translateY(-50%);border-radius:50%;background:radial-gradient(circle at 50% 50%,transparent 0 35%,rgba(32,107,255,.2) 43%,rgba(170,31,210,.23) 52%,transparent 68%),radial-gradient(ellipse at 32% 50%,rgba(44,101,255,.26),transparent 48%),radial-gradient(ellipse at 70% 42%,rgba(230,28,181,.26),transparent 50%);filter:blur(25px);animation:eclipseCloud 15s ease-in-out infinite alternate;pointer-events:none}.compact-hero .front-orbit{filter:drop-shadow(-16px 0 24px rgba(42,108,255,.14)) drop-shadow(18px 0 24px rgba(235,33,190,.15))}.compact-hero .orbit-ring{border-color:rgba(255,255,255,.38);box-shadow:inset -22px 0 55px rgba(47,115,255,.13),inset 22px 0 55px rgba(236,37,192,.14),-4px 0 14px rgba(55,122,255,.18),4px 0 14px rgba(239,40,194,.18)}.compact-hero .orbit-core{box-shadow:-12px 0 32px rgba(52,120,255,.22),12px 0 32px rgba(255,40,191,.24)}@keyframes eclipseCloud{0%{opacity:.58;transform:translate(-2%,-50%) scale(.96)}50%{opacity:.83;transform:translate(1%,-52%) scale(1.05)}100%{opacity:.66;transform:translate(3%,-48%) scale(1)}}@media(max-width:900px){.compact-hero:after{width:min(92vw,620px);right:50%;top:76%;transform:translate(50%,-50%)}@keyframes eclipseCloud{0%{opacity:.55;transform:translate(48%,-50%) scale(.96)}100%{opacity:.78;transform:translate(52%,-48%) scale(1.04)}}}@media(prefers-reduced-motion:reduce){.compact-hero:after{animation:none}}
/* Steel-blue emphasis for the opening of Jack's biography */
.jack-profile .bio-copy > p:first-child strong{background:linear-gradient(100deg,#f3f7ff 0%,#8fc8ff 45%,#718cff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.jack-profile .bio-copy .jack-bio-statement{max-width:900px;margin:2.2rem auto .4rem;text-align:center;color:#9ed2ff;font-size:clamp(1.1rem,2vw,1.45rem);line-height:1.55;letter-spacing:.01em;text-shadow:0 0 22px rgba(90,170,255,.18)}

/* Phone navigation */
.mobile-menu-toggle{display:none}
@media(max-width:850px){
  .site-header,.simple-home .site-header,.profile-page .site-header,.home-header{position:sticky;z-index:9999!important;isolation:isolate;top:0;height:72px;min-height:72px;flex-wrap:nowrap;padding:.55rem 1rem;overflow:visible}
  .site-header .brand{min-width:0}.site-header .brand-logo{width:48px;height:48px}
  .mobile-menu-toggle{display:grid;grid-template-columns:repeat(3,5px);align-items:center;gap:3px;margin-left:auto;padding:.72rem .82rem;border:1px solid rgba(142,177,255,.28);border-radius:13px;background:linear-gradient(145deg,rgba(29,53,105,.9),rgba(32,16,59,.94));color:white;cursor:pointer;box-shadow:0 9px 24px rgba(0,0,0,.25)}
  .mobile-menu-toggle span{display:block;width:5px;height:5px;border-radius:50%;background:#9ed2ff}.mobile-menu-toggle b{grid-column:1/-1;margin-top:2px;font:700 .58rem 'DM Sans',sans-serif;letter-spacing:.08em;text-transform:uppercase}
  .site-header .profile-nav,.simple-home #main-nav,.profile-page .profile-nav,.home-header .profile-nav{display:none;position:absolute;z-index:10000!important;top:calc(100% + 8px);left:1rem;right:1rem;width:auto;max-height:calc(100vh - 100px);overflow-y:auto;flex-direction:column;align-items:stretch;gap:.2rem;padding:.7rem;border:1px solid rgba(142,177,255,.25);border-radius:18px;background:#080a18;box-shadow:0 24px 60px rgba(0,0,0,.72);backdrop-filter:none}
  .site-header.nav-open .profile-nav,.simple-home .site-header.nav-open #main-nav{display:flex}
  .site-header .profile-nav a,.simple-home #main-nav a,.profile-page .profile-nav a{display:block;padding:.9rem 1rem;border-radius:11px;color:#e8edf9;font-size:.86rem;text-align:left;white-space:normal}
  .profile-page .site-header .profile-nav a:nth-child(3){display:block}
  .site-header .profile-nav a:hover,.site-header .profile-nav a[aria-current='page']{background:linear-gradient(100deg,rgba(65,125,255,.18),rgba(193,62,211,.12));color:white}
}
