*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f3f0ea;color:#171717;font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}header{height:70px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;background:#f3f0eaf2;backdrop-filter:blur(10px);z-index:10;border-bottom:1px solid #0002;font-size:12px;letter-spacing:.12em}nav{display:flex;gap:28px}.eyebrow{font:10px monospace;letter-spacing:.16em;opacity:.55}.hero{min-height:92vh;padding:7vw 4vw;display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.hero h1,.section h2,.placeholder h2,.about h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.04em;line-height:.9}.hero h1{font-size:clamp(56px,7vw,110px);margin:0 0 30px}.hero em,.section em{font-style:italic}.hero>img{width:100%;aspect-ratio:4/5;object-fit:cover}.hero p:not(.eyebrow){max-width:520px;line-height:1.6;opacity:.7}.btn{display:inline-block;border:1px solid;padding:13px 16px;margin-top:20px;font:10px monospace}.index{padding:9vw 4vw}.index>a{display:grid;grid-template-columns:70px 1fr;border-top:1px solid #0002;padding:25px 0;font-family:Georgia,serif;font-size:clamp(27px,3vw,45px)}.index>a:last-child{border-bottom:1px solid #0002}.index b{font:10px monospace;opacity:.5}.section{padding:10vw 4vw}.section>h2{font-size:clamp(48px,6vw,85px);margin:0 0 7vw}.dark{background:#171717;color:#f3f0ea}.tan{background:#d8c2a6}.project,.production{padding:7vw 0;border-top:1px solid currentColor}.project-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.project-head span,.prod-head span{font:9px monospace;opacity:.5}.project h3,.production h3{font:400 clamp(35px,4.5vw,65px) Georgia,serif;margin:6px 0}.packet{background:none;color:inherit;border:1px solid currentColor;padding:12px 14px;font:9px monospace;cursor:pointer}.pdf-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.pdf-grid img{width:100%;background:white}.project small{display:block;font:8px monospace;opacity:.45;margin-top:12px}.intro{opacity:.65;margin-top:-4vw;margin-bottom:5vw}.kb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.kb-grid figure{margin:0}.kb-grid img{width:100%;display:block}.kb-grid figcaption{font:8px monospace;padding-top:7px;opacity:.5}.prod-head{margin-bottom:30px}.scenic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.scenic-grid img{width:100%;height:380px;object-fit:cover}.placeholder{padding:12vw 8vw;min-height:55vh}.placeholder h2{font-size:clamp(50px,7vw,90px)}.placeholder.alt{background:#e7e1d9}.about{padding:12vw 7vw;display:grid;grid-template-columns:.8fr .8fr 1fr;gap:7vw;align-items:start}.about h2{font-size:clamp(55px,6vw,90px);margin:0}.about img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top}.about h3{font:400 28px/1.15 Georgia,serif}.about p{line-height:1.7;opacity:.7}.modal{display:none;position:fixed;inset:0;background:#0009;z-index:99;align-items:center;justify-content:center;padding:30px}.modal.show{display:flex}.modal>div{background:#f3f0ea;color:#171717;max-width:520px;padding:35px}.modal p{line-height:1.6}.modal button{padding:10px 15px;background:none;border:1px solid}@media(max-width:800px){nav{display:none}.hero{grid-template-columns:1fr}.pdf-grid,.kb-grid,.scenic-grid{grid-template-columns:1fr 1fr}.about{grid-template-columns:1fr}.scenic-grid img{height:320px}}@media(max-width:520px){.pdf-grid,.kb-grid,.scenic-grid{grid-template-columns:1fr}.project-head{align-items:start;flex-direction:column}.scenic-grid img{height:auto}}

