/* roulang page: index */
:root{
      --bg:#130B18;
      --bg-2:#1B1024;
      --bg-3:#211222;
      --panel:#24152C;
      --panel-2:#2F172B;
      --panel-3:#3A182D;
      --primary:#A12B58;
      --primary-dark:#6D1E4D;
      --danger:#C73342;
      --gold:#D7A546;
      --gold-2:#F6C65B;
      --copper:#8A5A2B;
      --text:#F3E8D5;
      --muted:#B89AC8;
      --muted-2:rgba(243,232,213,.72);
      --line:rgba(215,165,70,.28);
      --line-bright:rgba(246,198,91,.55);
      --shadow:0 24px 70px rgba(0,0,0,.45);
      --glow:0 0 34px rgba(215,165,70,.22);
      --radius:24px;
      --radius-sm:16px;
      --container:1200px;
      --transition:220ms ease;
    }

    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{
      font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;
      background:
        radial-gradient(circle at 20% 0%, rgba(161,43,88,.33), transparent 32%),
        radial-gradient(circle at 84% 8%, rgba(215,165,70,.14), transparent 28%),
        linear-gradient(180deg,var(--bg),#0B0710 72%);
      color:var(--text);
      line-height:1.7;
      min-height:100vh;
      overflow-x:hidden;
    }
    body::before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      background-image:
        linear-gradient(120deg, rgba(215,165,70,.045) 1px, transparent 1px),
        radial-gradient(circle, rgba(246,198,91,.08) 1px, transparent 1px);
      background-size:72px 72px, 22px 22px;
      mask-image:linear-gradient(180deg, rgba(0,0,0,.8), transparent 80%);
      z-index:-1;
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button,input,select,textarea{font:inherit}
    button{cursor:pointer;border:0}
    input,select,textarea{
      width:100%;
      background:rgba(19,11,24,.72);
      color:var(--text);
      border:1px solid var(--line);
      border-radius:14px;
      padding:14px 15px;
      outline:none;
      transition:border-color var(--transition), box-shadow var(--transition), background var(--transition);
    }
    input:focus,select:focus,textarea:focus{
      border-color:var(--gold-2);
      box-shadow:0 0 0 4px rgba(246,198,91,.12);
      background:rgba(19,11,24,.92);
    }
    textarea{min-height:118px;resize:vertical}
    ::selection{background:rgba(215,165,70,.38);color:#fff}

    .container{width:min(var(--container), calc(100% - 64px));margin:0 auto}
    .section{position:relative;padding:86px 0}
    .section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:34px}
    .section-kicker{
      display:inline-flex;align-items:center;gap:8px;
      font-size:13px;font-weight:800;letter-spacing:.08em;
      color:var(--gold-2);text-transform:uppercase;
      padding:7px 12px;border:1px solid var(--line);
      border-radius:999px;background:rgba(215,165,70,.08);
    }
    .section-title{font-size:clamp(28px,3.2vw,40px);line-height:1.18;font-weight:900;letter-spacing:-.03em;margin-top:14px}
    .section-desc{max-width:650px;color:var(--muted-2);font-size:16px}
    .divider{height:1px;background:linear-gradient(90deg,transparent,var(--line-bright),transparent);margin:24px 0}

    .top-strip{
      background:linear-gradient(90deg,#4E1426,var(--danger),#5B1835);
      border-bottom:1px solid rgba(246,198,91,.35);
      color:#FFE7A2;
      font-size:14px;
    }
    .top-strip .container{
      min-height:42px;display:flex;align-items:center;justify-content:center;gap:14px;text-align:center;
    }
    .strip-dot{width:8px;height:8px;border-radius:50%;background:var(--gold-2);box-shadow:0 0 14px var(--gold-2)}
    .site-header{
      position:sticky;top:0;z-index:50;
      background:rgba(19,11,24,.86);
      backdrop-filter:blur(18px);
      border-bottom:1px solid var(--line);
      box-shadow:0 12px 44px rgba(0,0,0,.24);
    }
    .nav{
      min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px;
    }
    .brand{
      display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:-.02em;
      min-width:max-content;
    }
    .brand-mark{
      width:42px;height:42px;border-radius:15px;
      display:grid;place-items:center;
      background:linear-gradient(135deg,var(--primary-dark),var(--primary) 58%,var(--gold));
      border:1px solid rgba(246,198,91,.42);
      box-shadow:var(--glow);
      color:#fff;font-size:18px;
    }
    .brand-text{font-size:18px}
    .nav-links{display:flex;align-items:center;gap:8px;margin-left:auto}
    .nav-links a{
      position:relative;padding:10px 15px;border-radius:999px;
      color:var(--muted-2);font-weight:700;font-size:15px;
      transition:color var(--transition), background var(--transition);
    }
    .nav-links a:hover,.nav-links a.active{
      color:var(--gold-2);background:rgba(161,43,88,.24);
    }
    .nav-links a.active::after{
      content:"";position:absolute;left:18px;right:18px;bottom:5px;height:2px;
      background:var(--gold-2);border-radius:99px;
    }
    .nav-actions{display:flex;align-items:center;gap:12px}
    .age-badge,.badge{
      display:inline-flex;align-items:center;justify-content:center;gap:6px;
      border-radius:999px;font-size:13px;font-weight:900;white-space:nowrap;
    }
    .age-badge{padding:8px 11px;background:rgba(199,51,66,.22);color:var(--gold-2);border:1px solid rgba(246,198,91,.42)}
    .menu-toggle{
      display:none;width:42px;height:42px;border-radius:14px;
      background:rgba(215,165,70,.1);border:1px solid var(--line);color:var(--text);
    }
    .menu-toggle span{display:block;width:20px;height:2px;background:currentColor;margin:5px auto;border-radius:2px}

    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:9px;
      min-height:46px;padding:12px 20px;border-radius:999px;
      font-weight:900;font-size:15px;transition:transform var(--transition), box-shadow var(--transition), background var(--transition), border-color var(--transition), color var(--transition);
      user-select:none;
    }
    .btn-primary{
      color:#fff;background:linear-gradient(135deg,var(--primary),var(--danger));
      border:1px solid rgba(246,198,91,.48);box-shadow:0 12px 34px rgba(161,43,88,.35);
    }
    .btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 44px rgba(215,165,70,.26),0 0 0 4px rgba(246,198,91,.08);background:linear-gradient(135deg,#B83263,#D13A48)}
    .btn-secondary{
      color:var(--gold-2);background:rgba(19,11,24,.36);border:1px solid var(--line-bright);
    }
    .btn-secondary:hover{transform:translateY(-2px);background:rgba(109,30,77,.42);border-color:var(--gold-2)}
    .btn-wide{width:100%}

    .hero{
      padding:72px 0 76px;
      min-height:680px;
      display:flex;align-items:center;
      background:
        linear-gradient(112deg, rgba(19,11,24,.22), rgba(19,11,24,.7)),
        radial-gradient(circle at 72% 35%, rgba(215,165,70,.18), transparent 28%),
        radial-gradient(circle at 32% 24%, rgba(199,51,66,.28), transparent 34%);
      overflow:hidden;
    }
    .hero::before{
      content:"";position:absolute;inset:30px 0 auto auto;width:48vw;height:560px;
      background:linear-gradient(135deg, rgba(161,43,88,.25), rgba(215,165,70,.08));
      clip-path:polygon(18% 0,100% 0,84% 100%,0 100%);
      opacity:.9;filter:blur(.2px);
    }
    .hero-layout{
      position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
      gap:44px;align-items:center;
    }
    .hero-poster{
      position:relative;
      min-height:520px;
      border:1px solid var(--line-bright);
      border-radius:34px;
      overflow:hidden;
      box-shadow:var(--shadow),var(--glow);
      background:
        linear-gradient(140deg, rgba(161,43,88,.64), rgba(33,18,34,.92) 46%, rgba(10,6,14,.94)),
        radial-gradient(circle at 80% 18%, rgba(246,198,91,.3), transparent 24%);
      padding:42px;
    }
    .hero-poster::before{
      content:"";
      position:absolute;inset:0;
      background:
        linear-gradient(90deg, rgba(246,198,91,.08) 1px, transparent 1px),
        linear-gradient(0deg, rgba(246,198,91,.06) 1px, transparent 1px);
      background-size:46px 46px;
      opacity:.36;
    }
    .hero-content{position:relative;z-index:2;max-width:720px}
    .hero h1{
      font-size:clamp(34px,5vw,58px);
      line-height:1.12;font-weight:950;letter-spacing:-.05em;
      text-shadow:0 2px 0 rgba(215,165,70,.18),0 18px 54px rgba(0,0,0,.45);
    }
    .hero h1 span{color:var(--gold-2)}
    .hero-intro{
      margin-top:24px;color:var(--muted-2);font-size:18px;max-width:680px;
    }
    .hero-ctas{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
    .hero-data{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px;max-width:680px}
    .data-pill{
      padding:16px;border:1px solid var(--line);border-radius:18px;
      background:rgba(19,11,24,.48);
    }
    .data-pill strong{display:block;color:var(--gold-2);font-size:22px;line-height:1.1}
    .data-pill small{display:block;margin-top:6px;color:var(--muted);font-weight:700}

    .poster-card{
      position:relative;z-index:2;margin-top:26px;
      border:1px solid rgba(246,198,91,.34);
      background:rgba(12,7,16,.62);
      border-radius:24px;padding:22px;
    }
    .poster-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
    .entry-mini{
      padding:16px;border-radius:18px;
      background:linear-gradient(145deg, rgba(109,30,77,.55), rgba(19,11,24,.7));
      border:1px solid var(--line);
      transition:transform var(--transition), border-color var(--transition);
    }
    .entry-mini:hover{transform:translateY(-3px);border-color:var(--gold-2)}
    .entry-mini b{display:block;color:var(--text);font-size:15px}
    .entry-mini em{display:block;font-style:normal;color:var(--muted);font-size:13px;margin-top:4px}
    .compliance-list{margin-top:18px;display:grid;gap:10px}
    .check-item{display:flex;align-items:flex-start;gap:10px;color:var(--muted-2);font-size:14px}
    .check-item::before{content:"◆";color:var(--gold-2);font-size:12px;margin-top:2px}

    .tier-section{
      background:
        linear-gradient(180deg, rgba(109,30,77,.72), rgba(45,14,31,.88)),
        radial-gradient(circle at 80% 20%, rgba(246,198,91,.18), transparent 30%);
      border-top:1px solid var(--line);
      border-bottom:1px solid var(--line);
    }
    .limit-bar{
      display:flex;align-items:center;justify-content:space-between;gap:18px;
      padding:16px 18px;border:1px solid rgba(246,198,91,.42);
      border-radius:20px;background:linear-gradient(90deg,rgba(199,51,66,.42),rgba(215,165,70,.12));
      margin-bottom:30px;
    }
    .limit-bar strong{color:var(--gold-2)}
    .countdown{display:flex;gap:8px;white-space:nowrap}
    .countdown span{min-width:40px;padding:6px 8px;text-align:center;border-radius:10px;background:#160A17;border:1px solid var(--line);color:var(--gold-2);font-weight:900}
    .tier-grid{
      display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:end;
    }
    .tier-card{
      position:relative;padding:24px;border-radius:var(--radius);
      background:rgba(19,11,24,.58);border:1px solid var(--line);
      box-shadow:0 18px 48px rgba(0,0,0,.25);
      min-height:360px;display:flex;flex-direction:column;
      transition:transform var(--transition), border-color var(--transition), box-shadow var(--transition);
    }
    .tier-card:nth-child(2){min-height:392px}
    .tier-card:nth-child(3){min-height:430px;background:linear-gradient(180deg,rgba(161,43,88,.58),rgba(19,11,24,.78));border-color:var(--gold-2);box-shadow:0 24px 64px rgba(161,43,88,.34),var(--glow)}
    .tier-card:nth-child(4){min-height:382px}
    .tier-card:hover{transform:translateY(-6px);border-color:var(--gold-2)}
    .tier-name{font-size:22px;font-weight:900;margin:12px 0 8px}
    .tier-for{color:var(--muted);font-size:14px;min-height:48px}
    .tier-price{margin:18px 0;color:var(--gold-2);font-size:28px;font-weight:950}
    .tier-price small{font-size:13px;color:var(--muted);font-weight:700}
    .feature-list{list-style:none;display:grid;gap:10px;margin:16px 0 22px}
    .feature-list li{position:relative;padding-left:18px;color:var(--muted-2);font-size:14px}
    .feature-list li::before{content:"";position:absolute;left:0;top:.72em;width:8px;height:2px;background:var(--gold-2);border-radius:5px}
    .tier-card .btn{margin-top:auto}
    .tag-hot{position:absolute;right:18px;top:18px;padding:6px 10px;border-radius:999px;background:var(--gold-2);color:#2A1026;font-size:12px;font-weight:950}

    .compare-section{background:linear-gradient(180deg,#140C16,#211719)}
    .compare-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;align-items:start}
    .notice-card,.panel-card{
      border:1px solid var(--line);border-radius:var(--radius);background:rgba(36,21,44,.72);padding:26px;box-shadow:var(--shadow);
    }
    .notice-card h3,.panel-card h3{font-size:24px;line-height:1.25;margin-bottom:14px}
    .notice-card p{color:var(--muted-2)}
    .compare-table{
      overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);
      background:rgba(19,11,24,.62);
    }
    .compare-row{display:grid;grid-template-columns:1.1fr repeat(3,1fr)}
    .compare-row>div{padding:16px;border-bottom:1px solid rgba(215,165,70,.16);border-right:1px solid rgba(215,165,70,.16);color:var(--muted-2)}
    .compare-row>div:last-child{border-right:0}
    .compare-row.head>div{background:rgba(138,90,43,.28);color:var(--gold-2);font-weight:950}
    .compare-row:last-child>div{border-bottom:0}
    .yes{color:var(--gold-2);font-weight:900}
    .soft{color:var(--muted)}

    .entry-section{
      background:
        linear-gradient(130deg,rgba(199,51,66,.44),rgba(33,18,34,.94) 44%,rgba(109,30,77,.72)),
        radial-gradient(circle at 12% 20%,rgba(246,198,91,.2),transparent 26%);
      border-top:1px solid var(--line);
      border-bottom:1px solid var(--line);
    }
    .entry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .entry-card{
      position:relative;overflow:hidden;min-height:210px;
      padding:24px;border-radius:var(--radius);border:1px solid var(--line);
      background:linear-gradient(145deg,rgba(19,11,24,.74),rgba(58,24,45,.62));
      transition:transform var(--transition), border-color var(--transition), box-shadow var(--transition);
    }
    .entry-card:hover{transform:translateY(-5px);border-color:var(--gold-2);box-shadow:var(--glow)}
    .entry-card::after{
      content:"";position:absolute;right:-40px;top:-40px;width:120px;height:120px;border-radius:50%;
      border:1px solid rgba(246,198,91,.18);
    }
    .icon{
      width:48px;height:48px;border-radius:16px;display:grid;place-items:center;
      background:rgba(215,165,70,.12);border:1px solid var(--line);font-size:22px;margin-bottom:18px;
    }
    .entry-card h3{font-size:21px;margin-bottom:8px}
    .entry-card p{color:var(--muted-2);font-size:15px}
    .status{display:inline-flex;margin-top:16px;padding:6px 10px;border-radius:999px;background:rgba(109,30,77,.42);border:1px solid var(--line);color:var(--gold-2);font-size:12px;font-weight:900}

    .form-section{background:linear-gradient(180deg,#0E0712,#1B1024)}
    .form-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:28px;align-items:start}
    .promise-list{display:grid;gap:14px;margin-top:22px}
    .promise-item{padding:16px 18px;border-radius:18px;background:rgba(215,165,70,.07);border:1px solid var(--line);color:var(--muted-2)}
    .form-card{
      border:1px solid var(--line-bright);border-radius:30px;padding:28px;
      background:linear-gradient(180deg,rgba(36,21,44,.92),rgba(19,11,24,.92));
      box-shadow:var(--shadow),var(--glow);
    }
    .form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
    .field-full{grid-column:1/-1}
    .field label{display:block;margin-bottom:8px;font-weight:800;color:var(--text)}
    .hint{font-size:13px;color:var(--muted);margin-top:7px}
    .checkline{
      display:flex;align-items:flex-start;gap:10px;color:var(--muted-2);font-size:14px;margin-top:12px;
    }
    .checkline input{width:18px;height:18px;margin-top:4px;accent-color:var(--primary)}
    .form-message{display:none;margin-top:14px;padding:12px 14px;border-radius:14px;font-weight:800}
    .form-message.success{display:block;background:rgba(42,78,54,.22);border:1px solid rgba(215,165,70,.42);color:#DDEBC7}
    .form-message.error{display:block;background:rgba(199,51,66,.18);border:1px solid rgba(255,145,156,.35);color:#FFD3D8}

    .guide-section{background:linear-gradient(180deg,#1B1024,#130B18)}
    .guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
    .steps{counter-reset:step;display:grid;gap:14px}
    .step-item{
      counter-increment:step;display:grid;grid-template-columns:48px 1fr;gap:14px;
      padding:18px;border:1px solid var(--line);border-radius:20px;background:rgba(36,21,44,.58);
    }
    .step-item::before{
      content:counter(step);width:44px;height:44px;border-radius:14px;display:grid;place-items:center;
      background:linear-gradient(135deg,var(--primary),var(--gold));color:#fff;font-weight:950;
    }
    .step-item h3{font-size:18px;margin-bottom:4px}
    .step-item p{color:var(--muted-2);font-size:14px}

    .news-section{background:linear-gradient(180deg,#130B18,#100712)}
    .news-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}
    .news-list{display:grid;gap:10px}
    .news-item{
      display:flex;justify-content:space-between;gap:18px;align-items:center;
      padding:16px 18px;border-radius:18px;background:rgba(36,21,44,.58);border:1px solid var(--line);
      transition:background var(--transition), border-color var(--transition), transform var(--transition);
    }
    .news-item:hover{transform:translateX(4px);background:rgba(109,30,77,.28);border-color:var(--gold-2)}
    .news-item b{font-size:16px}
    .news-item span{color:var(--muted);font-size:13px;white-space:nowrap}
    .rank-list{display:grid;gap:12px}
    .rank-item{display:grid;grid-template-columns:42px 1fr auto;gap:12px;align-items:center;padding:14px;border-radius:16px;background:rgba(19,11,24,.68);border:1px solid rgba(215,165,70,.18)}
    .rank-no{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:rgba(215,165,70,.12);color:var(--gold-2);font-weight:950}
    .rank-item strong{display:block}
    .rank-item small{color:var(--muted)}
    .rank-score{color:var(--gold-2);font-weight:950}

    .faq-section{background:linear-gradient(180deg,#100712,#09060C)}
    .faq-list{display:grid;gap:14px;max-width:920px;margin:0 auto}
    .faq-item{
      border:1px solid var(--line);border-radius:20px;background:rgba(36,21,44,.64);overflow:hidden;
      transition:border-color var(--transition), box-shadow var(--transition);
    }
    .faq-item.open{border-color:var(--gold-2);box-shadow:var(--glow)}
    .faq-q{
      width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;
      padding:20px 22px;background:transparent;color:var(--text);font-weight:900;text-align:left;
    }
    .faq-q span:last-child{color:var(--gold-2);font-size:24px;line-height:1}
    .faq-a{max-height:0;overflow:hidden;transition:max-height 220ms ease}
    .faq-a p{padding:0 22px 20px;color:var(--muted-2)}

    .site-footer{
      background:#070409;border-top:1px solid var(--line);padding:46px 0 24px;
    }
    .footer-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:28px;margin-bottom:30px}
    .footer-title{font-size:20px;font-weight:950;margin-bottom:12px}
    .footer-text{color:var(--muted-2);font-size:14px}
    .footer-links{display:grid;gap:10px}
    .footer-links a{color:var(--muted-2);transition:color var(--transition), transform var(--transition)}
    .footer-links a:hover{color:var(--gold-2);transform:translateX(3px)}
    .copyright{
      border-top:1px solid rgba(215,165,70,.16);padding-top:18px;
      display:flex;align-items:center;justify-content:space-between;gap:16px;color:rgba(243,232,213,.62);font-size:13px;
    }

    @media (max-width:1024px){
      .container{width:min(var(--container), calc(100% - 48px))}
      .hero-layout,.compare-layout,.form-layout,.news-layout{grid-template-columns:1fr}
      .hero-poster{min-height:auto}
      .tier-grid{grid-template-columns:repeat(2,1fr);align-items:stretch}
      .tier-card,.tier-card:nth-child(2),.tier-card:nth-child(3),.tier-card:nth-child(4){min-height:auto}
      .entry-grid{grid-template-columns:repeat(2,1fr)}
      .guide-grid{grid-template-columns:1fr}
      .footer-grid{grid-template-columns:1fr 1fr}
    }
    @media (max-width:768px){
      .container{width:min(var(--container), calc(100% - 32px))}
      .section{padding:62px 0}
      .section-head{display:block}
      .top-strip .container{justify-content:flex-start;text-align:left}
      .nav{min-height:64px}
      .brand-mark{width:38px;height:38px}
      .brand-text{font-size:16px;max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
      .menu-toggle{display:block}
      .nav-actions .btn{display:none}
      .nav-links{
        position:absolute;left:16px;right:16px;top:72px;
        display:none;flex-direction:column;align-items:stretch;gap:8px;
        padding:14px;border-radius:22px;background:rgba(19,11,24,.96);
        border:1px solid var(--line-bright);box-shadow:var(--shadow);
      }
      .nav-links.open{display:flex}
      .nav-links a{padding:14px 16px}
      .hero{padding:46px 0 58px;min-height:auto}
      .hero-layout{gap:24px}
      .hero-poster{padding:24px;border-radius:26px}
      .hero-data,.poster-grid,.tier-grid,.entry-grid,.form-grid{grid-template-columns:1fr}
      .limit-bar{align-items:flex-start;flex-direction:column}
      .compare-row{display:block;border-bottom:1px solid rgba(215,165,70,.16)}
      .compare-row>div{border-right:0}
      .compare-row.head{display:none}
      .compare-row>div:first-child{background:rgba(138,90,43,.18);color:var(--gold-2);font-weight:950}
      .footer-grid{grid-template-columns:1fr}
      .copyright{flex-direction:column;align-items:flex-start}
      .btn{width:100%}
      .hero-ctas{flex-direction:column}
      .news-item{align-items:flex-start;flex-direction:column}
    }
    @media (max-width:420px){
      .container{width:min(var(--container), calc(100% - 24px))}
      .hero h1{font-size:32px}
      .section-title{font-size:26px}
      .age-badge{padding:7px 9px;font-size:12px}
      .countdown span{min-width:34px}
      .poster-grid{gap:10px}
      .form-card,.notice-card,.panel-card{padding:20px;border-radius:22px}
    }

/* roulang page: category1 */
:root{
      --bg-0:#130B18;
      --bg-1:#1B1024;
      --bg-2:#211222;
      --panel:#25152C;
      --panel-2:#30182D;
      --panel-3:#3A1A2E;
      --wine:#6D1E4D;
      --rose:#A12B58;
      --red:#C73342;
      --gold:#D7A546;
      --gold-2:#F6C65B;
      --copper:#8A5A2B;
      --mist:#B89AC8;
      --cream:#F3E8D5;
      --muted:rgba(243,232,213,.72);
      --soft:rgba(184,154,200,.72);
      --line:rgba(215,165,70,.28);
      --line-strong:rgba(246,198,91,.5);
      --shadow:0 22px 60px rgba(0,0,0,.45);
      --glow:0 0 34px rgba(215,165,70,.18);
      --radius-xl:26px;
      --radius-lg:20px;
      --radius-md:14px;
      --radius-pill:999px;
      --container:1200px;
      --t:220ms ease;
    }

    *{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{
      font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;
      background:
        radial-gradient(circle at 12% 8%, rgba(161,43,88,.34), transparent 32%),
        radial-gradient(circle at 86% 18%, rgba(215,165,70,.14), transparent 28%),
        linear-gradient(180deg,var(--bg-0),var(--bg-1) 42%,#0F0813);
      color:var(--cream);
      line-height:1.7;
      min-height:100vh;
      overflow-x:hidden;
    }
    body::before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      opacity:.35;
      background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px);
      background-size:42px 42px;
      mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 72%);
      z-index:-1;
    }
    a{color:inherit;text-decoration:none;transition:color var(--t),background var(--t),border-color var(--t),transform var(--t),box-shadow var(--t)}
    img{max-width:100%;display:block}
    button,input,select,textarea{font:inherit}
    button{cursor:pointer;border:0;background:none;color:inherit}
    .container{width:min(var(--container),calc(100% - 64px));margin:0 auto}
    .section{position:relative;padding:86px 0}
    .section-tight{padding:58px 0}
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:8px 13px;
      border:1px solid var(--line);
      border-radius:var(--radius-pill);
      color:var(--gold-2);
      background:rgba(109,30,77,.28);
      font-size:14px;
      font-weight:800;
      letter-spacing:.02em;
      box-shadow:var(--glow);
    }
    .eyebrow::before{
      content:"";
      width:8px;height:8px;border-radius:50%;
      background:var(--gold-2);
      box-shadow:0 0 16px rgba(246,198,91,.78);
    }
    .section-head{
      display:grid;
      grid-template-columns:minmax(0,1fr) minmax(280px,430px);
      gap:26px;
      align-items:end;
      margin-bottom:34px;
    }
    .section-title{
      margin-top:14px;
      font-size:clamp(26px,3vw,38px);
      line-height:1.16;
      font-weight:900;
      letter-spacing:-.03em;
      text-shadow:0 2px 0 rgba(0,0,0,.22),0 0 22px rgba(215,165,70,.12);
    }
    .section-desc{color:var(--muted);font-size:17px}
    .top-strip{
      background:linear-gradient(90deg,#431522,var(--red),#522049);
      color:var(--cream);
      border-bottom:1px solid rgba(246,198,91,.32);
      font-size:14px;
    }
    .strip-inner{
      min-height:42px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
    }
    .strip-inner strong{color:var(--gold-2)}
    .strip-mini{
      display:flex;
      gap:12px;
      align-items:center;
      color:rgba(243,232,213,.86);
      white-space:nowrap;
    }
    .strip-dot{width:6px;height:6px;border-radius:50%;background:var(--gold-2)}

    .site-header{
      position:sticky;
      top:0;
      z-index:50;
      background:rgba(19,11,24,.86);
      backdrop-filter:blur(18px);
      border-bottom:1px solid var(--line);
      box-shadow:0 14px 40px rgba(0,0,0,.28);
    }
    .nav{
      min-height:78px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:22px;
    }
    .brand{
      display:inline-flex;
      align-items:center;
      gap:12px;
      min-width:max-content;
      font-weight:900;
    }
    .brand-mark{
      width:42px;height:42px;
      display:grid;
      place-items:center;
      border-radius:14px;
      background:
        linear-gradient(135deg,rgba(246,198,91,.95),rgba(161,43,88,.95)),
        radial-gradient(circle at 30% 20%,rgba(255,255,255,.5),transparent 28%);
      color:#1B1024;
      font-weight:950;
      box-shadow:0 10px 28px rgba(215,165,70,.28);
      border:1px solid rgba(246,198,91,.58);
    }
    .brand-text{font-size:18px;letter-spacing:-.02em}
    .nav-links{
      display:flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      padding:7px;
      border:1px solid rgba(215,165,70,.16);
      border-radius:var(--radius-pill);
      background:rgba(27,16,36,.72);
    }
    .nav-links a{
      position:relative;
      padding:10px 16px;
      border-radius:var(--radius-pill);
      color:var(--muted);
      font-size:15px;
      font-weight:800;
    }
    .nav-links a:hover{color:var(--gold-2);background:rgba(215,165,70,.08)}
    .nav-links a.active{
      color:var(--cream);
      background:linear-gradient(135deg,rgba(161,43,88,.92),rgba(109,30,77,.82));
      box-shadow:inset 0 0 0 1px rgba(246,198,91,.24),0 10px 22px rgba(0,0,0,.22);
    }
    .nav-actions{display:flex;align-items:center;gap:12px}
    .age-badge{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:30px;
      padding:5px 10px;
      border-radius:var(--radius-pill);
      background:rgba(199,51,66,.18);
      border:1px solid rgba(246,198,91,.34);
      color:var(--gold-2);
      font-size:13px;
      font-weight:900;
      white-space:nowrap;
    }
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:9px;
      border-radius:var(--radius-pill);
      padding:12px 18px;
      font-weight:900;
      font-size:15px;
      line-height:1;
      min-height:46px;
      border:1px solid transparent;
      user-select:none;
      white-space:nowrap;
    }
    .btn-primary{
      color:var(--cream);
      background:linear-gradient(135deg,var(--rose),var(--red));
      border-color:rgba(246,198,91,.32);
      box-shadow:0 14px 32px rgba(199,51,66,.24),0 0 0 1px rgba(255,255,255,.04) inset;
    }
    .btn-primary:hover,.btn-primary:focus-visible{
      transform:translateY(-2px);
      box-shadow:0 18px 40px rgba(199,51,66,.34),0 0 28px rgba(246,198,91,.22);
      border-color:rgba(246,198,91,.62);
    }
    .btn-secondary{
      color:var(--gold-2);
      background:rgba(19,11,24,.52);
      border-color:rgba(246,198,91,.42);
    }
    .btn-secondary:hover,.btn-secondary:focus-visible{
      transform:translateY(-2px);
      background:rgba(109,30,77,.42);
      border-color:rgba(246,198,91,.72);
      color:var(--cream);
      box-shadow:0 14px 30px rgba(0,0,0,.22);
    }
    .btn-soft{
      color:var(--cream);
      background:rgba(255,255,255,.06);
      border-color:rgba(215,165,70,.24);
    }
    .btn-soft:hover{background:rgba(215,165,70,.1);border-color:rgba(246,198,91,.48);color:var(--gold-2)}
    .menu-toggle{
      display:none;
      width:44px;height:44px;
      border-radius:14px;
      border:1px solid var(--line);
      background:rgba(255,255,255,.04);
    }
    .menu-toggle span{
      display:block;
      width:18px;height:2px;
      margin:4px auto;
      background:var(--cream);
      border-radius:10px;
      transition:transform var(--t),opacity var(--t);
    }
    .menu-toggle.is-open span:nth-child(1){transform:translateY(6px) rotate(45deg)}
    .menu-toggle.is-open span:nth-child(2){opacity:0}
    .menu-toggle.is-open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

    .category-hero{
      padding:76px 0 58px;
      background:
        linear-gradient(135deg,rgba(109,30,77,.35),rgba(33,18,34,.1) 45%,rgba(138,90,43,.12)),
        radial-gradient(circle at 78% 30%,rgba(246,198,91,.18),transparent 28%);
      border-bottom:1px solid rgba(215,165,70,.18);
    }
    .hero-panel{
      position:relative;
      overflow:hidden;
      border:1px solid var(--line);
      border-radius:34px;
      background:
        linear-gradient(135deg,rgba(37,21,44,.94),rgba(58,26,46,.72)),
        radial-gradient(circle at 18% 16%,rgba(161,43,88,.42),transparent 34%);
      box-shadow:var(--shadow),var(--glow);
      padding:34px;
    }
    .hero-panel::before{
      content:"";
      position:absolute;
      inset:-2px;
      background:
        linear-gradient(120deg,transparent 0 18%,rgba(246,198,91,.12) 18% 19%,transparent 19% 52%,rgba(199,51,66,.18) 52% 68%,transparent 68%),
        radial-gradient(circle at 92% 12%,rgba(246,198,91,.22),transparent 18%);
      pointer-events:none;
    }
    .hero-grid{
      position:relative;
      z-index:1;
      display:grid;
      grid-template-columns:minmax(0,1.05fr) minmax(330px,.95fr);
      gap:30px;
      align-items:stretch;
    }
    .crumbs{
      display:flex;
      gap:9px;
      align-items:center;
      flex-wrap:wrap;
      color:rgba(243,232,213,.65);
      font-size:14px;
      margin-bottom:18px;
    }
    .crumbs a:hover{color:var(--gold-2)}
    .crumbs span{color:var(--gold-2)}
    h1{
      max-width:760px;
      font-size:clamp(32px,5vw,54px);
      line-height:1.14;
      letter-spacing:-.045em;
      font-weight:950;
      text-shadow:0 3px 0 rgba(0,0,0,.26),0 0 30px rgba(215,165,70,.18);
      margin:15px 0 18px;
    }
    .hero-subtitle{
      color:var(--muted);
      font-size:18px;
      max-width:760px;
      margin-bottom:24px;
    }
    .hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0 26px}
    .hero-note{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:12px;
      max-width:780px;
    }
    .note-item{
      border:1px solid rgba(215,165,70,.22);
      border-radius:18px;
      padding:14px;
      background:rgba(19,11,24,.38);
    }
    .note-item strong{display:block;color:var(--gold-2);font-size:15px}
    .note-item span{display:block;color:var(--soft);font-size:13px;margin-top:4px}
    .faux-board{
      border:1px solid rgba(246,198,91,.28);
      border-radius:28px;
      padding:20px;
      background:linear-gradient(180deg,rgba(19,11,24,.74),rgba(48,24,45,.76));
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.03),0 18px 40px rgba(0,0,0,.26);
    }
    .board-top{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      padding-bottom:15px;
      border-bottom:1px solid rgba(215,165,70,.18);
    }
    .board-top h2{font-size:20px;line-height:1.25}
    .status-pill{
      display:inline-flex;
      align-items:center;
      gap:7px;
      padding:7px 10px;
      border-radius:999px;
      background:rgba(246,198,91,.12);
      color:var(--gold-2);
      border:1px solid rgba(246,198,91,.28);
      font-size:13px;
      font-weight:900;
      white-space:nowrap;
    }
    .board-list{display:grid;gap:12px;margin-top:18px}
    .board-item{
      display:grid;
      grid-template-columns:42px 1fr auto;
      align-items:center;
      gap:12px;
      padding:13px;
      border-radius:18px;
      border:1px solid rgba(215,165,70,.16);
      background:rgba(255,255,255,.045);
    }
    .board-num{
      width:42px;height:42px;
      display:grid;
      place-items:center;
      border-radius:14px;
      background:linear-gradient(135deg,rgba(215,165,70,.95),rgba(161,43,88,.72));
      color:#180C19;
      font-weight:950;
    }
    .board-item b{display:block;font-size:15px}
    .board-item small{display:block;color:var(--soft);font-size:12px;margin-top:2px}
    .board-score{
      color:var(--gold-2);
      font-size:14px;
      font-weight:950;
    }
    .board-alert{
      margin-top:16px;
      padding:14px;
      border-radius:18px;
      background:rgba(199,51,66,.12);
      border:1px solid rgba(246,198,91,.22);
      color:rgba(243,232,213,.82);
      font-size:14px;
    }

    .filters-section{
      background:linear-gradient(180deg,rgba(67,21,34,.62),rgba(27,16,36,.86));
      border-top:1px solid rgba(246,198,91,.08);
      border-bottom:1px solid rgba(215,165,70,.16);
    }
    .filter-shell{
      display:grid;
      grid-template-columns:290px minmax(0,1fr);
      gap:24px;
      align-items:start;
    }
    .filter-panel,.content-card,.compliance-card,.faq-item,.cta-bar{
      border:1px solid var(--line);
      border-radius:var(--radius-xl);
      background:linear-gradient(180deg,rgba(37,21,44,.9),rgba(24,13,29,.86));
      box-shadow:0 18px 45px rgba(0,0,0,.28);
    }
    .filter-panel{
      padding:20px;
      position:sticky;
      top:100px;
    }
    .filter-title{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      margin-bottom:16px;
    }
    .filter-title h2{font-size:20px}
    .filter-group{padding:16px 0;border-top:1px solid rgba(215,165,70,.14)}
    .filter-group:first-of-type{border-top:0;padding-top:0}
    .filter-label{display:block;color:var(--gold-2);font-weight:900;margin-bottom:11px}
    .tag-list{display:flex;gap:10px;flex-wrap:wrap}
    .tag{
      display:inline-flex;
      align-items:center;
      gap:7px;
      padding:8px 12px;
      border-radius:var(--radius-pill);
      border:1px solid rgba(215,165,70,.2);
      background:rgba(19,11,24,.5);
      color:var(--soft);
      font-size:14px;
      font-weight:800;
    }
    .tag:hover{color:var(--gold-2);border-color:rgba(246,198,91,.42);transform:translateY(-1px)}
    .tag.active{
      color:var(--cream);
      background:linear-gradient(135deg,rgba(161,43,88,.9),rgba(199,51,66,.62));
      border-color:rgba(246,198,91,.54);
      box-shadow:0 10px 24px rgba(199,51,66,.16);
    }
    .select-wrap{position:relative}
    .select-wrap select{
      width:100%;
      appearance:none;
      padding:12px 38px 12px 14px;
      border-radius:15px;
      color:var(--cream);
      background:#170D1D;
      border:1px solid rgba(215,165,70,.28);
      outline:none;
      transition:border-color var(--t),box-shadow var(--t);
    }
    .select-wrap::after{
      content:"⌄";
      position:absolute;
      right:14px;
      top:50%;
      transform:translateY(-50%);
      color:var(--gold-2);
      pointer-events:none;
    }
    .select-wrap select:focus{border-color:var(--gold-2);box-shadow:0 0 0 4px rgba(215,165,70,.12)}

    .entry-summary{
      display:grid;
      grid-template-columns:1.2fr .8fr;
      gap:18px;
      margin-bottom:22px;
    }
    .summary-card{
      padding:22px;
      border-radius:var(--radius-xl);
      border:1px solid rgba(246,198,91,.22);
      background:
        linear-gradient(135deg,rgba(161,43,88,.3),rgba(19,11,24,.72)),
        radial-gradient(circle at 90% 10%,rgba(246,198,91,.15),transparent 28%);
    }
    .summary-card h2{font-size:25px;line-height:1.25;margin-bottom:10px}
    .summary-card p{color:var(--muted)}
    .mini-stats{
      display:grid;
      grid-template-columns:repeat(2,1fr);
      gap:12px;
    }
    .stat{
      padding:18px;
      border-radius:20px;
      background:rgba(19,11,24,.54);
      border:1px solid rgba(215,165,70,.18);
    }
    .stat b{display:block;color:var(--gold-2);font-size:24px;line-height:1}
    .stat span{display:block;color:var(--soft);font-size:13px;margin-top:8px}

    .card-grid{
      display:grid;
      grid-template-columns:repeat(6,1fr);
      gap:18px;
    }
    .content-card{
      position:relative;
      overflow:hidden;
      padding:22px;
      min-height:272px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
    }
    .content-card::before{
      content:"";
      position:absolute;
      inset:0;
      background:
        radial-gradient(circle at 18% 8%,rgba(246,198,91,.13),transparent 24%),
        linear-gradient(130deg,transparent 0 62%,rgba(161,43,88,.18));
      pointer-events:none;
    }
    .content-card > *{position:relative;z-index:1}
    .content-card:hover{
      transform:translateY(-4px);
      border-color:rgba(246,198,91,.48);
      box-shadow:0 22px 56px rgba(0,0,0,.38),0 0 26px rgba(246,198,91,.12);
    }
    .content-card.featured{
      grid-column:span 4;
      min-height:304px;
      background:
        linear-gradient(135deg,rgba(109,30,77,.9),rgba(37,21,44,.86)),
        radial-gradient(circle at 86% 16%,rgba(246,198,91,.18),transparent 24%);
    }
    .content-card.medium{grid-column:span 3}
    .content-card.small{grid-column:span 2}
    .abstract-icon{
      width:58px;height:58px;
      border-radius:18px;
      display:grid;
      place-items:center;
      margin-bottom:18px;
      background:linear-gradient(135deg,rgba(246,198,91,.9),rgba(161,43,88,.82));
      color:#1A0D19;
      font-weight:950;
      font-size:22px;
      box-shadow:0 14px 30px rgba(0,0,0,.25);
    }
    .card-head{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:12px;
      margin-bottom:12px;
    }
    .card-head h3{font-size:22px;line-height:1.25}
    .badge{
      display:inline-flex;
      align-items:center;
      padding:5px 9px;
      border-radius:999px;
      font-size:12px;
      font-weight:950;
      white-space:nowrap;
      border:1px solid rgba(246,198,91,.28);
    }
    .badge.gold{background:rgba(246,198,91,.88);color:#211222}
    .badge.rose{background:rgba(161,43,88,.42);color:var(--cream)}
    .badge.mist{background:rgba(184,154,200,.12);color:var(--mist)}
    .content-card p{color:var(--muted);margin-bottom:16px}
    .meta-tags{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 18px}
    .meta-tags span{
      padding:6px 9px;
      border-radius:999px;
      background:rgba(255,255,255,.055);
      border:1px solid rgba(215,165,70,.15);
      color:var(--soft);
      font-size:12px;
      font-weight:800;
    }
    .card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:auto}

    .cta-section{
      padding:44px 0;
      background:linear-gradient(90deg,rgba(35,10,19,.94),rgba(107,24,44,.86),rgba(49,21,54,.94));
      border-top:1px solid rgba(246,198,91,.22);
      border-bottom:1px solid rgba(246,198,91,.22);
    }
    .cta-bar{
      padding:24px;
      display:grid;
      grid-template-columns:minmax(0,1fr) auto;
      align-items:center;
      gap:22px;
      background:
        linear-gradient(120deg,rgba(199,51,66,.28),rgba(19,11,24,.76)),
        radial-gradient(circle at 90% 20%,rgba(246,198,91,.16),transparent 24%);
    }
    .cta-bar h2{font-size:27px;line-height:1.25;margin-bottom:7px}
    .cta-bar p{color:var(--muted)}
    .cta-buttons{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}

    .compliance-section{
      background:
        radial-gradient(circle at 15% 20%,rgba(138,90,43,.18),transparent 30%),
        linear-gradient(180deg,rgba(33,18,34,.92),rgba(19,11,24,.98));
    }
    .compliance-grid{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:18px;
    }
    .compliance-card{
      padding:22px;
      min-height:210px;
    }
    .compliance-card:hover{border-color:rgba(246,198,91,.46);transform:translateY(-3px)}
    .compliance-icon{
      width:48px;height:48px;
      display:grid;
      place-items:center;
      border-radius:16px;
      background:rgba(246,198,91,.12);
      border:1px solid rgba(246,198,91,.28);
      color:var(--gold-2);
      font-weight:950;
      margin-bottom:15px;
    }
    .compliance-card h3{font-size:19px;margin-bottom:8px}
    .compliance-card p{color:var(--muted);font-size:15px}

    .consult-box{
      display:grid;
      grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);
      gap:24px;
      align-items:stretch;
    }
    .consult-info{
      padding:28px;
      border-radius:var(--radius-xl);
      border:1px solid rgba(246,198,91,.24);
      background:linear-gradient(180deg,rgba(58,26,46,.68),rgba(19,11,24,.78));
    }
    .consult-info h2{font-size:30px;line-height:1.2;margin:14px 0 12px}
    .consult-info p{color:var(--muted)}
    .check-list{display:grid;gap:12px;margin-top:22px}
    .check-list li{
      list-style:none;
      position:relative;
      padding-left:24px;
      color:rgba(243,232,213,.84);
    }
    .check-list li::before{
      content:"";
      position:absolute;
      left:0;top:.7em;
      width:10px;height:10px;
      transform:rotate(45deg);
      background:var(--gold-2);
      box-shadow:0 0 14px rgba(246,198,91,.35);
    }
    .form-card{
      padding:24px;
      border-radius:var(--radius-xl);
      border:1px solid var(--line);
      background:linear-gradient(180deg,rgba(24,13,29,.95),rgba(37,21,44,.86));
      box-shadow:var(--shadow);
    }
    .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .field{display:grid;gap:7px}
    .field.full{grid-column:1 / -1}
    .field label{color:var(--gold-2);font-weight:900;font-size:14px}
    .field input,.field select,.field textarea{
      width:100%;
      border:1px solid rgba(215,165,70,.25);
      background:#120A17;
      color:var(--cream);
      border-radius:15px;
      padding:13px 14px;
      outline:none;
      transition:border-color var(--t),box-shadow var(--t),background var(--t);
    }
    .field textarea{min-height:112px;resize:vertical}
    .field input::placeholder,.field textarea::placeholder{color:rgba(184,154,200,.58)}
    .field input:focus,.field select:focus,.field textarea:focus{
      border-color:var(--gold-2);
      box-shadow:0 0 0 4px rgba(215,165,70,.12);
      background:#170D1D;
    }
    .checks{display:grid;gap:10px;margin:16px 0}
    .check{
      display:flex;
      gap:10px;
      align-items:flex-start;
      color:var(--muted);
      font-size:14px;
    }
    .check input{
      width:18px;height:18px;
      accent-color:var(--gold);
      margin-top:3px;
    }
    .form-tip{
      display:none;
      margin-top:14px;
      padding:12px 14px;
      border-radius:16px;
      background:rgba(65,92,61,.22);
      border:1px solid rgba(215,165,70,.28);
      color:rgba(243,232,213,.9);
      font-size:14px;
    }
    .form-tip.show{display:block}
    .error-text{color:#F2A4AF;font-size:13px;display:none}
    .field.error .error-text{display:block}
    .field.error input,.field.error textarea,.field.error select{border-color:rgba(242,164,175,.72)}

    .faq-section{
      background:linear-gradient(180deg,rgba(19,11,24,.94),rgba(15,8,19,1));
    }
    .faq-list{display:grid;gap:14px;max-width:960px;margin:0 auto}
    .faq-item{overflow:hidden}
    .faq-question{
      width:100%;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
      padding:20px 22px;
      text-align:left;
      font-size:17px;
      font-weight:950;
    }
    .faq-question:hover{color:var(--gold-2)}
    .faq-symbol{
      width:30px;height:30px;
      flex:0 0 30px;
      display:grid;
      place-items:center;
      border-radius:50%;
      border:1px solid rgba(246,198,91,.35);
      color:var(--gold-2);
      transition:transform var(--t),background var(--t);
    }
    .faq-answer{
      max-height:0;
      overflow:hidden;
      transition:max-height 220ms ease;
    }
    .faq-answer p{
      padding:0 22px 20px;
      color:var(--muted);
    }
    .faq-item.active{
      border-color:rgba(246,198,91,.48);
      box-shadow:0 16px 36px rgba(0,0,0,.32);
    }
    .faq-item.active .faq-symbol{
      transform:rotate(45deg);
      background:rgba(246,198,91,.12);
    }

    .site-footer{
      padding:54px 0 26px;
      background:
        linear-gradient(180deg,#0F0813,#09050C),
        radial-gradient(circle at 20% 10%,rgba(215,165,70,.1),transparent 24%);
      border-top:1px solid rgba(215,165,70,.2);
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.2fr .8fr 1fr;
      gap:38px;
      align-items:start;
    }
    .footer-title{
      font-size:17px;
      margin-bottom:14px;
      color:var(--gold-2);
    }
    .footer-text{color:rgba(243,232,213,.68);font-size:14px}
    .footer-links{display:grid;gap:10px}
    .footer-links a{
      color:rgba(243,232,213,.72);
      font-weight:700;
      width:max-content;
    }
    .footer-links a:hover{color:var(--gold-2);transform:translateX(3px)}
    .copyright{
      margin-top:34px;
      padding-top:22px;
      border-top:1px solid rgba(215,165,70,.16);
      display:flex;
      justify-content:space-between;
      gap:16px;
      flex-wrap:wrap;
      color:rgba(243,232,213,.55);
      font-size:13px;
    }

    :focus-visible{
      outline:3px solid rgba(246,198,91,.45);
      outline-offset:3px;
    }

    @media (max-width:1100px){
      .container{width:min(var(--container),calc(100% - 48px))}
      .hero-grid,.filter-shell,.consult-box{grid-template-columns:1fr}
      .filter-panel{position:relative;top:auto}
      .entry-summary{grid-template-columns:1fr}
      .content-card.featured{grid-column:span 6}
      .content-card.medium{grid-column:span 3}
      .content-card.small{grid-column:span 3}
      .compliance-grid{grid-template-columns:repeat(2,1fr)}
      .section-head{grid-template-columns:1fr}
      .nav-links{position:fixed;left:24px;right:24px;top:118px;display:none;flex-direction:column;align-items:stretch;border-radius:22px;padding:12px;background:rgba(19,11,24,.97);box-shadow:var(--shadow)}
      .nav-links.is-open{display:flex}
      .nav-links a{padding:14px 16px}
      .menu-toggle{display:block}
    }
    @media (max-width:767px){
      .container{width:calc(100% - 32px)}
      .strip-inner{min-height:40px;justify-content:center;text-align:center}
      .strip-mini{display:none}
      .site-header{top:0}
      .nav{min-height:64px}
      .brand-mark{width:36px;height:36px;border-radius:12px}
      .brand-text{font-size:15px;max-width:150px;line-height:1.2}
      .nav-actions .btn{display:none}
      .age-badge{font-size:12px;padding:4px 8px}
      .nav-links{top:104px;left:16px;right:16px}
      .category-hero{padding:40px 0 36px}
      .hero-panel{padding:22px;border-radius:24px}
      .hero-subtitle{font-size:16px}
      .hero-note{grid-template-columns:1fr}
      .board-item{grid-template-columns:38px 1fr;align-items:start}
      .board-score{grid-column:2;justify-self:start}
      .section{padding:58px 0}
      .section-tight{padding:42px 0}
      .card-grid{grid-template-columns:1fr}
      .content-card.featured,.content-card.medium,.content-card.small{grid-column:auto}
      .content-card{min-height:auto}
      .mini-stats{grid-template-columns:1fr 1fr}
      .cta-bar{grid-template-columns:1fr;padding:20px}
      .cta-buttons{justify-content:stretch}
      .cta-buttons .btn,.hero-actions .btn,.card-actions .btn{width:100%}
      .compliance-grid{grid-template-columns:1fr}
      .form-grid{grid-template-columns:1fr}
      .footer-grid{grid-template-columns:1fr;gap:28px}
      .copyright{display:grid}
    }
    @media (max-width:420px){
      .container{width:calc(100% - 28px)}
      .brand-text{max-width:122px}
      .age-badge{display:none}
      .hero-panel{padding:18px}
      .mini-stats{grid-template-columns:1fr}
      h1{font-size:30px}
      .section-title{font-size:24px}
      .faq-question{padding:18px;font-size:16px}
      .faq-answer p{padding:0 18px 18px}
    }
