.vp-editorial{display:grid;grid-template-columns:minmax(0,1fr);background:#000;color:#f4f4f4}
.vp-editorial .vp-nav{grid-area:1 / 1;align-self:start;width:100%;padding:16px max(22px,calc((100% - 1320px)/2));background:rgba(0,0,0,.25);border-bottom:1px solid #ffffff1a}
.vp-editorial .vp-nav a{color:#f4f4f4}
.vp-editorial a:focus-visible{outline:2px solid #fff;outline-offset:4px}
.vp-editorial .vp-main{grid-area:1 / 1;width:100%}
.vp-editorial .vp-hero{display:grid;align-items:end;isolation:isolate;position:relative;overflow:hidden;min-height:min(820px,calc(100svh - 56px));padding:clamp(130px,25svh,250px) max(44px,calc((100% - 1320px)/2)) clamp(32px,6vw,86px)}
.vp-cover-image{position:absolute;z-index:-2;inset:0;overflow:hidden}
.vp-cover-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:72% 49%}
.vp-editorial .vp-hero::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#000d,#0006 54%,transparent 82%),linear-gradient(0deg,#000e,transparent 64%)}
.vp-cover-copy{max-width:100%;position:relative}
.vp-editorial .vp-hero h1{max-width:14ch;font-size:clamp(3rem,7.65vw,8.8rem);text-wrap:initial}
.vp-editorial .vp-lede{color:#eee}
.vp-editorial .vp-eyebrow{color:#aaa}
.vp-editorial .vp-eyebrow span{background:currentColor}
.vp-explore{display:inline-flex;gap:12px;margin-top:32px;padding-bottom:5px;border-bottom:1px solid currentColor;text-decoration:none;font-size:.85rem}
.vp-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:24px;width:min(1500px,calc(100% - 64px));margin:0 auto;padding:72px 0;scroll-margin-top:90px}
.vp-editorial .vp-card,.vp-about-card{min-width:0;margin:0;border:1px solid #303030;border-radius:28px;background:linear-gradient(145deg,#202020,#101010);padding:10px 10px 24px;text-align:center;box-shadow:0 15px 50px #0006;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease}
.vp-editorial .vp-card figure{aspect-ratio:1.4;overflow:hidden;border-radius:20px;margin:0}
.vp-editorial .vp-card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease}
.vp-editorial .vp-card-top{display:flex;justify-content:center;gap:12px;align-items:center;padding-inline:10px;margin-top:18px;color:#aaa;font-size:.62rem;letter-spacing:.04em}
.vp-editorial .vp-card-top span+span{display:grid;place-items:center;width:28px;height:28px;border:1px solid #555;border-radius:50%;transition:background .2s,color .2s}
.vp-editorial .vp-card h2{padding-inline:10px;font-size:clamp(1.45rem,2.1vw,2.3rem);margin:12px 0;letter-spacing:-.045em}
.vp-editorial .vp-card p{padding-inline:12px;color:#aaa;font-size:.8rem;line-height:1.6;max-width:42ch;margin:0 auto}
.vp-about-card{display:flex;flex-direction:column;justify-content:space-between;gap:24px;padding:24px;background:radial-gradient(ellipse at top right,#292929,#111 70%)}
.vp-about-index{padding-bottom:14px;border-bottom:1px solid #333;color:#aaa;font:600 .65rem/1.4 ui-monospace,monospace;letter-spacing:.08em}
.vp-about-index span+span{display:none}
.vp-about-content h2{font-size:clamp(2.3rem,3.7vw,3.8rem);font-weight:590;line-height:.95;letter-spacing:-.065em;margin:0 0 22px}
.vp-about-content p{color:#ccc;font-size:.85rem;line-height:1.65;max-width:42ch;margin:0 auto 24px}
.vp-about-links{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}
.vp-about-links a{padding:7px 10px;border:1px solid #444;border-radius:20px;text-decoration:none;font-size:.7rem}
.vp-about-links a:hover{background:#eee;color:#000}
.vp-card:focus-within,.vp-about-card:focus-within{border-color:#888}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .vp-editorial .vp-card:hover,.vp-about-card:hover{transform:perspective(1200px) translateY(-10px) rotateX(3deg);border-color:#777;box-shadow:0 20px 50px #ffffff0c}
 .vp-editorial .vp-card:hover img{transform:scale(1.045)}
 .vp-editorial .vp-card:hover .vp-card-top span+span{background:#eee;color:#000}
}
@media(max-width:900px){
 .vp-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
 .vp-about-card{grid-column:1/-1;max-width:600px;width:100%;justify-self:center}
}
@media(max-width:600px){
 .vp-editorial .vp-nav{padding:12px 18px}
 .vp-editorial .vp-hero{padding-inline:18px;min-height:75svh}
 .vp-gallery{grid-template-columns:1fr;width:calc(100% - 36px);padding:40px 0}
 .vp-editorial .vp-card,.vp-about-card{max-width:450px;width:100%;justify-self:center}
}
@media(prefers-reduced-motion:reduce){.vp-editorial .vp-card,.vp-about-card,.vp-editorial .vp-card img{transition:none}}
