/* NGC 1.0.3: exclusively scoped to demo gate. Existing member profiles unaffected. */
body:has(.ngc-nm-gate) #footer,body:has(.ngc-nm-gate) footer,body:has(.ngc-nm-gate) .gp-footer,body:has(.ngc-nm-gate) #gp-footer,body:has(.ngc-nm-gate) .footer-widgets{display:none!important}
body:has(.ngc-nm-gate){overflow-x:hidden}
.ngc-nm-gate{--ngc-nm-available-height:calc(100svh - 255px);position:relative;isolation:isolate;box-sizing:border-box;width:100%;height:var(--ngc-nm-available-height);min-height:380px;max-height:100svh;display:flex;align-items:center;justify-content:flex-end;overflow:hidden;padding:clamp(15px,2.5vw,38px) clamp(24px,6.5vw,110px);background:#10090b;color:#f3d5c6}
.ngc-nm-gate *{box-sizing:border-box}
.ngc-nm-photo{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(90deg,rgba(10,5,7,.03) 0%,rgba(10,5,7,.08) 38%,rgba(10,5,7,.66) 66%,rgba(10,5,7,.83) 100%),var(--ngc-nm-portrait);background-size:cover;background-position:35% 28%;transform:scale(1.005)}
.ngc-nm-card{width:min(100%,460px);max-height:100%;overflow:auto;scrollbar-width:none;text-align:center;padding:clamp(18px,2.3vw,29px) clamp(21px,2.7vw,34px);border:1px solid rgba(220,163,140,.67);border-radius:4px;background:linear-gradient(145deg,rgba(20,11,14,.86),rgba(12,7,10,.88));box-shadow:0 20px 65px rgba(0,0,0,.35),inset 0 0 0 1px rgba(255,229,212,.04);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);font-family:Arial,Helvetica,sans-serif}
.ngc-nm-card::-webkit-scrollbar{display:none}
.ngc-nm-crown{display:block;width:32px;height:27px;margin:0 auto 13px;color:#e6b6a5}
.ngc-nm-card h1{margin:0;color:#f3d2c1;font:400 clamp(31px,2.9vw,42px)/1.07 Georgia,'Times New Roman',serif;letter-spacing:-.7px;text-shadow:none}
.ngc-nm-card h1 em{font-weight:400;font-style:italic}
.ngc-nm-rule{display:flex;align-items:center;justify-content:center;gap:9px;width:65%;margin:16px auto 14px;height:7px}
.ngc-nm-rule:before,.ngc-nm-rule:after{content:'';height:1px;flex:1;background:linear-gradient(90deg,transparent,rgba(224,159,126,.5))}
.ngc-nm-rule:after{transform:rotate(180deg)}
.ngc-nm-rule span{width:5px;height:5px;transform:rotate(45deg);border:1px solid #e3a889}
.ngc-nm-status{margin:0 0 7px;color:#edbb9e;font:600 10px/1.5 Arial,sans-serif;letter-spacing:2.3px}
.ngc-nm-copy{margin:0 0 20px;color:#f0d7ce;font:400 13px/1.5 Arial,sans-serif}
.ngc-nm-btn{display:block;width:100%;min-height:46px;padding:11px 12px;margin:0 0 10px;border:1px solid #e8b7a3;border-radius:3px;background:linear-gradient(105deg,#e6b8a6,#d6a08e,#e9bdab);color:#26161a;box-shadow:inset 0 1px 0 rgba(255,243,228,.45);font:700 11px/1.35 Arial,sans-serif;letter-spacing:1.1px;cursor:pointer;transition:filter .15s ease}
.ngc-nm-btn:hover{filter:brightness(1.08)}
.ngc-nm-secondary{background:transparent;color:#f3c8b6;box-shadow:none;border-color:rgba(233,180,161,.78)}
.ngc-nm-btn:focus-visible{outline:2px solid white;outline-offset:3px}
.ngc-nm-price{margin:15px 0 0;color:#e6c0b0;font:500 10px/1.5 Arial,sans-serif;letter-spacing:1.7px}
.ngc-nm-note{margin:10px 0 0;color:#e5c4b8;font:12px/1.4 Arial,sans-serif}
.ngc-nm-note:empty{display:none}
@media(max-width:760px){.ngc-nm-gate{justify-content:center;align-items:flex-end;padding:12px 14px 20px;min-height:380px}.ngc-nm-photo{background-image:linear-gradient(180deg,rgba(9,5,7,.05) 0%,rgba(9,5,7,.05) 27%,rgba(9,5,7,.65) 67%,rgba(9,5,7,.88) 100%),var(--ngc-nm-portrait);background-position:center 22%}.ngc-nm-card{width:min(100%,440px);padding:17px 20px;background:rgba(18,9,12,.84)}.ngc-nm-crown{width:27px;height:23px;margin-bottom:7px}.ngc-nm-card h1{font-size:clamp(29px,7.2vw,37px)}.ngc-nm-rule{margin:9px auto}.ngc-nm-copy{margin-bottom:12px}.ngc-nm-btn{min-height:41px;margin-bottom:7px}.ngc-nm-price{margin-top:9px;font-size:9px}}
@media(max-height:750px) and (min-width:761px){.ngc-nm-card{padding:14px 23px}.ngc-nm-crown{margin-bottom:7px}.ngc-nm-card h1{font-size:34px}.ngc-nm-rule{margin:8px auto}.ngc-nm-copy{margin-bottom:11px}.ngc-nm-btn{min-height:40px;margin-bottom:7px}.ngc-nm-price{margin-top:9px}}
/* v1.0.4 — two-panel identity and activation layout; scoped to the NGC demo gate only. */
.ngc-nm-gate{justify-content:center;padding:clamp(14px,2.3vw,30px) clamp(18px,4vw,70px)}
.ngc-nm-photo{background-image:linear-gradient(90deg,rgba(9,5,7,.22),rgba(9,5,7,.48) 55%,rgba(9,5,7,.32)),var(--ngc-nm-portrait);background-position:center 28%}
.ngc-nm-panels{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,1fr);align-items:center;gap:clamp(18px,3vw,48px);width:min(100%,1390px);max-height:100%}
.ngc-nm-identity,.ngc-nm-card{width:100%;min-width:0;border:1px solid rgba(232,177,150,.78);border-radius:20px;background:linear-gradient(140deg,rgba(29,16,18,.87),rgba(10,6,8,.91));box-shadow:0 24px 65px rgba(0,0,0,.43),inset 0 0 0 1px rgba(255,218,188,.07);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.ngc-nm-identity{display:grid;grid-template-columns:47% minmax(0,1fr);align-items:center;gap:clamp(12px,2vw,30px);padding:clamp(15px,1.7vw,26px);height:clamp(285px,29vw,410px);overflow:hidden}
.ngc-nm-identity-image{height:100%;min-height:0;border:1px solid rgba(236,180,145,.8);border-radius:22px;overflow:hidden;box-shadow:0 0 24px rgba(213,132,86,.18)}
.ngc-nm-identity-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%}
.ngc-nm-identity-info{min-width:0;position:relative;text-align:left}
.ngc-nm-identity-crown{width:35px;height:31px;color:#e7b29a;display:block;margin:0 0 14px auto}
.ngc-nm-identity-kicker{color:#e9bba5;letter-spacing:3px;font:600 11px/1.4 Arial,sans-serif;margin:0 0 10px}
.ngc-nm-identity h2{font:400 clamp(29px,3.4vw,54px)/1.07 Georgia,'Times New Roman',serif;color:#f5d4c3;margin:0;overflow-wrap:anywhere}
.ngc-nm-identity-divider{color:#dfa98e;font-size:19px;margin:12px 0}
.ngc-nm-identity-state{display:inline-block;max-width:100%;border:1px solid #c99c85;border-radius:40px;padding:10px 12px;color:#f0c9b6;letter-spacing:1.2px;font:600 10px/1.4 Arial,sans-serif;margin:0 0 16px}
.ngc-nm-identity-desc{font:14px/1.5 Arial,sans-serif;color:#f0d7ca;margin:0 0 20px}
.ngc-nm-identity-bottom{border-top:1px solid rgba(219,168,143,.55);padding-top:15px;color:#e5b39b;font:600 10px/1.8 Arial,sans-serif;letter-spacing:2.3px}
.ngc-nm-identity-bottom span{font-size:9px;letter-spacing:1.7px}
.ngc-nm-card{max-height:100%;padding:clamp(18px,2.2vw,32px);border-radius:20px}
.ngc-nm-card h1{font-size:clamp(31px,3.2vw,48px)}
.ngc-nm-btn{border-radius:12px}
@media(max-width:1000px) and (min-width:761px){.ngc-nm-gate{padding:12px}.ngc-nm-panels{gap:12px}.ngc-nm-identity{gap:12px;padding:12px;height:320px}.ngc-nm-identity h2{font-size:30px}.ngc-nm-identity-desc{margin-bottom:10px}.ngc-nm-identity-bottom{padding-top:8px}.ngc-nm-card{padding:15px}.ngc-nm-card h1{font-size:32px}}
@media(max-width:760px){.ngc-nm-gate{height:auto;min-height:var(--ngc-nm-available-height);max-height:none;overflow:visible;align-items:flex-start;padding:12px 12px 22px}.ngc-nm-photo{z-index:-1;background-position:center top}.ngc-nm-panels{display:flex;flex-direction:column;gap:12px;max-height:none;width:min(100%,460px)}.ngc-nm-identity{width:100%;height:190px;grid-template-columns:37% minmax(0,1fr);gap:13px;padding:12px;border-radius:14px}.ngc-nm-identity-image{border-radius:12px}.ngc-nm-identity-crown{display:none}.ngc-nm-identity-kicker{font-size:9px;margin-bottom:5px}.ngc-nm-identity h2{font-size:clamp(25px,7vw,34px)}.ngc-nm-identity-divider{margin:4px 0;font-size:13px}.ngc-nm-identity-state{padding:6px 8px;font-size:8px;margin-bottom:6px}.ngc-nm-identity-desc{font-size:11px;margin-bottom:6px}.ngc-nm-identity-bottom{padding-top:6px;font-size:8px;line-height:1.4}.ngc-nm-identity-bottom span{font-size:7px}.ngc-nm-card{border-radius:14px;max-height:none;padding:16px 18px}.ngc-nm-card h1{font-size:clamp(29px,7vw,37px)}}
@media(max-height:650px) and (min-width:761px){.ngc-nm-identity{height:280px}.ngc-nm-card{padding:12px}.ngc-nm-card h1{font-size:30px}.ngc-nm-identity h2{font-size:30px}.ngc-nm-identity-desc{margin-bottom:8px}}

/* v1.0.5 — equal-height desktop panels; no changes to membership logic. */
@media (min-width:761px){
  .ngc-nm-panels{align-items:stretch;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .ngc-nm-identity{height:auto;min-height:0;align-self:stretch}
  .ngc-nm-card{height:100%;max-height:none;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
  .ngc-nm-identity-image{align-self:stretch;height:100%;min-height:0}
  .ngc-nm-identity-info{align-self:center}
}
