/* RTR Exam: marketing pages (home). Loaded only where o.home is set. Decoration is transform/opacity only. */
.rx-k{display:flex;align-items:center;gap:10px;font:700 .76rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin:0 0 14px}.rx-k:before{content:"";width:26px;height:2px;background:var(--amber)}
.rx-sec{padding:clamp(48px,7vw,92px) 20px}.rx-sub{color:var(--mut);max-width:42em;font-size:1.05rem;margin:0 0 2rem}.rx-note{color:var(--mut);font-size:.92rem;margin-top:1.2rem}
.rx-more{margin:1.6rem 0 0;font-weight:600}.rx-more a{border-bottom:2px solid var(--amber);color:var(--ink)}.rx-more a:hover{text-decoration:none;color:var(--red)}
.rx-band{background:var(--soft);border-block:1px solid var(--line)}.rx-band>.wrap{padding-inline:20px}
/* hero */
.rx-hero{position:relative;overflow:hidden;isolation:isolate;color:#fff;min-height:clamp(560px,84vh,800px);display:flex;align-items:center;padding:clamp(56px,8vw,110px) 0;background:radial-gradient(900px 520px at 80% 35%,#14506b 0%,transparent 62%),linear-gradient(180deg,#0a1b2e,#0c2740)}
.rx-hero-in{position:relative;z-index:3;width:100%}
.rx-eyebrow{font:700 .78rem/1.2 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#7fe3cd;margin:0 0 18px}
.rx-hero h1{color:#fff;font-size:clamp(2.5rem,6.6vw,5.2rem);line-height:1;letter-spacing:-.04em;max-width:11em;margin:0 0 .45em}
.rx-u{background:linear-gradient(transparent 80%,rgba(255,184,77,.85) 80% 92%,transparent 92%);padding-inline:.04em}
.rx-lead{font-size:clamp(1.02rem,1.6vw,1.22rem);color:#c4d6e2;max-width:33em;margin:0 0 1.8rem}
.rx-cta{display:flex;flex-wrap:wrap;gap:12px}
.rx-read{display:flex;flex-wrap:wrap;gap:6px 22px;margin:2rem 0 0;padding:0;font:500 .82rem var(--mono);color:#8fb4c7}.rx-read span+span:before{content:"/";margin-right:22px;color:#3d6a82}
.rx-hero-in>*{animation:rxup .8s cubic-bezier(.16,1,.3,1) both}.rx-hero-in>:nth-child(2){animation-delay:.07s}.rx-hero-in>:nth-child(3){animation-delay:.14s}.rx-hero-in>:nth-child(4){animation-delay:.21s}.rx-hero-in>:nth-child(5){animation-delay:.28s}
@keyframes rxup{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.rx-radar{position:absolute;z-index:1;right:max(-9vw,-120px);top:50%;width:min(680px,60vw);aspect-ratio:1;transform:translateY(-50%)}
.rx-sweep{transform-origin:200px 200px;animation:rxsw 8s linear infinite}@keyframes rxsw{to{transform:rotate(360deg)}}
.rx-blips .b{animation:rxb 8s ease-out infinite;opacity:.3}.rx-blips .b2{animation-delay:4.4s}.rx-blips .b3{animation-delay:6s}.rx-blips text{opacity:.8}
@keyframes rxb{0%{opacity:1;transform:scale(1.5)}20%{opacity:.9;transform:none}100%{opacity:.25}}
.rx-blips .b{transform-box:fill-box;transform-origin:center}
.rx-plane{position:absolute;z-index:2;left:0;top:0;width:clamp(34px,4.4vw,56px);color:#fff;pointer-events:none;animation:rxfly 24s linear 1s infinite;will-change:transform}
.rx-plane:before{content:"";position:absolute;left:50%;top:62%;width:2px;height:min(22vw,220px);margin-left:-1px;background:linear-gradient(rgba(255,255,255,.6),transparent)}
@keyframes rxfly{0%{transform:translate3d(-10vw,56vh,0) rotate(68deg)}100%{transform:translate3d(108vw,8vh,0) rotate(68deg)}}
.rx-sky i{position:absolute;left:-34vw;width:260px;height:70px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,255,255,.13),transparent);animation:rxcl 90s linear infinite;will-change:transform}
.rx-sky i:nth-child(1){top:12%}.rx-sky i:nth-child(2){top:44%;width:340px;animation-duration:120s;animation-delay:-50s}.rx-sky i:nth-child(3){top:72%;width:200px;animation-duration:75s;animation-delay:-20s}
@keyframes rxcl{to{transform:translateX(150vw)}}
@media(max-width:820px){.rx-radar{width:96vw;right:-34vw;top:auto;bottom:-20vw;transform:none;opacity:.55}.rx-hero{align-items:flex-start;padding-top:48px}}
/* strip */
.rx-strip{background:#fff;border-bottom:1px solid var(--line)}.rx-strip dl{display:grid;grid-template-columns:repeat(4,1fr);margin:0}
.rx-strip dl>div{padding:22px 18px;border-left:1px solid var(--line)}.rx-strip dl>div:first-child{border-left:0}
.rx-strip dt{font:700 .7rem var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--red);margin:0 0 4px}.rx-strip dd{margin:0;font:800 clamp(1.7rem,3.6vw,2.6rem)/1.1 var(--mono);color:var(--ink);letter-spacing:-.04em}
/* papers */
.rx-papers{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.rx-paper{background:#fff;border:1px solid var(--line);border-top:5px solid var(--red);border-radius:14px;padding:clamp(22px,3vw,36px);display:flex;flex-direction:column;gap:6px;transition:transform .25s cubic-bezier(.16,1,.3,1),box-shadow .25s}
.rx-paper:hover{transform:translateY(-4px);box-shadow:0 22px 40px rgba(10,40,60,.12)}
.rx-paper.dark{background:var(--ink);border-color:var(--ink);border-top-color:var(--amber);color:#c4d6e2}.rx-paper.dark h3{color:#fff}
.rx-tag{display:inline-block;align-self:flex-start;font:700 .72rem var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--red)}.rx-paper.dark .rx-tag{color:var(--amber)}
.rx-paper h3{font-size:1.55rem;margin:.2em 0 .3em}.rx-paper ul{list-style:none;margin:.6rem 0 1.4rem;padding:0;flex:1}
.rx-paper li{padding:8px 0 8px 28px;border-top:1px solid var(--line);position:relative}.rx-paper.dark li{border-color:#1d3a55}
.rx-paper li:before{content:"";position:absolute;left:2px;top:15px;width:12px;height:7px;border-left:3px solid var(--red);border-bottom:3px solid var(--red);transform:rotate(-45deg)}.rx-paper.dark li:before{border-color:var(--amber)}
.rx-paper .btn{align-self:flex-start}
/* route */
.rx-route-sec{background:var(--ink);color:#c4d6e2;padding:clamp(52px,7vw,92px) 0}.rx-route-sec h2{color:#fff}.rx-route-sec .rx-k{color:#7fe3cd}
.rx-routew{--p:1;position:relative;margin-top:2.4rem}
.rx-route{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:18px;position:relative}
.rx-route:before,.rx-route:after{content:"";position:absolute;left:0;right:0;top:19px;height:3px;background:repeating-linear-gradient(90deg,#33566f 0 8px,transparent 8px 16px)}
.rx-route:after{background:linear-gradient(90deg,#2fcfb0,#ffb84d);transform:scaleX(var(--p));transform-origin:left}
.rx-route li{position:relative;padding-top:56px}.rx-route b{display:block;font:800 1.2rem var(--disp);color:#fff;margin-bottom:4px}.rx-route li>span:last-child{font-size:.95rem;line-height:1.5}
.rx-n{position:absolute;top:0;left:0;width:40px;height:40px;border-radius:50%;background:var(--ink);border:3px solid #2fcfb0;color:#fff;display:grid;place-items:center;font:700 .95rem var(--mono);z-index:1}
.rx-jet{position:absolute;z-index:3;left:calc(var(--p)*100%);top:20px;width:30px;color:#ffb84d;transform:translate(-50%,-50%) rotate(90deg);pointer-events:none;filter:drop-shadow(0 0 8px rgba(255,184,77,.5))}
@media(max-width:860px){.rx-route{grid-template-columns:1fr;gap:26px}.rx-route:before,.rx-route:after{left:19px;right:auto;top:0;bottom:0;width:3px;height:auto;background:repeating-linear-gradient(180deg,#33566f 0 8px,transparent 8px 16px)}.rx-route:after{background:linear-gradient(180deg,#2fcfb0,#ffb84d);transform:scaleY(var(--p));transform-origin:top}.rx-route li{padding:0 0 0 60px;min-height:40px}.rx-jet{left:20px;top:calc(var(--p)*100%);transform:translate(-50%,-50%) rotate(180deg)}}
/* exam table */
.rx-tblw{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.rx-tbl{width:100%;border-collapse:collapse}.rx-tbl th,.rx-tbl td{padding:16px 20px;text-align:left;vertical-align:top;border-top:1px solid var(--line)}
.rx-tbl thead th{border-top:0;background:var(--ink);color:#fff;font:700 .78rem var(--mono);letter-spacing:.1em;text-transform:uppercase}
.rx-tbl tbody th{width:19%;font:700 .78rem var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--red);background:var(--soft)}
@media(max-width:720px){.rx-tbl,.rx-tbl tbody,.rx-tbl tr,.rx-tbl td,.rx-tbl tbody th{display:block;width:auto}.rx-tbl thead{position:absolute;left:-9999px}.rx-tbl tbody th{padding:12px 16px}.rx-tbl td{padding:12px 16px}.rx-tbl td:before{content:attr(data-l);display:block;font:700 .7rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mut);margin-bottom:2px}}
/* chapters */
.rx-chs{list-style:none;margin:1.6rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.rx-chs a{display:grid;grid-template-columns:auto 1fr;gap:2px 14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;color:var(--text);transition:transform .2s,border-color .2s}.rx-chs a:hover{transform:translateY(-3px);border-color:var(--red);text-decoration:none}
.rx-chs span{grid-row:1/3;font:800 1.5rem var(--mono);color:#b8cbc5}.rx-chs b{font-family:var(--disp);color:var(--ink);line-height:1.25}.rx-chs small{color:var(--mut)}
/* plan + habits */
.rx-weeks{list-style:none;margin:0 0 2.6rem;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;counter-reset:w}
.rx-weeks li{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;border-top:4px solid var(--amber);display:flex;flex-direction:column;gap:6px}.rx-weeks b{font:700 .78rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--red)}.rx-weeks span{font-size:.96rem}
.rx-h3{font-size:1.4rem;margin:0 0 1rem}
.rx-mist{list-style:none;margin:0 0 2rem;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px}.rx-mist li{background:var(--soft);border-left:4px solid var(--red);border-radius:0 12px 12px 0;padding:14px 18px}.rx-mist b{color:var(--ink)}
.rx-aside{border:2px dashed #b9c8bf;border-radius:14px;padding:18px 22px;color:var(--text);background:#fff}.rx-aside b{color:var(--ink)}
/* prices */
.rx-prices{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.rx-price{position:relative;display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px;color:var(--text);transition:transform .22s cubic-bezier(.16,1,.3,1),box-shadow .22s}.rx-price:hover{text-decoration:none;transform:translateY(-4px);box-shadow:0 20px 36px rgba(10,40,60,.12)}
.rx-price b{font:800 2.6rem/1 var(--mono);letter-spacing:-.05em;color:var(--ink);margin-top:6px}.rx-price small{color:var(--mut)}
.rx-price em{position:absolute;top:-12px;right:16px;font:700 .72rem var(--mono);letter-spacing:.08em;text-transform:uppercase;font-style:normal;background:var(--amber);color:var(--ink);padding:4px 10px;border-radius:6px}
.rx-price.hot{background:var(--ink);border-color:var(--ink)}.rx-price.hot b{color:#fff}.rx-price.hot small{color:#9bb7c9}.rx-price.hot .rx-tag{color:var(--amber)}
/* faq + help + final */
.rx-sec details{background:#fff;margin-bottom:10px}.rx-sec details summary{font-family:var(--disp);font-weight:700}
.rx-help{background:var(--soft);border-block:1px solid var(--line);text-align:center;padding:clamp(44px,6vw,72px) 0}.rx-help p{color:var(--mut);max-width:34em;margin:0 auto 1.4rem}
.rx-final{background:radial-gradient(700px 260px at 50% 130%,#14506b,transparent 70%),var(--ink);color:#c4d6e2;text-align:center;padding:clamp(56px,8vw,96px) 0}.rx-final h2{color:#fff;font-size:clamp(1.9rem,4.4vw,3rem)}.rx-final p{max-width:30em;margin:0 auto 1.6rem}
/* reveal stagger (works with app.js .rv/.in) */
.js .rv{transition-delay:calc(var(--i,0)*80ms)}
@media(max-width:900px){.rx-papers,.rx-mist{grid-template-columns:1fr}.rx-weeks{grid-template-columns:1fr 1fr}.rx-prices{grid-template-columns:1fr}.rx-strip dl{grid-template-columns:1fr 1fr}.rx-strip dl>div:nth-child(3){border-left:0}.rx-strip dl>div:nth-child(n+3){border-top:1px solid var(--line)}}
@media(max-width:480px){.rx-weeks{grid-template-columns:1fr}.rx-cta .btn{flex:1 1 100%}}
@media(orientation:landscape) and (max-height:520px){.rx-hero{min-height:0;padding:36px 0}.rx-hero h1{font-size:clamp(2rem,5vw,3rem)}}
@media(prefers-reduced-motion:reduce){.rx-plane{animation:none;transform:translate3d(80vw,64vh,0) rotate(60deg)}.rx-sweep,.rx-blips .b,.rx-sky i,.rx-hero-in>*{animation:none}.rx-blips .b{opacity:.9}.js .rv{transition-delay:0s}}
.rx-tbl th,.rx-tbl td{white-space:normal;border-bottom:0}
/* plans */
.pl-head{background:var(--ink);color:#c4d6e2;padding:clamp(48px,7vw,88px) 0 clamp(40px,6vw,72px);position:relative;overflow:hidden}.pl-head .rx-k{color:#7fe3cd}.pl-head h1{color:#fff;font-size:clamp(2.1rem,5vw,3.6rem);letter-spacing:-.035em;max-width:14em;line-height:1.04}.pl-head .rx-lead a{color:var(--amber);text-decoration:underline}
.pl-body{padding-top:0;margin-top:-34px;position:relative}
.pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;align-items:start}
.pl{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;display:flex;flex-direction:column;gap:12px;box-shadow:0 14px 34px rgba(10,40,60,.08)}
.pl h2{font-size:1.5rem;margin:.1em 0 0}.pl-price{display:flex;align-items:baseline;gap:10px;margin:0}.pl-price b{font:800 2.8rem/1 var(--mono);letter-spacing:-.05em;color:var(--ink)}.pl-price span{color:var(--mut)}
.pl ul{list-style:none;margin:0;padding:0}.pl li{padding:9px 0 9px 26px;border-top:1px solid var(--line);position:relative}.pl li:before{content:"";position:absolute;left:2px;top:15px;width:11px;height:6px;border-left:3px solid var(--red);border-bottom:3px solid var(--red);transform:rotate(-45deg)}
.pl.hot{background:var(--ink);border-color:var(--ink);color:#c4d6e2;transform:translateY(-14px);padding-block:34px}.pl.hot h2,.pl.hot .pl-price b{color:#fff}.pl.hot .pl-price span{color:#9bb7c9}.pl.hot li{border-color:#1d3a55}.pl.hot li:before{border-color:var(--amber)}.pl.hot .rx-tag{color:var(--amber)}
.pl em{position:absolute;top:-13px;left:22px;font:700 .72rem var(--mono);letter-spacing:.08em;text-transform:uppercase;font-style:normal;background:var(--amber);color:var(--ink);padding:4px 10px;border-radius:6px}
.pl-cmp td,.pl-cmp thead th:not(:first-child){text-align:center}.pl-cmp tbody th{width:34%}.pl-cmp .y{color:var(--ok);font-weight:800}.pl-cmp .n{color:#a9b4be}
.pl-mock{display:flex;gap:24px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-top:2.4rem;background:var(--ink);color:#c4d6e2;border-radius:16px;padding:clamp(22px,3vw,36px)}.pl-mock h2{color:#fff;margin:.2em 0 .4em;font-size:1.6rem}.pl-mock .rx-tag{color:var(--amber)}.pl-mock ul{margin:0;padding-left:1.1rem}.pl-mb{text-align:center;display:flex;flex-direction:column;gap:10px;align-items:center}.pl-mb b{font:800 2.4rem var(--mono);color:#fff;letter-spacing:-.04em}
.pl-pay{margin-top:2.4rem}.pl-pay ul{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;list-style:none;padding:0;margin:0 0 1rem}.pl-pay li{background:var(--soft);border-radius:12px;padding:14px 16px}
@media(max-width:900px){.pl-grid{grid-template-columns:1fr}.pl.hot{transform:none;order:-1}.pl-pay ul{grid-template-columns:1fr}}
/* auth */
.au{position:relative;min-height:calc(100vh - 57px);display:grid;place-items:center;padding:36px 16px;background:radial-gradient(800px 500px at 50% 0,#14506b,transparent 70%),var(--ink);overflow:hidden;isolation:isolate}
.au-bg{position:absolute;inset:0;z-index:-1;display:grid;place-items:center}.au-bg svg{width:min(900px,130vw);opacity:.8}
.aform{width:100%;max-width:440px}.au .auth-card{background:#fff;border:0;border-top:5px solid var(--amber);border-radius:16px;padding:clamp(24px,4vw,36px);box-shadow:0 30px 70px rgba(0,0,0,.35)}
.au-brand{margin-bottom:14px}.au .auth-card h1{font-size:1.7rem;margin:0 0 .3em}
@media(orientation:landscape) and (max-height:560px){.au{place-items:start center;min-height:0}}
/* dashboard */
.dwrap{max-width:1180px}.dbanner{border-radius:16px;background:var(--ink)!important;border-left:6px solid var(--amber);box-shadow:none}.dbanner:before{content:"";position:absolute;right:-60px;top:-60px;width:320px;height:320px;border-radius:50%;border:1.5px solid rgba(47,207,176,.3);box-shadow:0 0 0 60px rgba(47,207,176,.05),0 0 0 120px rgba(47,207,176,.04)}
.dbanner>*{position:relative}.dbanner .pill{font-family:var(--mono);border-radius:6px;color:#7fe3cd}.dbanner h1 span{color:var(--amber)}
.dcard{border-radius:14px;box-shadow:none;border:1px solid var(--line)}.dcard h2{font-size:1.1rem;letter-spacing:-.01em}
.tstrip{border-radius:12px;border:1.5px solid var(--line);background:#fff}.tstrip.on{border-color:var(--red);background:var(--rose)}
.ti{border-radius:8px;font:800 .72rem var(--mono);color:var(--ink);background:var(--soft)}
.qgrid a{border-radius:12px;background:#fff;font-family:var(--disp)}.qgrid a span{font:800 1.3rem var(--mono);color:var(--red)}
.dcard.promo{background:var(--ink)!important;border-top:4px solid var(--amber)!important}
/* part 1 / part 2 landing */
.lhead{background:var(--ink);border-radius:16px;padding:clamp(22px,3.4vw,38px);color:#c4d6e2;margin-bottom:22px;position:relative;overflow:hidden}
.lhead:after{content:"";position:absolute;right:-70px;top:-70px;width:300px;height:300px;border-radius:50%;border:1.5px solid rgba(47,207,176,.28);box-shadow:0 0 0 55px rgba(47,207,176,.05),0 0 0 110px rgba(47,207,176,.035);pointer-events:none}
.lhead>*{position:relative;z-index:1}.lhead h1{color:#fff;font-size:clamp(1.7rem,3.8vw,2.7rem);max-width:17em;letter-spacing:-.03em}.lhead .rx-k{color:#7fe3cd}.lhead .sub{color:#b4c8d6;margin-top:.6rem}
.lhead .lstat{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.14);box-shadow:none;color:#fff}.lhead .lstat span{color:#9bb7c9}.lhead .lring:before{background:#14304a}.lhead .lring{background:conic-gradient(var(--amber) calc(var(--p)*1%),#24465f 0)}.lhead .btn.ghost{color:#fff;border-color:rgba(255,255,255,.55)}.lhead .btn.ghost:hover{background:#fff;color:var(--ink)}
.finalc{border-radius:14px;border-left:6px solid var(--amber);background:var(--ink);box-shadow:none}.finalc small{color:#9bb7c9}.fi2{display:none}.finalc em.btn{background:var(--amber);color:var(--ink);border-color:#c98400}
.filters button{border-radius:8px;border-width:2px;font-family:var(--mono);font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;min-height:40px}.filters button.on,.filters button:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.cgrid{grid-template-columns:1fr 1fr;gap:0 28px}.cc{border-radius:0;border:0;border-bottom:1.5px solid var(--line);background:transparent;padding:16px 4px;min-height:64px}.cc:hover{transform:none;box-shadow:none;background:#fff;border-color:var(--red)}.cc.done{border-left:0;box-shadow:inset 4px 0 0 var(--ok);padding-left:14px}
.cn{background:transparent;color:#a9bdb6;font-size:1.5rem;width:46px;height:auto;border-radius:0}.cc:hover .cn{color:var(--red)}
.fgrid2{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:10px}.fs{border-radius:6px;border-left-width:8px;background:#fff;box-shadow:0 1px 0 var(--line)}.fs:hover{box-shadow:0 10px 22px rgba(10,40,60,.12)}.fn{color:#a9bdb6}.fr b{font-family:var(--mono);letter-spacing:.04em}
.trialhero{margin:0 0 22px}.tcard{background:#fff;border:2px solid var(--ink);border-radius:14px;box-shadow:8px 8px 0 var(--amber);text-align:left;padding:clamp(20px,3vw,30px)}.tcard>p{margin-left:0}
.lp h2{margin-top:0}.lp p{color:var(--text)}.lp a{border-bottom:2px solid var(--amber);color:var(--ink);font-weight:600}.lp a:hover{text-decoration:none;color:var(--red)}
@media(max-width:820px){.cgrid{grid-template-columns:1fr}}
.au .aform{background:none;padding:0;display:block;min-height:0;border:0;box-shadow:none}
