*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --gold:#B8972A;--gl:#D4B96A;--dark:#0A0A08;--d2:#141410;--d3:#1E1E18;
  --cream:#FAF6EE;--muted:#8A8575;--border:rgba(184,151,42,0.25);
  --fd:'Playfair Display',Georgia,'Times New Roman',serif;
  --fb:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
html{scroll-behavior:smooth}
body{font-family:var(--fb);background:var(--dark);color:var(--cream);overflow-x:hidden;font-size:15px;line-height:1.6}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1.25rem 3rem;background:rgba(10,10,8,0.93);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}
.logo{font-family:var(--fd);font-size:1.6rem;font-weight:600;letter-spacing:0.12em;color:var(--gl);text-decoration:none}
.logo span{color:var(--cream);font-weight:400}
.nav-links{display:flex;gap:2.5rem;align-items:center}
.nav-links a{color:var(--muted);text-decoration:none;font-size:12px;letter-spacing:0.1em;text-transform:uppercase;transition:color .2s;font-weight:400}
.nav-links a:hover{color:var(--gl)}
.btn-nav{padding:.5rem 1.5rem;border:1px solid var(--gold);background:transparent;color:var(--gl);font-family:var(--fb);font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .2s;border-radius:2px}
.btn-nav:hover{background:var(--gold);color:var(--dark)}
.btn-p{padding:.85rem 2.5rem;background:var(--gold);color:var(--dark);border:none;cursor:pointer;font-family:var(--fb);font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;border-radius:2px;transition:all .2s;display:inline-block}
.btn-p:hover{background:var(--gl);transform:translateY(-1px)}
.btn-p.sm{font-size:11px;padding:.5rem 1.25rem}
.btn-o{padding:.85rem 2.5rem;border:1px solid var(--border);background:transparent;color:var(--cream);cursor:pointer;font-family:var(--fb);font-size:12px;letter-spacing:.1em;text-transform:uppercase;border-radius:2px;transition:all .2s}
.btn-o:hover{border-color:var(--gold);color:var(--gl)}

/* HAMBURGER */
.hbg{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:4px;background:none;border:none}
.hbg span{width:22px;height:1.5px;background:var(--cream);transition:all .3s;display:block}
.hbg.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.hbg.open span:nth-child(2){opacity:0}
.hbg.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.mmenu{display:none;position:fixed;top:66px;left:0;right:0;z-index:99;background:rgba(10,10,8,0.98);border-bottom:1px solid var(--border);padding:1.5rem 2rem;flex-direction:column;gap:1rem}
.mmenu.open{display:flex}
.mmenu a{color:var(--muted);text-decoration:none;font-size:13px;letter-spacing:.08em;text-transform:uppercase;padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}
.mmenu a:hover{color:var(--gl)}
.mbtns{display:flex;gap:.75rem;margin-top:.5rem}
.mbtns button{flex:1}

/* HERO */
.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:8rem 2rem 5rem;position:relative;overflow:hidden}
.hbg2{position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at 50% 40%,rgba(184,151,42,.08) 0%,transparent 70%),radial-gradient(ellipse 30% 30% at 20% 70%,rgba(184,151,42,.05) 0%,transparent 60%)}
.hline{position:absolute;width:1px;background:linear-gradient(to bottom,transparent,var(--gold),transparent);top:0;bottom:0;opacity:.12}
.hline:nth-child(1){left:20%}.hline:nth-child(2){left:50%}.hline:nth-child(3){right:20%}
.hcont{position:relative;max-width:820px}
.htag{display:inline-block;border:1px solid var(--border);color:var(--gold);font-size:10px;letter-spacing:.22em;text-transform:uppercase;padding:.4rem 1.5rem;margin-bottom:2.5rem;border-radius:2px}
.hero h1{font-family:var(--fd);font-size:clamp(2.8rem,6vw,5rem);font-weight:400;line-height:1.1;margin-bottom:1.5rem;color:var(--cream)}
.hero h1 em{font-style:italic;color:var(--gl)}
.hero p{font-size:1rem;color:var(--muted);max-width:560px;margin:0 auto 3rem;line-height:1.8;font-weight:300}
.hero p strong{color:var(--gl);font-weight:500}
.hcta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

/* STATS */
.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--d2)}
.si{padding:2.5rem 2rem;text-align:center;border-right:1px solid var(--border)}
.si:last-child{border-right:none}
.snum{font-family:var(--fd);font-size:3rem;font-weight:400;color:var(--gl);line-height:1;margin-bottom:.5rem}
.slbl{font-size:11px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase}

/* LIVE STATS */
.livestats{background:var(--d2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:3rem 3rem 2rem;position:relative;overflow:hidden}
.livestats::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(to right,transparent,var(--gold),transparent);opacity:.4}
.ls-hdr{max-width:1100px;margin:0 auto 2.5rem;display:flex;align-items:center;gap:1rem}
.ls-pulse{width:10px;height:10px;background:#6CC079;border-radius:50%;position:relative;flex-shrink:0;animation:p1 2s ease infinite;box-shadow:0 0 8px rgba(108,192,121,.5)}
.ls-pulse::before{content:'';position:absolute;inset:-6px;border-radius:50%;border:1px solid #6CC079;opacity:.5;animation:p2 2s ease infinite}
@keyframes p1{0%,100%{opacity:1}50%{opacity:.6}}
@keyframes p2{0%{transform:scale(.8);opacity:.7}100%{transform:scale(2);opacity:0}}
.ls-sub{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#6CC079;margin-bottom:.2rem;font-weight:500}
.ls-tt{font-family:var(--fd);font-size:1.2rem;font-weight:400;color:var(--cream);font-style:italic}
.ls-tt span{color:var(--gl);font-style:normal}
.ls-grid{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--border);border-radius:2px;background:var(--dark)}
.ls-it{padding:1.4rem 1.1rem;border-right:1px solid var(--border);border-bottom:1px solid var(--border);position:relative}
.ls-it:nth-child(4n){border-right:none}
.ls-it:nth-last-child(-n+4){border-bottom:none}
.ls-it::before{content:'';position:absolute;top:1.15rem;left:1.1rem;width:4px;height:4px;background:var(--gold);border-radius:50%;animation:p1 2s ease infinite}
.ls-num{font-family:var(--fd);font-size:1.55rem;font-weight:400;color:var(--gl);line-height:1;margin:1.1rem 0 .4rem;letter-spacing:-.01em}
.ls-num span{font-size:.85rem;color:var(--muted);font-family:var(--fb);font-weight:300;margin-left:.2rem}
.ls-num .up{color:#6CC079;font-size:.65rem;font-family:var(--fb);font-weight:500;margin-left:.4rem;letter-spacing:.05em;vertical-align:middle}
.ls-num .pct{color:#6CC079}
.ls-lbl{font-size:10px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-weight:400;line-height:1.3}
.ls-tk{max-width:1100px;margin:1.5rem auto 0;display:flex;align-items:center;gap:.75rem;font-size:12px;color:var(--muted);font-weight:300;font-family:var(--fb);padding:.75rem 1rem;background:rgba(184,151,42,.04);border-left:2px solid var(--gold);border-radius:0 2px 2px 0;overflow:hidden}
.ls-tk .dot{width:6px;height:6px;background:var(--gl);border-radius:50%;flex-shrink:0;animation:p1 1.5s ease infinite}
.ls-tk-name{color:var(--gl);font-weight:500;letter-spacing:.05em;transition:opacity .25s ease}
.ls-tk-msg{transition:opacity .25s ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* SECTIONS */
section{padding:6rem 3rem}
.stag{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem;font-weight:400}
.stitle{font-family:var(--fd);font-size:clamp(2rem,4vw,3rem);font-weight:400;line-height:1.15;margin-bottom:1.5rem}
.ssub{font-size:.95rem;color:var(--muted);max-width:560px;line-height:1.8;font-weight:300}
.shdr{max-width:1100px;margin:0 auto 4rem}
.shdr.c{text-align:center}
.shdr.c .ssub{margin:0 auto}

/* WHY */
.why{background:var(--d2)}
.wgrid{display:grid;grid-template-columns:1fr 1fr;gap:0;max-width:1100px;margin:0 auto;border:1px solid var(--border)}
.wcard{padding:3rem;border-right:1px solid var(--border);border-bottom:1px solid var(--border);transition:background .3s}
.wcard:hover{background:rgba(184,151,42,.04)}
.wcard:nth-child(even){border-right:none}
.wcard:nth-last-child(-n+2){border-bottom:none}
.wicon{width:44px;height:44px;margin-bottom:1.5rem;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:18px;border-radius:2px}
.wcard h3{font-family:var(--fd);font-size:1.35rem;font-weight:400;margin-bottom:.75rem}
.wcard p{font-size:14px;color:var(--muted);line-height:1.8;font-weight:300}

/* COMPARE BLOCK */
.cmp-wrap{max-width:900px;margin:0 auto 5rem;border:1px solid var(--border);background:var(--d2);padding:2.5rem 3rem;border-radius:2px}
.cmp-title{font-family:var(--fd);font-size:1.35rem;font-weight:400;margin-bottom:2rem;color:var(--cream);text-align:center}
.cmp-title em{color:var(--gl);font-style:italic}
.cmp-row{margin-bottom:1.5rem}
.cmp-lbl{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;color:var(--muted);margin-bottom:.5rem;font-weight:300}
.cmp-lbl .rs{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.cmp-bar{position:relative;height:42px;background:rgba(255,255,255,.04);border-radius:2px;overflow:hidden;display:flex;align-items:center}
.cmp-fill{height:100%;transition:width 1.2s ease;border-radius:2px}
.cmp-fill.bk{background:linear-gradient(to right,#3a3a35,#55554c)}
.cmp-fill.vw{background:linear-gradient(to right,var(--gold),var(--gl))}
.cmp-amt{position:absolute;right:1rem;font-family:var(--fd);font-size:1.15rem;font-weight:500;color:var(--cream);z-index:2}
.cmp-amt.gd{color:var(--dark)}
.cmp-res{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border);font-size:14px;color:var(--muted);text-align:center;font-weight:300}
.cmp-res strong{color:var(--gl);font-weight:500;font-size:1.25rem;font-family:var(--fd)}

/* PILLARS */
.pgrid2{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;max-width:1100px;margin:0 auto;background:var(--border);border:1px solid var(--border)}
.pillar{padding:2.5rem 2rem;background:var(--d2);transition:background .3s}
.pillar:hover{background:rgba(184,151,42,.05)}
.pnum{font-family:var(--fd);font-size:3.5rem;font-weight:400;color:var(--gl);line-height:1;margin-bottom:1rem}
.pnum span{font-size:1.2rem;color:var(--muted);font-family:var(--fb);font-weight:300;margin-left:.2rem}
.ptitle{font-family:var(--fd);font-size:1.2rem;font-weight:400;color:var(--cream);margin-bottom:.5rem}
.pdesc{font-size:13px;color:var(--muted);line-height:1.7;font-weight:300}

/* PKG HIGHLIGHT BOX */
.phl{background:rgba(184,151,42,.08);border:1px solid rgba(184,151,42,.3);padding:1rem 1.25rem;margin:0 0 1.5rem;border-radius:2px}
.phl-row{display:flex;align-items:baseline;gap:.5rem;margin-bottom:.4rem;flex-wrap:wrap}
.phl-lbl{font-size:11px;color:var(--muted);letter-spacing:.05em;text-transform:uppercase}
.phl-arr{color:var(--gold);font-size:14px;margin:0 .15rem}
.phl-amt{font-family:var(--fd);font-size:1.25rem;font-weight:500;color:var(--gl)}
.phl-vs{font-size:11px;color:var(--gold);letter-spacing:.05em;font-weight:500;text-transform:uppercase}

/* PACKAGES */
.packages{background:var(--dark)}
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:1100px;margin:0 auto}
.pcard{border:1px solid var(--border);padding:2.5rem 2rem;background:var(--d2);position:relative;border-radius:2px;transition:border-color .3s,transform .2s}
.pcard:hover{border-color:var(--gold);transform:translateY(-4px)}
.pcard.ft{border-color:var(--gold);background:linear-gradient(135deg,var(--d2) 0%,rgba(184,151,42,.06) 100%)}
.pbadge{position:absolute;top:-1px;right:2rem;background:var(--gold);color:var(--dark);font-size:9px;letter-spacing:.15em;text-transform:uppercase;padding:.3rem .75rem;font-weight:500}
.pdur{font-family:var(--fd);font-size:2.5rem;font-weight:400;color:var(--gl);line-height:1}
.pname{font-size:10px;font-weight:500;color:var(--gl);letter-spacing:.3em;text-transform:uppercase;margin-bottom:.85rem;font-family:var(--fb)}
.pdur span{font-size:1rem;color:var(--muted);font-family:var(--fb);font-weight:300}
.pdiv{width:40px;height:1px;background:var(--border);margin:1.5rem 0}
.prate{font-size:2rem;font-weight:500;color:var(--cream);font-family:var(--fb)}
.prlbl{font-size:12px;color:var(--muted);margin-bottom:1.5rem}
.pfeats{list-style:none;margin-bottom:2rem}
.pfeats li{font-size:13px;color:var(--muted);padding:.55rem 0;border-bottom:1px solid rgba(255,255,255,.05);display:flex;align-items:center;gap:.6rem;font-weight:300}
.pfeats li::before{content:'';width:4px;height:4px;background:var(--gold);border-radius:50%;flex-shrink:0}
.btn-pkg{width:100%;padding:.8rem;border:1px solid var(--border);background:transparent;color:var(--cream);cursor:pointer;font-family:var(--fb);font-size:11px;letter-spacing:.12em;text-transform:uppercase;border-radius:2px;transition:all .2s}
.pcard.ft .btn-pkg{background:var(--gold);border-color:var(--gold);color:var(--dark);font-weight:500}
.btn-pkg:hover{background:var(--gold);border-color:var(--gold);color:var(--dark)}

/* CALC */
.calculator{background:var(--d3)}
.cwrap{max-width:700px;margin:0 auto;border:1px solid var(--border);padding:3rem;border-radius:2px;background:var(--d2)}
.crow{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}
.cg label{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem}
.cg input,.cg select{width:100%;padding:.75rem 1rem;background:var(--d3);border:1px solid var(--border);color:var(--cream);font-family:var(--fb);font-size:14px;border-radius:2px;outline:none;transition:border-color .2s}
.cg input:focus,.cg select:focus{border-color:var(--gold)}
.cg input::placeholder{color:var(--muted)}
.cg select option{background:var(--d3)}
.cres{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border)}
.cri{text-align:center}
.crl{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem}
.crv{font-family:var(--fd);font-size:1.5rem;font-weight:400;color:var(--gl)}
.crv.g{color:#6CC079}

/* TIME HORIZON CHART */
.horizon{padding:7rem 2rem;background:var(--d2);position:relative;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.hzn-chart{max-width:1000px;margin:3.5rem auto 2rem;background:var(--dark);border:1px solid var(--border);padding:2.25rem 1.5rem 1.5rem;border-radius:2px;position:relative}
.hzn-chart svg{width:100%;height:auto;display:block}
.hzn-foot{text-align:center;margin:0 auto;max-width:680px}
.hzn-disc{display:inline-block;font-size:10.5px;color:var(--muted);font-style:italic;letter-spacing:.05em;padding:.55rem 1.4rem;border:1px dashed rgba(184,151,42,.18);border-radius:50px;font-weight:300}

/* PRICING - SINGLE CARD WITH TIME SELECTOR */
.pricing{padding:7rem 2rem;background:var(--d3);border-top:1px solid var(--border);position:relative}
.pr-wrap{max-width:620px;margin:4rem auto 2rem;text-align:center}
.pr-tabs{display:flex;justify-content:center;gap:0;margin-bottom:3rem;background:var(--dark);border:1px solid var(--border);border-radius:50px;padding:.4rem}
.pr-tab{flex:1;padding:.85rem .8rem;background:transparent;border:none;color:var(--muted);font-family:var(--fb);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;font-weight:500;border-radius:50px;transition:all .25s;white-space:nowrap}
.pr-tab:hover{color:var(--cream)}
.pr-tab.active{background:var(--gold);color:var(--dark)}
.pr-single{background:rgba(184,151,42,.05);border:1px solid var(--gold);padding:3rem 2.5rem 2.5rem;border-radius:2px;position:relative}
.pr-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--dark);font-size:9.5px;letter-spacing:.22em;padding:.45rem 1.2rem;text-transform:uppercase;font-weight:500;border-radius:50px;white-space:nowrap;transition:opacity .25s}
.pr-name{font-size:11px;letter-spacing:.3em;color:var(--gold);font-weight:500;text-transform:uppercase;margin-bottom:1.5rem}
.pr-price{font-family:var(--fd);font-size:clamp(2.8rem,7vw,4rem);color:var(--gl);font-weight:400;font-style:italic;line-height:1;margin-bottom:.5rem;letter-spacing:-.01em}
.pr-price em{font-size:.4em;font-style:normal;font-weight:300;margin-left:.2rem}
.pr-period{font-size:13px;color:var(--muted);font-style:italic;font-family:var(--fd);margin-bottom:1.75rem;letter-spacing:.02em}
.pr-period span{color:var(--gl);font-style:normal;font-family:var(--fb);font-size:11px;letter-spacing:.05em}
.pr-save{display:inline-block;font-size:10.5px;color:var(--gl);letter-spacing:.2em;text-transform:uppercase;font-weight:500;padding:.55rem 1.3rem;background:rgba(184,151,42,.15);border:1px solid rgba(184,151,42,.45);border-radius:50px;margin-bottom:2rem}
.pr-save.zero{color:var(--muted);background:transparent;border-color:var(--border)}
.pr-divider{height:1px;background:linear-gradient(to right,transparent,rgba(184,151,42,.25),transparent);margin:0 0 2rem}
.pr-features{list-style:none;text-align:left;max-width:400px;margin:0 auto 2.5rem;padding:0}
.pr-features li{font-size:14px;color:var(--cream);font-weight:300;margin-bottom:1rem;padding-left:1.1rem;position:relative;line-height:1.55}
.pr-features li:last-child{margin-bottom:0}
.pr-features li::before{content:'·';position:absolute;left:0;color:var(--gold);font-weight:500;font-size:1.5rem;top:-.4rem}
.pr-features li strong{color:var(--gl);font-weight:400;font-family:var(--fd);font-style:italic;font-size:1.05em;letter-spacing:0}
.pr-features li em{display:block;font-size:11.5px;color:var(--muted);font-style:italic;margin-top:.25rem;letter-spacing:.02em}
.pr-btn-big{padding:1.1rem 3rem;background:var(--gold);color:var(--dark);font-family:var(--fb);font-size:12px;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;font-weight:500;border-radius:2px;border:1px solid var(--gold);transition:all .25s;width:100%;max-width:280px}
.pr-btn-big:hover{background:var(--gl);letter-spacing:.24em}
.pr-foot{text-align:center;margin-top:2rem;max-width:680px;margin-left:auto;margin-right:auto}
.pr-foot-pill{display:inline-block;font-size:10.5px;color:var(--muted);font-style:italic;letter-spacing:.05em;padding:.55rem 1.4rem;border:1px dashed rgba(184,151,42,.18);border-radius:50px;font-weight:300}
@media(max-width:560px){.pr-tab{font-size:10px;letter-spacing:.1em;padding:.7rem .4rem}.pr-single{padding:2.5rem 1.5rem 2rem}}

/* PROFIT CALCULATOR */
.calc{padding:7rem 2rem;background:var(--d2);border-top:1px solid var(--border)}
.calc-wrap{max-width:1100px;margin:4rem auto 0}
.calc-input{text-align:center;background:var(--dark);border:1px solid var(--border);padding:3rem 2rem 2.5rem;border-radius:2px;margin-bottom:1.5rem}
.ci-lbl{font-size:11px;letter-spacing:.25em;color:var(--gold);font-weight:500;text-transform:uppercase;margin-bottom:1rem}
.ci-num{font-family:var(--fd);font-size:clamp(2rem,5vw,3.5rem);color:var(--gl);font-weight:400;font-style:italic;line-height:1;margin-bottom:2rem;letter-spacing:-.01em}
.ci-num em{font-size:.45em;color:var(--gl);margin-left:.4rem;font-style:normal;font-weight:300}
.calc-input input[type=range]{width:100%;max-width:600px;margin:0 auto;display:block;-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer;height:24px}
.calc-input input[type=range]::-webkit-slider-runnable-track{height:2px;background:rgba(184,151,42,.2);border-radius:2px}
.calc-input input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--gl);border:2px solid var(--dark);cursor:pointer;margin-top:-8px;box-shadow:0 0 0 1px var(--gold)}
.calc-input input[type=range]::-moz-range-track{height:2px;background:rgba(184,151,42,.2);border-radius:2px;border:none}
.calc-input input[type=range]::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--gl);border:2px solid var(--dark);cursor:pointer;box-shadow:0 0 0 1px var(--gold)}
.ci-bounds{display:flex;justify-content:space-between;max-width:600px;margin:.7rem auto 0;font-size:9.5px;color:var(--muted);letter-spacing:.18em;text-transform:uppercase;font-weight:400}
.calc-quick{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap;margin-bottom:3rem}
.calc-quick button{background:transparent;border:1px solid var(--border);color:var(--muted);padding:.6rem 1.2rem;font-family:var(--fb);font-size:11px;letter-spacing:.12em;cursor:pointer;font-weight:500;border-radius:2px;transition:all .2s;text-transform:uppercase}
.calc-quick button:hover{border-color:var(--gold);color:var(--gl);background:rgba(184,151,42,.04)}
.calc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}
.cc-card{background:var(--dark);border:1px solid var(--border);padding:1.85rem 1.5rem 1.5rem;border-radius:2px;position:relative;transition:border-color .25s}
.cc-card:hover{border-color:rgba(184,151,42,.35)}
.cc-card.ft{border-color:var(--gold);background:rgba(184,151,42,.04)}
.cc-badge{position:absolute;top:-9px;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--dark);font-size:9px;letter-spacing:.22em;padding:.3rem 1rem;text-transform:uppercase;font-weight:500;border-radius:50px;white-space:nowrap}
.cc-time{font-size:10px;letter-spacing:.25em;color:var(--gold);font-weight:500;margin-bottom:.6rem}
.cc-pct{font-family:var(--fd);font-size:1.7rem;color:var(--gl);font-style:italic;font-weight:400;margin-bottom:.9rem;line-height:1}
.cc-prof{font-family:var(--fd);font-size:1.35rem;color:var(--cream);font-weight:400;margin-bottom:.85rem;letter-spacing:-.005em;line-height:1.2}
.cc-tot{font-size:11.5px;color:var(--muted);font-weight:300;line-height:1.6}
.cc-tot span{color:var(--cream);font-weight:400}
.cc-rng{font-size:10.5px;color:var(--muted);font-weight:300;font-style:italic;margin-top:.7rem;padding-top:.7rem;border-top:1px dashed rgba(184,151,42,.15);letter-spacing:.02em;line-height:1.5}
.cc-rng strong{color:var(--gl);font-style:normal;font-weight:400}
.calc-disc{text-align:center;margin-top:1rem}
.calc-disc-pill{display:inline-block;font-size:10.5px;color:var(--muted);font-style:italic;letter-spacing:.05em;padding:.55rem 1.4rem;border:1px dashed rgba(184,151,42,.18);border-radius:50px;font-weight:300}
@media(max-width:900px){.calc-grid{grid-template-columns:repeat(2,1fr)}.ci-num{font-size:2.4rem}}
@media(max-width:560px){.calc-grid{grid-template-columns:1fr}.calc-quick button{padding:.5rem .9rem;font-size:10px}}

