/* PolyForge: original hardware, warm light and a quiet geometric world. */
.product-polyforge{--product-accent:#ffb879;--aqua:#ffb879;--iris:#e9959e;--muted:#b4afc1;--steel:#3b3446;--surface:#1b1925;--mist:#f5f0e9;background:#101019;color:var(--mist);padding-top:calc(var(--navh) + 1.4rem)}
.forge-wrap{max-width:1360px}
.forge-masthead{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.forge-masthead .back{margin:0;color:#b5a9ba;font-size:.7rem}
.forge-edition{font-size:.65rem;letter-spacing:.13em;color:#a69aad}
.forge-product-nav{display:flex;justify-content:space-between;align-items:center;gap:2rem;border-bottom:1px solid #ffffff19;padding:1.7rem 0 1.2rem}
.forge-brand{display:flex;align-items:center;gap:.75rem;flex-shrink:0;font-size:1.65rem;letter-spacing:-.05em;font-weight:700}
.forge-product-nav>div{display:flex;gap:1.7rem;align-items:center;flex-wrap:wrap}
.forge-product-nav :is(a,button){font:inherit;font-size:.82rem;background:none;border:0;padding:.4rem 0;color:#cfc6d4;cursor:pointer;text-decoration:none}
.forge-product-nav :is(a,button):hover{color:#ffca9c}
.forge-product-nav :is(a,button):focus-visible{outline:2px solid #ffb879;outline-offset:6px}
.forge-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr);gap:3.5rem;align-items:center;min-height:620px;padding:5rem 0 4.7rem}
.forge-hero .eyebrow{font-size:.63rem;color:#d4aa87;letter-spacing:.13em;max-width:44ch;line-height:1.8}
.product-polyforge .forge-hero h1{font-size:clamp(3rem,5.65vw,5.3rem);line-height:1.04;letter-spacing:-.065em;margin-top:1.2rem}
.forge-hero h1 em{color:#ffbc87}
.forge-hero-copy>p{font-size:1.05rem;line-height:1.8;color:#bdb4c5;max-width:47ch;margin-top:1.8rem;white-space:pre-line}
.forge-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}
.product-polyforge .btn{font-size:.65rem;letter-spacing:.08em}
.product-polyforge .btn--primary{background:linear-gradient(115deg,#ffca8c,#ef999a);color:#27141c;box-shadow:0 12px 45px -18px #ffad73aa}
.product-polyforge .btn--ghost{border-color:#847087;background:#251f2c99;color:#efe7ef}
.forge-status{display:flex;gap:.6rem;align-items:center;font-size:.65rem;color:#a9a0b6;margin-top:1.4rem;line-height:1.6}
.forge-status>span{width:5px;height:5px;border-radius:50%;background:#95d8b9;box-shadow:0 0 12px #95d8b944;flex-shrink:0}
.forge-workspace{min-width:0;margin:1rem 0 0;position:relative;transform:perspective(1200px) rotateY(-4deg) rotateZ(1deg);border:1px solid #a38b865c;border-radius:14px;background:#181820;box-shadow:0 30px 90px #0008,0 0 90px -55px #f7a568aa;overflow:hidden}
.forge-workspace::after{content:"";position:absolute;inset:0;border:1px solid #ffdfb510;border-radius:inherit;pointer-events:none}
.forge-workspace-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.1rem;font-size:.58rem;color:#d3c6c0;letter-spacing:.14em;text-transform:uppercase;background:#24222b}
.forge-colour-bars{display:flex;gap:4px}
.forge-colour-bars i{height:4px;width:15px;border-radius:1px;background:#84a9d0}
.forge-colour-bars i:nth-child(2){background:#f0c150}.forge-colour-bars i:nth-child(3){background:#df777b}.forge-colour-bars i:nth-child(4){background:#72c9ab}
.product-polyforge .forge-screen{display:block;margin:0;border-block:1px solid #ffffff10;background:#171821}
.product-polyforge .forge-screen img{display:block;width:100%;height:auto;border:0;border-radius:0;cursor:zoom-in}
.forge-workspace figcaption{font-size:.72rem;color:#ab9eb3;padding:.9rem 1.1rem}
.forge-scene{aspect-ratio:1.3;background:radial-gradient(at 50% 75%,#35282e,#151824 65%)}
.forge-world{display:block;width:100%;height:100%;overflow:visible}
.forge-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-block:1px solid #ffffff1c;padding:2.2rem 0;margin-bottom:5.5rem}
.forge-overview>section{padding:0 2.1rem;border-left:1px solid #ffffff18}
.forge-overview>section:first-child{border-left:0;padding-left:0}
.forge-card-number{font-size:.62rem;color:#ffb879;letter-spacing:.1em}
.forge-overview h2{font-size:1.28rem;line-height:1.35;margin:1rem 0 .8rem;letter-spacing:-.025em}
.forge-overview p{font-size:.89rem;color:#b3aabc;line-height:1.85;white-space:pre-line}
.forge-story{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:5rem;margin-bottom:4.5rem;scroll-margin-top:120px}
.forge-story .eyebrow{font-size:.65rem;color:#d4aa87}
.forge-story h2{font-size:clamp(2rem,3.8vw,3.5rem);line-height:1.12;letter-spacing:-.05em;max-width:15ch;margin-top:1.1rem}
.forge-story .product-copy{font-size:1.05rem;line-height:1.85;padding-top:1.8rem}
.forge-story .product-copy p{color:#beb4c6}
.forge-gallery{margin-bottom:4rem}
.forge-resources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-bottom:4rem}
.forge-resource{position:relative;min-width:0;border:1px solid #6a535b66;border-radius:20px;padding:2.5rem;background:linear-gradient(135deg,#30212b99,#1a1924cc);scroll-margin-top:120px;overflow:hidden}
.forge-resource .eyebrow{color:#d4aa87;font-size:.6rem;letter-spacing:.15em;margin:2rem 0 1.2rem}
.forge-resource h2{font-size:clamp(1.8rem,2.5vw,2.5rem);line-height:1.2;letter-spacing:-.04em;max-width:19ch}
.forge-resource>p{font-size:.95rem;color:#b8aebf;line-height:1.8;margin:1rem 0 1.7rem;max-width:48ch;white-space:pre-line}
.forge-resource-symbol{display:grid;place-items:center;border:1px solid #d1a6a14d;border-radius:12px;width:48px;height:48px;color:#ffc793;font-size:1.6rem;background:#f5b68309}
.forge-resource .forge-empty{padding:1rem;border:1px dashed #8b758555;border-radius:8px;font-size:.85rem;color:#aa9bb0;background:#16141b55;margin-bottom:0}
.forge-resource .dist{padding:0;background:none;border:0;margin-top:1.5rem}
.forge-resource .dist__eyebrow,.forge-resource .dist__sub{display:none}
.forge-resource .dl{margin:0}
.forge-release{max-width:620px;margin-bottom:3rem}
.product-polyforge .product-return{border-color:#ffffff1a;padding-top:2rem}
.product-polyforge :is(#polyforge-overview,#product-content){scroll-margin-top:110px}
.backdrop-polyforge{--fx-base:#101019;background:#101019;color:#e0b0aa}
.forge-ambient{inset:-10%;background:radial-gradient(ellipse at 90% 15%,#c0874e1a,transparent 50%),radial-gradient(ellipse at 0% 80%,#946b9c1a,transparent 50%);animation:forge-ambient-drift 18s ease-in-out infinite alternate}
.forge-grid-plane{inset:-60%;transform:perspective(800px) rotateX(57deg) rotateZ(-25deg);opacity:.22;mask-image:radial-gradient(ellipse,#000,transparent 64%);overflow:hidden}
.forge-grid-scroll{position:absolute;inset:-80px;background:linear-gradient(#c8b5d01c 1px,transparent 1px) 0 0/80px 80px,linear-gradient(90deg,#c8b5d01c 1px,transparent 1px) 0 0/80px 80px;animation:forge-grid-drift 22s linear infinite}
.forge-wireframe{width:440px;height:440px;right:-12%;top:3%;opacity:.18;stroke-width:.65;animation:forge-wireframe-drift 22s ease-in-out infinite alternate}
.forge-world-backdrop{width:min(850px,75vw);height:650px;right:-8%;bottom:-15%;opacity:.2}
.forge-ember{width:3px;height:3px;background:#ffc18d;opacity:.3;box-shadow:0 0 10px #ffb67766;animation:forge-ember-drift 12s ease-in-out infinite alternate}
.forge-ember-a{left:8%;top:55%}.forge-ember-b{left:72%;top:18%;animation-delay:-4s}.forge-ember-c{left:42%;top:80%;animation-delay:-8s}
.forge-world-island{animation:forge-island-drift 8s ease-in-out infinite alternate}
.forge-world-orbit{animation:forge-orbit-turn 24s linear infinite;transform-origin:390px 350px}
.forge-world-sparks{animation:forge-spark-drift 7s ease-in-out infinite alternate}
.product-polyforge :is(.forge-grid-scroll,.forge-world-island,.forge-world-orbit,.forge-world-sparks){animation-play-state:var(--product-motion,running)}
body:has(.product-polyforge) .nav.scrolled{background:#111019f5;border-color:#ffb87926}
body:has(.product-polyforge) .footer{background:#111019}
@keyframes forge-island-drift{from{transform:translateY(-7px)}to{transform:translateY(10px)}}
@keyframes forge-orbit-turn{to{stroke-dashoffset:-180}}
@keyframes forge-spark-drift{from{transform:translateY(12px);opacity:.5}to{transform:translateY(-18px);opacity:.9}}
@keyframes forge-grid-drift{to{transform:translate3d(80px,80px,0)}}
@keyframes forge-wireframe-drift{from{transform:rotate(-12deg) translateY(-10px)}to{transform:rotate(12deg) translateY(30px)}}
@keyframes forge-ambient-drift{from{transform:translate3d(-3%,-2%,0)}to{transform:translate3d(4%,3%,0)}}
@keyframes forge-ember-drift{from{transform:translate3d(-10px,20px,0);opacity:.1}to{transform:translate3d(12px,-35px,0);opacity:.5}}
@media(max-width:1000px){.forge-hero{gap:2rem;padding-block:4rem;min-height:540px}.forge-actions{gap:.65rem}.product-polyforge .btn{font-size:.6rem}.forge-story{gap:2.5rem}.forge-resource{padding:2rem}.forge-overview>section{padding-inline:1.5rem}}
@media(max-width:760px){.forge-hero{grid-template-columns:1fr;gap:2.5rem;padding:3rem 0}.product-polyforge .forge-hero h1{font-size:clamp(3rem,9.4vw,4.7rem);max-width:12ch}.forge-hero-copy>p{max-width:60ch}.forge-workspace{width:100%;transform:rotate(1deg);margin-bottom:1rem}.forge-product-nav{gap:1rem;align-items:start}.forge-product-nav>div{gap:.8rem;justify-content:flex-end}.forge-product-nav :is(a,button){font-size:.73rem}.forge-brand{font-size:1.35rem}.forge-story{grid-template-columns:1fr;gap:1rem}.forge-story h2{max-width:22ch}.forge-story .product-copy{padding-top:0}.forge-resources{grid-template-columns:1fr}.forge-overview{margin-bottom:3.5rem}.forge-overview h2{font-size:1.1rem}.forge-overview p{font-size:.82rem}.forge-overview>section{padding-inline:1rem}.forge-edition{display:none}.forge-world-backdrop{width:125vw;right:-35%;opacity:.14}.forge-resource .btn{font-size:.65rem}}
@media(max-width:500px){.forge-product-nav{flex-direction:column;gap:.5rem}.forge-product-nav>div{justify-content:flex-start;gap:1.5rem}.forge-overview{grid-template-columns:1fr;padding:0}.forge-overview>section{border-left:0;border-top:1px solid #ffffff18;padding:1.6rem 0}.forge-overview>section:first-child{border-top:0}.forge-overview h2{font-size:1.25rem;margin:.6rem 0}.forge-overview p{font-size:.9rem}.forge-workspace-top{padding:.8rem;font-size:.5rem}.forge-colour-bars i{width:10px}.forge-resource{padding:1.7rem}.forge-status{font-size:.6rem}.forge-actions{flex-direction:column;align-items:stretch}.forge-actions .btn{justify-content:center;min-height:46px}}
@media(prefers-reduced-motion:reduce){.product-polyforge *{animation:none!important}.forge-workspace{transform:none}}

.forge-resources{grid-template-columns:repeat(3,minmax(0,1fr))}.forge-resource{padding:2rem}.forge-resource h2{font-size:clamp(1.65rem,2.3vw,2.2rem)}@media(max-width:1100px){.forge-resources{grid-template-columns:1fr}.forge-resource h2{max-width:26ch}}

/* The temporary landing page shares PolyForge's identity, with its own compact layout. */
.product-polyforge-wip{min-height:calc(100svh - 110px);padding-bottom:3rem}
.product-polyforge-wip .forge-world-backdrop{display:none}
.forge-wip-masthead{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.8rem 0;border-bottom:1px solid #ffffff1c}
.forge-wip-badge{display:inline-flex;align-items:center;gap:.65rem;padding:.65rem .9rem;border:1px solid #d8b2795c;border-radius:100px;background:#d8b2790a;color:#f5ca92;font-size:.65rem;letter-spacing:.07em;line-height:1.5}
.forge-wip-badge>span{width:6px;height:6px;border-radius:50%;background:#f5ca92;box-shadow:0 0 14px #f5ca9255}
.forge-wip-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:4rem;padding:clamp(3rem,7vw,6rem) 0 2rem}
.forge-wip-copy{min-width:0}
.forge-wip-copy .eyebrow{color:#d4aa87;font-size:.64rem;letter-spacing:.1em;line-height:1.8}
.product-polyforge .forge-wip-copy h1{font-size:clamp(3rem,5.4vw,5.3rem);line-height:1.06;letter-spacing:-.055em;max-width:12ch;margin:1.2rem 0 1.6rem;overflow-wrap:anywhere;white-space:pre-line}
.forge-wip-intro{max-width:44ch;font-size:1.12rem;line-height:1.75;color:#e2d9e4;white-space:pre-line}
.forge-wip-message{max-width:49ch;font-size:.98rem;line-height:1.8;color:#b4aabd;margin-top:1.1rem;white-space:pre-line}
.forge-wip-scene{position:relative;min-width:0;margin:0;border:1px solid #e4bc9829;border-radius:26px;background:radial-gradient(ellipse at 55% 65%,#826f7c1f,transparent 65%),linear-gradient(145deg,#27232d88,#161520bb);box-shadow:0 35px 80px -30px #0008;transform:rotate(1.5deg)}
.forge-wip-scene-label{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.3rem 1.5rem;color:#c7b6c3;font-size:.6rem;letter-spacing:.12em;text-transform:uppercase}
.forge-wip-scene-label>span:last-child{color:#ffbc87;font-size:1rem}
.forge-wip-world{aspect-ratio:1.3;overflow:hidden;border-block:1px solid #ffffff0a}
.forge-wip-scene figcaption{display:flex;justify-content:space-between;gap:1rem;padding:1.1rem 1.5rem;color:#b8a4b5;font-size:.58rem;letter-spacing:.08em;line-height:1.6}
@media(max-width:1000px){.forge-wip-hero{gap:2rem}.forge-wip-masthead{gap:1rem}.forge-wip-badge{font-size:.6rem}.forge-wip-intro{font-size:1rem}}
@media(max-width:760px){.forge-wip-hero{grid-template-columns:1fr;gap:3rem;padding-top:2.5rem}.product-polyforge .forge-wip-copy h1{font-size:clamp(2.8rem,9vw,4.7rem);max-width:14ch}.forge-wip-scene{margin:0 .4rem;transform:rotate(1deg)}.forge-wip-copy .eyebrow{font-size:.57rem}.forge-wip-masthead{flex-wrap:wrap;padding-block:1.5rem}.forge-wip-badge{padding:.55rem .7rem}.forge-wip-scene-label{font-size:.53rem}}
@media(prefers-reduced-motion:reduce){.forge-wip-scene{transform:none}}
