/* roulang page: index */
:root{
      --berry:#6f234e;
      --berry-dark:#4a1735;
      --coral:#f1785f;
      --coral-soft:#ffe0d6;
      --cream:#fff7eb;
      --cream-2:#f8ecdc;
      --night:#211416;
      --coffee:#3b2727;
      --text:#2e2022;
      --muted:#7d6868;
      --line:rgba(93,45,52,.16);
      --white:#fffdf8;
      --shadow:0 24px 60px rgba(80,35,45,.13);
      --shadow-hover:0 30px 70px rgba(80,35,45,.2);
      --radius-xl:34px;
      --radius-lg:26px;
      --radius-md:18px;
      --container:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,Arial,sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 8% 10%,rgba(241,120,95,.18),transparent 28%),
        radial-gradient(circle at 92% 18%,rgba(111,35,78,.12),transparent 30%),
        linear-gradient(180deg,var(--cream),#fffdf8 46%,var(--cream-2));
      line-height:1.75;
      padding-bottom:0;
    }
    a{color:inherit;text-decoration:none;transition:.25s ease}
    img{max-width:100%;display:block}
    button,input,select,textarea{font:inherit}
    .container{max-width:var(--container)}
    .section-pad{padding:92px 0}
    .section-pad-sm{padding:68px 0}
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:8px 14px;
      border-radius:999px;
      background:rgba(111,35,78,.09);
      color:var(--berry);
      font-size:13px;
      font-weight:700;
      letter-spacing:.02em;
    }
    .eyebrow.dark{
      background:rgba(255,255,255,.1);
      color:#ffe7dd;
      border:1px solid rgba(255,255,255,.18);
    }
    .section-title{
      margin:16px 0 14px;
      font-size:clamp(28px,4vw,42px);
      line-height:1.18;
      font-weight:900;
      letter-spacing:-.04em;
      color:var(--night);
    }
    .section-desc{
      max-width:760px;
      margin:0;
      color:var(--muted);
      font-size:17px;
    }
    .site-header{
      position:sticky;
      top:0;
      z-index:1000;
      background:rgba(255,247,235,.86);
      backdrop-filter:blur(18px);
      border-bottom:1px solid var(--line);
    }
    .navbar{padding:14px 0}
    .brand-logo{
      display:flex;
      align-items:center;
      gap:12px;
      font-weight:900;
      color:var(--berry-dark);
      letter-spacing:-.02em;
      font-size:20px;
    }
    .brand-mark{
      width:42px;
      height:42px;
      border-radius:15px;
      display:grid;
      place-items:center;
      color:#fff;
      background:linear-gradient(135deg,var(--berry),var(--coral));
      box-shadow:0 12px 28px rgba(111,35,78,.24);
      font-weight:900;
    }
    .navbar-nav{gap:10px}
    .nav-link{
      color:var(--coffee);
      font-weight:700;
      padding:10px 16px!important;
      border-radius:999px;
      position:relative;
    }
    .nav-link:hover,.nav-link:focus{color:var(--berry);background:rgba(111,35,78,.08)}
    .nav-link.active{
      color:#fff!important;
      background:var(--berry);
      box-shadow:0 12px 24px rgba(111,35,78,.18);
    }
    .navbar-toggler{
      border:1px solid var(--line);
      border-radius:14px;
      padding:9px 11px;
      box-shadow:none!important;
    }
    .btn-brand,.btn-soft,.btn-darkline{
      border-radius:999px;
      padding:13px 22px;
      font-weight:800;
      border:0;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      transition:.25s ease;
      white-space:nowrap;
    }
    .btn-brand{
      background:linear-gradient(135deg,var(--berry),var(--berry-dark));
      color:#fff;
      box-shadow:0 16px 32px rgba(111,35,78,.24);
    }
    .btn-brand:hover,.btn-brand:focus{color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-hover)}
    .btn-soft{
      color:var(--berry);
      background:#fff8ef;
      border:1px solid rgba(111,35,78,.18);
    }
    .btn-soft:hover,.btn-soft:focus{color:var(--berry-dark);background:var(--coral-soft);transform:translateY(-2px)}
    .btn-coral{
      background:linear-gradient(135deg,var(--coral),#ff9b72);
      color:var(--night);
      box-shadow:0 18px 34px rgba(241,120,95,.28);
    }
    .btn-coral:hover{color:var(--night);filter:saturate(1.05);transform:translateY(-2px)}
    .hero{
      padding:38px 0 88px;
      overflow:hidden;
    }
    .campaign-bar{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      padding:13px 18px;
      border-radius:999px;
      background:var(--night);
      color:#fff3e9;
      box-shadow:var(--shadow);
      margin-bottom:26px;
      overflow:hidden;
      position:relative;
    }
    .campaign-bar:after{
      content:"";
      position:absolute;
      inset:auto 0 0;
      height:3px;
      background:linear-gradient(90deg,transparent,var(--coral),#ffd0a5,var(--coral),transparent);
      animation:flow 3.5s linear infinite;
    }
    @keyframes flow{0%{transform:translateX(-35%)}100%{transform:translateX(35%)}}
    .campaign-bar strong{color:#ffd3be}
    .hero-stage{
      position:relative;
      border-radius:42px;
      padding:44px;
      color:#fff;
      background:
        radial-gradient(circle at 12% 20%,rgba(255,198,171,.32),transparent 30%),
        radial-gradient(circle at 78% 10%,rgba(241,120,95,.28),transparent 28%),
        linear-gradient(135deg,var(--berry-dark),var(--night) 58%,#2d181d);
      box-shadow:0 36px 90px rgba(33,20,22,.24);
      overflow:hidden;
    }
    .hero-stage:before{
      content:"";
      position:absolute;
      right:-120px;
      top:-120px;
      width:360px;
      height:360px;
      border-radius:50%;
      border:54px solid rgba(255,255,255,.08);
    }
    .hero-copy{position:relative;z-index:2}
    .hero h1{
      font-size:clamp(36px,6vw,66px);
      line-height:1.06;
      letter-spacing:-.06em;
      font-weight:950;
      margin:16px 0 22px;
      max-width:880px;
    }
    .hero-lead{
      max-width:780px;
      color:#ffe9dd;
      font-size:18px;
      margin-bottom:24px;
    }
    .hero-tags{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 30px}
    .tag{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:8px 13px;
      border-radius:999px;
      color:var(--berry-dark);
      background:#fff5e9;
      font-weight:800;
      font-size:13px;
    }
    .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:30px}
    .trust-strip{
      display:flex;
      flex-wrap:wrap;
      gap:14px;
      color:#ffe9dd;
      font-size:14px;
    }
    .trust-strip span{
      padding:8px 12px;
      border:1px solid rgba(255,255,255,.18);
      border-radius:999px;
      background:rgba(255,255,255,.07);
    }
    .hero-matrix{
      position:relative;
      z-index:2;
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:14px;
      margin-top:10px;
    }
    .matrix-card{
      min-height:132px;
      padding:18px;
      border-radius:24px;
      background:rgba(255,253,248,.11);
      border:1px solid rgba(255,255,255,.16);
      backdrop-filter:blur(12px);
    }
    .matrix-card.featured{
      grid-column:span 2;
      background:#fff8ee;
      color:var(--night);
    }
    .matrix-card b{display:block;font-size:18px;margin-bottom:8px}
    .matrix-card p{margin:0;color:inherit;opacity:.82;font-size:14px;line-height:1.65}
    .entry-card,.step-card,.compare-wrap,.form-panel,.news-panel,.proof-card,.bubble,.device-stage{
      border-radius:var(--radius-lg);
      background:rgba(255,253,248,.88);
      border:1px solid var(--line);
      box-shadow:var(--shadow);
      transition:.25s ease;
    }
    .entry-card:hover,.step-card:hover,.proof-card:hover,.bubble:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover)}
    .entry-grid{
      display:grid;
      grid-template-columns:1.25fr .75fr 1fr;
      gap:18px;
      margin-top:34px;
    }
    .entry-card{padding:26px;min-height:210px}
    .entry-card.tall{grid-row:span 2;background:linear-gradient(180deg,#fffdf8,#ffe7d8)}
    .entry-card.dark{background:linear-gradient(135deg,var(--berry),var(--night));color:#fff}
    .entry-card h3{font-size:22px;font-weight:900;margin:10px 0}
    .entry-card p{color:var(--muted);margin:0 0 18px}
    .entry-card.dark p{color:#ffe4d7}
    .mini-icon{
      width:44px;height:44px;border-radius:16px;
      display:grid;place-items:center;
      background:rgba(241,120,95,.16);
      color:var(--berry);font-weight:900;
    }
    .ladder{
      position:relative;
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:18px;
      margin-top:36px;
      align-items:end;
    }
    .step-card{padding:26px;position:relative;overflow:hidden}
    .step-card:nth-child(2){padding-top:44px;background:#fff1e8}
    .step-card:nth-child(3){padding-top:62px;background:linear-gradient(160deg,var(--berry),var(--night));color:#fff}
    .step-card:nth-child(3) .muted,.step-card:nth-child(3) li{color:#ffe2d7}
    .status{
      display:inline-flex;
      padding:6px 12px;
      border-radius:999px;
      background:var(--coral-soft);
      color:var(--berry-dark);
      font-size:12px;
      font-weight:900;
    }
    .step-card h3{font-weight:950;margin:16px 0 10px}
    .clean-list{list-style:none;padding:0;margin:16px 0 20px}
    .clean-list li{position:relative;padding-left:22px;margin:8px 0;color:var(--muted)}
    .clean-list li:before{
      content:"";
      width:8px;height:8px;border-radius:50%;
      background:var(--coral);
      position:absolute;left:0;top:.75em;
    }
    .compare-section{background:linear-gradient(180deg,rgba(111,35,78,.06),rgba(241,120,95,.08))}
    .compare-wrap{padding:18px;margin-top:34px;overflow:hidden}
    .compare-table{margin:0;border-collapse:separate;border-spacing:0 10px}
    .compare-table th{
      color:var(--berry-dark);
      font-weight:900;
      padding:18px;
      border:0;
      background:#fff5ec;
    }
    .compare-table td{
      padding:18px;
      border:0;
      background:#fffdf8;
      color:var(--muted);
      vertical-align:middle;
    }
    .compare-table tbody tr td:first-child{
      color:var(--night);
      font-weight:900;
      border-radius:18px 0 0 18px;
    }
    .compare-table tbody tr td:last-child{border-radius:0 18px 18px 0}
    .recommend-col{
      background:#ffe2d5!important;
      color:var(--berry-dark)!important;
      font-weight:900;
    }
    .limited{
      color:#fff;
      background:
        linear-gradient(90deg,rgba(241,120,95,.22),transparent 45%),
        radial-gradient(circle at 85% 15%,rgba(255,211,190,.18),transparent 30%),
        var(--night);
    }
    .limited .section-title{color:#fff}
    .limited .section-desc{color:#f6d9cc}
    .progress{
      height:14px;
      border-radius:999px;
      background:rgba(255,255,255,.14);
      overflow:hidden;
      margin:26px 0;
    }
    .progress-bar{
      background:linear-gradient(90deg,var(--coral),#ffd0a5);
      border-radius:999px;
    }
    .limited-actions{display:flex;flex-wrap:wrap;gap:12px}
    .time-boxes{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
    .time-box{
      border-radius:22px;
      padding:20px 12px;
      text-align:center;
      background:rgba(255,255,255,.09);
      border:1px solid rgba(255,255,255,.14);
    }
    .time-box b{display:block;font-size:30px;color:#ffd0a5}
    .form-panel{padding:34px;background:linear-gradient(145deg,#fffdf8,#fff0e4)}
    .form-control,.form-select{
      border-radius:16px;
      border:1px solid rgba(111,35,78,.18);
      background:#fffdf8;
      padding:13px 15px;
      color:var(--text);
      box-shadow:none!important;
    }
    .form-control:focus,.form-select:focus{
      border-color:var(--berry);
      box-shadow:0 0 0 4px rgba(111,35,78,.12)!important;
      background:#fff;
    }
    .form-label{font-weight:850;color:var(--coffee)}
    .privacy-note{
      border-radius:18px;
      background:rgba(111,35,78,.07);
      padding:14px 16px;
      color:var(--muted);
      font-size:14px;
    }
    .milestone-line{
      margin-top:36px;
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:16px;
    }
    .mile{
      padding:22px;
      border-radius:24px;
      background:#fff8ef;
      border:1px solid var(--line);
    }
    .mile b{font-size:28px;color:var(--berry);display:block}
    .mile span{color:var(--muted)}
    .news-panel{padding:28px}
    .news-list{list-style:none;padding:0;margin:0}
    .news-list li{
      display:grid;
      grid-template-columns:110px 1fr auto;
      gap:16px;
      align-items:center;
      padding:17px 0;
      border-bottom:1px solid var(--line);
    }
    .news-list li:last-child{border-bottom:0}
    .news-date{color:var(--berry);font-weight:900}
    .news-list a{font-weight:850;color:var(--night)}
    .news-list a:hover{color:var(--berry)}
    .rank-card{
      border-radius:var(--radius-lg);
      padding:26px;
      background:var(--night);
      color:#fff;
      box-shadow:var(--shadow);
    }
    .rank-row{
      display:flex;
      justify-content:space-between;
      gap:12px;
      padding:13px 0;
      border-bottom:1px solid rgba(255,255,255,.14);
      color:#ffe8dc;
    }
    .rank-row:last-child{border-bottom:0}
    .rank-row strong{color:#ffd0a5}
    .proof-grid{
      display:grid;
      grid-template-columns:1.1fr .9fr .9fr;
      gap:18px;
      margin-top:34px;
    }
    .proof-card{padding:26px}
    .proof-card h3{font-weight:950;margin-bottom:10px}
    .bubble-wall{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:16px;
      margin-top:34px;
    }
    .bubble{padding:22px}
    .avatar{
      width:38px;height:38px;border-radius:50%;
      background:linear-gradient(135deg,var(--coral),var(--berry));
      color:#fff;display:grid;place-items:center;
      font-weight:900;margin-bottom:12px;
    }
    .faq-wrap .accordion-item{
      border:1px solid var(--line);
      border-radius:20px!important;
      overflow:hidden;
      margin-bottom:12px;
      background:#fffdf8;
      box-shadow:0 10px 28px rgba(80,35,45,.08);
    }
    .faq-wrap .accordion-button{
      background:#fffdf8;
      color:var(--night);
      font-weight:900;
      padding:18px 22px;
      box-shadow:none;
    }
    .faq-wrap .accordion-button:not(.collapsed){
      color:var(--berry);
      background:#fff0e7;
    }
    .faq-wrap .accordion-button:focus{box-shadow:0 0 0 4px rgba(111,35,78,.12)}
    .faq-wrap .accordion-body{color:var(--muted);padding:0 22px 20px}
    .device-stage{
      padding:34px;
      background:
        radial-gradient(circle at 20% 10%,rgba(241,120,95,.24),transparent 34%),
        linear-gradient(135deg,#fffdf8,#f9ead9);
      overflow:hidden;
    }
    .screen-row{
      display:grid;
      grid-template-columns:1fr 1fr 1fr;
      gap:14px;
      margin-top:22px;
    }
    .screen{
      border-radius:24px;
      padding:20px;
      min-height:180px;
      background:#fff;
      border:1px solid var(--line);
      box-shadow:0 16px 34px rgba(80,35,45,.1);
    }
    .screen.dark{background:var(--berry);color:#fff}
    .site-footer{
      color:#f8e9dd;
      background:linear-gradient(135deg,var(--night),var(--berry-dark));
      padding:58px 0 96px;
    }
    .footer-logo{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:950;color:#fff}
    .footer-links{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
    .footer-links a{
      color:#f8dace;
      padding:8px 12px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.12);
    }
    .footer-links a:hover{background:rgba(255,255,255,.1);color:#fff}
    .copyright{
      margin-top:28px;
      padding-top:22px;
      border-top:1px solid rgba(255,255,255,.14);
      color:#d8b9ae;
      font-size:14px;
    }
    .mobile-tabs{
      position:fixed;
      left:12px;
      right:12px;
      bottom:12px;
      z-index:1001;
      display:none;
      grid-template-columns:1fr 1fr;
      gap:8px;
      padding:8px;
      padding-bottom:calc(8px + env(safe-area-inset-bottom));
      border-radius:24px;
      background:rgba(255,247,235,.92);
      backdrop-filter:blur(18px);
      border:1px solid var(--line);
      box-shadow:0 18px 48px rgba(33,20,22,.18);
    }
    .mobile-tabs a{
      display:flex;
      align-items:center;
      justify-content:center;
      gap:6px;
      padding:10px 8px;
      border-radius:18px;
      color:var(--coffee);
      font-weight:900;
      font-size:13px;
    }
    .mobile-tabs a.active{
      color:#fff;
      background:var(--berry);
    }
    @media (max-width: 991.98px){
      body{padding-bottom:86px}
      .site-header{position:sticky}
      .navbar-collapse{
        margin-top:14px;
        padding:14px;
        border-radius:22px;
        background:#fff9ef;
        border:1px solid var(--line);
      }
      .desktop-cta{display:none!important}
      .hero-stage{padding:30px}
      .hero-matrix,.entry-grid,.ladder,.proof-grid,.bubble-wall,.screen-row{grid-template-columns:1fr 1fr}
      .entry-card.tall{grid-row:auto}
      .time-boxes,.milestone-line{grid-template-columns:1fr 1fr}
      .mobile-tabs{display:grid}
      .news-list li{grid-template-columns:1fr;gap:4px}
      .section-pad{padding:68px 0}
    }
    @media (max-width: 575.98px){
      .brand-logo{font-size:17px}
      .brand-mark{width:38px;height:38px}
      .campaign-bar{border-radius:22px;align-items:flex-start;flex-direction:column}
      .hero{padding-top:22px}
      .hero-stage{border-radius:30px;padding:24px}
      .hero h1{font-size:38px}
      .hero-lead{font-size:16px}
      .hero-actions .btn-brand,.hero-actions .btn-soft{width:100%}
      .hero-matrix,.entry-grid,.ladder,.proof-grid,.bubble-wall,.screen-row,.time-boxes,.milestone-line{grid-template-columns:1fr}
      .matrix-card.featured{grid-column:auto}
      .compare-wrap{overflow-x:auto}
      .compare-table{min-width:760px}
      .section-pad{padding:56px 0}
      .section-title{font-size:30px}
      .footer-links{justify-content:flex-start;margin-top:20px}
    }

/* roulang page: category1 */
:root{
      --bg:#f6eee6;
      --bg-soft:#fbf7f2;
      --surface:#fffaf6;
      --surface-2:#f3e5da;
      --surface-3:#2b171d;
      --ink:#22171b;
      --muted:#6e5960;
      --muted-2:#8d7880;
      --line:rgba(91,36,51,.14);
      --line-strong:rgba(91,36,51,.24);
      --primary:#5b2433;
      --primary-2:#7a3142;
      --accent:#e27658;
      --accent-2:#c84f63;
      --accent-3:#efe0cf;
      --dark:#1d1115;
      --shadow:0 18px 45px rgba(80,35,45,.12);
      --shadow-strong:0 22px 60px rgba(65,25,35,.18);
      --radius-xl:30px;
      --radius-lg:24px;
      --radius-md:18px;
      --radius-sm:14px;
      --pill:999px;
      --space-section:96px;
      --space-section-mobile:60px;
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC",Arial,sans-serif;
      line-height:1.75;
      color:var(--ink);
      background:
        linear-gradient(180deg, rgba(255,255,255,.42), rgba(255,255,255,.42)),
        linear-gradient(135deg, #f9f1e8 0%, #f7efe6 48%, #f2e3d8 100%);
      overflow-x:hidden;
      letter-spacing:0;
      padding-bottom:0;
    }
    @supports (padding: env(safe-area-inset-bottom)) {
      body{padding-bottom:env(safe-area-inset-bottom)}
    }
    a{color:inherit;text-decoration:none}
    a:hover{color:inherit}
    img{max-width:100%;display:block}
    button,input,textarea,select{font:inherit}
    ::selection{background:rgba(226,118,88,.18);color:var(--ink)}

    .container{
      --bs-gutter-x:1.25rem;
    }

    .site-header{
      position:sticky;
      top:0;
      z-index:1030;
      backdrop-filter:saturate(130%) blur(14px);
      background:rgba(255,250,244,.9);
      border-bottom:1px solid rgba(91,36,51,.08);
    }
    .navbar{
      padding:1rem 0;
    }
    .brand-logo,
    .footer-logo{
      display:inline-flex;
      align-items:center;
      gap:.8rem;
      font-weight:800;
      letter-spacing:0;
      color:var(--ink);
    }
    .brand-mark{
      width:2.35rem;
      height:2.35rem;
      border-radius:16px;
      display:grid;
      place-items:center;
      background:linear-gradient(135deg,var(--primary),var(--accent-2));
      color:#fff;
      box-shadow:0 10px 22px rgba(91,36,51,.18);
      flex:0 0 auto;
      font-size:1rem;
    }
    .brand-logo span:last-child,
    .footer-logo span:last-child{
      font-size:1.05rem;
    }
    .navbar-toggler{
      border:1px solid var(--line);
      border-radius:14px;
      width:46px;
      height:46px;
      display:grid;
      place-items:center;
      color:var(--ink);
      box-shadow:none;
      background:var(--surface);
    }
    .navbar-toggler:focus{
      box-shadow:0 0 0 .2rem rgba(226,118,88,.16);
    }
    .navbar-toggler i{
      font-size:1.3rem;
      line-height:1;
    }
    .navbar-nav{
      gap:.35rem;
    }
    .nav-link{
      position:relative;
      padding:.8rem 1rem !important;
      font-weight:700;
      color:rgba(34,23,27,.76);
      border-radius:999px;
      transition:all .22s ease;
    }
    .nav-link:hover{
      color:var(--primary);
      background:rgba(91,36,51,.05);
    }
    .nav-link.active{
      color:var(--primary);
      background:rgba(91,36,51,.08);
    }
    .nav-link.active::after{
      content:"";
      position:absolute;
      left:50%;
      bottom:.35rem;
      width:20px;
      height:3px;
      transform:translateX(-50%);
      border-radius:999px;
      background:linear-gradient(90deg,var(--accent),var(--accent-2));
    }

    .desktop-cta,
    .btn-brand,
    .btn-ghost{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:.5rem;
      border:0;
      border-radius:999px;
      padding:.9rem 1.25rem;
      font-weight:800;
      transition:transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease, color .22s ease;
      text-decoration:none;
      white-space:nowrap;
    }
    .desktop-cta,
    .btn-brand{
      color:#fff;
      background:linear-gradient(135deg,var(--primary),var(--accent-2));
      box-shadow:0 14px 30px rgba(91,36,51,.18);
    }
    .desktop-cta:hover,
    .btn-brand:hover{
      color:#fff;
      transform:translateY(-2px);
      box-shadow:0 18px 38px rgba(91,36,51,.22);
    }
    .btn-ghost{
      color:var(--primary);
      background:rgba(255,255,255,.82);
      border:1px solid var(--line);
    }
    .btn-ghost:hover{
      color:var(--primary);
      background:#fff;
      border-color:var(--line-strong);
      transform:translateY(-2px);
      box-shadow:0 12px 30px rgba(80,35,45,.08);
    }

    .main-shell{
      padding-top:0;
    }

    .section{
      padding:var(--space-section) 0;
      position:relative;
    }
    .section.tight{
      padding:72px 0;
    }
    .section.dark-band{
      background:linear-gradient(135deg,#22141a 0%, #2f1820 55%, #3f1d28 100%);
      color:#f8efe7;
    }

    .limit-bar{
      position:relative;
      overflow:hidden;
      border-radius:999px;
      background:rgba(91,36,51,.07);
      border:1px solid rgba(91,36,51,.08);
      color:var(--primary);
      padding:.8rem 1rem;
      font-size:.92rem;
      font-weight:800;
      display:inline-flex;
      align-items:center;
      gap:.6rem;
      box-shadow:0 10px 26px rgba(80,35,45,.08);
    }
    .limit-bar::after{
      content:"";
      position:absolute;
      inset:auto 0 0 0;
      height:3px;
      background:linear-gradient(90deg,var(--accent),var(--accent-2),var(--accent));
      background-size:200% 100%;
      animation:shine 5s linear infinite;
    }
    @keyframes shine{
      0%{background-position:0 0}
      100%{background-position:200% 0}
    }

    .hero{
      padding:54px 0 82px;
      position:relative;
      overflow:hidden;
    }
    .hero::before{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(125deg, rgba(91,36,51,.06), rgba(226,118,88,.08) 36%, rgba(255,255,255,0) 68%);
      pointer-events:none;
    }
    .hero .container{
      position:relative;
      z-index:1;
    }
    .hero-kicker{
      display:inline-flex;
      align-items:center;
      gap:.45rem;
      font-weight:800;
      color:var(--primary);
      padding:.35rem .8rem;
      border-radius:999px;
      background:rgba(255,255,255,.72);
      border:1px solid rgba(91,36,51,.08);
      margin-top:1rem;
      margin-bottom:1rem;
    }
    .hero h1{
      margin:0;
      font-size:clamp(2.1rem, 4.8vw, 4.2rem);
      line-height:1.08;
      letter-spacing:0;
      font-weight:900;
      color:var(--ink);
      max-width:11ch;
    }
    .hero p.lead{
      margin:1.15rem 0 0;
      max-width:40rem;
      color:var(--muted);
      font-size:1.08rem;
    }
    .hero-tags{
      display:flex;
      flex-wrap:wrap;
      gap:.6rem;
      margin:1.3rem 0 0;
    }
    .tag-pill{
      display:inline-flex;
      align-items:center;
      gap:.35rem;
      border-radius:999px;
      padding:.58rem .88rem;
      background:rgba(255,255,255,.82);
      border:1px solid rgba(91,36,51,.1);
      color:var(--primary);
      font-weight:700;
      font-size:.92rem;
    }
    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:.8rem;
      align-items:center;
      margin-top:1.45rem;
    }
    .support-note{
      color:var(--muted-2);
      font-size:.92rem;
      margin-top:.8rem;
    }

    .hero-panel{
      background:rgba(255,250,246,.9);
      border:1px solid rgba(91,36,51,.12);
      border-radius:var(--radius-xl);
      box-shadow:var(--shadow-strong);
      padding:1.1rem;
      position:relative;
      overflow:hidden;
    }
    .hero-panel::before{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(180deg, rgba(226,118,88,.06), rgba(255,255,255,0) 38%);
      pointer-events:none;
    }
    .panel-title{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:1rem;
      font-weight:900;
      font-size:1.05rem;
      color:var(--ink);
      padding:.2rem .2rem .9rem;
      border-bottom:1px solid rgba(91,36,51,.08);
    }
    .panel-title small{
      color:var(--muted-2);
      font-weight:700;
    }
    .path-list{
      list-style:none;
      padding:0;
      margin:1rem 0 0;
      display:grid;
      gap:.8rem;
    }
    .path-list li{
      display:flex;
      align-items:flex-start;
      gap:.8rem;
      background:#fff;
      border:1px solid rgba(91,36,51,.08);
      border-radius:18px;
      padding:.9rem 1rem;
      box-shadow:0 8px 20px rgba(80,35,45,.05);
    }
    .path-num{
      width:2rem;
      height:2rem;
      border-radius:999px;
      display:grid;
      place-items:center;
      background:rgba(91,36,51,.08);
      color:var(--primary);
      font-weight:900;
      flex:0 0 auto;
    }
    .path-list strong{
      display:block;
      font-size:1rem;
      margin-bottom:.1rem;
    }
    .path-list span{
      display:block;
      color:var(--muted);
      font-size:.93rem;
    }
    .mini-matrix{
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:.8rem;
      margin-top:.95rem;
    }
    .mini-box{
      background:linear-gradient(180deg,#fff,#fff8f4);
      border:1px solid rgba(91,36,51,.08);
      border-radius:20px;
      padding:.95rem;
      min-height:92px;
    }
    .mini-box .num{
      font-size:1.35rem;
      font-weight:900;
      color:var(--primary);
      line-height:1;
    }
    .mini-box p{
      margin:.4rem 0 0;
      color:var(--muted);
      font-size:.92rem;
    }

    .section-head{
      margin-bottom:1.5rem;
    }
    .section-head .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:.35rem;
      color:var(--primary);
      font-weight:800;
      font-size:.9rem;
      margin-bottom:.5rem;
    }
    .section-head h2{
      margin:0;
      font-size:clamp(1.7rem, 3vw, 2.6rem);
      line-height:1.16;
      font-weight:900;
      color:var(--ink);
    }
    .section-head p{
      margin:.8rem 0 0;
      color:var(--muted);
      max-width:50rem;
    }

    .filter-strip{
      display:flex;
      gap:.7rem;
      flex-wrap:nowrap;
      overflow-x:auto;
      padding-bottom:.35rem;
      scrollbar-width:thin;
    }
    .filter-strip::-webkit-scrollbar{height:6px}
    .filter-strip::-webkit-scrollbar-thumb{background:rgba(91,36,51,.18);border-radius:999px}
    .filter-chip{
      flex:0 0 auto;
      padding:.75rem 1rem;
      border-radius:999px;
      border:1px solid rgba(91,36,51,.12);
      background:rgba(255,255,255,.82);
      color:var(--muted);
      font-weight:700;
      transition:all .22s ease;
      white-space:nowrap;
    }
    .filter-chip:hover,
    .filter-chip.active{
      background:rgba(91,36,51,.08);
      color:var(--primary);
      border-color:rgba(91,36,51,.18);
      transform:translateY(-1px);
    }

    .feature-grid{
      display:grid;
      gap:1rem;
    }
    .feature-card{
      position:relative;
      border-radius:var(--radius-lg);
      border:1px solid rgba(91,36,51,.12);
      background:rgba(255,250,246,.9);
      box-shadow:var(--shadow);
      padding:1.2rem;
      overflow:hidden;
      transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
      min-height:100%;
    }
    .feature-card:hover{
      transform:translateY(-3px);
      box-shadow:var(--shadow-strong);
      border-color:rgba(91,36,51,.2);
    }
    .feature-card.featured{
      background:linear-gradient(180deg,#fffaf6 0%, #fff4ed 100%);
      border-color:rgba(226,118,88,.18);
    }
    .feature-card .badge-soft{
      display:inline-flex;
      align-items:center;
      gap:.35rem;
      border-radius:999px;
      padding:.35rem .65rem;
      font-size:.8rem;
      font-weight:800;
      color:var(--primary);
      background:rgba(91,36,51,.08);
      margin-bottom:.9rem;
    }
    .feature-card h3{
      margin:0;
      font-size:1.22rem;
      font-weight:900;
      color:var(--ink);
    }
    .feature-card p{
      margin:.65rem 0 0;
      color:var(--muted);
    }
    .feature-card ul{
      padding-left:1.05rem;
      margin:1rem 0 0;
      color:var(--muted);
    }
    .feature-card li+li{margin-top:.35rem}
    .feature-card .card-action{
      margin-top:1rem;
      display:inline-flex;
      align-items:center;
      gap:.45rem;
      color:var(--primary);
      font-weight:800;
    }

    .metric-box{
      background:rgba(255,255,255,.72);
      border:1px solid rgba(91,36,51,.08);
      border-radius:22px;
      padding:1rem;
      box-shadow:0 12px 28px rgba(80,35,45,.06);
    }
    .metric-box .value{
      font-size:1.8rem;
      font-weight:900;
      color:var(--primary);
      line-height:1;
    }
    .metric-box .label{
      margin-top:.35rem;
      color:var(--muted);
      font-size:.92rem;
    }

    .compare-shell{
      background:linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,251,246,.98));
      border:1px solid rgba(91,36,51,.12);
      border-radius:var(--radius-xl);
      box-shadow:var(--shadow);
      padding:1.15rem;
    }
    .table-responsive{
      border-radius:20px;
      overflow:hidden;
      border:1px solid rgba(91,36,51,.08);
    }
    .compare-table{
      margin:0;
      background:#fff;
    }
    .compare-table th,
    .compare-table td{
      padding:1rem .9rem;
      vertical-align:middle;
      border-color:rgba(91,36,51,.08);
    }
    .compare-table thead th{
      background:linear-gradient(180deg,#fff8f4,#fff1ea);
      color:var(--ink);
      font-weight:900;
    }
    .compare-table tbody th{
      width:32%;
      color:var(--ink);
      background:#fffaf6;
      font-weight:800;
    }
    .compare-table .current{
      background:rgba(226,118,88,.12);
    }
    .compare-table .check{
      color:#9c4a59;
      font-weight:800;
    }
    .compare-badge{
      display:inline-flex;
      align-items:center;
      gap:.35rem;
      padding:.32rem .6rem;
      border-radius:999px;
      background:rgba(91,36,51,.08);
      color:var(--primary);
      font-weight:800;
      font-size:.8rem;
    }
    .compare-badge.hot{
      background:rgba(226,118,88,.14);
      color:#9f3e46;
    }

    .limited-block{
      border-radius:34px;
      padding:1.3rem;
      background:linear-gradient(135deg,#231217 0%, #351720 48%, #4a1d2c 100%);
      color:#f9efe8;
      box-shadow:0 22px 60px rgba(35,18,23,.28);
      position:relative;
      overflow:hidden;
    }
    .limited-block::before{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(90deg, rgba(226,118,88,.14), rgba(255,255,255,0) 26%),
        linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0));
      pointer-events:none;
    }
    .limited-top{
      position:relative;
      z-index:1;
      display:flex;
      flex-wrap:wrap;
      gap:1rem;
      align-items:center;
      justify-content:space-between;
      margin-bottom:1rem;
    }
    .limited-top .title{
      display:flex;
      flex-direction:column;
      gap:.25rem;
    }
    .limited-top h2{
      margin:0;
      font-size:clamp(1.7rem, 3vw, 2.6rem);
      font-weight:900;
      line-height:1.15;
    }
    .limited-top p{
      margin:0;
      color:rgba(249,239,232,.8);
      max-width:44rem;
    }
    .timer{
      display:grid;
      grid-template-columns:repeat(4,minmax(54px,1fr));
      gap:.6rem;
      min-width:min(100%, 330px);
    }
    .timer .unit{
      background:rgba(255,255,255,.08);
      border:1px solid rgba(255,255,255,.1);
      border-radius:18px;
      padding:.85rem .6rem;
      text-align:center;
    }
    .timer .unit strong{
      display:block;
      font-size:1.35rem;
      line-height:1.1;
      color:#fff;
    }
    .timer .unit span{
      display:block;
      font-size:.78rem;
      color:rgba(249,239,232,.76);
      margin-top:.2rem;
    }
    .progress-soft{
      height:10px;
      background:rgba(255,255,255,.1);
      border-radius:999px;
      overflow:hidden;
      border:1px solid rgba(255,255,255,.08);
    }
    .progress-soft .progress-bar{
      background:linear-gradient(90deg,var(--accent),#ef9473);
      border-radius:inherit;
    }
    .limited-grid{
      position:relative;
      z-index:1;
      display:grid;
      gap:1rem;
    }
    .limited-card{
      background:rgba(255,255,255,.08);
      border:1px solid rgba(255,255,255,.1);
      border-radius:24px;
      padding:1rem;
      height:100%;
    }
    .limited-card .kicker{
      display:inline-flex;
      align-items:center;
      gap:.35rem;
      font-size:.78rem;
      font-weight:800;
      color:#f8d7cb;
      background:rgba(255,255,255,.08);
      border-radius:999px;
      padding:.25rem .55rem;
    }
    .limited-card h3{
      margin:.8rem 0 .45rem;
      font-size:1.15rem;
      font-weight:900;
    }
    .limited-card p{
      margin:0;
      color:rgba(249,239,232,.82);
    }
    .limited-actions{
      position:relative;
      z-index:1;
      display:flex;
      flex-wrap:wrap;
      gap:.75rem;
      margin-top:1.2rem;
    }
    .limited-actions .btn-brand{
      box-shadow:none;
    }
    .limited-actions .btn-ghost{
      background:rgba(255,255,255,.92);
    }

    .trust-row{
      display:grid;
      grid-template-columns:repeat(4,minmax(0,1fr));
      gap:1rem;
      margin-top:1rem;
    }
    .trust-item{
      background:rgba(255,255,255,.7);
      border:1px solid rgba(91,36,51,.08);
      border-radius:20px;
      padding:1rem;
      display:flex;
      gap:.9rem;
      align-items:flex-start;
      box-shadow:0 10px 24px rgba(80,35,45,.05);
    }
    .trust-item i{
      width:2.4rem;
      height:2.4rem;
      display:grid;
      place-items:center;
      border-radius:16px;
      background:rgba(91,36,51,.08);
      color:var(--primary);
      font-size:1.15rem;
      flex:0 0 auto;
    }
    .trust-item strong{
      display:block;
      font-size:.98rem;
      margin-bottom:.15rem;
    }
    .trust-item span{
      display:block;
      color:var(--muted);
      font-size:.9rem;
    }

    .consult-shell{
      border-radius:34px;
      background:linear-gradient(180deg, rgba(255,250,246,.96), rgba(255,246,239,.96));
      border:1px solid rgba(91,36,51,.12);
      box-shadow:var(--shadow);
      padding:1.25rem;
    }
    .consult-panel{
      border-radius:28px;
      background:linear-gradient(135deg, rgba(91,36,51,.96), rgba(58,23,31,.98));
      color:#f9efe8;
      padding:1.5rem;
      min-height:100%;
    }
    .consult-panel h2{
      margin:0;
      font-size:clamp(1.7rem, 3vw, 2.4rem);
      font-weight:900;
      line-height:1.15;
    }
    .consult-panel p{
      margin:1rem 0 0;
      color:rgba(249,239,232,.82);
    }
    .consult-list{
      list-style:none;
      padding:0;
      margin:1.25rem 0 0;
      display:grid;
      gap:.7rem;
    }
    .consult-list li{
      display:flex;
      align-items:flex-start;
      gap:.7rem;
      color:#f9efe8;
      background:rgba(255,255,255,.06);
      border:1px solid rgba(255,255,255,.08);
      border-radius:18px;
      padding:.8rem .9rem;
    }
    .consult-list i{
      color:#f4c1b3;
      font-size:1.05rem;
      margin-top:.12rem;
    }

    .form-panel{
      background:#fff;
      border:1px solid rgba(91,36,51,.1);
      border-radius:28px;
      padding:1.2rem;
      box-shadow:0 14px 34px rgba(80,35,45,.08);
      height:100%;
    }
    .form-label{
      font-weight:700;
      color:var(--ink);
      margin-bottom:.45rem;
    }
    .form-control,
    .form-select{
      border-radius:16px;
      border:1px solid rgba(91,36,51,.14);
      background:#fffdfb;
      padding:.95rem 1rem;
      color:var(--ink);
      box-shadow:none;
    }
    .form-control:focus,
    .form-select:focus{
      border-color:rgba(226,118,88,.55);
      box-shadow:0 0 0 .2rem rgba(226,118,88,.12);
    }
    textarea.form-control{
      min-height:140px;
      resize:vertical;
    }
    .form-hint{
      color:var(--muted-2);
      font-size:.9rem;
    }
    .form-check-input{
      border-color:rgba(91,36,51,.25);
    }
    .form-check-input:checked{
      background-color:var(--primary);
      border-color:var(--primary);
    }

    .accordion{
      --bs-accordion-border-color:rgba(91,36,51,.1);
      --bs-accordion-bg:rgba(255,255,255,.86);
      --bs-accordion-active-color:var(--ink);
      --bs-accordion-active-bg:#fff;
      --bs-accordion-btn-padding-x:1.05rem;
      --bs-accordion-btn-padding-y:1rem;
      --bs-accordion-btn-focus-box-shadow:0 0 0 .2rem rgba(226,118,88,.12);
    }
    .accordion-item{
      border-radius:20px !important;
      overflow:hidden;
      border:1px solid rgba(91,36,51,.1);
      box-shadow:0 10px 24px rgba(80,35,45,.05);
    }
    .accordion-item + .accordion-item{
      margin-top:.85rem;
    }
    .accordion-button{
      font-weight:800;
      color:var(--ink);
      background:transparent;
    }
    .accordion-button:not(.collapsed){
      box-shadow:none;
      background:linear-gradient(180deg,#fff,#fffaf6);
    }
    .accordion-body{
      color:var(--muted);
      background:#fff;
    }

    .site-footer{
      background:linear-gradient(135deg,#221217 0%, #2f1820 54%, #3e1d27 100%);
      color:#f6eee7;
      padding:2.4rem 0 7rem;
      margin-top:0;
    }
    .site-footer .footer-links{
      display:flex;
      flex-wrap:wrap;
      gap:.8rem 1rem;
      justify-content:flex-start;
    }
    .site-footer .footer-links a{
      color:#f6eee7;
      opacity:.88;
      font-weight:700;
      padding:.35rem 0;
    }
    .site-footer .footer-links a:hover{
      color:#fff;
      opacity:1;
    }
    .site-footer p{
      color:rgba(246,238,231,.82);
      margin-bottom:0;
    }
    .copyright{
      margin-top:1.35rem;
      padding-top:1rem;
      border-top:1px solid rgba(255,255,255,.1);
      color:rgba(246,238,231,.7);
      font-size:.92rem;
    }

    .mobile-tab{
      position:fixed;
      left:0;
      right:0;
      bottom:0;
      z-index:1040;
      padding:.55rem .8rem calc(.55rem + env(safe-area-inset-bottom));
      background:rgba(255,250,244,.96);
      border-top:1px solid rgba(91,36,51,.1);
      box-shadow:0 -10px 30px rgba(80,35,45,.08);
    }
    .tab-grid{
      display:grid;
      grid-template-columns:repeat(4,minmax(0,1fr));
      gap:.45rem;
    }
    .tab-item{
      display:flex;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      gap:.2rem;
      padding:.65rem .35rem;
      border-radius:18px;
      color:var(--muted);
      font-size:.77rem;
      font-weight:800;
      text-align:center;
      transition:all .2s ease;
    }
    .tab-item i{
      font-size:1.08rem;
      line-height:1;
    }
    .tab-item.active{
      background:rgba(91,36,51,.1);
      color:var(--primary);
    }
    .tab-item:hover{
      color:var(--primary);
      background:rgba(91,36,51,.05);
    }

    .page-spacer{
      height:2px;
    }

    @media (min-width: 992px){
      .hero{
        padding:78px 0 96px;
      }
      .feature-grid{
        grid-template-columns:repeat(12,minmax(0,1fr));
      }
      .feature-card.span-4{grid-column:span 4}
      .feature-card.span-5{grid-column:span 5}
      .feature-card.span-7{grid-column:span 7}
      .feature-card.span-6{grid-column:span 6}
      .limited-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
      }
    }

    @media (max-width: 991.98px){
      .navbar-collapse{
        padding:1rem 0 0;
      }
      .navbar-nav{
        gap:.25rem;
      }
      .desktop-cta{
        margin-top:.9rem;
        width:100%;
      }
      .hero{
        padding:34px 0 64px;
      }
      .hero h1{
        max-width:none;
      }
      .section{
        padding:var(--space-section-mobile) 0;
      }
      .trust-row{
        grid-template-columns:repeat(2,minmax(0,1fr));
      }
      .compare-table tbody th{
        width:auto;
      }
    }

    @media (max-width: 767.98px){
      .hero-actions{
        flex-direction:column;
        align-items:stretch;
      }
      .hero-actions .btn-brand,
      .hero-actions .btn-ghost{
        width:100%;
      }
      .mini-matrix{
        grid-template-columns:1fr;
      }
      .timer{
        grid-template-columns:repeat(2,minmax(0,1fr));
      }
      .trust-row{
        grid-template-columns:1fr;
      }
      .limited-top{
        align-items:flex-start;
      }
      .limited-block{
        padding:1rem;
        border-radius:28px;
      }
      .consult-shell{
        padding:1rem;
      }
      .form-panel,
      .consult-panel,
      .compare-shell,
      .hero-panel{
        border-radius:24px;
      }
    }

    @media (max-width: 575.98px){
      .brand-logo span:last-child,
      .footer-logo span:last-child{
        font-size:.98rem;
      }
      .hero p.lead{
        font-size:1rem;
      }
      .filter-chip{
        padding:.68rem .9rem;
      }
      .mobile-tab{
        display:block;
      }
      .site-footer{
        padding-bottom:8.5rem;
      }
    }

    @media (min-width: 576px){
      .mobile-tab{display:none}
    }

    .focus-ring:focus-visible{
      outline:0;
      box-shadow:0 0 0 .22rem rgba(226,118,88,.18);
    }
