/* N-trance V18.23 gallery only. Scoped to .photo-page or .nt-photo-rail. */
.photo-page{background:#070707;color:#f4f1ea;min-height:100vh;font-family:Inter,Montserrat,"Segoe UI",Arial,sans-serif}
.photo-page *{box-sizing:border-box}.photo-page a{color:inherit;text-decoration:none}.photo-page img{display:block;max-width:100%;height:auto}
.photo-page .pg-wrap{width:min(1320px,calc(100% - 64px));margin-inline:auto}
.photo-page .pg-topbar{border-bottom:1px solid rgba(255,255,255,.14);background:rgba(4,4,4,.97)}
.photo-page .pg-head{display:flex;align-items:center;gap:32px;justify-content:space-between;min-height:94px}
.photo-page .pg-logo{width:min(280px,35vw);flex:0 0 auto}
.photo-page .pg-nav{display:flex;gap:23px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.photo-page .pg-nav a{font-size:.74rem;font-weight:750;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.photo-page .pg-nav a[aria-current],.photo-page a:hover{color:#f4b000}
.photo-page .pg-crumbs{display:flex;gap:8px;flex-wrap:wrap;margin:26px auto 0;color:#b7b1a7;font-size:.85rem}
.photo-page .pg-crumbs a:hover{color:#ffd24a}
.photo-page .pg-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);min-height:490px;gap:clamp(28px,5vw,82px);align-items:center;padding-top:42px;padding-bottom:55px}
.photo-page .pg-kicker{letter-spacing:.22em;font-size:.72rem;font-weight:800;text-transform:uppercase;color:#f4b000;margin:0 0 24px}
.photo-page h1{font-size:clamp(2.3rem,4.6vw,4.6rem);font-weight:750;line-height:1.09;letter-spacing:-.04em;margin:0 0 30px;max-width:830px}
.photo-page .pg-lead{max-width:670px;color:#cac4b9;font-size:clamp(1rem,1.38vw,1.15rem);line-height:1.75;margin:0 0 25px}
.photo-page .pg-hero-photo{margin:0;min-width:0}
.photo-page .pg-hero-photo img{width:100%;max-height:610px;object-fit:contain;background:#111}
.photo-page .pg-hero-photo figcaption{font-size:.73rem;color:#aca69d;text-align:right;margin-top:10px}
.photo-page .pg-cta{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:10px 19px;border:1px solid #d9a522;border-radius:3px;font-size:.8rem;letter-spacing:.045em;font-weight:750;background:#e4ae22;color:#120f06!important}
.photo-page .pg-cta:hover{background:#ffce52;color:#050505!important}.photo-page .pg-cta--outline{color:#f4f1ea!important;background:transparent}
.photo-page .pg-cta--outline:hover{color:#171000!important}.photo-page .pg-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.photo-page .pg-section{border-top:1px solid rgba(255,255,255,.12);padding-top:54px;padding-bottom:70px}
.photo-page .pg-section h2{font-size:clamp(1.65rem,2.5vw,2.8rem);font-weight:650;line-height:1.2;margin:0 0 18px;letter-spacing:-.035em}
.photo-page .pg-section-copy{color:#c5c0b6;line-height:1.8;max-width:790px;margin:0 0 36px}
.photo-page .pg-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.photo-page .pg-category-card{display:block;border:1px solid rgba(255,255,255,.16);background:#0e0e0e;overflow:hidden}
.photo-page .pg-category-card img{width:100%;height:320px;object-fit:cover}
.photo-page .pg-category-text{padding:23px 24px 27px;display:block}.photo-page .pg-category-text strong{display:block;font-size:1.45rem;margin-bottom:8px}.photo-page .pg-category-text small{color:#bbb4a7;line-height:1.5;font-size:.88rem}
.photo-page .pg-grid{columns:3 320px;column-gap:17px}
.photo-page .pg-card{break-inside:avoid;display:block;margin:0 0 17px;border:1px solid rgba(255,255,255,.12);background:#101010;overflow:hidden}
.photo-page .pg-card a{display:block;cursor:zoom-in}
.photo-page .pg-card img{width:100%;height:auto;object-fit:contain;background:#151515}
.photo-page .pg-card figcaption{padding:14px 16px 17px;display:flex;gap:4px;flex-direction:column}
.photo-page .pg-card strong{font-size:.86rem;line-height:1.55;font-weight:650}.photo-page .pg-card small{font-size:.73rem;color:#aea89c}
.photo-page .pg-credit{font-size:.88rem;color:#c4beb3;border-left:2px solid #f4b000;padding-left:17px;margin:22px 0 0}
.photo-page .pg-note{margin-top:28px;color:#b8b2a7;font-size:.84rem;line-height:1.75}
.photo-page .pg-bottom{background:#111;border-top:1px solid #353027;padding:45px 0 34px}
.photo-page .pg-bottom-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:30px}
.photo-page .pg-bottom p{font-size:.87rem;color:#bcb6aa;line-height:1.8}
.photo-page .pg-bottom a{display:inline-block;margin:0 12px 8px 0;font-size:.86rem}
.photo-page .pg-small{font-size:.72rem;color:#9d9688;margin-top:28px;border-top:1px solid #34302a;padding-top:22px}
.photo-page .pg-lightbox{width:100vw;max-width:none;max-height:none;height:100dvh;border:0;background:rgba(0,0,0,.97);color:white;padding:0;margin:0}
.photo-page .pg-lightbox::backdrop{background:rgba(0,0,0,.97)}
.photo-page .pg-lightbox-inner{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:70px 78px 56px}
.photo-page .pg-lightbox-img{min-height:0;max-width:100%;width:auto;height:auto;max-height:calc(100dvh - 180px);object-fit:contain}
.photo-page .pg-lightbox-caption{padding-top:16px;max-width:850px;text-align:center;font-size:.9rem;color:#ddd6cb;line-height:1.5}
.photo-page .pg-lightbox-credit{color:#c5a968;font-size:.77rem;padding-top:6px}
.photo-page .pg-lightbox button{position:absolute;z-index:2;background:rgba(30,30,30,.85);border:1px solid #777;color:#fff;border-radius:50%;width:45px;height:45px;cursor:pointer;font-size:1.6rem;line-height:1}
.photo-page .pg-lightbox-close{right:22px;top:22px}.photo-page .pg-lightbox-prev{left:18px;top:50%;transform:translateY(-50%)}.photo-page .pg-lightbox-next{right:18px;top:50%;transform:translateY(-50%)}
.photo-page :focus-visible{outline:2px solid #f4b000;outline-offset:4px}
.nt-photo-rail{background:#070707;padding:36px 0 58px}.nt-photo-rail .pg-rail-title{font-size:clamp(1.4rem,2vw,2rem);margin:0 0 20px;color:#f4f1ea}.nt-photo-rail .pg-rail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.nt-photo-rail img{width:100%;height:260px;object-fit:cover}.nt-photo-rail a:hover img{opacity:.88}.nt-photo-rail .pg-rail-meta{color:#aba69d;font-size:.8rem;margin-top:14px}
.nt-photo-rail .pg-rail-cta{color:#f4b000;text-decoration:underline;text-underline-offset:3px}
@media(max-width:1050px){.photo-page .pg-wrap{width:min(100% - 40px,1000px)}.photo-page .pg-nav{gap:13px}.photo-page .pg-head{gap:12px}.photo-page .pg-nav a{font-size:.66rem}.photo-page .pg-hero{gap:34px}.nt-photo-rail img{height:170px}}
@media(max-width:730px){.photo-page .pg-wrap{width:calc(100% - 30px)}.photo-page .pg-head{display:block;padding:14px 0 8px;min-height:0}.photo-page .pg-logo{width:210px}.photo-page .pg-nav{display:flex;flex-wrap:wrap;justify-content:flex-start;overflow:visible;gap:12px 18px;padding:14px 0 12px}.photo-page .pg-nav a{font-size:.68rem}.photo-page .pg-crumbs{margin-top:18px}.photo-page .pg-hero{grid-template-columns:1fr;gap:24px;min-height:0;padding-top:36px;padding-bottom:35px}.photo-page h1{font-size:clamp(2.05rem,8.2vw,3.2rem);margin-bottom:18px}.photo-page .pg-hero-photo img{max-height:460px}.photo-page .pg-section{padding-top:37px;padding-bottom:48px}.photo-page .pg-category-grid{grid-template-columns:1fr}.photo-page .pg-category-card img{height:auto;max-height:420px;object-fit:contain}.photo-page .pg-grid{columns:2 210px;column-gap:10px}.photo-page .pg-card{margin-bottom:10px}.photo-page .pg-bottom-grid{grid-template-columns:1fr;gap:6px}.photo-page .pg-lightbox-inner{padding:58px 12px 80px}.photo-page .pg-lightbox-img{max-height:calc(100dvh - 215px)}.photo-page .pg-lightbox button{width:39px;height:39px}.photo-page .pg-lightbox-prev{left:8px;top:auto;bottom:19px;transform:none}.photo-page .pg-lightbox-next{right:8px;top:auto;bottom:19px;transform:none}.photo-page .pg-lightbox-close{right:10px;top:10px}.photo-page .pg-lightbox-caption{font-size:.78rem}.nt-photo-rail .pg-rail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nt-photo-rail img{height:155px}}
@media(max-width:430px){.photo-page .pg-grid{columns:1}.photo-page .pg-category-card img{max-height:none}.photo-page .pg-lightbox-inner{padding-left:8px;padding-right:8px}.nt-photo-rail img{height:125px}}
@media(prefers-reduced-motion:reduce){.photo-page *{scroll-behavior:auto!important}}
