:root{color-scheme:dark;--bg:#0c0c0e;--panel:#171315;--text:#fff5f3;--muted:#bdb1b0;--accent:#ff5a4f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 system-ui,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{max-width:1440px;margin:auto;padding:25px 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff12}.brand{font-size:22px;font-weight:750;letter-spacing:-1px}.brand span,h1 span,.dot{color:var(--accent)}nav{display:flex;gap:30px;font-size:14px}nav a:hover,footer a:hover{color:var(--accent)}main{max-width:1440px;margin:auto;padding:0 5%}section{padding:85px 0;scroll-margin-top:20px}.hero{display:grid;grid-template-columns:1fr 1.05fr;gap:7%;align-items:center;padding-top:65px}.eyebrow{font-size:11px;font-weight:650;letter-spacing:2px;color:var(--accent)}h1{font-size:clamp(64px,7.7vw,112px);line-height:.98;letter-spacing:-6px;margin:30px 0}h2{font-size:clamp(28px,3.4vw,44px);line-height:1.2;letter-spacing:-1.4px;margin:15px 0 25px}.intro h2{font-size:22px;letter-spacing:-.5px;max-width:420px}.intro>p:not(.eyebrow){color:var(--muted);max-width:470px}.primary{display:inline-flex;gap:36px;align-items:center;background:var(--accent);color:#180706;padding:13px 23px;border-radius:5px;margin-top:22px;font-weight:650}.primary:hover{background:#ff8075}figure{margin:0}.hero-art{border:1px solid #ffffff15;background:var(--panel);border-radius:12px;overflow:hidden;transform:rotate(1deg)}.image-button{padding:0;border:0;width:100%;background:#ecebf1;display:block}.image-button img{width:100%;height:auto;display:block}.hero-art figcaption{padding:24px 28px}.hero-art figcaption p{margin:10px 0}small,.muted{color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.section-head h2{margin-bottom:0}.section-head>a{font-size:14px;color:var(--accent)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.card{border:1px solid #ffffff12;border-radius:9px;overflow:hidden;background:var(--panel);text-align:left;padding:0;color:inherit;transition:transform .2s,border-color .2s}.card:hover{transform:translateY(-4px);border-color:var(--accent)}.card img{width:100%;height:260px;object-fit:contain;background:#ecebf1;display:block}.card-content{padding:20px}.card h3{font-size:19px;margin:7px 0 12px;letter-spacing:-.5px}.card .category{color:var(--accent);font-size:11px;letter-spacing:1px}.card small{font-size:12px}.highlights{border-bottom:1px solid #ffffff15;padding-top:35px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:35px 0 10px}.filters button{color:var(--muted);background:transparent;border:1px solid #ffffff24;border-radius:50px;padding:9px 20px}.filters button[aria-pressed=true]{background:var(--accent);color:#180706;border-color:var(--accent)}#count{font-size:13px;margin-bottom:25px}.about{border-top:1px solid #ffffff15;display:grid;grid-template-columns:1fr 2fr;gap:50px}.about>div{max-width:720px}.about p{max-width:650px}footer{max-width:1440px;margin:auto;padding:35px 5%;border-top:1px solid #ffffff15;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:13px;color:var(--muted)}dialog{width:min(1180px,94vw);max-height:92vh;border:1px solid #ffffff30;background:var(--panel);color:var(--text);border-radius:12px;padding:50px 30px 30px}dialog::backdrop{background:#08080bd9;backdrop-filter:blur(5px)}.detail{display:grid;grid-template-columns:1.4fr 1fr;gap:35px;align-items:start}.detail>img{width:100%;height:auto;border-radius:5px}.detail h2{font-size:32px}.close{position:absolute;right:14px;top:8px;background:transparent;border:0;color:white;font-size:24px;padding:3px 10px}.preview-note{color:var(--accent);font-size:13px}dl{border-top:1px solid #ffffff20;margin-top:25px}dt{color:var(--muted);font-size:12px;padding-top:15px}dd{margin:3px 0 15px}#detail-info{font-size:14px;color:var(--muted)}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}@media(max-width:850px){.hero{grid-template-columns:1fr;gap:45px}.hero-art{transform:none;max-width:600px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}h1{letter-spacing:-4px}.about{grid-template-columns:1fr;gap:10px}.detail{grid-template-columns:1fr}.section-head{align-items:start}footer{flex-wrap:wrap}}@media(max-width:540px){header{display:block;padding:20px 6%}nav{gap:20px;margin-top:12px;font-size:12px}main{padding:0 6%}section{padding:55px 0}.hero{padding-top:35px}h1{font-size:70px}.grid{grid-template-columns:1fr;gap:20px}.card img{height:auto;max-height:380px}.section-head{display:block}.section-head>a{display:inline-block;margin-top:20px}.filters{gap:8px}.filters button{font-size:13px;padding:8px 14px}dialog{padding:45px 16px 20px}.hero-art figcaption{padding:20px}}
.detail-media>img{width:100%;height:auto;border-radius:5px}.photo-options{display:flex;gap:10px;flex-wrap:wrap}.photo-options button{padding:8px 14px;border:1px solid #ffffff30;border-radius:5px;background:transparent;color:var(--text)}.photo-options button[aria-pressed=true]{background:var(--accent);color:var(--bg)}#photo-caption{font-size:13px}.card img{background:#c4c2bf}.hero-art{transform:none}
.guides{padding:20px 0 0;scroll-margin-top:0}.guides h3{font-size:22px;margin:0 0 15px}.guides>p{font-size:13px}.guides details{border-top:1px solid #ffffff25;padding:15px 0}.guides summary{cursor:pointer;font-weight:650;color:var(--accent)}.guides dl{border:0;font-size:14px}.guide-source{font-size:11px;color:var(--muted);overflow-wrap:anywhere}

.reviews{padding:30px 0 0;margin-top:30px;border-top:1px solid #ffffff25}.reviews h3{font-size:25px}.reviews form{max-width:680px}.reviews label{display:block;margin:15px 0 6px;font-size:14px}.reviews input,.reviews select,.reviews textarea{width:100%;padding:12px;border:1px solid #ffffff35;border-radius:5px;background:var(--bg);color:var(--text);font:inherit}.reviews button{border:0;cursor:pointer}.reviews button:disabled{opacity:.45;cursor:not-allowed}.review{padding:20px;background:var(--bg);border-radius:6px;margin-top:15px;white-space:pre-wrap;overflow-wrap:anywhere}.review p{margin-bottom:0}.moderation-main{max-width:1000px}.moderation-main button,.moderation-main select{padding:10px;margin:8px;border-radius:5px}.moderation-main button:disabled{opacity:.45}#review-signin{display:inline-block;color:var(--accent);margin-left:20px}#review-signin[hidden]{display:none}

.project-video{margin-top:24px}.project-video video{display:block;width:100%;height:auto;max-height:65vh;background:#000;border-radius:5px;margin-bottom:12px}.project-video a{display:inline-block;margin-top:4px}

.download-banner{border-bottom:1px solid #ff5a4f55;background:radial-gradient(ellipse at 85% 0%,#ff5a4f2b,transparent 65%),linear-gradient(105deg,#200c0c,#100a0b);color:var(--text)}
.download-banner-inner{max-width:1440px;margin:auto;padding:18px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.download-banner-label{display:block;font-size:10px;font-weight:700;letter-spacing:2px;color:var(--accent)}
.download-banner-copy p{margin:4px 0 0;font-size:16px;font-weight:550}
.download-banner-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 26px;background:var(--accent);color:#180706;border:1px solid transparent;border-radius:5px;font-size:14px;font-weight:750;flex-shrink:0}
.download-banner-button:hover{background:#ff8075}
@media(max-width:540px){.download-banner-inner{padding:16px 6%;gap:14px;flex-wrap:wrap}.download-banner-copy p{font-size:14px}.download-banner-label{font-size:9px;letter-spacing:1.3px}.download-banner-button{padding:10px 22px}}

header nav{align-items:center;flex-wrap:wrap}
.nav-download{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 20px;border:1px solid var(--accent);border-radius:5px;color:var(--accent);font-weight:700}
.nav-download:hover{background:var(--accent);color:#180706}
@media(max-width:540px){header nav{gap:10px 18px}.nav-download{padding:7px 16px}}

header{border-bottom-color:#ff5a4f28}.brand{letter-spacing:-.6px}
.download-banner{background:radial-gradient(ellipse at 50% 100%,#8a191946,transparent 70%),linear-gradient(120deg,#090909,#210b0c 50%,#090909);border-bottom:1px solid #ff5a4f55;overflow:hidden}
.download-banner-inner{display:grid;grid-template-columns:minmax(110px,220px) minmax(0,1fr) minmax(110px,220px);gap:32px;align-items:center;padding:18px 5%;min-height:240px}
.download-banner-copy{text-align:center;min-width:0}.download-banner-label{font-size:11px;letter-spacing:3px;color:#ff8075}
.download-banner-copy .banner-title{font-size:clamp(28px,4.5vw,64px);line-height:1.1;letter-spacing:-2px;font-weight:800;margin:12px 0;color:#fff5f3}.banner-title span{color:var(--accent)}
.download-banner-copy>p:last-child{font-size:14px;font-weight:400;color:var(--muted);margin:12px 0 0}
.banner-creature{display:block;width:100%;height:220px;object-fit:contain;filter:drop-shadow(0 0 18px #e6212130)}.banner-creature-left{transform:scaleX(-1)}
.hero-art,.card{border-color:#ff5a4f24}.hero-art{box-shadow:0 14px 60px #0006}.card:hover{border-color:var(--accent);box-shadow:0 8px 25px #b01b1b12}
.filters button[aria-pressed=true],.primary{color:#180706}.review{border-color:#ff5a4f28}
@media(max-width:850px){.download-banner-inner{grid-template-columns:minmax(80px,150px) minmax(0,1fr) minmax(80px,150px);gap:15px;min-height:190px}.banner-creature{height:170px}}
@media(max-width:540px){.download-banner-inner{display:grid;grid-template-columns:62px minmax(0,1fr) 62px;gap:8px;padding:16px 4%;min-height:150px}.banner-creature{height:110px}.download-banner-copy .banner-title{font-size:26px;letter-spacing:-1px}.download-banner-label{font-size:8px;letter-spacing:1px}.download-banner-copy>p:last-child{font-size:11px;line-height:1.45}header nav{gap:10px 15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}}

.contact{display:flex;align-items:center;justify-content:space-between;gap:32px;border:1px solid #ff5a4f40;border-radius:18px;background:linear-gradient(135deg,#231315,#121214);padding:32px;margin-top:48px}.contact h2{margin:8px 0 16px}.contact p{max-width:560px}.contact-email{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;padding:16px 20px;border:1px solid var(--accent);border-radius:10px;color:var(--text);text-decoration:none;overflow-wrap:anywhere}.contact-email:hover,.contact-email:focus-visible{background:#ff5a4f18}.contact-email span{color:var(--accent)}@media(max-width:850px){.contact{flex-direction:column;align-items:flex-start;padding:24px}.contact-email{flex-shrink:1;max-width:100%;font-size:clamp(14px,4vw,18px)}}

.gallery-search{margin-top:28px;max-width:700px}.gallery-search label{display:block;font-size:14px;margin-bottom:8px}.search-row{display:flex;gap:10px}.search-row input,.share-url{min-width:0;width:100%;background:var(--panel);color:var(--text);border:1px solid #ffffff35;border-radius:8px;padding:13px;font:inherit}.search-row button,.secondary{border:1px solid #ff5a4f70;color:var(--text);background:transparent;border-radius:8px;padding:12px 16px}.card-content{position:relative}.new-badge{position:absolute;right:16px;top:16px;border-radius:20px;background:var(--accent);color:#180706;font-size:11px;font-weight:750;padding:2px 10px}.model-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:20px}.model-actions .primary{margin:0}.enlarge-photo{display:block;width:100%;padding:0;border:0;background:transparent;color:var(--text);text-align:left}.enlarge-photo img{display:block;width:100%;border-radius:6px}.enlarge-photo span{display:block;margin-top:8px;font-size:13px;color:var(--accent)}.making-of{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:40px;border-top:1px solid #ffffff20}.making-of video{width:100%;border-radius:12px;background:#000}.making-of .primary{border:0}.video-credit{font-size:11px}.video-credit a{text-decoration:underline}.photo-lightbox{width:min(1400px,96vw);padding:45px 18px 18px;background:#101012;max-height:96vh}.photo-lightbox>img{display:block;width:100%;height:calc(80vh - 70px);object-fit:contain;touch-action:pan-y pinch-zoom}.photo-lightbox #close-lightbox{position:absolute;top:8px;right:12px;background:transparent;color:white;border:0;font-size:24px}.lightbox-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}.lightbox-controls p{text-align:center;font-size:14px}.lightbox-controls button{background:var(--panel);color:var(--text);border:1px solid #ffffff35;border-radius:8px;padding:8px 20px;font-size:22px}.lightbox-controls button:disabled{opacity:.3}@media(max-width:850px){.making-of{grid-template-columns:1fr;gap:24px}}@media(max-width:540px){.search-row{flex-wrap:wrap}.search-row input{flex-basis:100%}.photo-lightbox{padding-left:10px;padding-right:10px}.lightbox-controls button{padding:8px 14px}}
