
:root{--blue:#3974ff;--blue-dark:#2659d8;--ink:#101316;--ink2:#191d21;--paper:#f2efe7;--paper2:#e3dfd5;--quiet:#6c706f;--line:rgba(16,19,22,.22);--max:1540px;--pad:clamp(1rem,3vw,3.2rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}img{display:block;width:100%}a{color:inherit}p,h1,h2,h3,dl,dd,figure{margin:0}button{font:inherit}.skip-link{position:fixed;top:-8rem;left:1rem;z-index:100;padding:.8rem 1rem;background:var(--blue);color:#fff;font-weight:800}.skip-link:focus{top:1rem}.site-header{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;max-width:var(--max);margin:auto;padding:.85rem var(--pad);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--paper) 91%,transparent);backdrop-filter:blur(16px)}.brand{display:inline-flex;align-items:center;gap:.55rem;text-decoration:none;font-size:.77rem;letter-spacing:.08em;font-weight:900}.brand span{padding:.38rem .5rem;background:var(--blue);color:white;clip-path:polygon(2% 4%,100% 0,97% 96%,0 100%)}.site-header nav{display:flex;gap:clamp(1rem,2.5vw,2.5rem)}.site-header nav a{text-decoration:none;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.site-header nav a:hover{color:var(--blue-dark)}.menu-button{display:none;background:none;border:1px solid var(--line);padding:.45rem .65rem;text-transform:uppercase;font-size:.7rem;font-weight:800}main,footer{max-width:var(--max);margin:auto}.kicker,.section-label,.category-number{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.home-hero{min-height:calc(100svh - 58px);display:grid;grid-template-columns:.7fr 3fr 1.15fr;gap:clamp(1.5rem,3vw,3.5rem);align-items:end;padding:clamp(5rem,10vw,10rem) var(--pad) clamp(3rem,5vw,5rem);border-bottom:1px solid var(--line)}.home-hero>.kicker{align-self:start;color:var(--quiet)}.home-hero h1{font-size:clamp(4rem,9.6vw,10rem);line-height:.82;letter-spacing:-.078em}.home-hero mark{display:inline-block;background:var(--blue);color:white;padding:.02em .1em .07em .06em;clip-path:polygon(1% 4%,100% 0,98% 96%,0 100%)}.home-hero-copy{display:grid;gap:1.4rem}.home-hero-copy p{font-size:clamp(1rem,1.35vw,1.3rem);line-height:1.48}.text-link{width:max-content;text-decoration:none;font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--ink);padding-bottom:.2rem}.work-index,.about,.contact,.project-summary,.case-section,.project-next{padding:clamp(4rem,8vw,8rem) var(--pad)}.section-heading{display:grid;grid-template-columns:.7fr 3fr;gap:clamp(1.5rem,3vw,3.5rem);padding-bottom:clamp(2.5rem,5vw,5rem)}.section-heading h2,.about h2,.contact h2,.project-summary h2,.case-heading h2{font-size:clamp(2.7rem,6vw,6.5rem);line-height:.92;letter-spacing:-.06em}.section-heading>div>p{max-width:42rem;margin-top:1rem;color:var(--quiet);line-height:1.55}.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--line)}.category-card{min-height:25rem;display:flex;flex-direction:column;justify-content:space-between;padding:1.35rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper2)}.category-card h3{font-size:clamp(2rem,4vw,4.5rem);line-height:.94;letter-spacing:-.055em}.category-card p,.category-card small{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.category-card small{color:var(--quiet)}.category-dark{background:var(--ink);color:white}.category-blue{background:var(--blue);color:white}.category-card-wide{grid-column:1/-1;min-height:70svh;padding:0;position:relative;overflow:hidden}.category-card-wide>a{position:relative;display:block;height:100%;min-height:70svh;color:white;text-decoration:none}.category-card-wide img{position:absolute;inset:0;height:100%;object-fit:cover;filter:brightness(.65)}.category-card-wide a:hover img{transform:scale(1.015);filter:brightness(.72)}.category-card-wide img{transition:.45s ease}.category-overlay{position:absolute;inset:0;display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:1.2rem;padding:clamp(1.25rem,3vw,3rem)}.category-overlay h3{font-size:clamp(3.5rem,9vw,9rem)}.category-overlay b{align-self:end;font-size:.76rem;text-transform:uppercase;letter-spacing:.06em}.about{border-top:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:clamp(2rem,5vw,7rem);margin-top:3rem}.about-grid>div{display:grid;gap:1.25rem;font-size:1.08rem;line-height:1.58}.contact{background:var(--ink);color:white}.contact h2{max-width:1100px;margin:2rem 0}.contact>p:not(.section-label){max-width:700px;font-size:1.1rem;line-height:1.55}.contact-placeholder{margin-top:2rem;color:#adb1b5;font-family:ui-monospace,monospace}.project-hero{position:relative;min-height:80svh;color:white;overflow:hidden}.project-hero>img{position:absolute;inset:0;height:100%;object-fit:cover;filter:brightness(.56)}.project-hero-title{position:absolute;inset:auto var(--pad) clamp(2.5rem,5vw,5rem);display:grid;grid-template-columns:1fr;gap:1rem}.project-hero-title h1{font-size:clamp(4.8rem,12vw,12rem);line-height:.78;letter-spacing:-.08em}.project-hero-title>p:last-child{max-width:720px;font-size:clamp(1.05rem,1.6vw,1.45rem);line-height:1.45}.project-summary{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(2rem,5vw,7rem);border-bottom:1px solid var(--line)}.summary-copy{display:grid;gap:1.3rem;font-size:1.06rem;line-height:1.65}.credit-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);margin-top:1rem}.credit-grid>div{padding:1.2rem 1.2rem 0 0;border-right:1px solid var(--line)}.credit-grid>div+div{padding-left:1.2rem}.credit-grid dt{font-size:.69rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;margin-bottom:.55rem}.credit-grid dd{font-size:.9rem;line-height:1.5;color:var(--quiet)}.case-section{border-bottom:1px solid var(--line)}.case-dark{background:var(--ink);color:white}.case-heading{display:grid;grid-template-columns:.7fr 2.5fr 1fr;gap:clamp(1.5rem,3vw,3.5rem);align-items:end;margin-bottom:clamp(2.5rem,5vw,5rem)}.case-heading>p:last-child{font-size:.98rem;line-height:1.55;color:var(--quiet)}.case-dark .case-heading>p:last-child{color:#b0b4b7}.timeline-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.timeline-gallery figure,.image-grid figure,.sequence figure,.before-after-pair figure{background:var(--paper)}.timeline-gallery img{aspect-ratio:4/3;object-fit:cover}.timeline-gallery figcaption{display:grid;grid-template-columns:auto 1fr;gap:1rem;padding:1rem;font-size:.78rem;line-height:1.45}.timeline-gallery figcaption b{text-transform:uppercase;letter-spacing:.06em}.credit-note{margin-top:1.2rem;font-size:.72rem;line-height:1.5;color:var(--quiet);font-family:ui-monospace,monospace}.case-dark .credit-note{color:#aeb2b5}.image-grid{display:grid;gap:1px;background:rgba(255,255,255,.18)}.image-grid-3{grid-template-columns:repeat(3,1fr)}.image-grid img{aspect-ratio:4/3;object-fit:cover}.image-grid figcaption{padding:.9rem;color:var(--ink);font-size:.8rem;line-height:1.45}.subcase{display:grid;grid-template-columns:.75fr 2fr;gap:clamp(2rem,4vw,5rem);align-items:start;padding:clamp(2.5rem,5vw,5rem) 0;border-top:1px solid var(--line)}.subcase-reverse{grid-template-columns:.75fr 2fr}.subcase-copy{position:sticky;top:6rem;display:grid;gap:1rem}.subcase-copy h3,.before-after-copy h3{font-size:clamp(1.8rem,3.6vw,4rem);line-height:.98;letter-spacing:-.05em}.subcase-copy>p:last-child,.before-after-copy>p:last-child{line-height:1.6;color:var(--quiet)}.sequence{display:grid;gap:1px;background:var(--line)}.sequence-3{grid-template-columns:repeat(3,1fr)}.sequence figure{background:var(--paper)}.sequence img{height:100%;aspect-ratio:3/4;object-fit:cover}.sequence figcaption{padding:.7rem .8rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}.sequence-scroll{grid-template-columns:repeat(3,1fr)}.sequence-scroll img{aspect-ratio:4/3}.before-after-block{display:grid;grid-template-columns:.75fr 2fr;gap:clamp(2rem,4vw,5rem);padding:clamp(2.5rem,5vw,5rem) 0;border-top:1px solid rgba(255,255,255,.18)}.before-after-copy{display:grid;gap:1rem;align-content:start}.before-after-pair{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.2)}.before-after-pair figure{position:relative}.before-after-pair span{position:absolute;z-index:1;left:.75rem;top:.75rem;background:var(--ink);color:#fff;padding:.42rem .55rem;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.before-after-pair img{height:100%;aspect-ratio:4/3;object-fit:cover}.image-grid-feature{grid-template-columns:1.4fr 1fr 1fr}.image-grid-feature figure:first-child{grid-row:span 2}.image-grid-feature figure:first-child img{height:calc(100% - 3.2rem)}.image-grid-feature img{aspect-ratio:4/3}.project-next{background:var(--blue);color:white}.project-next a{display:flex;justify-content:space-between;align-items:end;margin-top:1rem;text-decoration:none;font-size:clamp(2.5rem,6vw,6.5rem);font-weight:900;line-height:.95;letter-spacing:-.06em}footer{display:flex;justify-content:space-between;gap:2rem;padding:2rem var(--pad);font-size:.75rem;line-height:1.5;border-top:1px solid var(--line)}footer a{align-self:end}.lightbox{width:min(94vw,1500px);padding:0;border:0;background:#080a0c;color:white}.lightbox::backdrop{background:rgba(0,0,0,.86)}.lightbox img{max-height:88vh;object-fit:contain}.lightbox button{position:absolute;right:.8rem;top:.8rem;z-index:2;border:0;background:var(--blue);color:white;padding:.6rem .8rem;font-weight:800;text-transform:uppercase;font-size:.7rem}.project-page figure img{cursor:zoom-in}
@media(max-width:900px){.home-hero{grid-template-columns:1fr;align-content:end}.home-hero>.kicker{position:absolute;top:6rem}.section-heading,.case-heading,.project-summary,.about-grid{grid-template-columns:1fr}.category-grid{grid-template-columns:1fr}.category-card-wide{grid-column:auto}.category-overlay{grid-template-columns:auto 1fr}.category-overlay>b{display:none}.credit-grid{grid-template-columns:1fr}.credit-grid>div{border-right:0;border-bottom:1px solid var(--line);padding:1rem 0}.credit-grid>div+div{padding-left:0}.timeline-gallery,.image-grid-3{grid-template-columns:1fr}.subcase,.subcase-reverse,.before-after-block{grid-template-columns:1fr}.subcase-copy{position:static}.image-grid-feature{grid-template-columns:1fr 1fr}.image-grid-feature figure:first-child{grid-column:1/-1;grid-row:auto}.image-grid-feature figure:first-child img{height:auto}.project-hero-title h1{font-size:clamp(4rem,18vw,8rem)}}
@media(max-width:640px){.site-header nav:not(.project-nav){display:none;position:absolute;top:100%;left:0;right:0;padding:1rem var(--pad);background:var(--paper);border-bottom:1px solid var(--line)}.site-header nav.is-open{display:grid}.menu-button{display:block}.project-nav{gap:.85rem!important}.home-hero{min-height:85svh}.home-hero h1{font-size:clamp(3.8rem,18vw,6.5rem)}.category-card{min-height:19rem}.category-card-wide,.category-card-wide>a{min-height:58svh}.category-overlay{grid-template-columns:1fr}.category-overlay .category-number{display:none}.category-overlay h3{font-size:3.4rem}.before-after-pair,.sequence-3,.sequence-scroll{grid-template-columns:1fr}.project-hero{min-height:70svh}.project-hero-title{inset:auto 1rem 2rem}.case-heading h2,.project-summary h2{font-size:3rem}.image-grid-feature{grid-template-columns:1fr}.image-grid-feature figure:first-child{grid-column:auto}footer{display:grid}.project-next a{font-size:2.7rem}}

/* WLV v5 corrections */
.timeline-gallery-4{grid-template-columns:repeat(4,1fr)}
.sequence-2{grid-template-columns:repeat(2,1fr)}
.retail-sequence img{aspect-ratio:4/3;object-fit:cover}
.mixed-sequence img{object-position:center}
.merch-story{display:grid;grid-template-columns:1.15fr .78fr .78fr;gap:1px;background:rgba(255,255,255,.2)}
.merch-story figure{position:relative;background:#111;display:flex;flex-direction:column}
.merch-story span{position:absolute;z-index:1;left:.75rem;top:.75rem;background:var(--ink);color:#fff;padding:.42rem .55rem;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.merch-story img{width:100%;height:32rem;object-fit:contain;background:#111}
.merch-story figcaption{padding:.85rem 1rem;color:#fff;font-size:.78rem;line-height:1.45;background:#111}
.current-identity-grid{grid-template-columns:1.45fr 1fr}
.current-identity-grid img{height:100%;aspect-ratio:4/3;object-fit:cover}
@media(max-width:900px){.timeline-gallery-4{grid-template-columns:repeat(2,1fr)}.merch-story{grid-template-columns:1fr 1fr}.merch-story figure:first-child{grid-column:1/-1}.current-identity-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.timeline-gallery-4,.sequence-2,.merch-story,.current-identity-grid{grid-template-columns:1fr}.merch-story figure:first-child{grid-column:auto}.merch-story img{height:auto;max-height:38rem}}


/* Complete site pages */
.category-link{color:inherit;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.category-link:hover{position:relative;z-index:2;transform:translateY(-4px);box-shadow:0 14px 35px rgba(16,19,22,.14)}
.button-link{display:inline-block;width:max-content;margin-top:2rem;padding:.9rem 1.1rem;background:var(--blue);color:white;text-decoration:none;font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.button-link:hover{background:var(--blue-dark)}.button-dark{background:var(--ink)}
.page-hero{min-height:72svh;padding:clamp(7rem,12vw,12rem) var(--pad) clamp(4rem,7vw,7rem);display:grid;grid-template-columns:.65fr 3fr 1.1fr;gap:clamp(1.5rem,3vw,3.5rem);align-items:end;border-bottom:1px solid var(--line)}.page-hero>.kicker{align-self:start}.page-hero h1{font-size:clamp(4rem,8.5vw,9rem);line-height:.84;letter-spacing:-.075em}.page-hero mark,.status-page mark{display:inline-block;background:var(--blue);color:#fff;padding:.02em .1em .07em .06em;clip-path:polygon(1% 4%,100% 0,98% 96%,0 100%)}.page-hero-intro{font-size:clamp(1rem,1.35vw,1.28rem);line-height:1.52}.page-hero-blue{background:var(--paper)}.page-hero-dark{background:var(--ink);color:#fff}.page-hero-dark .kicker{color:#aeb2b5}
.editorial-section,.capabilities-section,.contact-page-grid,.category-overview,.project-index-section,.status-page{padding:clamp(4rem,8vw,8rem) var(--pad)}.editorial-section{border-bottom:1px solid var(--line)}.editorial-dark{background:var(--ink);color:white}.editorial-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(2rem,5vw,7rem);margin-top:2.5rem}.editorial-grid h2,.contact-intro h2,.category-overview h2,.project-index-section h2{font-size:clamp(2.7rem,5vw,5.8rem);line-height:.93;letter-spacing:-.06em}.prose-stack{display:grid;gap:1.25rem;font-size:1.05rem;line-height:1.65}.editorial-dark .prose-stack{color:#d4d6d7}
.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:2.5rem;border-top:1px solid var(--ink);border-left:1px solid var(--line)}.capability-grid>div{min-height:15rem;padding:1.25rem;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.capability-grid span{font-family:ui-monospace,monospace;font-size:.68rem;font-weight:900}.capability-grid h3{font-size:clamp(1.4rem,2.4vw,2.6rem);line-height:1;letter-spacing:-.045em}
.contact-page-grid{display:grid;grid-template-columns:.8fr 1.4fr;gap:clamp(2rem,6vw,8rem)}.contact-intro{display:grid;align-content:start;gap:1.2rem}.contact-intro>p:not(.section-label){font-size:1.05rem;line-height:1.6}.contact-facts{margin-top:1rem;border-top:1px solid var(--ink)}.contact-facts>div{display:grid;grid-template-columns:.7fr 1.3fr;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.contact-facts dt{font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.contact-facts dd{font-size:.9rem;line-height:1.45;color:var(--quiet)}
.project-form{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem;padding:clamp(1.2rem,3vw,2.5rem);background:var(--paper2);border:1px solid var(--line)}.project-form>label,.project-form>.form-row,.project-form>button,.project-form>.form-note{grid-column:1/-1}.project-form label{display:grid;gap:.45rem}.project-form label>span{font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.project-form input,.project-form select,.project-form textarea{width:100%;border:1px solid rgba(16,19,22,.32);background:#faf8f2;color:var(--ink);padding:.85rem;font:inherit;border-radius:0}.project-form input:focus,.project-form select:focus,.project-form textarea:focus{outline:3px solid rgba(57,116,255,.27);border-color:var(--blue)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}.project-form button{border:0;background:var(--blue);color:white;padding:1rem 1.2rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em;cursor:pointer}.project-form button:hover{background:var(--blue-dark)}.form-note{font-size:.75rem;line-height:1.5;color:var(--quiet)}.honeypot{position:absolute;left:-9999px}
.category-page-hero{min-height:68svh;padding:clamp(7rem,12vw,12rem) var(--pad) clamp(4rem,7vw,7rem);display:grid;grid-template-columns:.65fr 2.6fr 1fr;gap:clamp(1.5rem,3vw,3.5rem);align-items:end;border-bottom:1px solid var(--line)}.category-page-hero>.kicker{align-self:start}.category-page-hero h1{font-size:clamp(4.5rem,10vw,11rem);line-height:.8;letter-spacing:-.08em}.category-page-hero>p:last-child{font-size:clamp(1rem,1.35vw,1.28rem);line-height:1.52}.category-page-dark{background:var(--ink);color:white}.category-page-blue{background:var(--blue);color:white}.category-page-paper{background:var(--paper)}
.category-overview{display:grid;grid-template-columns:.65fr 3fr;gap:clamp(1.5rem,3vw,3.5rem);border-bottom:1px solid var(--line)}.category-overview>div{display:grid;grid-template-columns:1.45fr 1fr;gap:clamp(2rem,5vw,7rem)}
.project-index-section>header{display:grid;grid-template-columns:.65fr 1.4fr 1fr;gap:clamp(1.5rem,3vw,3.5rem);align-items:end;margin-bottom:3rem}.project-index-section>header>p:last-child{line-height:1.55;color:var(--quiet)}.project-index-list{border-top:1px solid var(--ink)}.project-index-card{display:grid;grid-template-columns:.25fr 1.5fr .6fr;gap:1.2rem;padding:1.5rem 0;border-bottom:1px solid var(--line);align-items:start}.project-index-card>p,.project-index-card small,.project-index-card span{font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.project-index-card span{color:var(--quiet)}.project-index-card h3{font-size:clamp(1.8rem,3.3vw,3.8rem);line-height:.96;letter-spacing:-.05em;margin:.45rem 0}.project-index-card>div>p{max-width:58rem;line-height:1.55;color:var(--quiet)}.project-index-card small{text-align:right;color:var(--quiet)}
.status-page{min-height:calc(100svh - 58px);display:grid;align-content:center;gap:1.5rem}.status-page h1{font-size:clamp(4rem,9vw,10rem);line-height:.83;letter-spacing:-.075em}.status-page>p:not(.section-label){max-width:42rem;font-size:1.1rem;line-height:1.6}
@media(max-width:900px){.page-hero,.category-page-hero{grid-template-columns:1fr;align-content:end}.page-hero>.kicker,.category-page-hero>.kicker{align-self:auto}.editorial-grid,.contact-page-grid,.category-overview,.category-overview>div{grid-template-columns:1fr}.capability-grid{grid-template-columns:repeat(2,1fr)}.project-index-section>header{grid-template-columns:1fr}.project-index-card{grid-template-columns:.2fr 1.4fr}.project-index-card small{grid-column:2;text-align:left}.project-form{padding:1.2rem}}
@media(max-width:640px){.page-hero,.category-page-hero{min-height:72svh;padding-top:6rem}.page-hero h1,.category-page-hero h1{font-size:clamp(3.6rem,17vw,6.5rem)}.capability-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.project-index-card{grid-template-columns:1fr}.project-index-card small{grid-column:auto}.contact-page-grid{padding-left:1rem;padding-right:1rem}}


/* v7 voice and layout corrections */
.home-hero{grid-template-columns:minmax(10rem,.7fr) minmax(0,3fr) minmax(14rem,1.15fr)}
.hero-id{display:grid;gap:.35rem;white-space:nowrap;line-height:1.2}
.hero-id span:first-child{color:var(--ink)}
.hero-id span:last-child{color:var(--quiet)}
.page-hero,.category-page-hero{grid-template-columns:minmax(9rem,.65fr) minmax(0,3fr) minmax(14rem,1.1fr)}
.category-page-hero{grid-template-columns:minmax(9rem,.65fr) minmax(0,2.6fr) minmax(14rem,1fr)}
.category-page-hero>.kicker,.page-hero>.kicker{max-width:14rem;line-height:1.4}
@media(max-width:900px){.home-hero,.page-hero,.category-page-hero{grid-template-columns:1fr}.hero-id{display:flex;gap:.8rem;white-space:normal}.hero-id span+span:before{content:"/ ";}}
@media(max-width:640px){.hero-id{display:grid;gap:.25rem}.hero-id span+span:before{content:""}}


/* v8 content expansion */
.section-heading-short{padding-bottom:clamp(1.5rem,3vw,3rem)}
.hero-id{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;display:grid;gap:.35rem;white-space:nowrap;line-height:1.2;align-self:start;color:var(--quiet)}
.hero-id strong{color:var(--ink)}
.feature-project-section,.work-list-section,.client-section,.company-section,.detail-intro,.timeline-section,.detail-role-section,.credit-section{padding:clamp(4rem,8vw,8rem) var(--pad);border-bottom:1px solid var(--line)}
.feature-project-grid{display:grid;grid-template-columns:1fr 1fr;margin-top:2.5rem;border-top:1px solid var(--ink);border-left:1px solid var(--line)}
.type-project{min-height:34rem;padding:clamp(1.4rem,3vw,3rem);display:flex;flex-direction:column;text-decoration:none;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.type-project>span,.type-project>b{font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.type-project h2{font-size:clamp(3.2rem,7vw,8rem);line-height:.82;letter-spacing:-.075em;margin:auto 0 1.5rem}.type-project p{max-width:34rem;line-height:1.55}.type-project b{margin-top:2rem}.type-project-dark{background:var(--ink);color:#fff}.type-project-blue{background:var(--blue);color:#fff}.type-project:hover h2{transform:translateX(.08em)}.type-project h2{transition:transform .2s ease}
.list-heading{display:grid;grid-template-columns:.65fr 2fr 1fr;gap:clamp(1.5rem,3vw,3.5rem);align-items:end;margin-bottom:2.5rem}.list-heading h2,.company-heading h2,.detail-intro h2,.detail-role-section h2{font-size:clamp(2.7rem,5vw,6rem);line-height:.92;letter-spacing:-.06em}.list-heading>p:last-child{line-height:1.55;color:var(--quiet)}
.work-rows,.production-rows{border-top:1px solid currentColor}.work-rows>div,.production-rows>div{display:grid;grid-template-columns:.35fr 1.4fr .8fr;gap:1.2rem;padding:1.25rem 0;border-bottom:1px solid var(--line);align-items:baseline}.work-rows span,.production-rows span{font-family:ui-monospace,monospace;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.work-rows h3,.production-rows h3{font-size:clamp(1.45rem,2.7vw,3rem);line-height:1;letter-spacing:-.045em}.work-rows p,.production-rows p{color:var(--quiet);line-height:1.45}
.client-section-dark,.company-section-dark{background:var(--ink);color:#fff}.client-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.45);border-left:1px solid rgba(255,255,255,.2)}.client-grid>div{min-height:10rem;padding:1rem;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.client-grid strong{font-size:clamp(1.25rem,2vw,2.2rem);line-height:1}.client-grid span{font-size:.68rem;line-height:1.45;color:#b7bcc0;text-transform:uppercase;letter-spacing:.06em}.client-grid-light{color:var(--ink);border-color:var(--line)}.client-grid-light>div{border-color:var(--line)}.client-grid-light span{color:var(--quiet)}
.type-detail-hero{min-height:78svh;padding:clamp(7rem,12vw,12rem) var(--pad) clamp(4rem,7vw,7rem);display:grid;grid-template-columns:.65fr 2.6fr 1fr;gap:clamp(1.5rem,3vw,3.5rem);align-items:end}.type-detail-hero h1{font-size:clamp(5rem,14vw,15rem);line-height:.72;letter-spacing:-.09em}.type-detail-hero>p:last-child{font-size:clamp(1rem,1.4vw,1.3rem);line-height:1.5}.type-detail-dark{background:var(--ink);color:#fff}.type-detail-blue{background:var(--blue);color:#fff}
.detail-intro{display:grid;grid-template-columns:.65fr 3fr;gap:clamp(1.5rem,3vw,3.5rem)}.detail-intro>div{display:grid;grid-template-columns:1.45fr 1fr;gap:clamp(2rem,5vw,7rem)}
.milestone-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:2.5rem;border-top:1px solid var(--ink);border-left:1px solid var(--line)}.milestone-grid>div{min-height:19rem;padding:1.2rem;display:flex;flex-direction:column;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.milestone-grid span{font-family:ui-monospace,monospace;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.milestone-grid h3{font-size:clamp(1.6rem,3vw,3.4rem);line-height:.95;letter-spacing:-.05em;margin:auto 0 1rem}.milestone-grid p{line-height:1.5;color:var(--quiet)}
.detail-role-section{display:grid;grid-template-columns:.65fr 3fr;gap:clamp(1.5rem,3vw,3.5rem)}.detail-role-section>div{display:grid;grid-template-columns:1.45fr 1fr;gap:clamp(2rem,5vw,7rem);align-items:start}.detail-role-section p:last-child{font-size:1.05rem;line-height:1.65}.detail-role-dark{background:var(--ink);color:#fff}.detail-role-blue{background:var(--blue);color:#fff}
.credit-rows{margin-top:2.5rem;border-top:1px solid var(--ink)}.credit-rows>div{display:grid;grid-template-columns:.8fr 2fr;gap:1.2rem;padding:1rem 0;border-bottom:1px solid var(--line)}.credit-rows span{font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.credit-rows strong{font-size:1rem}
.company-heading{display:grid;grid-template-columns:.65fr 2fr 1fr;gap:clamp(1.5rem,3vw,3.5rem);align-items:end;margin-bottom:3rem}.company-heading>p:last-child{color:var(--quiet)}.company-section-dark .company-heading>p:last-child,.company-section-dark .production-rows p{color:#aeb2b5}.company-section-dark .production-rows>div{border-color:rgba(255,255,255,.2)}
.form-status{font-size:.8rem;line-height:1.5;color:var(--quiet)}.form-status a{font-weight:800}.inline-success{padding:clamp(2rem,5vw,5rem);background:var(--blue);color:#fff}.inline-success h2{font-size:clamp(3rem,7vw,7rem);line-height:.85;letter-spacing:-.07em;margin:1.5rem 0}.inline-success p:not(.section-label){font-size:1.08rem;line-height:1.55}.inline-success button{margin-top:2rem;border:1px solid #fff;background:transparent;color:#fff;padding:.85rem 1rem;font:inherit;font-weight:900;text-transform:uppercase;letter-spacing:.07em;cursor:pointer}
@media(max-width:1000px){.client-grid{grid-template-columns:repeat(2,1fr)}.milestone-grid{grid-template-columns:repeat(2,1fr)}.type-detail-hero{grid-template-columns:1fr;align-content:end}.list-heading,.company-heading{grid-template-columns:1fr}.detail-intro,.detail-role-section{grid-template-columns:1fr}.detail-intro>div,.detail-role-section>div{grid-template-columns:1fr}}
@media(max-width:700px){.feature-project-grid{grid-template-columns:1fr}.type-project{min-height:26rem}.work-rows>div,.production-rows>div{grid-template-columns:1fr;gap:.45rem}.client-grid,.milestone-grid{grid-template-columns:1fr}.type-detail-hero h1{font-size:clamp(4.3rem,20vw,8rem)}.credit-rows>div{grid-template-columns:1fr}.hero-id{white-space:normal}}

.production-rows h3 a{color:inherit;text-decoration:none}.production-rows h3 a:hover{text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.12em}

.category-dark.category-link,.category-blue.category-link{color:#fff}


/* v11 navigation, text flow, and project corrections */
:root{--header-h:60px}
html{scroll-padding-top:calc(var(--header-h) + 1rem)}
body{padding-top:var(--header-h)}
.site-header{position:fixed;top:0;left:0;right:0;z-index:60;max-width:none;width:100%;height:var(--header-h);margin:0;padding:.72rem var(--pad);background:color-mix(in srgb,var(--paper) 94%,transparent);box-shadow:0 1px 0 var(--line);backdrop-filter:blur(18px)}
.site-header nav{align-items:center;gap:clamp(.7rem,1.4vw,1.35rem)}
.site-header nav a{font-size:clamp(.58rem,.63vw,.68rem);white-space:nowrap}
.site-header nav a[aria-current="page"]{color:var(--blue-dark);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.35rem}
h1,h2,h3,.project-next a{text-wrap:balance;overflow-wrap:normal;word-break:normal}
p,figcaption{text-wrap:pretty}
.case-heading h2{font-size:clamp(2.7rem,5.25vw,5.8rem);max-width:20ch}
.swing-shelf-sequence img{aspect-ratio:4/3;object-fit:cover}
.swing-shelf-subcase{grid-template-columns:.75fr 2fr}
.theatre-production-rows>div{grid-template-columns:.24fr 1.35fr .95fr}
.theatre-production-rows p{line-height:1.55}
.event-project-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--line);margin-top:2.5rem}
.event-project-grid article{min-height:31rem;display:flex;flex-direction:column;padding:clamp(1.2rem,2.5vw,2.4rem);border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.event-project-grid span,.event-project-grid small{font-family:ui-monospace,monospace;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.event-project-grid h2{font-size:clamp(2rem,3.4vw,4.2rem);line-height:.93;letter-spacing:-.055em;margin:auto 0 1.4rem}
.event-project-grid p{line-height:1.55;color:var(--quiet)}
.event-project-grid small{margin-top:1.5rem;color:var(--quiet);line-height:1.45}
.category-card.category-dark.category-link small{color:#bdc1c4}
@media(max-width:1100px){.site-header nav:not(.project-nav){display:none;position:absolute;top:100%;left:0;right:0;padding:1rem var(--pad);background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 12px 28px rgba(0,0,0,.08)}.site-header nav.is-open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1.25rem}.menu-button{display:block}.site-header nav a{font-size:.72rem}.event-project-grid{grid-template-columns:1fr}.event-project-grid article{min-height:22rem}.theatre-production-rows>div{grid-template-columns:.22fr 1.1fr .9fr}}
@media(max-width:700px){.site-header nav.is-open{grid-template-columns:1fr}.theatre-production-rows>div{grid-template-columns:1fr}.swing-shelf-sequence{grid-template-columns:1fr}.case-heading h2{font-size:clamp(2.7rem,13vw,4.4rem)}}

/* v12 profiles, trailer, awards, links, and form cleanup */
.home-profile-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(2rem,5vw,6rem);align-items:center}
.home-profile-images{display:grid;grid-template-columns:1.25fr .75fr;gap:.8rem;align-items:end}
.home-profile-images img{height:clamp(24rem,46vw,44rem);object-fit:cover}
.home-profile-images img:last-child{height:clamp(18rem,34vw,32rem)}
.home-profile-copy h2{font-size:clamp(3rem,6vw,7rem);line-height:.9;letter-spacing:-.065em;margin-bottom:2rem;max-width:12ch}
.home-profile-copy p{font-size:clamp(1rem,1.35vw,1.25rem);line-height:1.65;max-width:39rem;margin-bottom:1rem}
.home-profile-copy .text-link{display:inline-block;margin-top:1.25rem}
.about-photo-band{display:grid;grid-template-columns:.8fr 1.4fr;gap:1rem;padding:clamp(2rem,5vw,5rem) var(--pad);border-bottom:1px solid var(--line)}
.about-photo-band figure{margin:0}.about-photo-band img{height:clamp(26rem,48vw,52rem);object-fit:cover}.about-photo-band figcaption{padding:.8rem 0;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.feature-project-grid-single{grid-template-columns:1fr}.feature-project-grid-single .type-project{min-height:38rem}.feature-project-grid-single .type-project h2{font-size:clamp(5rem,13vw,14rem)}
.trailer-section,.award-section,.press-section,.project-people-strip{padding:clamp(4rem,8vw,8rem) var(--pad);border-bottom:1px solid var(--line)}
.trailer-section{display:grid;grid-template-columns:.55fr 1.45fr;gap:clamp(2rem,5vw,6rem);align-items:center}.trailer-section-dark{background:var(--ink);color:#fff}.trailer-copy h2,.award-heading h2,.press-section h2,.project-people-strip h2{font-size:clamp(3rem,6vw,7rem);line-height:.9;letter-spacing:-.065em;margin:1rem 0 1.5rem}.trailer-copy p:last-child{line-height:1.6;color:#bcc1c4;max-width:28rem}.video-frame{position:relative;aspect-ratio:16/9;overflow:hidden;background:#000}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.award-section-blue{background:var(--blue);color:#fff}.award-heading{display:grid;grid-template-columns:1.35fr 1fr;gap:clamp(2rem,5vw,6rem);align-items:end;margin:1.2rem 0 2.5rem}.award-heading p{font-size:1.05rem;line-height:1.6;max-width:32rem}
.laurel-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid currentColor;border-left:1px solid color-mix(in srgb,currentColor 35%,transparent);margin-top:2.5rem}.laurel-grid-single{grid-template-columns:minmax(0,1fr);max-width:52rem}.laurel{min-height:15rem;padding:1.4rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-right:1px solid color-mix(in srgb,currentColor 35%,transparent);border-bottom:1px solid color-mix(in srgb,currentColor 35%,transparent);position:relative}.laurel:before,.laurel:after{position:absolute;top:50%;transform:translateY(-50%);font-size:4.8rem;font-family:Georgia,serif;font-weight:400;opacity:.35}.laurel:before{content:'❨';left:.75rem}.laurel:after{content:'❩';right:.75rem}.laurel span,.laurel small{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.laurel strong{font-size:clamp(1.4rem,2.4vw,2.5rem);line-height:1;margin:.9rem 0}.laurel small{line-height:1.45;max-width:18rem}
.press-section header{display:grid;grid-template-columns:.65fr 2.35fr;gap:clamp(1.5rem,3vw,3.5rem);align-items:end;margin-bottom:2.5rem}.related-links{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ink);border-left:1px solid var(--line)}.related-links a{min-height:10rem;padding:1.2rem;display:flex;flex-direction:column;justify-content:space-between;text-decoration:none;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.related-links a:hover{background:var(--ink);color:#fff}.related-links span{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.related-links strong{font-size:clamp(1.25rem,2vw,2rem);line-height:1.1}.related-links-on-blue{border-color:rgba(255,255,255,.65)}.related-links-on-blue a{border-color:rgba(255,255,255,.35)}.related-links-on-blue a:hover{background:#fff;color:var(--ink)}.collaborator-link{margin-top:2rem;font-size:.85rem;line-height:1.5}.collaborator-link a{font-weight:800}
.project-people-strip{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,5vw,6rem);align-items:center}.project-people-strip figure{margin:0}.project-people-strip img{height:clamp(28rem,52vw,54rem);object-fit:cover}.project-people-strip figcaption{padding:.8rem 0;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.project-people-strip p:not(.section-label){font-size:clamp(1rem,1.35vw,1.25rem);line-height:1.65;max-width:35rem;margin-bottom:1.5rem}
.form-note{font-size:.78rem;line-height:1.5;color:var(--quiet)}
@media(max-width:900px){.home-profile-grid,.trailer-section,.project-people-strip,.award-heading{grid-template-columns:1fr}.about-photo-band{grid-template-columns:1fr 1fr}.laurel-grid{grid-template-columns:repeat(2,1fr)}.press-section header{grid-template-columns:1fr}}
@media(max-width:640px){.home-profile-images{grid-template-columns:1fr}.home-profile-images img,.home-profile-images img:last-child{height:26rem}.about-photo-band{grid-template-columns:1fr}.about-photo-band img{height:30rem}.laurel-grid,.related-links{grid-template-columns:1fr}.project-people-strip img{height:34rem}.trailer-copy h2,.award-heading h2,.press-section h2,.project-people-strip h2{font-size:clamp(2.8rem,14vw,4.7rem)}}


/* v13 refinements */
h1,h2,h3,.project-next a,.category-card h3{ text-wrap:balance; }
p,figcaption{ text-wrap:pretty; }
.home-profile-images img,.about-photo-band img{object-position:center;}
.event-span-section{padding:clamp(4rem,8vw,8rem) var(--pad);border-bottom:1px solid var(--line)}
.event-span-heading{display:grid;grid-template-columns:.7fr 2.4fr 1fr;gap:clamp(1.5rem,3vw,3.5rem);align-items:end;margin-bottom:clamp(3rem,6vw,6rem)}
.event-span-heading h2{font-size:clamp(2.8rem,6vw,6.5rem);line-height:.92;letter-spacing:-.06em}
.event-span-heading>p:last-child{line-height:1.55;color:var(--quiet)}
.event-bookends{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.event-bookend{display:grid;grid-template-columns:minmax(7rem,.42fr) 1.7fr;gap:clamp(1.5rem,4vw,5rem);padding:clamp(2rem,5vw,5rem) 0}
.event-bookend+.event-bookend{border-top:1px solid var(--line)}
.event-year{font-size:clamp(3rem,7vw,7rem);font-weight:900;letter-spacing:-.07em;line-height:.85}
.event-bookend>div{display:grid;gap:1rem;max-width:62rem}
.event-bookend h3{font-size:clamp(2rem,4.6vw,5rem);line-height:.95;letter-spacing:-.055em}
.event-bookend p:not(.section-label){font-size:1.05rem;line-height:1.58;color:var(--quiet);max-width:52rem}
.event-bookend small{font-family:ui-monospace,monospace;color:var(--quiet)}
.event-bridge{display:grid;grid-template-columns:minmax(7rem,.42fr) 1.7fr;gap:clamp(1.5rem,4vw,5rem);padding:1.4rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--blue);color:white}
.event-bridge>span{padding-left:.8rem;font-family:ui-monospace,monospace;font-weight:800}
.event-bridge>div{display:grid;grid-template-columns:.8fr 1.2fr;gap:2rem;padding-right:1rem;align-items:start}
.event-bridge h3{font-size:clamp(1.4rem,2.4vw,2.6rem);line-height:1}
.event-bridge p{line-height:1.5}
.image-grid-2{grid-template-columns:repeat(2,1fr)}
.wlv-use-grid img{aspect-ratio:4/3;object-fit:cover}
.form-status{min-height:1.4em;margin-top:.7rem}
.form-status.is-success{color:#0f6b35;font-weight:800}
.form-status.is-error{color:#a52828;font-weight:800}
.project-form button[disabled]{opacity:.55;cursor:wait}
@media(max-width:900px){.event-span-heading{grid-template-columns:1fr}.event-bookend,.event-bridge{grid-template-columns:1fr}.event-bridge>div{grid-template-columns:1fr;padding:0 .8rem .8rem}.image-grid-2{grid-template-columns:1fr}}

/* v14 archive additions */
.home-profile-images img:first-child,.about-photo-band figure:first-child img{object-position:center 24%}
.home-profile-images img:last-child,.about-photo-band figure:last-child img{object-position:center}
.home-project-section,.visual-project-section{padding:clamp(4rem,8vw,8rem) var(--pad);border-bottom:1px solid var(--line)}
.home-project-heading,.visual-project-heading{display:grid;grid-template-columns:.7fr 2.3fr;gap:clamp(1.5rem,3vw,3.5rem);align-items:end;margin-bottom:clamp(2.5rem,5vw,5rem)}
.home-project-heading h2,.visual-project-heading h2{font-size:clamp(2.8rem,6vw,6.5rem);line-height:.92;letter-spacing:-.06em;max-width:18ch}
.home-project-heading p:not(.section-label),.visual-project-heading p:not(.section-label){font-size:1.03rem;line-height:1.6;color:var(--quiet);max-width:44rem;margin-top:1.2rem}
.home-project-grid,.visual-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);margin-top:1px}
.home-project-grid figure,.visual-project-grid figure{background:var(--paper)}
.home-project-grid img,.visual-project-grid img{aspect-ratio:4/3;object-fit:cover}
.home-project-grid-finish img{aspect-ratio:3/4}
.home-project-grid figcaption,.visual-project-grid figcaption{padding:.8rem .9rem;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.visual-project-dark{background:var(--ink);color:#fff}
.visual-project-dark .visual-project-heading p:not(.section-label){color:#b6babd}
.visual-project-dark .visual-project-grid{background:rgba(255,255,255,.2)}
.visual-project-dark .visual-project-grid figure{background:var(--paper);color:var(--ink)}
@media(max-width:900px){.home-project-heading,.visual-project-heading{grid-template-columns:1fr}.home-project-grid,.visual-project-grid{grid-template-columns:1fr}.home-project-grid-finish img{aspect-ratio:4/3}.home-profile-images img:first-child,.about-photo-band figure:first-child img{object-position:center 18%}}


/* v16 responsive repair and editorial refinements */
:where(main,section,header,div,article,figure,nav){min-width:0}
body{overflow-x:hidden}
h1,h2,h3{overflow-wrap:normal;word-break:normal;hyphens:none}

/* Keep the masthead useful without forcing it past the viewport. */
.site-header{max-width:none;width:100%}
.site-header nav{gap:clamp(.65rem,1.35vw,1.55rem)}
.site-header nav a{font-size:clamp(.62rem,.72vw,.75rem);white-space:nowrap}

/* Category and content heroes no longer place giant titles in a narrow middle column. */
.category-page-hero,.page-hero{
  grid-template-columns:minmax(0,1.8fr) minmax(16rem,.72fr);
  grid-template-areas:"kicker kicker" "title intro";
  align-items:end;
  column-gap:clamp(2rem,5vw,7rem);
  row-gap:clamp(1.25rem,3vw,2.5rem);
  min-height:auto;
  padding-top:clamp(7rem,11vw,11rem);
}
.category-page-hero>.kicker,.page-hero>.kicker{grid-area:kicker;align-self:auto;max-width:none}
.category-page-hero h1,.page-hero h1{grid-area:title;font-size:clamp(4rem,8.4vw,9.5rem);line-height:.84;max-width:10.5ch}
.category-page-hero>p:last-child,.page-hero-intro{grid-area:intro;align-self:end;max-width:32rem}

/* Prevent the homepage profile from overrunning the copy column. */
.home-profile-grid{grid-template-columns:minmax(0,1.05fr) minmax(20rem,.95fr);align-items:start}
.home-profile-images{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.home-profile-copy h2{font-size:clamp(2.8rem,4.8vw,5.6rem);max-width:11ch}
.about-photo-band{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}

/* Theatre credits distinguish the producer/company from the venue. */
.theatre-production-rows p{display:grid;gap:.28rem}
.theatre-production-rows p span{display:block}
.theatre-production-rows p b{color:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.66rem;text-transform:uppercase;letter-spacing:.07em;margin-right:.35rem}
.theatre-production-rows .production-role{margin-top:.4rem;color:#fff}

/* Replace the oversized event bookend device with straightforward project rows. */
.event-projects-section{padding:clamp(4rem,8vw,8rem) var(--pad);border-bottom:1px solid var(--line)}
.event-projects-heading{display:grid;grid-template-columns:minmax(8rem,.5fr) minmax(0,2.4fr);gap:clamp(1.5rem,4vw,5rem);align-items:start;margin-bottom:clamp(3rem,6vw,6rem)}
.event-projects-heading h2{font-size:clamp(2.8rem,5.7vw,6.2rem);line-height:.92;letter-spacing:-.06em;max-width:15ch}
.event-projects-heading>div>p{font-size:1.05rem;line-height:1.65;color:var(--quiet);max-width:52rem;margin-top:1.4rem}
.event-project-rows{border-top:1px solid var(--ink)}
.event-project-rows article{display:grid;grid-template-columns:minmax(7rem,.4fr) minmax(0,1.8fr);gap:clamp(1.5rem,4vw,5rem);padding:clamp(2.2rem,4.5vw,4.5rem) 0;border-bottom:1px solid var(--line)}
.event-date{font-size:clamp(2.4rem,5vw,5.2rem);font-weight:900;letter-spacing:-.065em;line-height:.9}
.event-project-rows article>div{display:grid;gap:1rem;max-width:64rem}
.event-project-rows h3{font-size:clamp(2rem,4vw,4.5rem);line-height:.95;letter-spacing:-.05em;max-width:16ch}
.event-project-rows p:not(.section-label){font-size:1.05rem;line-height:1.65;color:var(--quiet);max-width:54rem}
.event-project-rows small{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.7rem;line-height:1.5;color:var(--quiet)}

/* Expanded descriptions need more room than the original compact resume rows. */
.work-rows>div{grid-template-columns:minmax(5.5rem,.28fr) minmax(12rem,1fr) minmax(18rem,1.35fr);align-items:start}
.work-rows p{font-size:.95rem;line-height:1.55}
.client-grid span{line-height:1.45}

@media(max-width:1100px){
  .site-header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:1rem var(--pad) 1.4rem;background:var(--paper);border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
  .site-header nav.is-open{display:grid}
  .menu-button{display:block}
  .category-page-hero,.page-hero{grid-template-columns:1fr;grid-template-areas:"kicker" "title" "intro"}
  .category-page-hero h1,.page-hero h1{font-size:clamp(3.7rem,11vw,7.5rem);max-width:11ch}
  .home-profile-grid{grid-template-columns:1fr}
  .home-profile-copy h2{max-width:13ch}
  .work-rows>div{grid-template-columns:6rem minmax(10rem,.85fr) minmax(0,1.2fr)}
}
@media(max-width:760px){
  .site-header nav{grid-template-columns:1fr}
  .category-page-hero,.page-hero{padding-top:6rem}
  .category-page-hero h1,.page-hero h1{font-size:clamp(3.1rem,15vw,5.5rem);line-height:.88}
  .home-profile-images,.about-photo-band{grid-template-columns:1fr}
  .home-profile-images img,.home-profile-images img:last-child,.about-photo-band img{height:auto;max-height:42rem;object-fit:cover}
  .event-projects-heading,.event-project-rows article{grid-template-columns:1fr}
  .work-rows>div{grid-template-columns:1fr;gap:.55rem}
  .theatre-production-rows p{margin-top:.25rem}
}

/* v17 portrait and homepage hero corrections */
.home-hero{
  grid-template-columns:minmax(15rem,.52fr) minmax(0,1.48fr);
  grid-template-areas:"identity title" ". copy";
  column-gap:clamp(2rem,5vw,7rem);
  row-gap:clamp(2rem,4vw,4rem);
  align-items:end;
}
.home-hero .hero-id{grid-area:identity;align-self:start}
.home-hero h1{grid-area:title;font-size:clamp(4.25rem,8.1vw,9rem);max-width:10.5ch}
.home-hero-copy{grid-area:copy;max-width:38rem;justify-self:end}
.hero-id{
  font-size:clamp(1.05rem,1.5vw,1.45rem);
  line-height:1.28;
  letter-spacing:.09em;
  gap:.55rem;
}
.hero-id strong{font-size:1.08em}
.home-profile-images img:first-child{object-position:center 32%}
.home-profile-images img:last-child{object-position:center 35%}
.about-photo-band figure:first-child img{object-position:center 20%}
.about-photo-band figure:last-child img{object-position:center 45%}
@media(max-width:1050px){
  .home-hero{grid-template-columns:1fr;grid-template-areas:"identity" "title" "copy";align-content:end}
  .home-hero-copy{justify-self:start}
  .home-hero h1{font-size:clamp(4rem,11vw,7rem);max-width:10ch}
  .hero-id{display:grid;gap:.3rem}
  .hero-id span+span:before{content:""}
}
@media(max-width:640px){
  .home-hero h1{font-size:clamp(3.6rem,16vw,5.6rem)}
  .hero-id{font-size:1rem}
}


/* v18 homepage portrait placement and corrected project attribution */
.home-hero-portrait{
  min-height:calc(100svh - 58px);
  display:grid;
  grid-template-columns:minmax(17rem,.72fr) minmax(0,1.28fr);
  gap:clamp(2.5rem,6vw,8rem);
  align-items:center;
  padding:clamp(3rem,6vw,6rem) var(--pad);
}
.home-hero-portrait .hero-person{
  display:grid;
  gap:1.25rem;
  align-self:stretch;
  align-content:center;
  max-width:31rem;
}
.home-hero-portrait .hero-person img{
  width:100%;
  height:min(68svh,48rem);
  object-fit:cover;
  object-position:center 34%;
}
.home-hero-portrait .hero-id{
  display:grid;
  gap:.25rem;
  margin:0;
  line-height:1.05;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.home-hero-portrait .hero-id strong{
  font-size:clamp(1.9rem,3vw,3.4rem);
  letter-spacing:.035em;
}
.home-hero-portrait .hero-id span{
  font-size:clamp(1.05rem,1.55vw,1.55rem);
  color:var(--quiet);
  font-weight:800;
}
.home-hero-portrait .hero-message{
  display:grid;
  gap:clamp(2rem,4vw,4rem);
  align-content:center;
}
.home-hero-portrait h1{
  grid-area:auto;
  font-size:clamp(4.1rem,8vw,9rem);
  line-height:.84;
  letter-spacing:-.075em;
  max-width:9.5ch;
}
.home-hero-portrait h1 span{display:block}
.home-hero-portrait .home-hero-copy{
  grid-area:auto;
  justify-self:start;
  max-width:38rem;
}
.home-about-copy-only{padding-top:clamp(4rem,7vw,7rem)}
.home-about-copy-grid{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr);
  gap:clamp(2.5rem,6vw,8rem);
  align-items:start;
  margin-top:clamp(2.5rem,5vw,5rem);
}
.home-about-copy-grid>h2{
  font-size:clamp(3rem,6vw,7rem);
  line-height:.9;
  letter-spacing:-.06em;
  max-width:12ch;
}
.home-about-copy-grid .home-profile-copy{padding-top:.4rem}
.above-fold-section{background:var(--paper)}
@media(max-width:900px){
  .home-hero-portrait{grid-template-columns:1fr;min-height:auto;padding-top:4rem}
  .home-hero-portrait .hero-person{max-width:30rem}
  .home-hero-portrait .hero-person img{height:auto;aspect-ratio:3/4}
  .home-hero-portrait h1{font-size:clamp(4rem,12vw,7rem);max-width:10ch}
  .home-about-copy-grid{grid-template-columns:1fr}
}
@media(max-width:600px){
  .home-hero-portrait{gap:2rem}
  .home-hero-portrait .hero-id strong{font-size:2rem}
  .home-hero-portrait .hero-id span{font-size:1rem}
  .home-hero-portrait h1{font-size:clamp(3.5rem,16vw,5.4rem)}
}

/* v19 pre-feedback layout pass */
.home-hero-feature{
  min-height:calc(100svh - 58px);
  display:grid;
  grid-template-columns:minmax(0,1.28fr) minmax(20rem,.72fr);
  gap:clamp(2.5rem,6vw,7rem);
  align-items:center;
  padding:clamp(4rem,7vw,7rem) var(--pad);
}
.home-hero-feature .hero-message{display:grid;gap:clamp(2rem,4vw,4rem);align-content:center}
.home-hero-feature h1{font-size:clamp(4.4rem,8.6vw,9.6rem);line-height:.83;letter-spacing:-.075em;max-width:8.8ch}
.home-hero-feature h1 span{display:block}
.home-hero-feature .home-hero-copy{max-width:38rem;justify-self:start}
.home-hero-feature .hero-person{display:grid;gap:1.2rem;align-content:center;width:100%;max-width:34rem;justify-self:end}
.home-hero-feature .hero-person img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 38%}
.home-hero-feature .hero-id{display:grid;gap:.3rem;margin:0;text-transform:uppercase;letter-spacing:.075em;line-height:1.05}
.home-hero-feature .hero-id strong{font-size:clamp(2rem,3.2vw,3.6rem);letter-spacing:.03em}
.home-hero-feature .hero-id span{font-size:clamp(1.05rem,1.45vw,1.45rem);font-weight:800;color:var(--quiet)}

.about-lead{display:grid;grid-template-columns:minmax(22rem,.82fr) minmax(0,1.18fr);gap:clamp(2.5rem,6vw,8rem);align-items:center;padding:clamp(3rem,6vw,6rem) var(--pad);border-bottom:1px solid var(--line);min-height:calc(100svh - 58px)}
.about-lead-photo{margin:0;max-width:42rem}
.about-lead-photo img{width:100%;aspect-ratio:3/4;object-fit:cover;object-position:center 25%}
.about-lead-copy{display:grid;gap:clamp(1.5rem,3vw,2.5rem);align-content:center}
.about-lead-copy h1{font-size:clamp(4.1rem,8vw,9rem);line-height:.84;letter-spacing:-.075em;max-width:8.5ch}
.about-lead-copy mark{display:inline-block;background:var(--blue);color:#fff;padding:.02em .1em .07em .06em;clip-path:polygon(1% 4%,100% 0,98% 96%,0 100%)}
.about-lead-copy .page-hero-intro{font-size:clamp(1rem,1.35vw,1.3rem);line-height:1.55;max-width:37rem}

.home-shop-strip{display:grid;grid-template-columns:minmax(20rem,.82fr) minmax(0,1.18fr);gap:clamp(2.5rem,6vw,8rem);align-items:center;padding:clamp(4rem,8vw,8rem) var(--pad);border-bottom:1px solid var(--line);background:var(--paper2)}
.home-shop-strip figure{margin:0;max-width:42rem}
.home-shop-strip img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center 45%}
.home-shop-strip>div{display:grid;gap:1.2rem}
.home-shop-strip h2{font-size:clamp(2.8rem,5.8vw,6.2rem);line-height:.92;letter-spacing:-.06em;max-width:12ch}
.home-shop-strip>div>p:last-child{font-size:1.05rem;line-height:1.65;max-width:38rem;color:var(--quiet)}

/* Keep multi-image project rows readable at common laptop widths. */
.visual-project-grid img{min-height:0}
.visual-project-grid figcaption{min-height:3.25rem;display:flex;align-items:center}

@media(max-width:1000px){
  .home-hero-feature,.about-lead,.home-shop-strip{grid-template-columns:1fr}
  .home-hero-feature .hero-person{justify-self:start;max-width:30rem;grid-row:1}
  .home-hero-feature .hero-message{grid-row:2}
  .about-lead-photo{max-width:34rem}
  .about-lead{min-height:auto}
}
@media(max-width:640px){
  .home-hero-feature{padding-top:3rem;gap:2.25rem}
  .home-hero-feature .hero-person{max-width:none}
  .home-hero-feature .hero-person img{aspect-ratio:4/5}
  .home-hero-feature h1,.about-lead-copy h1{font-size:clamp(3.5rem,16vw,5.4rem)}
  .home-hero-feature .hero-id strong{font-size:2rem}
  .home-hero-feature .hero-id span{font-size:1rem}
  .about-lead-photo{max-width:none}
  .about-lead-photo img{aspect-ratio:4/5}
  .home-shop-strip figure{max-width:none}
}

/* v19.1 reset older homepage grid-area rules */
.home-hero-feature{grid-template-areas:none}
.home-hero-feature .hero-message,
.home-hero-feature .hero-person,
.home-hero-feature h1,
.home-hero-feature .home-hero-copy,
.home-hero-feature .hero-id{grid-area:auto}
@media(max-width:1000px){
  .home-hero-feature .hero-person,
  .home-hero-feature .hero-message{grid-row:auto}
}


/* v20: public draft marker and commercial-scale work */
:root{--status-h:24px;--header-row-h:60px;--header-h:calc(var(--status-h) + var(--header-row-h))}
body{padding-top:var(--header-h)}
.site-header{height:var(--header-h);padding:0;display:block;background:color-mix(in srgb,var(--paper) 96%,transparent)}
.site-status{height:var(--status-h);display:flex;align-items:center;justify-content:center;padding:0 var(--pad);background:var(--blue);color:#fff;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.61rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap}
.site-header-row{height:var(--header-row-h);display:flex;align-items:center;justify-content:space-between;padding:.72rem var(--pad)}
.site-header-row nav{display:flex}
.site-header-row .menu-button{margin-left:auto}
.commercial-scale-section,.ground-up-section{padding:clamp(4rem,8vw,8rem) var(--pad);border-bottom:1px solid var(--line)}
.commercial-scale-blue{background:var(--blue);color:#fff}
.commercial-scale-heading{display:grid;grid-template-columns:minmax(9rem,.65fr) minmax(0,2.8fr);gap:clamp(1.5rem,3vw,3.5rem);align-items:start}
.commercial-scale-heading h2,.ground-up-section h2{font-size:clamp(3rem,6.8vw,7.7rem);line-height:.88;letter-spacing:-.065em;max-width:15ch}
.commercial-scale-heading div>p{max-width:53rem;margin-top:1.5rem;font-size:clamp(1rem,1.35vw,1.25rem);line-height:1.62}
.commercial-scope-grid{display:grid;grid-template-columns:1fr 1fr 1.7fr;margin-top:clamp(3rem,6vw,6rem);border-top:1px solid rgba(255,255,255,.65);border-left:1px solid rgba(255,255,255,.32)}
.commercial-scope-grid>div{min-height:11rem;display:flex;flex-direction:column;justify-content:space-between;padding:1.2rem;border-right:1px solid rgba(255,255,255,.32);border-bottom:1px solid rgba(255,255,255,.32)}
.commercial-scope-grid span{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.64rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.commercial-scope-grid strong{font-size:clamp(1.15rem,2vw,2rem);line-height:1.08}
.commercial-scale-note{max-width:57rem;margin-top:2rem;font-size:.82rem;line-height:1.65;color:rgba(255,255,255,.78)}
.ground-up-section{display:grid;grid-template-columns:minmax(9rem,.65fr) minmax(0,2.8fr);gap:clamp(1.5rem,3vw,3.5rem)}
.ground-up-section>div{display:grid;grid-template-columns:1.35fr 1fr;gap:clamp(2rem,5vw,6rem);align-items:start}
.ground-up-section .prose-stack{padding-top:.4rem}
@media(max-width:1100px){
  .site-header nav:not(.project-nav){top:100%}
  .commercial-scale-heading,.ground-up-section,.ground-up-section>div{grid-template-columns:1fr}
  .commercial-scope-grid{grid-template-columns:1fr 1fr}
  .commercial-scope-grid>div:last-child{grid-column:1/-1}
}
@media(max-width:700px){
  :root{--status-h:26px;--header-row-h:58px}
  .site-status{font-size:.56rem;letter-spacing:.075em}
  .commercial-scope-grid{grid-template-columns:1fr}
  .commercial-scope-grid>div:last-child{grid-column:auto}
  .commercial-scale-heading h2,.ground-up-section h2{font-size:clamp(2.8rem,14vw,5rem)}
}


/* v21: prominent public-draft banner and ongoing trivia project */
:root{
  --status-h:96px;
  --header-row-h:60px;
  --header-h:calc(var(--status-h) + var(--header-row-h));
}
.site-status{
  height:var(--status-h);
  min-height:var(--status-h);
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:center;
  gap:clamp(1.25rem,3vw,3.5rem);
  padding:.7rem var(--pad);
  background:var(--blue);
  color:#fff;
  text-align:center;
  white-space:normal;
  border-bottom:3px solid var(--ink);
}
.site-status strong{
  font-family:Arial,Helvetica,sans-serif;
  font-size:clamp(1.45rem,2.15vw,2rem);
  line-height:1;
  font-weight:950;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.site-status span{
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:clamp(.68rem,.9vw,.84rem);
  line-height:1.25;
  font-weight:900;
  letter-spacing:.075em;
  text-transform:uppercase;
}
.home-hero-feature,.about-lead{min-height:calc(100svh - var(--header-h))}

.trivia-project-section{
  padding:clamp(4rem,8vw,8rem) var(--pad);
  border-bottom:1px solid var(--line);
  background:var(--blue);
  color:#fff;
}
.trivia-project-heading{
  display:grid;
  grid-template-columns:minmax(10rem,.68fr) minmax(0,2.5fr);
  gap:clamp(1.5rem,4vw,5rem);
  align-items:start;
}
.trivia-project-heading h2{
  font-size:clamp(3rem,6.7vw,7.5rem);
  line-height:.88;
  letter-spacing:-.065em;
  max-width:12ch;
}
.trivia-project-copy{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:clamp(1.5rem,3vw,3.5rem);
  margin-top:clamp(1.8rem,3.5vw,3rem);
  max-width:66rem;
}
.trivia-project-copy p{
  font-size:clamp(1rem,1.25vw,1.18rem);
  line-height:1.65;
}
.trivia-scope-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:clamp(3rem,6vw,6rem);
  border-top:1px solid rgba(255,255,255,.75);
  border-left:1px solid rgba(255,255,255,.35);
}
.trivia-scope-grid>div{
  min-height:13rem;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:2rem;
  padding:1.2rem;
  border-right:1px solid rgba(255,255,255,.35);
  border-bottom:1px solid rgba(255,255,255,.35);
}
.trivia-scope-grid span{
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:.65rem;
  line-height:1.35;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.trivia-scope-grid strong{
  font-size:clamp(1.15rem,1.8vw,1.75rem);
  line-height:1.08;
}
@media(max-width:1000px){
  .trivia-project-heading{grid-template-columns:1fr}
  .trivia-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  :root{--status-h:108px;--header-row-h:58px}
  .site-status{flex-direction:column;gap:.35rem;padding:.65rem 1rem}
  .site-status strong{font-size:1.15rem;line-height:1.05}
  .site-status span{font-size:.61rem;line-height:1.3;max-width:38rem}
  .trivia-project-copy,.trivia-scope-grid{grid-template-columns:1fr}
  .trivia-scope-grid>div{min-height:10rem}
  .trivia-project-heading h2{font-size:clamp(2.9rem,14vw,5rem)}
}

.trivia-venue-link{display:inline-block;margin-top:1.5rem;color:#fff;border-color:#fff}
.trivia-venue-link:hover{opacity:.72}

/* Batched release: LG Constructions visual project cards */
.lgc-project-section{padding:clamp(4rem,8vw,8rem) var(--pad);background:var(--paper);border-bottom:1px solid var(--line)}
.lgc-project-heading{display:grid;grid-template-columns:.7fr 2.3fr;gap:clamp(1.5rem,3vw,3.5rem);align-items:end;margin-bottom:clamp(2.5rem,5vw,5rem)}
.lgc-project-heading h2{font-size:clamp(2.8rem,6vw,6.5rem);line-height:.92;letter-spacing:-.06em;max-width:18ch}
.lgc-project-heading p:not(.section-label){font-size:1.03rem;line-height:1.6;color:var(--quiet);max-width:44rem;margin:1.2rem 0 1rem}
.lgc-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.lgc-project-card{background:var(--paper);min-width:0}
.lgc-project-art{min-height:22rem;padding:clamp(1.2rem,3vw,2.5rem);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}
.lgc-project-art::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.2}
.lgc-project-art span{position:relative;z-index:1;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}
.lgc-project-art strong{position:relative;z-index:1;font-size:clamp(3rem,7vw,7.4rem);line-height:.82;letter-spacing:-.07em;max-width:8ch}
.lgc-project-copy{padding:1.25rem 1.35rem 1.5rem;border-top:1px solid rgba(17,19,21,.2)}
.lgc-project-copy h3{font-size:1.35rem;line-height:1.05;margin:0 0 .7rem}
.lgc-project-copy p{margin:0;line-height:1.55;color:var(--quiet);max-width:52rem}
.lgc-tinder .lgc-project-art{background:linear-gradient(140deg,#ff6b6b 0%,#ff4458 48%,#8b2cff 100%);color:#fff}
.lgc-tinder .lgc-project-art::after{background:radial-gradient(circle at 80% 18%,transparent 0 12%,#fff 12.5% 13%,transparent 13.5% 100%)}
.lgc-buildshow .lgc-project-art{background:#f4c928;color:#101316}
.lgc-buildshow .lgc-project-art::after{background-image:linear-gradient(rgba(16,19,22,.45) 1px,transparent 1px),linear-gradient(90deg,rgba(16,19,22,.45) 1px,transparent 1px);background-size:28px 28px}
.lgc-fabula .lgc-project-art{background:linear-gradient(135deg,#100d12,#44122f 60%,#9d274d);color:#fff}
.lgc-fabula .lgc-project-art::after{background:repeating-linear-gradient(125deg,transparent 0 30px,rgba(255,255,255,.35) 31px 32px)}
.lgc-hereweare .lgc-project-art{background:#dce8ed;color:#17333e}
.lgc-hereweare .lgc-project-art::after{background:linear-gradient(90deg,transparent 0 47%,#17333e 47% 47.5%,transparent 47.5%),linear-gradient(transparent 0 63%,#17333e 63% 63.5%,transparent 63.5%)}
@media(max-width:900px){.lgc-project-heading{grid-template-columns:1fr}.lgc-project-grid{grid-template-columns:1fr}.lgc-project-art{min-height:18rem}.lgc-project-art strong{font-size:clamp(3.6rem,17vw,7rem)}}

/* Final audited release: typography, status bar, and expanded residential work */
:root{
  --status-h:36px;
  --header-row-h:60px;
  --header-h:calc(var(--status-h) + var(--header-row-h));
}

h1,h2,h3,
.project-next a,
.category-card h3,
.lgc-project-art strong,
.commercial-scope-grid strong,
.trivia-scope-grid strong{
  text-wrap:balance;
}

p,figcaption,dd,small{
  text-wrap:pretty;
}

.site-status{
  height:var(--status-h);
  min-height:var(--status-h);
  flex-direction:row;
  gap:.85rem;
  padding:.35rem var(--pad);
  border-bottom:1px solid rgba(16,19,22,.45);
  white-space:normal;
}
.site-status strong{
  flex:0 0 auto;
  font-family:Arial,Helvetica,sans-serif;
  font-size:.72rem;
  line-height:1;
  font-weight:900;
  letter-spacing:.09em;
}
.site-status span{
  font-size:.61rem;
  line-height:1.15;
  letter-spacing:.065em;
}
.home-hero-feature,.about-lead{min-height:calc(100svh - var(--header-h))}

.home-about-copy-grid>h2{
  max-width:14ch;
}

.home-project-dark{
  background:var(--ink);
  color:#fff;
}
.home-project-dark .home-project-heading p:not(.section-label),
.home-project-dark .home-subproject-copy>p:last-child{
  color:#b8bdc0;
}
.home-project-dark .home-project-grid,
.home-project-dark .home-subproject-gallery{
  background:rgba(255,255,255,.22);
}
.home-project-dark .credit-note{
  color:#b8bdc0;
}
.home-project-grid-4{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.home-project-grid-2{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.home-project-grid .portrait-contain img{
  object-fit:contain;
  background:var(--paper2);
}

.buda-project-section{
  background:var(--paper2);
}
.home-subproject{
  display:grid;
  grid-template-columns:minmax(14rem,.72fr) minmax(0,2.28fr);
  gap:clamp(2rem,4vw,5rem);
  align-items:start;
  padding:clamp(2.5rem,5vw,5rem) 0;
  border-top:1px solid var(--line);
}
.home-subproject-copy{
  display:grid;
  gap:1rem;
  position:sticky;
  top:calc(var(--header-h) + 1.5rem);
}
.home-subproject-copy h3{
  font-size:clamp(1.8rem,3.4vw,3.8rem);
  line-height:.98;
  letter-spacing:-.05em;
}
.home-subproject-copy>p:last-child{
  max-width:34rem;
  color:var(--quiet);
  line-height:1.6;
}
.home-subproject-gallery{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;
  background:var(--line);
}
.home-subproject-gallery-2{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.home-subproject-gallery figure{
  background:var(--paper);
}
.home-subproject-gallery img{
  aspect-ratio:4/3;
  object-fit:cover;
}
.home-subproject-gallery figcaption{
  min-height:3.25rem;
  display:flex;
  align-items:center;
  padding:.8rem .9rem;
  font-size:.72rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.laundry-project-section .home-project-grid img{
  aspect-ratio:4/3;
}

:focus-visible{
  outline:3px solid var(--blue-dark);
  outline-offset:3px;
}
.case-dark :focus-visible,
.home-project-dark :focus-visible,
.contact :focus-visible,
.category-dark :focus-visible,
.category-blue :focus-visible{
  outline-color:#fff;
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}

@media(max-width:1100px){
  .home-project-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-subproject{grid-template-columns:1fr}
  .home-subproject-copy{position:static}
}

@media(max-width:700px){
  :root{
    --status-h:44px;
    --header-row-h:58px;
  }
  .site-status{
    flex-direction:column;
    gap:.08rem;
    padding:.35rem .75rem;
  }
  .site-status strong{
    font-size:.67rem;
    line-height:1;
  }
  .site-status span{
    font-size:.51rem;
    line-height:1.15;
    letter-spacing:.055em;
  }
  .home-project-grid-4,
  .home-project-grid-2,
  .home-subproject-gallery,
  .home-subproject-gallery-2{
    grid-template-columns:1fr;
  }
  .home-subproject-gallery img,
  .home-project-grid .portrait-contain img{
    aspect-ratio:4/3;
    object-fit:cover;
  }
  .home-project-heading h2{
    font-size:clamp(2.65rem,13vw,4.6rem);
  }
  .home-about-copy-grid>h2{
    max-width:16ch;
  }
}


/* Final QA corrections: contrast and headline breathing room */
.visual-project-section.visual-project-dark.above-fold-section{
  background:var(--ink);
  color:#fff;
}
.visual-project-section.visual-project-dark.above-fold-section .visual-project-heading p:not(.section-label),
.visual-project-section.visual-project-dark.above-fold-section .credit-note{
  color:#b8bdc0;
}
.visual-project-section.visual-project-dark.above-fold-section .visual-project-grid{
  background:rgba(255,255,255,.22);
}
.before-after-block{
  grid-template-columns:minmax(15rem,1fr) minmax(0,2fr);
}
@media(max-width:900px){
  .before-after-block{grid-template-columns:1fr}
}


/* Final release: establishment label and homepage category rhythm */
.site-status strong{
  font-size:clamp(.9rem,1.25vw,1.15rem);
  letter-spacing:.085em;
}
@media(max-width:700px){
  .site-status strong{font-size:.82rem}
  .site-status span{font-size:.49rem}
}
.category-grid .category-card h3{max-width:16ch}


/* Final headline-wrap corrections */
.film-credits-heading h2{font-size:clamp(2.45rem,4.15vw,4.75rem)}
.film-credits-heading h2 span{white-space:nowrap}
.swing-heading h3{font-size:clamp(2rem,2.65vw,2.8rem)}
.swing-heading h3 span{white-space:nowrap}
@media(max-width:700px){
  .film-credits-heading h2{font-size:clamp(1.95rem,8.7vw,2.65rem)}
  .swing-heading h3{font-size:2rem}
}

/* Final release revision 2: retain full progress banner and balance category cards */
.site-status strong{
  font-size:clamp(1.45rem,2.15vw,2rem);
  line-height:1;
  letter-spacing:.11em;
}
.site-status>span{
  display:inline-flex;
  align-items:baseline;
  justify-content:center;
  flex-wrap:wrap;
  gap:0;
}
.site-status-date{
  font-family:Arial,Helvetica,sans-serif;
  font-size:clamp(.98rem,1.25vw,1.22rem);
  line-height:1;
  font-weight:950;
  letter-spacing:.085em;
}
.site-status-note{
  font:inherit;
  letter-spacing:inherit;
}
/* Desktop source order: 01/02, 04/05, 07/06. Gray cards alternate columns. */
@media(max-width:900px){
  /* Mobile sequence: dark, gray, blue, gray, dark, gray. */
  .category-grid .category-01{order:1}
  .category-grid .category-02{order:2}
  .category-grid .category-05{order:3}
  .category-grid .category-04{order:4}
  .category-grid .category-07{order:5}
  .category-grid .category-06{order:6}
}
@media(max-width:700px){
  .site-status strong{font-size:1.15rem;line-height:1.05}
  .site-status-date{font-size:.82rem}
  .site-status-note{font-size:.61rem;line-height:1.3}
}

/* Final release revision 3: keep the full progress notice, enlarge the establishment date,
   and use different card orders for desktop and mobile. */
.site-status strong{
  font-size:clamp(.78rem,.95vw,.95rem);
  line-height:1.05;
  letter-spacing:.1em;
}
.site-status-date{
  font-size:clamp(1.08rem,1.5vw,1.42rem);
  line-height:1;
  letter-spacing:.08em;
}
@media(min-width:901px){
  .category-grid .category-card-wide{order:0}
  .category-grid .category-01{order:1}
  .category-grid .category-02{order:2}
  .category-grid .category-04{order:3}
  .category-grid .category-05{order:4}
  .category-grid .category-07{order:5}
  .category-grid .category-06{order:6}
}
@media(max-width:900px){
  .category-grid .category-card-wide{order:0}
  .category-grid .category-01{order:1}
  .category-grid .category-02{order:2}
  .category-grid .category-05{order:3}
  .category-grid .category-04{order:4}
  .category-grid .category-07{order:5}
  .category-grid .category-06{order:6}
}
@media(max-width:700px){
  .site-status strong{font-size:.68rem}
  .site-status-date{font-size:.9rem}
}
.project-specific-credit{margin-top:1rem}

/* Final homepage grid lock: distribute the three light-gray categories across both desktop columns. */
@media(min-width:901px){
  .category-grid .category-card-wide{grid-column:1 / -1;grid-row:1}
  .category-grid .category-01{grid-column:1;grid-row:2}
  .category-grid .category-02{grid-column:2;grid-row:2}
  .category-grid .category-04{grid-column:1;grid-row:3}
  .category-grid .category-05{grid-column:2;grid-row:3}
  .category-grid .category-07{grid-column:1;grid-row:4}
  .category-grid .category-06{grid-column:2;grid-row:4}
}
@media(max-width:900px){
  .category-grid .category-card-wide,
  .category-grid .category-01,
  .category-grid .category-02,
  .category-grid .category-04,
  .category-grid .category-05,
  .category-grid .category-06,
  .category-grid .category-07{
    grid-column:auto;
    grid-row:auto;
  }
}

.frontdesk-history{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(255,255,255,.2)}
.frontdesk-history figure{position:relative;display:flex;flex-direction:column;background:#111}
.frontdesk-history span{position:absolute;z-index:1;left:.75rem;top:.75rem;background:var(--ink);color:#fff;padding:.42rem .55rem;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.frontdesk-history img{width:100%;aspect-ratio:4/3;object-fit:cover;background:#111}
.frontdesk-history figcaption{padding:.85rem 1rem;color:#fff;font-size:.78rem;line-height:1.45;background:#111}
@media(max-width:640px){.frontdesk-history{grid-template-columns:1fr}}


/* Step-away release: event-page reconstruction, role-grouped media clients, and simplified business work. */
.event-sxsw-section,
.festival-systems-section,
.business-feature-section,
.media-client-section{
  padding:clamp(4rem,8vw,8rem) var(--pad);
  border-bottom:1px solid var(--line);
}
.event-sxsw-heading,
.festival-systems-heading,
.business-feature-heading,
.media-client-heading{
  display:grid;
  grid-template-columns:minmax(9rem,.65fr) minmax(0,2.7fr);
  gap:clamp(1.5rem,4vw,5rem);
  align-items:start;
  margin-bottom:clamp(3rem,6vw,6rem);
}
.event-sxsw-heading h2,
.festival-systems-heading h2,
.business-feature-heading h2,
.media-client-heading h2{
  font-size:clamp(2.8rem,5.8vw,6.4rem);
  line-height:.9;
  letter-spacing:-.06em;
  max-width:15ch;
}
.event-sxsw-heading>div>p,
.festival-systems-heading>div>p,
.business-feature-heading>div>p,
.media-client-heading>div>p{
  max-width:52rem;
  margin-top:1.35rem;
  font-size:1.05rem;
  line-height:1.62;
  color:var(--quiet);
}
.sxsw-bookends{
  display:grid;
  grid-template-columns:minmax(0,1fr) 5.5rem minmax(0,1fr);
  align-items:stretch;
  border-top:1px solid var(--ink);
  border-bottom:1px solid var(--ink);
}
.sxsw-project{
  min-height:32rem;
  display:grid;
  grid-template-rows:auto 1fr;
  gap:clamp(3rem,7vw,7rem);
  padding:clamp(1.5rem,3vw,3rem);
}
.sxsw-project-dark{background:var(--ink);color:#fff}
.sxsw-project-blue{background:var(--blue);color:#fff}
.sxsw-year{
  font-size:clamp(3.2rem,7vw,7rem);
  font-weight:950;
  line-height:.82;
  letter-spacing:-.075em;
}
.sxsw-project>div{display:grid;align-content:end;gap:1rem}
.sxsw-project h3{font-size:clamp(2rem,3.7vw,4.3rem);line-height:.95;letter-spacing:-.05em;max-width:13ch}
.sxsw-project p:not(.section-label){font-size:1rem;line-height:1.58;max-width:36rem;color:rgba(255,255,255,.8)}
.sxsw-project small{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68rem;line-height:1.5;color:rgba(255,255,255,.72)}
.sxsw-marker{display:flex;align-items:center;justify-content:center;background:var(--paper2);border-left:1px solid var(--line);border-right:1px solid var(--line);overflow:hidden}
.sxsw-marker span{writing-mode:vertical-rl;transform:rotate(180deg);font-size:1rem;font-weight:950;letter-spacing:.28em}
.festival-systems-section{background:var(--paper2)}
.festival-progression{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:clamp(1.5rem,3vw,3rem);align-items:stretch}
.festival-progression article{min-height:25rem;display:flex;flex-direction:column;justify-content:space-between;gap:2rem;padding:clamp(1.4rem,2.7vw,2.5rem);border:1px solid var(--ink);background:var(--paper)}
.festival-progression article>span,.festival-progression small{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68rem;font-weight:900;line-height:1.45;letter-spacing:.07em;text-transform:uppercase;color:var(--quiet)}
.festival-progression h3{font-size:clamp(2rem,3.5vw,4rem);line-height:.95;letter-spacing:-.05em;max-width:13ch}
.festival-progression p{font-size:1.02rem;line-height:1.62;color:var(--quiet);max-width:38rem}
.festival-arrow{align-self:center;font-size:clamp(2rem,4vw,4rem);font-weight:900;color:var(--blue)}
.media-client-section{background:var(--ink);color:#fff}
.media-client-heading>div>p{color:#b8bdc0}
.media-role-groups{display:grid;gap:clamp(3rem,6vw,6rem)}
.media-role-group{display:grid;grid-template-columns:minmax(9rem,.45fr) minmax(0,2.55fr);gap:clamp(1.5rem,4vw,5rem);padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.45)}
.media-client-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.25);border-left:1px solid rgba(255,255,255,.25)}
.media-client-cards article{min-height:10rem;display:flex;flex-direction:column;justify-content:space-between;gap:1.5rem;padding:1.15rem;border-right:1px solid rgba(255,255,255,.25);border-bottom:1px solid rgba(255,255,255,.25)}
.media-client-cards strong{font-size:clamp(1.3rem,2vw,2rem);line-height:1.05}
.media-client-cards span{font-size:.78rem;line-height:1.5;color:#b8bdc0}
.media-client-cards-compact{grid-template-columns:repeat(3,minmax(0,1fr))}
.business-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}
.business-feature-grid figure{background:var(--paper)}
.business-feature-grid img{aspect-ratio:4/3;object-fit:cover}
.business-feature-grid figcaption{padding:.85rem .95rem;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}

/* Final wording and form cleanup. */
.project-form[action]{scroll-margin-top:calc(var(--header-h) + 2rem)}

@media(max-width:1000px){
  .event-sxsw-heading,
  .festival-systems-heading,
  .business-feature-heading,
  .media-client-heading,
  .media-role-group{grid-template-columns:1fr}
  .sxsw-bookends{grid-template-columns:1fr}
  .sxsw-marker{min-height:4rem;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .sxsw-marker span{writing-mode:horizontal-tb;transform:none}
  .festival-progression{grid-template-columns:1fr}
  .festival-arrow{transform:rotate(90deg);justify-self:center}
  .media-client-cards-compact{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .sxsw-project{min-height:26rem}
  .media-client-cards,
  .media-client-cards-compact,
  .business-feature-grid{grid-template-columns:1fr}
  .media-client-cards article{min-height:8rem}
}
.business-feature-heading h2{max-width:19ch}
.business-feature-heading .nowrap{white-space:nowrap}


/* REV5: final editorial, image-density, banner, and responsive corrections. */
.site-status{
  height:auto;
  min-height:var(--status-h);
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:.3rem;
  padding:.6rem var(--pad);
  white-space:normal;
  text-align:center;
}
.site-status-primary{
  display:flex;
  justify-content:center;
  align-items:baseline;
  flex-wrap:wrap;
  gap:.35rem 1.4rem;
}
.site-status-primary strong,
.site-status-primary .site-status-date{
  font:900 clamp(.78rem,1.05vw,1rem)/1.05 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  letter-spacing:.085em;
}
.site-status-note{
  font-size:clamp(.48rem,.62vw,.62rem);
  line-height:1.25;
  letter-spacing:.09em;
}
.keep-together{white-space:nowrap}

/* Homepage uses a different card order on narrow screens while retaining the two-column desktop rhythm. */
@media(min-width:901px){
  .category-grid .category-card-wide{grid-column:1/-1;grid-row:1}
  .category-grid .category-01{grid-column:1;grid-row:2}
  .category-grid .category-02{grid-column:2;grid-row:2}
  .category-grid .category-04{grid-column:1;grid-row:3}
  .category-grid .category-05{grid-column:2;grid-row:3}
  .category-grid .category-07{grid-column:1;grid-row:4}
  .category-grid .category-06{grid-column:2;grid-row:4}
}
@media(max-width:900px){
  .category-grid .category-card-wide{order:0}
  .category-grid .category-01{order:1}
  .category-grid .category-02{order:2}
  .category-grid .category-05{order:3}
  .category-grid .category-04{order:4}
  .category-grid .category-07{order:5}
  .category-grid .category-06{order:6}
  .site-status-primary{flex-direction:column;gap:.2rem}
  .site-status-primary strong,
  .site-status-primary .site-status-date{font-size:.8rem}
  .site-status-note{font-size:.5rem}
}

/* Compact, photo-dense project storytelling. */
.compact-photo-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  background:var(--line);
}
.compact-photo-grid figure{background:var(--paper);min-width:0}
.compact-photo-grid img{width:100%;aspect-ratio:4/3;object-fit:cover}
.compact-photo-grid figcaption{
  min-height:2.8rem;
  display:flex;
  align-items:center;
  padding:.65rem .75rem;
  font-size:.64rem;
  line-height:1.3;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.055em;
}
.cowboy-pool-grid figure:nth-last-child(-n+2) img{aspect-ratio:3/4}
.igoer-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.igoer-photo-grid figure:nth-child(n+4) img{aspect-ratio:4/3}

/* One unified commercial-client field, ordered Producer, PM, then PC. */
.media-client-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border-top:1px solid rgba(255,255,255,.25);
  border-left:1px solid rgba(255,255,255,.25);
}
.media-client-grid article{
  min-height:11rem;
  display:flex;
  flex-direction:column;
  gap:.8rem;
  padding:1.05rem;
  border-right:1px solid rgba(255,255,255,.25);
  border-bottom:1px solid rgba(255,255,255,.25);
}
.media-client-grid strong{font-size:clamp(1.25rem,2vw,2rem);line-height:1.05;margin-top:auto}
.media-client-grid small{font-size:.74rem;line-height:1.45;color:#b8bdc0}
.client-role{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.58rem;font-weight:900;letter-spacing:.075em;text-transform:uppercase;color:#b8bdc0}

/* Chuy's remains one peer project, with the detail carried by compact grids instead of oversized hero images. */
.business-feature-compact{padding-top:clamp(3.5rem,6vw,6rem);padding-bottom:clamp(3.5rem,6vw,6rem)}
.business-feature-compact .business-feature-heading{margin-bottom:clamp(2rem,4vw,3.5rem)}
.business-feature-compact .business-feature-heading h2{font-size:clamp(2.6rem,4.8vw,5.3rem);max-width:18ch}
.business-subproject{display:grid;grid-template-columns:minmax(10rem,.55fr) minmax(0,2.45fr);gap:clamp(1.4rem,3vw,3rem);padding:clamp(2rem,4vw,3.5rem) 0;border-top:1px solid var(--line)}
.business-subproject-copy{display:grid;gap:.85rem;align-content:start}
.business-subproject-copy h3{font-size:clamp(1.7rem,3vw,3.2rem);line-height:.98;letter-spacing:-.045em}
.business-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}

.frontdesk-history-pair{grid-template-columns:repeat(2,minmax(0,1fr))}

.contact-success{
  margin:clamp(2rem,5vw,5rem) var(--pad) 0;
  padding:clamp(2rem,5vw,4rem);
  background:var(--blue);
  color:#fff;
}
.contact-success h2{font-size:clamp(2.7rem,6vw,6rem);line-height:.9;letter-spacing:-.055em;margin:1rem 0}
.contact-success>p:last-child{font-size:1.05rem;line-height:1.55}
.success-actions{display:flex;gap:1.25rem;align-items:center;flex-wrap:wrap}

/* Prevent large editorial headings from becoming single-word visual accidents. */
.company-heading h2{max-width:16ch;font-size:clamp(2.6rem,4.7vw,5.6rem)}

@media(max-width:1100px){
  .compact-photo-grid,.igoer-photo-grid,.business-photo-grid,.media-client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .compact-photo-grid,.igoer-photo-grid,.business-photo-grid,.media-client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .business-subproject{grid-template-columns:1fr}
  .compact-photo-grid figcaption{font-size:.58rem;min-height:2.6rem;padding:.55rem .6rem}
  .media-client-grid article{min-height:9.5rem;padding:.85rem}
  .cowboy-pool-grid figure:nth-last-child(-n+2) img{aspect-ratio:4/3}
  .company-heading h2{font-size:clamp(2.35rem,11vw,4.5rem)}
}


/* REV5 final lock: intentional phrase lines and mobile headline fit. */
.headline-line{display:block}
.company-heading h2 .headline-line{white-space:nowrap}
@media(max-width:760px){
  .company-heading h2{font-size:clamp(2rem,9.2vw,3.6rem);max-width:none}
}
@media(max-width:410px){
  .company-heading h2{font-size:clamp(1.92rem,8.8vw,3.2rem)}
}


/* REV6 final layout protections and user-requested hierarchy. */
.site-status-primary strong,
.site-status-primary .site-status-date{
  font:900 clamp(.78rem,1.05vw,1rem)/1.05 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  letter-spacing:.085em;
}
.site-status-note{
  font-size:clamp(.48rem,.62vw,.62rem);
  line-height:1.25;
  letter-spacing:.09em;
}
.company-heading h2 .headline-line{display:block}
.company-heading h2 .keep-together{white-space:nowrap}
.business-feature-compact .business-feature-heading h2{max-width:20ch}
.business-feature-compact .business-feature-heading>div>p{max-width:58rem}
.status-page{min-height:62vh}
@media(max-width:900px){
  .site-status-primary strong,
  .site-status-primary .site-status-date{font-size:.8rem}
  .site-status-note{font-size:.5rem}
}
@media(max-width:560px){
  .company-heading h2{font-size:clamp(2.2rem,10.4vw,3.4rem)}
}


/* REV6 balanced compact galleries: no empty-looking grid cells. */
@media(min-width:1101px){
  .cowboy-pool-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
  .cowboy-pool-grid figure:nth-child(-n+3){grid-column:span 2}
  .cowboy-pool-grid figure:nth-child(n+4){grid-column:span 3}
  .business-photo-grid-interior{grid-template-columns:repeat(12,minmax(0,1fr))}
  .business-photo-grid-interior figure:nth-child(-n+4){grid-column:span 3}
  .business-photo-grid-interior figure:nth-child(n+5){grid-column:span 4}
}
.business-subproject{grid-template-columns:minmax(13rem,.75fr) minmax(0,2.25fr)}
.business-subproject-copy h3{font-size:clamp(1.55rem,2.4vw,2.65rem)}
.festival-progression h3{font-size:clamp(2rem,3.3vw,3.35rem)}
@media(max-width:1100px) and (min-width:761px){
  .cowboy-pool-grid figure:last-child{grid-column:span 2}
  .business-photo-grid-interior figure:last-child{grid-column:span 3}
}
@media(max-width:760px){
  .business-subproject{grid-template-columns:1fr}
  .business-photo-grid-interior figure:last-child,
  .cowboy-pool-grid figure:last-child{grid-column:1/-1}
}


/* REV6 event headline rhythm. */
.festival-progression h3{font-size:clamp(1.8rem,2.75vw,2.8rem);line-height:.94}
.festival-progression h3 .headline-line{display:block;margin-bottom:.22em}
.trivia-project-heading h2{max-width:15ch}


/* REV7: final content hierarchy, compact galleries, video leads, form behavior, and wrap locks. */
.site-status-primary strong,
.site-status-primary .site-status-date{
  font:900 clamp(.78rem,1.05vw,1rem)/1.05 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  letter-spacing:.085em;
}
.site-status-note{font-size:clamp(.48rem,.62vw,.62rem)}

.featured-video-section,
.additional-builds-section,
.business-projects-section,
.misc-gallery-section{
  padding:clamp(4rem,8vw,8rem) var(--pad);
  border-bottom:1px solid var(--line);
}
.featured-video-dark{background:var(--ink);color:#fff}
.featured-video-heading,
.additional-builds-heading,
.business-projects-heading,
.misc-gallery-section>header{
  display:grid;
  grid-template-columns:minmax(10rem,.7fr) minmax(0,2.3fr);
  gap:clamp(1.5rem,3vw,3.5rem);
  align-items:end;
  margin-bottom:clamp(2.2rem,4.5vw,4.5rem);
}
.featured-video-heading h2,
.additional-builds-heading h2,
.business-projects-heading h2,
.misc-gallery-section h2{
  font-size:clamp(2.8rem,6vw,6.5rem);
  line-height:.9;
  letter-spacing:-.06em;
  max-width:18ch;
}
.featured-video-heading>div>p,
.additional-builds-heading>div>p,
.business-projects-heading>div>p,
.misc-gallery-section header>div>p{
  margin-top:1rem;
  max-width:48rem;
  line-height:1.6;
  color:var(--quiet);
}
.featured-video-dark .featured-video-heading>div>p,
.featured-video-dark .featured-video-copy p{color:#b9bdc0}
.featured-video-layout{
  display:grid;
  grid-template-columns:minmax(0,2.25fr) minmax(16rem,.75fr);
  gap:clamp(1.5rem,3vw,3rem);
  align-items:end;
}
.responsive-video{position:relative;aspect-ratio:16/9;overflow:hidden;background:#000}
.responsive-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.featured-video-copy{display:grid;gap:1.25rem;align-content:end}
.featured-video-copy p{font-size:1.05rem;line-height:1.65;color:var(--quiet)}
.featured-video-dark .text-link{border-color:#fff}

.commercial-video-lead{
  display:grid;
  grid-template-columns:minmax(15rem,.7fr) minmax(0,2fr);
  gap:clamp(1.5rem,3vw,3rem);
  align-items:end;
  margin-bottom:clamp(2.5rem,5vw,5rem);
  padding-bottom:clamp(2.5rem,5vw,5rem);
  border-bottom:1px solid rgba(255,255,255,.22);
}
.commercial-video-copy{display:grid;gap:1rem}
.commercial-video-copy h3{font-size:clamp(2.7rem,5vw,5.8rem);line-height:.9;letter-spacing:-.06em}
.commercial-video-copy p:not(.section-label){line-height:1.6;color:#b8bdc0}

.subordinate-project-gallery{margin-top:clamp(2.5rem,5vw,5rem);padding-top:clamp(2rem,4vw,4rem);border-top:1px solid var(--line)}
.subordinate-project-gallery>header,
.compact-project-story>header,
.business-project-story>header{
  display:grid;
  grid-template-columns:minmax(10rem,.65fr) minmax(0,2.35fr);
  gap:clamp(1.2rem,3vw,3rem);
  align-items:end;
  margin-bottom:clamp(1.5rem,3vw,2.5rem);
}
.subordinate-project-gallery h3,
.compact-project-story h3,
.business-project-story>header h3{
  font-size:clamp(2rem,4vw,4.7rem);
  line-height:.94;
  letter-spacing:-.055em;
  max-width:20ch;
}
.subordinate-project-gallery header p:not(.section-label),
.compact-project-story header p:not(.section-label),
.business-project-story header p:not(.section-label){margin-top:.8rem;line-height:1.55;color:var(--quiet);max-width:48rem}
.six-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.six-photo-grid img{aspect-ratio:4/3}

.company-heading h2{max-width:22ch;font-size:clamp(2.5rem,4.6vw,5.35rem)}
.company-heading h2 .headline-line{display:block;white-space:nowrap}
.keep-together-wide{white-space:nowrap}
.additional-builds-section{background:var(--paper2)}
.compact-project-story{padding:clamp(2.5rem,5vw,5rem) 0;border-top:1px solid var(--line)}
.compact-project-story-dark{margin-inline:calc(-1 * var(--pad));padding-inline:var(--pad);background:var(--ink);color:#fff;border-color:transparent}
.compact-project-story-dark header p:not(.section-label){color:#b8bdc0}
.compact-project-story-dark .compact-photo-grid{background:rgba(255,255,255,.18)}

.business-projects-section{background:var(--paper2)}
.business-project-story{padding:clamp(3rem,6vw,6rem) 0;border-top:1px solid var(--line)}
.business-dense-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.business-project-story h4{font-size:clamp(1.5rem,2.4vw,2.6rem);line-height:.98;letter-spacing:-.04em}
.business-subproject-rev7{grid-template-columns:minmax(12rem,.65fr) minmax(0,2.35fr)}
.chuys-story .business-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.cheers-story{padding-bottom:0}
.ground-up-section{background:var(--paper)}

.misc-gallery-section{background:var(--paper2)}
.misc-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.misc-photo-grid img{aspect-ratio:4/3;object-fit:contain;background:#ece9e1}

.form-status{min-height:1.5rem;margin-top:1rem;font-size:.85rem;line-height:1.5}
.form-status.is-error{font-weight:800}
.contact-success-inline{padding:clamp(2rem,4vw,4rem);border:1px solid var(--ink);background:var(--paper2)}
.contact-success-inline h2{font-size:clamp(2.6rem,5vw,5.5rem);line-height:.92;letter-spacing:-.055em;margin:1rem 0}
.contact-success-inline>p:not(.section-label){margin-bottom:1.5rem;line-height:1.55}
.project-form[hidden],.contact-success-inline[hidden]{display:none!important}

@media(max-width:1000px){
  .featured-video-heading,
  .additional-builds-heading,
  .business-projects-heading,
  .misc-gallery-section>header,
  .subordinate-project-gallery>header,
  .compact-project-story>header,
  .business-project-story>header{grid-template-columns:1fr}
  .featured-video-layout,
  .commercial-video-lead{grid-template-columns:1fr}
  .business-dense-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .business-subproject-rev7{grid-template-columns:1fr}
}
@media(max-width:700px){
  .site-status-primary strong,
  .site-status-primary .site-status-date{font-size:.8rem}
  .six-photo-grid,
  .business-dense-grid,
  .chuys-story .business-photo-grid,
  .misc-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .company-heading h2{font-size:clamp(2rem,9.1vw,3.45rem);max-width:none}
  .company-heading h2 .headline-line{white-space:normal}
  .company-heading h2 .keep-together-wide{white-space:normal}
}
@media(max-width:430px){
  .six-photo-grid,
  .business-dense-grid,
  .chuys-story .business-photo-grid,
  .misc-photo-grid{grid-template-columns:1fr}
}


/* REV7B headline balancing */
h1,h2,h3{text-wrap:balance}


/* REV10: film credits, video fallbacks, and concise theatre galleries */
.film-works-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  border-top:1px solid var(--line);
}
.film-work-card {
  padding:clamp(1.6rem,3vw,3rem);
  border-bottom:1px solid var(--line);
  min-width:0;
}
.film-work-card:nth-child(odd){border-right:1px solid var(--line)}
.film-work-topline { display:flex; justify-content:space-between; gap:1rem; align-items:flex-start; margin-bottom:1rem; }
.film-work-topline span,
.film-work-topline strong,
.film-credit-lines dt {
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:.72rem;
  line-height:1.35;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.film-work-topline span { color:var(--muted); }
.film-work-topline strong { max-width:62%; text-align:right; }
.film-work-card h3 { font-size:clamp(1.65rem,2.8vw,3rem); line-height:1.02; letter-spacing:-.035em; }
.film-work-card h3 a { text-decoration:none; }
.film-logline { margin-top:1rem; max-width:45rem; font-size:clamp(1rem,1.25vw,1.16rem); line-height:1.55; }
.film-credit-lines { margin-top:1.45rem; border-top:1px solid var(--line); }
.film-credit-lines > div { display:grid; grid-template-columns:minmax(8.5rem,27%) 1fr; gap:1.25rem; padding:.78rem 0; border-bottom:1px solid var(--line); }
.film-credit-lines dt { color:var(--muted); }
.film-credit-lines dd { margin:0; font-size:.92rem; line-height:1.48; }
.video-poster-link {
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#080a0d;
  color:white;
  text-decoration:none;
}
.video-poster-link img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .25s ease; }
.video-poster-shade { position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.55)); }
.video-play-button { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); display:grid; place-items:center; width:4.6rem; height:4.6rem; border:2px solid white; border-radius:50%; background:rgba(0,0,0,.42); padding-left:.25rem; font-size:1.35rem; }
.video-poster-label { position:absolute; left:1.25rem; bottom:1.1rem; font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace; font-size:.76rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.video-poster-link:hover img,.video-poster-link:focus-visible img { transform:scale(1.018); }
.three-photo-grid { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
.four-photo-grid { grid-template-columns:repeat(4,minmax(0,1fr)) !important; }
.visual-project-heading > .section-label,
.compact-project-story > header > .section-label { margin-bottom:1.2rem; }
.visual-project-section figure,
.compact-project-story figure { margin:0; }
@media (max-width:820px){
  .film-works-grid { grid-template-columns:1fr; }
  .film-work-card:nth-child(odd){border-right:0}
  .film-credit-lines > div { grid-template-columns:1fr; gap:.3rem; }
  .film-work-topline { display:block; }
  .film-work-topline strong { display:block; max-width:none; text-align:left; margin-top:.45rem; }
  .three-photo-grid,.four-photo-grid { grid-template-columns:1fr 1fr !important; }
}
@media (max-width:520px){ .three-photo-grid,.four-photo-grid { grid-template-columns:1fr !important; } }

/* REV10 final editorial and accessibility pass */
.theatre-production-rows + .visual-project-section{margin-top:0}
.film-work-topline{justify-content:flex-start}
.film-work-topline span{color:var(--muted)}
.film-credit-lines > div:first-child dd{font-weight:800}
@media (max-width:700px){.film-work-topline{display:block}}

/* REV11: consolidated user review edits */
.media-project-link-layout{align-items:stretch}
.media-project-link-panel{min-height:22rem;display:flex;flex-direction:column;justify-content:space-between;gap:2rem;padding:clamp(1.5rem,4vw,3rem);background:var(--blue);color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.24)}
.media-project-link-panel>span,.media-project-link-panel>small{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.media-project-link-panel>strong{font-size:clamp(2.8rem,6vw,6.8rem);line-height:.88;letter-spacing:-.065em;max-width:10ch}
.media-project-link-panel:hover,.media-project-link-panel:focus-visible{background:#1639c4}

.sxsw-then-now-heading{align-items:start}
.sxsw-title-lockup{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem}
.sxsw-title-lockup strong{font-size:clamp(4.7rem,10vw,11rem);line-height:.72;letter-spacing:-.085em;color:var(--blue)}
.sxsw-title-lockup span{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:clamp(.78rem,1.4vw,1.05rem);font-weight:950;letter-spacing:.15em}
.sxsw-project-date{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}
.sxsw-phase{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.72rem;font-weight:950;letter-spacing:.12em;border:1px solid currentColor;padding:.48rem .58rem}
.sxsw-project-date .sxsw-year{margin-left:auto}
.sxsw-marker span{font-size:.7rem;letter-spacing:.16em;text-align:center}

.build-show-event-section{padding:clamp(4rem,8vw,8rem) var(--pad);border-bottom:1px solid var(--line);background:var(--paper2)}
.build-show-event-heading{display:grid;grid-template-columns:minmax(10rem,.65fr) minmax(0,2.35fr);gap:clamp(1.5rem,4vw,5rem);align-items:start;margin-bottom:clamp(3rem,6vw,6rem)}
.build-show-event-heading h2{font-size:clamp(2.8rem,5.8vw,6.4rem);line-height:.9;letter-spacing:-.06em;max-width:16ch}
.build-show-event-heading>div>p{max-width:48rem;margin-top:1.3rem;font-size:1.05rem;line-height:1.62;color:var(--quiet)}
.build-show-pieces{display:grid;gap:clamp(3rem,7vw,7rem)}
.build-show-piece{border-top:1px solid var(--ink);padding-top:1.25rem}
.build-show-piece>header{display:grid;grid-template-columns:minmax(10rem,.55fr) minmax(0,2.45fr);gap:clamp(1.5rem,4vw,5rem);align-items:start;margin-bottom:2rem}
.build-show-piece>header span{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--quiet)}
.build-show-piece h3{font-size:clamp(2rem,4vw,4.6rem);line-height:.94;letter-spacing:-.055em;max-width:18ch}
.build-show-piece-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line)}
.build-show-piece-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.build-show-piece-grid figure{background:var(--paper);margin:0}
.build-show-piece-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.build-show-piece-grid figcaption{padding:.8rem .9rem;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}

.chuys-story-compact{padding-block:clamp(3rem,6vw,6rem)}
.cheers-sequence-grid img{aspect-ratio:4/3;object-fit:cover}

@media(max-width:1000px){
  .build-show-event-heading,.build-show-piece>header{grid-template-columns:1fr}
  .build-show-piece-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .sxsw-title-lockup strong{font-size:clamp(4.2rem,24vw,8rem)}
  .build-show-piece-grid,.build-show-piece-grid-two{grid-template-columns:1fr}
}


/* REV12: final notes pass */
.contact-hero h1{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.04em;
  line-height:.82;
  max-width:none;
}
.contact-hero h1 span{display:block}
.contact-hero h1 mark{
  display:block;
  width:max-content;
  max-width:100%;
  margin-top:.06em;
  padding:.055em .13em .105em .09em;
  line-height:.9;
  white-space:nowrap;
}

.event-progression-section{
  padding:clamp(4rem,8vw,8rem) var(--pad);
  border-bottom:1px solid var(--line);
}
.event-progression-festivals{background:var(--paper2)}
.event-progression-heading{
  display:grid;
  grid-template-columns:minmax(14rem,.9fr) minmax(0,1.5fr);
  gap:clamp(2rem,5vw,7rem);
  align-items:start;
  margin-bottom:clamp(3rem,6vw,6rem);
}
.event-progression-lockup{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:1rem;
  min-width:0;
}
.event-progression-lockup strong{
  font-size:clamp(4.5rem,8vw,8.75rem);
  line-height:.8;
  letter-spacing:-.075em;
  color:var(--blue);
  white-space:nowrap;
}
.event-progression-lockup span{
  display:flex;
  align-items:center;
  gap:.75rem;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:clamp(.8rem,1.2vw,1rem);
  font-weight:950;
  letter-spacing:.14em;
  white-space:nowrap;
}
.event-progression-lockup b{font-size:1.25em;color:var(--blue)}
.event-progression-heading h2{
  font-size:clamp(2.5rem,5vw,5.7rem);
  line-height:.92;
  letter-spacing:-.055em;
  max-width:15ch;
}
.event-progression-heading>div:last-child>p{
  max-width:48rem;
  margin-top:1.25rem;
  font-size:1.05rem;
  line-height:1.62;
  color:var(--quiet);
}
.event-progression-cards{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:stretch;
  gap:clamp(1rem,2vw,2rem);
}
.event-progression-card{
  min-height:30rem;
  display:grid;
  grid-template-rows:auto 1fr;
  gap:clamp(3rem,7vw,6rem);
  padding:clamp(1.4rem,2.8vw,2.5rem);
  border:1px solid var(--ink);
}
.event-progression-card-dark{background:var(--ink);color:#fff}
.event-progression-card-blue{background:var(--blue);color:#fff;border-color:var(--blue)}
.event-progression-card-paper{background:var(--paper)}
.event-progression-card-paper-blue{background:var(--blue);color:#fff;border-color:var(--blue)}
.event-progression-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}
.event-progression-card-top span{
  border:1px solid currentColor;
  padding:.45rem .55rem;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:.68rem;
  font-weight:950;
  letter-spacing:.1em;
}
.event-progression-card-top strong{
  font-size:clamp(2.8rem,5vw,5.5rem);
  line-height:.82;
  letter-spacing:-.06em;
}
.event-progression-card>div:last-child{display:grid;align-content:end;gap:1rem}
.event-progression-card h3{font-size:clamp(2rem,3.3vw,3.7rem);line-height:.95;letter-spacing:-.05em;max-width:14ch}
.event-progression-card p:not(.section-label){font-size:1rem;line-height:1.58;max-width:36rem;color:var(--quiet)}
.event-progression-card-dark p:not(.section-label),
.event-progression-card-blue p:not(.section-label),
.event-progression-card-paper-blue p:not(.section-label){color:rgba(255,255,255,.8)}
.event-progression-card small{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68rem;line-height:1.5;color:inherit;opacity:.72}
.event-progression-arrow{align-self:center;font-size:clamp(2.3rem,4vw,4rem);font-weight:950;color:var(--blue)}

.build-show-stage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.5rem,3vw,3rem)}
.build-show-stage{border-top:1px solid var(--ink);padding-top:1rem}
.build-show-stage>header{display:flex;align-items:baseline;gap:1rem;margin-bottom:1.25rem}
.build-show-stage>header span{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68rem;font-weight:900;color:var(--quiet)}
.build-show-stage h3{font-size:clamp(1.8rem,3vw,3.3rem);line-height:.95;letter-spacing:-.045em}
.build-show-stage-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}
.build-show-stage-photos figure{background:var(--paper);margin:0}
.build-show-stage-photos img{width:100%;aspect-ratio:4/3;object-fit:cover}
.build-show-stage-photos figcaption{padding:.72rem .82rem;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}

.trivia-sponsors{display:grid;gap:.75rem;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--line)}
.trivia-sponsors-label{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--quiet)}

.chuys-work-rows{display:grid;gap:2rem}
.chuys-work-row{display:grid;grid-template-columns:minmax(10rem,.55fr) minmax(0,2.45fr);gap:clamp(1rem,3vw,3rem);align-items:start;padding-top:1rem;border-top:1px solid var(--line)}
.chuys-work-row>p{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.68rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:var(--quiet)}
.chuys-row-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line)}
.chuys-row-photos figure{background:var(--paper);margin:0}
.chuys-row-photos img{width:100%;aspect-ratio:4/3;object-fit:cover}
.chuys-row-photos figcaption{padding:.72rem .82rem;font-size:.68rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}

@media(max-width:1000px){
  .event-progression-heading{grid-template-columns:1fr}
  .event-progression-lockup strong{font-size:clamp(4.3rem,16vw,8rem)}
  .event-progression-cards{grid-template-columns:1fr}
  .event-progression-arrow{transform:rotate(90deg);justify-self:center}
  .build-show-stage-grid{grid-template-columns:1fr}
  .chuys-work-row{grid-template-columns:1fr}
}
@media(max-width:700px){
  .contact-hero h1{font-size:clamp(3rem,14vw,5rem);gap:.08em}
  .contact-hero h1 mark{padding:.07em .12em .12em .08em}
  .event-progression-lockup strong{font-size:clamp(4rem,22vw,6.8rem)}
  .event-progression-card{min-height:25rem}
  .build-show-stage-photos,.chuys-row-photos{grid-template-columns:1fr}
}

/* REV13: notes following the REV12 deployment */
.event-progression-lockup-pair{
  display:grid;
  grid-template-columns:max-content auto max-content;
  align-items:center;
  gap:clamp(.8rem,1.8vw,1.5rem);
}
.event-progression-lockup-pair strong{
  font-size:clamp(3.2rem,6.4vw,7rem);
  line-height:.82;
  letter-spacing:-.07em;
}
.event-progression-lockup-pair>b{
  font-size:clamp(2rem,3.5vw,4rem);
  line-height:1;
  color:var(--blue);
}
.build-show-event-heading .credit-note{
  margin-top:1rem;
  font-size:.72rem;
  line-height:1.5;
}
.trivia-sponsor-logos{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:clamp(1rem,3vw,2.5rem);
  padding:clamp(1rem,2vw,1.5rem);
  background:var(--paper);
  border:1px solid rgba(16,19,22,.22);
}
.trivia-sponsor-logos figure{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  width:min(19rem,42vw);
  height:clamp(5rem,10vw,8rem);
  margin:0;
}
.trivia-sponsor-logos img{
  display:block;
  max-width:100%;
  max-height:100%;
  width:auto;
  height:auto;
  object-fit:contain;
}
.trivia-sponsor-logos figure:first-child img{max-height:92%}
.trivia-sponsor-logos figure:last-child img{max-height:86%}
.chuys-row-photos{grid-template-columns:repeat(4,minmax(0,1fr))}
.backyard-group-section .home-subproject:first-of-type{border-top:0;padding-top:0}
.backyard-pool-gallery{grid-template-columns:repeat(6,minmax(0,1fr))}
.backyard-pool-gallery figure:nth-child(-n+3){grid-column:span 2}
.backyard-pool-gallery figure:nth-child(n+4){grid-column:span 3}
@media(max-width:1000px){
  .event-progression-lockup-pair strong{font-size:clamp(3.8rem,14vw,7rem)}
  .chuys-row-photos{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .event-progression-lockup-pair{
    grid-template-columns:1fr;
    justify-items:start;
    gap:.55rem;
  }
  .event-progression-lockup-pair>b{transform:rotate(90deg);margin-left:.5rem}
  .event-progression-lockup-pair strong{font-size:clamp(3.7rem,18vw,6rem)}
  .trivia-sponsor-logos{display:grid;grid-template-columns:1fr}
  .trivia-sponsor-logos figure{width:100%;height:6.5rem}
  .chuys-row-photos{grid-template-columns:1fr 1fr}
  .backyard-pool-gallery{grid-template-columns:1fr}
  .backyard-pool-gallery figure:nth-child(n){grid-column:auto}
}

/* REV14: final corrective deployment */
.event-progression-festivals .event-progression-heading{
  grid-template-columns:minmax(0,1.35fr) minmax(22rem,.65fr);
  gap:clamp(3rem,5vw,7rem);
}
.event-progression-lockup-pair{
  width:100%;
  display:grid;
  grid-template-columns:max-content max-content max-content;
  align-items:center;
  justify-content:start;
  gap:clamp(.8rem,1.4vw,1.3rem);
}
.event-progression-lockup-pair strong{
  font-size:clamp(3.6rem,5.35vw,6.4rem);
  line-height:.82;
  letter-spacing:-.07em;
  white-space:nowrap;
}
.event-progression-lockup-pair>b{
  font-size:clamp(2rem,3vw,3.5rem);
  line-height:1;
  color:var(--blue);
}
.event-progression-festivals .event-progression-heading>div:last-child{padding-top:.25rem}

.trivia-sponsors{
  gap:1rem;
  margin-top:2rem;
  padding-top:1.6rem;
  border-top:1px solid rgba(255,255,255,.42);
}
.trivia-sponsors-label{
  margin:0;
  color:#fff;
  font-size:clamp(1rem,1.35vw,1.35rem);
  line-height:1;
  letter-spacing:.11em;
}
.trivia-sponsor-logos{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:clamp(2.5rem,7vw,7rem);
  padding:.6rem 0 0;
  background:transparent;
  border:0;
}
.trivia-sponsor-logos figure{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  width:auto;
  height:clamp(6.5rem,9vw,9rem);
  margin:0;
  flex:0 1 23rem;
}
.trivia-sponsor-logos img{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}
.trivia-sponsor-logos figure:first-child img{max-height:100%}
.trivia-sponsor-logos figure:last-child img{max-height:88%}

.business-subproject-row{
  display:grid;
  grid-template-columns:minmax(10rem,.55fr) minmax(0,2.45fr);
  gap:clamp(1rem,3vw,3rem);
  align-items:start;
  padding-top:1rem;
  margin-top:2rem;
  border-top:1px solid var(--line);
}
.business-subproject-row>p{
  margin:0;
  color:var(--quiet);
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.bouldin-outdoor-grid img{
  aspect-ratio:4/3;
  object-fit:contain;
  background:var(--paper2);
}

.backyard-pool-gallery{align-items:start}
.backyard-pool-gallery figure{align-self:start}
.backyard-pool-gallery img{
  width:100%;
  height:auto;
  aspect-ratio:auto;
  object-fit:contain;
  display:block;
}
.privacy-project-section .home-project-grid img{
  object-fit:contain;
  background:#15191d;
}

.project-form .form-status{
  min-height:1.5em;
  margin:.9rem 0 0;
  font-weight:800;
  line-height:1.45;
}
.project-form .form-status[hidden]{display:none}
.project-form.is-submitting button{opacity:.62;cursor:wait}
.project-form.is-sent .form-status{padding:1rem;border:1px solid currentColor;background:rgba(63,115,246,.08)}

@media(max-width:1200px){
  .event-progression-festivals .event-progression-heading{grid-template-columns:1fr}
  .event-progression-lockup-pair strong{font-size:clamp(3.8rem,10vw,6.4rem)}
}
@media(max-width:1000px){
  .business-subproject-row{grid-template-columns:1fr}
}
@media(max-width:700px){
  .event-progression-lockup-pair{
    grid-template-columns:max-content max-content max-content;
    gap:.55rem;
  }
  .event-progression-lockup-pair>b{transform:none;margin:0}
  .event-progression-lockup-pair strong{font-size:clamp(2.35rem,12.5vw,4rem)}
  .trivia-sponsor-logos{display:grid;grid-template-columns:1fr;gap:2rem}
  .trivia-sponsor-logos figure{width:100%;height:7rem;justify-content:flex-start}
}
@media(max-width:430px){
  .event-progression-lockup-pair{grid-template-columns:1fr;justify-items:start}
  .event-progression-lockup-pair>b{transform:rotate(90deg);margin-left:.5rem}
  .event-progression-lockup-pair strong{font-size:clamp(3rem,18vw,4.5rem)}
}

/* REV14 final visual refinements after rendered review */
.event-progression-festivals .event-progression-heading{
  grid-template-columns:minmax(0,1.15fr) minmax(28rem,.85fr);
  gap:clamp(3rem,4.5vw,6rem);
}
.event-progression-festivals .event-progression-heading h2{
  font-size:clamp(2.8rem,4.15vw,4.7rem);
  max-width:13ch;
}
.backyard-pool-gallery{background:transparent}
.backyard-pool-gallery figure{background:var(--paper)}
@media(min-width:701px){
  .backyard-pool-gallery figure:nth-child(n+4) img{
    height:clamp(29rem,38vw,42rem);
    width:100%;
    object-fit:contain;
    background:var(--paper2);
  }
}
@media(max-width:1200px){
  .event-progression-festivals .event-progression-heading{grid-template-columns:1fr}
}


/* REV16: August 8 review notes */
:where(h1,h2,h3){text-wrap:balance}
:where(p){text-wrap:pretty}
.default-sentence-break{display:block}

.event-then-now-intro{
  padding:clamp(3.5rem,7vw,7rem) var(--pad);
  background:var(--ink);
  color:#fff;
  border-bottom:1px solid rgba(255,255,255,.18);
}
.event-then-now-intro .section-label{color:rgba(255,255,255,.62);margin-bottom:1.2rem}
.event-then-now-intro h2{
  font-size:clamp(4.5rem,11vw,12rem);
  line-height:.78;
  letter-spacing:-.075em;
  max-width:none;
}
.event-then-now-intro h2 span{color:var(--blue)}
.event-progression-heading-stacked .event-progression-lockup-pair{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.8rem;
}
.event-progression-heading-stacked .event-progression-lockup-pair strong{
  font-size:clamp(3.5rem,6.4vw,7rem);
  line-height:.82;
  letter-spacing:-.07em;
  white-space:normal;
}
.event-progression-heading-stacked .event-progression-lockup-pair strong b{color:var(--blue);font-size:.65em}
.event-progression-heading-stacked .event-progression-lockup-pair span{
  font-size:clamp(.78rem,1.25vw,1.05rem);
  letter-spacing:.14em;
}
.event-progression-heading-stacked .event-progression-lockup-pair span b{font-size:1.15em}

.trivia-gallery{
  display:grid;
  grid-template-columns:minmax(0,1.6fr) minmax(16rem,.72fr);
  gap:1px;
  margin-top:clamp(3rem,6vw,6rem);
  background:rgba(255,255,255,.35);
  border:1px solid rgba(255,255,255,.35);
}
.trivia-gallery figure{display:flex;flex-direction:column;min-width:0;margin:0;background:#153bbf}
.trivia-gallery img{display:block;width:100%;height:clamp(25rem,42vw,43rem);object-fit:cover}
.trivia-gallery-promo img{object-fit:contain;background:#ffd92f}
.trivia-gallery figcaption{
  padding:.8rem .9rem;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#fff;
}

@media(max-width:900px){
  .trivia-gallery{grid-template-columns:1fr}
  .trivia-gallery img{height:auto;max-height:none;object-fit:contain}
  .event-progression-heading-stacked .event-progression-lockup-pair strong{font-size:clamp(3.4rem,13vw,6.5rem)}
}
@media(max-width:700px){
  .default-sentence-break{display:none}
  .event-then-now-intro h2{font-size:clamp(4rem,20vw,7rem)}
}


/* REV17: tighter WLV merch comparison and AFF / ATX TV individual-card hierarchy */
@media(min-width:901px){
  .merch-story{grid-template-columns:repeat(3,minmax(0,1fr))}
}
.merch-story img{
  height:auto;
  aspect-ratio:4/3;
  object-fit:cover;
}
.event-progression-festivals .event-progression-card-top span{
  border:0;
  padding:0;
  font-family:Arial,Helvetica,sans-serif;
  font-size:clamp(2.8rem,5vw,5.5rem);
  font-weight:950;
  line-height:.82;
  letter-spacing:-.06em;
}
.event-progression-festivals .event-progression-card-top strong{
  padding-top:.2rem;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  font-size:clamp(.78rem,1.15vw,1rem);
  font-weight:950;
  line-height:1.2;
  letter-spacing:.08em;
  white-space:nowrap;
}
@media(max-width:700px){
  .event-progression-festivals .event-progression-card-top{align-items:flex-start}
  .event-progression-festivals .event-progression-card-top span{font-size:clamp(2.5rem,12vw,4rem)}
}

/* Deployment marker: release-2026-08-08-rev17 */


/* REV18: intentional title wrapping and captionless trivia images. */
h1,h2,h3,.media-project-link-panel>strong{text-wrap:balance}
.intentional-title>span{display:block}
.trivia-gallery figure{justify-content:flex-start}
.trivia-gallery figure:has(>img:only-child){background:transparent}

/* Deployment marker: release-2026-08-08-rev19 */
