:root{color-scheme:dark;--muted:#9d9b96;--line:#292929;--accent:#c5ad7d}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#000;color:#f0eee8;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer;color:inherit;background:#000;border:1px solid var(--line);padding:12px 18px}button:hover,a:hover{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:5px}header{height:88px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;background:#000;position:relative;z-index:5;border-bottom:1px solid var(--line)}.brand{font:22px Georgia,serif;letter-spacing:.16em}.brand span{display:block;font:8px Arial;letter-spacing:.25em;margin-top:7px;color:var(--muted)}nav{display:flex;gap:32px;font-size:11px;text-transform:uppercase;letter-spacing:.15em}.hero{height:calc(90svh - 88px);min-height:520px;max-height:1000px;position:relative;overflow:hidden;background:#000}.slides{position:absolute;inset:0}.slide{position:absolute;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1s}.slide.active{opacity:1}.hero:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#000 0%,transparent 65%),linear-gradient(90deg,#0009,transparent 80%)}.hero-copy{position:absolute;left:7vw;bottom:15%;z-index:1}.eyebrow{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);line-height:1.7}h1{font:clamp(52px,8vw,126px)/1.05 Georgia,serif;letter-spacing:.025em;font-weight:400;margin:20px 0 30px}.hero-copy>a{font-size:11px;text-transform:uppercase;letter-spacing:.16em;border-bottom:1px solid #777;padding-bottom:12px}.carousel-controls{position:absolute;right:4vw;bottom:40px;z-index:2;display:flex;align-items:center;gap:16px;font:11px monospace}.carousel-controls button{background:#0008;padding:10px 15px}.carousel-label{position:absolute;left:7vw;bottom:36px;z-index:2;font:10px monospace;letter-spacing:.04em;color:var(--muted);max-width:50%}.library,.detail{padding:75px 7vw 100px}.section-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:40px}h2{font:clamp(34px,4vw,58px)/1.1 Georgia,serif;font-weight:400;margin:12px 0}h3{font:28px Georgia,serif;font-weight:400;margin:12px 0}.intro{font-size:13px;color:var(--muted);line-height:1.8;max-width:340px}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 28px}.set-card{border-bottom:1px solid var(--line);padding-bottom:22px}.tile-image{aspect-ratio:2/1;width:100%;object-fit:cover;display:block;background:#000;transition:filter .2s}.set-card:hover .tile-image{filter:brightness(1.12)}.card-bottom{display:flex;align-items:start;gap:20px;margin-top:22px}.number{font:11px monospace;color:var(--accent);padding-top:8px}.card-bottom h3{margin:0 0 10px}.small{font:11px/1.8 Arial;color:var(--muted)}.downloads{display:flex;flex-wrap:wrap;gap:18px;margin-top:22px;font-size:11px}.downloads a{border-bottom:1px solid #666;padding-bottom:5px}.back{display:inline-block;color:var(--muted);font-size:11px;letter-spacing:.1em;margin-bottom:40px}.detail h1{font-size:clamp(42px,7vw,86px);margin:15px 0}.tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin:45px 0 35px}.tabs button{border:0;background:#000;border-bottom:2px solid transparent;padding:15px 0;font-size:12px;color:var(--muted)}.tabs button[aria-selected=true]{color:#eee;border-color:var(--accent)}.illustrations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:50px 28px}.illustration{margin:0;border-bottom:1px solid var(--line);padding-bottom:28px}.image-button{display:block;border:0;padding:0;width:100%;background:#000}.illustration img{display:block;width:100%;aspect-ratio:2/1;object-fit:contain}.caption-top{display:flex;justify-content:space-between;gap:20px;margin-top:20px;font:9px/1.8 monospace;color:var(--muted);letter-spacing:.06em}.illustration h3{font:22px Georgia;margin:10px 0}.illustration p{font:13px/1.75 Arial;color:var(--muted);margin:0;max-width:600px}.research-tools{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:30px}select{padding:12px;background:#000;color:#ddd;border:1px solid var(--line);max-width:70%}.research{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.research figure{margin:0}.research img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.research figcaption{font:10px/1.7 Arial;color:var(--muted);margin-top:10px}.empty,.loading{padding:80px 7vw;color:var(--muted)}footer{border-top:1px solid var(--line);padding:45px 4vw;display:flex;gap:24px;align-items:center;justify-content:space-between}footer span,footer>a:last-child{font-size:9px;letter-spacing:.12em;color:var(--muted)}.wordmark{font:24px Georgia;letter-spacing:.1em}dialog{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;background:#000f;color:#eee;border:0;padding:60px}dialog::backdrop{background:#000}dialog[open]{display:flex;align-items:center;justify-content:space-between;gap:20px}dialog figure{margin:0;flex:1;min-width:0;text-align:center}dialog img{max-width:100%;max-height:80dvh;object-fit:contain}dialog figcaption{font:12px/1.8 Arial;color:#bbb;margin-top:15px}dialog .close{position:absolute;right:22px;top:18px}dialog .previous,dialog .next{padding:12px}@media(max-width:700px){header{height:76px}.brand{font-size:18px}nav{gap:20px;font-size:10px}.hero{min-height:480px;height:75svh}.hero-copy{left:6vw}.hero h1{font-size:14vw}.section-heading{display:block}.library,.detail{padding:45px 6vw 65px}.gallery,.illustrations{grid-template-columns:1fr}.research{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}footer{flex-wrap:wrap}.carousel-controls{gap:7px}.carousel-label{max-width:43%;font-size:9px}dialog{padding:60px 8px}dialog[open]{gap:5px}dialog .previous,dialog .next{padding:8px}.research-tools{align-items:start}.section-heading .intro{max-width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.slide{transition:none}}

@media(max-width:700px){.tabs{gap:18px}.tabs button{font-size:11px;white-space:nowrap}.tabs button .small{font-size:10px}}

.category-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#252820;color:#ded8c8;aspect-ratio:2/1}.category-placeholder span{font-size:11px;letter-spacing:.16em;text-transform:uppercase}.category-placeholder strong{font-family:Georgia,serif;font-size:clamp(24px,3vw,44px);font-weight:400}

.category-placeholder{padding:24px;text-align:center;min-height:200px}.category-placeholder strong{font-size:clamp(22px,2.4vw,36px);overflow-wrap:anywhere}.category-placeholder span{font-size:10px;line-height:1.5}.breakdown{margin:38px 0;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.breakdown h2{font-size:25px}.breakdown p{max-width:900px;color:var(--muted);font-size:13px;line-height:1.8}.breakdown summary{font-size:12px;cursor:pointer;color:var(--accent)}

.collection-description{max-width:780px;font-size:15px;line-height:1.8;color:var(--muted);margin:22px 0}

.dragon-videos{margin:2.5rem 0}.dragon-videos h2{margin-bottom:1rem}.video-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:1.5rem}.video-grid figure{margin:0}.video-grid video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#111}.video-grid figcaption{margin-top:.6rem}

/* Keep the entire wide illustration visible on phones. */
@media (max-width:700px){
 .hero{height:auto;min-height:0;max-height:none;padding-bottom:16px}
 .slides{position:relative;inset:auto;width:100%;aspect-ratio:2 / 1}
 .slide{inset:0;object-fit:contain}
 .hero:after{display:none}
 .hero-copy{position:absolute;top:0;left:0;right:0;bottom:auto;height:50vw;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:12px 6vw 14px;background:linear-gradient(0deg,#000b,transparent 75%)}
 .hero-copy .eyebrow{font-size:9px;margin:0}
 .hero-copy h1{font-size:clamp(32px,10vw,54px);margin:3px 0 8px}
 .hero-copy>a{display:inline-block;font-size:9px;padding-bottom:5px}
 .carousel-label{position:static;max-width:calc(100% - 160px - 12vw);min-height:40px;margin:12px 0 0 6vw;display:flex;align-items:center;line-height:1.4}
 .carousel-controls{right:6vw;bottom:16px;gap:5px}
 .carousel-controls button{padding:8px 10px}
}

.script-scenes{margin-top:55px;border-top:1px solid var(--line);padding-top:28px}.scene-source{max-width:720px;color:var(--muted);font:13px/1.7 Arial}.script-scene{border-bottom:1px solid var(--line)}.script-scene summary{cursor:pointer;display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:20px 0;color:#f0eee8;font:14px/1.5 Arial;letter-spacing:.04em}.script-scene summary:before{content:"+";color:var(--accent);font-size:20px}.script-scene[open] summary:before{content:"−"}.script-scene summary span:first-of-type{flex:1}.script-text{max-width:760px;white-space:pre-wrap;overflow-wrap:anywhere;color:#ddd;font:15px/1.8 Arial;padding:0 0 30px}.script-scene summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
@media(max-width:700px){.category-placeholder{min-height:0}}

.library-category{margin-top:72px}.category-heading{border-top:1px solid var(--line);padding-top:24px;margin-bottom:28px}.category-heading .eyebrow{margin:0}.category-heading h3{font:clamp(27px,3vw,42px)/1.15 Georgia,serif;margin:10px 0 0}@media(max-width:700px){.library-category{margin-top:50px}.category-heading{padding-top:20px;margin-bottom:22px}}
