/* ============================================================
   YAW STUDIO — Professional Access (/professional-access)
   Approval-based access · same system as Licensing / Contact
   ============================================================ */

.page-professional-access section[id],
.page-professional-access .sec{
  padding-block:0;
}

/* ---- hero ---- */
.page-professional-access .pa-hero.st-hero{
  min-height:100vh;
  min-height:100svh;
  max-height:none;
  height:auto;
}
.page-professional-access .pa-hero .st-hero-inner{
  padding:clamp(120px,16vw,172px) var(--st-pad, clamp(16px,3.5vw,40px)) clamp(36px,6vh,56px);
  max-width:min(46rem,94vw);
}
.page-professional-access .pa-hero .st-hero-title{
  font-size:clamp(28px,5vw,52px);
  line-height:.96;
}
.page-professional-access .pa-hero .st-hero-lead{
  font-size:clamp(14px,1.35vw,17px);
  line-height:1.55;
  max-width:48ch;
}
.page-professional-access .pa-hero-body{
  margin:14px 0 0;font-family:var(--read);font-size:15px;
  line-height:1.6;color:rgba(242,240,236,.42);max-width:48ch;
}
.page-professional-access .pa-hero .st-hero-actions{
  display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;margin-top:22px;
}
.page-professional-access .pa-signin-wrap{
  display:inline-flex;flex-direction:column;gap:6px;
}
.page-professional-access .pa-signin{
  opacity:.45;cursor:default;pointer-events:none;
}
.page-professional-access .pa-signin-note{
  font-family:var(--read);font-size:12px;line-height:1.4;
  color:rgba(242,240,236,.38);max-width:30ch;
}