/* PROBLEMS - VẤN ĐỀ */
.problems{padding:9rem 2rem;background:var(--dark);position:relative;border-top:1px solid var(--border)}
.pb-banner{margin:4rem auto 4rem;max-width:760px;text-align:center;padding:3rem 2rem;border-top:1px solid rgba(227,112,96,0.25);border-bottom:1px solid rgba(227,112,96,0.25);position:relative}
.pb-banner-num{font-family:var(--fd);font-size:clamp(4rem,9vw,6.5rem);color:#E37060;font-style:italic;line-height:.95;margin-bottom:1.25rem;letter-spacing:-.02em;font-weight:300}
.pb-banner-text{font-size:11.5px;color:var(--cream);font-weight:500;letter-spacing:.25em;line-height:1.7;text-transform:uppercase}
.pb-banner-text em{color:#E37060;font-style:italic;font-family:var(--fd);font-size:1.2em;font-weight:400;letter-spacing:0;text-transform:none}
.pb-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;max-width:1140px;margin:0 auto}
.pb-card{background:var(--d2);border:1px solid var(--border);padding:2.5rem 2rem;border-radius:2px;position:relative;border-left:2px solid rgba(227,112,96,0.45);transition:border-color .3s,transform .3s}
.pb-card:hover{border-left-color:#E37060;transform:translateX(2px)}
.pb-num{font-family:var(--fd);font-size:2.5rem;color:rgba(227,112,96,0.55);font-style:italic;line-height:1;margin-bottom:.4rem;font-weight:300;letter-spacing:-.01em}
.pb-tag{font-size:10px;letter-spacing:.28em;color:#E37060;font-weight:500;text-transform:uppercase;margin-bottom:1rem}
.pb-ttl{font-family:var(--fd);font-size:1.45rem;font-weight:400;color:var(--cream);margin-bottom:1.1rem;letter-spacing:.005em;line-height:1.3}
.pb-ttl em{font-style:italic;color:#E37060;font-weight:400}
.pb-desc{font-size:13.5px;color:var(--muted);font-weight:300;line-height:1.75;margin-bottom:1.25rem}
.pb-desc strong{color:var(--cream);font-weight:400}
.pb-result{font-size:12px;color:#E37060;font-style:italic;font-family:var(--fd);padding-top:1rem;border-top:1px dashed rgba(227,112,96,0.18);letter-spacing:.02em;line-height:1.6}
.pb-result::before{content:'→ ';color:#E37060;font-weight:500;font-style:normal}
.pb-closing{margin:5rem auto 0;max-width:760px;text-align:center;padding:1rem}
.pb-closing-quote{font-family:var(--fd);font-size:clamp(1.4rem,3vw,1.85rem);font-style:italic;color:#E37060;font-weight:400;line-height:1.5;letter-spacing:-.005em}
.pb-closing-quote em{color:var(--cream);font-style:normal;font-weight:400}

/* OPPORTUNITIES - CƠ HỘI */
.opp{padding:9rem 2rem;background:var(--d2);position:relative;border-top:1px solid var(--border)}
.op-banner{margin:4rem auto 4rem;max-width:760px;text-align:center;padding:3rem 2rem;border-top:1px solid rgba(184,151,42,0.3);border-bottom:1px solid rgba(184,151,42,0.3);position:relative;background:rgba(184,151,42,0.025)}
.op-banner-num{font-family:var(--fd);font-size:clamp(4rem,9vw,6.5rem);color:var(--gl);font-style:italic;line-height:.95;margin-bottom:1.25rem;letter-spacing:-.02em;font-weight:300}
.op-banner-num em{font-size:.45em;color:var(--gold);font-style:normal;margin-left:.2rem;font-weight:300}
.op-banner-text{font-size:11.5px;color:var(--cream);font-weight:500;letter-spacing:.25em;line-height:1.7;text-transform:uppercase}
.op-banner-text em{color:var(--gl);font-style:italic;font-family:var(--fd);font-size:1.2em;font-weight:400;letter-spacing:0;text-transform:none}
.op-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;max-width:1140px;margin:0 auto}
.op-card{background:var(--dark);border:1px solid var(--border);padding:2.5rem 2rem;border-radius:2px;position:relative;border-left:2px solid rgba(184,151,42,0.5);transition:border-color .3s,transform .3s}
.op-card:hover{border-left-color:var(--gold);transform:translateX(2px)}
.op-num{font-family:var(--fd);font-size:2.5rem;color:var(--gl);font-style:italic;line-height:1;margin-bottom:.4rem;font-weight:400;letter-spacing:-.01em}
.op-num em{font-size:.55em;color:var(--gold);font-style:normal;margin-left:.15rem;font-weight:300}
.op-tag{font-size:10px;letter-spacing:.28em;color:var(--gold);font-weight:500;text-transform:uppercase;margin-bottom:1rem}
.op-ttl{font-family:var(--fd);font-size:1.45rem;font-weight:400;color:var(--cream);margin-bottom:1.1rem;letter-spacing:.005em;line-height:1.3}
.op-ttl em{font-style:italic;color:var(--gl);font-weight:400}
.op-desc{font-size:13.5px;color:var(--muted);font-weight:300;line-height:1.75;margin-bottom:1.25rem}
.op-desc strong{color:var(--cream);font-weight:400}
.op-result{font-size:12px;color:var(--gl);font-style:italic;font-family:var(--fd);padding-top:1rem;border-top:1px dashed rgba(184,151,42,0.18);letter-spacing:.02em;line-height:1.6}
.op-result::before{content:'→ ';color:var(--gold);font-weight:500;font-style:normal}
.op-closing{margin:5rem auto 0;max-width:760px;text-align:center;padding:1rem}
.op-closing-quote{font-family:var(--fd);font-size:clamp(1.4rem,3vw,1.85rem);font-style:italic;color:var(--gl);font-weight:400;line-height:1.5;letter-spacing:-.005em}
.op-closing-quote em{color:var(--cream);font-style:normal;font-weight:400}

@media(max-width:760px){.pb-grid,.op-grid{grid-template-columns:1fr}.pb-card,.op-card{padding:2rem 1.5rem}.pb-ttl,.op-ttl{font-size:1.25rem}}

/* PROCESS - 3 STEP HOOK */
.process{padding:7rem 2rem;background:var(--dark);position:relative;overflow:hidden}
.process::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:1px;height:100px;background:linear-gradient(to bottom,transparent,rgba(184,151,42,.3))}
.proc-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;max-width:1200px;margin:5rem auto 0;position:relative}
.proc-step{padding:0 2.5rem;position:relative;border-right:1px solid rgba(184,151,42,.12)}
.proc-step:last-child{border-right:none}
.proc-num{font-family:var(--fd);font-size:5.5rem;font-weight:300;color:var(--gl);font-style:italic;line-height:1;margin-bottom:1rem;letter-spacing:-.02em}
.proc-num span{color:rgba(184,151,42,.3);font-size:0.45em;letter-spacing:.3em;font-style:normal;font-family:var(--fb);font-weight:400;display:block;margin-top:.2rem;margin-left:.3rem}
.proc-line{height:1px;background:linear-gradient(to right,var(--gold) 0%,var(--gold) 30%,transparent 100%);margin-bottom:1.75rem}
.proc-ttl{font-family:var(--fd);font-size:1.65rem;font-weight:400;color:var(--cream);margin-bottom:1.2rem;letter-spacing:.005em;line-height:1.25}
.proc-ttl em{font-style:italic;color:var(--gl)}
.proc-desc{font-size:13.5px;color:var(--muted);line-height:1.8;font-weight:300;margin-bottom:1.5rem}
.proc-meta{font-size:10.5px;color:var(--gl);letter-spacing:.2em;text-transform:uppercase;font-weight:500;padding-top:1.25rem;border-top:1px dashed rgba(184,151,42,.2)}
@media(max-width:900px){.proc-grid{grid-template-columns:1fr;gap:0;margin-top:3rem}.proc-step{padding:2.5rem 1.5rem;border-right:none;border-bottom:1px solid rgba(184,151,42,.12)}.proc-step:last-child{border-bottom:none}.proc-num{font-size:4.5rem}.proc-ttl{font-size:1.4rem}}

/* TEAM - DETAILED AI CARDS */
.team{background:var(--d3)}
.tgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;max-width:1100px;margin:0 auto}
.tcard{text-align:center;padding:2rem 1.75rem;border:1px solid var(--border);border-radius:2px;background:var(--d2);transition:all .3s}
.tcard:hover{border-color:var(--gold)}
.tavatar{width:80px;height:80px;border-radius:50%;margin:0 auto 1.25rem;overflow:hidden;border:1px solid var(--border)}
.tavatar svg{width:100%;height:100%;display:block}
.tname{font-family:var(--fb);font-size:1.05rem;font-weight:500;margin-bottom:.35rem;letter-spacing:.22em;text-transform:uppercase;color:var(--cream)}
.trole{font-size:11px;color:var(--gold);letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem;font-weight:400;font-style:italic;font-family:var(--fd)}
.tbio{font-size:13px;color:var(--muted);line-height:1.7;font-weight:300;margin-bottom:1.25rem;text-align:left}
.tfee{margin:1.25rem 0;padding:.85rem 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:400;display:flex;justify-content:space-between;align-items:baseline}
.tfee span{font-family:var(--fd);font-style:normal;font-size:1.1rem;font-weight:400;letter-spacing:0;text-transform:none;color:var(--gl)}
.t-rinfo{margin-bottom:1.5rem;background:rgba(184,151,42,.05);border:1px solid rgba(184,151,42,.15);border-radius:2px;padding:1.1rem 1.2rem}
.t-rinfo-row{padding:.7rem 0;border-bottom:1px dashed rgba(184,151,42,.12)}
.t-rinfo-row:last-child{border-bottom:none;padding-bottom:0}
.t-rinfo-row:first-child{padding-top:0}
.t-rinfo-lbl{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:.35rem;font-weight:500}
.t-rinfo-val{font-size:13px;color:var(--cream);font-weight:300;line-height:1.55}
.t-rinfo-val.hl{font-family:var(--fd);color:var(--gl);font-style:italic;font-size:14px;font-weight:400;line-height:1.5}
.t-rinfo-val.hl strong{font-family:var(--fb);font-style:normal;color:var(--gl);font-weight:500;font-size:1.2rem;letter-spacing:.02em;display:inline-block;margin-right:.4rem}
.t-rinfo-val.hl em{font-style:normal;color:var(--muted);font-size:12px;display:block;margin-top:.25rem;font-family:var(--fb);font-weight:300}
.t-sec{margin-bottom:1rem;text-align:left}
.t-sec:last-child{margin-bottom:0}
.t-sec-ttl{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:.5rem;font-weight:500}
.t-sec-body{font-size:13px;color:var(--muted);line-height:1.7;font-weight:300}

/* Collapsible toggle */
.t-toggle{width:100%;padding:.75rem 1rem;background:transparent;border:1px solid var(--border);color:var(--gl);cursor:pointer;font-family:var(--fb);font-size:11px;letter-spacing:.15em;text-transform:uppercase;border-radius:2px;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.6rem;font-weight:500;margin-top:.5rem}
.t-toggle:hover{border-color:var(--gold);background:rgba(184,151,42,.05)}
.t-tg-arr{transition:transform .35s;font-size:9px;color:var(--gold)}
.t-toggle.open .t-tg-arr{transform:rotate(180deg)}
.t-detail{max-height:0;overflow:hidden;transition:max-height .55s ease;text-align:left}
.t-detail.open{max-height:4000px}
.t-detail-inner{padding-top:1.25rem}

/* AI list in calculator */
.ai-list{margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid var(--border)}
.ai-list-hdr{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}
.ai-list-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.75rem}
@media(max-width:600px){.ai-list-grid{grid-template-columns:1fr}}
.ai-list-lbl{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500}
.ai-list-tot{font-family:var(--fd);font-size:1.05rem;color:var(--gl);font-weight:400}
.ai-list-tot em{font-style:normal;color:var(--muted);font-size:.8rem;font-family:var(--fb);font-weight:300;margin-left:.3rem}
.ai-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border:1px solid var(--border);border-radius:2px;margin-bottom:.5rem;cursor:pointer;transition:all .15s;background:transparent;flex-wrap:wrap}
.ai-row:hover{border-color:var(--gold);background:rgba(184,151,42,.04)}
.ai-row.on{border-color:var(--gold);background:rgba(184,151,42,.08)}
.ai-row-l{display:flex;align-items:center;gap:.85rem;min-width:0;flex:1}
.ai-check{width:18px;height:18px;border:1px solid var(--border);border-radius:2px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}
.ai-row.on .ai-check{background:var(--gold);border-color:var(--gold)}
.ai-row.on .ai-check::after{content:'✓';color:var(--dark);font-size:12px;font-weight:600;line-height:1}
.ai-row-name{font-size:13px;font-weight:500;color:var(--cream);letter-spacing:.06em}
.ai-row-spec{font-size:11px;color:var(--muted);font-family:var(--fd);font-style:italic;display:block;margin-top:.1rem;letter-spacing:0;text-transform:none;font-weight:400}
.ai-row-price{font-family:var(--fd);font-size:1.05rem;color:var(--gl);font-weight:400;white-space:nowrap}
.ai-row-price em{font-style:normal;color:var(--muted);font-size:.75rem;font-weight:300;font-family:var(--fb);margin-left:.15rem}
.ai-info{font-size:11px;color:var(--muted);font-weight:300;line-height:1.5;margin-top:.75rem}

/* COMBO PACKAGES */
.combos{background:var(--dark)}
.cb-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;max-width:1200px;margin:0 auto}
.cb-card{background:var(--d2);border:1px solid var(--border);padding:2rem 1.5rem;position:relative;border-radius:2px;transition:all .3s;display:flex;flex-direction:column}
.cb-card:hover{border-color:var(--gold);transform:translateY(-4px)}
.cb-card.ft{border-color:var(--gold);background:linear-gradient(135deg,var(--d2) 0%,rgba(184,151,42,.06) 100%)}
.cb-badge{position:absolute;top:-1px;right:1.25rem;background:var(--gold);color:var(--dark);font-size:9px;letter-spacing:.15em;text-transform:uppercase;padding:.3rem .6rem;font-weight:500}
.cb-name{font-size:10px;font-weight:500;color:var(--gl);letter-spacing:.3em;text-transform:uppercase;margin-bottom:1rem;font-family:var(--fb)}
.cb-price{font-family:var(--fd);font-size:1.95rem;font-weight:400;color:var(--cream);line-height:1}
.cb-price em{font-size:.95rem;color:var(--muted);font-style:normal;font-family:var(--fb);font-weight:300;margin-left:.15rem}
.cb-pmonth{font-size:11px;color:var(--muted);margin-top:.3rem;letter-spacing:.05em;font-weight:300}
.cb-div{width:30px;height:1px;background:var(--border);margin:1.25rem 0}
.cb-win-lbl{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem;font-weight:500}
.cb-win-pct{font-family:var(--fd);font-size:1.6rem;font-weight:400;color:var(--gl);font-style:italic;line-height:1}
.cb-win-bar{height:5px;background:rgba(255,255,255,.06);border-radius:3px;overflow:hidden;margin-top:.7rem;margin-bottom:1.5rem}
.cb-win-fill{height:100%;background:linear-gradient(to right,var(--gold),var(--gl));border-radius:3px;transition:width 1.2s ease}
.cb-incl{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);margin-bottom:.7rem;font-weight:500}
.cb-list{list-style:none;font-size:12px;color:var(--cream);margin-bottom:1.25rem;flex:1}
.cb-list li{padding:.35rem 0;display:flex;align-items:center;gap:.55rem;font-weight:300;letter-spacing:.03em;line-height:1.4}
.cb-list li::before{content:'';width:3px;height:3px;background:var(--gold);border-radius:50%;flex-shrink:0}
.cb-list li strong{font-weight:500;letter-spacing:.08em;color:var(--cream)}
.cb-target{font-size:11px;color:var(--muted);font-style:italic;margin-bottom:1.25rem;line-height:1.55;font-family:var(--fd);padding:.65rem 0;border-top:1px solid var(--border)}
.cb-btn{width:100%;padding:.85rem;border:1px solid var(--border);background:transparent;color:var(--cream);cursor:pointer;font-family:var(--fb);font-size:11px;letter-spacing:.12em;text-transform:uppercase;border-radius:2px;transition:all .15s}
.cb-card.ft .cb-btn{background:var(--gold);border-color:var(--gold);color:var(--dark);font-weight:500}
.cb-btn:hover{background:var(--gold);border-color:var(--gold);color:var(--dark)}

