.pm{min-height:70vh;padding:28px max(16px,calc((100vw - 980px) / 2)) 56px;background:radial-gradient(130% 70% at 90% 0,#1b2431 0,var(--pp-ink) 55%)}.pm h1{font-size:clamp(34px,8.6vw,64px);margin:8px 0 18px}.pm h1 em{display:inline}.pm h2{font-size:clamp(22px,5.4vw,30px);margin:4px 0 10px}.pm .pm-halloween a.pp-button{color:var(--pp-ink);background:var(--pp-gold)}.pm-door{display:grid;gap:26px;align-items:center;padding-top:8px}.pm-door .pp-actions{margin-top:2px}.pm-door .pp-button{min-height:52px;font-size:16px}.pm-book{display:flex;justify-content:center}.pm-book__page{position:relative;width:min(62vw,250px);aspect-ratio:4.25/6.5;padding:9% 9% 0;background:var(--pp-paper);color:var(--pp-ink);box-shadow:0 22px 60px rgb(0 0 0/.55);transform:rotate(-2.5deg);border-top:4px solid var(--pp-gold)}.pm-book__kicker{font:600 8px/1.2 ui-monospace,Menlo,monospace;letter-spacing:.1em;color:#7a5518}.pm-book__kicker,.pm-book__page b{display:block;text-transform:uppercase}.pm-book__page b{margin:6px 0 10px;font:400 15px/1 var(--font-archivo-black),Arial Black,sans-serif;letter-spacing:-.02em;width:55%}.pm-book__page i{display:block;width:52%;height:22px;border-bottom:1px solid var(--pp-ink)}.pm-book__slot{position:absolute;right:9%;top:24%;width:30%;aspect-ratio:1.25/1.9;display:grid;place-items:center;border:1.5px dashed #7a5518;font:500 9px/1.2 system-ui,sans-serif;color:#55524b;text-align:center}.pm-holder{max-width:760px}.pm-holder__page{display:grid;grid-template-columns:minmax(118px,36%) 1fr;gap:18px;align-items:start;padding:18px;background:var(--pp-paper);color:var(--pp-ink);border-top:4px solid var(--pp-gold);box-shadow:0 18px 50px rgb(0 0 0/.45)}.pm-photo__frame{aspect-ratio:1.25/1.9;display:grid;place-items:center;overflow:hidden;border:1.5px dashed #7a5518;background:#fbf9f4;text-align:center;font-size:13px;line-height:1.35;color:#55524b;padding:6px}.pm-photo[data-photo-state=photo] .pm-photo__frame{border-style:solid;border-color:var(--pp-gold);padding:0}.pm-photo__frame img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.pm-photo__size{margin:6px 0 0;font:600 10.5px/1.3 ui-monospace,Menlo,monospace;letter-spacing:.04em;color:#7a5518}.pm-lines{display:grid;gap:10px}.pm-field,.pm-line{display:grid;gap:3px}.pm-line b{display:block;min-height:30px;padding-bottom:3px;border-bottom:1.2px solid var(--pp-ink);font:600 18px/1.35 Georgia,serif;overflow-wrap:anywhere}.pm-field span,.pm-line span{font:700 11px/1.2 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#55524b}.pm-field em,.pm-line em{font-style:italic;font-weight:400;letter-spacing:0;text-transform:none;margin-left:6px}.pm-field input{width:100%;min-height:44px;padding:6px 2px 3px;border:0;border-bottom:1.5px solid var(--pp-ink);background:transparent;color:var(--pp-ink);font:600 18px/1.3 Georgia,serif;border-radius:0}.pm-field input:focus{outline:none;border-bottom-color:#7a5518;box-shadow:0 2px 0 #c49348}.pm-form__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:4px}.pm-form .pp-button{min-height:46px;border:0;cursor:pointer}.pm-holder__page .pp-link{color:#7a5518;padding:0;border:0;background:none;cursor:pointer;font-size:15px}.pm-holder__page .pp-link--quiet{color:#55524b}.pm-status{min-height:1.2em;margin:0;font-size:14px;font-weight:700;color:#2f6b3a}.pm-form .pm-status{color:#9a2f1f}.pm-photo-actions{display:grid;gap:10px;margin:18px 0 0;max-width:760px}.pm-photo-actions .pp-button{justify-content:center;min-height:50px}.pm-soon{display:grid;place-content:center;gap:2px;min-height:56px;margin:0;padding:8px 14px;border:1px dashed rgb(196 147 72/.6);color:#e0dccf;font-size:15px;text-align:center;line-height:1.3}.pm-soon b{font-weight:800}.pm-soon em{font-size:13px;font-weight:400;color:var(--pp-muted)}.pm-photo-actions button.pp-button{border:0;cursor:pointer;font-family:inherit}.pm-photo-actions button.pp-button:disabled{opacity:.7;cursor:progress}.pm-keepbooth{grid-column:1/-1;margin:2px 0 0;font-size:13px;color:var(--pp-muted)}.pm-keepbooth a{color:var(--pp-gold-2,#e8c27a)}.pm-photo-actions>.pm-status{grid-column:1/-1;color:#f0b0a0}.pm-print-order{margin:14px 0 0;max-width:760px}.pm-print-order a{color:var(--pp-gold-2,#e8c27a)}.pm-photo-sheet{z-index:1000}.pm-photo-sheet .pm-status{color:#f0b0a0}.pm-grid{display:grid;gap:14px;margin-top:26px;max-width:980px}.pm-card{padding:18px;background:var(--pp-ink-2);border-left:3px solid var(--pp-gold)}.pm-note{margin:4px 0 8px;color:#d8d5cd;font-size:15px}.pm-card a,.pm-note a{color:var(--pp-gold-2)}.pm-saved,.pm-spots,.pm-stops{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:6px}.pm-stops li{display:flex;align-items:center;gap:10px;font-weight:700;color:#e0dccf}.pm-stops li span{display:grid;place-items:center;flex:none;width:26px;height:26px;border:1.5px solid var(--pp-gold);border-radius:50%;color:var(--pp-ink);font-size:14px}.pm-stops li.is-done span{background:var(--pp-gold-2)}.pm-saved li{padding:6px 0;color:#e0dccf}.pm-saved li,.pm-spots li{border-bottom:1px solid rgb(242 238 228/.12)}.pm-spots li{padding:8px 0}.pm-spots b{color:var(--pp-paper)}.pm-spots p{margin:2px 0 0;font-size:14.5px;line-height:1.5;color:#d8d5cd}.pm-page{margin-left:8px;padding:1px 6px;background:var(--pp-gold);color:var(--pp-ink);font:800 11px/1.4 system-ui,sans-serif;letter-spacing:.06em}.pm-private{margin:22px 0 0;font-size:13px;color:var(--pp-muted)}@media (min-width:760px){.pm-door{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.pm-grid,.pm-photo-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:380px){.pm-holder__page{grid-template-columns:1fr}.pm-photo{max-width:180px}}.pm:has(.pm-passport){padding-inline:max(12px,calc((100vw - 1180px) / 2))}.pm-passport{--book-ink:#242b29;--book-muted:#5e5a50;max-width:1180px;margin:0 auto 32px;scroll-margin-top:85px}.pm-passport__mast{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin:0 2px 14px;color:var(--pp-gold-2);font:750 11px/1.4 Inter,sans-serif;text-transform:uppercase;letter-spacing:.14em}.pm-passport__tabs{display:flex;gap:4px;overflow-x:auto;padding-bottom:12px}.pm-passport__tabs button{flex:1 0 auto;min-height:44px;padding:8px 10px;border:1px solid #596053;background:transparent;color:var(--pp-paper);font:700 13px/1.2 Inter,sans-serif;text-transform:capitalize;cursor:pointer}.pm-passport__tabs button[aria-current]{border-color:var(--pp-gold);background:var(--pp-gold);color:var(--pp-ink)}.pm-passport__spread{position:relative;display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;padding:7px;border-radius:5px 12px 12px 5px;background:#344134;box-shadow:0 20px 60px #0008,3px 5px 0 #1d281e;touch-action:pan-y pinch-zoom}.pm-passport__leaf{position:relative;min-width:0;min-height:580px;padding:18px 20px 52px;background:linear-gradient(90deg,#ddd6c6,#f2eee4 5%,#f8f5ed 72%,#efe9dc);color:var(--book-ink);border:1px solid #d4ccba}.pm-passport__leaf[hidden]{display:none}.pm-passport__folio,.pm-passport__running{display:flex;justify-content:space-between;gap:12px;color:#635b49;font:700 9px/1.4 Inter,sans-serif;text-transform:uppercase;letter-spacing:.13em}.pm-passport__running{margin-bottom:26px;padding-bottom:10px;border-bottom:1px solid #c9c0ad}.pm-passport__folio{position:absolute;bottom:18px;left:20px;right:20px;border-top:1px solid #c9c0ad;padding-top:10px}.pm-passport .pp-kicker{color:#77541d}.pm .pm-passport h1{color:var(--book-ink);font-size:clamp(30px,4vw,42px);margin:8px 0 22px;overflow-wrap:anywhere}.pm .pm-passport h1 em{color:#77541d}.pm .pm-passport h2{font-size:clamp(26px,3vw,34px);color:var(--book-ink)}.pm .pm-passport .pm-soon em,.pm-passport .pm-keepbooth,.pm-passport .pm-note,.pm-passport .pm-soon,.pm-passport .pm-spots p,.pm-passport p{color:var(--book-muted)}.pm .pm-passport .pm-photo-actions>.pm-status{color:#9a2f1f}.pm-passport .pm-keepbooth a,.pm-passport .pm-print-order a,.pm-passport .pp-link,.pm-passport a{color:#77541d}.pm .pm-passport .pm-halloween a.pp-button,.pm-passport .pp-button{display:inline-flex;gap:10px;color:var(--pp-ink);background:var(--pp-gold);border:0;cursor:pointer;font-family:inherit}.pm-passport .pp-button .fl-orb{--orb:#0c1016}.pm-passport .pp-button--ghost{background:transparent;color:#77541d;border:1px solid #8a7960}.pm-passport .pm-soon{display:none}.pm-passport .pm-holder__page{padding:0;background:transparent;border:0;box-shadow:none;grid-template-columns:minmax(95px,32%) minmax(0,1fr);gap:16px}.pm-passport .pm-photo-actions{grid-template-columns:minmax(0,1fr);gap:8px;margin-top:20px}.pm-passport .pm-photo-actions .pp-button{min-height:44px;font-size:13px}.pm-passport .pm-card{padding:0;border:0;background:transparent}.pm-passport .pm-card+.pm-card{margin-top:28px;padding-top:22px;border-top:1px solid #c9c0ad}.pm-passport .pm-halloween .pp-actions{display:grid;justify-items:start;gap:6px;margin-top:22px}.pm-passport__seal{display:grid;justify-content:center;gap:8px;margin:42px auto 20px;width:190px;padding:28px 14px;border:3px double #547164;border-radius:50%;text-align:center;color:#466454;transform:rotate(-9deg)}.pm-passport__seal b{font:700 21px/1 Inter,sans-serif;letter-spacing:.06em}.pm-passport__seal span{font:italic 15px/1.4 Georgia,serif}.pm-passport__seal i{font:700 10px/1.2 Inter,sans-serif;text-transform:uppercase;letter-spacing:.1em}.pm-passport__controls{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-top:16px}.pm-passport__controls button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:8px 12px;border:1px solid #8c754c;background:transparent;color:var(--pp-paper);cursor:pointer;font:750 13px/1.3 Inter,sans-serif}.pm-passport__controls button:disabled{opacity:1;color:#a9a596;border-color:#596053;cursor:default}.pm-passport__controls>span{color:#d8d5cd;font-size:12px;text-align:center}.pm-passport__hint{margin:10px 0 0;text-align:center;font-size:12px;color:#b5b1a6!important}.pm-passport .pm-stops{gap:0}.pm-passport .pm-stops li{display:block;border-bottom:1px solid #c9c0ad;color:var(--book-ink)}.pm-stops details{width:100%}.pm-stops summary{display:flex;align-items:center;gap:9px;min-height:48px;padding:9px 0;cursor:pointer;list-style:none}.pm-stops summary::-webkit-details-marker{display:none}.pm-stops summary:after{content:"+";margin-left:auto;font-size:20px;font-weight:400}.pm-stops details[open]>summary:after{content:"−"}.pm-stops summary b{flex:1;font-size:13px;line-height:1.3}.pm-stops summary em{font-size:9px;font-weight:500;font-style:normal;color:#5e5a50}.pm-passport .pm-stops .pm-stamp{display:grid;place-items:center;flex:none;width:25px;height:25px;border:1px dashed #8a7960;border-radius:50%;color:#375c46}.pm-passport .pm-stops .is-done .pm-stamp{background:#dfe7d9;border:2px solid #547164;transform:rotate(-12deg)}.pm-stop-detail{padding:0 0 16px 34px;font-size:13px;font-weight:400}.pm-stop-detail p{margin:4px 0}.pm-stop-detail .pp-button,.pm-stop-detail .pp-link{min-height:44px;font-size:13px}.pm-passport .pm-saved li,.pm-passport .pm-spots li{color:var(--book-ink);border-bottom-color:#c9c0ad}.pm-passport .pm-spots b{color:var(--book-ink)}.pm-passport__turn{position:absolute;inset:7px;z-index:2;pointer-events:none;background:linear-gradient(90deg,transparent 15%,#f2eee4bb 68%,#9a8c6d55);transform-origin:0 50%;animation:pm-turn-next .62s cubic-bezier(.2,.7,.3,1) both;backface-visibility:hidden}.pm-passport__turn[data-direction=back]{transform-origin:100% 50%;animation-name:pm-turn-back}@keyframes pm-turn-next{0%{transform:perspective(1800px) rotateY(0deg);opacity:.85}to{transform:perspective(1800px) rotateY(-125deg);opacity:0}}@keyframes pm-turn-back{0%{transform:perspective(1800px) rotateY(0deg);opacity:.85}to{transform:perspective(1800px) rotateY(125deg);opacity:0}}@media (min-width:900px){.pm-passport__spread{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.pm-passport__leaf{min-height:720px;padding:24px 32px 58px}.pm-passport__leaf:nth-child(2n){background:linear-gradient(90deg,#d7cfbe,#eee8da 3%,#f8f5ed 12%,#f2eee4 98%)}.pm-passport__spread:after{content:"";position:absolute;width:22px;top:10px;bottom:10px;left:calc(50% - 11px);background:linear-gradient(90deg,transparent,#0002,transparent);pointer-events:none}.pm-passport__turn{inset:10px 10px 10px 50%}.pm-passport__turn[data-direction=back]{inset:10px 50% 10px 10px}}@media (max-width:380px){.pm-passport__leaf{padding-inline:14px}.pm-passport .pm-holder__page{grid-template-columns:minmax(0,1fr)}.pm-passport .pm-photo{max-width:125px}.pm-passport__tabs button{font-size:12px;padding-inline:8px}}@media (prefers-reduced-motion:reduce){.pm-passport__turn{animation:none;display:none}}