/* Groove Factory — personalized hardware modal system */
.gf-hw-modal{position:fixed;inset:0;z-index:180;display:none;align-items:center;justify-content:center;padding:26px;background:rgba(1,6,16,.93);backdrop-filter:blur(8px)}
.gf-hw-modal.open{display:flex}
.gf-hw-dialog{position:relative;width:min(1480px,96vw);height:min(900px,92vh);overflow:hidden;background:#061326;border:1px solid #355071;box-shadow:0 30px 100px rgba(0,0,0,.55);display:grid;grid-template-columns:minmax(0,1.6fr) minmax(340px,.62fr)}
.gf-hw-close{position:absolute;z-index:10;right:22px;top:14px;width:52px;height:52px;border:0;background:transparent;color:#fff;font:300 48px/1 Arial,sans-serif;cursor:pointer;opacity:.95}
.gf-hw-close:hover{color:#8bb9ff}
.gf-hw-media{position:relative;min-width:0;background:#020817;display:flex;flex-direction:column}
.gf-hw-main{position:relative;flex:1;min-height:0;overflow:hidden;background:#020817}
.gf-hw-main img{width:100%;height:100%;object-fit:contain;object-position:center;display:block}
.gf-hw-main:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 70%,rgba(2,8,23,.13))}
.gf-hw-counter{position:absolute;left:24px;bottom:20px;z-index:2;padding:8px 11px;background:rgba(2,8,23,.68);border:1px solid rgba(139,185,255,.25);color:#dce7f9;font-size:11px;letter-spacing:.14em}
.gf-hw-arrow{position:absolute;z-index:4;top:50%;transform:translateY(-50%);width:50px;height:62px;border:1px solid #355071;background:rgba(4,16,34,.76);color:#fff;font-size:31px;cursor:pointer}
.gf-hw-arrow:hover{background:#0a2346}.gf-hw-prev{left:18px}.gf-hw-next{right:18px}
.gf-hw-thumbs{height:128px;display:grid;grid-template-columns:repeat(6,1fr);gap:6px;padding:8px;background:#051024;border-top:1px solid #29405f}
.gf-hw-thumb{appearance:none;border:1px solid transparent;padding:0;background:#020817;overflow:hidden;cursor:pointer;min-width:0}
.gf-hw-thumb img{width:100%;height:100%;object-fit:cover;display:block;opacity:.66;transition:.2s}.gf-hw-thumb:hover img,.gf-hw-thumb.active img{opacity:1}.gf-hw-thumb.active{border-color:#8bb9ff}
.gf-hw-copy{padding:68px 48px 38px;overflow:auto;background:linear-gradient(180deg,#07172e 0%,#061326 100%)}
.gf-hw-copy .eyebrow{margin-bottom:20px}.gf-hw-copy h2{font-size:clamp(48px,5vw,82px);line-height:.9;letter-spacing:-3.5px;margin:0 0 22px;color:#fff}.gf-hw-copy h2 span{color:#8bb9ff}
.gf-hw-lead{font-size:20px;line-height:1.45;color:#e2e9f3;margin:0 0 22px}.gf-hw-body{font-size:15px;line-height:1.7;color:#aebbd0;margin:0 0 28px}
.gf-hw-facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #29405f;border-bottom:1px solid #29405f;margin:28px 0}.gf-hw-fact{padding:18px 14px 18px 0;border-bottom:1px solid rgba(41,64,95,.65)}.gf-hw-fact:nth-child(odd){border-right:1px solid #29405f;padding-right:18px}.gf-hw-fact:nth-child(even){padding-left:18px}.gf-hw-fact:nth-last-child(-n+2){border-bottom:0}.gf-hw-fact strong{display:block;color:#8bb9ff;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px}.gf-hw-fact span{color:#dce7f9;font-size:14px;line-height:1.4}
.gf-hw-chain{margin:0 0 30px;padding-left:18px;border-left:2px solid #8bb9ff;color:#c8d4e7;font-size:14px;line-height:1.55}.gf-hw-chain b{color:#fff}
.gf-hw-cta{display:inline-flex;align-items:center;gap:14px;text-decoration:none;color:#fff;border:1px solid #6f9ddb;padding:14px 18px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.gf-hw-cta:hover{background:#0a2d5c}
body.gf-modal-lock{overflow:hidden}
@media(max-width:980px){.gf-hw-modal{padding:10px}.gf-hw-dialog{display:block;height:96vh;overflow:auto}.gf-hw-media{height:58vh}.gf-hw-thumbs{height:95px}.gf-hw-copy{padding:42px 28px 38px}.gf-hw-close{position:fixed;right:20px;top:15px;text-shadow:0 2px 10px #000}.gf-hw-copy h2{font-size:52px}}
@media(max-width:600px){.gf-hw-media{height:50vh}.gf-hw-thumbs{grid-template-columns:repeat(6,86px);overflow-x:auto}.gf-hw-arrow{width:42px;height:54px}.gf-hw-copy{padding:36px 20px 32px}.gf-hw-copy h2{font-size:42px;letter-spacing:-2px}.gf-hw-lead{font-size:17px}.gf-hw-facts{grid-template-columns:1fr}.gf-hw-fact,.gf-hw-fact:nth-child(odd),.gf-hw-fact:nth-child(even){border-right:0;border-bottom:1px solid #29405f;padding:15px 0}.gf-hw-fact:last-child{border-bottom:0}}
