body{background:var(--bg)!important}.pt-hero{justify-content:center;align-items:flex-end;height:60vh;min-height:420px;display:flex;position:relative;overflow:hidden}.pt-hero-img{object-fit:cover;object-position:center 30%;width:100%;height:100%;position:absolute;inset:0}.pt-hero-overlay{background:linear-gradient(#0a0a0a33 0%,#0a0a0a0d 30%,#0a0a0a80 70%,#0a0a0a 100%);position:absolute;inset:0}.pt-hero-content{z-index:2;text-align:center;max-width:700px;padding:0 28px 56px;position:relative}.pt-hero-eyebrow{letter-spacing:.35em;text-transform:uppercase;color:var(--accent);backdrop-filter:blur(8px);background:#c8b8910f;border:1px solid #c8b89140;border-radius:100px;margin-bottom:20px;padding:6px 18px;font-size:.68rem;font-weight:400;animation:.7s .5s both ptFadeUp;display:inline-block}.pt-hero h1{font-family:var(--serif);text-shadow:0 2px 40px #0006;margin-bottom:14px;font-size:clamp(2.8rem,5.5vw,4.2rem);font-weight:300;line-height:1.1;animation:.7s .7s both ptFadeUp}.pt-hero h1 em{color:var(--accent);font-style:italic}.pt-hero-sub{color:#f0ece4b3;text-shadow:0 1px 20px #0000004d;font-size:1rem;font-weight:200;line-height:1.7;animation:.7s .9s both ptFadeUp}.pt-hero-count{color:var(--text-dim);letter-spacing:.1em;margin-top:16px;font-size:.7rem;font-weight:300;animation:.7s 1s both ptFadeUp;display:inline-block}.pt-container{max-width:1300px;margin:0 auto;padding:40px 28px 80px}.pt-grid{columns:3;column-gap:14px}.pt-grid-item{break-inside:avoid;cursor:pointer;border-radius:8px;margin-bottom:14px;position:relative;overflow:hidden}.pt-grid-item img{filter:brightness(.88);width:100%;height:auto;transition:transform .6s cubic-bezier(.23,1,.32,1),filter .4s;display:block}.pt-grid-item:hover img{filter:brightness();transform:scale(1.04)}.pt-grid-item:after{content:"";opacity:0;pointer-events:none;background:linear-gradient(#0000 60%,#0a0a0a4d 100%);transition:opacity .4s;position:absolute;inset:0}.pt-grid-item:hover:after{opacity:1}.pt-lightbox{z-index:200;backdrop-filter:blur(12px);background:#060606f5;justify-content:center;align-items:center;padding:60px 20px;display:none;position:fixed;inset:0}.pt-lightbox.active{display:flex}.pt-lightbox img{object-fit:contain;border-radius:6px;max-width:90vw;max-height:85vh;animation:.3s ptLbIn;box-shadow:0 20px 80px #00000080}.pt-lb-close{cursor:pointer;z-index:201;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:all .3s;display:flex;position:absolute;top:24px;right:28px}.pt-lb-close:hover{background:#ffffff1a;border-color:#fff3}.pt-lb-close svg{width:18px;height:18px;stroke:var(--text);fill:none;stroke-width:2px}.pt-lb-arrow{cursor:pointer;z-index:201;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:all .3s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.pt-lb-arrow:hover{background:#ffffff1a;border-color:#fff3}.pt-lb-arrow svg{width:20px;height:20px;stroke:var(--text);fill:none;stroke-width:2px}.pt-lb-prev{left:20px}.pt-lb-next{right:20px}.pt-lb-counter{color:var(--text-dim);letter-spacing:.1em;font-size:.72rem;font-weight:300;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.pt-back{text-align:center;padding:0 28px 60px}.pt-back a{font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border);border-radius:100px;align-items:center;gap:10px;padding:12px 28px;font-size:.78rem;font-weight:400;text-decoration:none;transition:all .3s;display:inline-flex}.pt-back a:hover{color:var(--accent);border-color:var(--accent-border)}.pt-back a svg{stroke:currentColor;fill:none;stroke-width:2px;width:14px;height:14px}.pt-footer{text-align:center;color:var(--text-dim);letter-spacing:.08em;padding:0 28px 40px;font-size:.68rem;font-weight:300}@keyframes ptFadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes ptLbIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (width<=900px){.pt-grid{columns:2}.pt-hero{height:50vh;min-height:360px}}@media (width<=600px){.pt-grid{columns:1;column-gap:10px}.pt-grid-item{margin-bottom:10px}.pt-hero{height:45vh;min-height:300px}.pt-hero h1{font-size:2.2rem}.pt-lb-arrow{width:40px;height:40px}.pt-lb-prev{left:10px}.pt-lb-next{right:10px}}
