:root{--bg:#101010;--panel:#181818;--raised:#1f1f1f;--line:#2a2a2a;--accent:#ff7a1a;--text:#ededed;--muted:#aaa;color-scheme:dark;font-family:'Segoe UI',Arial,sans-serif;font-size:16px;line-height:1.6}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}html{scroll-padding-top:105px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:4px}img{display:block;width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;line-height:1.25;letter-spacing:-.025em}h1{font-size:36px}h2{font-size:24px}h3{font-size:21px}p{color:var(--muted)}::selection{background:var(--accent);color:#101010}[hidden]{display:none!important}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip:focus{position:fixed;z-index:10;top:8px;left:8px;background:var(--accent);color:#101010;padding:12px 20px}.section{max-width:1240px;margin:auto;padding-left:32px;padding-right:32px}.site-header{position:sticky;top:0;z-index:5;background:#0c0c0c;border-bottom:2px solid var(--accent)}.header-inner{max-width:1240px;min-height:82px;padding:12px 32px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-size:18px;line-height:1.15;font-weight:700;letter-spacing:.015em;white-space:nowrap}.brand b{color:var(--accent)}.brand-small{display:block;font-weight:400;font-size:12px;letter-spacing:.16em;color:var(--muted);margin-top:5px}.site-header nav{display:flex;gap:12px}.site-header nav a{padding:10px 12px;min-height:44px;border-radius:3px;font-size:15px}.site-header nav a:hover{background:var(--raised);color:var(--accent)}.header-store{border:1px solid #444;padding:9px 14px;font-size:14px;min-height:44px;white-space:nowrap;border-radius:3px;display:flex;align-items:center;gap:12px}.header-store:hover{border-color:var(--accent)}.header-store>span{color:var(--accent)}.opening-showcase{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,1fr);gap:32px;padding-top:32px;padding-bottom:40px;align-items:start}.opening-showcase>section,.tool-main>div,.tool-main>img{min-width:0}.section-title{font-size:25px;margin-bottom:20px}.tool-list{display:grid;gap:20px}.tool-card{background:var(--panel);border:1px solid var(--line);border-radius:4px;overflow:hidden}.tool-main{display:grid;grid-template-columns:38% 1fr;align-items:stretch}.tool-main>img{height:100%;width:100%;object-fit:contain;background:#080808}.tool-main>div{padding:20px}.tool-main h3{font-size:23px;margin-bottom:10px}.tool-main p{font-size:15px;line-height:1.6}.tool-main .tool-detail{font-size:13px;margin-top:8px}.details-label{display:inline-flex;gap:15px;color:var(--accent);font-size:14px;font-weight:600;margin-top:18px}.tool-main:hover h3,.project-card>a:hover h3{color:var(--accent)}.store-link{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:10px 20px;font-size:14px;border-top:1px solid var(--line);background:#1f1f1f}.store-link>span{color:var(--accent);font-size:18px}.store-link:hover{background:#292929}.animal-gallery{min-width:0;border:1px solid var(--line);border-radius:4px;background:var(--panel);padding:16px}.animal-enlarge{display:block;padding:0;width:100%;position:relative;overflow:hidden;border-radius:2px;background:#080808}.animal-enlarge>img{width:100%;aspect-ratio:16/9;object-fit:contain}.animal-enlarge>span,.project-main-image button>span{position:absolute;right:12px;bottom:12px;padding:7px 11px;background:#101010e8;border:1px solid #555;font-size:13px;border-radius:3px}.animal-enlarge>span>span{margin-left:8px;font-size:17px}.animal-enlarge:hover>span{border-color:var(--accent)}.animal-caption{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0}.animal-caption>div:first-child{display:flex;align-items:baseline;gap:12px;min-width:0}.animal-caption h3{font-size:21px}.animal-caption #animal-counter{font-size:13px;color:var(--muted);white-space:nowrap}.animal-arrows{display:flex;gap:8px;flex-shrink:0}.animal-arrows button{width:44px;height:44px;border:1px solid #555;background:var(--raised);border-radius:3px;font-size:20px}.animal-arrows button:hover{border-color:var(--accent);color:var(--accent)}.animal-thumbnails{display:flex;gap:8px;overflow-x:auto;padding:3px 3px 10px;position:relative;scrollbar-width:thin;scrollbar-color:#777 #222;overscroll-behavior-x:contain}.animal-thumbnails button{flex:0 0 104px;min-width:0;padding:3px;border:2px solid transparent;border-radius:3px;background:var(--raised);display:flex;flex-direction:column}.animal-thumbnails button[aria-pressed=true]{border-color:var(--accent);background:#30251d}.animal-thumbnails img{aspect-ratio:16/10;object-fit:cover}.animal-thumbnails button>span{font-size:12px;padding:6px 3px;line-height:1.35;width:100%;text-align:left}.animal-thumbnails button:hover{border-color:#777}.animal-thumbnails button[aria-pressed=true]:hover{border-color:var(--accent)}.animal-pack{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.animal-pack p{font-size:13px;flex:1 1 140px}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:11px 17px;min-height:44px;font-size:14px;font-weight:600;border-radius:3px;line-height:1.4}.button-primary{background:var(--accent);color:#101010;border:1px solid var(--accent)}.button-primary:hover{background:#ff9347}.button-secondary{border:1px solid #555;background:var(--raised)}.button-secondary:hover{border-color:var(--accent)}.work{padding-top:24px;padding-bottom:44px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.project-card{border:1px solid var(--line);border-radius:4px;background:var(--panel);overflow:hidden}.project-card>a{display:flex;flex-direction:column;height:100%}.project-card img{aspect-ratio:16/10;object-fit:contain;background:#080808}.project-card>a>div{padding:18px;display:flex;flex-direction:column;flex:1}.project-card h3{font-size:20px;margin-bottom:10px}.project-card p{font-size:14px;line-height:1.6;margin-bottom:20px}.project-card .details-label{margin-top:auto}.contact{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-top:32px;padding-bottom:36px;border-top:1px solid var(--line)}.contact h2{font-size:20px;margin-bottom:12px}.contact p{font-size:14px;max-width:470px}.contact a{font-size:15px;color:var(--accent);text-decoration:underline;text-underline-offset:4px;display:inline-block;padding:10px 0}.footer{display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);padding-top:24px;padding-bottom:24px;font-size:13px;color:var(--muted)}.footer a:hover{color:var(--accent)}.project-title{padding-top:28px;padding-bottom:28px}.back-link{display:inline-flex;align-items:center;min-height:44px;font-size:14px;color:var(--muted)}.back-link:hover{color:var(--accent)}.project-title h1{margin-top:16px;font-size:36px}.project-title>p:not(.store-note){margin-top:14px;font-size:16px;max-width:780px}.project-title .button{margin-top:22px}.project-title .store-note{font-size:13px;margin-top:10px}.project-main-image{max-width:1000px}.project-main-image>button{display:block;width:100%;padding:0;position:relative;background:#080808;border:1px solid var(--line);border-radius:4px;overflow:hidden}.project-main-image img{aspect-ratio:16/9;object-fit:contain}.project-overview{padding-top:36px;padding-bottom:36px;display:grid;grid-template-columns:1.3fr 1fr;gap:50px}.project-overview h2{font-size:24px;margin-bottom:16px}.project-overview p{font-size:15px;line-height:1.8}.facts{margin:0;background:var(--panel);border:1px solid var(--line);border-radius:4px;padding:0 20px}.facts>div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:14px 0;font-size:14px}.facts>div:last-child{border:0}.facts dt{color:var(--muted)}.facts dd{margin:0;font-weight:600;text-align:right}.gallery{padding-top:20px;padding-bottom:36px}.gallery>h2{display:flex;align-items:center;gap:16px;margin-bottom:20px}.image-count{font-size:14px;color:var(--muted);font-weight:400;letter-spacing:0}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.gallery-grid>button{padding:0;position:relative;border:1px solid var(--line);border-radius:3px;overflow:hidden}.gallery-grid img{aspect-ratio:16/9;object-fit:contain;background:#080808}.gallery-zoom{position:absolute;bottom:7px;right:10px;text-shadow:0 1px 4px #000;font-size:22px}.next-project{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:85px;padding:20px 0;border-top:1px solid var(--line);font-size:15px}.next-project>span{color:var(--muted)}.next-project>strong{font-weight:500;color:var(--accent)}.gallery-open{overflow:hidden}#lightbox{width:min(1200px,96vw);max-width:96vw;max-height:96vh;background:var(--bg);color:var(--text);border:1px solid #555;border-radius:4px;padding:16px;overflow:auto}#lightbox::backdrop{background:#000e}.lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;font-size:14px}.close-lightbox{min-height:44px;padding:8px 14px;border:1px solid #555;border-radius:3px;display:flex;align-items:center;gap:12px;font-size:14px}.close-lightbox span{font-size:23px;line-height:1}.lightbox-frame{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:12px;align-items:center}.lightbox-frame img{max-height:72vh;object-fit:contain}.lightbox-frame>button{width:44px;height:44px;border:1px solid #555;border-radius:3px;font-size:22px}.lightbox-frame>button:hover,.close-lightbox:hover{border-color:var(--accent)}.lightbox-caption{font-size:14px;text-align:center;margin-top:16px}.not-found{padding-top:80px}.not-found p{margin:20px 0 28px}
@media(max-width:1050px){.opening-showcase{gap:24px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.tool-main{grid-template-columns:1fr}.tool-main>img{aspect-ratio:2.1;height:auto;object-fit:contain}.tool-main>div{padding:18px}.tool-main h3{font-size:22px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header-inner{gap:16px}.site-header nav{gap:2px}.site-header nav a{font-size:14px;padding:10px}.header-store{font-size:13px}}
@media(max-width:760px){html{scroll-padding-top:140px}.section{padding-left:20px;padding-right:20px}.header-inner{padding:12px 20px 0;flex-wrap:wrap;gap:8px 18px;min-height:0}.brand{font-size:16px}.brand-small{font-size:10px}.header-store{margin-left:auto;min-height:40px;font-size:12px;padding:8px 10px}.site-header nav{order:3;width:100%;gap:12px}.site-header nav a{padding:10px 4px;font-size:14px}.opening-showcase{grid-template-columns:1fr;padding-top:24px;padding-bottom:30px;gap:30px}.section-title{font-size:24px;margin-bottom:16px}.tool-list{gap:16px}.tool-main{grid-template-columns:34% 1fr}.tool-main>img{aspect-ratio:auto;height:100%;object-fit:contain}.tool-main>div{padding:17px}.tool-main h3{font-size:22px}.tool-main p{font-size:14px}.tool-main .tool-detail{font-size:13px}.details-label{margin-top:14px;font-size:14px}.store-link{min-height:46px;padding:10px 17px}.animal-gallery{padding:12px}.animal-enlarge>span{font-size:12px;padding:6px 9px;right:8px;bottom:8px}.animal-caption h3{font-size:20px}.animal-arrows button{width:44px;height:44px}.animal-thumbnails button{flex-basis:96px}.animal-pack{gap:12px}.animal-pack .button{font-size:13px}.work{padding-top:8px;padding-bottom:30px}.project-grid{gap:16px}.project-card h3{font-size:19px}.project-card>a>div{padding:16px}.project-card p{font-size:14px}.contact{grid-template-columns:1fr;gap:24px;padding-top:28px;padding-bottom:24px}.footer{align-items:flex-start;flex-direction:column;gap:10px;font-size:12px}.project-title{padding-top:18px}.project-title h1{font-size:30px}.project-title>p:not(.store-note){font-size:15px}.project-overview{grid-template-columns:1fr;gap:24px;padding-top:28px;padding-bottom:28px}.project-overview p{font-size:15px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.next-project{font-size:14px;flex-direction:column;align-items:flex-start;gap:7px}.lightbox-frame{grid-template-columns:44px minmax(0,1fr) 44px;gap:6px}#lightbox{padding:10px}.lightbox-caption{font-size:13px}}
@media(max-width:480px){.project-grid{grid-template-columns:1fr}.tool-main{grid-template-columns:28% 1fr}.tool-main>div{padding:16px}.tool-main h3{font-size:21px}.tool-main .tool-detail{display:none}.tool-main .details-label{font-size:13px}.animal-caption>div:first-child{flex-direction:column;gap:3px}.animal-caption{gap:10px}.animal-caption h3{font-size:20px}.animal-thumbnails button{flex-basis:94px}.animal-pack p{flex-basis:100%;font-size:13px}.animal-pack .button{width:100%}.lightbox-frame{grid-template-columns:1fr 1fr;gap:10px}.lightbox-frame img{grid-column:1/-1;grid-row:1}.lightbox-frame>.gallery-next{justify-self:end}.lightbox-frame>button{width:100%;max-width:100px}.gallery-grid{grid-template-columns:1fr}.header-store{font-size:11px}.site-header nav{gap:22px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Homepage: two columns with a single page scrollbar. */
.static-model-list{display:grid;gap:24px}.model-shot{background:var(--panel);border:1px solid var(--line);border-radius:4px;overflow:hidden}.model-shot>a{display:block}.model-shot img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#080808}.model-shot-copy{padding:18px 20px 20px}.model-shot h3{font-size:22px;margin-bottom:10px}.model-shot p{font-size:14px;line-height:1.7}.model-shot .details-label{margin-top:14px}.model-shot>a:hover h3{color:var(--accent)}.anchor-target{display:block;position:relative;height:0;scroll-margin-top:110px}.tools-column{align-self:start}.tools-column .tool-card{overflow:hidden}.models-column{min-width:0}
@media(min-width:1100px) and (min-height:700px){.tools-column{position:sticky;top:110px}}
@media(max-width:760px){.static-model-list{gap:20px}.model-shot-copy{padding:16px}.model-shot h3{font-size:21px}.model-shot p{font-size:14px}.anchor-target{scroll-margin-top:140px}}

.model-shot-actions{border-top:1px solid var(--line);padding:0 20px}.model-shot-actions>a{display:inline-flex;align-items:center;gap:18px;min-height:46px;font-size:14px;color:var(--muted)}.model-shot-actions>a:hover{color:var(--accent)}

.store-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
/* Shared layout: complete plugin list beside a vertical image gallery. */
.opening-showcase{grid-template-columns:minmax(260px,.8fr) minmax(0,1.7fr);gap:40px}
.tools-column{position:static}
.plugin-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.plugin-list li{border-bottom:1px solid var(--line)}
.plugin-list a{display:block;padding:16px 0}
.plugin-title{display:flex;justify-content:space-between;gap:12px;font-size:19px;font-weight:600;line-height:1.35}
.plugin-title>span{color:var(--accent);font-size:17px}
.plugin-description{display:block;font-size:13px;color:var(--muted);margin-top:5px}
.plugin-store{display:block;font-size:12px;color:var(--accent);margin-top:7px}
.plugin-list a:hover .plugin-title{color:var(--accent)}
.plugin-demo{display:flex;justify-content:space-between;gap:12px;padding:16px 0;font-size:13px;color:var(--muted)}
.plugin-demo:hover{color:var(--accent)}
.models-gallery-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 20px;margin-bottom:20px;min-height:32px}
.models-gallery-heading h1,.models-gallery-heading h2{font-size:25px}
.models-gallery-heading>a{font-size:14px;color:var(--accent)}
.models-gallery-heading>p{font-size:13px}
.model-photo{border:1px solid var(--line);border-radius:4px;overflow:hidden;background:var(--panel)}
.models-gallery-photo{display:block;position:relative;padding:0;width:100%;background:#080808}
.models-gallery-photo img{width:100%;height:auto;object-fit:contain}
.photo-enlarge{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:34px;height:34px;background:#101010d9;border:1px solid #666;border-radius:3px;font-size:23px}
.models-gallery-photo:hover .photo-enlarge{border-color:var(--accent);color:var(--accent)}
.models-gallery-caption{padding:16px 20px 10px}
.models-gallery-caption h3{font-size:20px}
.models-gallery-caption>p{font-size:13px;margin-top:4px}
.model-store-links{display:flex;flex-wrap:wrap;gap:0 24px;margin-top:8px}
.model-store-links a{display:inline-flex;align-items:center;gap:9px;min-height:44px;font-size:14px;font-weight:600;color:var(--accent)}
.model-store-links a:hover{text-decoration:underline;text-underline-offset:4px}
.model-store-links .fab-link{color:var(--muted);font-weight:400}
.all-images{width:100%;margin-top:24px}
.lightbox-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:14px}
.lightbox-frame img{max-height:65vh}
.site-header nav a[aria-current=page]{color:var(--accent);background:var(--raised)}
@media(min-width:1100px) and (min-height:1100px){.tools-column{position:sticky;top:110px}}
@media(max-width:760px){.opening-showcase{grid-template-columns:1fr;gap:28px}.plugin-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}.plugin-title{font-size:17px}.plugin-description{font-size:12px}.plugin-store{font-size:11px}.plugin-list a{padding:14px 0}.models-gallery-caption{padding:14px 16px 8px}.models-gallery-heading h1,.models-gallery-heading h2{font-size:24px}.lightbox-frame img{max-height:60vh}.lightbox-actions .button{font-size:12px}}
@media(max-width:360px){.plugin-list{grid-template-columns:1fr}.model-store-links{gap:0 16px}.model-store-links a{font-size:13px}}
