:root{color-scheme:dark;--ink:#f6f3ff;--muted:#aaa4bc;--line:rgba(155,137,219,.22);--panel:#100d1b;--purple:#8c72ff;--green:#55e5a1}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-width:320px;background:#05040b;color:var(--ink);font-family:"Plus Jakarta Sans",sans-serif}
body::before{content:"";position:fixed;inset:0;z-index:-1;background:radial-gradient(circle at 50% 9%,rgba(91,60,220,.13),transparent 27%),linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.01) 1px,transparent 1px);background-size:auto,64px 64px,64px 64px;pointer-events:none}
button,input{font:inherit}
a{color:inherit}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#mainContent{width:min(1240px,calc(100% - 36px));margin:0 auto;padding:124px 0 40px}
.rules-hero{max-width:970px;margin:0 auto;padding:30px 0 72px;text-align:center}
.rules-kicker,.rules-directory-head>div>span,.program-workspace-head>div>span{margin:0 0 15px;color:#a791ff;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.rules-hero h1{margin:0;font-size:clamp(45px,6vw,76px);font-weight:600;line-height:1.01;letter-spacing:-.065em}
.rules-hero h1 span{color:#9a82ff;background:linear-gradient(110deg,#eee9ff 0,#a98eff 45%,#7358ef 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.rules-hero-copy{max-width:800px;margin:22px auto 0;color:#d0cbdc;font-size:18px;font-weight:500;line-height:1.75}
.rules-updated{margin:15px 0 0;color:#948ba9;font-size:13px;font-weight:600}.rules-updated strong{color:#d8d0f0}
.rules-directory,.program-workspace,.published-rules{border:1px solid var(--line);border-radius:26px;background:linear-gradient(145deg,rgba(21,17,36,.94),rgba(7,6,13,.97));box-shadow:0 30px 90px rgba(0,0,0,.25),inset 0 1px rgba(255,255,255,.035)}
.rules-directory{padding:32px}
.rules-directory-head,.program-workspace-head{display:flex;align-items:end;justify-content:space-between;gap:28px}
.rules-directory h2,.program-workspace h2,.published-rules h2,.rules-method h2,.rules-faq h2{margin:0;font-size:clamp(29px,3vw,43px);font-weight:600;letter-spacing:-.045em}
.rules-search{width:min(420px,100%);height:54px;display:flex;align-items:center;gap:12px;padding:0 17px;border:1px solid rgba(154,136,218,.3);border-radius:15px;background:#080711}
.rules-search svg{width:19px;fill:none;stroke:#b4acc7;stroke-width:1.8}.rules-search input{width:100%;border:0;outline:0;background:transparent;color:#fff;font-size:14px}.rules-search input::placeholder{color:#766f84}
.rules-count{margin:24px 0 15px;color:#81798f;font-size:12px}
.rules-firm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.rule-firm-card{position:relative;min-height:290px;padding:21px;overflow:hidden;border:1px solid rgba(149,130,214,.19);border-radius:19px;background:linear-gradient(150deg,rgba(24,20,41,.9),rgba(8,7,14,.98));transition:.24s ease}
.rule-firm-card:hover{transform:translateY(-4px);border-color:rgba(144,117,255,.52);box-shadow:0 22px 55px rgba(0,0,0,.24)}
.rule-firm-card::after{content:"";position:absolute;right:-60px;top:-80px;width:170px;height:170px;border-radius:50%;background:rgba(125,91,255,.12);filter:blur(23px)}
.firm-card-top{position:relative;z-index:1;display:flex;align-items:center;gap:13px}
.firm-logo,.firm-hero-mark{display:grid;place-items:center;overflow:hidden;border:1px solid rgba(153,132,224,.42);background:#f9f8ff;color:#171224;font-weight:700}
.firm-logo{width:54px;height:54px;flex:0 0 54px;border-radius:14px}.firm-logo img,.firm-hero-mark img{display:block;width:100%;height:100%;border-radius:inherit;object-fit:cover;transform:scale(1.04)}
.firm-card-top h3{margin:0;font-size:18px;font-weight:600;letter-spacing:-.025em}.firm-card-top p{margin:4px 0 0;color:#8e879d;font-size:11px}
.rule-chips{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:22px 0}
.rule-chip{padding:11px;border:1px solid rgba(155,136,219,.17);border-radius:11px;background:rgba(255,255,255,.025)}
.rule-chip span{display:block;color:#777083;font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.rule-chip strong{display:block;margin-top:5px;color:#e8e3f4;font-size:13px;font-weight:600}
.firm-card-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto}.firm-card-foot span{color:#888194;font-size:11px}
.read-rules{display:inline-flex;align-items:center;gap:9px;padding:11px 15px;border-radius:11px;background:#8062f2;color:#fff;text-decoration:none;font-size:12px;font-weight:700;box-shadow:0 10px 26px rgba(103,72,230,.25)}
.rules-empty{padding:44px;text-align:center}.rules-empty button{padding:11px 15px;border:1px solid var(--line);border-radius:10px;background:#171126;color:#fff}
.rules-method{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;padding:105px 10px}
.rules-method>div>span{color:#a58eff;font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.method-points article{display:grid;grid-template-columns:35px 1fr;column-gap:15px;padding:18px 0;border-bottom:1px solid rgba(155,137,219,.15)}
.method-points strong{grid-row:1/3;color:#8069df;font-size:11px}.method-points h3{margin:0;font-size:16px;font-weight:600}.method-points p{margin:7px 0 0;color:#9992aa;font-size:13px;line-height:1.65}
.rules-faq{max-width:1030px;margin:0 auto;padding:50px 0 90px}.rules-faq>h2{text-align:center}.rules-faq>.rules-kicker{text-align:center}
.rules-faq-list{margin-top:30px;border-top:1px solid var(--line)}
.rules-faq details{border-bottom:1px solid var(--line)}.rules-faq summary{list-style:none;display:flex;justify-content:space-between;gap:20px;padding:22px 4px;cursor:pointer;font-size:15px;font-weight:600}.rules-faq summary::-webkit-details-marker{display:none}.rules-faq summary span{color:#927aff;font-size:21px}.rules-faq details[open] summary span{transform:rotate(45deg)}.rules-faq details p{max-width:850px;margin:-6px 0 23px;color:#a39cac;font-size:13px;line-height:1.75}
.firm-rules-hero{position:relative}.firm-hero-mark{width:74px;height:74px;margin:0 auto 23px;border-radius:20px;font-size:15px}
.program-workspace{padding:31px}.official-link{padding:12px 15px;border:1px solid rgba(151,130,224,.31);border-radius:11px;text-decoration:none;color:#d9d2e8;font-size:12px;font-weight:600}
.program-tabs{display:flex;gap:9px;margin:27px 0 20px;padding-bottom:5px;overflow:auto}.program-tab{flex:0 0 auto;padding:12px 16px;border:1px solid rgba(150,131,217,.24);border-radius:12px;background:#0a0812;color:#a59eb2;cursor:pointer;font-size:12px;font-weight:600}.program-tab.is-active{border-color:#8c72ff;background:linear-gradient(135deg,rgba(128,94,245,.36),rgba(79,58,165,.24));color:#fff;box-shadow:0 8px 25px rgba(77,48,193,.18)}
.rule-metric-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));overflow:hidden;border:1px solid rgba(155,137,219,.2);border-radius:17px}.rule-metric{min-height:114px;padding:19px;border-right:1px solid rgba(155,137,219,.16);background:rgba(5,4,11,.45)}.rule-metric:last-child{border:0}.rule-metric span{color:#817a8d;font-size:9px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.rule-metric strong{display:block;margin-top:13px;color:#f2eef9;font-size:16px;font-weight:600;line-height:1.35}.rule-metric small{display:block;margin-top:6px;color:#716a7d;font-size:9px}
.published-rules{margin-top:26px;padding:34px}.published-rules-head{max-width:760px}.published-rules-head>p:last-child{color:#9f98ad;line-height:1.7}
.rule-sections{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:27px}.rule-section{padding:23px;border:1px solid rgba(151,132,215,.2);border-radius:17px;background:rgba(6,5,12,.48)}.rule-section-tag{color:#8f79e9;font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.rule-section h3{margin:9px 0 6px;font-size:19px;font-weight:600}.rule-section>p{margin:0 0 18px;color:#8f899c;font-size:12px;line-height:1.6}.rule-list{list-style:none;margin:0;padding:0}.rule-list li{position:relative;padding:13px 0 13px 19px;border-top:1px solid rgba(152,134,214,.13)}.rule-list li::before{content:"";position:absolute;left:0;top:20px;width:6px;height:6px;border-radius:50%;background:#7ce9b5;box-shadow:0 0 12px rgba(74,232,157,.55)}.rule-list strong{display:block;font-size:13px;font-weight:600}.rule-list span{display:block;margin-top:5px;color:#a29bab;font-size:12px;line-height:1.65}
.rules-disclaimer{display:flex;gap:20px;margin-top:18px;padding:18px 20px;border:1px solid rgba(236,186,91,.25);border-radius:14px;background:rgba(151,96,17,.07)}.rules-disclaimer strong{white-space:nowrap;color:#f0c377;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.rules-disclaimer p{margin:0;color:#c2ad8a;font-size:12px;line-height:1.6}
@media(max-width:980px){.rules-firm-grid{grid-template-columns:1fr 1fr}.rule-metric-grid{grid-template-columns:repeat(3,1fr)}.rule-metric:nth-child(3){border-right:0}.rules-method{grid-template-columns:1fr;gap:35px}.rule-sections{grid-template-columns:1fr}}
@media(max-width:680px){#mainContent{width:min(100% - 24px,1240px);padding-top:105px}.rules-hero{padding:20px 4px 52px}.rules-hero h1{font-size:42px}.rules-hero-copy{font-size:15px;line-height:1.65}.rules-directory,.program-workspace,.published-rules{padding:20px;border-radius:20px}.rules-directory-head,.program-workspace-head{align-items:stretch;flex-direction:column}.rules-search{width:100%}.rules-firm-grid{grid-template-columns:1fr}.rule-metric-grid{grid-template-columns:1fr 1fr}.rule-metric:nth-child(3){border-right:1px solid rgba(155,137,219,.16)}.rule-metric:nth-child(even){border-right:0}.rules-method{padding:75px 4px}.rules-disclaimer{display:block}.rules-disclaimer p{margin-top:8px}}

/* Editorial rule directory */
.rules-hub-page .rules-directory{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.rules-hub-page #mainContent{padding-top:102px}
.rules-hub-page .rules-hero{padding-top:12px;padding-bottom:50px}
.rules-toolbar{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:34px}
.rules-filter-pills{display:flex;flex-wrap:wrap;gap:10px}
.rules-filter-pills button{padding:12px 18px;border:1px solid transparent;border-radius:999px;background:#100b19;color:#b9b3c4;cursor:pointer;font-size:12px;font-weight:500;transition:.22s ease}
.rules-filter-pills button:hover{border-color:rgba(158,137,229,.35);color:#fff}
.rules-filter-pills button.is-active{border-color:#eee8ff;background:#09080e;color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.24)}
.rules-toolbar .rules-search{height:50px;border-radius:999px;background:linear-gradient(135deg,#1a1024,#120b1b)}
.rules-directory-title{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:20px}
.rules-directory-title>div>span{color:#81798d;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.rules-directory-title h2{margin-top:7px;font-size:27px;letter-spacing:-.035em}
.rules-directory-title h2 em{color:#bd6cff;font-style:normal}
.rules-directory-title .rules-count{margin:0 0 4px}
.rules-hub-page .rules-firm-grid{display:grid;grid-template-columns:1fr;gap:18px}
.rules-hub-page .rule-firm-card{display:grid;grid-template-columns:245px minmax(0,1fr);gap:18px;min-height:350px;padding:23px;border-radius:24px;background:linear-gradient(140deg,rgba(22,15,34,.95),rgba(8,6,14,.98) 65%);box-shadow:inset 0 1px rgba(255,255,255,.025)}
.rules-hub-page .rule-firm-card::after{right:25%;top:-145px;width:360px;height:250px;background:rgba(117,70,222,.11);filter:blur(48px)}
.rule-firm-identity,.rule-firm-preview{position:relative;z-index:1;border:1px solid rgba(151,128,211,.14);border-radius:19px}
.rule-firm-identity{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px 20px;text-align:center;background:linear-gradient(180deg,rgba(24,17,34,.82),rgba(9,7,15,.75))}
.rule-firm-identity .firm-logo{width:76px;height:76px;flex-basis:76px;margin-bottom:17px;border-radius:17px}
.rule-firm-identity h3{margin:0;font-size:19px;font-weight:600;letter-spacing:-.03em}
.rule-firm-identity>p{margin:7px 0 20px;color:#b880f5;font-size:11px}
.rule-profile-note{width:100%;padding:15px;border:1px solid rgba(190,141,255,.3);border-radius:13px;text-align:left;background:rgba(122,74,207,.07)}
.rule-profile-note strong,.rule-profile-note span{display:block}.rule-profile-note strong{font-size:13px}.rule-profile-note span{margin-top:5px;color:#8f849b;font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.rule-firm-preview{padding:27px 30px;background:rgba(7,5,12,.32)}
.rule-preview-head{display:flex;justify-content:space-between;gap:25px}.rule-preview-head h3{margin:0;font-size:24px;font-weight:600;letter-spacing:-.04em}.rule-preview-head p{display:-webkit-box;max-width:720px;margin:12px 0 0;overflow:hidden;color:#aaa3b2;font-size:13px;line-height:1.7;-webkit-box-orient:vertical;-webkit-line-clamp:3}.rule-preview-head>span{flex:0 0 auto;color:#918899;font-size:9px}
.rule-preview-program{margin:19px 0 8px;color:#d6b5ff;font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.rule-preview-list{list-style:none;margin:0;padding:0}.rule-preview-list li{position:relative;padding:7px 0 7px 14px;color:#d5d0dc;font-size:12px;line-height:1.55}.rule-preview-list li::before{content:"";position:absolute;left:0;top:14px;width:5px;height:5px;border-radius:50%;background:#c878ff;box-shadow:0 0 10px rgba(200,120,255,.45)}
.rule-preview-footnote{margin:8px 0 0;color:#857e8d;font-size:10px}
.rule-preview-actions{display:flex;align-items:center;gap:10px;margin-top:20px}.rule-preview-actions>a{padding:11px 17px;border:1px solid rgba(151,130,209,.16);border-radius:999px;background:#120d1a;color:#ddd7e7;text-decoration:none;font-size:11px;font-weight:600}.rule-preview-actions .read-rules{border-color:transparent;background:linear-gradient(135deg,#8d58eb,#bc62f0);color:#fff;box-shadow:0 12px 28px rgba(142,71,224,.25)}

/* Dedicated model rule sheet */
.firm-rules-page #mainContent{padding-top:94px}
.firm-rules-page .rules-hero{padding-top:12px}
.firm-rules-page .firm-rules-hero{max-width:1040px;padding-bottom:36px}
.firm-rules-page .firm-rules-hero h1{font-size:clamp(46px,5.3vw,70px);line-height:1.03}
.rules-research-strip{display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 34px;padding:16px 20px;border:1px solid rgba(149,126,210,.18);border-radius:19px;background:linear-gradient(100deg,rgba(24,14,36,.94),rgba(10,7,16,.97))}
.rules-research-strip article{display:flex;align-items:center;gap:15px;min-height:58px;padding:5px 18px;border-right:1px solid rgba(150,130,211,.15)}.rules-research-strip article:last-child{border:0}
.research-icon{display:grid;place-items:center;width:25px;height:25px;color:#c77bff;font-size:18px}
.rules-research-strip small,.rules-research-strip strong{display:block}.rules-research-strip small{color:#9f94ad;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.rules-research-strip strong{margin-top:7px;color:#f3eef8;font-size:13px;font-weight:600}
.firm-rules-page .program-workspace{padding:0;border:0;background:transparent;box-shadow:none}
.firm-rules-page .program-workspace-head{align-items:center}.firm-rules-page .program-workspace-head h2{font-size:24px}
.firm-rules-page .program-tabs{margin:22px 0 18px}.firm-rules-page .program-tab{padding:12px 20px;border-radius:999px;background:#110b18}.firm-rules-page .program-tab.is-active{border-color:#f2ebff;background:#09080e;box-shadow:none}
.firm-rules-page .rule-metric-grid{border-radius:16px;background:linear-gradient(100deg,rgba(21,13,31,.78),rgba(7,6,12,.84))}
.firm-rules-page .published-rules{margin-top:28px;padding:29px;border-radius:23px;background:linear-gradient(135deg,rgba(24,14,36,.96),rgba(9,6,14,.99))}
.firm-rules-page .published-rules-head{display:flex;align-items:center;justify-content:space-between;gap:25px;max-width:none}.firm-rules-page .published-rules-head>div{max-width:770px}
.firm-detail-link{flex:0 0 auto;padding:11px 17px;border:1px solid rgba(153,132,215,.18);border-radius:999px;background:rgba(255,255,255,.03);color:#ddd7e5;text-decoration:none;font-size:11px}
.firm-rules-page .rule-sections{display:block;margin-top:24px}
.model-rule-sheet{padding:18px 20px;border:1px solid rgba(155,131,216,.14);border-radius:17px;background:linear-gradient(180deg,rgba(21,13,31,.72),rgba(11,8,17,.58))}
.model-rule-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 7px 13px;border-bottom:1px solid rgba(150,128,209,.14)}.model-rule-sheet-head span{color:#ce8bff;font-size:10px;font-weight:700;letter-spacing:.16em}.model-rule-sheet-head strong{color:#81798c;font-size:9px;font-weight:600}
.model-rule-list{list-style:none;margin:0;padding:10px 0 0}.model-rule-list li{display:grid;grid-template-columns:7px 1fr;gap:10px;padding:9px 7px}.model-rule-list li i{width:5px;height:5px;margin-top:7px;border-radius:50%;background:#ca7aff;box-shadow:0 0 12px rgba(201,108,255,.45)}.model-rule-list p{margin:0;color:#d7d1dd;font-size:13px;line-height:1.6}.model-rule-list p strong{color:#fff;font-weight:600}
@media(max-width:900px){.rules-hub-page .rule-firm-card{grid-template-columns:205px minmax(0,1fr)}.rules-research-strip{grid-template-columns:1fr}.rules-research-strip article{border-right:0;border-bottom:1px solid rgba(150,130,211,.15)}.rules-toolbar{align-items:stretch;flex-direction:column}.rules-toolbar .rules-search{width:100%}}
@media(max-width:680px){.rules-hub-page #mainContent,.firm-rules-page #mainContent{padding-top:94px}.rules-hub-page .rules-hero{padding-top:10px}.rules-hub-page .rule-firm-card{grid-template-columns:1fr;padding:14px}.rule-firm-identity{padding:22px}.rule-firm-preview{padding:22px 18px}.rule-preview-head{display:block}.rule-preview-head>span{display:block;margin-top:10px}.rule-preview-actions{align-items:stretch;flex-direction:column}.rule-preview-actions>a{text-align:center}.rules-directory-title{align-items:start;flex-direction:column}.rules-directory-title .rules-count{margin:0}.rules-filter-pills{flex-wrap:nowrap;overflow:auto;padding-bottom:5px}.rules-filter-pills button{flex:0 0 auto}.firm-rules-page .published-rules-head{align-items:flex-start;flex-direction:column}.firm-rules-page .program-workspace-head{align-items:flex-start}.rules-research-strip{padding:12px}.rules-research-strip article{padding:8px}}

/* Best-prop-style page introductions */
.rules-site .rules-hero{max-width:1120px;padding:18px 0 48px}
.rules-site .rules-hero h1{font-size:clamp(44px,5.35vw,68px);font-weight:600;line-height:1.04;letter-spacing:-.05em}
.rules-site .rules-hero-copy{max-width:820px;margin-top:20px;color:#f0eff9;font-size:17px;font-weight:600;line-height:1.6}
.firm-rules-page #mainContent,.rules-hub-page #mainContent{padding-top:42px}
.firm-rules-page .firm-rules-hero{max-width:1140px;padding-bottom:43px}
.firm-rules-page .firm-rules-hero h1{font-size:clamp(43px,5.05vw,66px);letter-spacing:-.052em}

/* Distinct research-card directory */
.rules-hub-page .rules-firm-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.rules-hub-page .rule-firm-card{display:flex;min-height:0;padding:24px;border-radius:22px;flex-direction:column;background:linear-gradient(155deg,rgba(20,16,33,.96),rgba(7,6,13,.98) 72%);box-shadow:inset 0 1px rgba(255,255,255,.035)}
.rules-hub-page .rule-firm-card::after{right:-95px;top:-100px;width:250px;height:250px;background:rgba(119,82,232,.12);filter:blur(40px)}
.rule-card-brand{position:relative;z-index:1;display:flex;align-items:center;gap:14px;padding-bottom:18px;border-bottom:1px solid rgba(153,135,211,.14)}
.rule-card-brand .firm-logo{width:58px;height:58px;flex-basis:58px;padding:0;border-radius:15px}
.rule-card-brand>div{min-width:0;flex:1}.rule-card-brand h3{margin:0;font-size:19px;font-weight:600;letter-spacing:-.03em}.rule-card-brand p{margin:5px 0 0;color:#8f879b;font-size:10px}
.rule-card-brand>span{padding:7px 10px;border:1px solid rgba(166,139,236,.23);border-radius:999px;background:rgba(132,91,225,.08);color:#c3b2eb;font-size:9px;font-weight:700;white-space:nowrap}
.rule-card-copy{position:relative;z-index:1;padding:20px 1px 16px}.rule-card-copy h3{margin:0;font-size:23px;font-weight:600;letter-spacing:-.04em}.rule-card-copy p{display:-webkit-box;margin:10px 0 0;overflow:hidden;color:#aaa3b3;font-size:12px;line-height:1.65;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.rule-program-snapshot{position:relative;z-index:1;padding:16px;border:1px solid rgba(153,134,211,.16);border-radius:15px;background:linear-gradient(145deg,rgba(129,85,221,.09),rgba(255,255,255,.018))}
.rule-program-snapshot>.rule-preview-program{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 10px}.rule-program-snapshot>.rule-preview-program span{color:#8d8497;font-size:8px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.rule-program-snapshot>.rule-preview-program strong{color:#d5b7ff;font-size:11px;font-weight:700;text-align:right}
.rule-program-snapshot>small{display:block;margin-bottom:12px;color:#746d7d;font-size:8px;text-align:right}
.rule-program-snapshot .rule-preview-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.rule-program-snapshot .rule-preview-list li{min-height:76px;padding:11px;border:1px solid rgba(153,134,211,.12);border-radius:11px;background:rgba(4,4,9,.38)}
.rule-program-snapshot .rule-preview-list li::before{display:none}
.rule-program-snapshot .rule-preview-list strong,.rule-program-snapshot .rule-preview-list span{display:block}.rule-program-snapshot .rule-preview-list strong{color:#8f8799;font-size:8px;letter-spacing:.07em;text-transform:uppercase}.rule-program-snapshot .rule-preview-list span{margin-top:7px;color:#f0ebf7;font-size:11px;font-weight:600;line-height:1.4}
.rules-hub-page .rule-preview-actions{position:relative;z-index:1;margin-top:auto;padding-top:18px}
.rules-hub-page .rule-preview-actions>a{border-radius:11px}
.rules-hub-page .rule-preview-actions .read-rules{margin-right:auto;background:linear-gradient(135deg,#7654e8,#9364ef)}

/* Home-page FAQ system on program rule pages */
.firm-program-faq{margin-top:92px;border:0;border-radius:0}
.firm-program-faq .faq-heading{margin-bottom:58px}
.firm-program-faq .faq-support a{text-decoration:none}

/* Stable loading states, directory paging and firm identity */
.firm-rules-logo{display:grid;place-items:center;width:74px;height:74px;margin:0 auto 21px;overflow:hidden;border:1px solid rgba(174,148,246,.34);border-radius:19px;background:#12101c;color:#c8b7ff;font-size:18px;font-weight:700;box-shadow:0 16px 42px rgba(82,51,174,.2)}
.firm-rules-logo img{display:block;width:100%;height:100%;border-radius:inherit;object-fit:cover}
.firm-rules-logo.is-loading i,.program-tab-skeleton,.rule-metric-skeleton,.rule-sheet-skeleton i,.rule-firm-card.is-skeleton i,.rule-firm-card.is-skeleton b,.rule-firm-card.is-skeleton span{display:block;background:linear-gradient(100deg,rgba(133,116,175,.08) 25%,rgba(185,164,238,.2) 42%,rgba(133,116,175,.08) 60%);background-size:240% 100%;animation:rule-skeleton 1.45s ease-in-out infinite}
.firm-rules-logo.is-loading i{width:100%;height:100%}
@keyframes rule-skeleton{to{background-position:-240% 0}}
.program-tab-skeleton{flex:0 0 132px;height:42px;border-radius:999px}
.rule-metric-skeleton{min-height:114px;border-right:1px solid rgba(155,137,219,.12)}
.rule-sheet-skeleton{padding:24px;border:1px solid rgba(155,131,216,.14);border-radius:17px}
.rule-sheet-skeleton i{width:100%;height:13px;margin:13px 0;border-radius:6px}.rule-sheet-skeleton i:nth-child(2){width:82%}.rule-sheet-skeleton i:nth-child(3){width:91%}.rule-sheet-skeleton i:nth-child(4){width:66%}
.rule-firm-card.is-skeleton{min-height:435px!important;pointer-events:none}
.skeleton-brand{display:flex;align-items:center;gap:14px;padding-bottom:18px;border-bottom:1px solid rgba(153,135,211,.1)}
.skeleton-brand i{width:58px;height:58px;border-radius:15px}.skeleton-brand span{width:36%;height:17px;border-radius:6px}.skeleton-brand b{width:62px;height:26px;margin-left:auto;border-radius:999px}
.skeleton-line{width:70%;height:12px;margin-top:12px;border-radius:6px}.skeleton-line.is-wide{width:48%;height:25px;margin-top:24px}
.skeleton-panel{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:25px;padding:16px;border:1px solid rgba(153,134,211,.12);border-radius:15px}.skeleton-panel i{height:76px;border-radius:11px}
.skeleton-actions{display:flex;gap:10px;margin-top:auto;padding-top:23px}.skeleton-actions i{width:104px;height:37px;border-radius:11px}
.rules-pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin:32px 0 6px}.rules-pagination[hidden]{display:none}.rules-pagination button{display:grid;place-items:center;min-width:42px;height:42px;padding:0 13px;border:1px solid rgba(154,132,219,.2);border-radius:12px;background:#0c0913;color:#aaa2b8;cursor:pointer;font-size:12px;font-weight:700}.rules-pagination button:hover:not(:disabled),.rules-pagination button.is-active{border-color:#8c72ff;background:linear-gradient(135deg,#7454e5,#9463ed);color:#fff;box-shadow:0 9px 25px rgba(105,69,207,.25)}.rules-pagination button:disabled{cursor:not-allowed;opacity:.35}
.rules-hub-home-faq{margin-top:88px;border:0;border-radius:0}.rules-hub-home-faq .faq-support a{text-decoration:none}

@media(max-width:980px){
  .rules-hub-page .rules-firm-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
  .firm-rules-page #mainContent,.rules-hub-page #mainContent{padding-top:28px}
  .rules-site .rules-hero{padding:14px 3px 40px}
  .rules-site .rules-hero h1,.firm-rules-page .firm-rules-hero h1{font-size:clamp(38px,11vw,50px)}
  .rules-site .rules-hero-copy{font-size:15px}
  .rules-hub-page .rule-firm-card{padding:17px}
  .rule-program-snapshot .rule-preview-list{grid-template-columns:1fr}
  .rule-program-snapshot .rule-preview-list li{min-height:0}
  .rule-card-copy h3{font-size:21px}
  .firm-program-faq{margin-top:68px;border-radius:0}
  .firm-rules-logo{width:62px;height:62px;margin-bottom:17px;border-radius:16px}
  .skeleton-panel{grid-template-columns:1fr}.skeleton-panel i{height:48px}
  .rules-hub-home-faq{margin-top:65px;border-radius:0}
}