/* DASHBOARD */
.dashboard{background:var(--d2)}
.dwrap{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:240px 1fr;border:1px solid var(--border);border-radius:4px;overflow:hidden}
.dsb{background:var(--d3);padding:2rem;border-right:1px solid var(--border)}
.dsbl{font-family:var(--fd);font-size:1.15rem;color:var(--gl);letter-spacing:.12em;margin-bottom:2.5rem}
.dni{display:flex;align-items:center;gap:.75rem;padding:.7rem .75rem;border-radius:2px;font-size:13px;color:var(--muted);margin-bottom:.25rem;cursor:pointer;transition:all .2s;font-weight:300}
.dni:hover,.dni.active{background:rgba(184,151,42,.12);color:var(--gl)}
.dni-ic{font-size:14px;width:16px;text-align:center}
.dmain{padding:2rem}
.dhdr{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}
.dgreet{font-family:var(--fd);font-size:1.6rem;font-weight:400}
.dgreet span{color:var(--gl);font-style:italic}
.ddate{font-size:12px;color:var(--muted);margin-top:.25rem;font-weight:300}
.dcards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}
.dc{background:var(--d3);border:1px solid var(--border);padding:1.25rem;border-radius:2px}
.dcl{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem}
.dcv{font-family:var(--fd);font-size:1.4rem;font-weight:400;color:var(--cream)}
.dcv.g{color:#6CC079}
.dcs{font-size:11px;color:var(--muted);margin-top:.3rem;font-weight:300}
.dst{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:1rem}
.irow{background:var(--d3);border:1px solid var(--border);padding:1rem 1.25rem;border-radius:2px;display:flex;align-items:center;gap:1rem;margin-bottom:.5rem;flex-wrap:wrap}
.itag{background:rgba(184,151,42,.15);color:var(--gold);font-size:10px;letter-spacing:.08em;padding:.2rem .6rem;border-radius:2px;white-space:nowrap}
.iinfo{flex:1;min-width:150px}
.iname{font-size:13px;font-weight:500;margin-bottom:.15rem}
.imeta{font-size:11px;color:var(--muted);font-weight:300}
.iamt{font-family:var(--fd);font-size:1.1rem;color:var(--gl);white-space:nowrap}
.pbw{height:3px;background:rgba(255,255,255,.08);border-radius:2px;margin-top:.6rem}
.pb{height:100%;background:linear-gradient(to right,var(--gold),var(--gl));border-radius:2px}

/* CONTACT - COMPACT */
.contact{background:var(--dark);padding:5rem 2rem!important;text-align:center}
.cwrp{max-width:600px;margin:0 auto}
.contact .stag{margin-bottom:1rem}
.contact .stitle{margin-bottom:1.25rem}
.contact .ssub{margin-bottom:2.5rem;max-width:520px;margin-left:auto;margin-right:auto}
.cmail{font-size:14px;color:var(--gl);font-family:var(--fd);font-style:italic;letter-spacing:.02em;margin-top:1.5rem;display:inline-block}
.cmail a{color:var(--gl);text-decoration:none;border-bottom:1px dashed rgba(184,151,42,.4);padding-bottom:2px;transition:border-color .2s}
.cmail a:hover{border-bottom-color:var(--gl)}

/* MODAL */
.moverlay{display:none;position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.85);align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.moverlay.active{display:flex}
.modal{background:var(--d2);border:1px solid var(--border);padding:3rem;width:100%;max-width:440px;border-radius:2px;position:relative;margin:1rem;max-height:90vh;overflow-y:auto}
.mclose{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;color:var(--muted);cursor:pointer;font-size:20px;line-height:1;transition:color .2s}
.mclose:hover{color:var(--cream)}
.mlogo{font-family:var(--fd);font-size:1.4rem;font-weight:600;color:var(--gl);letter-spacing:.12em;margin-bottom:.5rem}
.msub{font-size:13px;color:var(--muted);margin-bottom:2rem;font-weight:300}
.tabrow{display:flex;border-bottom:1px solid var(--border);margin-bottom:2rem}
.tbtn{flex:1;background:none;border:none;padding:.75rem;cursor:pointer;font-family:var(--fb);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s}
.tbtn.active{color:var(--gl);border-bottom-color:var(--gold)}
.fg{margin-bottom:1.25rem}
.fg label{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:.5rem}
.fg input,.fg select{width:100%;padding:.75rem 1rem;background:var(--d3);border:1px solid var(--border);color:var(--cream);font-family:var(--fb);font-size:14px;border-radius:2px;outline:none;transition:border-color .2s}
.fg input:focus,.fg select:focus{border-color:var(--gold)}
.fg input::placeholder{color:var(--muted)}
.fg select option{background:var(--d3)}
.bsub{width:100%;padding:.9rem;background:var(--gold);border:none;color:var(--dark);cursor:pointer;font-family:var(--fb);font-size:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;border-radius:2px;transition:all .2s;margin-top:.5rem}
.bsub:hover{background:var(--gl)}
.fnote{font-size:12px;color:var(--muted);text-align:center;margin-top:1rem;line-height:1.5}
.fnote a{color:var(--gl);text-decoration:none}

/* FOOTER - MINIMAL */
footer{background:var(--d3);border-top:1px solid var(--border);padding:2rem 3rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.fcopy{font-size:11.5px;color:var(--muted);font-weight:300;letter-spacing:.04em}
.flinks{display:flex;gap:1.5rem;flex-wrap:wrap}
.flinks a{font-size:11.5px;color:var(--muted);text-decoration:none;transition:color .2s;letter-spacing:.04em}
.flinks a:hover{color:var(--gl)}

/* ANIM */
.fu{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}
.fu.v{opacity:1;transform:translateY(0)}

/* RESPONSIVE */
@media(max-width:900px){
  nav{padding:1rem 1.5rem}
  .nav-links{display:none}
  .hbg{display:flex}
  section{padding:4rem 1.5rem}
  .stats{grid-template-columns:1fr}
  .si{border-right:none;border-bottom:1px solid var(--border)}
  .si:last-child{border-bottom:none}
  .ls-grid{grid-template-columns:repeat(2,1fr)}
  .ls-it{border-right:none;border-bottom:1px solid var(--border)!important}
  .ls-it:nth-child(odd){border-right:1px solid var(--border)}
  .ls-it:nth-child(4n){border-right:1px solid var(--border)}
  .ls-it:nth-child(odd):not(:nth-last-child(-n+2)){border-right:1px solid var(--border)}
  .ls-it:nth-last-child(-n+2){border-bottom:none!important}
  .livestats{padding:2rem 1.5rem 1.5rem}
  .ls-tt{font-size:1rem}
  .wgrid{grid-template-columns:1fr}
  .wcard{border-right:none}
  .wcard:nth-last-child(-n+2){border-bottom:1px solid var(--border)}
  .wcard:last-child{border-bottom:none}
  .pgrid{grid-template-columns:1fr;max-width:440px}
  .pgrid2{grid-template-columns:repeat(2,1fr)}
  .cb-grid{grid-template-columns:repeat(2,1fr)}
  .cmp-wrap{padding:1.5rem}
  .cmp-amt{font-size:.95rem;right:.5rem}
  .crow{grid-template-columns:1fr}
  .cres{grid-template-columns:1fr}
  .tgrid{grid-template-columns:1fr}
  .t-specs-grid{grid-template-columns:1fr}
  .dwrap{grid-template-columns:1fr}
  .dsb{display:none}
  .dcards{grid-template-columns:1fr}
  footer{flex-direction:column;text-align:center;align-items:center}
}
@media(max-width:480px){
  .hero h1{font-size:2.4rem}
  .tgrid{grid-template-columns:1fr}
  .pgrid2{grid-template-columns:1fr}
}

/* =====================================================
   VWEALTH ACCOUNT / PAYMENT / BLOG PAGES
   ===================================================== */

.vw-account-page{padding:7rem 2rem;background:var(--dark);min-height:70vh}
.vw-acc-wrap{max-width:920px;margin:0 auto}

/* Alerts */
.vw-alert{padding:1rem 1.25rem;border-radius:2px;margin-bottom:2rem;font-size:14px;line-height:1.6}
.vw-alert-error{background:rgba(227,112,96,0.08);border:1px solid rgba(227,112,96,0.3);color:#E37060}
.vw-alert-success{background:rgba(184,151,42,0.08);border:1px solid rgba(184,151,42,0.3);color:var(--gl)}

/* Form */
.vw-form{margin-top:3rem}
.vw-form-section{background:var(--d2);border:1px solid var(--border);padding:2.25rem 2rem;margin-bottom:1.5rem;border-radius:2px}
.vw-form-step{font-size:11px;letter-spacing:.25em;color:var(--gold);font-weight:500;text-transform:uppercase;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem}
.vw-form-step span{font-family:var(--fd);font-size:1.5rem;color:var(--gl);font-style:italic;letter-spacing:0;text-transform:none}

.vw-plan-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}
.vw-plan-tab{cursor:pointer}
.vw-plan-tab input{display:none}
.vw-plan-tab-inner{background:var(--dark);border:1px solid var(--border);padding:1.5rem 1rem;text-align:center;border-radius:2px;position:relative;transition:all .25s}
.vw-plan-tab:hover .vw-plan-tab-inner{border-color:rgba(184,151,42,0.4)}
.vw-plan-tab input:checked + .vw-plan-tab-inner{border-color:var(--gold);background:rgba(184,151,42,0.05)}
.vw-plan-badge{position:absolute;top:-9px;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--dark);font-size:8.5px;letter-spacing:.18em;padding:.3rem .7rem;text-transform:uppercase;font-weight:500;border-radius:50px;white-space:nowrap}
.vw-plan-tab-name{font-size:9.5px;letter-spacing:.22em;color:var(--gold);font-weight:500;text-transform:uppercase;margin-bottom:.7rem}
.vw-plan-tab-price{font-family:var(--fd);font-size:1.5rem;color:var(--gl);font-style:italic;font-weight:400;line-height:1;margin-bottom:.3rem}
.vw-plan-tab-price em{font-size:.5em;font-style:normal;font-weight:300;margin-left:.15rem}
.vw-plan-tab-period{font-size:11px;color:var(--muted);font-style:italic;margin-bottom:.7rem;line-height:1.4}
.vw-plan-tab-save{font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--gl);font-weight:500;padding:.25rem .5rem;border:1px solid rgba(184,151,42,.3);border-radius:50px;display:inline-block}
.vw-plan-tab-save.vw-zero{color:var(--muted);border-color:var(--border)}

