/* Client-facing practice page. STAGING ONLY. Same palette as the colleague profile (profile.css .scp),
   warmer and calmer. Solid, centered buttons; teal for every action (no course buttons here). No Scout. */
:root{--navy:#1d3557;--ink2:#3f5166;--sage-d:#4f6f58;--sage-l:#e3ece4;--sand:#f7f1e6;--glass:#d7ebe6;--teal:#2f6b5e;--teal-h:#245548;--sun:#FFC700;--r:22px;
  --sans:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);color:var(--navy);background:linear-gradient(180deg,#fdf9f1 0,#fff 640px);overflow-x:clip}
.pp-skip{position:absolute;left:-999px;top:0;min-height:44px;display:inline-flex;align-items:center;background:var(--navy);color:#fff;padding:.6rem 1rem;border-radius:0 0 10px 0;z-index:9}
.pp-skip:focus{left:0}
.pp-wrap{width:min(66rem,calc(100% - 2rem));margin:0 auto}
.pp{padding:1.25rem 0 1.5rem}
.pp h1,.pp h2,.pp h3{margin:0;color:var(--navy);letter-spacing:-.01em}
.pp p{margin:0;color:var(--ink2);line-height:1.65}
.pp a{color:var(--teal)}
.pp-sample{display:inline-block;font-size:.82rem;background:#fff7d6;border:1px solid #f1e3a6;border-radius:10px;padding:.35rem .7rem;margin:0 0 .8rem!important;color:#5a4a00!important}

.pp-hero{position:relative;overflow:hidden;display:flex;gap:1.7rem;align-items:center;padding:2.2rem 2.2rem 2rem;border-radius:var(--r);
  background:linear-gradient(135deg,#fbe9c9 0%,var(--sand) 45%,var(--glass) 100%);box-shadow:0 10px 30px rgba(29,53,87,.08)}
.pp-blob{position:absolute;border-radius:50%;pointer-events:none}
.pp-blob1{width:280px;height:280px;right:-90px;top:-100px;background:radial-gradient(circle,rgba(255,199,0,.3),rgba(255,199,0,0) 70%)}
.pp-blob2{width:180px;height:180px;right:120px;bottom:-120px;background:rgba(255,255,255,.55)}
.pp-avatar{flex:0 0 auto;width:140px;height:140px;border-radius:50%;overflow:hidden;display:grid;place-items:center;position:relative;
  background:linear-gradient(145deg,#d9a35f,#b9783a);box-shadow:0 0 0 6px #fff,0 10px 26px rgba(29,53,87,.18)}
.pp-avatar img{width:100%;height:100%;object-fit:cover}
.pp-avatar span{font-size:2.7rem;font-weight:700;color:#fff}
.pp-id{position:relative;min-width:0;flex:1}
.pp-name{font-size:clamp(1.8rem,4.2vw,2.6rem);line-height:1.1;font-weight:700;overflow-wrap:anywhere}
.pp-cred{margin-top:.3rem!important;font-weight:500;color:var(--navy)!important}
.pp-lic{margin-top:.5rem!important;font-size:.93rem;color:var(--navy)!important}
.pp-assoc{margin-top:.35rem!important;font-size:.93rem;color:var(--navy)!important}
.pp-headline{margin-top:.8rem!important;font-size:1.1rem;max-width:40rem;color:var(--navy)!important}
.pp-meta{display:flex;flex-wrap:wrap;gap:.45rem;margin:1rem 0 0;padding:0;list-style:none}
.pp-meta li{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .8rem;border-radius:999px;background:#fff;font-size:.88rem;font-weight:500;border:1px solid rgba(29,53,87,.08)}
.pp-meta svg{width:16px;height:16px;flex:0 0 auto}

.pp-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-template-areas:"main side";gap:1.25rem;margin-top:1.25rem;align-items:start}
.pp-main{grid-area:main;min-width:0}
.pp-side{grid-area:side;position:sticky;top:1rem}
.pp-panel{background:#fff;border-radius:var(--r);padding:1.4rem;border:1px solid rgba(29,53,87,.09);box-shadow:0 8px 24px rgba(29,53,87,.08)}
.pp-panel h2{font-size:1.15rem;margin-bottom:.6rem}
.pp-fee{margin-bottom:1rem!important}
.pp-fee b{font-size:1.9rem;color:var(--navy)}
.pp-fee span{color:var(--ink2)}
.pp-fee-a b{font-size:1rem}

.pp-btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:.5rem;width:100%;min-height:48px;padding:.75rem 1.2rem;border-radius:999px;
  background:var(--teal);color:#fff!important;font-weight:600;font-size:1rem;text-decoration:none;border:2px solid var(--teal);
  box-shadow:0 3px 0 rgba(18,51,51,.28);transition:background .15s,transform .08s,box-shadow .12s}
.pp-btn:hover{background:var(--teal-h);border-color:var(--teal-h)}
.pp-btn:active{transform:translateY(2px);box-shadow:0 1px 0 rgba(18,51,51,.28)}
.pp-btn:focus-visible{outline:3px solid var(--navy);outline-offset:3px}
.pp-btn svg{width:18px;height:18px;flex:0 0 auto;stroke:currentColor}
.pp-book{min-height:54px;font-size:1.08rem}
.pp-alts{display:grid;gap:.55rem;margin-top:.65rem}
.pp-alt{min-height:46px;font-size:.95rem;font-weight:500}
.pp-direct{margin-top:.8rem!important;font-size:.86rem;line-height:1.5!important}

.pp-card{background:#fff;border:1px solid rgba(29,53,87,.09);border-radius:var(--r);padding:1.4rem 1.5rem;margin:0 0 1rem;box-shadow:0 4px 14px rgba(29,53,87,.05)}
.pp-card h2{font-size:1.25rem;margin-bottom:.65rem}
.pp-card p+p{margin-top:.75rem}
.pp-words{background:linear-gradient(180deg,#fffaf0,#fff)}
.pp-words p{font-size:1.05rem}
.pp-chips{display:flex;flex-wrap:wrap;gap:.45rem;margin:.85rem 0 0;padding:0;list-style:none}
.pp-chips li{padding:.4rem .85rem;border-radius:999px;background:var(--sage-l);color:var(--navy);font-size:.92rem;font-weight:500}
.pp-faq details{border-top:1px solid #ece6da}
.pp-faq details:first-of-type{border-top:0}
.pp-faq summary{cursor:pointer;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:1rem;font-weight:600;list-style:none;padding:.5rem 0}
.pp-faq summary::-webkit-details-marker{display:none}
.pp-faq summary::after{content:"+";font-size:1.4rem;color:var(--teal);flex:0 0 auto}
.pp-faq details[open] summary::after{content:"\2212"}
.pp-faq details p{padding:0 0 .9rem}
.pp-licard dl{display:grid;grid-template-columns:auto 1fr;gap:.45rem 1rem;margin:0 0 .8rem}
.pp-licard dt{font-weight:600}
.pp-licard dd{margin:0;color:var(--ink2);overflow-wrap:anywhere}
.pp-fine{font-size:.88rem}

.pp-close{margin-top:.5rem;padding:1.8rem 1.5rem;border-radius:var(--r);background:linear-gradient(135deg,var(--glass),var(--sage-l));text-align:center}
.pp-close-h{font-size:1.35rem;font-weight:700;color:var(--navy)!important;margin-bottom:1rem!important}
.pp-close .pp-contact{max-width:24rem;margin:0 auto}
.pp-crisis{margin-top:1.25rem!important;padding:1rem 1.2rem;border-radius:14px;background:#fff;border:1px solid #ece6da;font-size:.95rem}
.pp-crisis a{font-weight:700}
.pp-foot{padding:1.25rem 0 2rem;border-top:1px solid #ece6da;background:#fbf8f2}
.pp-foot p{margin:0;color:#586065;font-size:.85rem;line-height:1.55}
.pp-foot-l{margin-top:.6rem!important}
.pp-foot-l a{color:#586065;display:inline-flex;align-items:center;min-height:44px}

@media (max-width:860px){
  .pp-grid{grid-template-columns:1fr;grid-template-areas:"side" "main"}
  .pp-side{position:static}
}
@media (max-width:600px){
  .pp-wrap{width:calc(100% - 1.5rem)}
  .pp-hero{flex-direction:column;text-align:center;padding:1.7rem 1.1rem 1.5rem;gap:1rem}
  .pp-avatar{width:112px;height:112px}
  .pp-meta{justify-content:center}
  .pp-card{padding:1.2rem 1.1rem}
  .pp-panel{padding:1.2rem 1.1rem}
  .pp-close{padding:1.5rem 1.1rem}
}
@media (prefers-reduced-motion:reduce){.pp-btn{transition:none}}
