/* Original Genius invitation scene: forest, warm metal and orbital light. */
.join-section{padding:0;background:#071c15;overflow:hidden}
.invitation-scene{position:relative;isolation:isolate;min-height:740px;min-height:clamp(690px,54vw,890px);overflow:hidden;background:radial-gradient(ellipse at 64% 47%,#193f32 0%,#0a241c 35%,#04130f 78%);border-block:1px solid #b9aa7330}
.invitation-scene:before{content:"";position:absolute;z-index:-1;width:76%;aspect-ratio:1;left:31%;top:50%;border:clamp(24px,5vw,80px) solid #59806c28;border-radius:50%;transform:translateY(-50%) rotate(-25deg) scaleY(.78);filter:blur(25px);box-shadow:0 0 100px #a4b98b12,inset 0 0 85px #a9b99216;pointer-events:none}
.invitation-scene:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.07;background-image:url('/assets/invitation-grain.svg')}
.invitation-topline,.invitation-footnote{position:absolute;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:20px;z-index:2;font-size:10px;letter-spacing:.19em;color:#a9bbab;line-height:1.6}
.invitation-topline{top:36px}.invitation-topline>span:first-child{color:#e6d7ad}.invitation-topline i{font-size:23px;vertical-align:middle;margin-right:12px;font-style:normal}.invitation-footnote{bottom:28px;font-size:9px;letter-spacing:.16em;color:#90a895}
.invitation-dust{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.invitation-copy{position:relative;z-index:2;width:40%;max-width:640px;margin-left:7%;padding:clamp(145px,11vw,185px) 0 110px;pointer-events:none}
.invitation-copy .eyebrow{font-size:10px;letter-spacing:.2em;color:#d1ba7f;margin:0 0 26px}
.invitation-copy h2{font-size:clamp(46px,4.6vw,76px);line-height:1.04;letter-spacing:-.045em;font-weight:400;margin:0;color:#f4f0e4}
.invitation-copy h2 em{display:block;font-style:italic;color:#e8d399;font-size:.72em;letter-spacing:-.035em;margin-top:18px;white-space:nowrap}
.invitation-copy .intro{font-size:clamp(15px,1.1vw,18px);line-height:1.7;color:#becdbf;max-width:35ch;margin:28px 0 26px}
.invitation-copy button{pointer-events:auto;min-width:195px;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;font-size:14px;min-height:53px;padding:16px 23px;background:linear-gradient(110deg,#f0dca3,#d4b56e);border-color:#e2ca8b;box-shadow:0 6px 32px #c6ad5d13}
.invitation-copy button:hover{box-shadow:0 6px 38px #dbbe7430;transform:translateY(-2px)}
.invitation-copy .invitation-caption{font-size:11px;letter-spacing:.025em;color:#96af9d;margin:18px 0 0;line-height:1.6}
.invitation-object{position:absolute;inset:9% 6% 6% 34%;z-index:1;pointer-events:none}
.invitation-object canvas,.invitation-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
.invitation-object canvas{opacity:0;transition:opacity .45s}.invitation-ready .invitation-object canvas{opacity:1}.invitation-ready .invitation-fallback{opacity:0}
.invitation-fallback{transition:opacity .45s}
.invitation-side{position:absolute;right:5%;bottom:130px;z-index:2;color:#d9e0cf;font-size:17px;line-height:1.4;max-width:185px}
.invitation-side p{margin:28px 0 20px}.invitation-side a{font-size:10px;letter-spacing:.08em;color:#d9c38b;display:inline-flex;align-items:center;gap:20px;min-height:44px;text-decoration:none;border-bottom:1px solid #b5a87855}
.invitation-wave{display:flex;gap:9px;height:42px;align-items:center}.invitation-wave i{width:1px;height:18px;background:#cbbd91;box-shadow:0 0 9px #ddca8270}.invitation-wave i:nth-child(2),.invitation-wave i:nth-child(6){height:28px}.invitation-wave i:nth-child(3),.invitation-wave i:nth-child(5){height:36px}.invitation-wave i:nth-child(4){height:46px}
.join-details{padding-block:65px 72px;scroll-margin-top:135px}.join-details .join-principles{margin:0 0 40px}.join-principles article{padding-top:23px}.join-principles h3{font-size:27px}.join-principles p{font-size:15px;line-height:1.7}.join-timeline li{min-height:130px;padding:22px 20px}.join-timeline strong{font-size:14px}.join-bottom p{font-size:12px;max-width:80ch}
.invitation-scene button:focus-visible,.invitation-scene a:focus-visible{outline:3px solid #f1d995;outline-offset:6px}
@media(min-width:1600px){.invitation-copy{margin-left:max(7%,calc((100% - 1440px)/2))}.invitation-scene{min-height:850px}.invitation-side{right:max(5%,calc((100% - 1520px)/2))}}
@media(max-width:1100px) and (min-width:701px){.invitation-copy{width:46%;margin-left:5%}.invitation-copy h2{font-size:55px}.invitation-copy h2 em{white-space:normal;max-width:13ch}.invitation-object{left:39%;right:-9%;top:7%;bottom:8%}.invitation-side{right:4%;bottom:100px;font-size:14px;max-width:145px}.invitation-side p{margin:15px 0 8px}.invitation-footnote{font-size:8px}}
@media(max-width:700px){.invitation-scene{min-height:1030px}.invitation-topline{left:24px;right:24px;top:25px;font-size:8px;letter-spacing:.12em}.invitation-topline>span:last-child{font-size:7px;max-width:90px;text-align:right}.invitation-topline i{margin-right:6px;font-size:18px}.invitation-copy{margin:0;padding:90px 25px 0;width:100%;max-width:none;text-align:center}.invitation-copy .eyebrow{font-size:9px;margin-bottom:19px}.invitation-copy h2{font-size:clamp(43px,9.5vw,65px)}.invitation-copy h2 br:first-child{display:none}.invitation-copy h2 em{font-size:.8em;margin-top:10px;white-space:normal}.invitation-copy .intro{font-size:15px;margin:22px auto;max-width:33ch}.invitation-copy button{font-size:14px;min-height:50px}.invitation-copy .invitation-caption{font-size:10px;margin-top:14px}.invitation-object{inset:390px -10% 100px;max-height:500px}.invitation-side{bottom:55px;right:0;left:0;max-width:none;text-align:center;font-size:15px}.invitation-side p{display:none}.invitation-side a{margin:auto;font-size:10px}.invitation-wave{display:none}.invitation-footnote{left:20px;right:20px;bottom:19px;font-size:7px;letter-spacing:.08em}.invitation-scene:before{width:170%;left:-35%;top:65%;border-width:48px}.join-details{padding-block:42px 55px}.join-principles h3{font-size:28px}.join-details .join-principles{margin-bottom:28px}.join-principles p{font-size:16px}.join-timeline strong{font-size:15px}.join-timeline li{min-height:0;padding:17px 20px}.join-bottom p{font-size:13px}.join-bottom .btn{min-height:50px}}
@media(max-width:360px){.invitation-scene{min-height:1000px}.invitation-copy{padding-inline:18px}.invitation-copy h2{font-size:41px}.invitation-copy .eyebrow{font-size:8px}.invitation-object{top:405px;bottom:100px}.invitation-footnote>span:last-child{max-width:105px;text-align:right}}
@media(prefers-reduced-motion:reduce){.invitation-object canvas,.invitation-fallback{transition:none}.invitation-copy button:hover{transform:none}}
