/* roulang page: index */
:root{
  --bg:#031a12;
  --bg-soft:#062e20;
  --bg-deep:#02130d;
  --panel:rgba(6,46,32,.82);
  --panel-solid:#083625;
  --panel-light:#0b4430;
  --gold:#f59e0b;
  --gold-bright:#fcd34d;
  --leaf:#10b981;
  --leaf-soft:#a7f3d0;
  --cream:#f0fdf4;
  --sand:#fef3c7;
  --muted:#a7bfb2;
  --line:rgba(252,211,77,.18);
  --line-strong:rgba(252,211,77,.38);
  --danger:#ef4444;
  --radius-sm:10px;
  --radius:16px;
  --radius-lg:24px;
  --shadow:0 20px 60px rgba(0,0,0,.35);
  --shadow-gold:0 12px 36px rgba(245,158,11,.22);
  --container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg-deep)}
body{
  margin:0;
  font-family:Inter,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  color:var(--cream);
  background:
    radial-gradient(circle at 12% -10%,rgba(16,185,129,.2),transparent 28rem),
    radial-gradient(circle at 88% 8%,rgba(245,158,11,.12),transparent 24rem),
    linear-gradient(180deg,var(--bg-deep),var(--bg) 45%,#03130e 100%);
  line-height:1.65;
  min-height:100vh;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.24;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,black,transparent 82%);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input{font:inherit}
button{cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--gold-bright);outline-offset:3px}
::selection{background:var(--gold);color:#17200e}
.container{width:min(var(--container),calc(100% - 32px));margin-inline:auto}
.section{padding:76px 0;position:relative}
.section-tight{padding:54px 0}
.section-divider{border-top:1px solid rgba(255,255,255,.07)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--gold-bright);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.eyebrow::before{content:"";width:22px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.section-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:32px;align-items:end;margin-bottom:34px}
.section-head h2{font-size:clamp(1.7rem,3vw,2.7rem);line-height:1.16;margin:8px 0 0;letter-spacing:-.02em}
.section-head p{margin:0;color:var(--muted);line-height:1.7}
.text-gold{color:var(--gold-bright)}
.text-muted{color:var(--muted)}
.hairline{height:1px;background:linear-gradient(90deg,transparent,var(--line-strong),transparent)}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:46px;padding:0 18px;border-radius:999px;border:1px solid transparent;
  font-weight:800;font-size:.92rem;transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0) scale(.98)}
