body:not(.authenticated)>header,body:not(.authenticated)>.layout{display:none}body.authenticated>.vanity{display:none}
.vanity{color:#091f3b;font-family:Arial,Helvetica,sans-serif;min-height:100vh;background:#071d33}.vanity *{box-sizing:border-box}.vanity a{color:inherit;text-decoration:none}.vanity .vanity-nav{display:flex;align-items:center;gap:48px;min-height:80px;padding:14px max(6vw,24px);background:#fff;color:#071b37;position:relative;z-index:1}.vanity-brand{display:flex;align-items:center;gap:10px;white-space:nowrap;font-weight:800;font-size:clamp(23px,2.5vw,32px);letter-spacing:-1px}.vanity-brand img{width:44px;height:44px;object-fit:contain}.vanity-brand em{font-style:normal;color:#ba8a3c}.vanity-nav-links{display:flex;align-items:center;gap:38px;font-weight:600;font-size:14px}.vanity-nav-actions{display:flex;align-items:center;gap:12px;margin-left:auto;font-weight:700;font-size:13px}.vanity-nav .nav-login,.vanity-nav .nav-request{padding:13px 22px;border-radius:6px}.vanity-nav .nav-login{border:1px solid #455e7a}.vanity-nav .nav-request{background:linear-gradient(#edb955,#bb893c);color:#fff}
.vanity-hero{background:linear-gradient(90deg,rgba(2,24,47,.28) 0%,rgba(3,28,52,.18) 48%,rgba(3,24,45,.04) 100%),url('/images/vanity-construction-hero.webp') center center/cover no-repeat;min-height:790px;color:#fff}.vanity-content{max-width:1600px;padding:55px max(6vw,24px) 45px;margin:auto;display:grid;grid-template-columns:minmax(0,1.55fr) minmax(360px,1fr);align-items:start;gap:clamp(32px,3.5vw,64px)}.vanity-eyebrow{font-size:11px;letter-spacing:3px;font-weight:800;margin:0 0 22px}.vanity-intro{padding-top:24px}.vanity-intro h1{color:#fff;font-size:clamp(39px,4.1vw,64px);line-height:1.08;letter-spacing:-1.8px;margin:0 0 20px;max-width:760px}.vanity-intro h1 span{color:#f8bb49}.vanity-intro>p:not(.vanity-eyebrow){max-width:650px;font-size:clamp(17px,1.6vw,22px);line-height:1.42;margin:0;color:#fff}.vanity-features{display:grid;grid-template-columns:repeat(4,1fr);max-width:660px;margin-top:40px}.vanity-feature{text-align:center;padding:0 12px;border-right:1px solid #ffffff70;line-height:1.35;font-size:16px;font-weight:600}.vanity-feature:last-child{border:0}.vanity-feature svg{display:block;width:45px;height:45px;margin:0 auto 10px;fill:none;stroke:#f7b846;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.vanity-side{display:grid;gap:12px}.vanity-card{background:#fff;color:#0a1e3c;padding:38px 42px 30px;border-radius:9px;box-shadow:0 8px 28px #0003;text-align:center}.vanity-card h2{font-size:30px;letter-spacing:-.8px;margin:0 0 5px;color:#091d39}.vanity-card p{color:#637693;line-height:1.45;font-size:14px;margin:0 0 22px}.vanity-card .vendor-icon{width:21px;height:21px;flex:none}.vanity-google,.vanity-passkey,.vanity-apple{font:700 15px Arial,sans-serif;display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:52px;border:1px solid #d2dbe6;border-radius:6px;text-decoration:none;cursor:pointer;margin:10px 0;color:#0b1d3b;background:#fff}.vanity-passkey{background:linear-gradient(#f0c66f,#c69340);border-color:#d5a453;color:#0b203c}.vanity-google:hover{background:#f3f6f9}.vanity-passkey:hover{filter:brightness(.97)}.vanity-apple{background:#fff;color:#53647b;cursor:not-allowed}.vanity a:focus-visible,.vanity button:focus-visible{outline:3px solid #f7b846;outline-offset:3px}.vanity-card small{display:block;color:#6e8098;font-size:12px;margin-top:7px}.vanity-card .vanity-access{border-top:1px solid #dce3eb;margin:22px 0 0;padding-top:18px;color:#60738e;font-size:12px}.vanity-card #passkey-login-status:empty{display:none}.vanity-card #passkey-login-status{margin:8px 0;color:#a32c2c;font-size:13px}.vanity-private{display:flex;gap:16px;align-items:center;border-radius:9px;padding:21px 24px;background:#eef3f7;color:#0a1e3c}.vanity-private svg{width:42px;height:42px;flex:none;stroke:#0b2445;fill:none;stroke-width:1.8}.vanity-private strong{display:block;font-size:16px}.vanity-private p{color:#637693;line-height:1.35;font-size:14px;margin:5px 0 0}
.vanity-footer{background:#071d33;color:#dbe6f0;padding:32px max(6vw,24px) 22px}.vanity-footer-main{max-width:1450px;margin:auto;display:flex;gap:55px;align-items:center;justify-content:space-between}.vanity-footer .vanity-brand{color:#fff}.vanity-footer .vanity-brand em{color:#e2b155}.vanity-footer-copy{font-size:13px;line-height:1.5;color:#b7c7d8;max-width:350px}.vanity-footer nav{display:flex;gap:24px;font-size:13px}.vanity-copyright{max-width:1450px;margin:26px auto 0;padding-top:18px;border-top:1px solid #274057;font-size:12px;color:#b7c7d8}
@media(max-width:900px){.vanity .vanity-nav{gap:18px;flex-wrap:wrap}.vanity-nav-links{gap:18px}.vanity-content{grid-template-columns:1fr;gap:35px}.vanity-hero{background-position:center,35% center}.vanity-intro{padding-top:15px}.vanity-side{width:100%;max-width:540px}.vanity-footer-main{flex-wrap:wrap;gap:22px}}
@media(max-width:600px){.vanity .vanity-nav{min-height:66px;padding:10px 18px}.vanity-brand{font-size:23px}.vanity-brand img{width:36px;height:36px}.vanity-nav-links{order:3;width:100%;justify-content:center;gap:30px;font-size:12px}.vanity-nav-actions{margin-left:auto}.vanity-nav .nav-login{padding:10px 12px}.vanity-nav .nav-request{display:inline-flex;padding:10px 12px}.vanity-content{padding:38px 20px}.vanity-intro{padding-top:24px}.vanity-intro h1{font-size:39px}.vanity-intro>p:not(.vanity-eyebrow){font-size:17px}.vanity-features{grid-template-columns:repeat(4,1fr);margin-top:30px}.vanity-feature{font-size:11px;padding:0 4px}.vanity-feature svg{width:34px;height:34px}.vanity-card{padding:28px 24px}.vanity-card h2{font-size:27px}.vanity-footer{padding:28px 20px}.vanity-footer-main{display:grid}.vanity-footer nav{flex-wrap:wrap}}


/* Public membership layout; authentication and the member dashboard keep their existing behavior. */
.vanity-nav .nav-request{color:#10233b}
.vanity [id]{scroll-margin-top:24px}
.vanity-intro>p:not(.vanity-eyebrow){max-width:620px}
.vanity-side{min-width:0}
.vanity-card{padding:42px 40px 32px;min-height:430px;display:flex;flex-direction:column;justify-content:center}
.vanity-card .vanity-access{margin-top:24px}
.vanity-private{align-items:flex-start;padding:26px 28px}
.vanity-private>svg{width:48px;height:48px;padding:8px;border-radius:50%;background:#dfe7ef}
.vanity-private details{margin-top:12px;font-size:13px;line-height:1.5}
.vanity-private summary{cursor:pointer;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.vanity-private summary:focus-visible{outline:3px solid #bc8733;outline-offset:4px}
.vanity-private details:target{padding:10px;border:1px solid #9baec3;border-radius:6px}
.vanity-footer-main{min-height:70px}
.vanity-footer nav{flex-direction:column;gap:8px;border-left:1px solid #526376;padding-left:40px}
.vanity-footer-copy{border-left:1px solid #526376;padding-left:40px}
@media(min-width:901px){.vanity-content{min-height:790px}.vanity-intro h1{font-size:clamp(39px,4.1vw,64px)}}
@media(max-width:1100px){.vanity .vanity-nav{gap:24px;padding-inline:24px}.vanity-nav-links{gap:20px}.vanity-content{padding-inline:24px;gap:30px}.vanity-card{padding:32px 24px}}
@media(max-width:900px){.vanity-content{grid-template-columns:1fr;gap:40px}.vanity-hero{background-position:center,35% center}.vanity-intro h1{max-width:740px}.vanity-side{max-width:540px;justify-self:center}.vanity-intro{padding-top:0}.vanity-footer-main{gap:28px}.vanity-footer-copy{padding-left:24px}}
@media(max-width:600px){.vanity .vanity-nav{padding:16px 20px;gap:18px}.vanity-nav-links{order:2;justify-content:space-between;width:100%}.vanity-nav-actions{order:3;width:100%;justify-content:space-between}.vanity-content{padding:38px 20px}.vanity-intro h1{font-size:clamp(32px,8.6vw,45px);letter-spacing:-1px}.vanity-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 0}.vanity-feature{font-size:14px}.vanity-feature:nth-child(2){border-right:0}.vanity-card{padding:30px 24px;min-height:0}.vanity-private{padding:22px 18px}.vanity-footer nav,.vanity-footer-copy{padding-left:0;border-left:0}.vanity-footer nav{flex-direction:row;gap:24px}}

/* Vanity page without a public navigation bar. */
.vanity-hero-brand{display:flex;align-items:center;gap:10px;width:max-content;margin:0 0 42px;color:#fff;font-weight:800;font-size:clamp(24px,2.4vw,32px);letter-spacing:-1px;text-shadow:0 2px 12px #0008}
.vanity-hero-brand img{width:44px;height:44px;object-fit:contain}.vanity-hero-brand em{font-style:normal;color:#f2bd57}
.vanity-request-access{width:100%;min-height:48px;margin-top:14px;border:1px solid #bd8736;border-radius:6px;background:#fff7e9;color:#8a5c17;font:700 14px Arial,sans-serif;cursor:pointer}
.vanity-request-access:hover{background:#ffefce}.vanity-private-request{margin-top:12px;padding:0;border:0;background:transparent;color:#8b5c17;font:700 13px Arial,sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

.access-dialog{width:min(620px,calc(100vw - 32px));max-height:calc(100vh - 32px);padding:0;border:0;border-radius:12px;box-shadow:0 24px 80px #0006;color:#0a1e3c}
.access-dialog::backdrop{background:#031326b8;backdrop-filter:blur(3px)}
.access-request-form{padding:28px}.access-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:8px}
.access-dialog-head h2{margin:2px 0 0;font-size:29px;letter-spacing:-.7px}.access-eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:800;color:#9a6a20}
.access-dialog-head>button{border:0;background:transparent;color:#50647d;font-size:30px;line-height:1;cursor:pointer}.access-request-form>p{color:#60738e;font-size:14px;line-height:1.45}
.access-request-form label{display:grid;gap:6px;margin-top:14px;font-size:13px;font-weight:700;color:#172c49}.access-request-form label span{font-weight:400;color:#7a8ba1}
.access-request-form input,.access-request-form select,.access-request-form textarea{width:100%;border:1px solid #cbd6e2;border-radius:7px;padding:11px 12px;font:14px Arial,sans-serif;color:#102641;background:#fff}.access-request-form textarea{resize:vertical}
.access-request-form input:focus,.access-request-form select:focus,.access-request-form textarea:focus{outline:3px solid #e6b65d55;border-color:#b98736}
.access-form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.access-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.access-request-status{min-height:20px;margin:14px 0 0!important;color:#60738e!important}.access-request-status.success{color:#22643c!important}.access-request-status.error{color:#a32c2c!important}
.access-dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.access-dialog-actions button{min-height:42px;padding:0 18px;border:1px solid #c8d3df;border-radius:6px;background:#fff;color:#19314f;font-weight:700;cursor:pointer}.access-dialog-actions button[type=submit]{border-color:#bd8736;background:linear-gradient(#f0c66f,#c69340);color:#0b203c}.access-dialog-actions button:disabled{opacity:.55;cursor:wait}
@media(max-width:600px){.vanity-hero-brand{margin-bottom:30px}.access-request-form{padding:22px 18px}.access-form-row{grid-template-columns:1fr}.access-dialog-actions{display:grid;grid-template-columns:1fr 1fr}}


/* Transparent public navigation layered over the vanity hero. */
.vanity{position:relative}
.vanity .vanity-nav-transparent{
  position:absolute;
  inset:0 0 auto 0;
  z-index:5;
  min-height:82px;
  padding:16px max(6vw,24px);
  background:linear-gradient(180deg,rgba(3,20,39,.72),rgba(3,20,39,.18) 72%,transparent);
  color:#fff;
  border:0;
  box-shadow:none;
}
.vanity-nav-transparent .vanity-brand{color:#fff;text-shadow:0 2px 10px #0009}
.vanity-nav-transparent .vanity-brand img{filter:none}
.vanity-nav-transparent .vanity-brand em{color:#f2bd57}
.vanity-nav-transparent .vanity-nav-links{margin-left:24px}
.vanity-nav-transparent .vanity-nav-links a{color:#fff;text-shadow:0 1px 6px #000a}
.vanity-nav-transparent .vanity-nav-links a:hover{text-decoration:underline;text-underline-offset:5px}
.vanity-nav-transparent .vanity-nav-actions{margin-left:auto}
.vanity-nav-transparent .nav-request{
  border:1px solid #d7a345;
  border-radius:6px;
  padding:13px 22px;
  background:linear-gradient(#edb955,#bb893c);
  color:#10233b;
  font:700 13px Arial,sans-serif;
  cursor:pointer;
}
.vanity-nav-transparent .nav-request:hover{filter:brightness(1.05)}
.vanity-content{padding-top:132px}
.vanity-hero-brand{display:none}

@media(max-width:760px){
  .vanity .vanity-nav-transparent{
    position:absolute;
    min-height:72px;
    padding:12px 18px;
    gap:14px;
    flex-wrap:wrap;
    background:linear-gradient(180deg,rgba(3,20,39,.84),rgba(3,20,39,.34) 82%,transparent);
  }
  .vanity-nav-transparent .vanity-brand{font-size:22px}
  .vanity-nav-transparent .vanity-brand img{width:34px;height:34px}
  .vanity-nav-transparent .vanity-nav-links{
    order:3;
    width:100%;
    margin-left:0;
    justify-content:flex-start;
    gap:22px;
    font-size:12px
  }
  .vanity-nav-transparent .vanity-nav-actions{margin-left:auto}
  .vanity-nav-transparent .nav-request{padding:10px 12px}
  .vanity-content{padding-top:145px}
}

.login-vanity .vanity-hero{background-image:linear-gradient(270deg,rgba(2,24,47,.48) 0%,rgba(3,28,52,.27) 38%,rgba(3,24,45,.02) 100%),url('/images/vanity-professionals.webp')}
.login-vanity .vanity-content{grid-template-columns:minmax(360px,1fr) minmax(0,1.55fr)}
.login-vanity .vanity-side{grid-column:1;grid-row:1}
.login-vanity .vanity-intro{grid-column:2;grid-row:1}
@media(max-width:900px){.login-vanity .vanity-content{grid-template-columns:1fr}.login-vanity .vanity-intro{grid-column:1;grid-row:1}.login-vanity .vanity-side{grid-column:1;grid-row:2}}

.login-vanity .vanity-card{background:rgba(255,255,255,.90);backdrop-filter:blur(5px)}


.conduct-requirement{margin:14px 0;padding:12px;border-radius:7px;background:#f4f7fa;font-size:14px}.conduct-requirement p{margin:0 0 8px}.conduct-requirement a,.vanity-footer a[data-open-conduct]{color:#8a5c17;text-decoration:underline;cursor:pointer}.conduct-requirement #conduct-status{margin:8px 0 0;font-weight:700;color:#805c26}.conduct-requirement #conduct-status.accepted{color:#176239}.conduct-dialog{width:min(760px,calc(100% - 28px));max-height:90vh;border:0;border-radius:10px;padding:22px;color:#102641;box-shadow:0 12px 50px #0005}.conduct-dialog::backdrop{background:#031326c9}.conduct-head,.conduct-actions{display:flex;justify-content:space-between;align-items:center;gap:12px}.conduct-head h2{margin:0;font-size:1.35rem}.conduct-head button{border:0;background:transparent;font-size:28px;cursor:pointer}.conduct-instruction,#conduct-read-status{font-size:.9rem;color:#52667a}.conduct-scroll{height:min(50vh,440px);overflow-y:auto;border:1px solid #cbd6e2;border-radius:7px;padding:16px;line-height:1.55}.conduct-scroll h2{font-size:1.05rem;margin:1.2em 0 .35em}.conduct-scroll h2:first-child{margin-top:0}.conduct-actions{justify-content:flex-end}.conduct-actions button{padding:10px 18px;border:1px solid #b6c4d0;border-radius:6px;cursor:pointer}.conduct-actions #accept-conduct{background:#be8c38;color:#fff;border-color:#be8c38;font-weight:700}.conduct-actions button:disabled{opacity:.45;cursor:not-allowed}
