/* Project pages (/work/<slug>/): visual, agency-style case studies. Big title and short facts up top, a couple of
   labelled rows, then the work itself in full-bleed images and rounded frames. Written for dark; the light theme
   overrides are at the bottom (theme.css does the shared parts: nav, footer, pills). */

.wk{--wk-line:rgba(255,255,255,.12);--wk-2:#a8a8a5;--wk-frame:#111113;padding-top:7rem;color:#fff}
.wk-label{font-size:.8125rem;font-weight:500;letter-spacing:.02em;color:var(--wk-2)}
.wk-label sup{font-size:.7em;vertical-align:super;margin-left:.15em}

/* ---------- Hero: title and tagline, a row of facts, then a full-width cover (image or video) ---------- */
.wk-hero{display:flex;flex-direction:column;gap:2.5rem;padding:0 var(--gutter) 3rem}
.wk-back{align-self:flex-start;font-size:.875rem;color:var(--wk-2);text-decoration:none;transition:color .2s}
.wk-back:hover{color:inherit}
.wk-head{display:grid;gap:1.25rem}
@media (min-width:1024px){.wk-head{grid-template-columns:auto minmax(0,26rem);justify-content:space-between;align-items:end;gap:4rem}}
.wk-title.phead-title{margin:0;font-size:clamp(3.5rem,11vw,10rem);line-height:.9;letter-spacing:-.04em}
.wk-tag{font-size:clamp(1.25rem,2vw,1.75rem);font-weight:300;line-height:1.25;letter-spacing:-.01em}
.wk-tag em{font-family:var(--serif);font-style:italic;font-weight:400}
.wk-live{display:inline-block;margin-top:1rem;font-size:.9375rem;color:inherit;text-decoration:underline;text-decoration-color:rgba(255,146,207,.7);text-underline-offset:4px}
.wk-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem 2rem;padding-top:1.75rem;border-top:1px solid var(--wk-line)}
@media (min-width:1024px){.wk-meta{grid-template-columns:.7fr .5fr 1fr 1.6fr 1.2fr}}
.wk-meta div{min-width:0}
.wk-meta dt{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--wk-2)}
.wk-meta dt::after{content:" ↘";letter-spacing:0}
.wk-meta dd{margin-top:.5rem;font-size:.9375rem;line-height:1.45}
@media (max-width:1023px){.wk-meta div:nth-child(n+4){grid-column:1/-1}}
.wk-cover{margin:0 var(--gutter) 5rem;border-radius:var(--radius-card);overflow:hidden;background:var(--wk-frame);aspect-ratio:4/3}
@media (min-width:768px){.wk-cover{aspect-ratio:16/9}}
.wk-cover img,.wk-cover video{width:100%;height:100%;object-fit:cover;display:block}

/* ---------- Rows: label on the left, content on the right, hairline above ---------- */
.wk-row{display:grid;gap:1.25rem;margin:0 var(--gutter);padding:2rem 0 4rem;border-top:1px solid var(--wk-line)}
@media (min-width:1024px){.wk-row{grid-template-columns:1fr 1fr;gap:4rem;padding:2.25rem 0 6rem}}
.wk-state{font-size:clamp(1.375rem,2.4vw,2.125rem);font-weight:300;line-height:1.25;letter-spacing:-.015em}
.wk-list li{display:flex;justify-content:space-between;gap:1.5rem;padding:.95rem 0;border-bottom:1px solid var(--wk-line);font-size:1rem;line-height:1.4}
.wk-list li:first-child{padding-top:0}
.wk-list li span:last-child{flex:none;font-size:.8125rem;color:var(--wk-2);text-align:right;max-width:45%}

/* ---------- The work: full-bleed images and rounded frames ---------- */
.wk-media{display:flex;flex-direction:column;gap:1.25rem;padding-bottom:var(--section-gap,9rem)}
@media (min-width:768px){.wk-media{gap:2rem}}
.wk-full{margin:1rem 0}
.wk-full img{display:block;width:100%;height:auto}
.wk-frame{margin:0 var(--gutter);border-radius:var(--radius-card);overflow:hidden;background:var(--wk-frame)}
.wk-frame img{display:block;width:100%;height:auto}
.wk-media>.wk-frame{max-width:1280px}
@media (min-width:1440px){.wk-media>.wk-frame{margin-left:auto;margin-right:auto;width:calc(100% - 2 * var(--gutter))}}
.wk-grid{display:grid;gap:1.25rem;margin:0 var(--gutter)}
.wk-grid .wk-frame{margin:0;display:flex;align-items:center}
@media (min-width:768px){.wk-grid{gap:2rem}.wk-two{grid-template-columns:1fr 1fr}.wk-three{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1440px){.wk-grid{max-width:1280px;width:calc(100% - 2 * var(--gutter));margin:0 auto}}

/* ---------- Closing: CTA and next project ---------- */
.wk-cta{display:flex;flex-direction:column;align-items:flex-start;gap:1.25rem;margin:0 var(--gutter);padding:3rem 0 var(--section-gap,9rem);border-top:1px solid var(--wk-line)}
.wk-cta p{max-width:32rem;font-size:1rem;line-height:1.6;color:var(--wk-2)}
.wk-cta-btns{display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem 1.75rem;margin-top:.75rem}
.wk-link{font-size:.9375rem;color:inherit;text-decoration:underline;text-decoration-color:rgba(255,146,207,.7);text-underline-offset:4px}
.wk-next{display:grid;gap:1rem;margin:0 var(--gutter) var(--section-gap,9rem);padding-top:2rem;border-top:1px solid var(--wk-line);color:inherit;text-decoration:none}
@media (min-width:768px){.wk-next{grid-template-columns:1fr minmax(0,40vw);align-items:end;gap:2rem 4rem}.wk-next .wk-label{grid-column:1/-1}}
.wk-next-name{font-size:clamp(3rem,8vw,7rem);font-weight:300;line-height:.95;letter-spacing:-.04em;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.wk-next:hover .wk-next-name{transform:translateX(.5rem)}
.wk-next-img{display:block;border-radius:var(--radius-card);overflow:hidden;aspect-ratio:16/10;background:var(--wk-frame)}
.wk-next-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.wk-next:hover .wk-next-img img{transform:scale(1.03)}

/* ---------- Light theme ---------- */
:root:not(.theme-dark) .wk{--wk-line:rgba(12,11,16,.1);--wk-2:var(--text-2);--wk-frame:#e6e6ec;color:var(--text)}
:root:not(.theme-dark) .wk-cover,:root:not(.theme-dark) .wk-frame,:root:not(.theme-dark) .wk-next-img{box-shadow:var(--card-shadow)}
.wk-cta .h-section{font-size:clamp(2.5rem,6vw,4.5rem);font-weight:300;line-height:.95;letter-spacing:-.025em}
.wk-cta .h-section em{font-family:var(--serif);font-style:italic;font-weight:400}