.btn-primary{background:linear-gradient(135deg,var(--gold-bright),var(--gold));color:#17200e;box-shadow:var(--shadow-gold)}
.btn-primary:hover{box-shadow:0 16px 42px rgba(245,158,11,.36)}
.btn-ghost{border-color:var(--line-strong);color:var(--cream);background:rgba(255,255,255,.035)}
.btn-ghost:hover{background:rgba(245,158,11,.08);border-color:var(--gold)}
.btn-link{color:var(--gold-bright);padding-inline:4px;min-height:auto}
.badge{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.26);color:var(--leaf-soft);font-size:.75rem;font-weight:800}
.gold-badge{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.28);color:var(--gold-bright)}
.panel{background:linear-gradient(145deg,rgba(8,54,37,.92),rgba(4,32,22,.84));border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}
.soft-panel{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius)}
.metric{display:flex;flex-direction:column;gap:4px;padding:18px;border-left:1px solid var(--line)}
.metric:first-child{border-left:0}
.metric strong{font-size:clamp(1.2rem,2.5vw,1.8rem);line-height:1.1;color:var(--gold-bright)}
.metric span{font-size:.78rem;color:var(--muted)}
.site-header{
  position:fixed;top:0;left:0;right:0;z-index:60;
  background:rgba(2,19,13,.86);backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(252,211,77,.22);
}
.nav-wrap{height:72px;display:flex;align-items:center;gap:18px}
.logo{display:flex;align-items:center;gap:11px;min-width:188px}
.logo-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--gold-bright),var(--gold));color:#102012;box-shadow:0 10px 28px rgba(245,158,11,.28);font-size:1.2rem}
.logo-copy strong{display:block;line-height:1.05;font-size:.93rem}
.logo-copy small{display:block;color:var(--muted);font-size:.66rem;margin-top:3px}
.main-nav{display:flex;align-items:center;gap:4px;margin-left:auto}
.main-nav a{padding:9px 11px;color:#d7e9df;border-radius:999px;font-size:.84rem;font-weight:700;transition:.2s}
.main-nav a:hover,.main-nav a.active{color:var(--gold-bright);background:rgba(245,158,11,.1)}
.nav-actions{display:flex;gap:8px;align-items:center}
.nav-actions .btn{min-height:40px;padding-inline:14px;font-size:.82rem}
.menu-toggle{display:none;width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--cream)}
.mobile-menu{display:none}
.hero{padding-top:122px;padding-bottom:42px}
.hero-shell{position:relative;overflow:hidden;border-radius:30px;border:1px solid var(--line-strong);box-shadow:0 34px 100px rgba(0,0,0,.47)}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.2}
.hero-shell::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(1,14,9,.97) 0%,rgba(2,22,15,.9) 48%,rgba(3,26,18,.58) 100%)}
.hero-content{position:relative;z-index:2;padding:54px 52px 44px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);gap:40px;align-items:center}
.hero h1{font-size:clamp(2.1rem,5.2vw,4.7rem);line-height:1.04;letter-spacing:-.045em;margin:16px 0 18px;max-width:940px}
.hero p{font-size:1rem;color:#d1e5da;max-width:780px;margin:0 0 24px;line-height:1.72}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.hero-side{display:flex;flex-direction:column;gap:12px}
.signal-board{padding:22px;border-radius:22px;background:linear-gradient(160deg,rgba(2,19,13,.92),rgba(11,68,48,.72));border:1px solid var(--line)}
.signal-board h2{font-size:1rem;margin:0 0 12px}
.signal-row{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-top:1px solid rgba(255,255,255,.08);font-size:.84rem}
.signal-row:first-of-type{border-top:0}
.signal-row span:last-child{color:var(--gold-bright);font-weight:800;text-align:right}
.flash-bar{margin-top:18px;display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:16px 18px;border-radius:18px;background:linear-gradient(90deg,rgba(245,158,11,.14),rgba(16,185,129,.08));border:1px solid var(--line)}
.countdown{display:flex;gap:8px}
.countdown b{min-width:48px;text-align:center;padding:8px 6px;border-radius:10px;background:rgba(2,19,13,.72);color:var(--gold-bright);font-variant-numeric:tabular-nums}
.countdown small{display:block;font-size:.62rem;color:var(--muted);font-weight:600}
.metric-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--radius);background:rgba(5,38,26,.72);margin-top:18px;overflow:hidden}
.calendar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.calendar-item{padding:22px;border-radius:var(--radius);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08);transition:.24s}
.calendar-item:hover{transform:translateY(-4px);border-color:var(--line-strong);box-shadow:var(--shadow-gold)}
.calendar-item time{color:var(--gold-bright);font-weight:800;font-size:.82rem}
.calendar-item h3{margin:9px 0 8px;font-size:1.08rem}
.calendar-item p{margin:0;color:var(--muted);font-size:.9rem}
.topic-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:18px}
.topic-card{position:relative;min-height:290px;overflow:hidden;border-radius:22px;border:1px solid var(--line);display:flex;align-items:flex-end;isolation:isolate}
.topic-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .5s ease}
.topic-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(2,19,13,.05),rgba(2,19,13,.96))}
.topic-card:hover img{transform:scale(1.06)}
.topic-card .topic-body{padding:24px}
.topic-card h3{font-size:1.35rem;margin:10px 0 8px}
.topic-card p{margin:0 0 14px;color:#d5e7de;font-size:.9rem}
.insight-layout{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:30px;align-items:start}
.insight-copy{position:sticky;top:96px}
.insight-copy h2{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.13;margin:10px 0 16px}
.insight-copy p{color:var(--muted)}
.signal-list{display:grid;gap:14px}
.signal-item{display:grid;grid-template-columns:54px 1fr;gap:16px;padding:20px;border-radius:var(--radius);border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035)}
.signal-item .num{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:rgba(245,158,11,.12);border:1px solid var(--line-strong);color:var(--gold-bright);font-weight:900}
.signal-item h3{margin:0 0 6px;font-size:1.05rem}
.signal-item p{margin:0;color:var(--muted);font-size:.92rem}
.timeboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.time-card{padding:24px;border-radius:20px;border:1px solid var(--line);background:linear-gradient(155deg,rgba(8,54,37,.94),rgba(4,31,21,.9))}
.time-card .time{font-size:1.55rem;color:var(--gold-bright);font-weight:900;letter-spacing:-.03em}
.time-card h3{margin:8px 0 10px;font-size:1.08rem}
.time-card p{margin:0;color:var(--muted);font-size:.9rem}
.rules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.rule{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:20px;border-radius:var(--radius);background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}
.rule i{color:var(--gold-bright);font-size:1.2rem;padding-top:3px}
.rule h3{margin:0 0 6px;font-size:1rem}
.rule p{margin:0;color:var(--muted);font-size:.89rem}
.comparison{display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:22px;overflow:hidden;border:1px solid var(--line)}
.comparison-col{padding:28px}
.comparison-col:first-child{background:rgba(255,255,255,.035)}
.comparison-col:last-child{background:linear-gradient(150deg,rgba(245,158,11,.16),rgba(16,185,129,.1));border-left:1px solid var(--line)}
.comparison h3{margin:0 0 14px;font-size:1.18rem}
.check-list{list-style:none;padding:0;margin:0;display:grid;gap:11px}
.check-list li{display:flex;gap:10px;color:#d7e9df;font-size:.9rem}
.check-list i{color:var(--leaf);margin-top:5px}
.news-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:26px;align-items:start}
.news-list{display:grid;gap:12px}
.news-item{display:grid;grid-template-columns:132px 1fr;gap:16px;padding:14px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.032);transition:.23s}
.news-item:hover{border-color:var(--line-strong);background:rgba(245,158,11,.055);transform:translateX(4px)}
.news-item img{width:132px;height:100px;border-radius:12px;object-fit:cover}
.news-item h3{margin:0 0 7px;font-size:1rem;line-height:1.4}
.news-meta{display:flex;flex-wrap:wrap;gap:9px;color:var(--muted);font-size:.72rem;margin-bottom:7px}
.news-item p{margin:0;color:var(--muted);font-size:.85rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.news-aside{padding:24px;border-radius:20px;background:linear-gradient(160deg,rgba(245,158,11,.13),rgba(16,185,129,.08));border:1px solid var(--line)}
.news-aside h3{margin:0 0 10px}
.news-aside p{color:#d5e7de;font-size:.9rem}
.media-rail{display:grid;grid-template-columns:1.1fr .9fr;gap:20px}
.media-main{position:relative;min-height:390px;border-radius:22px;overflow:hidden;border:1px solid var(--line)}
.media-main img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.media-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 20%,rgba(2,19,13,.96));display:flex;align-items:flex-end;padding:28px}
.media-overlay h3{font-size:1.6rem;margin:8px 0}
.media-side{display:grid;gap:14px}
.media-note{padding:22px;border-radius:18px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.media-note h3{margin:0 0 7px;font-size:1rem}
.media-note p{margin:0;color:var(--muted);font-size:.88rem}
.analytics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.analytics-card{padding:24px;border-radius:20px;border:1px solid var(--line);background:rgba(5,38,26,.75)}
.chart-bars{height:130px;display:flex;align-items:flex-end;gap:8px;margin-top:20px}
.chart-bars span{flex:1;border-radius:7px 7px 3px 3px;background:linear-gradient(180deg,var(--gold-bright),var(--leaf));min-height:12px;opacity:.85}
.analytics-card h3{margin:0}
.analytics-card p{color:var(--muted);font-size:.87rem;margin:8px 0 0}
.trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.trust-item{padding:20px;border-radius:16px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08)}
.trust-item i{font-size:1.35rem;color:var(--leaf)}
.trust-item h3{font-size:.98rem;margin:12px 0 6px}
.trust-item p{font-size:.83rem;color:var(--muted);margin:0}
.faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.faq-item{padding:20px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03)}
.faq-item h3{margin:0 0 8px;font-size:1rem}
.faq-item p{margin:0;color:var(--muted);font-size:.89rem}
.subscribe{border-radius:28px;padding:34px;background:linear-gradient(125deg,rgba(245,158,11,.2),rgba(16,185,129,.13));border:1px solid var(--line-strong);display:grid;grid-template-columns:1fr minmax(320px,.65fr);gap:30px;align-items:center}
.subscribe h2{margin:8px 0 12px;font-size:clamp(1.7rem,3vw,2.5rem)}
.subscribe p{color:#d9e9e1;margin:0}
.subscribe-form{display:flex;gap:9px;padding:8px;border-radius:999px;background:rgba(2,19,13,.66);border:1px solid var(--line)}
.subscribe-form input{flex:1;min-width:0;border:0;background:transparent;color:var(--cream);padding:0 14px;outline:none}
.subscribe-form input::placeholder{color:#8eaa9a}
.form-message{grid-column:1/-1;margin:0;color:var(--gold-bright);font-size:.84rem}
.site-footer{background:rgba(1,13,9,.9);border-top:1px solid var(--line);padding:54px 0 26px}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr .8fr;gap:30px}
.footer-brand p{color:var(--muted);font-size:.88rem;max-width:360px}
.footer-col h3{font-size:.86rem;margin:0 0 13px;color:var(--gold-bright)}
.footer-col a{display:block;color:#c8dbd1;font-size:.84rem;padding:5px 0}
.footer-col a:hover{color:var(--gold-bright)}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-top:22px;margin-top:28px;border-top:1px solid rgba(255,255,255,.08);color:var(--muted);font-size:.78rem}
.fab{
  position:fixed;left:16px;bottom:96px;z-index:50;width:58px;height:58px;border-radius:50%;
  display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#fff3b0,#f59e0b 44%,#7c3f06);
  color:#231407;border:2px solid #fcd34d;box-shadow:0 10px 32px rgba(245,158,11,.44);
  transition:transform .25s,opacity .25s;opacity:.86;animation:float 3.4s ease-in-out infinite;
}
.fab:hover{transform:scale(1.1) rotate(6deg);opacity:1}
.fab:active{transform:scale(.95) translateY(4px)}
.fab .dot{position:absolute;top:3px;right:3px;width:13px;height:13px;border-radius:50%;background:#dc2626;border:2px solid #fff}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media (max-width:1024px){
  .main-nav{display:none}
  .menu-toggle{display:grid;place-items:center;margin-left:auto}
  .mobile-menu.open{display:block;position:fixed;top:72px;left:0;right:0;background:rgba(2,19,13,.98);border-bottom:1px solid var(--line);padding:12px 16px 18px}
  .mobile-menu a{display:block;padding:12px;border-radius:12px;font-weight:700}
  .mobile-menu a:hover{background:rgba(245,158,11,.1);color:var(--gold-bright)}
  .hero-content{grid-template-columns:1fr;padding:44px 34px}
  .topic-grid{grid-template-columns:1fr 1fr}
  .topic-card:first-child{grid-column:1/-1}
  .metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .metric:nth-child(3){border-left:0;border-top:1px solid var(--line)}
  .metric:nth-child(4){border-top:1px solid var(--line)}
  .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-grid{grid-template-columns:1.2fr .8fr .8fr}
}
@media (max-width:768px){
  .section{padding:60px 0}
  .section-head{grid-template-columns:1fr;gap:12px}
  .hero{padding-top:108px}
  .hero-content{padding:34px 24px}
  .flash-bar{grid-template-columns:1fr;gap:12px}
  .calendar,.timeboard,.analytics{grid-template-columns:1fr}
  .insight-layout,.news-layout,.media-rail,.subscribe{grid-template-columns:1fr}
  .insight-copy{position:static}
  .rules-grid,.faq-grid{grid-template-columns:1fr}
  .comparison{grid-template-columns:1fr}
  .comparison-col:last-child{border-left:0;border-top:1px solid var(--line)}
  .news-item{grid-template-columns:104px 1fr}
  .news-item img{width:104px;height:96px}
  .subscription-form{width:100%}
  .footer-grid{grid-template-columns:1fr 1fr}
  .logo-copy small{display:none}
}
@media (max-width:520px){
  .container{width:min(100% - 22px,var(--container))}
  .nav-wrap{gap:8px;height:68px}
  .logo{min-width:0;gap:8px}
  .logo-mark{width:38px;height:38px;border-radius:12px}
  .logo-copy strong{font-size:.72rem;max-width:92px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .nav-actions{gap:5px}
  .nav-actions .btn{min-height:36px;padding-inline:10px;font-size:.7rem}
  .menu-toggle{width:36px;height:36px}
  .mobile-menu{top:68px}
  .hero h1{font-size:2.05rem;line-height:1.08}
  .hero p{font-size:.92rem}
  .metric-strip{grid-template-columns:1fr 1fr}
  .metric{padding:14px}
  .topic-grid{grid-template-columns:1fr}
  .topic-card:first-child{grid-column:auto}
  .topic-card{min-height:250px}
  .news-item{grid-template-columns:1fr}
  .news-item img{width:100%;height:170px}
  .subscribe{padding:24px 18px}
  .subscribe-form{border-radius:18px;flex-direction:column;padding:9px}
  .subscribe-form input{min-height:44px}
  .subscribe-form .btn{width:100%}
  .footer-grid{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;align-items:flex-start}
}

/* roulang page: category1 */
:root{
  --bg:#031a12;
  --bg-soft:#062e20;
  --bg-deep:#02130d;
  --panel:rgba(6,46,32,.82);
  --panel-solid:#083625;
  --panel-light:#0b4430;
  --gold:#f59e0b;
  --gold-bright:#fcd34d;
  --leaf:#10b981;
  --leaf-soft:#a7f3d0;
  --cream:#f0fdf4;
  --sand:#fef3c7;
  --muted:#a7bfb2;
  --line:rgba(252,211,77,.18);
  --line-strong:rgba(252,211,77,.38);
  --danger:#ef4444;
  --radius-sm:10px;
  --radius:16px;
  --radius-lg:24px;
  --shadow:0 20px 60px rgba(0,0,0,.35);
  --shadow-gold:0 12px 36px rgba(245,158,11,.22);
  --container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg-deep)}
body{
  margin:0;
  font-family:Inter,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  color:var(--cream);
  background:
    radial-gradient(circle at 12% -10%,rgba(16,185,129,.2),transparent 28rem),
    radial-gradient(circle at 88% 6%,rgba(245,158,11,.14),transparent 24rem),
    linear-gradient(180deg,var(--bg-deep),var(--bg) 45%,#03130e 100%);
  line-height:1.65;
  min-height:100vh;
  overflow-x:hidden;
}
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;opacity:.22;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent 82%);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input{font:inherit}
button{cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--gold-bright);outline-offset:3px}
.container{width:min(var(--container),calc(100% - 32px));margin-inline:auto}
.section{padding:74px 0;position:relative}
.section-tight{padding:50px 0}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--gold-bright);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.eyebrow::before{content:"";width:22px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.text-gold{color:var(--gold-bright)}
.text-muted{color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 20px;border-radius:999px;border:1px solid transparent;font-weight:800;font-size:.92rem;transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0) scale(.98)}
.btn-primary{background:linear-gradient(135deg,var(--gold-bright),var(--gold));color:#17200e;box-shadow:var(--shadow-gold)}
.btn-primary:hover{box-shadow:0 16px 42px rgba(245,158,11,.36)}
.btn-ghost{border-color:var(--line-strong);color:var(--cream);background:rgba(255,255,255,.035)}
.btn-ghost:hover{background:rgba(245,158,11,.08);border-color:var(--gold)}
.badge{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.26);color:var(--leaf-soft);font-size:.75rem;font-weight:800}
.gold-badge{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.28);color:var(--gold-bright)}
.site-header{position:fixed;top:0;left:0;right:0;z-index:60;background:rgba(2,19,13,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(252,211,77,.22)}
.nav-wrap{height:72px;display:flex;align-items:center;gap:18px}
.logo{display:flex;align-items:center;gap:11px;min-width:186px}
.logo-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--gold-bright),var(--gold));color:#102012;box-shadow:0 10px 28px rgba(245,158,11,.28);font-size:1.2rem}
.logo-copy strong{display:block;line-height:1.05;font-size:.92rem}
.logo-copy small{display:block;color:var(--muted);font-size:.66rem;margin-top:3px}
.main-nav{display:flex;align-items:center;gap:4px;margin-left:auto}
.main-nav a{padding:9px 12px;color:#d7e9df;border-radius:999px;font-size:.84rem;font-weight:700;transition:.2s}
.main-nav a:hover,.main-nav a.active{color:var(--gold-bright);background:rgba(245,158,11,.1)}
.nav-actions{display:flex;gap:8px;align-items:center}
.nav-actions .btn{min-height:40px;padding-inline:15px;font-size:.82rem}
.menu-toggle{display:none;width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--cream)}
.mobile-menu{display:none}
.cat-hero{padding-top:120px;padding-bottom:40px}
.cat-hero-shell{position:relative;overflow:hidden;border-radius:30px;border:1px solid var(--line-strong);box-shadow:0 34px 100px rgba(0,0,0,.47)}
.cat-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.22}
.cat-hero-shell::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(1,14,9,.97) 0%,rgba(2,22,15,.9) 52%,rgba(3,26,18,.56) 100%)}
.cat-hero-content{position:relative;z-index:2;padding:52px 48px 46px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,.6fr);gap:38px;align-items:center}
.cat-hero h1{font-size:clamp(1.9rem,4.6vw,3.6rem);line-height:1.08;letter-spacing:-.035em;margin:16px 0 18px}
.cat-hero p{font-size:1rem;color:#d1e5da;max-width:760px;margin:0 0 24px;line-height:1.72}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.crumb{font-size:.8rem;color:var(--muted);margin-bottom:6px}
.crumb a:hover{color:var(--gold-bright)}
.side-panel{border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--panel);padding:22px}
.side-panel h3{margin:0 0 6px;font-size:1rem}
.side-panel .signal-row{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-top:1px solid rgba(255,255,255,.08);font-size:.84rem}
.side-panel .signal-row:first-of-type{border-top:0}
.side-panel .signal-row span:last-child{color:var(--gold-bright);font-weight:800;text-align:right}
.section-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,.6fr);gap:30px;align-items:end;margin-bottom:34px}
.section-head h2{font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.16;margin:8px 0 0;letter-spacing:-.02em}
.section-head p{margin:0;color:var(--muted);line-height:1.7}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.card{border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));padding:24px;transition:.24s}
.card:hover{transform:translateY(-4px);border-color:var(--line-strong);box-shadow:var(--shadow-gold)}
.card h3{margin:12px 0 8px;font-size:1.08rem}
.card p{margin:0;color:var(--muted);font-size:.92rem}
.card-icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.26);color:var(--leaf-soft);font-size:1.1rem}
.card-icon.gold{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.28);color:var(--gold-bright)}
.scene-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.scene-item{border-radius:var(--radius);border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);padding:22px;display:grid;grid-template-columns:48px 1fr;gap:16px;transition:.24s}
.scene-item:hover{border-color:var(--line-strong);background:rgba(16,185,129,.06)}
.scene-item h3{margin:2px 0 8px;font-size:1.02rem}
.scene-item p{margin:0;color:var(--muted);font-size:.9rem}
.scene-no{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;font-weight:900;color:#102012;background:linear-gradient(145deg,var(--gold-bright),var(--gold));font-size:1rem}
.step-list{display:grid;gap:14px}
.step-row{display:grid;grid-template-columns:60px 1fr;gap:18px;padding:20px;border-radius:var(--radius);border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02);transition:.24s}
.step-row:hover{border-color:var(--line-strong);background:rgba(245,158,11,.05)}
.step-idx{font-size:1.5rem;font-weight:900;color:var(--gold-bright);line-height:1.1}
.step-row h3{margin:0 0 6px;font-size:1.02rem}
.step-row p{margin:0;color:var(--muted);font-size:.9rem}
.stat-band{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:28px;border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--panel)}
.stat-item{text-align:left}
.stat-item b{display:block;font-size:clamp(1.5rem,2.6vw,2.2rem);color:var(--gold-bright);letter-spacing:-.02em;line-height:1.1}
.stat-item span{color:var(--muted);font-size:.84rem}
.checklist{display:grid;gap:12px;list-style:none;padding:0;margin:0}
.checklist li{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02)}
.checklist i{color:var(--leaf);margin-top:4px}
.checklist b{display:block;margin-bottom:3px}
.checklist span{color:var(--muted);font-size:.88rem}
.notice-band{padding:26px 28px;border-radius:var(--radius-lg);border:1px dashed var(--line-strong);background:linear-gradient(120deg,rgba(245,158,11,.08),rgba(16,185,129,.06));display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center}
.notice-band h3{margin:0 0 6px;font-size:1.15rem}
.notice-band p{margin:0;color:var(--muted);font-size:.92rem}
.pay-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.pay-chip{padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);font-size:.8rem;font-weight:700;color:#d7e9df}
.qa-list{display:grid;gap:12px}
.qa-item{border-radius:var(--radius);border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.02);overflow:hidden}
.qa-item summary{cursor:pointer;list-style:none;padding:18px 20px;font-weight:800;font-size:.98rem;display:flex;justify-content:space-between;gap:14px;align-items:center;transition:.2s}
.qa-item summary::-webkit-details-marker{display:none}
.qa-item summary:hover{background:rgba(245,158,11,.06);color:var(--gold-bright)}
.qa-item summary i{color:var(--gold-bright);transition:transform .25s}
.qa-item[open] summary i{transform:rotate(45deg)}
.qa-item .qa-body{padding:0 20px 20px;color:var(--muted);font-size:.92rem}
.cta-panel{position:relative;overflow:hidden;border-radius:28px;border:1px solid var(--line-strong);padding:44px 40px;background:linear-gradient(120deg,rgba(2,22,15,.96),rgba(6,46,32,.86));display:grid;grid-template-columns:minmax(0,1.3fr) minmax(240px,.7fr);gap:32px;align-items:center}
.cta-panel h2{margin:10px 0 14px;font-size:clamp(1.5rem,2.8vw,2.3rem);line-height:1.16}
.cta-panel p{margin:0 0 20px;color:#d1e5da}
.list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.list-card{border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));overflow:hidden;transition:.24s;display:flex;flex-direction:column}
.list-card:hover{transform:translateY(-4px);border-color:var(--line-strong);box-shadow:var(--shadow-gold)}
.list-thumb{width:100%;height:180px;object-fit:cover;opacity:.9}
.list-body{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1}
.list-body h3{margin:0;font-size:1.02rem;line-height:1.35}
.list-body p{margin:0;color:var(--muted);font-size:.88rem;flex:1}
.list-meta{display:flex;justify-content:space-between;gap:12px;font-size:.78rem;color:var(--muted)}
.list-meta b{color:var(--gold-bright)}
.empty-note{padding:26px;border-radius:var(--radius);border:1px dashed var(--line-strong);color:var(--muted);text-align:center}
.site-footer{border-top:1px solid rgba(252,211,77,.18);background:linear-gradient(180deg,rgba(2,19,13,.7),rgba(2,15,10,.96));padding:56px 0 26px;margin-top:40px}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:30px}
.footer-brand .logo{margin-bottom:14px}
.footer-brand p{color:var(--muted);font-size:.9rem;margin:0;max-width:340px}
.footer-col h3{margin:0 0 14px;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;color:var(--gold-bright)}
.footer-col a{display:block;color:var(--muted);font-size:.88rem;padding:5px 0;transition:.2s}
.footer-col a:hover{color:var(--gold-bright);transform:translateX(3px)}
.footer-bottom{margin-top:34px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:.8rem}
.fab{position:fixed;left:16px;bottom:96px;z-index:50;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--gold-bright),var(--gold));color:#102012;border:2px solid rgba(255,255,255,.25);box-shadow:0 8px 26px rgba(245,158,11,.38);font-size:1.3rem;transition:.25s;opacity:.85}
.fab:hover{transform:scale(1.1);opacity:1;box-shadow:0 12px 34px rgba(245,158,11,.5)}
.fab:active{transform:scale(.95) translateY(2px)}
.fab .dot{position:absolute;top:2px;right:2px;width:13px;height:13px;border-radius:50%;background:#ef4444;border:2px solid #fff}
@media (max-width:1024px){
  .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .list-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cat-hero-content,.cta-panel{grid-template-columns:1fr}
  .section-head{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .main-nav{display:none}
  .menu-toggle{display:grid;place-items:center;margin-left:auto}
  .mobile-menu{display:none;position:fixed;top:72px;left:0;right:0;z-index:55;background:rgba(2,19,13,.98);border-bottom:1px solid var(--line);padding:14px 18px 20px}
  .mobile-menu.open{display:block}
  .mobile-menu a{display:block;padding:12px 8px;border-radius:12px;font-weight:700;color:#d7e9df}
  .mobile-menu a:hover,.mobile-menu a.active{color:var(--gold-bright);background:rgba(245,158,11,.1)}
}
@media (max-width:768px){
  .cat-hero-content{padding:36px 24px 32px}
  .grid-2,.scene-grid{grid-template-columns:1fr}
  .stat-band{grid-template-columns:repeat(2,minmax(0,1fr))}
  .nav-actions .btn-ghost{display:none}
}
@media (max-width:520px){
  .grid-3,.grid-4,.list-grid{grid-template-columns:1fr}
  .section{padding:56px 0}
  .cat-hero{padding-top:104px}
  .logo-copy small{display:none}
  .footer-grid{grid-template-columns:1fr}
  .notice-band{grid-template-columns:1fr}
  .fab{bottom:84px}
}

/* roulang page: article */
:root{
  --bg:#031a12;
  --bg-soft:#062e20;
  --bg-deep:#02130d;
  --panel:rgba(6,46,32,.82);
  --panel-solid:#083625;
  --panel-light:#0b4430;
  --gold:#f59e0b;
  --gold-bright:#fcd34d;
  --leaf:#10b981;
  --leaf-soft:#a7f3d0;
  --cream:#f0fdf4;
  --sand:#fef3c7;
  --muted:#a7bfb2;
  --line:rgba(252,211,77,.18);
  --line-strong:rgba(252,211,77,.38);
  --danger:#ef4444;
  --radius-sm:10px;
  --radius:16px;
  --radius-lg:24px;
  --shadow:0 20px 60px rgba(0,0,0,.35);
  --shadow-gold:0 12px 36px rgba(245,158,11,.22);
  --container:1180px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg-deep);-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:Inter,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  color:var(--cream);
  background:
    radial-gradient(circle at 12% -10%,rgba(16,185,129,.2),transparent 28rem),
    radial-gradient(circle at 88% 8%,rgba(245,158,11,.12),transparent 24rem),
    linear-gradient(180deg,var(--bg-deep),var(--bg) 45%,#03130e 100%);
  line-height:1.65;
  min-height:100vh;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  opacity:.24;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:42px 42px;
  mask-image:linear-gradient(to bottom,black,transparent 82%);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input{font:inherit}
button{cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--gold-bright);outline-offset:3px}
h1,h2,h3,h4{font-weight:800;color:var(--cream)}
p{margin:0 0 14px}
.container{width:min(var(--container),calc(100% - 32px));margin-inline:auto}
.section{padding:76px 0;position:relative;z-index:1}
.section-tight{padding:54px 0;position:relative;z-index:1}
.section-divider{border-top:1px solid rgba(255,255,255,.07)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--gold-bright);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.eyebrow::before{content:"";width:22px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.section-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:32px;align-items:end;margin-bottom:34px}
.section-head h2{font-size:clamp(1.6rem,3vw,2.5rem);line-height:1.18;margin:8px 0 0;letter-spacing:-.02em}
.section-head p{margin:0;color:var(--muted);line-height:1.7;font-size:.95rem}
.text-gold{color:var(--gold-bright)}
.text-muted{color:var(--muted)}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:46px;padding:0 18px;border-radius:999px;border:1px solid transparent;
  font-weight:800;font-size:.92rem;transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease,color .22s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0) scale(.98)}
.btn-primary{background:linear-gradient(135deg,var(--gold-bright),var(--gold));color:#17200e;box-shadow:var(--shadow-gold)}
.btn-primary:hover{box-shadow:0 16px 42px rgba(245,158,11,.36)}
.btn-ghost{border-color:var(--line-strong);color:var(--cream);background:rgba(255,255,255,.035)}
.btn-ghost:hover{background:rgba(245,158,11,.08);border-color:var(--gold)}
.btn-link{color:var(--gold-bright);padding-inline:4px;min-height:auto}
.badge{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.26);color:var(--leaf-soft);font-size:.75rem;font-weight:800}
.gold-badge{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.28);color:var(--gold-bright)}

