@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,.container,.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(.nav-links,body>header nav ul){display:flex;flex-wrap:wrap;gap:8px 20px;margin:0;padding:0}
:where(.nav-links a,body>header nav a){color:var(--pg-muted);font-size:14px}
:where(.nav-links a:hover,body>header nav a:hover){color:var(--pg-brand)}
:where(.nav-cta,.btn,a.btn,.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(.nav-cta){background:var(--pg-brand);color:#fff}
:where(.btn-line){border-color:currentColor;background:transparent}
:where(.hero-text){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,.grid-3,.grid-4,.pg-grid,.cards){display:grid;gap:22px}
:where(.grid-2){grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
:where(.grid-3,.cards,.pg-grid){grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
:where(.grid-4){grid-template-columns:repeat(auto-fit,minmax(180px,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-grid){width:min(1180px,92%);margin:0 auto 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:28px}
:where(.footer-nav,body>footer ul){width:min(1180px,92%);margin:0 auto 20px;display:flex;flex-wrap:wrap;gap:10px 22px;padding:0}
:where(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(section,.pg-extra){padding:44px 0}}

.top-bar,.top-bar ul{background-color:transparent}.menu a{color:inherit}.title-bar{background:transparent}.card,.callout{background:var(--pg-card);color:inherit}.card-divider{background:transparent;color:inherit}

:where(.grid-container){max-width:1200px;margin-left:auto;margin-right:auto;padding-left:.9375rem;padding-right:.9375rem;width:100%}
:where(.grid-container.full),:where(.fluid){max-width:none}
:where(.grid-x){display:flex;flex-flow:row wrap}
:where(.grid-y){display:flex;flex-flow:column nowrap}
:where(.grid-margin-x){margin-left:-.9375rem;margin-right:-.9375rem}
:where(.grid-margin-x>.cell){width:calc(100% - 1.875rem);margin-left:.9375rem;margin-right:.9375rem}
:where(.grid-padding-x){margin-left:-.9375rem;margin-right:-.9375rem}
:where(.grid-padding-x>.cell){padding-left:.9375rem;padding-right:.9375rem}
:where(.grid-margin-y){margin-top:-.9375rem;margin-bottom:-.9375rem}
:where(.grid-margin-y>.cell){margin-top:.9375rem;margin-bottom:.9375rem}
:where(.cell){flex:0 0 auto;min-width:0;min-height:0}
:where(.row){display:flex;flex-flow:row wrap;max-width:1200px;margin-left:auto;margin-right:auto}
:where(.columns){display:flex;flex-flow:row wrap}
:where(.top-bar){display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between}
:where(.top-bar-left),:where(.top-bar-right){display:flex;align-items:center;flex-wrap:wrap}
:where(.menu){display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}
:where(.menu a){display:block;padding:.5rem .75rem;text-decoration:none}
:where(.menu.vertical){flex-direction:column}
:where(.title-bar){display:flex;align-items:center;justify-content:space-between}
:where(.breadcrumbs){display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}
:where(.breadcrumbs li+li)::before{content:"/";margin:0 .5rem;opacity:.6}
:where(.button),:where(.btn){display:inline-flex;align-items:center;justify-content:center;padding:.85em 1em;border:1px solid transparent;border-radius:0;cursor:pointer;text-align:center;white-space:nowrap;text-decoration:none;line-height:1}
:where(.button.hollow),:where(.btn.hollow){background:transparent}
:where(.button.small),:where(.btn.small){padding:.5em .75em;font-size:.8125rem}
:where(.card){display:flex;flex-direction:column;border-radius:0;overflow:hidden}
:where(.card-section){flex:1 1 auto;padding:1rem}:where(.card-divider){padding:.5rem 1rem}
:where(.callout){padding:1rem;border:1px solid var(--pg-line,rgba(0,0,0,.12));border-radius:0}
:where(.label){display:block;margin-bottom:.35rem}
:where(.tag){display:inline-block;padding:.25em .6em;font-size:.75rem;white-space:nowrap}
:where(.alert){padding:1rem}
:where(.align-middle){vertical-align:middle}
:where(.text-center){text-align:center}:where(.text-left){text-align:left}:where(.text-right){text-align:right}
:where(.hide){display:none!important}:where(.show){display:block}
:where(.float-left){float:left}:where(.float-right){float:right}
:where(.small){font-size:.8125rem}:where(.lead){font-size:1.25rem;font-weight:300}
:where(.small-1){flex:0 0 auto;width:8.3333%;max-width:8.3333%}
:where(.small-2){flex:0 0 auto;width:16.6667%;max-width:16.6667%}
:where(.small-3){flex:0 0 auto;width:25.0000%;max-width:25.0000%}
:where(.small-4){flex:0 0 auto;width:33.3333%;max-width:33.3333%}
:where(.small-5){flex:0 0 auto;width:41.6667%;max-width:41.6667%}
:where(.small-6){flex:0 0 auto;width:50.0000%;max-width:50.0000%}
:where(.small-7){flex:0 0 auto;width:58.3333%;max-width:58.3333%}
:where(.small-8){flex:0 0 auto;width:66.6667%;max-width:66.6667%}
:where(.small-9){flex:0 0 auto;width:75.0000%;max-width:75.0000%}
:where(.small-10){flex:0 0 auto;width:83.3333%;max-width:83.3333%}
:where(.small-11){flex:0 0 auto;width:91.6667%;max-width:91.6667%}
:where(.small-12){flex:0 0 auto;width:100.0000%;max-width:100.0000%}
:where(.small-offset-0){margin-left:0}
:where(.small-offset-1){margin-left:8.3333%}
:where(.small-offset-2){margin-left:16.6667%}
:where(.small-offset-3){margin-left:25.0000%}
:where(.small-offset-4){margin-left:33.3333%}
:where(.small-offset-5){margin-left:41.6667%}
:where(.small-offset-6){margin-left:50.0000%}
:where(.small-offset-7){margin-left:58.3333%}
:where(.small-offset-8){margin-left:66.6667%}
:where(.small-offset-9){margin-left:75.0000%}
:where(.small-offset-10){margin-left:83.3333%}
:where(.small-offset-11){margin-left:91.6667%}
@media(min-width:640px){:where(.medium-1){flex:0 0 auto;width:8.3333%;max-width:8.3333%}:where(.medium-2){flex:0 0 auto;width:16.6667%;max-width:16.6667%}:where(.medium-3){flex:0 0 auto;width:25.0000%;max-width:25.0000%}:where(.medium-4){flex:0 0 auto;width:33.3333%;max-width:33.3333%}:where(.medium-5){flex:0 0 auto;width:41.6667%;max-width:41.6667%}:where(.medium-6){flex:0 0 auto;width:50.0000%;max-width:50.0000%}:where(.medium-7){flex:0 0 auto;width:58.3333%;max-width:58.3333%}:where(.medium-8){flex:0 0 auto;width:66.6667%;max-width:66.6667%}:where(.medium-9){flex:0 0 auto;width:75.0000%;max-width:75.0000%}:where(.medium-10){flex:0 0 auto;width:83.3333%;max-width:83.3333%}:where(.medium-11){flex:0 0 auto;width:91.6667%;max-width:91.6667%}:where(.medium-12){flex:0 0 auto;width:100.0000%;max-width:100.0000%}:where(.medium-offset-0){margin-left:0}:where(.medium-offset-1){margin-left:8.3333%}:where(.medium-offset-2){margin-left:16.6667%}:where(.medium-offset-3){margin-left:25.0000%}:where(.medium-offset-4){margin-left:33.3333%}:where(.medium-offset-5){margin-left:41.6667%}:where(.medium-offset-6){margin-left:50.0000%}:where(.medium-offset-7){margin-left:58.3333%}:where(.medium-offset-8){margin-left:66.6667%}:where(.medium-offset-9){margin-left:75.0000%}:where(.medium-offset-10){margin-left:83.3333%}:where(.medium-offset-11){margin-left:91.6667%}}
@media(min-width:1024px){:where(.large-1){flex:0 0 auto;width:8.3333%;max-width:8.3333%}:where(.large-2){flex:0 0 auto;width:16.6667%;max-width:16.6667%}:where(.large-3){flex:0 0 auto;width:25.0000%;max-width:25.0000%}:where(.large-4){flex:0 0 auto;width:33.3333%;max-width:33.3333%}:where(.large-5){flex:0 0 auto;width:41.6667%;max-width:41.6667%}:where(.large-6){flex:0 0 auto;width:50.0000%;max-width:50.0000%}:where(.large-7){flex:0 0 auto;width:58.3333%;max-width:58.3333%}:where(.large-8){flex:0 0 auto;width:66.6667%;max-width:66.6667%}:where(.large-9){flex:0 0 auto;width:75.0000%;max-width:75.0000%}:where(.large-10){flex:0 0 auto;width:83.3333%;max-width:83.3333%}:where(.large-11){flex:0 0 auto;width:91.6667%;max-width:91.6667%}:where(.large-12){flex:0 0 auto;width:100.0000%;max-width:100.0000%}:where(.large-offset-0){margin-left:0}:where(.large-offset-1){margin-left:8.3333%}:where(.large-offset-2){margin-left:16.6667%}:where(.large-offset-3){margin-left:25.0000%}:where(.large-offset-4){margin-left:33.3333%}:where(.large-offset-5){margin-left:41.6667%}:where(.large-offset-6){margin-left:50.0000%}:where(.large-offset-7){margin-left:58.3333%}:where(.large-offset-8){margin-left:66.6667%}:where(.large-offset-9){margin-left:75.0000%}:where(.large-offset-10){margin-left:83.3333%}:where(.large-offset-11){margin-left:91.6667%}}
@media(max-width:639.98px){:where(.hide-for-small-only){display:none!important}}

:root{--pg-brand:#8a4b2a;--pg-brand-ink:#b86a3c;--pg-accent:#2f6f73;--pg-radius:6px}
:where(body>header){border-bottom-color:#8a4b2a33}

:root{
      --primary:#8a4b2a;
      --secondary:#b86a3c;
      --accent:#2f6f73;
      --bg:#faf4ee;
      --text:#2e1d14;
      --muted:#7c6357;
      --line:rgba(46,29,20,.14);
      --glass:rgba(255,255,255,.58);
      --glass-strong:rgba(255,255,255,.82);
      --radius:6px;
      --shadow-sm:0 2px 8px rgba(46,29,20,.06);
      --shadow-md:0 10px 28px rgba(46,29,20,.10);
      --shadow-lg:0 20px 52px rgba(46,29,20,.16);
      --font-title:"Noto Sans SC","Microsoft YaHei",sans-serif;
      --font-body:"Microsoft YaHei","Noto Sans SC",sans-serif;
    }
    *,*::before,*::after{box-sizing:border-box;}
    html{scroll-behavior:smooth;}
    body{
      margin:0;
      background:var(--bg);
      color:var(--text);
      font-family:var(--font-body);
      line-height:1.7;
      -webkit-font-smoothing:antialiased;
      text-rendering:optimizeLegibility;
      overflow-x:hidden;
    }
    img{max-width:100%;display:block;}
    a{color:inherit;text-decoration:none;}
    button,input{font:inherit;color:inherit;}
    button{cursor:pointer;border:0;background:none;}
    h1,h2,h3,h4,p{margin:0;}
    ul{margin:0;padding:0;list-style:none;}

    .site-container{
      width:min(1180px,92%);
      margin-inline:auto;
    }

    /* ---------- HEADER / NAV ---------- */
    .site-header{
      position:sticky;
      top:0;
      z-index:60;
      background:rgba(250,244,238,.92);
      backdrop-filter:blur(14px);
      border-bottom:1px solid var(--line);
    }
    .topbar{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:1.2rem;
      padding:.85rem 0;
    }
    .brand{
      display:flex;
      align-items:center;
      gap:.65rem;
      min-width:0;
    }
    .brand-mark{
      width:38px;
      height:38px;
      position:relative;
      flex:0 0 38px;
      border-radius:var(--radius);
      background:linear-gradient(135deg,var(--primary),var(--secondary));
      box-shadow:var(--shadow-sm);
    }
    .brand-mark::before{
      content:"";
      position:absolute;
      inset:9px;
      border:2px solid rgba(250,244,238,.9);
      border-radius:2px;
      transform:skewX(-14deg);
    }
    .brand-mark::after{
      content:"";
      position:absolute;
      width:10px;height:10px;
      right:5px;bottom:5px;
      background:var(--accent);
      border-radius:2px;
      transform:rotate(45deg);
    }
    .brand-text{
      display:flex;
      flex-direction:column;
      min-width:0;
    }
    .brand-title{
      font-family:var(--font-title);
      font-weight:900;
      letter-spacing:-.03em;
      font-size:1.02rem;
      line-height:1.2;
      white-space:nowrap;
      overflow:hidden;
      text-overflow:ellipsis;
      max-width:min(52vw,560px);
    }
    .brand-sub{
      font-size:.7rem;
      color:var(--muted);
      letter-spacing:.12em;
    }
    .header-search{
      flex:1 1 320px;
      max-width:360px;
      display:flex;
      align-items:center;
      gap:.4rem;
      background:var(--glass-strong);
      border:1px solid var(--line);
      border-radius:999px;
      padding:.3rem .35rem .3rem 1rem;
    }
    .header-search input{
      flex:1;
      min-width:0;
      border:0;
      outline:none;
      background:transparent;
      font-size:.88rem;
    }
    .header-search input::placeholder{color:#a08a7d;}
    .btn-search{
      border-radius:999px;
      padding:.38rem .95rem;
      font-size:.82rem;
      font-weight:700;
      color:#fff;
      background:var(--primary);
      transition:.25s ease;
      white-space:nowrap;
    }
    .btn-search:hover{background:var(--accent);}
    .header-cta{
      display:inline-flex;
      align-items:center;
      gap:.4rem;
      border:1px solid var(--primary);
      color:var(--primary);
      border-radius:999px;
      padding:.42rem 1.05rem;
      font-size:.82rem;
      font-weight:700;
      white-space:nowrap;
      transition:.25s ease;
    }
    .header-cta:hover{
      background:var(--primary);
      color:#fff;
    }

    .channel-bar{
      border-top:1px solid var(--line);
      background:rgba(255,255,255,.4);
    }
    .channel-scroll{
      display:flex;
      align-items:center;
      gap:.45rem;
      padding:.55rem 0;
      overflow-x:auto;
      scrollbar-width:none;
      -ms-overflow-style:none;
    }
    .channel-scroll::-webkit-scrollbar{display:none;}
    .channel-tab{
      flex:0 0 auto;
      padding:.36rem 1rem;
      border-radius:999px;
      font-size:.82rem;
      font-weight:600;
      color:var(--muted);
      border:1px solid transparent;
      transition:.2s ease;
      white-space:nowrap;
    }
    .channel-tab:hover{
      color:var(--primary);
      border-color:var(--line);
      background:#fff;
    }
    .channel-tab.is-active{
      color:#fff;
      background:var(--primary);
      border-color:var(--primary);
    }

    /* ---------- HERO ---------- */
    .hero{
      position:relative;
      overflow:hidden;
      background:var(--bg);
      padding:4.5rem 0 4rem;
      border-bottom:1px solid var(--line);
    }
    .hero::before{
      content:"";
      position:absolute;
      top:-12%;
      right:-10%;
      width:70%;
      height:130%;
      background:linear-gradient(150deg,var(--secondary),var(--primary) 62%,var(--accent));
      clip-path:polygon(28% 0,100% 0,100% 100%,0 100%);
      opacity:.13;
      pointer-events:none;
    }
    .hero::after{
      content:"";
      position:absolute;
      left:-6%;
      bottom:-38%;
      width:52%;
      height:110%;
      background:linear-gradient(160deg,var(--accent),transparent 70%);
      clip-path:polygon(0 0,86% 0,34% 100%,0 100%);
      opacity:.10;
      pointer-events:none;
    }
    .hero-inner{
      position:relative;
      z-index:2;
      display:grid;
      grid-template-columns:1.25fr .85fr;
      gap:2.6rem;
      align-items:center;
    }
    .hero-eyebrow{
      display:inline-flex;
      align-items:center;
      gap:.5rem;
      font-size:.76rem;
      font-weight:700;
      letter-spacing:.14em;
      color:var(--primary);
      background:rgba(138,75,42,.08);
      border:1px solid rgba(138,75,42,.22);
      padding:.35rem .9rem;
      border-radius:999px;
      margin-bottom:1.2rem;
    }
    .hero-eyebrow .dot{
      width:7px;height:7px;border-radius:50%;
      background:var(--accent);
      box-shadow:0 0 0 4px rgba(47,111,115,.16);
    }
    .hero h1{
      font-family:var(--font-title);
      font-weight:900;
      letter-spacing:-.03em;
      font-size:clamp(1.75rem,3.6vw,2.85rem);
      line-height:1.18;
      color:var(--text);
      margin-bottom:1.15rem;
    }
    .hero h1 em{
      font-style:normal;
      color:var(--primary);
      position:relative;
    }
    .hero h1 em::after{
      content:"";
      position:absolute;
      left:0;right:0;bottom:-.12em;
      height:.32em;
      background:rgba(184,106,60,.28);
      z-index:-1;
      border-radius:2px;
    }
    .hero-desc{
      font-size:1rem;
      color:var(--muted);
      max-width:36rem;
      margin-bottom:1.8rem;
    }
    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:.85rem;
      align-items:center;
    }
    .btn-outline-pill{
      display:inline-flex;
      align-items:center;
      gap:.45rem;
      border:1px solid var(--primary);
      color:var(--primary);
      border-radius:999px;
      padding:.65rem 1.6rem;
      font-weight:700;
      font-size:.92rem;
      transition:.25s ease;
      background:transparent;
    }
    .btn-outline-pill:hover{
      background:var(--primary);
      color:#fff;
      box-shadow:0 10px 24px rgba(138,75,42,.22);
      transform:translateY(-1px);
    }
    .btn-solid{
      display:inline-flex;
      align-items:center;
      gap:.45rem;
      border:1px solid var(--accent);
      background:var(--accent);
      color:#fff;
      border-radius:999px;
      padding:.65rem 1.6rem;
      font-weight:700;
      font-size:.92rem;
      transition:.25s ease;
    }
    .btn-solid:hover{
      background:transparent;
      color:var(--accent);
      box-shadow:0 10px 24px rgba(47,111,115,.2);
      transform:translateY(-1px);
    }

    .hero-panel{
      background:var(--glass);
      backdrop-filter:blur(12px);
      border:1px solid rgba(255,255,255,.72);
      border-radius:calc(var(--radius) * 2);
      padding:1.5rem 1.5rem 1.3rem;
      box-shadow:var(--shadow-lg);
    }
    .hero-panel-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      margin-bottom:1.1rem;
    }
    .hero-panel-head h3{
      font-family:var(--font-title);
      font-weight:800;
      letter-spacing:-.02em;
      font-size:1rem;
    }
    .live-badge{
      display:inline-flex;
      align-items:center;
      gap:.35rem;
      font-size:.68rem;
      font-weight:700;
      color:var(--accent);
      border:1px solid rgba(47,111,115,.35);
      padding:.22rem .6rem;
      border-radius:999px;
      background:rgba(47,111,115,.07);
    }
    .live-badge .pulse{
      width:6px;height:6px;border-radius:50%;
      background:var(--accent);
      animation:blink 1.6s infinite;
    }
    @keyframes blink{0%,100%{opacity:1;}50%{opacity:.25;}}
    .hero-list{
      display:flex;
      flex-direction:column;
      gap:.75rem;
      margin-bottom:1.2rem;
    }
    .hero-list li{
      display:flex;
      align-items:flex-start;
      gap:.6rem;
      font-size:.86rem;
      color:var(--text);
      padding-bottom:.75rem;
      border-bottom:1px dashed var(--line);
    }
    .hero-list li:last-child{border-bottom:0;padding-bottom:0;}
    .hero-list .idx{
      flex:0 0 22px;
      height:22px;
      border-radius:var(--radius);
      background:rgba(138,75,42,.12);
      color:var(--primary);
      font-size:.7rem;
      font-weight:800;
      display:grid;
      place-items:center;
      margin-top:2px;
    }
    .hero-list strong{font-weight:700;}
    .hero-list span.sub{
      display:block;
      font-size:.76rem;
      color:var(--muted);
    }
    .hero-meta{
      display:flex;
      gap:1.4rem;
      padding-top:1rem;
      border-top:1px solid var(--line);
    }
    .hero-meta div strong{
      display:block;
      font-family:var(--font-title);
      font-weight:900;
      font-size:1.35rem;
      letter-spacing:-.03em;
      color:var(--primary);
      line-height:1.1;
    }
    .hero-meta div span{
      font-size:.72rem;
      color:var(--muted);
    }

    /* ---------- SECTION SHELL ---------- */
    .section{
      padding:3.6rem 0;
    }
    .section-alt{
      background:rgba(255,255,255,.42);
      border-top:1px solid var(--line);
      border-bottom:1px solid var(--line);
    }
    .section-head{
      margin-bottom:2.1rem;
      max-width:56rem;
    }
    .section-head h2{
      font-family:var(--font-title);
      font-weight:900;
      letter-spacing:-.03em;
      font-size:clamp(1.28rem,2.4vw,1.72rem);
      line-height:1.3;
      display:flex;
      flex-wrap:wrap;
      align-items:baseline;
      gap:.6rem;
      margin-bottom:.55rem;
    }
    .section-head h2 .stat .num,.section-head h2 .stats .num,.section-head h2 .stat-row .num,.section-head h2 .hero-stats .num,.section-head h2 .data-card .num,.section-head h2 .data-row .num,.section-head h2 .pg-stat .num,.section-head h2 .section-stats .num{
      font-size:.82rem;
      font-weight:800;
      color:#fff;
      background:var(--primary);
      border-radius:var(--radius);
      padding:.15rem .55rem;
      letter-spacing:.05em;
      line-height:1.5;
      transform:translateY(-2px);
    }
    .section-head p{
      color:var(--muted);
      font-size:.92rem;
    }

    /* ---------- STEPS ---------- */
    .steps-grid{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:1rem;
    }
    .step-card{
      position:relative;
      background:var(--glass-strong);
      border:1px solid var(--line);
      border-radius:calc(var(--radius) * 2);
      padding:1.5rem 1.25rem 1.35rem;
      box-shadow:var(--shadow-sm);
      transition:.28s ease;
      overflow:hidden;
    }
    .step-card::after{
      content:"";
      position:absolute;
      left:0;top:0;height:4px;width:100%;
      background:linear-gradient(90deg,var(--primary),var(--secondary));
      transform:scaleX(0);
      transform-origin:left;
      transition:.32s ease;
    }
    .step-card:hover{
      transform:translateY(-4px);
      box-shadow:var(--shadow-md);
      border-color:rgba(138,75,42,.28);
    }
    .step-card:hover::after{transform:scaleX(1);}
    .step-no{
      font-family:var(--font-title);
      font-weight:900;
      font-size:1.9rem;
      letter-spacing:-.04em;
      color:rgba(138,75,42,.18);
      line-height:1;
      margin-bottom:.6rem;
    }
    .step-card h3{
      font-family:var(--font-title);
      font-weight:800;
      font-size:.98rem;
      margin-bottom:.45rem;
      letter-spacing:-.02em;
    }
    .step-card p{
      font-size:.82rem;
      color:var(--muted);
      line-height:1.65;
    }

    /* ---------- CATEGORY GRID ---------- */
    .cat-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:1rem;
    }
    .cat-card{
      position:relative;
      min-height:132px;
      border-radius:calc(var(--radius) * 2);
      padding:1.3rem 1.25rem;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      border:1px solid var(--line);
      background:var(--glass-strong);
      transition:.28s ease;
      overflow:hidden;
    }
    .cat-card:hover{
      transform:translateY(-3px);
      box-shadow:var(--shadow-md);
      border-color:rgba(47,111,115,.35);
    }
    .cat-card .tag{
      display:inline-flex;
      align-self:flex-start;
      font-size:.68rem;
      font-weight:700;
      color:var(--accent);
      border:1px solid rgba(47,111,115,.35);
      border-radius:999px;
      padding:.18rem .6rem;
      background:rgba(47,111,115,.06);
    }
    .cat-card h3{
      font-family:var(--font-title);
      font-weight:800;
      letter-spacing:-.02em;
      font-size:1.02rem;
      margin:.65rem 0 .3rem;
    }
    .cat-card p{
      font-size:.8rem;
      color:var(--muted);
    }
    .cat-card .arrow{
      font-size:.78rem;
      font-weight:700;
      color:var(--primary);
      margin-top:.7rem;
    }

    /* ---------- COMPARE TABLE ---------- */
    .compare-wrap{
      overflow-x:auto;
      border-radius:calc(var(--radius) * 2);
      border:1px solid var(--line);
      background:var(--glass-strong);
      box-shadow:var(--shadow-sm);
    }
    table.compare{
      width:100%;
      border-collapse:collapse;
      min-width:640px;
    }
    table.compare th,
    table.compare td{
      padding:1rem 1.15rem;
      text-align:left;
      font-size:.86rem;
      border-bottom:1px solid var(--line);
      vertical-align:top;
    }
    table.compare thead th{
      font-family:var(--font-title);
      font-weight:800;
      letter-spacing:-.02em;
      color:#fff;
      background:var(--primary);
      font-size:.85rem;
      border-bottom:0;
    }
    table.compare thead th:first-child{background:var(--secondary);}
    table.compare tbody tr:last-child td{border-bottom:0;}
    table.compare tbody tr:nth-child(even) td{background:rgba(184,106,60,.05);}
    table.compare td strong{color:var(--primary);}
    .good{color:var(--accent);font-weight:700;}
    .mid{color:var(--secondary);font-weight:700;}

    /* ---------- METRIC BAR ---------- */
    .metric-strip{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:1rem;
    }
    .metric-item{
      background:var(--glass);
      backdrop-filter:blur(10px);
      border:1px solid rgba(255,255,255,.7);
      border-radius:calc(var(--radius) * 2);
      padding:1.35rem 1.2rem;
      box-shadow:var(--shadow-sm);
      position:relative;
      overflow:hidden;
    }
    .metric-item::before{
      content:"";
      position:absolute;
      right:-24px;top:-24px;
      width:70px;height:70px;
      border-radius:50%;
      background:rgba(47,111,115,.10);
    }
    .metric-item .value{
      font-family:var(--font-title);
      font-weight:900;
      letter-spacing:-.04em;
      font-size:clamp(1.5rem,2.6vw,2.05rem);
      color:var(--primary);
      line-height:1.05;
    }
    .metric-item .label{
      font-size:.82rem;
      font-weight:700;
      margin-top:.35rem;
    }
    .metric-item .hint{
      font-size:.74rem;
      color:var(--muted);
    }

    /* ---------- FEATURE ROW CARDS ---------- */
    .feature-rail{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:1.15rem;
    }
    .feature-card{
      border-radius:calc(var(--radius) * 2);
      overflow:hidden;
      border:1px solid var(--line);
      background:#fff;
      box-shadow:var(--shadow-sm);
      transition:.28s ease;
      display:flex;
      flex-direction:column;
    }
    .feature-card:hover{
      transform:translateY(-4px);
      box-shadow:var(--shadow-lg);
    }
    .feature-cover{
      height:142px;
      position:relative;
      background:
        linear-gradient(135deg,rgba(138,75,42,.88),rgba(47,111,115,.85)),
        repeating-linear-gradient(45deg,rgba(255,255,255,.06) 0 12px,transparent 12px 24px);
      display:flex;
      align-items:flex-end;
      padding:1rem;
    }
    .feature-cover .pill{
      font-size:.68rem;
      font-weight:800;
      color:#fff;
      background:rgba(0,0,0,.22);
      border:1px solid rgba(255,255,255,.45);
      border-radius:999px;
      padding:.2rem .65rem;
      backdrop-filter:blur(4px);
    }
    .feature-body{
      padding:1.1rem 1.15rem 1.25rem;
      display:flex;
      flex-direction:column;
      gap:.45rem;
      flex:1;
    }
    .feature-body h3{
      font-family:var(--font-title);
      font-weight:800;
      font-size:.98rem;
      letter-spacing:-.02em;
      line-height:1.4;
    }
    .feature-body p{
      font-size:.81rem;
      color:var(--muted);
      line-height:1.65;
      flex:1;
    }
    .feature-meta{
      display:flex;
      align-items:center;
      gap:.7rem;
      font-size:.74rem;
      color:var(--muted);
      padding-top:.6rem;
      border-top:1px dashed var(--line);
    }
    .feature-meta .dot-sep{
      width:4px;height:4px;border-radius:50%;background:var(--line);
    }

    /* ---------- BRAND STORY ---------- */
    .story-grid{
      display:grid;
      grid-template-columns:1.05fr .95fr;
      gap:2.4rem;
      align-items:center;
    }
    .story-visual{
      border-radius:calc(var(--radius) * 2);
      border:1px solid var(--line);
      background:
        radial-gradient(circle at 82% 18%,rgba(47,111,115,.20),transparent 52%),
        linear-gradient(160deg,var(--secondary),var(--primary) 68%);
      min-height:310px;
      position:relative;
      overflow:hidden;
      box-shadow:var(--shadow-md);
    }
    .story-visual::after{
      content:"";
      position:absolute;
      inset:0;
      background:repeating-linear-gradient(115deg,rgba(255,255,255,.08) 0 2px,transparent 2px 26px);
    }
    .story-badge{
      position:absolute;
      left:1.2rem;bottom:1.2rem;
      background:rgba(250,244,238,.94);
      border-radius:var(--radius);
      padding:.8rem 1.05rem;
      box-shadow:var(--shadow-md);
      z-index:2;
    }
    .story-badge strong{
      display:block;
      font-family:var(--font-title);
      font-weight:900;
      font-size:1.15rem;
      letter-spacing:-.03em;
      color:var(--primary);
    }
    .story-badge span{font-size:.74rem;color:var(--muted);}
    .story-copy h3{
      font-family:var(--font-title);
      font-weight:900;
      letter-spacing:-.03em;
      font-size:clamp(1.18rem,2vw,1.5rem);
      margin-bottom:.9rem;
      line-height:1.35;
    }
    .story-copy p{
      font-size:.9rem;
      color:var(--muted);
      margin-bottom:1rem;
    }
    .story-points{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:.75rem 1.2rem;
      margin-top:1.3rem;
    }
    .story-points li{
      display:flex;
      align-items:flex-start;
      gap:.5rem;
      font-size:.82rem;
      font-weight:600;
    }
    .story-points li::before{
      content:"";
      width:8px;height:8px;
      margin-top:.5rem;
      border-radius:2px;
      background:var(--secondary);
      flex:0 0 8px;
      transform:rotate(45deg);
    }

    /* ---------- TESTIMONIALS ---------- */
    .voice-grid{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:1.1rem;
    }
    .voice-card{
      background:var(--glass-strong);
      border:1px solid var(--line);
      border-radius:calc(var(--radius) * 2);
      padding:1.4rem 1.3rem;
      box-shadow:var(--shadow-sm);
      transition:.28s ease;
      display:flex;
      flex-direction:column;
      gap:.85rem;
    }
    .voice-card:hover{
      transform:translateY(-3px);
      box-shadow:var(--shadow-md);
      border-color:rgba(184,106,60,.3);
    }
    .voice-stars{
      color:var(--secondary);
      font-size:.9rem;
      letter-spacing:.12em;
    }
    .voice-card p{
      font-size:.85rem;
      color:var(--text);
      line-height:1.75;
      flex:1;
    }
    .voice-user{
      display:flex;
      align-items:center;
      gap:.7rem;
      padding-top:.8rem;
      border-top:1px dashed var(--line);
    }
    .avatar{
      width:36px;height:36px;
      border-radius:50%;
      display:grid;
      place-items:center;
      font-weight:800;
      font-size:.8rem;
      color:#fff;
      background:linear-gradient(135deg,var(--primary),var(--accent));
      flex:0 0 36px;
    }
    .voice-user strong{display:block;font-size:.83rem;}
    .voice-user span{font-size:.72rem;color:var(--muted);}

    /* ---------- SCENE / AUDIENCE ---------- */
    .scene-grid{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:1rem;
    }
    .scene-card{
      border-radius:calc(var(--radius) * 2);
      border:1px solid var(--line);
      padding:1.3rem 1.15rem;
      background:var(--glass-strong);
      transition:.28s ease;
    }
    .scene-card:hover{
      background:#fff;
      border-color:rgba(47,111,115,.32);
      transform:translateY(-3px);
      box-shadow:var(--shadow-sm);
    }
    .scene-icon{
      width:40px;height:40px;
      border-radius:var(--radius);
      background:rgba(138,75,42,.1);
      color:var(--primary);
      display:grid;
      place-items:center;
      font-weight:900;
      font-family:var(--font-title);
      font-size:.9rem;
      margin-bottom:.8rem;
      border:1px solid rgba(138,75,42,.2);
    }
    .scene-card h3{
      font-family:var(--font-title);
      font-weight:800;
      font-size:.93rem;
      letter-spacing:-.02em;
      margin-bottom:.35rem;
    }
    .scene-card p{
      font-size:.79rem;
      color:var(--muted);
      line-height:1.62;
    }

    /* ---------- FAQ ---------- */
    .faq-list{
      display:flex;
      flex-direction:column;
      gap:.75rem;
      max-width:60rem;
    }
    details.faq-item{
      background:var(--glass-strong);
      border:1px solid var(--line);
      border-radius:calc(var(--radius) * 2);
      padding:.2rem 1.15rem;
      transition:.25s ease;
    }
    details.faq-item[open]{
      border-color:rgba(138,75,42,.35);
      box-shadow:var(--shadow-sm);
      background:#fff;
    }
    details.faq-item summary{
      cursor:pointer;
      list-style:none;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:1rem;
      padding:1rem 0;
      font-family:var(--font-title);
      font-weight:700;
      font-size:.9rem;
      letter-spacing:-.01em;
    }
    details.faq-item summary::-webkit-details-marker{display:none;}
    details.faq-item summary .plus{
      width:22px;height:22px;
      flex:0 0 22px;
      border-radius:50%;
      border:1px solid var(--primary);
      color:var(--primary);
      display:grid;
      place-items:center;
      font-size:.85rem;
      font-weight:800;
      transition:.25s ease;
    }
    details.faq-item[open] summary .plus{
      background:var(--primary);
      color:#fff;
      transform:rotate(45deg);
    }
    details.faq-item .faq-answer{
      font-size:.85rem;
      color:var(--muted);
      line-height:1.78;
      padding:0 0 1.1rem;
      border-top:1px dashed var(--line);
      margin-top:-2px;
      padding-top:.85rem;
    }

    /* ---------- CTA BAND ---------- */
    .cta-band{
      border-radius:calc(var(--radius) * 2);
      padding:2.6rem 2.2rem;
      background:
        radial-gradient(circle at 90% 12%,rgba(255,255,255,.16),transparent 50%),
        linear-gradient(120deg,var(--primary),var(--secondary) 58%,var(--accent));
      color:#fff;
      position:relative;
      overflow:hidden;
      box-shadow:var(--shadow-lg);
    }
    .cta-band::after{
      content:"";
      position:absolute;
      inset:0;
      background:repeating-linear-gradient(125deg,rgba(255,255,255,.06) 0 2px,transparent 2px 30px);
    }
    .cta-inner{
      position:relative;
      z-index:2;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:1.8rem;
      flex-wrap:wrap;
    }
    .cta-inner h2{
      font-family:var(--font-title);
      font-weight:900;
      letter-spacing:-.03em;
      font-size:clamp(1.2rem,2.4vw,1.7rem);
      line-height:1.32;
      margin-bottom:.5rem;
    }
    .cta-inner p{
      font-size:.88rem;
      opacity:.92;
      max-width:40rem;
    }
    .cta-actions{
      display:flex;
      gap:.8rem;
      flex-wrap:wrap;
    }
    .btn-ghost{
      border:1px solid rgba(255,255,255,.8);
      color:#fff;
      border-radius:999px;
      padding:.7rem 1.7rem;
      font-weight:700;
      font-size:.9rem;
      transition:.25s ease;
      background:transparent;
    }
    .btn-ghost:hover{
      background:#fff;
      color:var(--primary);
      transform:translateY(-1px);
    }
    .btn-light{
      background:#fff;
      color:var(--primary);
      border:1px solid #fff;
      border-radius:999px;
      padding:.7rem 1.7rem;
      font-weight:800;
      font-size:.9rem;
      transition:.25s ease;
    }
    .btn-light:hover{
      background:rgba(255,255,255,.85);
      transform:translateY(-1px);
      box-shadow:0 12px 26px rgba(0,0,0,.18);
    }

    /* ---------- FOOTER ---------- */
    .site-footer{
      margin-top:0;
      border-top:3px solid var(--primary);
      background:var(--bg);
      padding:3rem 0 1.6rem;
    }
    .footer-top{
      display:grid;
      grid-template-columns:1.35fr 1fr 1fr 1fr;
      gap:2rem;
      padding-bottom:2.2rem;
      border-bottom:1px solid var(--line);
    }
    .footer-brand{
      display:flex;
      flex-direction:column;
      gap:.8rem;
    }
    .footer-brand .brand-title{
      white-space:normal;
      font-size:1rem;
      max-width:100%;
    }
    .footer-brand p{
      font-size:.8rem;
      color:var(--muted);
      line-height:1.75;
    }
    .footer-col h4{
      font-family:var(--font-title);
      font-weight:800;
      font-size:.86rem;
      letter-spacing:.02em;
      margin-bottom:1rem;
      color:var(--text);
    }
    .footer-links{
      display:flex;
      flex-direction:column;
      gap:.6rem;
    }
    .footer-links a{
      font-size:.8rem;
      color:var(--muted);
      transition:.2s ease;
      width:fit-content;
    }
    .footer-links a:hover{color:var(--primary);transform:translateX(3px);}
    .footer-bottom{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:1rem;
      flex-wrap:wrap;
      padding-top:1.4rem;
      font-size:.76rem;
      color:var(--muted);
    }
    .footer-bottom .links-row{
      display:flex;
      gap:1.2rem;
      flex-wrap:wrap;
    }
    .footer-bottom .links-row a:hover{color:var(--primary);}

    /* ---------- RESPONSIVE ---------- */
    @media (max-width:1024px){
      .hero-inner{grid-template-columns:1fr;gap:2rem;}
      .steps-grid{grid-template-columns:repeat(2,1fr);}
      .cat-grid{grid-template-columns:repeat(2,1fr);}
      .feature-rail{grid-template-columns:repeat(2,1fr);}
      .scene-grid{grid-template-columns:repeat(2,1fr);}
      .voice-grid{grid-template-columns:1fr 1fr;}
      .metric-strip{grid-template-columns:repeat(2,1fr);}
      .story-grid{grid-template-columns:1fr;gap:1.8rem;}
      .footer-top{grid-template-columns:1fr 1fr;gap:1.6rem;}}
    @media (max-width:768px){
      .topbar{flex-wrap:wrap;gap:.8rem;padding:.75rem 0;}
      .header-search{order:3;flex:1 1 100%;max-width:100%;}
      .header-cta{padding:.38rem .85rem;}
      .brand-title{font-size:.92rem;max-width:64vw;}
      .hero{padding:3.2rem 0 2.8rem;}
      .section{padding:2.6rem 0;}
      .steps-grid{grid-template-columns:1fr;}
      .cat-grid{grid-template-columns:1fr;}
      .feature-rail{grid-template-columns:1fr;}
      .voice-grid{grid-template-columns:1fr;}
      .scene-grid{grid-template-columns:1fr;}
      .metric-strip{grid-template-columns:1fr 1fr;}
      .story-points{grid-template-columns:1fr;}
      .cta-band{padding:1.9rem 1.4rem;}
      .cta-inner{flex-direction:column;align-items:flex-start;}
      .footer-top{grid-template-columns:1fr;}
      .footer-bottom{flex-direction:column;align-items:flex-start;}}
    @media (max-width:520px){
      .hero-actions{flex-direction:column;align-items:stretch;}
      .btn-outline-pill,.btn-solid,.btn-ghost,.btn-light{justify-content:center;width:100%;text-align:center;}
      .hero-meta{gap:1rem;flex-wrap:wrap;}
      .metric-strip{grid-template-columns:1fr;}
      .brand-mark{width:34px;height:34px;flex-basis:34px;}}

    /* foundation overrides */
    .row{max-width:none;}
    .button,button.button{
      background:none;border:0;border-radius:0;padding:0;margin:0;color:inherit;
    }
    .button:hover{background:none;}

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,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}