:root{
      --bg:#08040f;
      --pink:#ff2f9a;
      --pink-soft:#ff8ec8;
      --purple:#a855f7;
      --cyan:#28e0ff;
      --text:#f4f1ff;
      --muted:#b9b2d4;
      --line:rgba(255,255,255,.10);
      --line-strong:rgba(255,255,255,.18);
      --card:linear-gradient(160deg,rgba(255,255,255,.065),rgba(255,255,255,.02));
      --radius:16px;
    }
    *,*::before,*::after{box-sizing:border-box}
    html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
    body{
      margin:0;
      background:#08040f;
      color:var(--text);
      font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",sans-serif;
      font-size:16px;
      line-height:1.7;
      overflow-x:hidden;
      -webkit-font-smoothing:antialiased;
    }
    body::before{
      content:"";
      position:fixed;
      inset:0;
      z-index:-1;
      pointer-events:none;
      background:
        radial-gradient(760px 520px at 8% -10%, rgba(255,47,154,.22), transparent 62%),
        radial-gradient(720px 520px at 94% 0%, rgba(168,85,247,.20), transparent 62%),
        radial-gradient(900px 700px at 50% 108%, rgba(40,224,255,.10), transparent 65%),
        linear-gradient(180deg,#0b0517 0%,#0a0513 45%,#07030d 100%);
    }
    img{display:block;max-width:100%}
    a{color:inherit}
    .container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}
    section[id],footer[id]{scroll-margin-top:86px}

    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:8px;
      padding:13px 26px;border-radius:999px;font-size:15px;font-weight:600;
      text-decoration:none;border:1px solid transparent;cursor:pointer;
      font-family:inherit;letter-spacing:.3px;
      transition:transform .25s ease,box-shadow .25s ease,background .25s ease,border-color .25s ease;
    }
    .btn-primary{
      background:linear-gradient(120deg,#ff2f9a,#a855f7);
      color:#fff;
      box-shadow:0 10px 28px rgba(255,47,154,.32);
    }
    .btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(255,47,154,.45)}
    .btn-primary:active{transform:translateY(0) scale(.985)}
    .btn-ghost{
      background:rgba(255,255,255,.05);
      border-color:rgba(255,255,255,.20);
      color:#f4f1ff;
    }
    .btn-ghost:hover{transform:translateY(-2px);background:rgba(255,255,255,.10);border-color:rgba(255,142,200,.55)}

    /* ---------- header ---------- */
    .site-header{
      position:sticky;top:0;z-index:120;
      background:rgba(9,4,18,.82);
      border-bottom:1px solid var(--line);
      backdrop-filter:blur(14px);
      -webkit-backdrop-filter:blur(14px);
    }
    .header-inner{display:flex;align-items:center;gap:16px;min-height:70px}
    .brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}
    .brand-logo{
      width:38px;height:38px;border-radius:11px;overflow:hidden;
      display:flex;align-items:center;justify-content:center;
      background:rgba(255,255,255,.07);border:1px solid var(--line);
    }
    .brand-logo img{width:100%;height:auto;object-fit:contain}
    .brand-text{font-size:17px;font-weight:800;letter-spacing:.6px;color:#fff;white-space:nowrap}
    .nav{margin-left:auto}
    .nav-links{
      display:flex;align-items:center;gap:0;
      list-style:none;margin:0;padding:0;
    }
    .nav-links a{
      display:block;padding:8px 10px;border-radius:9px;
      font-size:14.5px;color:#cfc8e6;text-decoration:none;white-space:nowrap;
      transition:color .22s ease,background .22s ease;
    }
    .nav-links a:hover{color:#fff;background:rgba(255,255,255,.08)}
    .header-cta{padding:10px 20px;font-size:14px;flex-shrink:0}
    .nav-toggle{
      display:none;flex-direction:column;justify-content:center;gap:5px;
      width:42px;height:42px;padding:0 11px;margin-left:10px;
      background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);
      border-radius:12px;cursor:pointer;
    }
    .nav-toggle span{display:block;height:2px;width:100%;background:#fff;border-radius:2px;transition:transform .3s ease,opacity .3s ease}
    .nav-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
    .nav-toggle.is-open span:nth-child(2){opacity:0}
    .nav-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

    /* ---------- hero ---------- */
    .hero{position:relative;overflow:hidden;padding:76px 0 64px}
    .hero-grid-bg{
      position:absolute;inset:0;pointer-events:none;
      background-image:
        linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
      background-size:64px 64px;
      -webkit-mask-image:radial-gradient(circle at 50% 42%,#000,transparent 76%);
      mask-image:radial-gradient(circle at 50% 42%,#000,transparent 76%);
      opacity:.85;
    }
    .hero-glow{
      position:absolute;width:520px;height:520px;border-radius:50%;
      top:-160px;left:-120px;pointer-events:none;
      background:radial-gradient(circle,rgba(255,47,154,.35),transparent 65%);
      filter:blur(20px);
      animation:breathe 9s ease-in-out infinite;
    }
    .hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
    .eyebrow{
      display:inline-flex;align-items:center;gap:8px;
      padding:6px 15px;border-radius:999px;
      border:1px solid rgba(255,47,154,.45);
      background:rgba(255,47,154,.12);
      color:#ffb3d9;font-size:13px;letter-spacing:.5px;
    }
    .eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:#ff2f9a;box-shadow:0 0 10px #ff2f9a}
    .hero h1{
      margin:20px 0 18px;
      font-size:clamp(30px,4.4vw,50px);
      line-height:1.22;font-weight:800;letter-spacing:.5px;color:#fff;
    }
    .hero h1 em{font-style:normal;color:#ff6bb5}
    .hero-lead{margin:0 0 26px;max-width:620px;color:#c4bcdd;font-size:16.5px;line-height:1.85}
    .hero-actions{display:flex;flex-wrap:wrap;gap:14px}
    .hero-points{
      display:flex;flex-wrap:wrap;gap:10px 22px;
      list-style:none;margin:26px 0 0;padding:0;
      font-size:14px;color:#b9b2d4;
    }
    .hero-points li{display:flex;align-items:center;gap:8px}
    .hero-points li::before{
      content:"";width:6px;height:6px;border-radius:50%;
      background:linear-gradient(120deg,#ff2f9a,#a855f7);
      box-shadow:0 0 8px rgba(255,47,154,.8);
    }
    .hero-panel{
      position:relative;padding:22px;border-radius:22px;
      border:1px solid rgba(255,255,255,.13);
      background:linear-gradient(160deg,rgba(255,47,154,.16),rgba(168,85,247,.12) 48%,rgba(255,255,255,.03));
      box-shadow:0 30px 70px rgba(110,20,120,.35);
    }
    .panel-head{display:flex;align-items:center;gap:7px;margin-bottom:16px}
    .panel-dot{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.22)}
    .panel-dot.on{background:#ff2f9a;box-shadow:0 0 10px rgba(255,47,154,.9)}
    .panel-title{margin-left:auto;font-size:12.5px;color:#d8d1f0;letter-spacing:.6px}
    .model-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;list-style:none;margin:0;padding:0}
    .model-list li{
      padding:9px 4px;text-align:center;border-radius:10px;
      background:rgba(255,255,255,.07);
      border:1px solid rgba(255,255,255,.11);
      font-size:12.5px;color:#ece6ff;letter-spacing:.2px;
      animation:floaty 4.5s ease-in-out infinite;
    }
    .model-list li:nth-child(2n){animation-delay:.6s}
    .model-list li:nth-child(3n){animation-delay:1.2s}
    .panel-note{margin:16px 0 0;font-size:12.5px;color:#c9c1e4;line-height:1.6}
    @keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
    @keyframes breathe{0%,100%{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}

    .stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:54px}
    .stat{
      padding:22px 16px;border-radius:var(--radius);text-align:center;
      background:rgba(255,255,255,.045);
      border:1px solid var(--line);
      transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;
    }
    .stat:hover{transform:translateY(-4px);border-color:rgba(255,47,154,.45);box-shadow:0 16px 34px rgba(150,25,130,.22)}
    .stat b{display:block;font-size:27px;font-weight:800;line-height:1.2;color:#fff}
    .stat span{display:block;margin-top:6px;font-size:13px;color:var(--muted)}

    /* ---------- section base ---------- */
    .section{position:relative;padding:74px 0;border-top:1px solid rgba(255,255,255,.06)}
    .section-head{max-width:760px;margin-bottom:36px}
    .h2{
      margin:0;font-size:clamp(24px,3.1vw,34px);line-height:1.32;
      font-weight:800;letter-spacing:.4px;color:#fff;
    }
    .h2::after{
      content:"";display:block;width:52px;height:3px;margin-top:14px;
      border-radius:3px;background:linear-gradient(90deg,#ff2f9a,#a855f7);
    }
    .section-head p{margin:16px 0 0;color:var(--muted);font-size:15.5px;line-height:1.85}
    .h3-sm{margin:0 0 6px;font-size:16.5px;font-weight:700;color:#fff}

    .card{
      background:var(--card);
      border:1px solid var(--line);
      border-radius:var(--radius);
      padding:22px;
      transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
    }
    .card:hover{
      transform:translateY(-4px);
      border-color:rgba(255,47,154,.45);
      box-shadow:0 18px 40px rgba(150,25,130,.24);
    }

    /* ---------- about ---------- */
    .about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:start}
    .about-copy p{color:var(--muted);font-size:15.5px;line-height:1.9;margin:18px 0}
    .about-copy .btn{margin-top:6px}
    .about-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
    .about-list li{
      padding:16px 18px;border-radius:14px;
      background:rgba(255,255,255,.045);
      border:1px solid var(--line);
      transition:transform .3s ease,border-color .3s ease,background .3s ease;
    }
    .about-list li:hover{transform:translateX(4px);border-color:rgba(168,85,247,.5);background:rgba(255,255,255,.07)}
    .about-list strong{display:block;color:#fff;font-size:15.5px;margin-bottom:4px}
    .about-list span{display:block;color:var(--muted);font-size:14px;line-height:1.65}

    /* ---------- scenes ---------- */
    .scene-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(248px,1fr));gap:18px}
    .scene-card{display:flex;flex-direction:column}
    .scene-tag{
      align-self:flex-start;
      padding:3px 10px;border-radius:999px;
      font-size:12px;color:#ffb3d9;
      background:rgba(255,47,154,.14);
      border:1px solid rgba(255,47,154,.35);
      margin-bottom:12px;
    }
    .scene-card h3{margin:0 0 8px;font-size:16.5px;color:#fff;font-weight:700}
    .scene-card p{margin:0;font-size:14px;line-height:1.75;color:var(--muted)}

    .model-cloud{margin-top:30px;padding:24px;border-radius:var(--radius);background:rgba(255,255,255,.035);border:1px solid var(--line)}
    .model-cloud h3{margin:0 0 16px;font-size:16px;color:#fff;font-weight:700}
    .chips{display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin:0;padding:0}
    .chips li{
      padding:6px 13px;border-radius:999px;font-size:13px;color:#ddd6f5;
      background:rgba(255,255,255,.055);
      border:1px solid rgba(255,255,255,.12);
      transition:color .25s ease,border-color .25s ease,transform .25s ease;
    }
    .chips li:hover{color:#fff;border-color:rgba(255,47,154,.55);transform:translateY(-2px)}

    /* ---------- studio media ---------- */
    .studio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
    .studio-item{margin:0}
    .media-box{
      aspect-ratio:4/3;padding:10px;
      display:flex;align-items:center;justify-content:center;
      border-radius:14px;overflow:hidden;
      background:rgba(255,255,255,.05);
      border:1px solid var(--line);
    }
    .media-box img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
    .studio-item figcaption{padding:14px 4px 0}
    .studio-item b{display:block;font-size:15.5px;color:#fff;margin-bottom:4px}
    .studio-item span{display:block;font-size:13.5px;color:var(--muted);line-height:1.65}

    /* ---------- industry ---------- */
    .grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
    .grid-3 p{margin:10px 0 0;font-size:14px;line-height:1.75;color:var(--muted)}

    /* ---------- network ---------- */
    .region-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
    .region{
      padding:18px 20px;border-radius:14px;
      background:rgba(255,255,255,.04);
      border:1px solid var(--line);
      transition:border-color .3s ease,transform .3s ease;
    }
    .region:hover{border-color:rgba(40,224,255,.45);transform:translateY(-3px)}
    .region h3{margin:0 0 6px;font-size:15.5px;color:#fff;font-weight:700}
    .region p{margin:0;font-size:13.5px;color:var(--muted)}
    .network-note{margin:22px 0 0;font-size:14px;color:var(--muted)}

    /* ---------- process ---------- */
    .steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
    .step{
      position:relative;padding:22px 18px;border-radius:var(--radius);
      background:rgba(255,255,255,.04);
      border:1px solid var(--line);
      transition:border-color .3s ease,transform .3s ease;
    }
    .step:hover{border-color:rgba(255,47,154,.45);transform:translateY(-3px)}
    .step-num{
      display:inline-flex;align-items:center;justify-content:center;
      width:32px;height:32px;border-radius:10px;margin-bottom:12px;
      font-size:14px;font-weight:800;color:#fff;
      background:linear-gradient(130deg,#ff2f9a,#a855f7);
      box-shadow:0 8px 18px rgba(255,47,154,.28);
    }
    .step h3{margin:0 0 6px;font-size:15.5px;color:#fff;font-weight:700}
    .step p{margin:0;font-size:13.5px;line-height:1.7;color:var(--muted)}

    /* ---------- case ---------- */
    .case-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:start}
    .case-figure{margin:0}
    .case-figure .media-box{aspect-ratio:16/10}
    .case-figure figcaption{padding-top:14px;font-size:13.5px;color:var(--muted);line-height:1.7}
    .case-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}
    .case-list li{padding:18px 20px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--line)}
    .case-list b{display:block;color:#fff;font-size:15.5px;margin-bottom:5px}
    .case-list span{display:block;font-size:13.5px;color:var(--muted);line-height:1.7}

    /* ---------- review ---------- */
    .review-top{display:grid;grid-template-columns:300px 1fr;gap:24px;align-items:stretch;margin-bottom:26px}
    .score-card{
      padding:26px 22px;border-radius:18px;text-align:center;
      background:linear-gradient(160deg,rgba(255,47,154,.20),rgba(168,85,247,.14));
      border:1px solid rgba(255,47,154,.42);
      box-shadow:0 20px 50px rgba(140,20,120,.28);
    }
    .score-num{font-size:52px;font-weight:800;line-height:1;color:#fff}
    .score-total{font-size:15px;color:#f0c9e4;margin-left:4px}
    .stars{margin:14px 0 8px;font-size:22px;letter-spacing:4px;color:#ffcf4d}
    .score-card p{margin:0;font-size:13.5px;color:#f2e6f4;line-height:1.7}
    .review-text{padding:24px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid var(--line)}
    .review-text p{margin:0;font-size:15px;line-height:1.9;color:var(--muted)}

    .table-wrap{
      overflow-x:auto;
      border-radius:var(--radius);
      border:1px solid var(--line);
      background:rgba(255,255,255,.03);
    }
    table{width:100%;border-collapse:collapse;min-width:680px;font-size:14.5px}
    thead th{
      padding:14px 16px;text-align:left;font-size:13.5px;letter-spacing:.3px;
      background:rgba(255,47,154,.14);color:#fff;font-weight:700;
      border-bottom:1px solid rgba(255,255,255,.12);
    }
    tbody td{padding:14px 16px;text-align:left;color:var(--muted);border-bottom:1px solid rgba(255,255,255,.07);vertical-align:top;line-height:1.7}
    tbody th{padding:14px 16px;text-align:left;color:#fff;font-weight:600;border-bottom:1px solid rgba(255,255,255,.07);vertical-align:top}
    tbody tr:last-child td,tbody tr:last-child th{border-bottom:none}
    tbody tr:hover td,tbody tr:hover th{background:rgba(255,255,255,.04)}
    .hl{color:#ff9ad0;font-weight:600}

    /* ---------- price ---------- */
    .price-note{margin:16px 0 0;font-size:13.5px;color:var(--muted)}

    /* ---------- reviews ---------- */
    .review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
    .quote{margin:0;padding:0;font-size:14.5px;line-height:1.85;color:#e4dff5}
    .reviewer{display:flex;align-items:center;gap:12px;margin-top:18px}
    .avatar{
      width:38px;height:38px;border-radius:50%;flex-shrink:0;
      display:flex;align-items:center;justify-content:center;
      font-size:15px;font-weight:700;color:#fff;
      background:linear-gradient(130deg,#ff2f9a,#a855f7);
    }
    .reviewer b{display:block;font-size:14.5px;color:#fff}
    .reviewer em{display:block;font-style:normal;font-size:12.5px;color:var(--muted)}

    /* ---------- faq ---------- */
    .faq-list{display:grid;gap:12px;max-width:960px}
    .faq-item{
      border-radius:14px;
      background:rgba(255,255,255,.04);
      border:1px solid var(--line);
      padding:0 20px;
      transition:border-color .3s ease,background .3s ease;
    }
    .faq-item[open]{border-color:rgba(255,47,154,.45);background:rgba(255,255,255,.06)}
    .faq-item summary{
      cursor:pointer;list-style:none;
      padding:17px 30px 17px 0;
      font-size:15.5px;font-weight:600;color:#fff;
      position:relative;
    }
    .faq-item summary::-webkit-details-marker{display:none}
    .faq-item summary::after{
      content:"+";position:absolute;right:0;top:50%;
      transform:translateY(-50%);
      font-size:20px;font-weight:400;color:#ff8ec8;
      transition:transform .3s ease;
    }
    .faq-item[open] summary::after{content:"−"}
    .faq-item p{margin:0;padding:0 0 18px;font-size:14.5px;line-height:1.85;color:var(--muted)}

    /* ---------- knowledge ---------- */
    .know-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
    .know-col h3{margin:0 0 16px;font-size:17px;color:#fff;font-weight:700}
    .term-list{margin:0;display:grid;gap:12px}
    .term-list div{padding:14px 16px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid var(--line)}
    .term-list dt{font-size:14.5px;font-weight:700;color:#ff9ad0;margin-bottom:4px}
    .term-list dd{margin:0;font-size:13.5px;line-height:1.7;color:var(--muted)}
    .article-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
    .article-list a{
      display:block;padding:14px 16px;border-radius:12px;text-decoration:none;
      background:rgba(255,255,255,.035);border:1px solid var(--line);
      font-size:14.5px;color:#e4dff5;
      transition:border-color .3s ease,transform .3s ease,background .3s ease;
    }
    .article-list a:hover{border-color:rgba(168,85,247,.55);transform:translateX(4px);background:rgba(255,255,255,.06)}

    /* ---------- partner ---------- */
    .cta-banner{
      display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;
      padding:32px;border-radius:20px;
      background:linear-gradient(135deg,rgba(255,47,154,.18),rgba(168,85,247,.16) 55%,rgba(40,224,255,.10));
      border:1px solid rgba(255,47,154,.32);
      box-shadow:0 24px 60px rgba(120,20,120,.28);
    }
    .cta-banner p{margin:16px 0 0;max-width:640px;font-size:15px;line-height:1.8;color:#ddd6f5}

    /* ---------- contact ---------- */
    .contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:32px;align-items:start}
    .info-list{list-style:none;margin:0 0 22px;padding:0;display:grid;gap:12px}
    .info-list li{display:flex;gap:12px;align-items:baseline;font-size:14.5px;color:var(--muted);line-height:1.7}
    .info-list b{color:#fff;font-weight:600;flex-shrink:0;min-width:74px;font-size:14px}
    .info-list a{color:#ff9ad0;text-decoration:none;border-bottom:1px solid rgba(255,154,208,.35)}
    .info-list a:hover{color:#fff}
    .qr-box{
      display:flex;align-items:center;gap:16px;
      padding:16px;border-radius:14px;
      background:rgba(255,255,255,.05);border:1px solid var(--line);
    }
    .qr-box img{width:118px;height:auto;border-radius:10px;background:#fff;padding:5px}
    .qr-box p{margin:0;font-size:13.5px;color:var(--muted);line-height:1.7}
    .qr-box strong{display:block;color:#fff;font-size:14.5px;margin-bottom:4px}

    .contact-form{
      padding:26px;border-radius:18px;
      background:rgba(255,255,255,.045);
      border:1px solid var(--line);
    }
    .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
    .contact-form label{display:block;font-size:13.5px;color:#d5cef0;margin-bottom:16px}
    .contact-form input,.contact-form select,.contact-form textarea{
      width:100%;margin-top:7px;padding:12px 14px;
      border-radius:11px;
      background:rgba(9,4,18,.72);
      border:1px solid rgba(255,255,255,.16);
      color:#fff;font-size:14.5px;font-family:inherit;
      transition:border-color .25s ease,box-shadow .25s ease;
    }
    .contact-form input::placeholder,.contact-form textarea::placeholder{color:#8c85a8}
    .contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{
      outline:none;border-color:rgba(255,47,154,.75);
      box-shadow:0 0 0 3px rgba(255,47,154,.16);
    }
    .contact-form select option{background:#12081f;color:#fff}
    .contact-form textarea{resize:vertical;min-height:110px}
    .form-submit{width:100%;margin-top:4px}
    .form-tip{margin:14px 0 0;font-size:12.5px;color:#9b93b8;line-height:1.7}

    /* ---------- footer ---------- */
    .site-footer{
      background:rgba(7,3,14,.9);
      border-top:1px solid rgba(255,255,255,.10);
      color:#b9b2d4;
      padding:50px 0 22px;
      font-size:14px;
    }
    .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;align-items:start}
    .footer-brand p{margin:14px 0 0;font-size:13.5px;line-height:1.8;color:#a49cc0;max-width:320px}
    .footer-col h3{margin:0 0 14px;font-size:14.5px;color:#ffffff;font-weight:700}
    .footer-col ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
    .footer-col li{font-size:13.5px;line-height:1.6;color:#a49cc0}
    .site-footer a{color:#cfc8e6;text-decoration:none;transition:color .22s ease}
    .site-footer a:hover{color:#ff8ec8}
    .footer-bottom{
      margin-top:32px;padding-top:18px;
      border-top:1px solid rgba(255,255,255,.09);
      display:flex;flex-wrap:wrap;gap:8px 24px;align-items:center;justify-content:space-between;
      font-size:13px;color:#968eb2;
    }
    .footer-bottom p{margin:0}

    /* ---------- floating ---------- */
    .float-service{
      position:fixed;right:20px;bottom:22px;z-index:130;
      display:flex;align-items:center;justify-content:center;
      width:56px;height:56px;border-radius:50%;
      background:linear-gradient(130deg,#ff2f9a,#a855f7);
      color:#fff;font-size:14px;font-weight:700;text-decoration:none;
      box-shadow:0 12px 30px rgba(255,47,154,.42);
      transition:transform .3s ease,box-shadow .3s ease;
    }
    .float-service:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 18px 38px rgba(255,47,154,.55)}
    .back-top{
      position:fixed;right:20px;bottom:90px;z-index:130;
      width:46px;height:46px;border-radius:50%;
      display:flex;align-items:center;justify-content:center;
      background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);
      color:#fff;font-size:18px;cursor:pointer;
      opacity:0;visibility:hidden;
      transition:opacity .3s ease,visibility .3s ease,transform .3s ease,background .3s ease;
    }
    .back-top.show{opacity:1;visibility:visible}
    .back-top:hover{background:rgba(255,47,154,.28);transform:translateY(-3px)}

    /* ---------- reveal ---------- */
    html.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
    html.js .reveal.in{opacity:1;transform:none}

    /* ---------- responsive ---------- */
    @media (max-width:1080px){
      .nav{
        position:absolute;top:100%;left:0;right:0;margin:0;
        background:rgba(10,5,20,.98);
        border-bottom:1px solid var(--line);
        max-height:0;overflow:hidden;
        transition:max-height .35s ease;
      }
      .nav.open{max-height:72vh;overflow-y:auto}
      .nav-links{flex-direction:column;align-items:stretch;padding:8px 20px 18px;gap:0}
      .nav-links a{padding:13px 4px;font-size:15px;border-bottom:1px solid rgba(255,255,255,.07);border-radius:0}
      .nav-toggle{display:flex}
      .hero-inner{grid-template-columns:1fr;gap:36px}
      .about-grid{grid-template-columns:1fr;gap:28px}
      .case-grid{grid-template-columns:1fr;gap:24px}
      .contact-grid{grid-template-columns:1fr;gap:26px}
      .review-top{grid-template-columns:1fr}
      .grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
      .review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
      .steps{grid-template-columns:repeat(2,minmax(0,1fr))}
      .studio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
      .region-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
      .footer-grid{grid-template-columns:1fr 1fr}
      .know-grid{grid-template-columns:1fr;gap:32px}
    }
    @media (max-width:820px){
      .stats{grid-template-columns:repeat(2,minmax(0,1fr))}
    }
    @media (max-width:640px){
      .section{padding:56px 0}
      .hero{padding:52px 0 50px}
      .header-cta{padding:9px 15px;font-size:13px}
      .brand-text{font-size:15.5px}
      .grid-3{grid-template-columns:1fr}
      .review-grid{grid-template-columns:1fr}
      .steps{grid-template-columns:1fr}
      .studio-grid{grid-template-columns:1fr}
      .region-grid{grid-template-columns:1fr}
      .form-row{grid-template-columns:1fr}
      .footer-grid{grid-template-columns:1fr;gap:26px}
      .cta-banner{padding:24px}
      .contact-form{padding:20px}
      .model-list{grid-template-columns:repeat(2,minmax(0,1fr))}
      .footer-bottom{flex-direction:column;align-items:flex-start}
    }
    @media (max-width:420px){
      .brand-logo{width:34px;height:34px}
      .brand-text{font-size:14.5px}
      .header-cta{padding:8px 12px;font-size:12.5px}
    }
    @media (prefers-reduced-motion:reduce){
      html{scroll-behavior:auto}
      *,*::before,*::after{
        animation-duration:.001ms !important;
        animation-iteration-count:1 !important;
        transition-duration:.001ms !important;
      }
    }