/* ===== Header / Nav ===== */
.site-header{
  position:fixed;top:0;left:0;right:0;z-index:60;
  background:rgba(2,19,13,.86);backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(252,211,77,.22);
}
.nav-wrap{height:72px;display:flex;align-items:center;gap:18px}
.logo{display:flex;align-items:center;gap:11px;min-width:188px}
.logo-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--gold-bright),var(--gold));color:#102012;box-shadow:0 10px 28px rgba(245,158,11,.28);font-size:1.2rem}
.logo-copy strong{display:block;line-height:1.05;font-size:.93rem}
.logo-copy small{display:block;color:var(--muted);font-size:.66rem;margin-top:3px}
.main-nav{display:flex;align-items:center;gap:4px;margin-left:auto}
.main-nav a{padding:9px 11px;color:#d7e9df;border-radius:999px;font-size:.84rem;font-weight:700;transition:.2s}
.main-nav a:hover,.main-nav a.active{color:var(--gold-bright);background:rgba(245,158,11,.1)}
.nav-actions{display:flex;gap:8px;align-items:center}
.nav-actions .btn{min-height:40px;padding-inline:14px;font-size:.82rem}
.menu-toggle{display:none;width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--cream)}
.mobile-menu{display:none}

/* ===== Article hero ===== */
.article-hero{padding-top:118px;padding-bottom:8px;position:relative;z-index:1}
.breadcrumb{display:flex;align-items:center;gap:9px;font-size:.8rem;color:var(--muted);margin-bottom:20px;flex-wrap:wrap}
.breadcrumb a{color:var(--gold-bright);font-weight:700}
.breadcrumb a:hover{text-decoration:underline}
.article-hero-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:38px;align-items:start}
.article-hero h1{font-size:clamp(1.75rem,4vw,3.3rem);line-height:1.14;letter-spacing:-.035em;margin:16px 0 16px}
.article-hero .lede{font-size:1rem;color:#d1e5da;line-height:1.75;max-width:720px}
.article-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.article-meta span{display:inline-flex;align-items:center;gap:7px;font-size:.79rem;color:var(--muted);padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.03)}
.article-meta i{color:var(--gold-bright)}
.hero-card{overflow:hidden;border-radius:var(--radius-lg);border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));box-shadow:var(--shadow)}
.hero-card img{width:100%;height:212px;object-fit:cover}
.hero-card-body{padding:20px}
.hero-card-body h3{margin:0 0 12px;font-size:1rem}
.signal-row{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-top:1px solid rgba(255,255,255,.08);font-size:.83rem;color:#cfe3d8}
.signal-row:first-of-type{border-top:0}
.signal-row span:last-child{color:var(--gold-bright);font-weight:800;text-align:right}

/* ===== Stat strip ===== */
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.stat-card{
  padding:22px;border-radius:var(--radius);border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.015));
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;
}
.stat-card:hover{transform:translateY(-4px);border-color:var(--line-strong);box-shadow:var(--shadow-gold)}
.stat-card strong{display:block;font-size:1.65rem;line-height:1.15;color:var(--gold-bright);letter-spacing:-.02em}
.stat-card small{display:block;margin-top:8px;color:var(--muted);font-size:.83rem;line-height:1.55}
.stat-card .stat-label{display:block;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--leaf-soft);font-weight:800;margin-bottom:10px}