/* Updates added after the light preview checkpoint */
.subcategory{padding-top:6vw;margin-top:4vw;border-top:1px solid currentColor}
.subcategory-head{display:flex;align-items:baseline;justify-content:space-between;gap:30px;margin-bottom:2vw}
.subcategory-head h3{font:400 clamp(42px,5vw,72px) Georgia,serif;margin:0}
.light-sub{border-top:1px solid #0002}
.project.compact{padding-top:4vw}
.size-note{display:block;font:9px monospace;opacity:.55;margin-top:8px}
.media-grid video,.video-grid video{width:100%;min-height:280px;background:#111;display:block}
.projection-section{background:#e7e1d9}
.subproject{padding:4vw 0;border-top:1px solid currentColor}
.subproject h4{font:400 clamp(28px,3vw,44px) Georgia,serif;margin:0 0 24px}
.projection-feature img{width:100%;max-height:900px;object-fit:contain;background:#fff}
.video-grid{display:grid;grid-template-columns:minmax(0,900px);gap:14px}
.research-block{margin-top:5vw}
.research-note{margin:0 0 25px}
.production>.prod-head small{display:block;font:9px monospace;opacity:.55;margin-top:8px}
@media(max-width:800px){
  .subcategory-head{display:block}
  .subcategory-head h3{margin-top:8px}
}

.video-placeholder{padding:60px 20px;border:1px solid currentColor;font:10px monospace;text-align:center;opacity:.6}

/* Gallery navigation redesign */
button{font:inherit;color:inherit}
header button{border:0;background:none;cursor:pointer}
.brand-button{font:inherit;letter-spacing:inherit;padding:0}
.view{display:none;min-height:100vh}
.view.active{display:block}
.index button{width:100%;display:grid;grid-template-columns:70px 1fr;text-align:left;border:0;border-top:1px solid #0002;background:none;padding:25px 0;font-family:Georgia,serif;font-size:clamp(27px,3vw,45px);cursor:pointer;color:inherit}
.index button:last-child{border-bottom:1px solid #0002}
.index button b{font:10px monospace;opacity:.5}
.gallery-view,.project-detail{padding:8vw 4vw 10vw}
.gallery-view>h2,.project-detail h2{font:400 clamp(48px,6vw,85px)/.92 Georgia,serif;letter-spacing:-.04em;margin:0 0 5vw}
.back{border:0;background:none;padding:0;margin:0 0 50px;font:10px monospace;letter-spacing:.08em;cursor:pointer;opacity:.7}
.back:hover{opacity:1}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px 18px}
.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1200px}
.project-card{border:0;background:none;padding:0;text-align:left;cursor:pointer;color:inherit}
.card-image{aspect-ratio:4/3;overflow:hidden;background:#ddd}
.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.project-card:hover .card-image img{transform:scale(1.025)}
.card-copy{padding:14px 2px 6px}
.card-copy h3{font:400 clamp(23px,2.3vw,34px)/1.05 Georgia,serif;margin:0 0 8px}
.card-copy span{font:9px monospace;letter-spacing:.07em;opacity:.6}
.card-copy small{display:block;font:9px monospace;opacity:.55;margin:6px 0}
.detail-head{display:flex;align-items:end;justify-content:space-between;gap:30px;border-bottom:1px solid #0002;padding-bottom:30px;margin-bottom:35px}
.detail-head h2{margin:0}
.detail-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.detail-gallery figure{margin:0;background:#fff}
.detail-gallery img{width:100%;height:auto}
.detail-gallery video{width:100%;background:#111;min-height:300px}
.packet-note{border:1px solid;padding:12px 14px;background:none;font:9px monospace;cursor:pointer}
.subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 55px}
.subnav a{border:1px solid #0003;padding:10px 12px;font:9px monospace}
.detail-subsection{padding:55px 0;border-top:1px solid #0002}
.detail-subsection h3{font:400 clamp(30px,4vw,54px) Georgia,serif;margin:0 0 30px}
.project-detail .size{font:9px monospace;opacity:.55}
@media(max-width:900px){.card-grid{grid-template-columns:repeat(2,1fr)}.category-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.gallery-view,.project-detail{padding:80px 6vw}.card-grid,.category-grid,.detail-gallery{grid-template-columns:1fr}.detail-head{align-items:flex-start;flex-direction:column}.back{margin-bottom:35px}}


/* Image fullscreen hover + lightbox */
.detail-gallery figure,
.pdf-grid,
.scenic-grid,
.kb-grid figure,
.project-card .card-image {
  position: relative;
}
.detail-gallery figure img,
.pdf-grid img,
.scenic-grid img,
.kb-grid figure img {
  cursor: zoom-in;
}
.detail-gallery figure::after,
.pdf-grid > img::after,
.scenic-grid > img::after {
  content: "";
}
.image-zoom-wrap {
  position: relative;
  display: block;
  overflow: hidden;
}
.image-zoom-wrap img {
  display: block;
  width: 100%;
}
.image-zoom-wrap::before {
  content: "Click to enlarge";
  position: absolute;
  right: 12px;
  bottom: 12px;
  z-index: 2;
  padding: 8px 10px;
  background: rgba(20,20,20,.78);
  color: #fff;
  font: 9px monospace;
  letter-spacing: .08em;
  opacity: 0;
  transform: translateY(6px);
  transition: .2s ease;
  pointer-events: none;
}
.image-zoom-wrap:hover::before {
  opacity: 1;
  transform: translateY(0);
}
.image-lightbox {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,.94);
  padding: 28px;
}
.image-lightbox.open {
  display: flex;
}
.image-lightbox img {
  max-width: 96vw;
  max-height: 94vh;
  object-fit: contain;
  box-shadow: 0 10px 60px rgba(0,0,0,.35);
}
.lightbox-close {
  position: fixed;
  top: 18px;
  right: 24px;
  z-index: 10000;
  border: 0;
  background: transparent;
  color: white;
  font-size: 42px;
  line-height: 1;
  cursor: pointer;
}
body.lightbox-open {
  overflow: hidden;
}

.social-links{display:flex;gap:16px;align-items:center}.social-links a{white-space:nowrap}@media(max-width:600px){.social-links{gap:9px;font-size:8px}}


/* Center and enlarge The Addams Family SETC reel */
.addams-setc-reel {
  display: block;
  width: min(100%, 1100px);
  max-width: 92vw;
  height: auto;
  margin: 24px auto 36px;
}


/* Contact page */
.contact-view{padding:8vw 4vw 10vw;min-height:85vh}
.contact-view h2{font:400 clamp(52px,7vw,100px)/.92 Georgia,serif;letter-spacing:-.045em;margin:0 0 30px}
.contact-intro{max-width:620px;font-size:15px;line-height:1.65;margin-bottom:48px}
.contact-links{display:flex;flex-direction:column;align-items:flex-start;border-top:1px solid #0002;max-width:900px}
.contact-links a{width:100%;padding:24px 0;border-bottom:1px solid #0002;font:400 clamp(22px,3vw,38px)/1.1 Georgia,serif;text-decoration:none;color:inherit}
.contact-links a:hover{font-style:italic}
@media(max-width:600px){.contact-view{padding:80px 6vw}.contact-links a{font-size:20px}}


/* Center and enlarge The Addams Family SETC video reel */
#projection-p0-sub2 .detail-gallery{
  display:flex;
  justify-content:center;
  width:100%;
}
#projection-p0-sub2 .detail-gallery figure{
  width:min(1100px, 94vw);
  margin:0 auto;
}
#projection-p0-sub2 .addams-setc-reel{
  width:100% !important;
  min-height:0;
  height:auto !important;
  display:block;
}


/* Center and enlarge Phantom untitled style-guide image */
.phantom-style-guide-image{
  width:min(1100px,94vw) !important;
  max-width:1100px;
  margin:28px auto 44px !important;
  display:block;
}
.phantom-style-guide-image img{
  width:100% !important;
  height:auto !important;
  display:block;
  object-fit:contain;
}