.vw-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1.25rem}
.vw-fg{display:flex;flex-direction:column}
.vw-fg-full{grid-column:span 2}
.vw-fg label{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:.55rem;font-weight:500}
.vw-fg input{padding:.85rem 1rem;background:var(--dark);border:1px solid var(--border);color:var(--cream);font-family:var(--fb);font-size:14px;border-radius:2px;outline:none;transition:border-color .2s}
.vw-fg input:focus{border-color:var(--gold)}
.vw-fg input::placeholder{color:#5A554A}

.vw-form-note{font-size:12px;color:var(--muted);margin-top:1rem;line-height:1.6}
.vw-form-note a{color:var(--gl);text-decoration:none;border-bottom:1px dashed rgba(184,151,42,.3)}

.vw-logged-info{padding:1rem 1.25rem;background:rgba(184,151,42,.05);border:1px solid rgba(184,151,42,.2);border-radius:2px;font-size:14px;line-height:1.7}
.vw-logged-info strong{color:var(--gl)}
.vw-logged-info a{color:var(--gl)}

.vw-btn-submit{width:100%;padding:1.2rem;background:var(--gold);color:var(--dark);font-family:var(--fb);font-size:13px;letter-spacing:.22em;text-transform:uppercase;cursor:pointer;font-weight:500;border-radius:2px;border:none;transition:all .25s;margin-top:1rem}
.vw-btn-submit:hover{background:var(--gl);letter-spacing:.24em}

/* Account Status Cards */
.vw-acc-status{padding:2.5rem 2rem;border:1px solid var(--border);border-radius:2px;text-align:center;margin-bottom:2rem;background:var(--d2)}
.vw-acc-active{border-color:var(--gold);background:rgba(184,151,42,0.05)}
.vw-acc-pending{border-color:rgba(227,180,90,0.4);background:rgba(227,180,90,0.04)}
.vw-acc-expired{border-color:rgba(227,112,96,0.3);background:rgba(227,112,96,0.04)}
.vw-acc-status-tag{font-size:10px;letter-spacing:.28em;text-transform:uppercase;font-weight:500;padding:.4rem 1rem;border-radius:50px;display:inline-block;margin-bottom:1.25rem}
.vw-acc-active .vw-acc-status-tag{color:var(--gold);background:rgba(184,151,42,.15);border:1px solid rgba(184,151,42,.4)}
.vw-acc-pending .vw-acc-status-tag{color:#E3B45A;background:rgba(227,180,90,.12);border:1px solid rgba(227,180,90,.35)}
.vw-acc-expired .vw-acc-status-tag{color:#E37060;background:rgba(227,112,96,.1);border:1px solid rgba(227,112,96,.3)}
.vw-acc-status-plan{font-family:var(--fd);font-size:2rem;color:var(--gl);font-style:italic;font-weight:400;line-height:1.2;margin-bottom:.7rem}
.vw-acc-status-expires{font-size:14px;color:var(--cream);font-weight:300;line-height:1.7}
.vw-acc-status-expires strong{color:var(--gl);font-weight:500}
.vw-acc-warn{margin-top:1rem;padding:.7rem 1rem;background:rgba(227,180,90,.08);color:#E3B45A;font-size:12.5px;border-radius:2px;border:1px dashed rgba(227,180,90,.3)}

.vw-acc-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;margin:2rem 0}
.vw-btn-primary,.vw-btn-secondary{padding:.95rem 2rem;font-family:var(--fb);font-size:11.5px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;font-weight:500;border-radius:2px;text-decoration:none;display:inline-block;transition:all .25s}
.vw-btn-primary{background:var(--gold);color:var(--dark);border:1px solid var(--gold)}
.vw-btn-primary:hover{background:var(--gl);letter-spacing:.22em}
.vw-btn-secondary{background:transparent;color:var(--gl);border:1px solid var(--border)}
.vw-btn-secondary:hover{border-color:var(--gold);color:var(--cream)}
.vw-btn-link{color:var(--muted);font-size:12.5px;text-decoration:none;letter-spacing:.05em;transition:color .2s}
.vw-btn-link:hover{color:var(--gl)}

/* Account info */
.vw-acc-info{margin-top:3rem;padding-top:3rem;border-top:1px solid var(--border)}
.vw-acc-info h3{font-family:var(--fd);font-size:1.3rem;color:var(--cream);font-weight:400;margin-bottom:1.5rem;font-style:italic}
.vw-acc-info-grid{background:var(--d2);border:1px solid var(--border);padding:1.5rem 2rem;border-radius:2px}
.vw-acc-info-row{display:flex;justify-content:space-between;align-items:center;padding:.85rem 0;border-bottom:1px solid rgba(184,151,42,.08)}
.vw-acc-info-row:last-child{border-bottom:none}
.vw-acc-lbl{font-size:11px;color:var(--muted);letter-spacing:.15em;text-transform:uppercase;font-weight:500}
.vw-acc-val{font-size:14px;color:var(--cream);font-weight:300}
.vw-acc-info-actions{display:flex;gap:2rem;margin-top:1.5rem;justify-content:center}

/* Payment Box */
.vw-payment-box{background:var(--d2);border:1px solid var(--gold);border-radius:2px;padding:2.5rem 2rem;margin:2rem 0}
.vw-pay-grid{display:grid;grid-template-columns:auto 1fr;gap:2.5rem;align-items:center}
.vw-pay-qr{text-align:center}
.vw-pay-qr-label{font-size:10px;letter-spacing:.25em;color:var(--gold);text-transform:uppercase;font-weight:500;margin-bottom:1rem}
.vw-pay-qr-img{width:240px;height:240px;background:white;padding:8px;border-radius:4px;display:block;margin:0 auto}
.vw-pay-qr-hint{font-size:11px;color:var(--muted);font-style:italic;margin-top:.85rem;letter-spacing:.04em}

.vw-pay-info{display:flex;flex-direction:column;gap:1rem}
.vw-pay-info-row{display:flex;flex-direction:column;gap:.3rem;padding:.85rem 1rem;background:var(--dark);border-radius:2px;border:1px solid var(--border)}
.vw-pay-info-row.vw-pay-amount{border-color:var(--gold);background:rgba(184,151,42,.05)}
.vw-pay-info-row.vw-pay-note{border-color:rgba(227,180,90,.3)}
.vw-pay-lbl{font-size:10px;letter-spacing:.2em;color:var(--muted);text-transform:uppercase;font-weight:500}
.vw-pay-lbl em{font-style:italic;color:#E3B45A;text-transform:none;font-size:1em;letter-spacing:0}
.vw-pay-val{font-size:14px;color:var(--cream);font-weight:400;letter-spacing:.01em;display:flex;align-items:center;gap:.5rem;justify-content:space-between}
.vw-pay-val em{font-size:11px;color:var(--gold);font-style:italic;letter-spacing:.02em;font-weight:300;flex-shrink:0}
.vw-pay-big{font-family:var(--fd);font-size:1.6rem;color:var(--gl);font-style:italic;font-weight:400}
.vw-mono{font-family:'Courier New',monospace;font-size:13px;color:var(--gl);background:rgba(0,0,0,.3);padding:.4rem .6rem;border-radius:2px}
.vw-copyable{cursor:pointer;transition:background .15s}
.vw-copyable:hover{color:var(--gl)}

.vw-pay-warning{margin-top:2rem;padding:1rem 1.25rem;background:rgba(227,180,90,.06);border:1px dashed rgba(227,180,90,.3);border-radius:2px;font-size:12.5px;color:var(--cream);line-height:1.7}
.vw-pay-warning strong{color:#E3B45A}
.vw-pay-warning code{background:rgba(0,0,0,.3);color:var(--gl);padding:.15rem .4rem;font-family:'Courier New',monospace;border-radius:2px;font-size:.95em}

.vw-payment-steps{background:var(--d2);border:1px solid var(--border);padding:2rem;margin:2rem 0;border-radius:2px}
.vw-payment-steps h3{font-family:var(--fd);font-size:1.3rem;color:var(--cream);font-weight:400;margin:0 0 1.25rem;font-style:italic}
.vw-payment-steps ol{margin:0;padding-left:1.25rem;color:var(--cream)}
.vw-payment-steps li{font-size:14px;line-height:1.85;margin-bottom:.85rem;color:var(--cream);font-weight:300}
.vw-payment-steps li:last-child{margin-bottom:0}
.vw-payment-steps strong{color:var(--gl);font-weight:500}

.vw-faq{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border)}
.vw-faq h3{font-family:var(--fd);font-size:1.3rem;color:var(--cream);font-weight:400;margin-bottom:1.5rem;font-style:italic}
.vw-faq details{background:var(--d2);border:1px solid var(--border);border-radius:2px;margin-bottom:.75rem}
.vw-faq summary{padding:1rem 1.25rem;cursor:pointer;font-size:14px;color:var(--cream);font-weight:400;list-style:none;display:flex;justify-content:space-between;align-items:center;transition:color .2s}
.vw-faq summary:hover{color:var(--gl)}
.vw-faq summary::after{content:'+';color:var(--gold);font-family:var(--fd);font-style:italic;font-size:1.4rem;font-weight:300;line-height:1;transition:transform .2s}
.vw-faq details[open] summary::after{transform:rotate(45deg)}
.vw-faq details[open] summary{border-bottom:1px solid var(--border)}
.vw-faq details p{padding:1.25rem;margin:0;color:var(--muted);font-size:13.5px;line-height:1.75;font-weight:300}
.vw-faq details a{color:var(--gl)}

/* Restricted page */
.vw-restricted{text-align:center;padding:4rem 2rem;background:var(--d2);border:1px dashed rgba(184,151,42,.3);border-radius:2px}
.vw-restricted-icon{font-size:3rem;margin-bottom:1.5rem;opacity:.5}
.vw-restricted h3{font-family:var(--fd);font-size:1.6rem;color:var(--cream);font-weight:400;font-style:italic;margin-bottom:1rem}
.vw-restricted p{font-size:14px;color:var(--muted);font-weight:300;line-height:1.75;max-width:500px;margin:0 auto 1.5rem}

.vw-empty-state{text-align:center;padding:3rem 1rem;color:var(--muted);font-size:14px;line-height:1.7}
.vw-empty-state a{color:var(--gl)}

/* Reports list */
.vw-reports-list{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:2rem}
.vw-report-card{display:block;background:var(--d2);border:1px solid var(--border);padding:1.85rem;text-decoration:none;border-radius:2px;transition:border-color .25s}
.vw-report-card:hover{border-color:var(--gold)}
.vw-report-date{font-size:11px;color:var(--gold);letter-spacing:.18em;text-transform:uppercase;font-weight:500;margin-bottom:.7rem}
.vw-report-title{font-family:var(--fd);font-size:1.5rem;color:var(--cream);font-weight:400;margin:0 0 .85rem;line-height:1.3}
.vw-report-excerpt{font-size:13.5px;color:var(--muted);font-weight:300;line-height:1.7;margin:0 0 1rem}
.vw-report-link{font-size:12px;color:var(--gl);font-style:italic;font-family:var(--fd);letter-spacing:.02em}

/* Blog grid */
.vw-blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem}
.vw-blog-card{background:var(--d2);border:1px solid var(--border);border-radius:2px;overflow:hidden;transition:border-color .25s}
.vw-blog-card:hover{border-color:var(--gold)}
.vw-blog-link{text-decoration:none;display:block;color:inherit}
.vw-blog-thumb{width:100%;aspect-ratio:16/9;overflow:hidden;background:var(--dark)}
.vw-blog-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.vw-blog-body{padding:1.5rem 1.5rem 1.85rem}
.vw-blog-date{font-size:10.5px;color:var(--gold);letter-spacing:.18em;text-transform:uppercase;font-weight:500;margin-bottom:.85rem}
.vw-blog-title{font-family:var(--fd);font-size:1.25rem;color:var(--cream);font-weight:400;margin:0 0 .75rem;line-height:1.35}
.vw-blog-excerpt{font-size:13px;color:var(--muted);font-weight:300;line-height:1.7;margin:0 0 1rem}
.vw-blog-readmore{font-size:11.5px;color:var(--gl);font-style:italic;font-family:var(--fd);letter-spacing:.04em}

/* Pagination */
.vw-pagination{margin:3rem 0;display:flex;justify-content:center;gap:.5rem}
.vw-pagination .page-numbers,.vw-pagination a,.vw-pagination .current{padding:.6rem 1rem;border:1px solid var(--border);color:var(--muted);text-decoration:none;font-size:13px;border-radius:2px;transition:all .2s}
.vw-pagination a:hover{border-color:var(--gold);color:var(--gl)}
.vw-pagination .current{background:var(--gold);color:var(--dark);border-color:var(--gold)}

/* Static pages (Điều khoản, Bảo mật, Single post) */
.vw-static-page{padding-top:2rem}
.vw-page-content{font-size:15px;line-height:1.85;color:var(--cream);font-weight:300}
.vw-page-content h2{font-family:var(--fd);font-size:1.55rem;color:var(--gl);font-weight:400;margin:2.5rem 0 1rem;font-style:italic;letter-spacing:-.005em}
.vw-page-content h2:first-child{margin-top:0}
.vw-page-content h3{font-family:var(--fd);font-size:1.2rem;color:var(--cream);font-weight:400;margin:1.75rem 0 .85rem;font-style:italic}
.vw-page-content p{margin:0 0 1.25rem;color:#C8C2B5}
.vw-page-content ul,.vw-page-content ol{margin:0 0 1.5rem;padding-left:1.25rem;color:#C8C2B5}
.vw-page-content li{margin-bottom:.75rem;line-height:1.85}
.vw-page-content strong{color:var(--cream);font-weight:500}
.vw-page-content em{color:var(--muted)}
.vw-page-content a{color:var(--gl);text-decoration:none;border-bottom:1px dashed rgba(184,151,42,.3);transition:border-color .2s}
.vw-page-content a:hover{border-bottom-color:var(--gl)}

.vw-single-thumb{margin:0 0 2.5rem;border-radius:2px;overflow:hidden}
.vw-single-thumb img{width:100%;height:auto;display:block}
.vw-post-footer{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border)}

@media(max-width:760px){
  .vw-account-page{padding:5rem 1.25rem}
  .vw-form-section{padding:1.5rem 1.25rem}
  .vw-plan-tabs{grid-template-columns:repeat(2,1fr)}
  .vw-form-grid{grid-template-columns:1fr}
  .vw-fg-full{grid-column:span 1}
  .vw-pay-grid{grid-template-columns:1fr;gap:2rem;text-align:center}
  .vw-pay-qr-img{width:200px;height:200px}
  .vw-blog-grid{grid-template-columns:1fr}
  .vw-acc-info-row{flex-direction:column;align-items:flex-start;gap:.3rem}
}

/* ===========================================================
   VWEALTH v2.0 — STYLES BỔ SUNG CHO PREVIEW MỚI
   =========================================================== */

/* COMMON PAGE WRAP */
.page-wrap{padding:6rem 2rem 6rem;min-height:100vh}
.page-wrap .shdr{text-align:center;margin-bottom:3rem;padding:0 1rem}
.page-wrap .stag{font-size:11px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;margin-bottom:1rem;font-weight:500}
.page-wrap .stitle{font-family:var(--fd);font-size:2.8rem;font-weight:400;line-height:1.15;color:var(--cream);margin:0 0 1rem}
.page-wrap .stitle em{color:var(--gl);font-style:italic}
.page-wrap .ssub{font-size:14.5px;color:var(--muted);font-style:italic;line-height:1.7;max-width:560px;margin:0 auto;font-family:var(--fd)}

/* ============ AUTH FORMS (Đăng ký, Đăng nhập, Quên MK, Đặt lại) ============ */
.auth-wrap .page-content{max-width:520px}
.auth-errors{background:rgba(227,112,96,0.08);border:1px solid rgba(227,112,96,0.4);padding:0.85rem 1.2rem;margin-bottom:1.5rem;border-radius:2px;font-size:13.5px;color:#E37060}
.auth-errors p{margin:0.3rem 0}
.auth-errors a{color:var(--gl);text-decoration:underline}

.form-card{background:var(--d2);border:1px solid var(--border);padding:2.5rem 2rem;border-radius:2px}
.form-card .fg{margin-bottom:1.4rem}
.form-card label{display:block;font-size:11px;letter-spacing:2px;color:var(--gold);text-transform:uppercase;font-weight:500;margin-bottom:0.6rem}
.form-card input[type="text"],.form-card input[type="email"],.form-card input[type="password"],.form-card input[type="tel"],.form-card input[type="number"],.form-card textarea,.form-card select{width:100%;padding:0.85rem 1rem;background:var(--dark);border:1px solid var(--border);color:var(--cream);font-size:14.5px;font-family:var(--fb);border-radius:2px;transition:border-color 0.25s}
.form-card input:focus,.form-card textarea:focus,.form-card select:focus{outline:none;border-color:var(--gold)}
.form-card .fg-hint{font-size:11.5px;color:var(--muted);font-style:italic;margin-top:0.45rem;line-height:1.5}
.btn-submit{width:100%;padding:1rem 1.5rem;background:var(--gold);color:var(--dark);border:0;font-size:13px;letter-spacing:2.5px;text-transform:uppercase;font-weight:600;cursor:pointer;border-radius:2px;transition:background 0.25s;margin-top:0.5rem}
.btn-submit:hover{background:var(--gl)}
.form-divider{text-align:center;color:var(--muted);font-size:12px;margin:2rem 0 1.5rem;position:relative}
.form-divider::before,.form-divider::after{content:'';position:absolute;top:50%;width:42%;height:1px;background:var(--border)}
.form-divider::before{left:0}.form-divider::after{right:0}
.form-note{text-align:center;font-size:13.5px;color:var(--muted);margin:0.85rem 0 0;line-height:1.7}
.form-note a{color:var(--gl);text-decoration:none;font-weight:500;border-bottom:1px dashed rgba(184,151,42,0.3)}
.form-note a:hover{border-bottom-color:var(--gl)}

.dn-forgot{text-align:right;margin-top:-0.8rem;margin-bottom:1.2rem}
.dn-forgot a{color:var(--gl);font-size:12.5px;text-decoration:none;font-style:italic;font-family:var(--fd)}
.dn-forgot a:hover{text-decoration:underline}

/* Password strength meter */
.pwd-strength{display:flex;gap:6px;margin-top:0.65rem}
.pwd-bar{flex:1;height:5px;background:#2A2A24;border-radius:2px;transition:background 0.3s}
.pwd-bar.weak{background:#E37060}
.pwd-bar.medium{background:#E3B45A}
.pwd-bar.strong{background:#7BA672}
.pwd-strength-label{font-size:11px;color:var(--muted);margin-top:0.45rem}
.pwd-strength-label.weak{color:#E37060}
.pwd-strength-label.medium{color:#E3B45A}
.pwd-strength-label.strong{color:#7BA672}

/* Success state card (forgot password sent, reset done) */
.success-card{background:var(--d2);border:1px solid var(--gold);padding:2.5rem 2rem;border-radius:2px;text-align:center}
.success-icon{display:inline-block;width:60px;height:60px;line-height:58px;background:var(--gold);color:var(--dark);font-size:28px;border-radius:50%;font-weight:600;margin-bottom:1.25rem}
.success-title{font-family:var(--fd);font-style:italic;font-size:1.4rem;color:var(--cream);margin-bottom:0.75rem}
.success-msg{color:var(--muted);font-size:14px;line-height:1.7;margin:0.6rem 0}
.success-email{display:inline-block;background:var(--dark);border:1px solid var(--gold);padding:0.65rem 1.25rem;color:var(--gl);font-family:var(--fm);font-size:14px;margin:1rem 0;border-radius:2px}
.success-instructions{background:var(--dark);border:1px solid var(--border);padding:1.25rem;text-align:left;font-size:13px;color:#C8C2B5;line-height:2;margin:1.5rem 0;border-radius:2px}
.success-actions{display:flex;gap:0.85rem;justify-content:center;margin-top:1.5rem;flex-wrap:wrap}
.btn-primary{display:inline-block;padding:0.85rem 1.5rem;background:var(--gold);color:var(--dark);text-decoration:none;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:600;border-radius:2px;transition:background 0.25s}
.btn-primary:hover{background:var(--gl)}
.btn-secondary{display:inline-block;padding:0.85rem 1.5rem;background:transparent;color:var(--gl);border:1px solid var(--gold);text-decoration:none;font-size:12px;letter-spacing:2px;text-transform:uppercase;font-weight:600;border-radius:2px;transition:all 0.25s}
.btn-secondary:hover{background:rgba(184,151,42,0.1)}

/* ============ DASHBOARD ============ */
.dashboard-wrap{padding-top:5rem}
.dashboard-notif{background:rgba(123,166,114,0.1);border:1px solid #7BA672;color:#7BA672;padding:0.85rem 1.2rem;border-radius:2px;margin-bottom:2rem;font-size:13.5px}
.welcome-hdr{margin-bottom:2.5rem}
.welcome-tag{font-size:11px;letter-spacing:3px;color:var(--gold);text-transform:uppercase;margin-bottom:1rem;font-weight:500}
.welcome-title{font-family:var(--fd);font-size:2.5rem;font-weight:400;line-height:1.15;color:var(--cream);margin:0}
.welcome-title em{color:var(--gl);font-style:italic}

.welcome-banner{display:flex;gap:1rem;align-items:flex-start;background:rgba(184,151,42,0.06);border:1px solid var(--gold);border-radius:2px;padding:1.25rem 1.5rem;margin-bottom:2rem;position:relative}
.welcome-banner-icon{flex-shrink:0;width:36px;height:36px;line-height:34px;text-align:center;background:var(--gold);color:var(--dark);border-radius:50%;font-weight:700;font-size:17px}
.welcome-banner-content{flex:1}
.welcome-banner-title{font-family:var(--fd);font-style:italic;font-size:1.05rem;color:var(--cream);margin-bottom:0.3rem}
.welcome-banner-text{font-size:13.5px;color:#C8C2B5;line-height:1.65}
.welcome-banner-close{background:transparent;border:0;color:var(--muted);font-size:24px;cursor:pointer;padding:0;line-height:1;width:24px;height:24px}
.welcome-banner-close:hover{color:var(--gl)}

/* Status card */
.status-card{background:var(--d2);border:1px solid var(--border);border-radius:2px;padding:2rem 1.75rem;margin-bottom:2rem;border-left:3px solid var(--border)}
.status-card.active-state{border-left-color:#7BA672}
.status-card.pending-state{border-left-color:#E3B45A}
.status-card.expired-state{border-left-color:#E37060}
.status-tag{display:inline-block;font-size:10.5px;letter-spacing:2.5px;padding:5px 12px;border-radius:50px;text-transform:uppercase;font-weight:600;margin-bottom:1rem}
.tag-none{background:rgba(138,133,117,0.15);color:var(--muted);border:1px solid var(--border)}
.tag-pending{background:rgba(227,180,90,0.1);color:#E3B45A;border:1px solid rgba(227,180,90,0.4)}
.tag-active{background:rgba(123,166,114,0.1);color:#7BA672;border:1px solid rgba(123,166,114,0.4)}
.tag-expired{background:rgba(227,112,96,0.1);color:#E37060;border:1px solid rgba(227,112,96,0.4)}
.status-title{font-family:var(--fd);font-size:1.5rem;font-style:italic;color:var(--cream);margin-bottom:0.5rem;font-weight:400}
.status-sub{color:var(--muted);font-size:13.5px;line-height:1.7;margin:0}
.status-sub strong{color:var(--cream);font-weight:500}
.status-renew-link{margin-top:0.85rem;font-size:13px}
.status-renew-link a{color:var(--gl);text-decoration:none;border-bottom:1px dashed rgba(184,151,42,0.3);font-style:italic}

/* Renewal reminder */
.renewal-reminder{display:flex;gap:1rem;align-items:center;background:rgba(227,180,90,0.06);border:1px solid #E3B45A;border-radius:2px;padding:1.1rem 1.4rem;margin-bottom:2rem;flex-wrap:wrap}
.renewal-reminder.urgent{background:rgba(227,112,96,0.06);border-color:#E37060}
.renewal-reminder.urgent .renewal-btn{background:#E37060;color:#fff}
.renewal-text{flex:1;font-size:13.5px;color:#C8C2B5;line-height:1.65;min-width:200px}
.renewal-text strong{color:var(--cream)}
.renewal-btn{flex-shrink:0;padding:0.7rem 1.25rem;background:#E3B45A;color:#0A0A08;text-decoration:none;font-size:11.5px;letter-spacing:2px;text-transform:uppercase;font-weight:600;border-radius:2px;transition:filter 0.25s}
.renewal-btn:hover{filter:brightness(1.1)}

/* Stats grid */
.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}
.stat-card{background:var(--d2);border:1px solid var(--border);padding:1.5rem 1.25rem;text-align:center;border-radius:2px}
.stat-label{font-size:10.5px;letter-spacing:2px;color:var(--gold);text-transform:uppercase;margin-bottom:0.6rem;font-weight:500}
.stat-value{font-family:var(--fd);font-size:2.4rem;color:var(--cream);font-weight:400;line-height:1;margin-bottom:0.25rem}
.stat-unit{font-size:0.8rem;color:var(--muted);font-style:italic;font-weight:300;margin-left:0.35rem;letter-spacing:0}
.stat-hint{font-size:11.5px;color:var(--muted);font-style:italic;font-family:var(--fd)}

.quick-actions{display:flex;gap:0.85rem;flex-wrap:wrap;margin-bottom:2.5rem}

/* Recent reports list */
.recent-reports{margin-top:3rem}
.section-title{font-family:var(--fd);font-style:italic;font-size:1.4rem;color:var(--cream);font-weight:400;margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:baseline;gap:1rem;flex-wrap:wrap}
.section-title-link{font-size:12px;color:var(--gl);text-decoration:none;font-style:normal;font-family:var(--fb);font-weight:400;letter-spacing:1px}
.reports-list{display:flex;flex-direction:column;gap:0.85rem}
.report-card{display:flex;gap:1.25rem;align-items:center;background:var(--d2);border:1px solid var(--border);padding:1rem 1.25rem;text-decoration:none;border-radius:2px;transition:border-color 0.2s,background 0.2s}
.report-card:hover{border-color:var(--gold);background:var(--d3)}
.report-thumb{flex-shrink:0;width:50px;height:50px;line-height:48px;text-align:center;background:var(--dark);border:1px solid var(--gold);font-family:var(--fd);font-size:1.05rem;color:var(--gold);font-style:italic;font-weight:400;border-radius:2px}
.report-content{flex:1;min-width:0}
.report-meta{font-size:10.5px;letter-spacing:1.5px;color:var(--gold);text-transform:uppercase;font-weight:500;margin-bottom:0.25rem}
.report-title{font-family:var(--fd);font-size:1rem;color:var(--cream);font-weight:400;line-height:1.4;margin-bottom:0.3rem;font-style:italic}
.report-excerpt{font-size:12.5px;color:var(--muted);line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.report-arrow{flex-shrink:0;color:var(--gold);font-size:18px}

/* Pricing section trong dashboard */
.pricing-section{margin-top:3rem;padding:2.5rem 1.5rem;background:var(--d2);border:1px solid var(--border);border-radius:2px}
.pricing-section.renewal-section{border-left:3px solid var(--gold)}
.pricing-header{text-align:center;margin-bottom:2rem}
.pricing-header h3{font-family:var(--fd);font-style:italic;font-size:1.5rem;color:var(--cream);font-weight:400;margin-bottom:0.5rem}
.pricing-header p{color:var(--muted);font-size:13.5px;line-height:1.7;margin:0}
.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}
.pricing-card{background:var(--dark);border:1px solid var(--border);padding:1.5rem 1.25rem;text-align:center;border-radius:2px;position:relative;transition:border-color 0.25s,transform 0.25s}
.pricing-card:hover{border-color:var(--gold);transform:translateY(-2px)}
.pricing-card.featured{border-color:var(--gold);background:rgba(184,151,42,0.04)}
.pricing-badge{position:absolute;top:-9px;left:50%;transform:translateX(-50%);background:var(--gold);color:var(--dark);font-size:9.5px;letter-spacing:1.5px;padding:3px 10px;text-transform:uppercase;font-weight:700;border-radius:50px;white-space:nowrap}
.pricing-name{font-size:11px;letter-spacing:2px;color:var(--gold);text-transform:uppercase;margin-bottom:0.85rem;font-weight:500}
.pricing-price{font-family:var(--fd);font-size:1.85rem;color:var(--cream);font-weight:400;line-height:1;margin-bottom:0.25rem}
.pricing-price em{font-size:0.65em;color:var(--muted);font-style:normal;margin-left:2px}
.pricing-period{font-size:11.5px;color:var(--muted);font-style:italic;font-family:var(--fd);margin-bottom:0.5rem}
.pricing-save{font-size:10.5px;letter-spacing:1px;color:#7BA672;text-transform:uppercase;margin-bottom:1rem;font-weight:500;height:14px}
.pricing-save.zero{color:var(--muted)}
.pricing-features{list-style:none;padding:0;margin:0 0 1.25rem;font-size:12px;color:#C8C2B5;line-height:1.85}
.pricing-features li{padding:0.25rem 0;border-bottom:1px solid var(--border)}
.pricing-features li:last-child{border-bottom:0}
.pricing-btn{display:block;width:100%;padding:0.7rem 1rem;background:transparent;color:var(--gl);border:1px solid var(--gold);font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:500;cursor:pointer;border-radius:2px;transition:all 0.25s;font-family:var(--fb)}
.pricing-card.featured .pricing-btn{background:var(--gold);color:var(--dark)}
.pricing-btn:hover{background:var(--gold);color:var(--dark)}
.pricing-foot{text-align:center;color:var(--muted);font-size:12px;font-style:italic;font-family:var(--fd);margin:0}

/* Account info */
.acc-info-section{margin-top:3rem;padding-top:2.5rem;border-top:1px solid var(--border)}
.acc-info-grid{background:var(--d2);border:1px solid var(--border);padding:1.5rem;margin-bottom:1.5rem;border-radius:2px}
.acc-info-row{display:flex;justify-content:space-between;align-items:center;padding:0.75rem 0;border-bottom:1px solid var(--border);font-size:13.5px}
.acc-info-row:last-child{border-bottom:0}
.acc-lbl{color:var(--muted);font-size:12.5px}
.acc-val{color:var(--cream)}
.acc-val.mono{font-family:var(--fm);font-size:12.5px;color:var(--gl);background:var(--dark);padding:3px 8px;border-radius:2px}
.acc-info-actions{display:flex;gap:1.5rem;flex-wrap:wrap}
.btn-link{background:transparent;border:0;color:var(--gl);font-size:13px;cursor:pointer;text-decoration:none;font-family:var(--fd);font-style:italic;border-bottom:1px dashed rgba(184,151,42,0.3);padding:0.25rem 0;letter-spacing:0.02em}
.btn-link:hover{border-bottom-color:var(--gl)}
.btn-link.danger{color:#E37060;border-bottom-color:rgba(227,112,96,0.3)}

/* ============ MODAL ============ */
.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.7);display:none;align-items:center;justify-content:center;z-index:1000;padding:1rem}
.modal-overlay.open{display:flex}
.modal-card{background:var(--d2);border:1px solid var(--border);border-radius:2px;padding:2rem;max-width:480px;width:100%;position:relative;max-height:90vh;overflow-y:auto}
.modal-large{max-width:680px}
.modal-close{position:absolute;top:1rem;right:1rem;background:transparent;border:0;color:var(--muted);font-size:26px;cursor:pointer;line-height:1;padding:0;width:32px;height:32px}
.modal-close:hover{color:var(--gl)}
.modal-title{font-family:var(--fd);font-style:italic;font-size:1.4rem;color:var(--cream);margin-bottom:0.5rem;font-weight:400}
.modal-sub{color:var(--muted);font-size:13.5px;line-height:1.7;margin-bottom:1.5rem}
.modal-actions{display:flex;gap:0.85rem;justify-content:flex-end;margin-top:1.5rem;flex-wrap:wrap}
.modal-btn-cancel{padding:0.7rem 1.25rem;background:transparent;color:var(--muted);border:1px solid var(--border);font-size:12px;letter-spacing:1.5px;text-transform:uppercase;font-weight:500;cursor:pointer;border-radius:2px;transition:all 0.25s}
.modal-btn-cancel:hover{border-color:var(--gold);color:var(--gl)}
.modal-btn-confirm{padding:0.7rem 1.5rem;background:var(--gold);color:var(--dark);border:0;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;font-weight:600;cursor:pointer;border-radius:2px;transition:background 0.25s}
.modal-btn-confirm:hover{background:var(--gl)}

/* ============ THANH TOÁN ============ */
.thanh-toan-wrap{padding-top:5rem}
.renewal-info-card{display:flex;gap:1rem;background:rgba(184,151,42,0.06);border:1px solid var(--gold);padding:1.25rem 1.5rem;border-radius:2px;margin-bottom:2rem}
.renewal-info-icon{flex-shrink:0;font-size:24px}
.renewal-info-title{font-family:var(--fd);font-style:italic;color:var(--cream);font-size:1.1rem;margin-bottom:0.3rem}
.renewal-info-text{font-size:13.5px;color:#C8C2B5;line-height:1.65}

.payment-box{background:var(--d2);border:1px solid var(--gold);border-radius:2px;padding:2rem;margin-bottom:3rem}
.payment-grid{display:grid;grid-template-columns:280px 1fr;gap:2.5rem;align-items:start}
.payment-qr-side{text-align:center;padding-right:1rem;border-right:1px solid var(--border)}
.payment-amount-tag{display:inline-block;background:var(--gold);color:var(--dark);font-size:14px;font-weight:600;letter-spacing:1px;padding:0.4rem 1rem;border-radius:2px;margin-bottom:1rem}
.payment-qr{width:240px;height:240px;background:#fff;padding:0.5rem;border-radius:4px}
.payment-qr-hint{margin-top:0.85rem;color:var(--muted);font-size:12px;font-style:italic;font-family:var(--fd)}
.payment-info-side{display:flex;flex-direction:column;gap:0.75rem}
.payment-row{display:flex;justify-content:space-between;align-items:center;padding:0.85rem 1rem;background:var(--dark);border:1px solid var(--border);border-radius:2px;font-size:13.5px}
.payment-row.copyable{cursor:pointer;transition:border-color 0.2s}
.payment-row.copyable:hover{border-color:var(--gold)}
.payment-row.copied{border-color:#7BA672!important}
.payment-row.copied::after{content:"✓ Đã copy";position:absolute;background:#7BA672;color:#fff;padding:2px 8px;font-size:10px;border-radius:2px;letter-spacing:1px}
.payment-row.note{border-color:var(--gold);background:rgba(184,151,42,0.06)}
.payment-lbl{color:var(--muted);font-size:12px;letter-spacing:1px;text-transform:uppercase}
.payment-val{color:var(--cream);font-weight:500}
.payment-val.mono{font-family:var(--fm);color:var(--gl)}
.payment-val.gold{color:var(--gold);font-size:1.05rem}
.copy-icon{margin-left:6px;opacity:0.5;font-size:13px}
.payment-warning{background:rgba(227,180,90,0.06);border:1px solid #E3B45A;border-radius:2px;padding:0.85rem 1rem;font-size:12.5px;color:#C8C2B5;line-height:1.65;margin-top:0.5rem}
.payment-warning strong{color:#E3B45A}
.payment-code{display:inline-block;background:var(--dark);color:var(--gold);font-family:var(--fm);padding:2px 8px;border-radius:2px;font-size:12px;border:1px solid rgba(184,151,42,0.4)}

.instructions-section{margin-bottom:3rem}
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.step-card{background:var(--d2);border:1px solid var(--border);padding:1.5rem;text-align:center;border-radius:2px}
.step-num{display:inline-block;width:36px;height:36px;line-height:34px;background:var(--gold);color:var(--dark);border-radius:50%;font-weight:700;font-size:15px;margin-bottom:1rem}
.step-title{font-family:var(--fd);font-style:italic;font-size:1.1rem;color:var(--cream);margin-bottom:0.5rem;font-weight:400}
.step-text{font-size:13px;color:var(--muted);line-height:1.7}

.faq-section{margin-bottom:3rem}
.faq-item{background:var(--d2);border:1px solid var(--border);padding:1.1rem 1.25rem;margin-bottom:0.75rem;border-radius:2px}
.faq-item summary{cursor:pointer;font-size:13.5px;color:var(--cream);font-weight:500;list-style:none;display:flex;justify-content:space-between;align-items:center}
.faq-item summary::after{content:'+';color:var(--gold);font-size:18px;font-weight:300;margin-left:1rem}
.faq-item[open] summary::after{content:'−'}
.faq-item p{font-size:13px;color:#C8C2B5;line-height:1.75;margin:0.85rem 0 0;padding-top:0.85rem;border-top:1px solid var(--border)}
.back-link{text-align:center;margin-top:2rem}
.back-link a{color:var(--gl);text-decoration:none;font-size:13px;font-style:italic;font-family:var(--fd)}

/* ============ BÁO CÁO LIST ============ */
.baocao-wrap{padding-top:5rem}
.bc-banner{display:flex;gap:1rem;background:rgba(227,180,90,0.06);border:1px solid #E3B45A;padding:1.25rem 1.5rem;align-items:center;margin-bottom:2rem;border-radius:2px;flex-wrap:wrap}
.bc-banner-icon{font-size:22px}
.bc-banner-content{flex:1;min-width:200px}
.bc-banner-title{font-family:var(--fd);font-style:italic;color:var(--cream);font-size:1.05rem;margin-bottom:0.25rem}
.bc-banner-text{font-size:13px;color:#C8C2B5;line-height:1.6}
.bc-banner-btn{padding:0.65rem 1.1rem;background:#E3B45A;color:#0A0A08;text-decoration:none;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:600;border-radius:2px}

.bc-search-bar{display:flex;gap:1rem;align-items:center;margin-bottom:2rem;flex-wrap:wrap}
.bc-search-form{display:flex;gap:0.5rem;flex:1;min-width:280px}
.bc-search-input{flex:1;padding:0.7rem 1rem;background:var(--d2);border:1px solid var(--border);color:var(--cream);font-size:13px;border-radius:2px}
.bc-search-input:focus{outline:none;border-color:var(--gold)}
.bc-search-btn{padding:0.7rem 1.25rem;background:var(--gold);color:var(--dark);border:0;font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:600;cursor:pointer;border-radius:2px}
.bc-stats{font-size:13px;color:var(--muted)}
.bc-stats strong{color:var(--gold)}

.bc-list{display:flex;flex-direction:column;gap:1rem}
.bc-card{display:flex;gap:1.5rem;background:var(--d2);border:1px solid var(--border);padding:1.5rem;text-decoration:none;border-radius:2px;transition:border-color 0.2s;align-items:center}
.bc-card:hover{border-color:var(--gold)}
.bc-card.locked{opacity:0.7;cursor:default;pointer-events:none}
.bc-card-thumb{flex-shrink:0;width:80px;text-align:center}
.bc-card-week{font-family:var(--fd);font-style:italic;font-size:2rem;color:var(--gold);font-weight:400;line-height:1}
.bc-card-type{font-size:9.5px;letter-spacing:1.5px;color:var(--muted);text-transform:uppercase;margin-top:0.3rem;font-weight:500}
.bc-card-lock{font-size:1.5rem;color:var(--muted);margin-top:0.5rem}
.bc-card-content{flex:1;min-width:0}
.bc-card-meta{font-size:10.5px;letter-spacing:1.5px;color:var(--gold);text-transform:uppercase;font-weight:500;margin-bottom:0.4rem}
.bc-card-title{font-family:var(--fd);font-size:1.2rem;color:var(--cream);font-weight:400;line-height:1.35;margin:0 0 0.5rem;font-style:italic}
.bc-card-excerpt{font-size:13px;color:var(--muted);line-height:1.7;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.bc-card-arrow{flex-shrink:0;color:var(--gold);font-size:20px}

.bc-empty{text-align:center;padding:4rem 2rem;background:var(--d2);border:1px dashed var(--border);border-radius:2px}
.bc-empty-icon{font-size:48px;margin-bottom:1rem;opacity:0.5}
.bc-empty-title{font-family:var(--fd);font-style:italic;font-size:1.5rem;color:var(--cream);margin-bottom:0.5rem;font-weight:400}
.bc-empty-text{color:var(--muted);font-size:14px}

.bc-paywall-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem;position:relative}
.bc-paywall-list::after{content:'';position:absolute;bottom:0;left:0;right:0;height:60%;background:linear-gradient(to bottom,transparent,var(--dark) 90%);pointer-events:none}
.bc-paywall-cta{background:var(--d2);border:2px solid var(--gold);padding:3rem 2rem;text-align:center;border-radius:2px;margin-top:1rem}
.bc-paywall-cta-icon{font-size:42px;margin-bottom:1rem}
.bc-paywall-cta-title{font-family:var(--fd);font-size:1.7rem;color:var(--cream);font-style:italic;font-weight:400;margin-bottom:0.85rem}
.bc-paywall-cta-text{color:#C8C2B5;font-size:14px;line-height:1.7;max-width:500px;margin:0 auto 1.5rem}
.bc-paywall-cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

.bc-pagination,.tintuc-pagination{display:flex;justify-content:center;gap:0.5rem;margin-top:3rem}
.bc-pagination a,.bc-pagination .current,.tintuc-pagination a,.tintuc-pagination .current{padding:0.65rem 1rem;border:1px solid var(--border);color:var(--muted);text-decoration:none;font-size:13px;border-radius:2px;transition:all 0.2s}
.bc-pagination a:hover,.tintuc-pagination a:hover{border-color:var(--gold);color:var(--gl)}
.bc-pagination .current,.tintuc-pagination .current{background:var(--gold);color:var(--dark);border-color:var(--gold)}

/* Báo cáo paywall (single post) */
.bc-paywall{background:var(--d2);border:1px solid var(--gold);padding:3rem 2rem;text-align:center;border-radius:2px;margin:2rem 0}
.bc-paywall-icon{font-size:42px;margin-bottom:1rem}
.bc-paywall-title{font-family:var(--fd);font-style:italic;font-size:1.6rem;color:var(--cream);font-weight:400;margin-bottom:0.85rem}
.bc-paywall-text{color:#C8C2B5;font-size:14px;line-height:1.7;max-width:500px;margin:0 auto 1.5rem}
.bc-paywall-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

/* ============ TIN TỨC ============ */
.tintuc-wrap{padding-top:5rem}
.tintuc-cats{display:flex;gap:0.5rem;flex-wrap:wrap;justify-content:center;margin-bottom:2.5rem}
.tintuc-cat{padding:0.55rem 1.1rem;font-size:12px;color:var(--muted);text-decoration:none;border:1px solid var(--border);border-radius:50px;transition:all 0.2s;letter-spacing:0.5px}
.tintuc-cat:hover{border-color:var(--gold);color:var(--gl)}
.tintuc-cat.active{background:var(--gold);color:var(--dark);border-color:var(--gold);font-weight:500}
.tintuc-cat small{opacity:0.7;margin-left:3px}
.tintuc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.tintuc-card{background:var(--d2);border:1px solid var(--border);border-radius:2px;transition:border-color 0.25s}
.tintuc-card:hover{border-color:var(--gold)}
.tintuc-card-link{display:block;padding:1.75rem 1.5rem;text-decoration:none;color:inherit}
.tintuc-card-cat{display:inline-block;font-size:9.5px;letter-spacing:1.8px;color:var(--gold);text-transform:uppercase;font-weight:500;margin-bottom:0.85rem;padding:3px 8px;background:rgba(184,151,42,0.1);border-radius:50px}
.tintuc-card-title{font-family:var(--fd);font-size:1.2rem;color:var(--cream);font-weight:400;line-height:1.4;margin:0 0 0.85rem;font-style:italic}
.tintuc-card-excerpt{font-size:13px;color:var(--muted);line-height:1.75;margin:0 0 1.25rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.tintuc-card-meta{display:flex;gap:0.4rem;font-size:11px;color:var(--muted);letter-spacing:0.5px}
.tintuc-empty{text-align:center;padding:4rem 2rem}

/* ============ ĐIỀU KHOẢN & BẢO MẬT ============ */
.legal-wrap{padding-top:5rem}
.legal-layout{display:grid;grid-template-columns:240px 1fr;gap:3rem;margin-top:2rem}
.legal-toc{position:sticky;top:6rem;align-self:start;background:var(--d2);border:1px solid var(--border);border-radius:2px;padding:1.5rem 1.25rem;max-height:calc(100vh - 8rem);overflow-y:auto}
.legal-toc-title{font-size:11px;letter-spacing:2px;color:var(--gold);text-transform:uppercase;font-weight:500;margin-bottom:1rem;padding-bottom:0.85rem;border-bottom:1px solid var(--border)}
.legal-toc-list{list-style:none;padding:0;margin:0;counter-reset:none}
.legal-toc-list li{margin-bottom:0.6rem}
.legal-toc-list a{color:var(--muted);font-size:12.5px;text-decoration:none;line-height:1.5;display:block;padding:0.3rem 0;transition:color 0.2s,padding 0.2s}
.legal-toc-list a:hover{color:var(--gl);padding-left:0.4rem}
.legal-content{font-size:14.5px;line-height:1.85;color:#C8C2B5;font-weight:300}
.legal-content section{margin-bottom:3rem;scroll-margin-top:6rem}
.legal-content h2{font-family:var(--fd);font-size:1.7rem;color:var(--gl);font-weight:400;margin:0 0 1.25rem;font-style:italic;letter-spacing:-0.005em}
.legal-content h3{font-family:var(--fd);font-size:1.2rem;color:var(--cream);font-weight:400;margin:1.75rem 0 0.85rem;font-style:italic}
.legal-content p{margin:0 0 1.25rem}
.legal-content ul,.legal-content ol{margin:0 0 1.5rem;padding-left:1.25rem}
.legal-content li{margin-bottom:0.7rem;line-height:1.85}
.legal-content strong{color:var(--cream);font-weight:500}
.legal-content em{color:var(--muted)}
.legal-content a{color:var(--gl);text-decoration:none;border-bottom:1px dashed rgba(184,151,42,0.3);transition:border-color 0.2s}
.legal-content a:hover{border-bottom-color:var(--gl)}

.legal-callout{padding:1.1rem 1.4rem;margin:1.5rem 0;border-radius:2px;font-size:13.5px;line-height:1.7}
.legal-callout.info{background:rgba(184,151,42,0.06);border-left:3px solid var(--gold);color:#C8C2B5}
.legal-callout.warning{background:rgba(227,180,90,0.06);border-left:3px solid #E3B45A;color:#C8C2B5}
.legal-callout.danger{background:rgba(227,112,96,0.06);border-left:3px solid #E37060;color:#C8C2B5}
.legal-callout strong{color:var(--cream)}

.legal-checklist{list-style:none;padding:0!important;margin-left:0!important}
.legal-checklist li{padding-left:1.85rem;position:relative}
.legal-checklist li.check::before{content:'✓';position:absolute;left:0;top:0;color:#7BA672;font-weight:600;font-size:1.1rem}
.legal-checklist li.cross::before{content:'✗';position:absolute;left:0;top:0;color:#E37060;font-weight:600;font-size:1.1rem}

/* ============ EDITOR ============ */
.editor-page{display:flex;flex-direction:column;height:100vh;background:var(--dark)}
.editor-topbar{display:flex;align-items:center;justify-content:space-between;background:var(--d3);border-bottom:1px solid var(--border);padding:0.85rem 1.5rem;flex-wrap:wrap;gap:1rem}
.editor-topbar-left{display:flex;align-items:center;gap:0.85rem}
.editor-back{color:var(--muted);font-size:12.5px;text-decoration:none}
.editor-back:hover{color:var(--gl)}
.editor-divider{color:var(--border)}
.editor-mode{color:var(--gold);font-size:13px;font-weight:500}
.editor-topbar-right{display:flex;gap:0.65rem;align-items:center}
.editor-autosave{font-size:11.5px;color:var(--muted);font-style:italic;font-family:var(--fd)}
.editor-autosave.saving{color:#E3B45A}
.editor-autosave.saved{color:#7BA672}
.editor-btn-secondary{padding:0.55rem 1rem;background:transparent;color:var(--gl);border:1px solid var(--border);font-size:11.5px;letter-spacing:1.5px;text-transform:uppercase;font-weight:500;cursor:pointer;border-radius:2px}
.editor-btn-secondary:hover{border-color:var(--gold)}
.editor-btn-primary{padding:0.55rem 1.1rem;background:var(--gold);color:var(--dark);border:0;font-size:11.5px;letter-spacing:1.5px;text-transform:uppercase;font-weight:600;cursor:pointer;border-radius:2px}
.editor-btn-primary:hover{background:var(--gl)}

.editor-meta{background:var(--d2);border-bottom:1px solid var(--border);padding:1rem 1.5rem}
.meta-row{display:grid;grid-template-columns:1fr 100px 180px;gap:1rem;margin-bottom:0.75rem}
.meta-row:last-child{margin-bottom:0;grid-template-columns:1fr}
.meta-field label{display:block;font-size:10px;letter-spacing:1.5px;color:var(--gold);text-transform:uppercase;font-weight:500;margin-bottom:0.4rem}
.meta-field input,.meta-field select,.meta-field textarea{width:100%;padding:0.6rem 0.85rem;background:var(--dark);border:1px solid var(--border);color:var(--cream);font-size:13.5px;font-family:var(--fb);border-radius:2px}
.meta-field input:focus,.meta-field select:focus,.meta-field textarea:focus{outline:none;border-color:var(--gold)}
.meta-field textarea{resize:vertical;min-height:50px}

.editor-toolbar{display:flex;gap:0.85rem;background:var(--d3);border-bottom:1px solid var(--border);padding:0.65rem 1.5rem;flex-wrap:wrap;align-items:center}
.tb-group{display:flex;gap:2px;border-right:1px solid var(--border);padding-right:0.85rem}
.tb-group:last-child{border-right:0}
.tb-group.tb-right{margin-left:auto;border-right:0}
.tb-group button{padding:0.4rem 0.65rem;background:transparent;color:var(--cream);border:0;font-size:12.5px;cursor:pointer;border-radius:2px;font-family:var(--fb);min-width:32px}
.tb-group button:hover{background:var(--d2);color:var(--gold)}
.tb-group button.active{background:var(--gold);color:var(--dark)}
.tb-snip-btn{font-weight:500;color:var(--gold)!important}

.editor-split{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border);overflow:hidden}
.editor-split.no-preview{grid-template-columns:1fr}
.editor-split.no-preview .preview-pane{display:none}
.split-pane{display:flex;flex-direction:column;background:var(--dark);overflow:hidden}
.pane-label{font-size:10.5px;letter-spacing:2px;color:var(--gold);text-transform:uppercase;padding:0.65rem 1.5rem;background:var(--d3);border-bottom:1px solid var(--border);font-weight:500}
.editor-pane textarea{flex:1;width:100%;background:var(--dark);color:var(--cream);border:0;padding:1.5rem;font-family:var(--fm);font-size:13.5px;line-height:1.7;resize:none}
.editor-pane textarea:focus{outline:none}
.preview-pane{overflow-y:auto}
.preview-content{padding:2rem 2.5rem;font-size:14.5px;line-height:1.85;color:#C8C2B5}
.preview-content h2{font-family:var(--fd);font-size:1.6rem;color:var(--gl);font-style:italic;font-weight:400;margin:1.5rem 0 1rem}
.preview-content h2:first-child{margin-top:0}
.preview-content h3{font-family:var(--fd);font-size:1.2rem;color:var(--cream);font-style:italic;font-weight:400;margin:1.5rem 0 0.85rem}
.preview-content p{margin:0 0 1.25rem;color:#C8C2B5}
.preview-content ul,.preview-content ol{margin:0 0 1.25rem;padding-left:1.25rem}
.preview-content table{border-collapse:collapse;width:100%;margin:1rem 0;font-size:13px}
.preview-content table th,.preview-content table td{border:1px solid var(--border);padding:0.5rem 0.85rem;text-align:left}
.preview-content table th{background:var(--d2);color:var(--gold);font-weight:500}

.snippet-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0.75rem;max-height:60vh;overflow-y:auto}
.snip-item{background:var(--dark);border:1px solid var(--border);padding:1rem 1.25rem;cursor:pointer;border-radius:2px;transition:border-color 0.2s}
.snip-item:hover{border-color:var(--gold)}
.snip-tag{font-size:9.5px;letter-spacing:1.5px;color:var(--gold);text-transform:uppercase;font-weight:600;margin-bottom:0.4rem}
.snip-name{font-family:var(--fd);font-style:italic;color:var(--cream);font-size:1rem;margin-bottom:0.25rem}
.snip-desc{font-size:11.5px;color:var(--muted);line-height:1.5}

.publish-summary{background:var(--dark);border:1px solid var(--border);padding:1rem 1.25rem;margin:1rem 0;border-radius:2px}
.summary-row{display:flex;justify-content:space-between;padding:0.45rem 0;font-size:13px;border-bottom:1px solid var(--border)}
.summary-row:last-child{border-bottom:0}
.summary-row span{color:var(--muted)}
.summary-row strong{color:var(--cream)}
.publish-email-toggle{display:flex;align-items:center;gap:0.85rem;background:rgba(184,151,42,0.06);border:1px solid var(--gold);padding:0.85rem 1rem;margin:1rem 0;border-radius:2px;cursor:pointer;font-size:13.5px;color:#C8C2B5}
.publish-email-toggle input{width:18px;height:18px;cursor:pointer;accent-color:var(--gold)}
.publish-no-subscribers{background:rgba(138,133,117,0.1);border:1px solid var(--border);padding:0.85rem 1rem;margin:1rem 0;border-radius:2px;font-size:13px;color:var(--muted)}

/* ============ SITE HEADER & FOOTER ============ */
.site-header{position:fixed;top:0;left:0;right:0;background:rgba(10,10,8,0.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);z-index:100}
.nav{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;max-width:1200px;margin:0 auto}
.logo{font-family:var(--fd);font-style:italic;font-size:1.4rem;color:var(--gl);text-decoration:none;letter-spacing:2px}
.logo span{font-style:normal;color:var(--cream);letter-spacing:3px}
.nav-links{display:flex;gap:1.5rem;align-items:center}
.nav-links a{color:var(--muted);font-size:13px;text-decoration:none;transition:color 0.2s;letter-spacing:0.3px}
.nav-links a:hover{color:var(--gl)}
.btn-nav{font-weight:500}
.btn-p.sm{padding:0.5rem 1rem!important;font-size:11.5px!important;background:var(--gold);color:var(--dark)!important;letter-spacing:1.5px;text-transform:uppercase;font-weight:600;border-radius:2px;border:0!important}
.btn-p.sm:hover{background:var(--gl);color:var(--dark)!important}

.nav-toggle{display:none;background:transparent;border:0;cursor:pointer;padding:0.5rem;flex-direction:column;gap:4px}
.nav-toggle span{display:block;width:22px;height:2px;background:var(--cream)}

.mobile-menu{display:none;position:fixed;top:60px;left:0;right:0;background:var(--d2);border-bottom:1px solid var(--border);flex-direction:column;padding:1.5rem 2rem;gap:1.25rem;z-index:99}
.mobile-menu.open{display:flex}
.mobile-menu a{color:var(--muted);font-size:14px;text-decoration:none}
.mobile-menu a:hover{color:var(--gl)}
.mbtns{display:flex;gap:0.85rem;margin-top:0.5rem;padding-top:1rem;border-top:1px solid var(--border)}
.mbtns a{flex:1;text-align:center;padding:0.7rem!important}

.site-footer{padding:2rem;text-align:center;border-top:1px solid var(--border);background:var(--d2);margin-top:4rem;font-size:12.5px;color:var(--muted)}
.site-footer .flinks{margin-top:0.85rem;display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}
.site-footer .flinks a{color:var(--muted);text-decoration:none}
.site-footer .flinks a:hover{color:var(--gl)}

/* ============ RESPONSIVE ============ */
@media(max-width:920px){
  .stats-grid,.steps-grid,.tintuc-grid,.pricing-grid{grid-template-columns:repeat(2,1fr)}
  .legal-layout{grid-template-columns:1fr}
  .legal-toc{position:relative;top:0;max-height:none}
  .payment-grid{grid-template-columns:1fr;gap:1.5rem}
  .payment-qr-side{padding-right:0;border-right:0;border-bottom:1px solid var(--border);padding-bottom:1.5rem}
}
@media(max-width:680px){
  .nav-links{display:none}
  .nav-toggle{display:flex}
  .page-wrap .stitle{font-size:2rem}
  .stats-grid,.steps-grid,.tintuc-grid,.pricing-grid{grid-template-columns:1fr}
  .meta-row{grid-template-columns:1fr!important}
  .editor-split{grid-template-columns:1fr}
  .preview-pane{display:none}
  .bc-card{flex-direction:column;text-align:center}
  .acc-info-row{flex-direction:column;align-items:flex-start;gap:0.3rem}
  .acc-val{text-align:left}
  .form-card{padding:1.5rem 1.25rem}
  .page-wrap{padding-left:1.25rem;padding-right:1.25rem}
}

/* ============================================================
   SINGLE POST (Blog) — Upgraded Design
   ============================================================ */

.single-post-wrap {
  background: var(--dark);
}

/* === HERO === */
.sp-hero {
  position: relative;
  background: linear-gradient(180deg, rgba(184,151,42,0.04) 0%, transparent 100%);
  border-bottom: 1px solid var(--border);
  padding: 7rem 1.5rem 3.5rem;
  overflow: hidden;
}
.sp-hero::before {
  content: '';
  position: absolute;
  top: 0; left: 50%;
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(184,151,42,0.08), transparent 70%);
  transform: translate(-50%, -50%);
  pointer-events: none;
}
.sp-hero-inner {
  max-width: 760px;
  margin: 0 auto;
  position: relative;
  text-align: center;
}
.sp-meta-row {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-bottom: 1.5rem;
  font-size: 12px;
  color: var(--muted);
  letter-spacing: 0.05em;
}
.sp-cat-tag {
  display: inline-block;
  padding: 0.4rem 1rem;
  background: rgba(184,151,42,0.12);
  border: 1px solid rgba(184,151,42,0.3);
  border-radius: 50px;
  color: var(--gold);
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  text-decoration: none;
  font-weight: 500;
  transition: all 0.2s;
}
.sp-cat-tag:hover {
  background: rgba(184,151,42,0.2);
  border-color: var(--gold);
}
.sp-meta-sep { color: var(--border); }
.sp-date, .sp-reading-time { color: var(--muted); font-size: 12px; }

.sp-title {
  font-family: var(--fd);
  font-size: clamp(2rem, 5vw, 3.25rem);
  font-weight: 400;
  line-height: 1.15;
  color: var(--cream);
  margin: 0 0 1.5rem;
  letter-spacing: -0.01em;
}
.sp-excerpt {
  font-family: var(--fd);
  font-style: italic;
  font-size: clamp(15px, 1.8vw, 18px);
  line-height: 1.7;
  color: var(--muted);
  max-width: 600px;
  margin: 0 auto 2rem;
}

.sp-author-row {
  display: inline-flex;
  align-items: center;
  gap: 0.85rem;
  padding: 0.75rem 1.25rem;
  background: rgba(255,255,255,0.02);
  border: 1px solid var(--border);
  border-radius: 50px;
  margin-top: 1rem;
}
.sp-author-avatar {
  width: 36px; height: 36px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--gold), var(--gl));
  color: var(--dark);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: 14px;
  font-family: var(--fd);
}
.sp-author-name {
  font-size: 13px;
  color: var(--cream);
  font-weight: 500;
  text-align: left;
}
.sp-author-role {
  font-size: 11px;
  color: var(--muted);
  letter-spacing: 0.05em;
  text-align: left;
}

/* === ARTICLE CONTENT === */
.sp-article {
  max-width: 720px;
  margin: 0 auto;
  padding: 3.5rem 1.5rem 2.5rem;
}
.sp-content {
  font-size: 17px;
  line-height: 1.85;
  color: #C8C2B5;
}
.sp-content h2 {
  font-family: var(--fd);
  font-size: 2rem;
  font-weight: 400;
  color: var(--cream);
  margin: 3rem 0 1.25rem;
  letter-spacing: -0.01em;
}
.sp-content h3 {
  font-family: var(--fd);
  font-size: 1.5rem;
  font-weight: 400;
  color: var(--cream);
  margin: 2.5rem 0 1rem;
}
.sp-content p { margin: 0 0 1.5rem; }
.sp-content a { color: var(--gold); text-decoration: underline; text-decoration-color: rgba(184,151,42,0.4); text-underline-offset: 3px; }
.sp-content a:hover { text-decoration-color: var(--gold); }
.sp-content strong { color: var(--cream); font-weight: 600; }
.sp-content em { color: var(--gl); font-style: italic; }
.sp-content ul, .sp-content ol { margin: 0 0 1.5rem; padding-left: 1.5rem; }
.sp-content li { margin-bottom: 0.5rem; }
.sp-content img { max-width: 100%; height: auto; border-radius: 8px; margin: 2rem 0; border: 1px solid var(--border); }
.sp-content figure { margin: 2rem 0; }
.sp-content figcaption { text-align: center; color: var(--muted); font-size: 13px; font-style: italic; margin-top: 0.75rem; }
.sp-content blockquote {
  border-left: 3px solid var(--gold);
  padding: 0.5rem 0 0.5rem 1.5rem;
  margin: 2rem 0;
  font-family: var(--fd);
  font-style: italic;
  font-size: 19px;
  color: var(--gl);
  line-height: 1.6;
}
.sp-content code {
  background: var(--d3);
  padding: 0.2rem 0.5rem;
  border-radius: 4px;
  font-family: var(--fc), monospace;
  font-size: 0.9em;
  color: var(--gl);
}
.sp-content pre {
  background: var(--d2);
  border: 1px solid var(--border);
  padding: 1.25rem;
  border-radius: 8px;
  overflow-x: auto;
  margin: 2rem 0;
}
.sp-content pre code { background: transparent; padding: 0; }

.sp-tags {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid var(--border);
}
.sp-tag {
  font-size: 11px;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--gold);
  background: rgba(184,151,42,0.08);
  padding: 0.4rem 0.9rem;
  border-radius: 50px;
  text-decoration: none;
  border: 1px solid rgba(184,151,42,0.25);
  transition: all 0.2s;
}
.sp-tag:hover { background: rgba(184,151,42,0.18); border-color: var(--gold); }

/* === QUOTE SECTION === */
.sp-quote-section {
  max-width: 760px;
  margin: 3rem auto;
  padding: 0 1.5rem;
}
.sp-quote-inner {
  position: relative;
  background: linear-gradient(135deg, rgba(184,151,42,0.06), rgba(184,151,42,0.02));
  border: 1px solid rgba(184,151,42,0.25);
  border-radius: 12px;
  padding: 3rem 2.5rem 2.5rem;
  text-align: center;
}
.sp-quote-mark {
  position: absolute;
  top: -8px; left: 50%;
  transform: translateX(-50%);
  font-family: var(--fd);
  font-size: 5rem;
  color: var(--gold);
  background: var(--dark);
  width: 60px; height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 1px solid rgba(184,151,42,0.3);
  line-height: 1;
  padding-bottom: 1rem;
}
.sp-quote-text {
  font-family: var(--fd);
  font-style: italic;
  font-size: clamp(18px, 2.2vw, 22px);
  line-height: 1.6;
  color: var(--cream);
  margin: 0 0 1.5rem;
  border: none;
  padding: 0;
  background: transparent;
}
.sp-quote-author {
  font-size: 13px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 500;
}

/* === CTA BANNER === */
.sp-cta-banner {
  max-width: 900px;
  margin: 4rem auto;
  padding: 0 1.5rem;
}
.sp-cta-inner {
  position: relative;
  background:
    radial-gradient(circle at 20% 0%, rgba(184,151,42,0.12), transparent 60%),
    radial-gradient(circle at 80% 100%, rgba(184,151,42,0.08), transparent 60%),
    var(--d2);
  border: 1px solid rgba(184,151,42,0.3);
  border-radius: 16px;
  padding: 3.5rem 2.5rem;
  text-align: center;
  overflow: hidden;
}
.sp-cta-inner::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--gold), transparent);
}
.sp-cta-tag {
  display: inline-block;
  font-size: 11px;
  letter-spacing: 0.25em;
  color: var(--gold);
  font-weight: 500;
  margin-bottom: 1rem;
}
.sp-cta-title {
  font-family: var(--fd);
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 400;
  color: var(--cream);
  margin: 0 0 1rem;
  line-height: 1.2;
}
.sp-cta-title em { color: var(--gl); font-style: italic; }
.sp-cta-sub {
  font-size: 16px;
  line-height: 1.7;
  color: var(--muted);
  max-width: 580px;
  margin: 0 auto 2rem;
}
.sp-cta-btns {
  display: flex;
  justify-content: center;
  gap: 1rem;
  flex-wrap: wrap;
}
.sp-cta-btn-primary, .sp-cta-btn-secondary {
  padding: 0.95rem 2rem;
  border-radius: 8px;
  font-weight: 500;
  text-decoration: none;
  font-size: 14px;
  letter-spacing: 0.05em;
  transition: all 0.2s;
  display: inline-block;
}
.sp-cta-btn-primary {
  background: var(--gold);
  color: var(--dark);
  border: 1px solid var(--gold);
}
.sp-cta-btn-primary:hover {
  background: var(--gl);
  border-color: var(--gl);
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(184,151,42,0.3);
}
.sp-cta-btn-secondary {
  background: transparent;
  color: var(--cream);
  border: 1px solid var(--border);
}
.sp-cta-btn-secondary:hover {
  border-color: var(--gold);
  color: var(--gold);
}

/* === RELATED POSTS === */
.sp-related {
  max-width: 1100px;
  margin: 4rem auto 2rem;
  padding: 0 1.5rem;
}
.sp-related-inner {
  border-top: 1px solid var(--border);
  padding-top: 3rem;
}
.sp-related-header { text-align: center; margin-bottom: 2.5rem; }
.sp-related-tag {
  display: inline-block;
  font-size: 11px;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: var(--gold);
  font-weight: 500;
  margin-bottom: 0.75rem;
}
.sp-related-title {
  font-family: var(--fd);
  font-size: clamp(1.75rem, 3.5vw, 2.25rem);
  font-weight: 400;
  color: var(--cream);
  margin: 0;
}
.sp-related-title em { color: var(--gl); font-style: italic; }
.sp-related-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1.5rem;
}

/* === BACK LINK === */
.sp-back-row {
  text-align: center;
  padding: 2rem 1.5rem 4rem;
}
.sp-back-link {
  display: inline-block;
  color: var(--muted);
  font-size: 14px;
  letter-spacing: 0.05em;
  text-decoration: none;
  padding: 0.75rem 1.5rem;
  border: 1px solid var(--border);
  border-radius: 50px;
  transition: all 0.2s;
}
.sp-back-link:hover {
  color: var(--gold);
  border-color: var(--gold);
}

/* === RESPONSIVE === */
@media (max-width: 768px) {
  .sp-hero { padding: 5.5rem 1.25rem 2.5rem; }
  .sp-article { padding: 2.5rem 1.25rem 1.5rem; }
  .sp-content { font-size: 16px; }
  .sp-content h2 { font-size: 1.65rem; margin: 2.25rem 0 1rem; }
  .sp-content h3 { font-size: 1.3rem; margin: 1.85rem 0 0.85rem; }
  .sp-quote-inner { padding: 2.5rem 1.5rem 2rem; }
  .sp-quote-text { font-size: 17px; }
  .sp-cta-inner { padding: 2.5rem 1.5rem; }
  .sp-cta-btns { flex-direction: column; }
  .sp-cta-btn-primary, .sp-cta-btn-secondary { width: 100%; text-align: center; }
}