/* ===== Article body ===== */
.article-shell{display:block;border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--panel);padding:44px;box-shadow:var(--shadow)}
.article-body{max-width:860px;font-size:1rem;line-height:1.75;color:#e6f5ec}
.article-body h2{font-size:clamp(1.35rem,2.4vw,1.9rem);line-height:1.25;margin:38px 0 14px;padding-left:16px;border-left:4px solid var(--gold);letter-spacing:-.02em}
.article-body h3{font-size:1.12rem;margin:26px 0 10px;color:var(--gold-bright)}
.article-body p{margin:0 0 16px}
.article-body ul,.article-body ol{margin:0 0 18px;padding-left:22px}
.article-body li{margin-bottom:9px}
.article-body li::marker{color:var(--gold)}
.article-body strong{color:var(--gold-bright)}
.article-body img{border-radius:var(--radius);margin:22px 0;border:1px solid var(--line)}
.article-body blockquote{margin:24px 0;padding:18px 22px;border-radius:var(--radius);background:rgba(16,185,129,.08);border-left:4px solid var(--leaf);color:var(--leaf-soft)}
.article-body table{width:100%;border-collapse:collapse;margin:22px 0;font-size:.9rem;overflow:hidden;border-radius:var(--radius)}
.article-body th,.article-body td{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.09);text-align:left}
.article-body th{background:rgba(245,158,11,.12);color:var(--gold-bright);font-weight:800}
.article-body a{color:var(--gold-bright);text-decoration:underline}
.article-empty{padding:44px;border-radius:var(--radius-lg);border:1px dashed var(--line-strong);background:rgba(255,255,255,.03);text-align:left}
.article-empty p{color:var(--muted);margin-bottom:18px}

/* ===== Insight cards ===== */
.insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.insight-card{padding:24px;border-radius:var(--radius);border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));transition:.24s}
.insight-card:hover{transform:translateY(-4px);border-color:var(--line-strong)}
.insight-card .ico{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:rgba(245,158,11,.14);border:1px solid rgba(245,158,11,.3);color:var(--gold-bright);margin-bottom:14px}
.insight-card h3{margin:0 0 10px;font-size:1.02rem}
.insight-card p{margin:0;color:var(--muted);font-size:.89rem;line-height:1.68}

/* ===== Window table ===== */
.window-list{border-radius:var(--radius-lg);border:1px solid var(--line);overflow:hidden;background:rgba(255,255,255,.02)}
.window-row{display:grid;grid-template-columns:150px minmax(0,1.5fr) minmax(0,1fr) 120px;gap:16px;align-items:center;padding:16px 22px;border-top:1px solid rgba(255,255,255,.07);font-size:.89rem}
.window-row:first-child{border-top:0;background:rgba(245,158,11,.09);font-weight:800;color:var(--gold-bright);text-transform:uppercase;font-size:.74rem;letter-spacing:.08em}
.window-row time{color:var(--gold-bright);font-weight:800}
.window-row span{color:#cfe3d8}
.pill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:.72rem;font-weight:800;background:rgba(16,185,129,.12);border:1px solid rgba(16,185,129,.28);color:var(--leaf-soft);justify-self:start}
.pill.warm{background:rgba(245,158,11,.14);border-color:rgba(245,158,11,.3);color:var(--gold-bright)}

/* ===== Checklist ===== */
.check-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px;align-items:start}
.check-list{list-style:none;margin:0;padding:0}
.check-list li{display:flex;gap:12px;padding:13px 0;border-top:1px solid rgba(255,255,255,.08);font-size:.92rem;color:#dcefe5}
.check-list li:first-child{border-top:0}
.check-list i{color:var(--leaf);margin-top:4px}
.check-note{padding:24px;border-radius:var(--radius);border:1px solid var(--line);background:linear-gradient(180deg,rgba(245,158,11,.09),rgba(255,255,255,.02))}
.check-note h3{margin:0 0 12px;font-size:1.05rem}
.check-note p{margin:0;color:#d7e9df;font-size:.9rem;line-height:1.7}
.check-note img{border-radius:var(--radius-sm);margin-top:18px;height:170px;width:100%;object-fit:cover}

/* ===== Category matrix ===== */
.cat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cat-card{display:block;padding:24px;border-radius:var(--radius);border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));transition:.24s}
.cat-card:hover{transform:translateY(-4px);border-color:var(--line-strong);box-shadow:var(--shadow-gold)}
.cat-card span{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--leaf-soft);font-weight:800}
.cat-card h3{margin:10px 0 8px;font-size:1.08rem}
.cat-card p{margin:0 0 14px;color:var(--muted);font-size:.88rem;line-height:1.65}
.cat-card em{font-style:normal;color:var(--gold-bright);font-weight:800;font-size:.85rem;display:inline-flex;align-items:center;gap:7px}

