.tool-hero{padding:150px 0 90px;position:relative;overflow:hidden;background:var(--light);}
    .tool-hero-blob{position:absolute;border-radius:50%;filter:blur(110px);pointer-events:none;}
    .blob-a{width:580px;height:580px;background:rgba(78,101,255,.13);top:-15%;right:-5%;}
    .blob-b{width:420px;height:420px;background:rgba(255,107,107,.10);bottom:-10%;left:-8%;}
    .tool-kicker{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:100px;background:rgba(78,101,255,.08);border:1px solid rgba(78,101,255,.2);color:var(--secondary);font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px;}
    .tool-hero-title{font-size:clamp(2.6rem,5.5vw,4.4rem);font-weight:700;letter-spacing:-.04em;line-height:1.06;margin-bottom:20px;}
    .tool-hero-sub{font-size:1.05rem;color:var(--muted);line-height:1.75;max-width:480px;margin-bottom:36px;}
    .tool-stat-strip{display:flex;gap:32px;flex-wrap:wrap;padding-top:36px;margin-top:36px;border-top:1px solid var(--border);}
    .tool-stat-val{font-family:'Clash Display',sans-serif;font-size:1.6rem;font-weight:700;letter-spacing:-.03em;color:var(--dark);}
    .tool-stat-lbl{font-size:.78rem;color:var(--muted);margin-top:3px;}

    /* Generator mockup */
    .gen-ui{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-lg);}
    .gen-ui-top{padding:14px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:10px;}
    .gen-win-dots{display:flex;gap:6px;}
    .gen-wd{width:11px;height:11px;border-radius:50%;}
    .gen-body{display:grid;grid-template-columns:1fr 200px;min-height:400px;}
    .gen-canvas{background:#0A0A12;position:relative;overflow:hidden;}
    .gen-canvas img{width:100%;height:100%;object-fit:cover;opacity:.9;}
    .gen-canvas-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(78,101,255,.08),transparent);}
    .gen-canvas-badge{position:absolute;bottom:14px;left:14px;background:rgba(0,0,0,.7);backdrop-filter:blur(8px);color:#fff;font-family:monospace;font-size:.72rem;padding:6px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.08);}
    .gen-sidebar{background:var(--light);border-left:1px solid var(--border);padding:16px;display:flex;flex-direction:column;gap:12px;}
    .gen-field-label{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:5px;}
    .gen-select{width:100%;padding:7px 10px;border-radius:8px;border:1.5px solid var(--border);font-family:'Plus Jakarta Sans',sans-serif;font-size:.78rem;background:var(--surface);outline:none;color:var(--dark);}
    .gen-slider-wrap{display:flex;align-items:center;gap:8px;}
    .gen-slider{flex:1;accent-color:var(--secondary);width:100%;}
    .gen-slider-val{font-size:.75rem;font-weight:700;color:var(--secondary);width:28px;text-align:right;}
    .gen-prompt-bar{padding:14px 18px;border-top:1px solid var(--border);display:flex;align-items:center;gap:10px;background:var(--surface);}
    .gen-prompt-input{flex:1;border:1.5px solid var(--border);border-radius:10px;padding:9px 14px;font-family:'Plus Jakarta Sans',sans-serif;font-size:.83rem;outline:none;background:var(--light);color:var(--dark);transition:border-color .2s;}
    .gen-prompt-input:focus{border-color:var(--secondary);}
    .gen-prompt-input::placeholder{color:var(--muted);}
    .gen-btn{padding:9px 20px;border-radius:10px;background:var(--secondary);color:#fff;font-family:'Clash Display',sans-serif;font-weight:600;font-size:.83rem;border:none;cursor:pointer;display:flex;align-items:center;gap:6px;white-space:nowrap;transition:all .2s;}
    .gen-btn:hover{background:var(--dark);transform:translateY(-1px);}

    /* Gallery masonry-style */
    .gallery-section{padding:100px 0;background:#fff;}
    .gallery-masonry{columns:3;gap:14px;}
    .gallery-masonry-item{break-inside:avoid;margin-bottom:14px;border-radius:14px;overflow:hidden;position:relative;cursor:pointer;border:1px solid var(--border);}
    .gallery-masonry-item img{width:100%;display:block;transition:transform .4s ease;}
    .gallery-masonry-item:hover img{transform:scale(1.04);}
    .gallery-masonry-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(15,23,42,.75),transparent 55%);opacity:0;transition:opacity .3s;display:flex;flex-direction:column;justify-content:flex-end;padding:14px;}
    .gallery-masonry-item:hover .gallery-masonry-overlay{opacity:1;}
    .gm-lbl{font-size:.72rem;font-weight:600;color:#fff;}
    .gm-style{font-size:.62rem;color:rgba(255,255,255,.6);}

    .how-section{padding:100px 0;background:var(--light);}
    .how-step{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:32px 28px;height:100%;transition:all .3s ease;}
    .how-step:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:rgba(78,101,255,.22);}
    .how-num{font-family:'Clash Display',sans-serif;font-size:3rem;font-weight:700;letter-spacing:-.05em;color:rgba(78,101,255,.2);line-height:1;margin-bottom:16px;}
    .how-title{font-size:1.1rem;font-weight:700;margin-bottom:10px;}
    .how-desc{font-size:.875rem;color:var(--muted);line-height:1.7;}

    .feat-section{padding:100px 0;background:#fff;}
    .feat-item{display:flex;gap:16px;align-items:flex-start;padding:22px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);transition:all .22s ease;}
    .feat-item:hover{border-color:rgba(78,101,255,.22);box-shadow:var(--shadow-sm);}
    .feat-ico{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.15rem;flex-shrink:0;}

    .tool-cta{padding:90px 0;background:var(--light);}
    .tool-cta-inner{background:var(--dark);border-radius:var(--r-lg);padding:80px 60px;text-align:center;position:relative;overflow:hidden;}
    .tool-cta-inner::after{content:'';position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(78,101,255,.25),transparent 65%);bottom:-20%;right:-8%;pointer-events:none;}
    .tool-cta-title{font-size:clamp(2.2rem,4.5vw,3.4rem);font-weight:700;color:#fff;letter-spacing:-.04em;margin-bottom:16px;}
    .tool-cta-sub{color:rgba(255,255,255,.5);font-size:1rem;margin-bottom:36px;}

    @media(max-width:991px){.tool-hero{padding:130px 0 60px;}.gallery-masonry{columns:2;}.how-section,.feat-section,.gallery-section,.tool-cta{padding:70px 0;}.gen-body{grid-template-columns:1fr;}.gen-sidebar{border-left:none;border-top:1px solid var(--border);flex-direction:row;flex-wrap:wrap;}.tool-cta-inner{padding:56px 28px;}}
    @media(max-width:575px){.gallery-masonry{columns:1;}}