/* Page styles for https://earthgrid.com/join (loaded by grid.php). */
/* Shared look with why.php (.why-*) */
.why-wrap { max-width: 900px; margin: 0 auto; padding: 10px 10px 30px; color: #f2f2f2; text-align: left; }
.why-wrap p { color: #e8e8e8; font-size: 17px; line-height: 1.7; }
.why-wrap a { color: #ffc27a; }
.why-wrap strong { color: #fff; }
.why-hero { position: relative; text-align: center; padding: 22px 0 26px; overflow: hidden; }
.why-tri-field { position: absolute; inset: 0; width: 100%; height: 100%; opacity: .22; pointer-events: none; }
.why-hero > *:not(svg) { position: relative; }
.why-kicker { display: inline-block; font-size: 12px; letter-spacing: 3px; text-transform: uppercase; color: #ffb35c; font-weight: bold; margin-bottom: 10px; }
.why-hero h1 { color: #fff; font-size: 44px; line-height: 1.1; margin: 0 auto 14px; letter-spacing: 3px; text-transform: uppercase; font-weight: bold; max-width: 16em; }
.why-hero p { font-size: 20px; line-height: 1.45; color: #ddedfb; margin: 0 auto; }
.why-sec { padding: 34px 0 10px; border-top: 1px solid rgba(255,255,255,0.14); margin-top: 30px; scroll-margin-top: 20px; }
.why-eyebrow { display: block; font-size: 12px; letter-spacing: 2.5px; text-transform: uppercase; color: #ffb35c; font-weight: bold; margin-bottom: 8px; }
.why-sec h2 { color: #fff; font-size: 30px; line-height: 1.2; margin: 0 0 16px; font-weight: bold; }
.why-num { display: inline-block; width: 0; height: 0; position: relative;
  border-left: 15px solid transparent; border-right: 15px solid transparent; border-bottom: 26px solid #f0932b; }
.why-num span { position: absolute; left: -5px; top: 9px; font-size: 12px; font-weight: bold; color: #111; width: 10px; text-align: center; }
.why-pick { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; margin: 6px 0 10px; }
.why-card { flex: 1 1 200px; box-sizing: border-box; display: block; background: rgba(255,255,255,0.07); border: 1px solid rgba(255,255,255,0.18);
  border-radius: 10px; padding: 18px 16px 16px; text-decoration: none; transition: all .15s ease; }
.why-card:hover, .why-card:focus { background: rgba(240,147,43,0.16); border-color: #f0932b; transform: translateY(-3px); text-decoration: none; }
.why-card-featured { background: rgba(240,147,43,0.13); border-color: #f0932b; }
.why-card .why-num { margin-bottom: 12px; }
.why-card-title { display: block; font-size: 19px; font-weight: bold; line-height: 1.25; color: #fff; margin-bottom: 6px; }
.why-card-note { display: block; font-size: 13px; line-height: 1.5; color: #c9d4dd; }
.why-btn { display: inline-block; background: #5cb85c; color: #fff !important; font: bold 17px Georgia, serif; padding: 13px 24px; border-radius: 5px;
  text-decoration: none; margin: 0; transition: background .15s ease; }
.why-btn:hover, .why-btn:focus { background: #4a9d4a; color: #fff !important; text-decoration: none; }
.why-btn-orange { background: #f0932b; color: #111 !important; }
.why-btn-orange:hover, .why-btn-orange:focus { background: #d97d16; color: #111 !important; }
.why-btn-dark { background: #222; border: 1px solid rgba(255,255,255,0.3); }
.why-btn-dark:hover, .why-btn-dark:focus { background: #000; }
.why-btn-lg { font-size: 19px; padding: 16px 30px; }
.why-quote { text-align: center; font-size: 22px; line-height: 1.4; font-weight: bold; color: #fff; padding: 22px 10px; margin: 30px 0 0;
  border-top: 1px solid rgba(240,147,43,0.6); border-bottom: 1px solid rgba(240,147,43,0.6); }

/* STYLE RULE: apple-first (9–12 words per line) */
.apple-first p, .apple-first li { max-width: 22.5em; text-wrap: pretty; }
.apple-first .why-hero p { margin-left: auto; margin-right: auto; max-width: 22em; }
.apple-first h2, .apple-first h3 { max-width: 20em; text-wrap: balance; }

/* Connect page */
.cn-platform { border-radius: 12px; padding: 24px 26px; margin: 18px 0; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.16); scroll-margin-top: 20px; }
.cn-platform.cn-first { border: 2px solid #f0932b; background: rgba(240,147,43,.09); }
.cn-rank { display: flex; align-items: center; gap: 12px; margin-bottom: 10px; }
.cn-rank-label { font-size: 11px; letter-spacing: 2px; text-transform: uppercase; color: #ffb35c; font-weight: bold; }
.cn-platform h3 { color: #fff; font-size: 26px; line-height: 1.25; margin: 0 0 14px; }
.cn-platform p { margin: 0 0 12px; }
.cn-steps-intro { margin-bottom: 6px !important; }
.cn-steps { list-style: none; counter-reset: cnstep; padding: 0; margin: 0 0 16px; }
.cn-steps li { counter-increment: cnstep; position: relative; padding: 8px 0 8px 44px; color: #e8e8e8; font-size: 17px; line-height: 1.5; }
.cn-steps li:before { content: counter(cnstep); position: absolute; left: 0; top: 6px; width: 28px; height: 28px; line-height: 28px; border-radius: 50%;
  text-align: center; font-weight: bold; font-size: 14px; color: #111; background: #f0932b; }
.cn-btn-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
.cn-btn-row-center { justify-content: center; margin-top: 26px; }
.cn-note { margin: 18px 0 0; padding: 14px 18px; border-left: 3px solid #f0932b; border-radius: 0 8px 8px 0; background: rgba(0,0,0,.28); }
.cn-note p { margin: 0 !important; font-size: 15px !important; color: #d6dde3 !important; }
.cn-note.cn-note-blue { border-left-color: #4a90d9; }
.cn-closer { margin-top: 30px; padding: 26px 26px 20px; border-radius: 12px; background: linear-gradient(135deg, rgba(240,147,43,.14), rgba(255,217,138,.04));
  border: 1px solid rgba(240,147,43,.45); }
.cn-closer h2 { margin-top: 0 !important; }
.cn-signoff { margin-top: 20px !important; color: #c9d4dd !important; font-style: italic; }
.cn-no { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 16px; }
.cn-no span { font-size: 13px; padding: 5px 12px; border-radius: 20px; background: rgba(255,255,255,.08); color: #c9d4dd; text-decoration: line-through; text-decoration-color: rgba(240,147,43,.8); }

@media (max-width: 700px) {
  .why-hero h1 { font-size: 30px; letter-spacing: 2px; }
  .why-sec h2 { font-size: 24px; }
  .cn-platform { padding: 20px 18px; }
  .cn-platform h3 { font-size: 22px; }
  .cn-btn-row .why-btn { width: 100%; text-align: center; box-sizing: border-box; }
}

/* Join page */
.jn-video { margin: 8px 0 14px; border-radius: 12px; overflow: hidden; border: 1px solid rgba(240,147,43,.5); background: #000; position: relative; padding-top: 56.25%; }
.jn-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.jn-books { display: flex; flex-wrap: wrap; gap: 14px; margin: 10px 0 6px; }
.jn-book { flex: 1 1 240px; box-sizing: border-box; border-radius: 10px; padding: 18px 18px 14px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.16); }
.jn-book-title { display: block; color: #fff; font-size: 19px; font-weight: bold; line-height: 1.25; }
.jn-book-by { display: block; color: #ffb35c; font-size: 13px; letter-spacing: 1px; margin: 4px 0 10px; }
.jn-book p { font-size: 15px !important; line-height: 1.6 !important; margin: 0 0 8px; }
.jn-book .jn-ours { color: #fff !important; }
.jn-diff { list-style: none; padding: 0; margin: 6px 0 10px; }
.jn-diff li { position: relative; padding: 10px 0 10px 34px; border-bottom: 1px solid rgba(255,255,255,.08); color: #e8e8e8; font-size: 17px; line-height: 1.55; }
.jn-diff li:before { content: ""; position: absolute; left: 4px; top: 16px; width: 0; height: 0;
  border-left: 8px solid transparent; border-right: 8px solid transparent; border-bottom: 14px solid #f0932b; }
.jn-diff li:last-child { border-bottom: 0; }