/* ===== FAQ ===== */
.faq-list{display:grid;gap:12px;max-width:900px}
.faq-item{border:1px solid rgba(255,255,255,.09);border-radius:var(--radius);background:rgba(255,255,255,.028);overflow:hidden}
.faq-item summary{list-style:none;cursor:pointer;padding:17px 20px;font-weight:800;font-size:.95rem;display:flex;justify-content:space-between;gap:14px;align-items:center}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary i{color:var(--gold-bright);transition:transform .25s ease}
.faq-item[open] summary i{transform:rotate(45deg)}
.faq-item p{margin:0;padding:0 20px 18px;color:var(--muted);font-size:.9rem;line-height:1.72}

/* ===== CTA ===== */
.cta-band{
  position:relative;overflow:hidden;border-radius:26px;border:1px solid var(--line-strong);
  padding:46px 42px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.6fr);gap:30px;align-items:center;
  background:linear-gradient(120deg,rgba(6,46,32,.96),rgba(2,19,13,.92));
  box-shadow:0 30px 80px rgba(0,0,0,.4);
}
.cta-band h2{margin:10px 0 12px;font-size:clamp(1.5rem,2.8vw,2.2rem);line-height:1.2}
.cta-band p{margin:0;color:#cfe3d8;font-size:.94rem;max-width:620px}
.cta-actions{display:flex;flex-direction:column;gap:12px}
.cta-actions .btn{width:100%}
.cta-mini{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.cta-mini span{font-size:.74rem;font-weight:800;padding:6px 11px;border-radius:999px;border:1px solid var(--line);color:var(--leaf-soft);background:rgba(16,185,129,.09)}

/* ===== Footer ===== */
.site-footer{border-top:1px solid rgba(252,211,77,.18);background:linear-gradient(180deg,rgba(2,19,13,.35),rgba(2,19,13,.96));padding:56px 0 26px;position:relative;z-index:1;margin-top:20px}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px;padding-bottom:34px;border-bottom:1px solid rgba(255,255,255,.08)}
.footer-brand p{color:var(--muted);font-size:.88rem;margin:14px 0 0;max-width:340px;line-height:1.7}
.footer-col h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.09em;color:var(--gold-bright);margin:0 0 14px}
.footer-col a{display:block;color:#cfe3d8;font-size:.87rem;padding:5px 0;transition:.2s}
.footer-col a:hover{color:var(--gold-bright);transform:translateX(3px)}
.footer-bottom{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-top:20px;color:var(--muted);font-size:.79rem}

/* ===== FAB ===== */
.fab{
  position:fixed;left:16px;bottom:96px;z-index:50;width:56px;height:56px;border-radius:50%;
  display:grid;place-items:center;font-size:1.15rem;color:#ffe9b0;
  background:radial-gradient(circle at 32% 28%,#0b4430,#02130d 72%);
  border:2px solid var(--gold);
  box-shadow:0 6px 25px rgba(245,158,11,.35);
  opacity:.82;transition:transform .25s ease,opacity .25s ease,box-shadow .25s ease;
  animation:fabFloat 3.6s ease-in-out infinite;
}
.fab:hover{transform:scale(1.1);opacity:1;box-shadow:0 10px 34px rgba(245,158,11,.5)}
.fab:hover i{transform:rotate(360deg)}
.fab i{transition:transform .55s cubic-bezier(.2,.8,.3,1)}
.fab:active{transform:translateY(2px) scale(.96)}
.fab-dot{position:absolute;top:2px;right:2px;width:13px;height:13px;border-radius:50%;background:var(--danger);box-shadow:0 0 0 2px #fff}
@keyframes fabFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}

/* ===== Responsive ===== */
@media (max-width:1024px){
  .main-nav{display:none}
  .nav-actions{display:none}
  .menu-toggle{display:grid;place-items:center;margin-left:auto}
  .mobile-menu{display:none;padding:14px 0 20px;border-top:1px solid rgba(255,255,255,.08)}
  .mobile-menu.is-open{display:block}
  .mobile-menu a{display:block;padding:11px 12px;border-radius:12px;color:#d7e9df;font-weight:700;font-size:.9rem}
  .mobile-menu a.active,.mobile-menu a:hover{color:var(--gold-bright);background:rgba(245,158,11,.1)}
  .mobile-actions{display:flex;gap:10px;margin-top:14px}
  .mobile-actions .btn{flex:1}
  .article-hero-grid{grid-template-columns:1fr}
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .insight-grid,.cat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .window-row{grid-template-columns:130px minmax(0,1fr) 110px}
  .window-row .col-hide{display:none}
  .section-head{grid-template-columns:1fr;gap:14px}
  .cta-band{grid-template-columns:1fr;padding:36px 28px}
  .footer-grid{grid-template-columns:1fr 1fr;gap:26px}
}
@media (max-width:768px){
  .section{padding:58px 0}
  .section-tight{padding:44px 0}
  .article-hero{padding-top:104px}
  .article-shell{padding:26px}
  .check-split{grid-template-columns:1fr}
  .window-row{grid-template-columns:110px minmax(0,1fr);row-gap:8px}
  .window-row .pill{grid-column:1 / -1}
}
@media (max-width:520px){
  .container{width:calc(100% - 24px)}
  .logo{min-width:auto}
  .logo-copy small{display:none}
  .stat-grid,.insight-grid,.cat-grid{grid-template-columns:1fr}
  .article-shell{padding:20px}
  .footer-grid{grid-template-columns:1fr}
  .cta-band{padding:28px 20px}
  .fab{width:52px;height:52px;bottom:84px}
  .article-meta span{font-size:.74rem}
}

/* roulang page: category2 */
:root{
  --bg:#031a12;
  --bg-soft:#062e20;
  --bg-deep:#02130d;
  --panel:rgba(6,46,32,.82);
  --panel-solid:#083625;
  --panel-light:#0b4430;
  --gold:#f59e0b;
  --gold-bright:#fcd34d;
  --leaf:#10b981;
  --leaf-soft:#a7f3d0;
  --cream:#f0fdf4;
  --sand:#fef3c7;
  --muted:#a7bfb2;
  --line:rgba(252,211,77,.18);
  --line-strong:rgba(252,211,77,.38);
  --danger:#ef4444;
  --radius-sm:10px;
  --radius:16px;
  --radius-lg:24px;
  --shadow:0 20px 60px rgba(0,0,0,.35);
  --shadow-gold:0 12px 36px rgba(245,158,11,.22);
  --container:1180px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg-deep);-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:Inter,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  color:var(--cream);
  background:
    radial-gradient(circle at 12% -10%,rgba(16,185,129,.2),transparent 28rem),
    radial-gradient(circle at 88% 8%,rgba(245,158,11,.12),transparent 24rem),
    linear-gradient(180deg,var(--bg-deep),var(--bg) 45%,#03130e 100%);
  line-height:1.65;
  min-height:100vh;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.24;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:42px 42px;
  -webkit-mask-image:linear-gradient(to bottom,black,transparent 82%);
  mask-image:linear-gradient(to bottom,black,transparent 82%);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select{font:inherit}
button{cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold-bright);outline-offset:3px}
.container{width:min(var(--container),calc(100% - 32px));margin-inline:auto}
.section{padding:76px 0;position:relative}
.section-tight{padding:54px 0}
.section-divider{border-top:1px solid rgba(255,255,255,.07)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--gold-bright);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.eyebrow::before{content:"";width:22px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.section-head{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:32px;align-items:end;margin-bottom:34px}
.section-head h2{font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.16;margin:8px 0 0;letter-spacing:-.02em}
.section-head p{margin:0;color:var(--muted);line-height:1.7}
.lead{color:#d1e5da;line-height:1.72;max-width:820px}
.text-gold{color:var(--gold-bright)}
.text-muted{color:var(--muted)}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:46px;padding:0 18px;border-radius:999px;border:1px solid transparent;
  font-weight:800;font-size:.92rem;
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease,color .22s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0) scale(.98)}
.btn-primary{background:linear-gradient(135deg,var(--gold-bright),var(--gold));color:#17200e;box-shadow:var(--shadow-gold)}
.btn-primary:hover{box-shadow:0 16px 42px rgba(245,158,11,.36)}
.btn-ghost{border-color:var(--line-strong);color:var(--cream);background:rgba(255,255,255,.035)}
.btn-ghost:hover{background:rgba(245,158,11,.08);border-color:var(--gold)}
.btn-text{color:var(--gold-bright);border:1px solid transparent;background:transparent;min-height:40px}
.btn-text:hover{background:rgba(245,158,11,.1)}
.badge{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.26);color:var(--leaf-soft);font-size:.75rem;font-weight:800}
.gold-badge{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.28);color:var(--gold-bright)}

/* ---------- header ---------- */
.site-header{
  position:fixed;top:0;left:0;right:0;z-index:60;
  background:rgba(2,19,13,.86);
  -webkit-backdrop-filter:blur(18px);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(252,211,77,.22);
}
.nav-wrap{height:72px;display:flex;align-items:center;gap:18px}
.logo{display:flex;align-items:center;gap:11px;min-width:188px}
.logo-mark{width:42px;height:42px;flex:0 0 auto;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--gold-bright),var(--gold));color:#102012;box-shadow:0 10px 28px rgba(245,158,11,.28);font-size:1.2rem}
.logo-copy strong{display:block;line-height:1.05;font-size:.93rem}
.logo-copy small{display:block;color:var(--muted);font-size:.66rem;margin-top:3px}
.main-nav{display:flex;align-items:center;gap:4px;margin-left:auto}
.main-nav a{padding:9px 11px;color:#d7e9df;border-radius:999px;font-size:.84rem;font-weight:700;transition:color .2s,background .2s;white-space:nowrap}
.main-nav a:hover,.main-nav a.active{color:var(--gold-bright);background:rgba(245,158,11,.1)}
.nav-actions{display:flex;gap:8px;align-items:center}
.nav-actions .btn{min-height:40px;padding-inline:14px;font-size:.82rem}
.menu-toggle{display:none;width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--cream);align-items:center;justify-content:center}
.mobile-menu{display:none;flex-direction:column;gap:2px;padding:10px 0 16px;border-top:1px solid rgba(255,255,255,.08)}
.mobile-menu.open{display:flex}
.mobile-menu a{padding:11px 12px;border-radius:12px;font-weight:700;color:#d7e9df}
.mobile-menu a.active{color:var(--gold-bright);background:rgba(245,158,11,.1)}

/* ---------- hero ---------- */
.hero{padding:118px 0 46px}
.hero-shell{position:relative;overflow:hidden;border-radius:30px;border:1px solid var(--line-strong);box-shadow:0 34px 100px rgba(0,0,0,.47)}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.24}
.hero-shell::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(1,14,9,.97) 0%,rgba(2,22,15,.9) 50%,rgba(3,26,18,.6) 100%)}
.hero-inner{position:relative;z-index:2;padding:44px 48px 40px;display:grid;grid-template-columns:minmax(0,1.32fr) minmax(288px,.68fr);gap:38px;align-items:start}
.hero h1{font-size:clamp(1.95rem,4.5vw,3.45rem);line-height:1.07;letter-spacing:-.035em;margin:14px 0 16px;max-width:820px}
.hero p{margin:0 0 22px;color:#d1e5da;font-size:1rem;max-width:720px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.slot-bar{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
.slot-bar a{padding:7px 13px;border-radius:999px;border:1px solid rgba(252,211,77,.28);background:rgba(2,19,13,.55);font-size:.78rem;font-weight:700;color:var(--sand);transition:background .2s,border-color .2s,transform .2s}
.slot-bar a:hover{background:rgba(245,158,11,.18);border-color:var(--gold);transform:translateY(-2px)}
.signal-panel{background:rgba(3,26,18,.74);border:1px solid var(--line-strong);border-radius:var(--radius-lg);padding:20px 22px;box-shadow:var(--shadow)}
.signal-panel h2{font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-bright);margin:0 0 8px}
.signal-row{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-top:1px solid rgba(255,255,255,.08);font-size:.85rem}
.signal-row:first-of-type{border-top:0}
.signal-row span:last-child{color:var(--gold-bright);font-weight:800;text-align:right}
.signal-note{margin:14px 0 0;font-size:.8rem;color:var(--muted)}

