/* Page styles for /pictorial-video-sops/ and /room-setup-inventory-placement/.
   Builds on style.css tokens and components; everything new is prefixed pm-. */

.pm-hero{padding:clamp(28px,4vw,56px) 0 clamp(48px,7vw,88px);background:linear-gradient(#F6F0E6,#FCFAF6 80%)}
.pm-crumb{margin-bottom:clamp(18px,3vw,28px);font-size:.95rem;color:var(--ink-3)}
.pm-crumb ol{display:flex;flex-wrap:wrap;gap:4px 8px}
.pm-crumb li+li::before{content:"/";margin-right:8px;color:var(--line)}
.pm-crumb a{color:var(--ink-2);text-underline-offset:3px}
.pm-crumb [aria-current]{color:var(--ink)}
.pm-hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.pm-hero__grid--one{grid-template-columns:minmax(0,46rem)}
.pm-hero h1{font-size:clamp(2.2rem,4.2vw,3.7rem);line-height:1.06}
.pm-hero .lead{margin-top:20px}
.pm-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.pm-fig{margin:0}
.pm-fig figcaption{margin-top:12px;font-size:.95rem;color:var(--ink-3);max-width:34em}
.pm-fig .scene{border-radius:6px}

.pm-sec{padding:clamp(48px,7vw,96px) 0}
.pm-sec--tint{background:var(--warm)}
.pm-sec--white{background:#FFFDF8;border-block:1px solid var(--line)}
.pm-sec .sec-head h2{font-size:clamp(1.7rem,3.2vw,2.6rem)}
.pm-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:clamp(24px,5vw,72px);align-items:start}
.pm-split--rev{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
.pm-split h2{font-size:clamp(1.6rem,3vw,2.4rem)}
.pm-copy{display:grid;gap:16px;color:var(--ink-2);font-size:1.125rem}
.pm-copy h2{color:var(--ink)}
.pm-copy a{color:var(--accent);font-weight:500;text-underline-offset:3px}
.pm-copy .ticks{margin-top:4px}
.pm-copy .ticks li{color:var(--ink-2)}
.pm-note{padding:12px 16px;border-left:4px solid var(--orange);background:#FFFDF8;color:var(--ink-2);font-size:1rem;max-width:44rem}
.pm-note b{color:var(--ink);font-weight:500}
.pm-cap{margin-top:12px;color:var(--ink-3);font-size:.95rem;max-width:44rem}

/* three formats */
.pm-formats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,40px)}
.pm-format{border-top:2px solid var(--ink);padding-top:16px;display:grid;gap:12px;align-content:start}
.pm-format h3{font-size:1.5rem;font-weight:500;line-height:1.2}
.pm-format p{color:var(--ink-2)}
.pm-media{position:relative;aspect-ratio:3/2;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:#E9DFCB}
.pm-media img{width:100%;height:100%;object-fit:cover}
.pm-media--doc{background:var(--soft);padding:14px 16px;display:grid;gap:7px;align-content:start}
.pm-media--doc p{font-size:.9rem;line-height:1.45;color:var(--ink-2)}
.pm-media--doc::after{content:"";position:absolute;left:0;right:0;bottom:0;height:40%;background:linear-gradient(rgba(249,244,234,0),var(--soft))}
.pm-media .play{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:rgba(252,250,246,.94);display:grid;place-items:center;color:var(--ink);box-shadow:0 8px 24px rgba(36,26,18,.35)}

/* ordered process */
.pm-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,3vw,36px);counter-reset:pm}
.pm-steps li{border-top:2px solid var(--ink);padding-top:16px;display:grid;gap:8px;align-content:start}
.pm-steps li::before{counter-increment:pm;content:counter(pm);display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--accent);color:#FCFAF6;font-weight:500;font-size:1rem}
.pm-steps h3{font-size:1.3rem;font-weight:500;line-height:1.2}
.pm-steps p{color:var(--ink-2)}

/* pictorial viewer */
.pm-conv .doc p{transition:background .15s}
.pm-conv .doc p.on{background:var(--accent-soft);box-shadow:-6px 0 0 var(--accent-soft),6px 0 0 var(--accent-soft);color:var(--ink)}
.pm-conv .doc p.aside{font-style:normal}
.pm-pvstage .scene{border-radius:4px}
.pm-pvstage .pin{width:26px;height:26px;font-size:14px;transition:left .25s,top .25s}
.pm-pvcap{display:flex;gap:10px;align-items:flex-start;margin-top:12px;font-size:1.0625rem;color:var(--ink)}
.pm-pvcap b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--accent);color:#FCFAF6;font-size:13px;font-weight:500;flex:none;margin-top:1px}
.pm-pvbody{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:18px;align-items:start}
.pm-pvside{display:grid;gap:12px;align-content:start}
.pm-pvside .pm-pvcap,.pm-pvside .warn{margin:0}
.pm-pvnav{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pm-thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pm-thumb{padding:0;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:#FFFDF8;cursor:pointer;text-align:left;opacity:.82}
.pm-thumb img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.pm-thumb span{display:block;padding:3px 6px;font-size:.8125rem;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pm-thumb[aria-pressed="true"]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent);opacity:1}
.pm-btn{min-height:40px;padding:0 14px;cursor:pointer;font:500 .9375rem var(--font);border-radius:3px;border:1px solid var(--accent);background:#FFFDF8;color:var(--accent)}
.pm-btn:hover:not(:disabled){background:var(--accent-soft)}
.pm-btn--pri{background:var(--accent);color:var(--cream)}
.pm-btn--pri:hover:not(:disabled){background:var(--accent-d)}
.pm-btn:disabled{opacity:.5;cursor:default}
@container (max-width:760px){.pm-pvbody{grid-template-columns:1fr}}
@container (max-width:600px){
  .pm-conv.conv{grid-template-columns:1fr}
  .pm-conv .doc{display:grid;border-right:0;border-bottom:1px solid var(--line);max-height:none}
  .pm-conv .doc::after{display:none}
  .pm-conv .doc p.hide-s{display:none}
}

/* video player */
.pm-vp{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(190px,1fr);gap:14px;padding:16px 18px}
.pm-vp h3{font-size:1rem;font-weight:500;margin-bottom:8px}
.pm-vp .vid>img{transition:opacity .2s}
.pm-vp .vid .play{border:0;cursor:pointer;padding:0}
.pm-vp .vid .play:hover{background:#fff}
.pm-vp .vid.is-playing .play{opacity:0;pointer-events:none}
.pm-seek{position:relative;height:22px;margin:0 0 4px;cursor:pointer;touch-action:none}
.pm-seek::before{content:"";position:absolute;left:0;right:0;top:9px;height:4px;border-radius:2px;background:rgba(252,250,246,.3)}
.pm-seek i{position:absolute;left:0;top:9px;height:4px;border-radius:2px;background:var(--orange);width:0}
.pm-seek b{position:absolute;top:6px;width:2px;height:10px;background:#FCFAF6;opacity:.9}
.pm-seek em{position:absolute;top:5px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:#FCFAF6;box-shadow:0 1px 3px rgba(0,0,0,.4)}
.pm-seek:focus-visible{outline:3px solid var(--accent-hi);outline-offset:2px;border-radius:4px}
.pm-ctl{display:flex;align-items:center;gap:8px;font-size:.8125rem;font-variant-numeric:tabular-nums;flex-wrap:wrap}
.pm-ctl button{min-height:34px;min-width:34px;padding:0 8px;border:1px solid transparent;border-radius:3px;background:none;color:#FCFAF6;font:500 .8125rem var(--font);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.pm-ctl button:hover{background:rgba(252,250,246,.16)}
.pm-ctl button[aria-pressed="true"]{border-color:#FCFAF6}
.pm-ctl button:focus-visible{outline:3px solid var(--accent-hi);outline-offset:1px}
.pm-ctl svg{width:18px;height:18px}
.pm-ctl .sp{flex:1}
.pm-vp .vid::after{height:46%}
.pm-vp .vid__sub{min-height:1.4em}
.pm-chap li{padding:0}
.pm-chap button{display:flex;justify-content:space-between;gap:8px;width:100%;padding:9px 10px;border:0;background:none;text-align:left;cursor:pointer;color:inherit;font:inherit;border-radius:3px}
.pm-chap button:hover{background:var(--soft)}
.pm-chap li.on button{font-weight:500}
@container (max-width:620px){.pm-vp{grid-template-columns:1fr;padding:14px}}

/* record link */
.pm-record{display:grid;gap:14px}
.pm-record__tabs{display:flex;flex-wrap:wrap;gap:6px}
.pm-record__tabs .fc{font-size:.9375rem}
.pm-record__tabs .fc.on{background:var(--accent-soft)}

/* phones */
.pm-phones{justify-content:flex-start}
.pm-phones .phone:nth-child(2){margin-top:34px}

/* room library */
.pm-lib .rl{padding:16px 18px}
.pm-lib .cats .fc{min-height:40px;padding:0 14px}
.pm-lib .scene--photo{border-radius:4px}
.pm-pin{cursor:pointer;padding:0;width:26px;height:26px;font-size:14px;transition:transform .12s,background .12s}
.pm-pin:hover{transform:translate(-50%,-50%) scale(1.12)}
.pm-pin[data-tip]:focus-visible::after,.pm-pin[data-tip]:hover::after{opacity:1}
.pm-pin:focus-visible{outline:3px solid var(--orange);outline-offset:2px;border-radius:50%}
.pm-pin.is-on{background:var(--orange);color:var(--dark);z-index:2;transform:translate(-50%,-50%) scale(1.18)}
.pm-pin.is-on::after{opacity:1}
.pm-leg li{display:block;padding:0}
.pm-leg li button{display:grid;grid-template-columns:22px minmax(0,1fr);gap:8px;align-items:center;width:100%;padding:7px 8px;border:0;background:none;text-align:left;cursor:pointer;font:inherit;color:inherit;border-radius:4px}
.pm-leg li button:hover{background:var(--soft)}
.pm-leg li.on{border-color:var(--accent);background:var(--accent-soft)}
.pm-leg li.on b{background:var(--orange);color:var(--dark)}
.pm-leg li span{font-size:.8125rem;color:var(--ink-3)}
.pm-leg li.on span{color:var(--ink-2)}
.pm-leg li button:focus-visible{outline:3px solid var(--accent);outline-offset:-2px}
.pm-legtitle{font-size:.9375rem;font-weight:500;margin-bottom:6px;color:var(--ink-2)}

/* detail photos */
.pm-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,3vw,32px)}
.pm-detail{display:grid;gap:10px;align-content:start}
.pm-detail .pm-media{aspect-ratio:4/3}
.pm-detail h3{font-size:1.25rem;font-weight:500;line-height:1.2}
.pm-detail p{color:var(--ink-2)}

/* search and edit panels */
.pm-panel{padding:16px 18px}
.pm-panel .top{margin-bottom:12px}
.pm-results{display:grid;gap:6px;margin-top:4px}
.pm-results li button{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:4px;background:#FFFDF8;text-align:left;cursor:pointer;font:inherit;color:inherit}
.pm-results li button:hover{border-color:var(--accent);background:var(--soft)}
.pm-results b.n{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--accent);color:#FCFAF6;font-size:13px;font-weight:500}
.pm-results .t{display:block;font-weight:500}
.pm-results .d{display:block;color:var(--ink-3);font-size:.875rem}
.pm-count{margin:2px 0 10px;color:var(--ink-3);font-size:.9375rem}
.pm-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:end}
.pm-field{display:grid;gap:6px;min-width:0}
.pm-field--wide{grid-column:1/-1}
.pm-field label{font-weight:500;font-size:.9375rem}
.pm-field select,.pm-field input,.pm-field textarea{width:100%;min-height:42px;padding:8px 10px;border:1px solid var(--ink-3);border-radius:3px;background:#FFFDF8;font:inherit;color:var(--ink)}
.pm-field textarea{min-height:76px;resize:vertical}
.pm-field select:focus-visible,.pm-field input:focus-visible,.pm-field textarea:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.pm-edit{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(16px,3vw,32px);align-items:start}
.pm-mail{border:1px solid var(--line);border-radius:4px;background:#FFFDF8;padding:14px 16px;display:grid;gap:8px;font-size:.9375rem}
.pm-mail .from{display:flex;align-items:center;gap:8px;color:var(--ink-3);font-size:.875rem}
.pm-mail b{font-weight:500}
.pm-mail .q{padding:8px 10px;background:var(--soft);border-left:3px solid var(--accent);color:var(--ink-2)}
.pm-mail p{color:var(--ink-2)}
.pm-log{display:grid;gap:4px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line-2);font-size:.875rem;color:var(--ink-3)}
@container (max-width:640px){
  .pm-edit{grid-template-columns:1fr}
  .pm-form{grid-template-columns:1fr}
  .pm-results li button{grid-template-columns:26px minmax(0,1fr)}
  .pm-results li button .dt{display:none}
}

.pm-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:6px}
.pm-links a{color:var(--accent);font-weight:500;text-underline-offset:3px}

@media (max-width:1100px){
  .pm-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .pm-hero__grid,.pm-split,.pm-split--rev,.pm-edit{grid-template-columns:1fr}
  .pm-formats,.pm-details{grid-template-columns:1fr}
  .pm-format{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:560px){
  .pm-steps{grid-template-columns:1fr}
  .pm-actions .btn{width:100%}
}
@media (max-width:480px){
  .pm-phones .phone:nth-child(2){display:none}
}
@media (prefers-reduced-motion:reduce){
  .pm-pvstage .pin,.pm-pin,.pm-vp .vid>img{transition:none}
}
