@charset "utf-8";
:root{--pg-ink:#1c1915;--pg-muted:#6b6258;--pg-bg:#f4efe6;--pg-card:#fffdf8;--pg-line:#e4d8c6;--pg-brand:#1f4e79;--pg-brand-ink:#12263a;--pg-foot:#161410;--pg-accent:#c2410c;--pg-radius:18px;--pg-shadow:0 18px 40px rgba(28,25,21,.08);--pg-head:rgba(244,239,230,.92)}
*{box-sizing:border-box}html,body{margin:0;padding:0;max-width:100%;overflow-x:clip}
body{font-family:"Iowan Old Style","Palatino Linotype","PingFang SC","Microsoft YaHei","Noto Serif SC",serif;color:var(--pg-ink);background:var(--pg-bg);line-height:1.8;font-size:16px}
img,svg,video,canvas{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}ul{list-style:none;margin:0;padding:0}
:where(.wrap,header .wrap,footer .wrap,.hero-inner,.inner){width:min(1180px,92%);margin-left:auto;margin-right:auto;max-width:100%}
:where(body>header){position:sticky;top:0;z-index:30;background:var(--pg-head);border-bottom:1px solid var(--pg-line);backdrop-filter:blur(14px)}
:where(body>header>nav,body>header .nav){width:min(1180px,92%);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;flex-wrap:wrap}
:where(.logo,.nav .logo){font-weight:800;font-size:22px;letter-spacing:.02em;color:var(--pg-brand-ink);white-space:nowrap}
:where(body>header nav ul){display:flex;flex-wrap:wrap;gap:8px 20px;margin:0;padding:0}
:where(body>header nav a){color:var(--pg-muted);font-size:14px}
:where(body>header nav a:hover){color:var(--pg-brand)}
:where(.nav-cta,.pg-cta a){display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;border-radius:999px;font-weight:700;border:1px solid transparent}
:where(.btn-solid,.nav-cta){background:var(--pg-brand);color:#fff}
:where(.btn-line){border-color:currentColor;background:transparent}
:where(.hero){padding:84px 0 72px;background:radial-gradient(1200px 480px at 10% -10%,#dbe7f3 0%,transparent 55%),linear-gradient(160deg,#12263a,#1f4e79 58%,#9a3412);color:#fff;text-align:center}
:where(.hero h1){font-size:clamp(30px,5.4vw,52px);line-height:1.18;margin:12px 0 16px;letter-spacing:-.02em}
:where(.hero-text,.hero p){max-width:740px;margin:0 auto 24px;color:rgba(255,255,255,.9)}
:where(.pg-stats){display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:18px;width:min(1180px,92%);margin:28px auto 0}
:where(.slash-1,.slash-2,.slash-3){border-left:5px solid var(--pg-accent)}
:where(section,.pg-extra){padding:72px 0}
:where(section h2,.pg-extra h2){font-size:clamp(26px,3.2vw,36px);text-align:center;margin:0 0 12px;letter-spacing:-.02em}
:where(section>p,.pg-extra>p,.pg-lead){text-align:center;color:var(--pg-muted);max-width:740px;margin:0 auto 36px}
:where(.grid-2,.pg-grid,.cards){display:grid;gap:22px}
:where(.grid-2){grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
:where(.cards,.pg-grid){grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
:where(.card,article.card,.pg-card){background:var(--pg-card);border:1px solid var(--pg-line);border-radius:var(--pg-radius);padding:26px 24px;box-shadow:var(--pg-shadow)}
:where(.card h3,.pg-card h3){margin:0 0 10px;font-size:19px;color:var(--pg-brand-ink)}
:where(.card p,.pg-card p){margin:0;color:var(--pg-muted)}
:where(.pg-step){counter-increment:pgstep;position:relative;padding-top:8px}
:where(.pg-step:before){content:counter(pgstep,decimal-leading-zero);display:block;font-size:13px;font-weight:800;letter-spacing:.12em;color:var(--pg-accent);margin-bottom:8px}
:where(.pg-quote,.testimonial){background:var(--pg-card);border:1px solid var(--pg-line);border-radius:var(--pg-radius);padding:28px;box-shadow:var(--pg-shadow)}
:where(.pg-quote p){font-size:18px;color:var(--pg-ink)}
:where(.pg-faq details){background:var(--pg-card);border:1px solid var(--pg-line);border-radius:14px;padding:16px 18px;margin:0 0 12px}
:where(.pg-faq summary){cursor:pointer;font-weight:700;color:var(--pg-brand-ink)}
:where(.pg-chips){display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:0 0 28px}
:where(.pg-chips span){border:1px solid var(--pg-line);background:var(--pg-card);border-radius:999px;padding:6px 12px;font-size:12px;color:var(--pg-muted)}
:where(.pg-cta){text-align:center;background:linear-gradient(135deg,#12263a,#1f4e79);color:#fff;border-radius:28px;padding:48px 28px}
:where(.dark-band){background:linear-gradient(135deg,#161410,#1f4e79);color:#fff}
:where(.dark-band h2,.dark-band>p){color:#fff}
:where(.dark-band .card){background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:#fff}
:where(.dark-band .card h3){color:#fff}:where(.dark-band .card p){color:rgba(255,255,255,.82)}
:where(.contact){text-align:center}
:where(body>footer,main~footer,.footer){background:var(--pg-foot);color:#e8dfd2;padding:56px 0 28px;margin-top:8px;display:block}
:where(.footer-links,.footer-nav,body>footer ul){width:min(1180px,92%);margin:0 auto 20px;display:flex;flex-wrap:wrap;gap:10px 22px;padding:0}
:where(.footer-links a,body>footer a){color:#f3ebe0}
:where(.copyright,.footer-copy){width:min(1180px,92%);margin:0 auto;padding-top:16px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:#a89c8c}
@media(max-width:720px){:where(body>header>nav,.nav){padding:10px 0}:where(.hero){padding:52px 0}:where(section,.pg-extra){padding:44px 0}}

:where(.container){width:100%;margin-left:auto;margin-right:auto;padding-left:1rem;padding-right:1rem}
:where(.flex){display:flex}:where(.inline-flex){display:inline-flex}:where(.grid){display:grid}
:where(.hidden){display:none}:where(.block){display:block}
:where(.items-center){align-items:center}:where(.justify-center){justify-content:center}:where(.justify-between){justify-content:space-between}
:where(.flex-wrap){flex-wrap:wrap}:where(.flex-col){flex-direction:column}
:where(.text-center){text-align:center}:where(.mx-auto){margin-left:auto;margin-right:auto}
:where(.relative){position:relative}:where(.absolute){position:absolute}
:where(.w-full){width:100%}:where(.h-full){height:100%}:where(.max-w-7xl){max-width:80rem}
:where(.rounded){border-radius:.25rem}:where(.rounded-lg){border-radius:.5rem}:where(.rounded-xl){border-radius:.75rem}:where(.rounded-2xl){border-radius:1rem}:where(.rounded-full){border-radius:9999px}

:root{--pg-brand:#7a1f2b;--pg-brand-ink:#a63a46;--pg-accent:#e0b46c;--pg-radius:24px}
:where(.hero){background:linear-gradient(160deg,#a63a46,#7a1f2b 58%,#e0b46c)}
:where(body>header){border-bottom-color:#7a1f2b33}

:root{
    --wine:#7a1f2b;
    --wine-light:#a63a46;
    --gold:#e0b46c;
    --cream:#fbf7f2;
    --ink:#2a1517;
    --ink-soft:rgba(42,21,23,.66);
    --border:rgba(122,31,43,.16);
    --radius:24px;
    --shadow-sm:0 6px 18px rgba(122,31,43,.08);
    --shadow-md:0 14px 38px rgba(122,31,43,.14);
    --shadow-lg:0 24px 60px rgba(122,31,43,.2);
    --space-section:clamp(56px,7vw,104px);
  }
  *,*::before,*::after{box-sizing:border-box;}
  html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
  body{
    margin:0;
    font-family:var(--font-body);
    background:var(--cream);
    color:var(--ink);
    line-height:1.75;
    font-size:16px;
    letter-spacing:.01em;
    background-image:radial-gradient(rgba(122,31,43,.05) 1px, transparent 1px);
    background-size:22px 22px;
  }
  h1,h2,h3,h4{
    font-family:"Noto Sans SC","Microsoft YaHei",sans-serif;
    letter-spacing:-.03em;
    line-height:1.24;
    margin:0;
    font-weight:800;
  }
  p{margin:0;}
  a{color:inherit;text-decoration:none;transition:color .25s ease,opacity .25s ease;}
  img{max-width:100%;display:block;}
  button,input{font-family:inherit;font-size:inherit;}
  ::selection{background:var(--gold);color:var(--ink);}
  :focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:6px;}
  .container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px;}
  .container-wide{width:100%;max-width:1320px;margin:0 auto;padding:0 20px;}

  /* header */
  .site-header{
    position:sticky;top:0;z-index:60;
    background:rgba(251,247,242,.92);
    backdrop-filter:blur(12px);
    border-bottom:1px solid var(--border);
    transition:box-shadow .3s ease;
  }
  .site-header.scrolled{box-shadow:var(--shadow-sm);}
  .nav-inner{
    display:flex;align-items:center;gap:22px;
    min-height:66px;
  }
  .brand{display:flex;align-items:center;gap:10px;flex-shrink:0;}
  .brand-mark{
    width:38px;height:38px;border-radius:13px;
    background:linear-gradient(140deg,var(--wine),var(--wine-light));
    color:var(--gold);
    display:grid;place-items:center;
    font-weight:800;font-size:17px;
    letter-spacing:-.04em;
    box-shadow:var(--shadow-sm);
  }
  .brand-text{display:flex;flex-direction:column;line-height:1.15;}
  .brand-name{font-weight:800;font-size:15px;letter-spacing:-.02em;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .brand-sub{font-size:11px;color:var(--ink-soft);letter-spacing:.14em;}
  .nav-links{display:flex;align-items:center;gap:4px;margin-left:8px;}
  .nav-links a{
    padding:8px 14px;border-radius:999px;font-size:14.5px;font-weight:600;
    color:rgba(42,21,23,.78);
  }
  .nav-links a:hover{background:rgba(122,31,43,.08);color:var(--wine);}
  .nav-links a.active{background:var(--wine);color:#fff;box-shadow:var(--shadow-sm);}
  .nav-right{margin-left:auto;display:flex;align-items:center;gap:12px;}
  .search-box{
    display:flex;align-items:center;gap:8px;
    background:#fff;border:1px solid var(--border);
    border-radius:999px;padding:7px 16px;
    min-width:196px;
    transition:border-color .25s ease, box-shadow .25s ease;
  }
  .search-box:focus-within{border-color:var(--wine-light);box-shadow:0 0 0 4px rgba(166,58,70,.12);}
  .search-box input{
    border:0;outline:0;background:transparent;width:100%;font-size:14px;color:var(--ink);
  }
  .search-box input::placeholder{color:rgba(42,21,23,.42);}
  .btn{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    border-radius:999px;font-weight:700;font-size:14.5px;
    padding:11px 24px;border:1px solid transparent;cursor:pointer;
    transition:transform .2s ease, box-shadow .25s ease, background .25s ease, color .25s ease, border-color .25s ease;
    white-space:nowrap;
  }
  .btn-primary{background:var(--wine);color:#fff;box-shadow:var(--shadow-sm);}
  .btn-primary:hover{background:var(--wine-light);transform:translateY(-2px);box-shadow:var(--shadow-md);}
  .btn-primary:active{transform:translateY(0);}
  .btn-ghost{background:transparent;border-color:var(--border);color:var(--wine);}
  .btn-ghost:hover{background:rgba(122,31,43,.07);border-color:var(--wine-light);transform:translateY(-2px);}
  .btn-gold{background:var(--gold);color:var(--ink);box-shadow:var(--shadow-sm);}
  .btn-gold:hover{background:#eec483;transform:translateY(-2px);box-shadow:var(--shadow-md);}
  .btn-sm{padding:9px 18px;font-size:13.5px;}
  .menu-toggle{
    display:none;background:transparent;border:1px solid var(--border);
    border-radius:12px;width:42px;height:42px;cursor:pointer;
    align-items:center;justify-content:center;flex-direction:column;gap:4px;
  }
  .menu-toggle span{display:block;width:18px;height:2px;background:var(--wine);border-radius:2px;}

  /* hero */
  .hero-section{
    padding:clamp(28px,4vw,52px) 0 clamp(40px,5vw,64px);
    background:
      radial-gradient(1000px 420px at 88% -10%, rgba(224,180,108,.28), transparent 60%),
      linear-gradient(180deg,#fbf7f2 0%,#f6eee6 100%);
    border-bottom:1px solid var(--border);
  }
  .hero-grid{display:grid;grid-template-columns:1fr 340px;gap:34px;align-items:start;}
  .hero-badge{
    display:inline-flex;align-items:center;gap:8px;
    background:rgba(122,31,43,.08);color:var(--wine);
    border:1px solid var(--border);
    border-radius:999px;padding:6px 16px;font-size:13px;font-weight:700;
    letter-spacing:.02em;
  }
  .hero-badge .dot{width:7px;height:7px;border-radius:50%;background:var(--wine-light);}
  .hero-title{
    font-size:clamp(30px,4.4vw,52px);
    margin:20px 0 16px;
    color:var(--ink);
  }
  .hero-title em{font-style:normal;color:var(--wine);}
  .hero-desc{font-size:16.5px;color:var(--ink-soft);max-width:660px;}
  .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;}
  .hero-stats{display:flex;flex-wrap:wrap;gap:30px;margin-top:34px;}
  .stat-num{font-size:28px;font-weight:800;color:var(--wine);letter-spacing:-.03em;font-family:"Noto Sans SC",sans-serif;}
  .stat-label{font-size:13px;color:var(--ink-soft);}
  .hero-visual{
    margin-top:30px;border-radius:var(--radius);overflow:hidden;
    background:linear-gradient(135deg,rgba(122,31,43,.92),rgba(166,58,70,.85));
    box-shadow:var(--shadow-md);
    padding:26px;
    display:flex;flex-direction:column;gap:18px;
    position:relative;
  }
  .hero-visual::after{
    content:"";position:absolute;inset:0;
    background-image:radial-gradient(rgba(255,255,255,.16) 1px, transparent 1px);
    background-size:18px 18px;pointer-events:none;
  }
  .hero-visual .play-row{display:flex;align-items:center;gap:16px;position:relative;z-index:1;}
  .play-btn{
    width:56px;height:56px;border-radius:50%;
    background:var(--gold);color:var(--wine);
    display:grid;place-items:center;font-size:20px;font-weight:800;
    flex-shrink:0;box-shadow:0 10px 26px rgba(0,0,0,.22);
    transition:transform .25s ease;
  }
  .hero-visual .play-row:hover .play-btn{transform:scale(1.07);}
  .hero-visual .play-title{color:#fff;font-weight:800;font-size:18px;letter-spacing:-.02em;}
  .hero-visual .play-sub{color:rgba(255,255,255,.76);font-size:13px;}
  .hero-visual .bars{display:flex;gap:8px;position:relative;z-index:1;}
  .hero-visual .bars i{display:block;height:8px;border-radius:6px;background:rgba(255,255,255,.3);}
  .hero-visual .bars i:nth-child(1){width:52%;background:var(--gold);}
  .hero-visual .bars i:nth-child(2){width:24%;}
  .hero-visual .bars i:nth-child(3){width:16%;}
  .hero-chips{display:flex;flex-wrap:wrap;gap:8px;position:relative;z-index:1;}
  .hero-chips span{
    font-size:12.5px;color:rgba(255,255,255,.9);
    border:1px solid rgba(255,255,255,.32);border-radius:999px;padding:4px 12px;
  }
  .hero-side{
    background:#fff;border:1px solid var(--border);border-radius:var(--radius);
    box-shadow:var(--shadow-sm);padding:22px;
    position:sticky;top:86px;
  }
  .hero-side h3{font-size:15px;color:var(--wine);letter-spacing:.02em;margin-bottom:14px;display:flex;align-items:center;gap:8px;}
  .hero-side h3::before{content:"";width:4px;height:16px;border-radius:2px;background:var(--gold);}
  .notice-list{display:flex;flex-direction:column;gap:10px;}
  .notice-item{
    display:flex;gap:10px;align-items:flex-start;
    padding:11px 13px;border-radius:14px;
    background:rgba(122,31,43,.045);
    border:1px solid transparent;
    transition:background .25s ease, border-color .25s ease, transform .2s ease;
  }
  .notice-item:hover{background:#fff;border-color:var(--border);transform:translateX(3px);}
  .notice-item .idx{
    width:22px;height:22px;border-radius:8px;flex-shrink:0;
    background:var(--wine);color:#fff;font-size:12px;font-weight:700;
    display:grid;place-items:center;margin-top:2px;
  }
  .notice-item .txt{font-size:13.5px;line-height:1.6;color:rgba(42,21,23,.8);}
  .side-links{margin-top:20px;padding-top:18px;border-top:1px dashed var(--border);display:flex;flex-direction:column;gap:10px;}
  .side-links a{font-size:13.5px;color:var(--wine);display:flex;justify-content:space-between;align-items:center;}
  .side-links a:hover{color:var(--wine-light);}
  .side-links a span{color:var(--ink-soft);font-size:12px;}

  /* section base */
  .section{padding:var(--space-section) 0;}
  .section-wine{background:linear-gradient(160deg,var(--wine),#5f1822);color:#fff;}
  .section-wine .section-desc{color:rgba(255,255,255,.78);}
  .section-dark{background:#33191d;color:#fff;}
  .section-dark .section-desc{color:rgba(255,255,255,.72);}
  .section-gold{background:linear-gradient(150deg,#fdf3e4,#f7e8d2);}
  .section-head{max-width:760px;margin:0 auto 44px;text-align:center;}
  .section-head.left{margin-left:0;text-align:left;}
  .section-eyebrow{
    display:inline-block;font-size:12.5px;font-weight:800;letter-spacing:.18em;
    color:var(--wine-light);text-transform:uppercase;margin-bottom:12px;
  }
  .section-wine .section-eyebrow,.section-dark .section-eyebrow{color:var(--gold);}
  .section-title{font-size:clamp(24px,3vw,36px);margin-bottom:14px;}
  .section-wine .section-title,.section-dark .section-title{color:#fff;}
  .section-desc{color:var(--ink-soft);font-size:15.5px;}

  /* feature cards */
  .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
  .grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
  .feature-card{
    background:#fff;border:1px solid var(--border);border-radius:var(--radius);
    padding:28px 24px;box-shadow:var(--shadow-sm);
    transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease;
    display:flex;flex-direction:column;gap:12px;
  }
  .feature-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:rgba(122,31,43,.3);}
  .feature-icon{
    width:48px;height:48px;border-radius:16px;
    background:rgba(122,31,43,.08);color:var(--wine);
    display:grid;place-items:center;font-size:20px;font-weight:800;
  }
  .feature-card h3{font-size:18px;}
  .feature-card p{font-size:14.5px;color:var(--ink-soft);}
  .feature-card .tagline{font-size:12.5px;color:var(--wine-light);font-weight:700;letter-spacing:.04em;}

  /* tag cloud */
  .tag-cloud{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;}
  .tag{
    display:inline-flex;align-items:center;gap:6px;
    padding:9px 20px;border-radius:999px;font-size:14px;font-weight:600;
    background:#fff;color:var(--wine);border:1px solid var(--border);
    box-shadow:var(--shadow-sm);
    transition:all .25s ease;cursor:default;
  }
  .tag:hover{background:var(--wine);color:#fff;border-color:var(--wine);transform:translateY(-3px);box-shadow:var(--shadow-md);}
  .tag .num{font-size:12px;opacity:.6;}

  /* scenario */
  .scenario-card{
    background:#fff;border:1px solid var(--border);border-radius:var(--radius);
    overflow:hidden;box-shadow:var(--shadow-sm);
    transition:transform .28s ease, box-shadow .28s ease;
    display:flex;flex-direction:column;
  }
  .scenario-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);}
  .scenario-top{
    padding:22px 22px 18px;
    background:linear-gradient(140deg,rgba(122,31,43,.95),rgba(166,58,70,.85));
    color:#fff;position:relative;
  }
  .scenario-top::after{
    content:"";position:absolute;right:-20px;top:-20px;width:110px;height:110px;
    border-radius:50%;background:rgba(224,180,108,.24);
  }
  .scenario-top h3{font-size:17px;color:#fff;position:relative;z-index:1;}
  .scenario-top p{font-size:13px;color:rgba(255,255,255,.78);margin-top:6px;position:relative;z-index:1;}
  .scenario-body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:10px;flex:1;}
  .scenario-body li{
    list-style:none;font-size:14px;color:var(--ink-soft);
    display:flex;gap:8px;align-items:flex-start;
  }
  .scenario-body li::before{content:"◆";color:var(--gold);font-size:11px;line-height:1.8;}
  .scenario-body ul{margin:0;padding:0;display:flex;flex-direction:column;gap:9px;}

  /* content list (dark band) */
  .film-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
  .film-card{
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.14);
    border-radius:var(--radius);padding:22px;
    display:flex;gap:18px;align-items:flex-start;
    transition:background .25s ease, transform .25s ease, border-color .25s ease;
  }
  .film-card:hover{background:rgba(255,255,255,.11);transform:translateY(-4px);border-color:rgba(224,180,108,.5);}
  .film-cover{
    width:84px;height:112px;border-radius:16px;flex-shrink:0;
    background:linear-gradient(150deg,var(--gold),#c9964a);
    display:grid;place-items:center;color:var(--wine);font-weight:800;font-size:22px;
  }
  .film-cover.alt{background:linear-gradient(150deg,#a63a46,#7a1f2b);color:#fff;}
  .film-cover.alt2{background:linear-gradient(150deg,#e8d3ac,#dcb877);color:var(--ink);}
  .film-info h3{font-size:16.5px;color:#fff;margin-bottom:6px;}
  .film-info p{font-size:13.5px;color:rgba(255,255,255,.68);line-height:1.65;}
  .film-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
  .chip{
    font-size:11.5px;padding:3px 11px;border-radius:999px;
    background:rgba(255,255,255,.12);color:rgba(255,255,255,.86);
    border:1px solid rgba(255,255,255,.16);
  }
  .chip.gold{background:rgba(224,180,108,.2);color:var(--gold);border-color:rgba(224,180,108,.4);}

  /* about */
  .about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;}
  .about-panel{
    background:#fff;border:1px solid var(--border);border-radius:var(--radius);
    padding:32px;box-shadow:var(--shadow-sm);
  }
  .about-panel h3{font-size:19px;margin-bottom:12px;color:var(--wine);}
  .about-panel p{font-size:14.5px;color:var(--ink-soft);}
  .about-list{display:flex;flex-direction:column;gap:16px;margin-top:22px;}
  .about-list .row{display:flex;gap:14px;align-items:flex-start;}
  .about-list .row .k{
    min-width:76px;font-size:13px;font-weight:800;color:var(--wine);
    background:rgba(122,31,43,.07);border-radius:12px;padding:6px 0;text-align:center;
  }
  .about-list .row .v{font-size:14px;color:var(--ink-soft);}

  /* compare table */
  .table-wrap{
    background:#fff;border:1px solid var(--border);border-radius:var(--radius);
    box-shadow:var(--shadow-sm);overflow:visible;
  }
  table{width:100%;border-collapse:collapse;font-size:14.5px;}
  thead th{
    background:rgba(122,31,43,.06);color:var(--wine);
    font-weight:800;text-align:left;padding:16px 20px;font-size:14px;
    border-bottom:1px solid var(--border);
  }
  tbody td{padding:16px 20px;border-bottom:1px solid rgba(122,31,43,.08);color:var(--ink-soft);}
  tbody tr:last-child td{border-bottom:0;}
  tbody tr:hover{background:rgba(224,180,108,.09);}
  td.strong{color:var(--ink);font-weight:700;}
  td .ok{color:#2f7d4f;font-weight:700;}
  td .no{color:#a63a46;font-weight:700;}

  /* topics horizontal */
  .topic-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
  .topic-card{
    border-radius:var(--radius);padding:26px 22px;
    background:#fff;border:1px solid var(--border);
    box-shadow:var(--shadow-sm);
    display:flex;flex-direction:column;gap:12px;
    transition:transform .28s ease, box-shadow .28s ease;
    position:relative;overflow:hidden;
  }
  .topic-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);}
  .topic-card .stat .num,.topic-card .stats .num,.topic-card .stat-row .num,.topic-card .hero-stats .num,.topic-card .data-card .num,.topic-card .data-row .num,.topic-card .pg-stat .num,.topic-card .section-stats .num{
    font-size:36px;font-weight:800;color:rgba(122,31,43,.14);
    font-family:"Noto Sans SC",sans-serif;letter-spacing:-.05em;line-height:1;
  }
  .topic-card h3{font-size:17px;}
  .topic-card p{font-size:13.8px;color:var(--ink-soft);flex:1;}
  .topic-card .link{font-size:13.5px;font-weight:800;color:var(--wine);}
  .topic-card::after{
    content:"";position:absolute;left:0;bottom:0;height:4px;width:0;
    background:var(--gold);transition:width .35s ease;
  }
  .topic-card:hover::after{width:100%;}

  /* CTA */
  .cta-band{
    background:linear-gradient(135deg,var(--wine),#5c1620 70%);
    border-radius:var(--radius);
    padding:clamp(34px,5vw,56px);
    color:#fff;position:relative;overflow:hidden;
    box-shadow:var(--shadow-lg);
    display:grid;grid-template-columns:1.4fr .6fr;gap:28px;align-items:center;
  }
  .cta-band::before{
    content:"";position:absolute;right:-60px;top:-60px;width:280px;height:280px;
    border-radius:50%;background:radial-gradient(circle,rgba(224,180,108,.35),transparent 70%);
  }
  .cta-band::after{
    content:"";position:absolute;left:0;bottom:0;right:0;height:100%;
    background-image:radial-gradient(rgba(255,255,255,.1) 1px, transparent 1px);
    background-size:20px 20px;pointer-events:none;
  }
  .cta-band h2{font-size:clamp(23px,2.8vw,32px);color:#fff;position:relative;z-index:1;}
  .cta-band p{color:rgba(255,255,255,.8);margin-top:12px;font-size:15px;position:relative;z-index:1;}
  .cta-actions{display:flex;flex-direction:column;gap:12px;position:relative;z-index:1;}

  /* footer */
  .site-footer{
    background:var(--cream);
    border-top:3px solid rgba(122,31,43,.22);
    padding:52px 0 28px;
    margin-top:0;
  }
  .footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:34px;}
  .footer-brand{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
  .footer-about{font-size:13.5px;color:var(--ink-soft);max-width:340px;}
  .footer-col h4{font-size:14px;color:var(--wine);margin-bottom:14px;letter-spacing:.02em;}
  .footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
  .footer-col a{font-size:13.5px;color:var(--ink-soft);}
  .footer-col a:hover{color:var(--wine);}
  .footer-links-row{
    display:flex;flex-wrap:wrap;gap:8px 22px;
    margin-top:36px;padding-top:22px;border-top:1px solid var(--border);
  }
  .footer-links-row a{font-size:13px;color:var(--ink-soft);}
  .footer-links-row a:hover{color:var(--wine);}
  .footer-bottom{
    margin-top:20px;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;
    font-size:12.5px;color:rgba(42,21,23,.5);
  }

  /* responsive */
  @media (max-width:1024px){
    .hero-grid{grid-template-columns:1fr;}
    .hero-side{position:static;}
    .grid-4{grid-template-columns:repeat(2,1fr);}
    .grid-3{grid-template-columns:repeat(2,1fr);}
    .topic-row{grid-template-columns:repeat(2,1fr);}
    .about-grid{grid-template-columns:1fr;}
    .footer-grid{grid-template-columns:repeat(2,1fr);}
    .cta-band{grid-template-columns:1fr;}
    .nav-links{display:none;}
    .menu-toggle{display:flex;}
    .nav-inner{flex-wrap:wrap;}
    .mobile-nav{
      width:100%;display:none;flex-direction:column;gap:4px;
      padding:12px 0 18px;border-top:1px solid var(--border);margin-top:12px;
    }
    .mobile-nav.open{display:flex;}
    .mobile-nav a{padding:11px 16px;border-radius:14px;font-size:15px;font-weight:600;color:rgba(42,21,23,.82);}
    .mobile-nav a.active{background:var(--wine);color:#fff;}}
  @media (max-width:768px){
    .grid-4,.grid-3,.topic-row,.film-grid{grid-template-columns:1fr;}
    .search-box{display:none;}
    .brand-name{max-width:150px;}
    .hero-stats{gap:20px;}
    .stat-num{font-size:24px;}
    .footer-grid{grid-template-columns:1fr;}
    tbody td,thead th{padding:13px 14px;font-size:13.5px;}}
  @media (max-width:520px){
    body{font-size:15.5px;}
    .container,.container-wide{padding:0 16px;}
    .hero-actions .btn{width:100%;}
    .hero-visual{padding:20px;}
    .about-panel{padding:24px;}
    .cta-band{padding:28px 22px;}
    .stat-num{font-size:22px;}}

.hero-section .hero-title{color:#ffffff!important}
.feature-card p{color:#1a1a1a!important}
#tags .section-title{color:#1a1a1a!important}
#tags .section-desc{color:#1a1a1a!important}
.scenario-top h3{color:#ffffff!important}
.film-card p{color:#1a1a1a!important}
.about-panel p{color:#1a1a1a!important}
#compare .section-title{color:#1a1a1a!important}
#compare .section-desc{color:#1a1a1a!important}
.topic-card p{color:#1a1a1a!important}

html,body{max-width:100%!important;overflow-x:clip!important}
body,main{transform:none!important;left:auto!important;right:auto!important}
main{width:100%;max-width:100%;display:block;position:relative}
section,article,.hero,header,footer,.pg-extra{max-width:100%;overflow:visible!important}
p,h1,h2,h3,h4,h5,h6,li{overflow:visible!important;max-width:100%;text-indent:0}
.min-h-screen{min-height:72vh}
.text-transparent,[class~="text-transparent"],.bg-clip-text{color:inherit!important;-webkit-text-fill-color:currentColor!important;background-clip:border-box!important;-webkit-background-clip:border-box!important}
img,svg,video,canvas{max-width:100%;height:auto}
mark,mark[data-pg-kw]{background:transparent!important;color:inherit!important;padding:0!important}

section header,article header,.sec-head,.section-head,.sec-header,header.sec-head{position:static!important;top:auto!important;height:auto!important;min-height:0!important;line-height:inherit!important}