/* ---------- stats ---------- */
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.stat-card{padding:22px;border-radius:var(--radius);background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.015));border:1px solid rgba(255,255,255,.09);transition:transform .25s,border-color .25s,box-shadow .25s}
.stat-card:hover{transform:translateY(-4px);border-color:var(--line-strong);box-shadow:var(--shadow-gold)}
.stat-card strong{display:block;font-size:clamp(1.55rem,2.8vw,2.15rem);line-height:1;color:var(--gold-bright);margin-bottom:9px}
.stat-card span{display:block;font-size:.85rem;color:var(--muted)}

/* ---------- matrix ---------- */
.matrix-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.matrix-card{padding:24px;border-radius:var(--radius-lg);background:linear-gradient(165deg,rgba(16,185,129,.1),rgba(255,255,255,.015));border:1px solid rgba(255,255,255,.09);transition:transform .25s,border-color .25s,box-shadow .25s}
.matrix-card:hover{transform:translateY(-5px);border-color:var(--line-strong);box-shadow:var(--shadow-gold)}
.matrix-card h3{margin:14px 0 8px;font-size:1.08rem;line-height:1.3}
.matrix-card p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.7}
.matrix-card .badge{margin-bottom:4px}

/* ---------- compare ---------- */
.compare-wrap{overflow-x:auto;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-lg);background:rgba(255,255,255,.02)}
table.compare{width:100%;border-collapse:collapse;min-width:760px}
table.compare th,table.compare td{padding:14px 16px;text-align:left;border-bottom:1px solid rgba(255,255,255,.07);font-size:.87rem}
table.compare thead th{background:rgba(245,158,11,.09);color:var(--gold-bright);font-size:.74rem;text-transform:uppercase;letter-spacing:.07em;font-weight:800}
table.compare tbody tr{transition:background .2s}
table.compare tbody tr:hover{background:rgba(245,158,11,.05)}
table.compare tbody tr:last-child td{border-bottom:0}
table.compare td:first-child{font-weight:800;color:var(--cream);white-space:nowrap}
.pill{display:inline-block;padding:4px 10px;border-radius:999px;font-size:.75rem;font-weight:800}
.pill-high{background:rgba(16,185,129,.15);border:1px solid rgba(16,185,129,.35);color:var(--leaf-soft)}
.pill-mid{background:rgba(245,158,11,.14);border:1px solid rgba(245,158,11,.32);color:var(--gold-bright)}
.pill-low{background:rgba(239,68,68,.13);border:1px solid rgba(239,68,68,.3);color:#fecaca}

/* ---------- timeline ---------- */
.timeline{position:relative;padding-left:32px}
.timeline::before{content:"";position:absolute;left:9px;top:8px;bottom:8px;width:2px;background:linear-gradient(180deg,var(--gold),rgba(16,185,129,.25))}
.timeline-item{position:relative;padding:0 0 26px 18px}
.timeline-item:last-child{padding-bottom:0}
.timeline-item::before{content:"";position:absolute;left:-23px;top:5px;width:14px;height:14px;border-radius:50%;background:var(--bg-deep);border:3px solid var(--gold)}
.timeline-item h3{margin:0 0 6px;font-size:1.02rem}
.timeline-item p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.7}
.timeline-item time{display:inline-block;font-size:.74rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--gold-bright);margin-bottom:5px}

/* ---------- channels ---------- */
.channel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.channel-card{display:flex;flex-direction:column;gap:10px;padding:26px;border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,.1);background:linear-gradient(160deg,rgba(16,185,129,.1),rgba(255,255,255,.015));transition:transform .25s,border-color .25s,box-shadow .25s}
.channel-card:hover{transform:translateY(-5px);border-color:var(--line-strong);box-shadow:var(--shadow-gold)}
.channel-card h3{margin:0;font-size:1.12rem}
.channel-card p{margin:0;color:var(--muted);font-size:.87rem;line-height:1.7}
.channel-card .channel-more{margin-top:auto;padding-top:6px;font-size:.82rem;font-weight:800;color:var(--gold-bright);display:inline-flex;align-items:center;gap:7px}
.channel-card.is-current{border-color:var(--line-strong);background:linear-gradient(160deg,rgba(245,158,11,.14),rgba(255,255,255,.02))}

/* ---------- posts ---------- */
.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.post-card{display:flex;flex-direction:column;border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.025);transition:transform .25s,border-color .25s,box-shadow .25s}
.post-card:hover{transform:translateY(-5px);border-color:var(--line-strong);box-shadow:var(--shadow-gold)}
.post-thumb{display:block;position:relative;overflow:hidden}
.post-thumb img{width:100%;height:186px;object-fit:cover;transition:transform .5s ease}
.post-card:hover .post-thumb img{transform:scale(1.06)}
.post-body{padding:20px 20px 22px;display:flex;flex-direction:column;gap:9px;flex:1}
.post-body h3{margin:0;font-size:1.02rem;line-height:1.36}
.post-body p{margin:0;color:var(--muted);font-size:.85rem;line-height:1.65}
.post-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:.74rem;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:700}
.empty-note{padding:26px;border-radius:var(--radius);border:1px dashed rgba(252,211,77,.3);color:var(--muted);background:rgba(255,255,255,.02);margin:0}

/* ---------- trust ---------- */
.trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.trust-item{padding:22px;border-radius:var(--radius);border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.025)}
.trust-item i{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:rgba(245,158,11,.14);color:var(--gold-bright);font-size:1.05rem;margin-bottom:13px}
.trust-item h3{margin:0 0 7px;font-size:.98rem}
.trust-item p{margin:0;color:var(--muted);font-size:.84rem;line-height:1.65}

/* ---------- faq ---------- */
.faq-list{display:grid;gap:12px;max-width:920px}
.faq-item{border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);background:rgba(255,255,255,.025);overflow:hidden;transition:border-color .2s}
.faq-item[open]{border-color:var(--line-strong)}
.faq-item summary{cursor:pointer;padding:17px 20px;font-weight:700;display:flex;justify-content:space-between;gap:14px;align-items:center;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"\f078";font-family:"Font Awesome 6 Free";font-weight:900;font-size:.75rem;color:var(--gold-bright);transition:transform .25s}
.faq-item[open] summary::after{transform:rotate(180deg)}
.faq-item[open] summary{color:var(--gold-bright)}
.faq-body{padding:0 20px 20px;color:var(--muted);font-size:.88rem;line-height:1.72}

