/* css/join.css - redesigned Join Us / membership application page */
.jn-section{background:linear-gradient(180deg,#fbf6f9,#fff 320px);padding:46px 0 70px;}
.jn-wrap{max-width:1180px;margin:0 auto;padding:0 22px;display:grid;grid-template-columns:330px minmax(0,1fr);gap:28px;align-items:start;}
.jn-card{background:#fff;border:1px solid #eadfe5;border-radius:18px;box-shadow:0 14px 40px rgba(92,33,67,.07);}
.jn-side{position:sticky;top:96px;display:grid;gap:18px;}
.jn-side .jn-card{padding:22px;}
.jn-side h3{font-size:15px;color:var(--navy-dark);margin:0 0 14px;display:flex;align-items:center;gap:9px;}
.jn-side h3 i{color:var(--navy);}
/* process timeline */
.jn-flow{list-style:none;margin:0;padding:0;position:relative;}
.jn-flow li{display:flex;gap:13px;padding-bottom:16px;position:relative;}
.jn-flow li:last-child{padding-bottom:0;}
.jn-flow li::before{content:"";position:absolute;left:14px;top:30px;bottom:2px;width:2px;background:#eadfe5;}
.jn-flow li:last-child::before{display:none;}
.jn-flow .n{width:30px;height:30px;flex:none;border-radius:50%;background:var(--navy-light);color:var(--navy);font-weight:800;font-size:13px;display:grid;place-items:center;border:2px solid #fff;box-shadow:0 0 0 1px #eadfe5;}
.jn-flow strong{display:block;font-size:13px;color:var(--navy-dark);}
.jn-flow span.d{display:block;font-size:11.8px;color:var(--muted);line-height:1.5;margin-top:1px;}
/* live summary */
.jn-summary .empty{font-size:12.5px;color:var(--muted);line-height:1.65;}
.jn-sum-name{font-weight:800;color:var(--navy-dark);font-size:14.5px;margin-bottom:10px;}
.jn-fee-row{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px dashed #eadfe5;font-size:12.5px;color:var(--muted);}
.jn-fee-row b{color:var(--navy-dark);font-size:13.5px;white-space:nowrap;}
.jn-sum-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px;}
.jn-sum-list li{font-size:12.2px;color:var(--text);line-height:1.5;display:flex;gap:8px;}
.jn-sum-list i{color:var(--navy);margin-top:3px;font-size:11px;}
.jn-help{font-size:12.5px;color:var(--muted);line-height:1.65;}
.jn-help a{color:var(--navy);font-weight:700;}
/* main form */
.jn-main{display:grid;gap:22px;min-width:0;}
.jn-step{padding:28px 30px;position:relative;}
.jn-step-head{display:flex;align-items:center;gap:14px;margin-bottom:20px;}
.jn-step-head .no{width:38px;height:38px;flex:none;border-radius:11px;background:linear-gradient(135deg,var(--navy-dark),var(--navy));color:#fff;font-weight:800;display:grid;place-items:center;font-size:15px;}
.jn-step-head h2{font-size:19px;margin:0;color:var(--navy-dark);}
.jn-step-head p{margin:2px 0 0;font-size:12.5px;color:var(--muted);}
.jn-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px;}
.jn-grid .full{grid-column:1/-1;}
.jn-grid[hidden],.jn-step[hidden],.jn-field[hidden]{display:none!important;}
.jn-field{display:block;font-size:12px;font-weight:700;color:var(--navy-dark);}
.jn-field small{font-weight:600;color:var(--muted);}
.jn-field .st{color:#c62f2f;}
.jn-field input:not([type=file]):not([type=checkbox]),.jn-field select,.jn-field textarea{width:100%;margin-top:7px;border:1px solid #e4d9df;border-radius:10px;padding:12px 13px;background:#fff;outline:0;font:inherit;font-size:13.5px;color:var(--text);transition:border-color .2s,box-shadow .2s;}
.jn-field input:focus,.jn-field select:focus,.jn-field textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(143,51,102,.12);}
.jn-field textarea{min-height:110px;resize:vertical;}
.jn-note{display:flex;gap:10px;background:#fff8e6;border:1px solid #f3e2a8;border-radius:12px;padding:12px 15px;font-size:12.3px;color:#7a5b00;line-height:1.6;}
.jn-note.info{background:var(--navy-light);border-color:#eadfe5;color:var(--navy-dark);}
/* category cards */
.jn-cats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.jn-cat{position:relative;display:block;cursor:pointer;}
.jn-cat input{position:absolute;opacity:0;inset:0;cursor:pointer;}
.jn-cat .box{display:block;height:100%;border:1.5px solid #eadfe5;border-radius:14px;padding:16px 16px 14px;background:#fff;transition:.2s;}
.jn-cat:hover .box{border-color:var(--navy);transform:translateY(-2px);box-shadow:0 10px 24px rgba(92,33,67,.1);}
.jn-cat input:focus-visible+.box{outline:3px solid rgba(143,51,102,.3);}
.jn-cat input:checked+.box{border-color:var(--navy);background:linear-gradient(180deg,#fff,var(--navy-light));box-shadow:0 10px 26px rgba(143,51,102,.16);}
.jn-cat .grp{font-size:10.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--navy);}
.jn-cat .t{display:block;font-weight:800;color:var(--navy-dark);font-size:14px;margin:4px 0 8px;line-height:1.35;}
.jn-cat .f{display:block;font-size:12px;color:var(--muted);line-height:1.6;}
.jn-cat .f b{color:var(--navy-dark);}
.jn-cat .tick{position:absolute;top:12px;right:12px;width:22px;height:22px;border-radius:50%;background:var(--navy);color:#fff;font-size:11px;display:none;place-items:center;}
.jn-cat input:checked~.tick{display:grid;}
/* documents */
.jn-docs{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.jn-doc{position:relative;display:grid;grid-template-columns:44px 1fr;gap:4px 13px;align-items:center;border:1.5px dashed #d9c6d0;border-radius:14px;padding:14px 16px;background:#fff;cursor:pointer;transition:.2s;}
.jn-doc:hover{border-color:var(--navy);background:var(--navy-light);}
.jn-doc input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;}
.jn-doc .ic{grid-row:1/3;width:44px;height:44px;border-radius:12px;background:var(--navy-light);color:var(--navy);display:grid;place-items:center;font-size:17px;}
.jn-doc .tt{font-weight:800;font-size:13px;color:var(--navy-dark);line-height:1.35;padding-right:70px;}
.jn-doc .hint{font-size:11.8px;color:var(--muted);line-height:1.45;}
.jn-doc .fname{grid-column:1/-1;font-size:12px;color:var(--navy);font-weight:700;margin-top:6px;display:flex;gap:7px;align-items:center;}
.jn-doc .fname:empty{display:none;}
.jn-doc .bd{position:absolute;top:12px;right:12px;font-size:10.5px;font-weight:800;padding:3px 9px;border-radius:999px;background:#f1eef1;color:var(--muted);}
.jn-doc.req .bd{background:#fdeceb;color:#c62f2f;}
.jn-doc.opt .bd{background:#fdf3df;color:#a3760e;}
.jn-doc.done{border-style:solid;border-color:#1e7e42;background:#f3fbf6;}
.jn-doc.done .ic{background:#dff5e7;color:#1e7e42;}
.jn-doc.done .bd{background:#dff5e7;color:#1e7e42;}
.jn-doc.na{opacity:.62;}
/* submit */
.jn-agree{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;color:var(--text);line-height:1.6;}
.jn-agree input{margin-top:3px;width:17px;height:17px;accent-color:var(--navy);flex:none;}
.jn-submit{border:0;background:linear-gradient(135deg,var(--navy-dark),var(--navy));color:#fff;border-radius:12px;padding:15px 30px;font-weight:800;font-size:14.5px;cursor:pointer;display:inline-flex;gap:10px;align-items:center;transition:.2s;}
.jn-submit:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(92,33,67,.28);}
.jn-alert{border-radius:14px;padding:14px 18px;font-size:13px;font-weight:600;display:flex;gap:11px;align-items:flex-start;}
.jn-alert.success{background:#e6f6ec;color:#1c7c3f;}
.jn-alert.error{background:#fdeceb;color:#c62f2f;}
.jn-alert ul{margin:5px 0 0 18px;font-weight:500;}
.hp-field{position:absolute;left:-9999px;top:-9999px;}
@media(max-width:1000px){.jn-wrap{grid-template-columns:1fr;}.jn-side{position:static;order:2;}.jn-cats{grid-template-columns:1fr 1fr;}}
@media(max-width:640px){.jn-cats,.jn-docs,.jn-grid{grid-template-columns:1fr;}.jn-step{padding:22px 18px;}}

/* how-it-works progress states (includes/join-flow.php) */
.jn-flow li.done::before{background:var(--navy);}
.jn-flow li.done .n{background:var(--navy);color:#fff;box-shadow:0 0 0 1px var(--navy);font-size:11px;}
.jn-flow li.active .n{background:linear-gradient(135deg,var(--navy-dark),var(--navy));color:#fff;box-shadow:0 0 0 1px var(--navy),0 0 0 6px rgba(143,51,102,.16);}
.jn-flow li.active strong{color:var(--navy);}
.jn-flow li:not(.active):not(.done) .n{background:#f4eef1;color:#a08f99;}
.jn-flow li:not(.active):not(.done) strong{color:#8c7d86;}
.jn-flow li.failed .n{background:#c62f2f;color:#fff;box-shadow:0 0 0 1px #c62f2f,0 0 0 6px rgba(198,47,47,.14);}
.jn-flow li.failed strong{color:#c62f2f;}
.jn-flow .jn-now{display:inline-block;margin-top:6px;padding:3px 10px;border-radius:999px;background:rgba(143,51,102,.1);color:var(--navy);font-size:11px;font-weight:700;}
.jn-flow li.failed .jn-now{background:rgba(198,47,47,.1);color:#c62f2f;}

/* ===== Membership overview (fees, criteria, comparison) ===== */
.mb-section{padding:56px 0 20px;background:#fff;}
.mb-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:32px;}
.mb-intro h2,.apply-head h2{font-size:30px;line-height:1.2;color:var(--navy-dark);margin:6px 0 10px;font-family:'Playfair Display',Georgia,serif;}
.mb-intro p{max-width:620px;color:var(--muted);font-size:14.5px;}
.mb-kicker{font-size:11.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--navy);}
.mb-jump{display:flex;gap:8px;flex-wrap:wrap;}
.mb-jump a{padding:9px 16px;border-radius:999px;border:1px solid #eadfe5;background:#fff;color:var(--navy-dark);font-size:12.5px;font-weight:700;transition:.2s;}
.mb-jump a:hover{border-color:var(--navy);background:var(--navy-light);}
.mb-jump a.primary{background:var(--navy);border-color:var(--navy);color:#fff;}
.mb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch;}
.mb-card{display:flex;flex-direction:column;background:#fff;border:1px solid #eadfe5;border-radius:20px;padding:26px;box-shadow:0 14px 40px rgba(92,33,67,.07);scroll-margin-top:100px;}
.mb-card.featured{border:1.5px solid var(--navy);box-shadow:0 20px 50px rgba(143,51,102,.16);}
.mb-card header{margin-bottom:18px;}
.mb-tag{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:3px 10px;border-radius:999px;background:var(--navy-light);color:var(--navy);}
.mb-card h3{font-size:21px;color:var(--navy-dark);margin:10px 0 4px;}
.mb-card header p{font-size:12.8px;color:var(--muted);line-height:1.55;}
.mb-fees,.mb-plans{display:grid;gap:10px;margin-bottom:14px;}
.mb-fees>div,.mb-plans>div{background:var(--navy-light);border-radius:12px;padding:12px 14px;display:grid;gap:2px;}
.mb-fees span,.mb-plans span{font-size:11.8px;color:var(--muted);font-weight:600;}
.mb-fees b,.mb-plans b{font-size:22px;color:var(--navy-dark);font-weight:800;}
.mb-fees small,.mb-plans small{font-size:11.5px;font-weight:600;color:var(--muted);margin-left:6px;}
.mb-plans em{font-style:normal;font-size:13px;font-weight:700;color:var(--navy);}
.mb-rights{display:grid;gap:10px;margin:4px 0 18px;padding:14px 0;border-top:1px dashed #eadfe5;border-bottom:1px dashed #eadfe5;}
.mb-rights>div{display:grid;grid-template-columns:22px 1fr auto;gap:8px;align-items:center;font-size:12.5px;}
.mb-rights i{color:var(--navy);}
.mb-rights span{color:var(--muted);}
.mb-rights b{color:var(--navy-dark);text-align:right;font-size:12.5px;}
.mb-card h4{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:var(--navy);margin-bottom:10px;}
.mb-list{list-style:none;display:grid;gap:8px;margin-bottom:12px;}
.mb-list li{position:relative;padding-left:22px;font-size:13px;line-height:1.5;}
.mb-list li::before{content:"\f00c";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;left:0;top:1px;font-size:11px;color:#1e7e42;}
.mb-fine{font-size:11.8px;color:var(--muted);line-height:1.55;margin-bottom:16px;}
.mb-card>.btn,.mb-actions{margin-top:auto;}
.mb-card>.btn{text-align:center;}
.mb-actions{display:flex;gap:8px;flex-wrap:wrap;}
.mb-actions .btn{flex:1;text-align:center;padding-left:12px;padding-right:12px;}
.mb-card .btn-ghost{background:#fff;color:var(--navy);border:1px solid var(--navy);}
.mb-foot{margin:20px 0 0;font-size:12.5px;color:var(--muted);display:flex;gap:8px;align-items:center;}
.mb-foot i{color:var(--navy);}
.mb-compare-wrap,.mb-process{margin-top:46px;}
.mb-compare-wrap h3,.mb-process h3{font-size:20px;color:var(--navy-dark);margin-bottom:16px;}
.mb-compare td,.mb-compare th{white-space:nowrap;}
.mb-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;}
.mb-flow li{flex-direction:column;padding:0;gap:10px;}
.mb-flow li::before{left:42px;right:-10px;top:14px;bottom:auto;width:auto;height:2px;}
.mb-flow li:last-child::before{display:none;}
.mb-flow .n{background:var(--navy);color:#fff;}
.apply-head{padding-top:0;padding-bottom:26px;}
.jn-section{padding-top:44px;}
@media(max-width:1000px){.mb-grid{grid-template-columns:1fr;max-width:560px;}.mb-flow{grid-template-columns:1fr;}.mb-flow li{flex-direction:row;padding-bottom:16px;}.mb-flow li::before{left:14px;right:auto;top:30px;bottom:2px;width:2px;height:auto;}.mb-intro h2,.apply-head h2{font-size:25px;}}
