@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--forest:#143d2c;--deep:#0c2b20;--lime:#c7dd89;--cream:#f8f8f1;--ink:#163c2c;--muted:#607367}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;background:var(--cream)}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a{color:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e6a619;outline-offset:4px}.header{height:90px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #e6e9e3}.brand{width:290px;aspect-ratio:7.55;position:relative;overflow:hidden;display:block;flex-shrink:0}.brand img{position:absolute;width:100%;height:auto;top:-64.5%;left:0}.header nav{display:flex;align-items:center;gap:42px;font-size:14px;font-weight:600}.about-link{text-decoration:none}.signin{padding:10px 27px;min-height:44px;border:1px solid #b3beb7;border-radius:30px;background:transparent;color:var(--ink)}.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,1fr);grid-template-rows:auto 1fr;column-gap:7%;max-width:1440px;margin:0 auto;padding:46px 6% 50px;background:var(--forest);color:white;position:relative}.hero-photo{grid-column:1;grid-row:1/3;margin:0;align-self:center;justify-self:center;width:100%;max-width:540px}.hero-photo img{display:block;width:100%;height:auto;object-fit:contain;border-radius:3px}.intro{grid-column:2;grid-row:1;padding:7px 0 23px}.eyebrow{font-size:12px;line-height:1.5;letter-spacing:2px;font-weight:600;text-transform:uppercase;margin:0 0 16px}.intro .eyebrow{color:var(--lime)}h1,h2,h3{font-family:'DM Sans',Arial,sans-serif;font-weight:600}h1{font-size:clamp(38px,4.1vw,62px);line-height:1.02;letter-spacing:-1.1px;margin:0}h1 em{color:var(--lime);font-style:normal}.subhead{font-size:16px;line-height:1.6;color:#dbe5dd;max-width:370px;margin:18px 0 0}.signup{grid-column:2;grid-row:2;align-self:start;max-width:450px;width:100%;background:var(--cream);color:var(--ink);padding:28px 32px 20px;border-radius:10px}.signup h2{font-size:29px;line-height:1.15;margin:0 0 8px;letter-spacing:-.3px}.form-intro{font-size:13px;color:var(--muted);margin:0 0 22px}label,legend{display:block;font-size:13px;font-weight:600;margin:0 0 8px}select,input{width:100%;height:47px;border:1px solid #c2cbbf;border-radius:5px;background:transparent;color:var(--ink);padding:0 12px;font-size:16px}select{padding-right:25px}input::placeholder{color:#6e7b71}fieldset{margin:18px 0;padding:0;border:0}.age-row{display:flex;gap:18px;align-items:center}.age-row select{flex:1;min-width:0}.age-row span{font-size:14px;color:var(--muted)}.primary{min-height:49px;display:flex;align-items:center;justify-content:center;gap:18px;width:100%;border:0;border-radius:28px;color:#fff;background:var(--forest);text-decoration:none;font-weight:600;font-size:16px;padding:12px 20px;transition:background .2s,transform .2s}.primary:hover{background:#225840;transform:translateY(-1px)}form .primary{margin-top:20px}.privacy-note{text-align:center;font-size:12px;color:var(--muted);margin:12px 0 0}.mobile-action{display:none}.connection{padding:84px 8% 76px;text-align:center;max-width:1250px;margin:auto}.connection .eyebrow{color:#667b40}.connection h2{font-size:58px;line-height:1.02;margin:0 0 23px;letter-spacing:-1px}.connection>p:not(.eyebrow){max-width:625px;margin:0 auto;line-height:1.8;color:var(--muted);font-size:17px}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;text-align:left;margin:58px 0 40px}.benefits>div{border-top:1px solid #cbd4c5;padding-top:20px}.number{font-size:12px;color:#6b7f4b;letter-spacing:2px}.benefits h3{font-size:30px;margin:13px 0 12px}.benefits p{font-size:15px;color:var(--muted);line-height:1.7;margin:0}.text-link{display:inline-block;text-underline-offset:7px;font-size:15px;font-weight:600}.text-link span{margin-left:12px}footer{border-top:1px solid #d8dfd2;padding:28px 6%;display:flex;justify-content:space-between;gap:15px;font-size:12px;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}.error{color:#a33720;font-size:13px;margin:8px 0}.error:empty{display:none}dialog{border:0;border-radius:12px;padding:38px;max-width:440px;width:calc(100% - 32px);background:var(--cream);color:var(--ink)}dialog::backdrop{background:#071e16b8}dialog h2{font-size:38px;margin:0 0 18px}dialog p:not(.eyebrow){line-height:1.65;color:var(--muted);font-size:16px}.close{position:absolute;right:12px;top:10px;background:none;border:0;font-size:30px;color:var(--ink);width:44px;height:44px}.close-dialog{margin-top:24px}
@media(min-width:99999px){body{background:var(--cream)}.hero{max-width:none;padding-left:max(6%,calc((100vw - 1268px)/2));padding-right:max(6%,calc((100vw - 1268px)/2))}}
@media(min-width:0px){.header{height:64px;padding:0 20px}.brand{width:218px}.header nav{gap:0}.about-link{display:none}.signin{border:0;padding:8px 0 8px 12px;font-size:13px}.hero{display:flex;flex-direction:column;gap:0;padding:0 0 30px;align-items:center}.intro{text-align:center;padding:21px 20px 17px;width:100%}.intro .eyebrow{font-size:10px;letter-spacing:1.5px;margin-bottom:9px}h1{font-size:clamp(32px,8.8vw,45px);line-height:1.03;letter-spacing:-.7px}h1 br{display:none}h1 em{display:block}.subhead{font-size:13px;line-height:1.5;max-width:none;margin:11px 0 0}.hero-photo{width:auto;max-width:calc(100% - 40px);align-self:center}.hero-photo img{width:auto;height:auto;max-width:100%;max-height:calc(100svh - 302px);min-height:0;object-fit:contain;margin:auto;border-radius:3px}.mobile-action{display:block;width:100%;padding:16px 24px 22px;text-align:center}.mobile-action .primary{background:var(--lime);color:var(--deep);max-width:390px;margin:auto}.mobile-action p{font-size:11px;color:#d0dece;margin:10px 0 0}.signup{width:calc(100% - 40px);max-width:440px;margin:15px 0 0;padding:25px 24px 23px;scroll-margin-top:20px}.signup h2{font-size:30px}.form-intro{line-height:1.6}.connection{padding:52px 25px}.connection h2{font-size:44px}.connection>p:not(.eyebrow){font-size:16px}.benefits{grid-template-columns:1fr;gap:28px;margin:35px 0}.benefits h3{font-size:30px;margin:9px 0}.benefits p{font-size:15px}.connection .eyebrow{font-size:11px}footer{flex-direction:column;align-items:center;text-align:center;padding:25px 20px;gap:10px}}
@media(max-width:350px){.header{padding:0 15px}.brand{width:190px}.intro{padding-left:15px;padding-right:15px}h1{font-size:30px}.subhead{font-size:12px}.hero-photo img{max-height:calc(100svh - 300px)}.signup{padding:24px 20px}.signup h2{font-size:28px}}
@media(max-height:500px) and (max-width:760px){.hero-photo img{max-height:65svh}.intro{padding-top:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.primary{transition:none}}

html{background:#e9eee7}body{max-width:430px;margin:0 auto;min-height:100svh;box-shadow:0 0 45px #143d2c12}h1{font-size:36px}@media(max-width:350px){h1{font-size:30px}}

/* Shared CTA typography and balanced mobile form spacing. */
h1{font-size:30px;line-height:1.15;letter-spacing:-.7px}
.signup{align-self:center;margin:16px auto 0;padding:28px 24px;width:calc(100% - 40px)}
.signup h2{text-align:center;font-size:25px;line-height:1.2;margin:0 0 12px;letter-spacing:-.5px}
.form-intro{text-align:center;margin:0 auto 24px;max-width:290px}
.signup form{width:100%;margin:0 auto}
.connection h2{font-size:32px;line-height:1.15;letter-spacing:-.7px}
.benefits h3{font-size:24px;line-height:1.25;letter-spacing:-.4px}
dialog h2{font-size:30px;line-height:1.2}
@media(max-width:350px){h1{font-size:26px}.signup{padding:26px 20px}.signup h2{font-size:23px}.connection h2{font-size:28px}}

.header{background:var(--forest);border-bottom:1px solid #ffffff18}.signin{color:#fff}
/* Clubhouse palette and focused, four-step signup. */
.header{background:linear-gradient(110deg,#342318 0%,#65452e 48%,#402c1e 100%);border-bottom:1px solid #a47c4b66;box-shadow:inset 0 1px #ffffff0a,inset 0 -3px #00000012}
.intro{padding:19px 20px 16px}.intro h1{color:#fff;font-size:30px;line-height:1.14}.intro h1 br{display:block}.subhead{font-size:13px;margin-top:9px}
.hero-photo img{max-height:min(280px,max(120px,calc(100svh - 440px)));border-radius:4px}
.signup{background:var(--forest);color:#fff;margin:18px auto 0;padding:0;width:calc(100% - 40px)}
.step-meta{display:flex;align-items:center;justify-content:space-between;min-height:20px;font-size:12px;color:#c2d2c5}.step-meta span{margin-left:auto}#back-step{padding:0;border:0;background:none;color:#e3ebe5;font-size:13px;min-height:24px}#back-step[hidden]{display:none}
.progress-track{height:3px;background:#ffffff24;border-radius:4px;margin:8px 0 18px;overflow:hidden}#progress-fill{display:block;height:100%;width:25%;background:#9cafa0;transition:width .2s}
.signup h2,.choice-field legend{font-family:'DM Sans',Arial,sans-serif;text-align:center;width:100%;font-size:22px;font-weight:600;line-height:1.25;margin:0 0 16px;letter-spacing:-.4px;color:white}
.choice-field{margin:0}.choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.choice{border:1px solid #8aa293;background:#ffffff08;border-radius:7px;min-height:52px;font-size:15px;font-weight:500;color:#fff;padding:10px 4px}.choice:hover{background:#ffffff14}.choice[aria-pressed=true]{background:#f0f3eb;color:var(--deep);border-color:#f0f3eb;box-shadow:inset 0 0 0 1px #f0f3eb}
.signup .primary{background:var(--lime);color:var(--deep);min-height:56px;margin-top:16px}.signup .primary:hover{background:#d5e89c}.privacy-note{color:#bacbbc;margin:10px 0 0;font-size:12px}.signup input{background:#f8f8f1;color:var(--ink);border-color:#e1e6dd;min-height:50px}.signup label{color:#dbe5dd;font-size:14px}.age-row>div{flex:1;min-width:0}.age-row span{color:#dbe5dd;margin-top:22px}.error{color:#ffd4ba;font-size:14px}
.connection{padding:38px 25px}.connection h2{font-size:27px;line-height:1.2;margin-bottom:15px}.connection>p:not(.eyebrow){font-size:15px;line-height:1.65}.safety-note{margin-top:28px;padding-top:24px;border-top:1px solid #d3dccf}.safety-note h3{font-size:18px;line-height:1.4;margin:0 0 10px}.safety-note p{font-size:14px;color:var(--muted);line-height:1.65;margin:0}.footer-link{color:var(--muted);text-decoration:underline;text-underline-offset:3px;background:none;border:0;font-size:12px;padding:8px}
@media(max-width:350px){.intro{padding:15px 15px 12px}.intro h1{font-size:27px}.subhead{font-size:12px}.signup{width:calc(100% - 32px)}.choice{font-size:14px}.signup h2,.choice-field legend{font-size:20px}}
