:root{
      --brand:#ef312a;
      --brand-dark:#c8251f;
      --brand-50:#fff1f0;
      --brand-100:#ffe0de;
      --paper:#fffaf8;
      --ink:#171717;
      --ink-soft:#5f5b54;
      --muted:#8b8579;
      --line:rgba(23,23,23,.1);
      --line-dark:rgba(246,240,232,.18);
      --maxw:1240px;
      color-scheme:light;
    }
    footer{margin: 0!important;}

    *,*::before,*::after{box-sizing:border-box}
    html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
    body{
      margin:0;
      min-width:320px;
      color:var(--ink);
      background:var(--paper);
      font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      overflow-x:hidden;
    }
    body::before{
      content:"";
      position:fixed;
      inset:0;
      z-index:-2;
      pointer-events:none;
      background:
        linear-gradient(90deg,rgba(239,49,42,.045) 1px,transparent 1px),
        linear-gradient(rgba(239,49,42,.035) 1px,transparent 1px),
        radial-gradient(circle at 80% 12%,rgba(239,49,42,.1),transparent 28%),
        radial-gradient(circle at 12% 62%,rgba(37,183,255,.08),transparent 24%);
      background-size:96px 96px,96px 96px,100% 100%,100% 100%;
    }
    a{color:inherit;text-decoration:none;cursor:pointer}
    img{display:block;max-width:100%}
    video{display:block}
    button{font:inherit;cursor:pointer}
    h1,h2,h3,p{margin:0;line-height:normal}
    :focus-visible{outline:3px solid rgba(239,49,42,.5);outline-offset:3px}

    .wrap{width:min(var(--maxw),calc(100% - 48px));margin:0 auto;line-height:normal}

    /* ========== Buttons ========== */
    .btn{
      min-height:46px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:9px;
      padding:0 22px;
      border-radius:8px;
      border:1px solid var(--brand);
      background:transparent;
      color:var(--brand);
      font-weight:600;
      font-size:15px;
      cursor:pointer;
      transition:transform .22s ease,box-shadow .22s ease,background .22s ease;
    }
    .btn:hover{transform:translateY(-2px);color:var(--brand)}
    .btn-fill:hover{color:#fff !important}
    .btn-fill:focus{color:#fff !important}
    .btn:focus,
    .btn:active:focus,
    .btn.active:focus,
    .btn:active.focus,
    .btn.active.focus{outline:none;outline-offset:0}
    .btn:focus-visible{outline:3px solid rgba(239,49,42,.5);outline-offset:3px}
    .btn:active{transform:translateY(0) scale(.98)}
    .btn-fill{
      padding:0 26px;
      background:var(--brand);
      border-color:var(--brand);
      color:#fff;
      box-shadow:0 18px 44px rgba(239,49,42,.28);
    }
    .btn .arrow{width:16px;height:16px;flex:0 0 auto}

    /* ========== Hero ========== */
    .hero{
      position:relative;
      min-height:100vh;
      min-height:100svh;
      display:flex;
      align-items:center;
      padding:64px 0;
      overflow:hidden;
      background:#fff;
    }
    .hero-glow{
      position:absolute;
      inset:0;
      pointer-events:none;
    }
    .hero-grid{
      position:relative;
      z-index:2;
      display:grid;
      grid-template-columns:minmax(0,.94fr) minmax(480px,1.06fr);
      align-items:center;
      gap:56px;
    }
    /* Product badge matching the AI Rendering hero badge style and motion. */
    .badge{
      width:max-content;
      display:inline-flex;
      align-items:center;
      gap:10px;
      padding:8px 16px;
      background:#fff;
      border:1px solid var(--brand-100);
      border-radius:999px;
      font-size:13px;
      color:var(--brand);
      font-weight:600;
      margin-bottom:22px;
      box-shadow:0 10px 30px rgba(23,23,23,.08);
      line-height: 1.65!important;
    }
    .badge .pulse{width:8px;height:8px;border-radius:50%;background:var(--brand);position:relative;flex:0 0 auto}
    .badge .pulse::after{content:"";position:absolute;inset:-4px;border-radius:50%;background:var(--brand);opacity:.4;animation:pulse 2s ease-out infinite}
    @keyframes pulse{0%{transform:scale(1);opacity:.5}100%{transform:scale(2.2);opacity:0}}
    .hero-title{
      font-size:clamp(36px,4.5vw,62px);
      line-height:1.08;
      letter-spacing:0;
      font-weight:900;
    }
    .hero-title .split{display:block}
    .hero-title .accent{color:var(--brand)}
    .hero-copy{margin-top:26px;max-width:640px}
    .hero-copy p{color:var(--ink-soft);font-size:16px;line-height:1.86}
    .hero-actions{margin-top:32px;display:flex;gap:14px;flex-wrap:wrap}

    .hero-stage{
      position:relative;
      transform-style:preserve-3d;
      perspective:1200px;
    }
    .hero-frame{
      position:relative;
      width:100%;
      aspect-ratio:16/10;
      overflow:hidden;
      background:#111;
      border:10px solid #fff;
      border-radius:24px;
      transform:rotate(1.5deg) translateZ(0);
      box-shadow:0 38px 100px rgba(23,23,23,.18);
    }
    .hero-frame video{
      width:100%;
      height:100%;
      object-fit:cover;
    }
    /* Video controls: play/pause at bottom left; mute toggle at bottom right. */
    .hero-controls{
      position:absolute;
      left:0;
      right:0;
      bottom:0;
      z-index:5;
      display:flex;
      align-items:center;
      justify-content:space-between;
      padding:26px 16px 14px;
      background:linear-gradient(180deg,transparent,rgba(0,0,0,.55));
      color:#fff;
    }
    .control-btn{
      width:40px;
      height:40px;
      flex:0 0 auto;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      border:1px solid rgba(255,255,255,.24);
      border-radius:50%;
      color:#fff;
      background:rgba(8,8,7,.52);
      backdrop-filter:blur(12px);
      -webkit-backdrop-filter:blur(12px);
      box-shadow:0 8px 22px rgba(0,0,0,.28);
      transition:transform .2s ease,background .2s ease,border-color .2s ease;
    }
    .control-btn:hover{transform:scale(1.08);background:rgba(8,8,7,.72);border-color:rgba(255,255,255,.42)}
    .control-btn svg{width:18px;height:18px}
    #playPauseBtn{
      border-color:transparent;
      background:var(--brand);
      box-shadow:0 8px 22px rgba(239,49,42,.42);
    }
    #playPauseBtn:hover{background:var(--brand-dark)}
    /* Floating labels used as visual accents, with copy adapted from the original introduction. */
    .floating-chip{
      position:absolute;
      z-index:7;
      display:flex;
      align-items:center;
      gap:8px;
      min-height:38px;
      padding:0 15px;
      color:var(--ink);
      background:rgba(255,255,255,.92);
      border:1px solid rgba(23,23,23,.08);
      border-radius:999px;
      font-size:12px;
      font-weight:900;
      box-shadow:0 18px 46px rgba(23,23,23,.12);
      backdrop-filter:blur(16px);
      white-space:nowrap;
    }
    .floating-chip i{
      width:7px;height:7px;border-radius:50%;
      background:var(--brand);flex:0 0 auto;
    }
    .chip-1{right:-14px;top:34px;animation:floatA 5s ease-in-out infinite}
    .chip-2{left:-22px;top:46%;animation:floatB 5.8s ease-in-out infinite}
    .chip-3{right:17%;bottom:-16px;animation:floatA 6.4s ease-in-out infinite}
    @keyframes floatA{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
    @keyframes floatB{0%,100%{transform:translateY(0)}50%{transform:translateY(9px)}}

    /* ========== Shared Sections ========== */
    .section{
      position:relative;
      padding:104px 0;
      background:#fff;
      content-visibility:auto;
      contain-intrinsic-size:1px 860px;
    }
    .section.dark{
      color:var(--paper);
      background:linear-gradient(180deg,#101010 0%,#080807 100%);
    }
    .section-head{
      display:flex;
      flex-direction:column;
      align-items:center;
      text-align:center;
      gap:18px;
      margin-bottom:54px;
    }
    .section-title{
      font-size:clamp(30px,4.2vw,56px);
      line-height:1.1;
      font-weight:900;
      letter-spacing:0;
    }
    .section-copy{
      color:var(--ink-soft);
      font-size:18px;
      line-height:1.5;
      max-width:820px;
    }
    .dark .section-copy{color:rgba(246,240,232,.68)}
    .feature-head{
      display:flex;
      flex-direction:column;
      align-items:center;
      text-align:center;
      gap:16px;
      margin-bottom:44px;
    }
    .feature-subtitle{
      font-size:clamp(24px,3vw,38px);
      line-height:1.16;
      font-weight:900;
      letter-spacing:0;
    }
    .feature-description{
      color:var(--ink-soft);
      font-size:18px;
      line-height:1.5;
      max-width:780px;
    }

    /* ========== Use Cases ========== */
    .scene-grid{
      display:grid;
      grid-template-columns:repeat(3,minmax(0,1fr));
      gap:24px;
    }
    .scene-card{
      position:relative;
      min-width:0;
      display:flex;
      flex-direction:column;
      gap:16px;
      padding:14px 14px 20px;
      border:1px solid var(--line);
      border-radius:18px;
      background:#fff;
      box-shadow:0 18px 48px rgba(23,23,23,.05);
      transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
    }
    .scene-card:hover{
      transform:translateY(-4px);
      border-color:var(--brand-100);
      box-shadow:0 26px 68px rgba(239,49,42,.1);
    }
    .scene-video{
      position:relative;
      width:100%;
      aspect-ratio:16/10;
      border-radius:10px;
      background:#1a1d22;
      overflow:hidden;
      flex:0 0 auto;
    }
    .scene-video video{
      width:100%;
      height:100%;
      object-fit:cover;
    }
    .scene-card h3{
      font-size:clamp(18px,1.8vw,22px);
      line-height:1.2;
      font-weight:900;
      padding:0 6px;
    }
    .scene-card p{
      margin-top:8px;
      color:var(--ink-soft);
      line-height:1.76;
      font-size:13px;
      padding:0 6px;
    }

    /* ========== One-Click Generation ========== */
    .oneclick-grid{
      display:grid;
      grid-template-columns:repeat(4,minmax(0,1fr));
      gap:18px;
    }
    .gen-card{
      position:relative;
      border:1px solid rgba(23,23,23,.09);
      border-radius:18px;
      background:#fff;
      box-shadow:0 18px 48px rgba(23,23,23,.05);
      overflow:hidden;
      transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
      cursor:pointer;
    }
    .gen-card:hover{
      transform:translateY(-4px);
      border-color:var(--brand-100);
      box-shadow:0 26px 68px rgba(239,49,42,.12);
    }
    /* Card media: show the source image by default; reveal the video with a scan line on hover. */
    .gen-media{
      position:relative;
      width:100%;
      aspect-ratio:1/1;
      overflow:hidden;
      background:#fff;
    }
    .gen-poster,.gen-video{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
      pointer-events:none;
      user-select:none;
    }
    .gen-video{
      clip-path:inset(0 100% 0 0);
      transition:none; /* Reset immediately on hover exit without a reverse wipe. */
    }
    .gen-card:hover .gen-video{
      clip-path:inset(0 0 0 0);
      transition:clip-path .4s linear;
    }
    /* Generation scan line at 2× speed, revealing the video from left to right. */
    .scan-track{
      position:absolute;
      inset:0;
      pointer-events:none;
      overflow:hidden;
      z-index:2;
    }
    .scan-line{
      position:absolute;
      top:0;
      bottom:0;
      left:-6%;
      width:3px;
      background:linear-gradient(180deg,transparent,var(--brand) 30%,var(--brand) 70%,transparent);
      opacity:0;
    }
    .gen-card:hover .scan-line{
      animation:scanMove .4s linear 1 forwards;
    }
    @keyframes scanMove{
      0%{left:-4%;opacity:1}
      88%{opacity:1}
      100%{left:102%;opacity:0}
    }

    /* ========== Multiple Generation Methods ========== */
    .generation-tabs{
      display:flex;
      justify-content:center;
      flex-wrap:wrap;
      gap:10px;
      margin-top:34px;
    }
    .tab-button{
      min-height:44px;
      padding:0 24px;
      border:1px solid var(--line);
      border-radius:999px;
      background:#fff;
      color:var(--ink-soft);
      font-size:14px;
      font-weight:800;
      transition:all .25s ease;
    }
    .tab-button:hover{border-color:var(--brand);color:var(--brand)}
    .tab-button.active{
      background:var(--brand);
      border-color:var(--brand);
      color:#fff;
      box-shadow:0 12px 30px rgba(239,49,42,.26);
    }
    .models-container{
      position:relative;
      margin-top:40px;
      border:1px solid var(--line);
      border-radius:20px;
      background:#fff;
      box-shadow:0 24px 64px rgba(23,23,23,.07);
      overflow:hidden;
    }
    /* --- Text to 3D --- */
    .text-generation{position:relative;line-height:0}
    .text-generation .background-image{width:100%;height:auto}
    .gen-hotspot{position:absolute;inset:0;pointer-events:none;line-height:1.4}
    .gen-hotspot .generated{pointer-events:auto}
    .generated{
      position:absolute;
      z-index:6;
      display:inline-flex;
      align-items:center;
      gap:7px;
      min-height:38px;
      padding:0 16px;
      border:0;
      border-radius:999px;
      background:var(--brand);
      color:#fff;
      font-size:13px;
      font-weight:800;
      white-space:nowrap;
      box-shadow:0 10px 26px rgba(239,49,42,.4);
      transition:opacity .45s ease,transform .25s ease;
      animation:btnPulse 2.4s ease-in-out infinite;
    }
    .generated::before{
      content:"";
      width:16px;height:16px;flex:0 0 auto;
      background:currentColor;
      -webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="m15.142 2.818l-2.04 1.13L12 3.311L4.5 7.652v.006L12 12v8.69l7.5-4.343V11.5l2-1.17v7.17L12 23l-9.5-5.5v-11L12 1zm3.387-.499a.507.507 0 0 1 .942 0l.253.612a4.37 4.37 0 0 0 2.25 2.326l.718.32a.53.53 0 0 1 0 .962l-.76.338a4.36 4.36 0 0 0-2.218 2.25l-.247.566a.506.506 0 0 1-.934 0l-.246-.565a4.36 4.36 0 0 0-2.22-2.251l-.76-.338a.53.53 0 0 1 0-.963l.718-.32a4.37 4.37 0 0 0 2.251-2.325z"/></svg>') center/contain no-repeat;
      mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="m15.142 2.818l-2.04 1.13L12 3.311L4.5 7.652v.006L12 12v8.69l7.5-4.343V11.5l2-1.17v7.17L12 23l-9.5-5.5v-11L12 1zm3.387-.499a.507.507 0 0 1 .942 0l.253.612a4.37 4.37 0 0 0 2.25 2.326l.718.32a.53.53 0 0 1 0 .962l-.76.338a4.36 4.36 0 0 0-2.218 2.25l-.247.566a.506.506 0 0 1-.934 0l-.246-.565a4.36 4.36 0 0 0-2.22-2.251l-.76-.338a.53.53 0 0 1 0-.963l.718-.32a4.37 4.37 0 0 0 2.251-2.325z"/></svg>') center/contain no-repeat;
    }
    .generated:hover{transform:translateY(-2px)}
    @keyframes btnPulse{
      0%,100%{box-shadow:0 10px 26px rgba(239,49,42,.4),0 0 0 0 rgba(239,49,42,.36)}
      55%{box-shadow:0 10px 26px rgba(239,49,42,.4),0 0 0 12px rgba(239,49,42,0)}
    }
    .connect{
      position:absolute;
      z-index:5;
      height:0;
      border-top:2px dashed rgba(255,255,255,.9);
      filter:drop-shadow(0 1px 2px rgba(0,0,0,.35));
      transform-origin:left center;
      transition:opacity .45s ease;
      animation:dashFlow 1.6s ease-in-out infinite;
    }
    @keyframes dashFlow{
      0%,100%{border-top-color:rgba(255,255,255,.95)}
      50%{border-top-color:rgba(255,255,255,.35)}
    }
    .generated_region{
      position:absolute;
      z-index:4;
      border:2px dashed rgba(255,255,255,.92);
      border-radius:50%;
      background:rgba(255,255,255,.22);
      box-shadow:0 0 0 1px rgba(0,0,0,.08),inset 0 0 30px rgba(255,255,255,.25);
      transition:opacity .45s ease;
      animation:regionSpin 12s linear infinite;
    }
    @keyframes regionSpin{
      from{transform:rotate(0deg)}
      to{transform:rotate(360deg)}
    }
    .gen-result{
      position:absolute;
      z-index:3;
      opacity:0;
      transition:opacity .6s ease;
      pointer-events:none;
    }
    /* Hotspot positions measured as percentages from the original page. */
    .spot-chandelier .generated{left:15.2%;top:15%}
    .spot-chandelier .connect{left:23.6%;top:17.2%;width:18.7%;transform:rotate(6deg)}
    .spot-chandelier .generated_region{left:41.93%;top:10.89%;width:14.77%;height:25.28%}
    .spot-chandelier .gen-result{left:41.02%;top:9.61%;width:14.77%}
    .spot-sofa .generated{left:7.84%;top:39.47%}
    .spot-sofa .connect{left:15.9%;top:43.9%;width:12.5%;transform:rotate(45deg)}
    .spot-sofa .generated_region{left:20.34%;top:56.58%;width:18.18%;height:31.11%}
    .spot-sofa .gen-result{left:19.36%;top:57.56%;width:20.85%}
    .spot-coffee .generated{left:60.71%;top:88.57%}
    .spot-coffee .connect{left:55.6%;top:83.5%;width:8.5%;transform:rotate(38deg)}
    .spot-coffee .generated_region{left:44.94%;top:69.28%;width:11.36%;height:19.45%}
    .spot-coffee .gen-result{left:43.01%;top:60.76%;width:13.89%}
    .spot-lamp .generated{left:77.8%;top:38.5%}
    .spot-lamp .connect{left:66.9%;top:51%;width:12%;transform:rotate(-27deg)}
    .spot-lamp .generated_region{left:52.96%;top:44.34%;width:14.55%;height:24.89%}
    .spot-lamp .gen-result{left:55.68%;top:44.76%;width:7.53%}
    /* --- Image, Multi-View, and Reference-Guided Generation --- */
    .video-generation{
      display:none;
      position:relative;
      aspect-ratio:16/9;
      background:#101010;
      overflow:hidden;
    }
    .video-generation video{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
    }
    .video-generation .gen-2{visibility:hidden}
    .video-generation .generated{
      left:50%;
      bottom:34px;
      transform:translateX(-50%);
      top:auto;
    }
    .video-generation .generated:hover{transform:translateX(-50%) translateY(-2px)}
    .video-generation .connect{
      left:50%;
      bottom:76px;
      height:44px;
      transform:translateX(-1px);
    }

    /* ========== Generation Modes (Dark Theme) ========== */
    .mode-lab{
      display:grid;
      grid-template-columns:.74fr 1fr;
      gap:34px;
      align-items:stretch;
    }
    .mode-list{display:flex;flex-direction:column}
    .mode-card{
      position:relative;
      overflow:hidden;
      flex:1;
      display:flex;
      flex-direction:column;
      justify-content:center;
      gap:12px;
      width:100%;
      padding:24px 22px;
      text-align:left;
      color:rgba(246,240,232,.62);
      background:transparent;
      border:0;
      border-bottom:1px solid var(--line-dark);
      transition:color .25s ease,padding-left .25s ease;
    }
    .mode-card:first-child{border-top:1px solid var(--line-dark)}
    .countdown-bg{
      position:absolute;
      left:0;
      top:0;
      bottom:0;
      width:0;
      background:linear-gradient(90deg,rgba(239,49,42,.2),rgba(239,49,42,.05));
      pointer-events:none;
    }
    .countdown-bg::after{
      content:"";
      position:absolute;
      left:0;
      right:0;
      top:0;
      bottom:0;
      background:linear-gradient(90deg,rgba(239,49,42,0) 0%,rgba(239,49,42,.6) 100%);
    }
    @keyframes countdownFill{
      from{width:0}
      to{width:100%}
    }
    .mode-card.active{color:#fff;padding-left:34px}
    .mode-header{
      position:relative;
      display:flex;
      align-items:center;
      gap:12px;
    }
    .mode-num{
      font-size:13px;
      font-weight:950;
      color:var(--brand);
      letter-spacing:.08em;
    }
    .mode-title{
      font-size:clamp(21px,2.4vw,30px);
      line-height:1.1;
      font-weight:900;
    }
    .mode-description{
      position:relative;
      color:inherit;
      font-size:13px;
      line-height:1.75;
      max-width:420px;
    }
    .modes-preview{
      position:relative;
      overflow:hidden;
      border-radius:18px;
      background:#181818;
      min-height:380px;
      border:1px solid rgba(246,240,232,.1);
    }
    .preview-container{position:absolute;inset:0}
    .preview-container video{
      position:absolute;
      inset:0;
      width:100%;
      height:100%;
      object-fit:cover;
      display:none;
    }
    /* ========== Model Editing ========== */
    .edit-stack{
      display:flex;
      flex-direction:column;
      gap:26px;
    }
    .edit-tool-card{
      display:grid;
      grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
      gap:30px;
      align-items:center;
      padding:30px;
      border:1px solid var(--line);
      border-radius:20px;
      background:#fff;
      box-shadow:0 24px 54px rgba(23,23,23,.06);
      transition:box-shadow .25s ease;
    }
    .edit-tool-card:hover{box-shadow:0 30px 66px rgba(23,23,23,.09)}
    .edit-tool-card.reverse{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)}
    .edit-tool-card.reverse .tool-content{order:2}
    .edit-tool-card.reverse .tool-preview,
    .edit-tool-card.reverse .sprite-preview{order:1}
    .tool-content{min-width:0}
    .tool-header{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      flex-wrap:wrap;
    }
    .tool-title{
      font-size:clamp(22px,2.4vw,30px);
      font-weight:900;
      line-height:1.15;
    }
    .go-create{
      display:inline-flex;
      align-items:center;
      min-height:36px;
      padding:0 14px;
      border:1px solid var(--brand);
      border-radius:8px;
      gap:6px;
      color:var(--brand);
      font-size:14px;
      font-weight:600;
      cursor:pointer;
      transition:transform .2s ease,background .2s ease;
    }
    .go-create:hover{transform:translateY(-2px);background:var(--brand-50)}
    .go-create u{text-decoration:none}
    .go-create svg{width:18px;height:18px}
    .tool-description{
      margin-top:14px;
      color:var(--ink-soft);
      font-size:14px;
      line-height:1.85;
    }
    .tool-preview{
      position:relative;
      width:100%;
      aspect-ratio:16/9;
      border-radius:14px;
      overflow:hidden;
      background:#12100e;
    }
    .tool-preview video{
      width:100%;
      height:100%;
      object-fit:cover;
    }
    /* Slider shared by Color Adjustment and Mesh Optimization. */
    .tool-control{margin-top:26px}
    .slider-container{
      display:flex;
      align-items:center;
      gap:14px;
    }
    .slider-icon{
      width:22px;
      height:22px;
      flex:0 0 auto;
      color:var(--muted);
    }
    .slider-track{
      position:relative;
      flex:1;
      height:6px;
      border-radius:99px;
      background:rgba(23,23,23,.1);
      cursor:pointer;
      touch-action:none;
    }
    .slider-progress{
      position:absolute;
      left:0;
      top:0;
      bottom:0;
      width:0;
      border-radius:99px;
      background:linear-gradient(90deg,var(--brand),#ff6a3d);
    }
    .slider-thumb{
      position:absolute;
      top:50%;
      left:0;
      width:20px;
      height:20px;
      border-radius:50%;
      background:#fff;
      border:5px solid var(--brand);
      transform:translate(-50%,-50%);
      cursor:grab;
      box-shadow:0 4px 14px rgba(239,49,42,.36);
      transition:box-shadow .2s ease;
      z-index:2;
      touch-action:none;
    }
    .slider-thumb:hover{box-shadow:0 4px 18px rgba(239,49,42,.52)}
    /* Color adjustment: full-spectrum hue track with red at both ends; hide the progress fill. */
    #color-slider-track{
      height:10px;
      background:linear-gradient(90deg,#ff0000 0%,#ffff00 16.67%,#00ff00 33.33%,#00ffff 50%,#0000ff 66.67%,#ff00ff 83.33%,#ff0000 100%);
    }
    #color-slider-progress{display:none}
    #color-slider-thumb{border-color:#fff;box-shadow:0 2px 10px rgba(0,0,0,.35),0 0 0 1px rgba(0,0,0,.12)}
    /* Material Editing */
    .sprite-preview{
      position:relative;
      width:100%;
      aspect-ratio:5/3;
      border-radius:14px;
      overflow:hidden;
      background:#eceae6 url('../assets/editing/material-preview-sprite.jpg') no-repeat;
      background-size:600% 600%;
      background-position:0% 0%;
    }
    .material-grid{
      margin-top:24px;
      display:flex;
      flex-direction:column;
      gap:10px;
    }
    .material-row{
      display:grid;
      grid-template-columns:repeat(6,1fr);
      gap:10px;
    }
    .material-item{
      position:relative;
      aspect-ratio:1/1;
      border-radius:10px;
      cursor:pointer;
      overflow:hidden;
      background-size:cover;
      background-position:center;
      transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
    }
    .material-item:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(23,23,23,.14)}
    .material-item.active{
      border-color:var(--brand);
      box-shadow:0 0 0 3px rgba(239,49,42,.3);
    }
    .material-item.active::after{
      content:"";
      position:absolute;
      right:4px;
      bottom:4px;
      width:14px;
      height:14px;
      border-radius:50%;
      background:var(--brand) url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14"><path d="M3 7.5L5.8 10L11 4.5" stroke="white" stroke-width="2" fill="none" stroke-linecap="round" stroke-linejoin="round"/></svg>') center/10px no-repeat;
    }

    /* ========== Multi-Platform Design Workflow ========== */
    .models-grid{
      display:grid;
      grid-template-columns:repeat(5,minmax(0,1fr));
      gap:18px;
    }
    .model-card{
      display:flex;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      gap:16px;
      aspect-ratio:1/1;
      padding:30px 14px 24px;
      border:1px solid rgba(23,23,23,.08);
      border-radius:16px;
      background:rgba(255,255,255,.9);
      backdrop-filter:blur(6px);
      box-shadow:0 14px 34px rgba(23,23,23,.05);
      transition:transform .26s ease,box-shadow .26s ease,border-color .26s ease;
    }
    .model-card:hover{
      transform:translateY(-5px);
      border-color:var(--brand-100);
      box-shadow:0 24px 54px rgba(239,49,42,.12);
    }
    .model-image{
      width:80px;
      height:80px;
      display:grid;
      place-items:center;
    }
    .model-image img{width:100%;height:100%;object-fit:contain}
    .model-name{
      font-size:16px;
      font-weight:600;
      color:var(--ink);
    }

    /* ========== Gallery ========== */
    .work-gallery-grid{
      display:grid;
      grid-template-columns:repeat(5,minmax(0,1fr));
      gap:16px;
    }
    .work-item{
      position:relative;
      aspect-ratio:1/1;
      border-radius:14px;
      overflow:hidden;
      cursor:pointer;
      transition:transform .26s ease,box-shadow .26s ease;
    }
    .work-item:hover{
      transform:translateY(-4px);
      box-shadow:0 22px 48px rgba(23,23,23,.16);
    }
    .work-item video{
      width:100%;
      height:100%;
      object-fit:cover;
      transition:transform .5s ease;
    }
    .work-item:hover video{transform:scale(1.05)}
    .work-item::after{
      content:"";
      position:absolute;
      inset:0;
      border-radius:14px;
      border:2px solid transparent;
      transition:border-color .26s ease;
      pointer-events:none;
    }
    .work-item:hover::after{border-color:rgba(239,49,42,.4)}
    .gallery-more{
      display:flex;
      justify-content:center;
      margin-top:44px;
    }
    .gallery-more .btn{
      width:120px;
      height:36px;
      min-height:36px;
      padding:0;
      font-size:16px;
      border-radius:8px;
      color:var(--brand);
      border:1px solid var(--brand);
      background:transparent;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      text-decoration:none;
      box-shadow:none;
    }
    .gallery-more .btn:hover{
      background:var(--brand);
      color:#fff;
    }
    /* Temporarily hide the gallery CTA while preserving it for later use. */
    .gallery-more{display:none}

    /* ========== CTA ========== */
    .cta-band{
      position:relative;
      padding:100px 0;
      overflow:hidden;
      background:
        radial-gradient(circle at 18% 24%,rgba(255,255,255,.18),transparent 32%),
        radial-gradient(circle at 82% 30%,rgba(255,126,74,.35),transparent 34%),
        radial-gradient(circle at 46% 88%,rgba(126,15,18,.52),transparent 42%),
        linear-gradient(135deg,#7e0f12 0%,#ef312a 42%,#ff5b35 68%,#b41412 100%);
      text-align:center;
      color:#fff;
    }
    .cta-band::before{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(120deg,rgba(255,255,255,.12),transparent 28%,rgba(255,255,255,.08) 64%,transparent),
        radial-gradient(circle at 72% 78%,rgba(255,255,255,.1),transparent 28%);
    }
    .cta-band .wrap{
      position:relative;
      z-index:2;
      display:flex;
      flex-direction:column;
      align-items:center;
    }
    .cta-logos{
      display:flex;
      flex-direction:column;
      align-items:center;
      gap:8px;
      margin-bottom:8px;
      color:#fff;
    }
    .cta-logos svg{display:block}
    .cta-logos .graphic-logo{
      width:120px;
      height:120px;
    }
    .cta-slogan{
      color:#fff;
      font-size:clamp(28px,4vw,50px);
      font-weight:900;
      letter-spacing:.02em;
      margin-bottom:36px;
    }
    .cta-actions{
      display:flex;
      justify-content:center;
      flex-wrap:wrap;
      gap:14px;
    }
    .cta-band .btn{
      width:240px;
      height:52px;
      min-height:52px;
      background:#fff;
      border-color:#fff;
      color:var(--brand);
      box-shadow:0 18px 44px rgba(126,15,18,.22);
    }
    .cta-band .btn:hover{
      background:#fff5f0;
      border-color:#fff5f0;
    }

    /* ========== Reveal Animations ========== */
    .reveal,.reveal-text{
      opacity:0;
      transform:translateY(26px);
      transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);
    }
    .reveal.is-visible,.reveal-text.is-visible{
      opacity:1;
      transform:translateY(0);
    }

    /* ========== Responsive ========== */
    @media (max-width:1080px){
      .hero-grid{grid-template-columns:1fr;gap:44px}
      .hero-stage{max-width:760px}
      .oneclick-grid{grid-template-columns:repeat(2,1fr)}
      .mode-lab{grid-template-columns:1fr}
      .modes-preview{min-height:0;aspect-ratio:16/9}
      .edit-tool-card,.edit-tool-card.reverse{grid-template-columns:1fr}
      .edit-tool-card.reverse .tool-content{order:1}
      .edit-tool-card.reverse .tool-preview,
      .edit-tool-card.reverse .sprite-preview{order:2}
      .models-grid{grid-template-columns:repeat(3,1fr)}
      .work-gallery-grid{grid-template-columns:repeat(4,1fr)}
    }
    @media (max-width:860px){
      .section{padding:76px 0}
      .scene-grid{grid-template-columns:1fr}
      .work-gallery-grid{grid-template-columns:repeat(3,1fr)}
      .models-grid{grid-template-columns:repeat(2,1fr)}
      .chip-2{display:none}
    }
    @media (max-width:640px){
      .hero{padding:40px 0 48px;min-height:100svh}
      .oneclick-grid{grid-template-columns:1fr}
      .work-gallery-grid{grid-template-columns:repeat(2,1fr)}
      .edit-tool-card{padding:20px}
      .generated{min-height:30px;padding:0 10px;font-size:10px}
      .generated_region{border-width:1.5px}
      .chip-1,.chip-3{display:none}
      .hero-frame{border-width:6px;border-radius:18px;transform:rotate(0)}
      .cta-band{padding:100px 0}
    }
    @media (prefers-reduced-motion:reduce){
      *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
      html{scroll-behavior:auto}
    }

    /* ========== English localization layout adjustments ========== */
    html[lang="en"] body{
      font-family:"Segoe UI Variable Text","Segoe UI",-apple-system,BlinkMacSystemFont,Arial,sans-serif;
      line-height:1.65;
      font-synthesis:none;
    }
    html[lang="en"] p{font-weight:400}
    html[lang="en"] h1,
    html[lang="en"] h2,
    html[lang="en"] h3,
    html[lang="en"] .feature-subtitle,
    html[lang="en"] .mode-title,
    html[lang="en"] .tool-title,
    html[lang="en"] .model-name{font-weight:600}
    html[lang="en"] .badge::after{
      content:"SUAPP AIM";
      color:var(--brand);
      font-size:12px;
      font-weight:900;
      letter-spacing:.12em;
    }
    html[lang="en"] .hero-grid{grid-template-columns:minmax(0,1.02fr) minmax(480px,.98fr);gap:52px}
    html[lang="en"] .hero-title{
      max-width:720px;
      font-size:clamp(38px,4vw,58px);
      line-height:1.04;
      letter-spacing:-.035em;
      font-weight:600;
    }
    html[lang="en"] .hero-copy{max-width:680px}
    html[lang="en"] .hero-copy p{font-size:16px;line-height:1.72;color:var(--ink)}
    html[lang="en"] .floating-chip{font-weight:600;letter-spacing:0}
    html[lang="en"] .section-title{font-size:clamp(34px,4vw,52px);letter-spacing:-.03em}
    html[lang="en"] .section-copy{line-height:1.5;color:var(--ink)}
    html[lang="en"] .feature-subtitle{font-size:clamp(26px,2.8vw,36px);letter-spacing:-.025em}
    html[lang="en"] .feature-description{max-width:820px;line-height:1.5;color:var(--ink)}
    html[lang="en"] .scene-card p{font-size:14px;line-height:1.7;color:var(--ink)}
    html[lang="en"] .tab-button{padding:0 22px;font-weight:600}
    html[lang="en"] .generated{font-size:12px;font-weight:600;padding:0 13px}
    html[lang="en"] .mode-lab{grid-template-columns:.86fr 1fr}
    html[lang="en"] .mode-card{padding:22px}
    html[lang="en"] .mode-title{font-size:clamp(20px,2.1vw,27px);letter-spacing:-.02em}
    html[lang="en"] .mode-description{max-width:470px;font-size:14px;line-height:1.65}
    html[lang="en"] .tool-title{letter-spacing:-.02em}
    html[lang="en"] .tool-description{font-size:16px;line-height:1.5;color:var(--ink)}
    html[lang="en"] .cta-logos::after{
      content:"SUAPP AIM";
      color:#fff;
      font-size:28px;
      font-weight:900;
      line-height:1;
      letter-spacing:.08em;
    }
    html[lang="en"] .cta-slogan{font-weight:600;letter-spacing:-.025em}
    @media (max-width:1080px){
      html[lang="en"] .hero-grid{grid-template-columns:1fr}
      html[lang="en"] .mode-lab{grid-template-columns:1fr}
    }
    @media (max-width:640px){
      html[lang="en"] .hero-title{font-size:clamp(36px,8vw,50px)}
      html[lang="en"] .hero-actions{width:100%;flex-direction:column}
      html[lang="en"] .hero-actions .btn{width:100%;min-width:0}
      html[lang="en"] .section-title{font-size:clamp(32px,9vw,44px)}
      html[lang="en"] .generated{min-height:30px;padding:0 8px;font-size:9px}
      html[lang="en"] .video-generation .generated{max-width:calc(100% - 28px);font-size:11px}
      html[lang="en"] .models-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
      html[lang="en"] .model-card{min-width:0}
    }
html[lang="en"] body main,
html[lang="en"] body main * {
  font-family:"Segoe UI Variable Text","Segoe UI",-apple-system,BlinkMacSystemFont,Arial,sans-serif;
}

html[lang="en"] body main .hero .badge {
  min-width:0;
  line-height:inherit;
  text-align:left;
  white-space:normal;
  vertical-align:baseline;
}