/* ---- shared panel ---- */
.page-professional-access .pa-panel,
.page-professional-access .pa-who,
.page-professional-access .pa-review,
.page-professional-access .pa-request,
.page-professional-access .pa-confidentiality,
.page-professional-access .pa-licence-cta{
  padding:clamp(48px,8vh,96px) var(--st-pad, clamp(16px,3.5vw,40px));
  border-top:1px solid rgba(255,255,255,.05);
  position:relative;
  transition:background .35s;
}
.page-professional-access .pa-panel::before,
.page-professional-access .pa-who::before,
.page-professional-access .pa-review::before,
.page-professional-access .pa-confidentiality::before{
  content:'';position:absolute;left:0;top:0;width:1px;height:0;
  background:var(--brand-red,#E01B18);
  transition:height .7s var(--st-ease-out, cubic-bezier(.19,1,.22,1));
  pointer-events:none;
}
.page-professional-access .pa-panel.is-in::before,
.page-professional-access .pa-who.is-in::before,
.page-professional-access .pa-review.is-in::before,
.page-professional-access .pa-confidentiality.is-in::before{
  height:100%;
}
.page-professional-access .pa-panel:hover,
.page-professional-access .pa-who:hover{
  background:rgba(255,255,255,.014);
}
.page-professional-access .pa-panel-inner,
.page-professional-access .pa-who-inner,
.page-professional-access .pa-review-inner,
.page-professional-access .pa-request-inner,
.page-professional-access .pa-confidentiality-inner,
.page-professional-access .pa-licence-cta-inner{
  max-width:44rem;
}
.page-professional-access .pa-panel-title{
  margin:0 0 14px;font-family:var(--disp);font-variation-settings:"wdth" 114;
  font-weight:900;font-size:clamp(24px,3.8vw,42px);
  letter-spacing:-.03em;line-height:1;text-transform:uppercase;
  padding-bottom:14px;position:relative;
}
.page-professional-access .pa-panel-title::after{
  content:'';position:absolute;bottom:0;left:0;
  height:1px;width:20px;background:var(--brand-red,#E01B18);
  transition:width .55s var(--st-ease-out, cubic-bezier(.19,1,.22,1));
}
.page-professional-access .pa-panel.is-in .pa-panel-title::after,
.page-professional-access .pa-who.is-in .pa-panel-title::after,
.page-professional-access .pa-review.is-in .pa-panel-title::after,
.page-professional-access .pa-confidentiality.is-in .pa-panel-title::after{
  width:36px;
}
.page-professional-access .pa-panel-lead{
  margin:0 0 18px;font-family:var(--read);font-size:15px;
  line-height:1.55;color:rgba(242,240,236,.5);max-width:46ch;
}
.page-professional-access .pa-list{
  margin-top:18px;max-width:40rem;
}
.page-professional-access .pa-list li{
  font-size:13px;padding:11px 0 11px 16px;
  transition:border-left-color .3s,color .3s,padding-left .3s,background .3s;
}
.page-professional-access .pa-list li:hover{
  border-left-color:var(--brand-red,#E01B18);
  color:rgba(242,240,236,.85);
  padding-left:22px;
  background:rgba(224,27,24,.04);
}

/* ---- excludes: visually distinct muted panel ---- */
.page-professional-access .pa-excludes{
  background:rgba(255,255,255,.015);
}
.page-professional-access .pa-excludes .pa-panel-title{
  color:rgba(242,240,236,.55);
}
.page-professional-access .pa-excludes .st-kicker{
  color:rgba(242,240,236,.35);
}
.page-professional-access .pa-list-muted li{
  color:rgba(242,240,236,.34);
  border-top-color:rgba(255,255,255,.05);
}

/* ---- who ---- */
.page-professional-access .pa-who-body{
  margin:12px 0 0;font-family:var(--read);font-size:15px;
  line-height:1.6;color:rgba(242,240,236,.45);max-width:48ch;
}
.page-professional-access .pa-who-links{
  display:flex;flex-wrap:wrap;gap:14px 26px;align-items:center;margin-top:22px;
}
.page-professional-access .pa-casual{
  font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(242,240,236,.38);
}
.page-professional-access .pa-casual a{
  color:rgba(242,240,236,.65);text-decoration:none;
  border-bottom:1px solid rgba(224,27,24,.35);padding-bottom:2px;
  transition:color .3s,border-color .3s;
}
.page-professional-access .pa-casual a:hover,
.page-professional-access .pa-casual a:focus-visible{
  color:#fff;border-color:var(--brand-red,#E01B18);
}

/* ---- request form (system UI) ---- */
.page-professional-access .pa-request{
  background:#050607;
}
.page-professional-access .pa-request-title{
  margin:0 0 10px;font-family:var(--disp);font-variation-settings:"wdth" 114;
  font-weight:900;font-size:clamp(22px,3vw,36px);
  letter-spacing:-.03em;line-height:1.02;text-transform:uppercase;
}
.page-professional-access .pa-request-lead{
  margin:0 0 26px;font-family:var(--read);font-size:14px;
  line-height:1.55;color:rgba(242,240,236,.48);max-width:52ch;
}
.page-professional-access .pa-form-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:18px 22px;
}
.page-professional-access .pa-field{
  display:flex;flex-direction:column;gap:6px;min-width:0;
}
.page-professional-access .pa-field-wide{grid-column:1 / -1}
.page-professional-access .pa-field label span{
  font-family:var(--mono);font-size:9px;letter-spacing:.16em;
  text-transform:uppercase;color:rgba(242,240,236,.4);
}
.page-professional-access .pa-field abbr{
  text-decoration:none;color:var(--brand-red,#E01B18);border:0;
}
.page-professional-access .pa-field input,
.page-professional-access .pa-field textarea{
  appearance:none;width:100%;
  background:rgba(255,255,255,.03);
  border:0;border-bottom:1px solid rgba(255,255,255,.14);
  border-radius:0;padding:10px 0;color:var(--ink-f,#F2F0EC);
  font-family:var(--read);font-size:15px;line-height:1.4;
  transition:border-color .3s,background .3s;
}
.page-professional-access .pa-field input::placeholder,
.page-professional-access .pa-field textarea::placeholder{
  color:rgba(242,240,236,.26);
}
.page-professional-access .pa-field input:focus,
.page-professional-access .pa-field textarea:focus{
  outline:none;border-bottom-color:var(--brand-red,#E01B18);
  background:rgba(224,27,24,.05);
}
.page-professional-access .pa-field textarea{resize:vertical;min-height:72px}
.page-professional-access .pa-field input.input-validation-error,
.page-professional-access .pa-field textarea.input-validation-error{
  border-bottom-color:rgba(224,27,24,.85);
}
.page-professional-access .pa-error{
  font-family:var(--mono);font-size:9px;letter-spacing:.08em;
  text-transform:uppercase;color:rgba(255,255,255,.9);
}
.page-professional-access .pa-error:empty{display:none}
.page-professional-access .pa-error-summary{
  margin:0 0 20px;font-family:var(--read);font-size:13px;line-height:1.5;
  color:rgba(255,255,255,.95);
}
.page-professional-access .pa-error-summary ul{
  margin:0;padding:0 0 0 16px;
}
.page-professional-access .pa-error-summary.validation-summary-valid{
  display:none;
}
.page-professional-access .pa-hp{
  position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;
}
.page-professional-access .pa-submit{
  margin-top:24px;
  display:grid;grid-template-columns:1fr auto;
  gap:16px 24px;align-items:end;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.08);
}
.page-professional-access .pa-submit-note{
  margin:0;font-family:var(--read);font-size:13px;
  color:rgba(242,240,236,.45);max-width:42ch;line-height:1.45;
}
.page-professional-access .pa-send-btn{
  appearance:none;background:none;border:0;cursor:pointer;
  display:inline-flex;align-items:center;gap:12px;
  padding:12px 0 10px;
  font-family:var(--mono);font-size:11px;letter-spacing:.2em;
  text-transform:uppercase;color:rgba(242,240,236,.85);
  border-bottom:1px solid rgba(224,27,24,.5);
  transition:color .3s,border-color .3s,transform .3s;
}
.page-professional-access .pa-send-btn:hover,
.page-professional-access .pa-send-btn:focus-visible{
  color:#fff;border-color:var(--brand-red,#E01B18);transform:translateX(3px);
}

/* ---- success banner ---- */
.page-professional-access .pa-success{
  padding:clamp(24px,4vw,40px);
  border:1px solid rgba(224,27,24,.35);
  background:rgba(224,27,24,.06);
  max-width:36rem;
}
.page-professional-access .pa-success-title{
  margin:0 0 10px;font-family:var(--disp);font-variation-settings:"wdth" 114;
  font-weight:900;font-size:clamp(20px,2.6vw,30px);
  letter-spacing:-.025em;text-transform:uppercase;line-height:1.05;
}
.page-professional-access .pa-success p:not(.st-kicker){
  margin:0;font-family:var(--read);font-size:14px;line-height:1.6;
  color:rgba(242,240,236,.6);max-width:48ch;
}

/* ---- review steps ---- */
.page-professional-access .pa-review{
  background:#060708;
}
.page-professional-access .pa-review-steps{
  list-style:none;margin:clamp(24px,4vw,40px) 0 0;padding:0;
}
.page-professional-access .pa-review-steps li{
  display:grid;grid-template-columns:auto 1fr;gap:clamp(16px,2.5vw,28px);
  padding:clamp(14px,2vw,22px) 8px;
  border-top:1px solid rgba(255,255,255,.07);
  transition:border-color .35s,background .3s,padding-left .3s;
  cursor:default;
}
.page-professional-access .pa-review-steps li:hover{
  border-top-color:rgba(224,27,24,.45);
  background:rgba(224,27,24,.03);
  padding-left:14px;
}
.page-professional-access .pa-review-steps li:last-child{border-bottom:1px solid rgba(255,255,255,.07)}
.page-professional-access .pa-step-num{
  font-family:var(--mono);font-size:11px;letter-spacing:.2em;
  color:rgba(255,255,255,.7);padding-top:4px;
  transition:color .3s;
}
.page-professional-access .pa-review-steps li:hover .pa-step-num{
  color:var(--brand-red,#E01B18);
}
.page-professional-access .pa-review-steps h3{
  margin:0 0 6px;font-family:var(--disp);font-variation-settings:"wdth" 118;
  font-weight:900;font-size:clamp(15px,1.8vw,20px);
  letter-spacing:-.02em;text-transform:uppercase;line-height:1.15;
  transition:color .3s;
}
.page-professional-access .pa-review-steps li:hover h3{
  color:rgba(242,240,236,1);
}
.page-professional-access .pa-review-steps p{
  margin:0;font-family:var(--read);font-size:14px;
  line-height:1.55;color:rgba(242,240,236,.48);max-width:46ch;
  transition:color .3s;
}
.page-professional-access .pa-review-steps li:hover p{
  color:rgba(242,240,236,.65);
}

/* ---- confidentiality ---- */
.page-professional-access .pa-confidentiality{
  background:#050607;
}
.page-professional-access .pa-confidentiality-inner p:not(.st-kicker):not(.pa-panel-title){
  margin:0 0 12px;font-family:var(--read);font-size:14px;
  line-height:1.6;color:rgba(242,240,236,.4);max-width:50ch;
}

/* ---- kicker dot ---- */
.page-professional-access .pa-panel .st-kicker::before,
.page-professional-access .pa-who .st-kicker::before,
.page-professional-access .pa-review .st-kicker::before,
.page-professional-access .pa-confidentiality .st-kicker::before{
  content:'';display:inline-block;
  width:4px;height:4px;border-radius:50%;
  background:var(--brand-red,#E01B18);
  box-shadow:0 0 8px rgba(224,27,24,.5);
  flex-shrink:0;transition:box-shadow .4s;
}
.page-professional-access .pa-panel:hover .st-kicker::before,
.page-professional-access .pa-who:hover .st-kicker::before{
  box-shadow:0 0 14px rgba(224,27,24,.75);
}

/* ---- licence cross CTA ---- */
.page-professional-access .pa-licence-cta{
  background:#060708;
}
.page-professional-access .pa-licence-cta-title{
  margin:0 0 12px;font-family:var(--disp);font-variation-settings:"wdth" 114;
  font-weight:900;font-size:clamp(22px,3.4vw,38px);
  letter-spacing:-.03em;line-height:1;text-transform:uppercase;
}
.page-professional-access .pa-licence-cta-lead{
  margin:0 0 22px;font-family:var(--read);font-size:15px;
  line-height:1.55;color:rgba(242,240,236,.48);max-width:46ch;
}

/* ---- responsive ---- */
@media (max-width:980px){
  .page-professional-access .pa-form-grid{grid-template-columns:1fr}
  .page-professional-access .pa-submit{grid-template-columns:1fr}
}
@media (max-width:720px){
  .page-professional-access .pa-hero .st-hero-actions{flex-direction:column;align-items:flex-start}
  .page-professional-access .pa-who-links{flex-direction:column;align-items:flex-start}
}
@media (prefers-reduced-motion:reduce){
  .page-professional-access .pa-cross,
  .page-professional-access .pa-send-btn{transition:none}
}