/* ---------- cta ---------- */
.cta-band{border-radius:30px;border:1px solid var(--line-strong);background:radial-gradient(circle at 15% 10%,rgba(245,158,11,.16),transparent 45%),linear-gradient(140deg,rgba(6,46,32,.95),rgba(2,19,13,.95));padding:44px 46px;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);gap:38px;align-items:center;box-shadow:var(--shadow)}
.cta-band h2{margin:10px 0 12px;font-size:clamp(1.6rem,2.8vw,2.3rem);line-height:1.16}
.cta-band p{margin:0 0 16px;color:#cfe3d9}
.cta-points{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.cta-points li{display:flex;gap:10px;align-items:flex-start;font-size:.88rem;color:#d1e5da}
.cta-points i{color:var(--gold-bright);margin-top:4px}
.cta-form{display:grid;gap:13px}
.field label{display:block;font-size:.74rem;font-weight:800;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px}
.field input,.field select{width:100%;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.14);background:rgba(2,19,13,.62);color:var(--cream);font-size:.9rem;transition:border-color .2s,box-shadow .2s}
.field input::placeholder{color:#7e968a}
.field input:focus,.field select:focus{border-color:var(--gold);outline:none;box-shadow:0 0 0 3px rgba(245,158,11,.2)}
.form-note{margin:0;font-size:.8rem;color:var(--gold-bright);min-height:1.2em}

/* ---------- fab ---------- */
.fab-left{position:fixed;left:16px;bottom:96px;z-index:50;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 32% 28%,#1f2a16,#0b1a10 70%);border:2px solid var(--gold);color:var(--gold-bright);box-shadow:0 6px 25px rgba(245,158,11,.35);opacity:.86;transition:opacity .25s;animation:floatY 3.6s ease-in-out infinite;--fab-scale:1}
.fab-left:hover{opacity:1;--fab-scale:1.1}
.fab-left:active{transform:scale(.95) translateY(4px)}
.fab-left i{font-size:1.22rem;transition:transform .55s ease}
.fab-left:hover i{transform:rotate(360deg)}
.fab-dot{position:absolute;top:-2px;right:-2px;width:13px;height:13px;border-radius:50%;background:#dc2626;box-shadow:0 0 0 2px #fff}
@keyframes floatY{0%,100%{transform:translateY(0) scale(var(--fab-scale))}50%{transform:translateY(-5px) scale(var(--fab-scale))}}

/* ---------- footer ---------- */
.site-footer{margin-top:70px;border-top:1px solid var(--line);background:linear-gradient(180deg,rgba(2,13,9,.45),rgba(1,9,6,.92));padding:56px 0 26px}
.footer-grid{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));gap:34px}
.footer-brand .logo{min-width:0}
.footer-brand p{color:var(--muted);font-size:.87rem;margin:14px 0 0;line-height:1.7;max-width:340px}
.footer-col h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;color:var(--gold-bright);margin:0 0 14px}
.footer-col a{display:block;color:#bcd3c7;font-size:.86rem;padding:5px 0;transition:color .2s,transform .2s}
.footer-col a:hover{color:var(--gold-bright);transform:translateX(3px)}
.footer-bottom{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:38px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08);color:var(--muted);font-size:.8rem}

/* ---------- responsive ---------- */
@media (max-width:1024px){
  .section{padding:62px 0}
  .hero-inner{grid-template-columns:1fr;gap:26px;padding:38px 32px 34px}
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .matrix-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .channel-grid,.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cta-band{grid-template-columns:1fr;padding:34px 30px;gap:26px}
  .section-head{grid-template-columns:1fr;gap:14px;align-items:start}
}
@media (max-width:980px){
  .main-nav{display:none}
  .menu-toggle{display:flex}
  .nav-actions{margin-left:auto}
}
@media (max-width:640px){
  .nav-wrap{height:64px;gap:10px}
  .logo{min-width:0}
  .logo-copy small{display:none}
  .nav-actions .btn{padding-inline:11px;font-size:.76rem;min-height:38px}
  .hero{padding:92px 0 30px}
  .hero-inner{padding:26px 20px 26px}
  .hero-shell{border-radius:22px}
  .stat-grid,.matrix-grid,.channel-grid,.post-grid,.trust-grid,.footer-grid{grid-template-columns:1fr}
  .section{padding:48px 0}
  .footer-bottom{flex-direction:column}
  .timeline{padding-left:26px}
  .fab-left{left:12px;bottom:84px;width:52px;height:52px}
}

/* roulang page: category3 */
:root{
  --bg:#031a12;
  --bg-soft:#062e20;
  --bg-deep:#02130d;
  --panel:rgba(6,46,32,.82);
  --panel-solid:#083625;
  --panel-light:#0b4430;
  --gold:#f59e0b;
  --gold-bright:#fcd34d;
  --leaf:#10b981;
  --leaf-soft:#a7f3d0;
  --cream:#f0fdf4;
  --sand:#fef3c7;
  --muted:#a7bfb2;
  --line:rgba(252,211,77,.18);
  --line-strong:rgba(252,211,77,.38);
  --danger:#ef4444;
  --radius-sm:10px;
  --radius:16px;
  --radius-lg:24px;
  --shadow:0 20px 60px rgba(0,0,0,.35);
  --shadow-gold:0 12px 36px rgba(245,158,11,.22);
  --container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg-deep)}
body{
  margin:0;
  font-family:Inter,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  color:var(--cream);
  background:
    radial-gradient(circle at 12% -10%,rgba(16,185,129,.2),transparent 28rem),
    radial-gradient(circle at 88% 8%,rgba(245,158,11,.12),transparent 24rem),
    linear-gradient(180deg,var(--bg-deep),var(--bg) 45%,#03130e 100%);
  line-height:1.65;
  min-height:100vh;
  overflow-x:hidden;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.24;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:42px 42px;
  -webkit-mask-image:linear-gradient(to bottom,black,transparent 82%);
  mask-image:linear-gradient(to bottom,black,transparent 82%);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--gold-bright);outline-offset:3px}
::selection{background:rgba(245,158,11,.35);color:var(--cream)}
.container{width:min(var(--container),calc(100% - 32px));margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.section{padding:76px 0;position:relative}
.section-tight{padding:54px 0}
.section-divider{border-top:1px solid rgba(255,255,255,.07)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--gold-bright);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.eyebrow::before{content:"";width:22px;height:1px;background:linear-gradient(90deg,transparent,var(--gold))}
.section-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:32px;align-items:end;margin-bottom:34px}
.section-head h2{font-size:clamp(1.7rem,3vw,2.7rem);line-height:1.16;margin:8px 0 0;letter-spacing:-.02em}
.section-head p{margin:0;color:var(--muted);line-height:1.7}
.text-gold{color:var(--gold-bright)}
.text-muted{color:var(--muted)}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:46px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid transparent;
  font-weight:800;
  font-size:.92rem;
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease,color .22s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0) scale(.98)}
.btn-primary{background:linear-gradient(135deg,var(--gold-bright),var(--gold));color:#17200e;box-shadow:var(--shadow-gold)}
.btn-primary:hover{box-shadow:0 16px 42px rgba(245,158,11,.36)}
.btn-ghost{border-color:var(--line-strong);color:var(--cream);background:rgba(255,255,255,.035)}
.btn-ghost:hover{background:rgba(245,158,11,.08);border-color:var(--gold)}
.btn-link{color:var(--gold-bright);padding-inline:4px;min-height:auto}
.badge{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.26);color:var(--leaf-soft);font-size:.75rem;font-weight:800}
.gold-badge{background:rgba(245,158,11,.12);border-color:rgba(245,158,11,.28);color:var(--gold-bright)}
.site-header{
  position:fixed;
  top:0;
  left:0;
  right:0;
  z-index:60;
  background:rgba(2,19,13,.88);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(252,211,77,.22);
}
.nav-wrap{height:72px;display:flex;align-items:center;gap:18px}
.logo{display:flex;align-items:center;gap:11px;min-width:188px}
.logo-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--gold-bright),var(--gold));color:#102012;box-shadow:0 10px 28px rgba(245,158,11,.28);font-size:1.2rem;flex:0 0 auto}
.logo-copy strong{display:block;line-height:1.05;font-size:.93rem}
.logo-copy small{display:block;color:var(--muted);font-size:.66rem;margin-top:3px}
.main-nav{display:flex;align-items:center;gap:4px;margin-left:auto}
.main-nav a{padding:9px 11px;color:#d7e9df;border-radius:999px;font-size:.84rem;font-weight:700;transition:.2s;white-space:nowrap}
.main-nav a:hover,.main-nav a.active{color:var(--gold-bright);background:rgba(245,158,11,.1)}
.nav-actions{display:flex;gap:8px;align-items:center}
.nav-actions .btn{min-height:40px;padding-inline:14px;font-size:.82rem}
.menu-toggle{display:none;width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--cream);flex:0 0 auto}
.hero-category{padding-top:122px;padding-bottom:56px}
.hero-shell{
  position:relative;
  overflow:hidden;
  border-radius:30px;
  border:1px solid var(--line-strong);
  box-shadow:0 34px 100px rgba(0,0,0,.47);
  background:var(--panel-solid);
}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.19}
.hero-shell::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(1,14,9,.88),rgba(2,22,15,.94) 60%,rgba(3,26,18,.98))}
.hero-inner{position:relative;z-index:2;padding:62px 48px 48px;max-width:960px;margin-inline:auto;text-align:center}
.hero-inner h1{font-size:clamp(2rem,5.4vw,4.55rem);line-height:1.06;letter-spacing:-.045em;margin:17px 0 18px;text-wrap:balance}
.hero-copy{color:#d1e5da;font-size:1.03rem;line-height:1.72;max-width:790px;margin:0 auto 24px}
.hero-search{max-width:760px;margin:0 auto 16px;display:flex;gap:10px;padding:8px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);box-shadow:0 16px 45px rgba(0,0,0,.28)}
.hero-search input{flex:1;min-width:0;border:0;background:transparent;color:var(--cream);padding:0 14px;min-height:44px}
.hero-search input::placeholder{color:#94b3a3}
.hero-search button{border:0}
.hero-chips{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}
.hero-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:999px;background:rgba(3,26,18,.7);border:1px solid rgba(252,211,77,.2);color:#d9ece1;font-size:.79rem;font-weight:700;transition:.22s}
.hero-chip:hover{color:var(--gold-bright);border-color:var(--gold);transform:translateY(-2px)}
.metric-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px}
.metric{position:relative;padding:20px;border-radius:var(--radius);background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.025));border:1px solid rgba(255,255,255,.1);text-align:left;overflow:hidden}
.metric::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(var(--gold-bright),var(--leaf))}
.metric-label{display:block;color:var(--muted);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.metric strong{display:block;color:var(--gold-bright);font-size:clamp(1.5rem,2.6vw,2.25rem);line-height:1.15;margin:8px 0 4px}
.metric p{margin:0;color:#c8dbd1;font-size:.84rem}
.split-layout{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:34px;align-items:start}
.editorial-panel{padding:28px;border-radius:var(--radius-lg);background:linear-gradient(145deg,rgba(245,158,11,.12),rgba(16,185,129,.07));border:1px solid var(--line-strong);box-shadow:var(--shadow)}
.editorial-panel h3{font-size:1.55rem;line-height:1.25;margin:10px 0 14px}
.editorial-panel p{color:#cfe1d7;margin:0 0 18px}
.mini-proof{display:grid;gap:10px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1)}
.mini-proof span{display:flex;justify-content:space-between;gap:12px;color:#d9ece1;font-size:.88rem}
.mini-proof strong{color:var(--gold-bright)}
.playbook-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.playbook-item{padding:20px;border-radius:var(--radius);background:var(--panel);border:1px solid rgba(255,255,255,.08);transition:.22s}
.playbook-item:hover{transform:translateY(-4px);border-color:var(--line-strong);box-shadow:var(--shadow-gold)}
.playbook-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:rgba(16,185,129,.12);color:var(--leaf-soft);border:1px solid rgba(16,185,129,.24);margin-bottom:13px}
.playbook-item h3{font-size:1rem;margin:0 0 7px;line-height:1.35}
.playbook-item p{margin:0;color:var(--muted);font-size:.86rem}
.compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.compare-panel{border-radius:var(--radius-lg);padding:28px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035)}
.compare-panel.good{border-color:rgba(16,185,129,.34);background:linear-gradient(145deg,rgba(16,185,129,.12),rgba(6,46,32,.74))}
.compare-panel.risk{border-color:rgba(239,68,68,.28);background:linear-gradient(145deg,rgba(239,68,68,.1),rgba(6,46,32,.78))}
.compare-title{display:flex;align-items:center;gap:11px;margin-bottom:16px}
.compare-title i{width:38px;height:38px;border-radius:12px;display:grid;place-items:center}
.compare-panel.good .compare-title i{background:rgba(16,185,129,.15);color:var(--leaf-soft)}
.compare-panel.risk .compare-title i{background:rgba(239,68,68,.14);color:#fecaca}
.compare-title h3{margin:0;font-size:1.25rem}
.compare-list{list-style:none;padding:0;margin:0;display:grid;gap:11px}
.compare-list li{display:flex;gap:10px;color:#d4e6dc;font-size:.91rem}
.compare-list i{margin-top:5px;color:var(--gold-bright)}
.compare-visual{margin-top:22px;border-radius:var(--radius);overflow:hidden;border:1px solid rgba(255,255,255,.1)}
.compare-visual img{width:100%;height:210px;object-fit:cover}
.timeline{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:12px}
.timeline::before{content:"";position:absolute;left:4%;right:4%;top:22px;height:1px;background:linear-gradient(90deg,var(--leaf),var(--gold),var(--leaf));opacity:.45}
.milestone{position:relative;padding-top:54px}
.milestone-index{position:absolute;top:0;left:0;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--panel-solid);border:1px solid var(--line-strong);color:var(--gold-bright);font-weight:900;box-shadow:0 0 0 8px rgba(3,26,18,.92)}
.milestone h3{margin:0 0 7px;font-size:1rem}
.milestone p{margin:0;color:var(--muted);font-size:.86rem}
.allocation-layout{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:34px;align-items:center}
.allocation-copy h2{font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.18;margin:10px 0 16px}
.allocation-copy p{color:var(--muted);margin:0 0 18px}
.allocation-stack{display:grid;gap:14px}
.allocation-row{display:grid;grid-template-columns:120px 1fr 72px;align-items:center;gap:14px;padding:16px 18px;border-radius:var(--radius);background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}
.allocation-row strong{font-size:.88rem}
.bar{height:10px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}
.bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--leaf),var(--gold-bright))}
.allocation-row b{text-align:right;color:var(--gold-bright)}
.trust-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:var(--line)}
.trust-item{background:#06291c;padding:24px 20px;min-height:150px}
.trust-item i{color:var(--gold-bright);font-size:1.25rem;margin-bottom:12px}
.trust-item h3{font-size:.96rem;margin:0 0 7px}
.trust-item p{font-size:.82rem;color:var(--muted);margin:0}
.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.quick-item{padding:22px 20px;border-left:2px solid var(--gold);background:linear-gradient(90deg,rgba(245,158,11,.08),transparent);min-height:128px}
.quick-item span{display:block;color:var(--muted);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.quick-item strong{font-size:1.18rem;line-height:1.3;display:block}
.faq-layout{display:grid;grid-template-columns:minmax(260px,.62fr) minmax(0,1.38fr);gap:34px;align-items:start}
.faq-intro{position:sticky;top:104px}
.faq-intro h2{font-size:clamp(1.7rem,3vw,2.55rem);line-height:1.16;margin:10px 0 14px}
.faq-intro p{color:var(--muted);margin:0}
.faq-list{display:grid;gap:12px}
.faq-list details{border-radius:var(--radius);background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);overflow:hidden}
.faq-list details[open]{border-color:var(--line-strong);background:rgba(245,158,11,.055)}
.faq-list summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:19px 20px;font-weight:800;cursor:pointer}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary i{color:var(--gold-bright);transition:transform .2s}
.faq-list details[open] summary i{transform:rotate(45deg)}
.faq-answer{padding:0 20px 20px;color:var(--muted);font-size:.91rem}
.cta-section{padding:40px 0 84px}
.cta-shell{position:relative;overflow:hidden;border-radius:30px;border:1px solid var(--line-strong);background:linear-gradient(135deg,rgba(245,158,11,.14),rgba(16,185,129,.1)),var(--panel-solid);padding:42px;box-shadow:var(--shadow)}
.cta-shell::after{content:"";position:absolute;right:-70px;top:-90px;width:260px;height:260px;border-radius:50%;background:rgba(245,158,11,.12);filter:blur(4px)}
.cta-layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.78fr);gap:34px;align-items:center}
.cta-copy h2{font-size:clamp(1.8rem,3.3vw,2.8rem);line-height:1.15;margin:10px 0 14px}
.cta-copy p{color:#d3e4da;margin:0 0 20px}
.convert-form{display:grid;gap:12px;padding:22px;border-radius:var(--radius-lg);background:rgba(2,19,13,.72);border:1px solid rgba(255,255,255,.1)}
.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.field{display:grid;gap:6px}
.field label{font-size:.78rem;color:#c8dbd1;font-weight:800}
.field input,.field select{width:100%;min-height:48px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);color:var(--cream);padding:0 13px}
.field select option{background:#062e20;color:var(--cream)}
.form-consent{display:flex;align-items:flex-start;gap:9px;color:var(--muted);font-size:.78rem}
.form-consent input{margin-top:4px}
.form-status{min-height:20px;color:var(--leaf-soft);font-size:.8rem;margin:0}
.site-footer{border-top:1px solid var(--line);background:rgba(2,15,10,.9);padding:54px 0 28px}
.footer-grid{display:grid;grid-template-columns:minmax(280px,1.4fr) repeat(3,minmax(150px,.6fr));gap:30px}
.footer-brand p{color:var(--muted);font-size:.88rem;max-width:430px;margin:16px 0 0}
.footer-col h3{font-size:.84rem;color:var(--gold-bright);text-transform:uppercase;letter-spacing:.08em;margin:0 0 14px}
.footer-col a{display:block;color:var(--muted);font-size:.86rem;margin:8px 0;transition:.2s}
.footer-col a:hover{color:var(--cream);transform:translateX(3px)}
.footer-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding-top:24px;margin-top:34px;border-top:1px solid rgba(255,255,255,.08);color:#8eaa9b;font-size:.77rem}
.fab{
  position:fixed;
  left:16px;
  bottom:96px;
  z-index:50;
  width:58px;
  height:58px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#142010;
  background:radial-gradient(circle at 35% 28%,#fff2b3,var(--gold-bright) 24%,var(--gold) 68%,#b45309);
  border:2px solid #f59e0b;
  box-shadow:0 6px 25px rgba(245,158,11,.35);
  opacity:.84;
  transition:transform .24s ease,opacity .24s ease,box-shadow .24s ease;
  animation:fabFloat 2.8s ease-in-out infinite;
}
.fab:hover{opacity:1;transform:scale(1.1);box-shadow:0 10px 36px rgba(245,158,11,.48);animation-play-state:paused}
.fab:active{transform:scale(.95) translateY(4px)}
.fab i{transition:transform .45s ease}
.fab:hover i{transform:rotate(360deg)}
.fab-dot{position:absolute;right:1px;top:1px;width:14px;height:14px;border-radius:50%;background:#dc2626;border:2px solid #fff}
@keyframes fabFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
@media (max-width:1100px){
  .nav-wrap{gap:10px}
  .logo{min-width:170px}
  .main-nav a{padding-inline:8px;font-size:.78rem}
  .nav-actions .btn{padding-inline:11px}
}
@media (max-width:1024px){
  .menu-toggle{display:grid;place-items:center;margin-left:auto}
  .main-nav{
    display:none;
    position:absolute;
    top:72px;
    left:16px;
    right:16px;
    padding:12px;
    border-radius:18px;
    background:rgba(2,19,13,.98);
    border:1px solid var(--line-strong);
    box-shadow:var(--shadow);
    flex-direction:column;
    align-items:stretch;
    gap:4px;
  }
  .main-nav.is-open{display:flex}
  .main-nav a{padding:12px 14px}
  .split-layout,.allocation-layout,.faq-layout,.cta-layout{grid-template-columns:1fr}
  .faq-intro{position:static}
  .metric-board,.trust-strip,.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
  .timeline::before{display:none}
}
@media (max-width:768px){
  .section{padding:60px 0}
  .hero-category{padding-top:108px}
  .hero-inner{padding:46px 24px 36px}
  .hero-search{border-radius:18px;flex-direction:column;padding:10px}
  .hero-search input{width:100%;text-align:center}
  .section-head{grid-template-columns:1fr;gap:14px}
  .playbook-grid,.compare-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .cta-shell{padding:28px 22px}
  .allocation-row{grid-template-columns:90px 1fr 58px;gap:10px}
}
@media (max-width:620px){
  .container{width:min(100% - 24px,var(--container))}
  .nav-wrap{height:66px}
  .logo{min-width:0;gap:8px}
  .logo-mark{width:38px;height:38px;border-radius:12px}
  .logo-copy strong{font-size:.76rem;max-width:88px}
  .logo-copy small{display:none}
  .nav-actions{gap:5px}
  .nav-actions .btn{min-height:36px;padding-inline:9px;font-size:.72rem}
  .main-nav{top:66px}
  .hero-category{padding-top:98px}
  .hero-inner h1{font-size:clamp(1.8rem,9.5vw,2.7rem)}
  .metric-board,.trust-strip,.quick-grid,.timeline{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .footer-bottom{display:grid}
  .allocation-row{grid-template-columns:1fr 54px}
  .allocation-row .bar{grid-column:1/-1}
  .fab{left:12px;bottom:86px;width:54px;height:54px}
}
@media (max-width:420px){
  .nav-actions .btn span{display:none}
  .nav-actions .btn{width:38px;padding:0}
  .logo-copy{display:none}
}
