.reg-main{max-width:1100px;margin:auto;padding:clamp(28px,5vw,72px) 24px;color:#132d3c}.reg-main h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(2.4rem,5vw,4.3rem);line-height:1.1}.reg-main p{max-width:76ch;line-height:1.8}.reg-lead{font-size:1.35rem}.reg-index{display:flex;flex-wrap:wrap;gap:12px;margin:32px 0}.reg-index a{padding:12px 18px;border:1px solid #b7c1c7;text-decoration:none;color:inherit}.reg-index a:hover,.reg-index a:focus-visible{background:#112c3d;color:#fff}.reg-note{border-top:1px solid #c2ab7b;padding:35px 0;scroll-margin-top:140px}.reg-note h2{font:normal clamp(1.8rem,3vw,2.6rem) Georgia,serif}.reg-note h3{font-size:1rem;margin-top:28px}.reg-meta{font-size:.86rem;color:#52626b}.reg-process{padding-left:25px;line-height:1.8}.reg-process li{padding:12px;border-bottom:1px solid #dbe1e5}.reg-main a{color:#224e66;text-underline-offset:4px}.reg-main a:focus-visible{outline:3px solid #b99858;outline-offset:3px}@media(max-width:600px){.reg-main{padding:28px 18px}.reg-index{display:grid}.reg-note{scroll-margin-top:100px}}
.reg-diagram{margin:24px 0;padding:20px;background:#edf1f3;border-left:3px solid #b59b68}.reg-diagram figcaption{font-size:.85rem;color:#52626b}.reg-diagram ol{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding-left:25px}.reg-diagram li{padding:15px;background:white;line-height:1.5}@media(max-width:650px){.reg-diagram ol{grid-template-columns:1fr}}
.reg-main{max-width:1220px;padding-inline:clamp(18px,5vw,72px);color:#132d3c}.reg-hero{margin:0 calc(clamp(18px,5vw,72px)*-1);padding:clamp(3rem,7vw,7rem) clamp(18px,5vw,72px);background:#0b2738;color:#f5f7f8}.reg-hero h1{max-width:900px;color:#fff;font:400 clamp(2.8rem,6vw,6.5rem)/.98 Manrope, sans-serif;letter-spacing:-.06em}.reg-hero p{color:#c3d0d6}.reg-hero .reg-lead{max-width:760px;font-size:clamp(1.1rem,2vw,1.45rem);color:#f1f5f6}.reg-hero-actions{display:flex;gap:1.2rem;align-items:center;flex-wrap:wrap;margin-top:2rem}.reg-hero-actions .button{background:#cba86a;color:#0b2738;border-color:#cba86a}.reg-hero-actions a:not(.button){color:#f5f7f8}.reg-principles,.reg-controls{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(0,1.8fr);gap:2rem;padding:clamp(3rem,6vw,5.5rem) 0;border-bottom:1px solid #d0d9dd}.reg-principles h2,.reg-library h2,.reg-controls h2{margin:.4rem 0;font:400 clamp(2rem,4vw,4rem)/1.02 Manrope,sans-serif;letter-spacing:-.04em}.section-no{color:#8d6d36;font:600 .7rem "DM Mono",monospace;letter-spacing:.08em}.reg-principles ol{display:grid;grid-template-columns:repeat(3,1fr);padding:0;margin:0;list-style:none;border:1px solid #c4cfd3}.reg-principles li{display:flex;flex-direction:column;gap:.7rem;padding:1.2rem;border-right:1px solid #c4cfd3}.reg-principles li:last-child{border-right:0}.reg-principles li b{font:600 .72rem "DM Mono",monospace;color:#806433}.reg-principles li span{line-height:1.6;color:#52626b}.reg-library{padding:clamp(3rem,6vw,5.5rem) 0}.reg-library>header{max-width:850px;margin-bottom:2rem}.reg-library>header p:not(.section-no){color:#52626b}.reg-topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#c4cfd3;border:1px solid #c4cfd3}.reg-topic{padding:clamp(1.2rem,2.5vw,2.2rem);background:#fbfcfc}.reg-topic-code{margin:0;color:#8d6d36;font:600 .68rem "DM Mono",monospace;letter-spacing:.08em}.reg-topic h3{margin:.7rem 0;font:500 clamp(1.3rem,2.3vw,2rem)/1.1 Manrope,sans-serif}.reg-topic>p:not(.reg-topic-code){color:#52626b;line-height:1.7}.reg-topic details{margin-top:1.2rem;padding-top:1rem;border-top:1px solid #d8e0e3}.reg-topic summary{cursor:pointer;color:#224e66;font-weight:600}.reg-topic details p{color:#52626b;line-height:1.7}.reg-topic details a{font-size:.85rem}.reg-controls{border-top:1px solid #d0d9dd}.reg-control-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #c4cfd3}.reg-control-grid>div{padding:1.2rem;border-right:1px solid #c4cfd3}.reg-control-grid>div:last-child{border-right:0}.reg-control-grid b{color:#806433;font:600 .7rem "DM Mono",monospace}.reg-control-grid p{color:#52626b;line-height:1.6}.reg-meta{padding:1.5rem 0;color:#647681}.reg-main .ahs-footer{margin-inline:calc(clamp(18px,5vw,72px)*-1)}
@media(max-width:800px){.reg-principles,.reg-controls{grid-template-columns:1fr}.reg-principles ol{grid-template-columns:1fr}.reg-principles li{border-right:0;border-bottom:1px solid #c4cfd3}.reg-principles li:last-child{border-bottom:0}.reg-topic-grid{grid-template-columns:1fr}.reg-control-grid{grid-template-columns:1fr}.reg-control-grid>div{border-right:0;border-bottom:1px solid #c4cfd3}.reg-control-grid>div:last-child{border-bottom:0}}

/* Editorial hierarchy and readable regulatory research cards. */
.reg-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 85% 15%,rgba(203,168,106,.18),transparent 38%),linear-gradient(125deg,#0b2738,#123b50 75%,#172e3d)}.reg-hero:after{content:"";position:absolute;z-index:-1;right:-4rem;bottom:-9rem;width:25rem;aspect-ratio:1;border:1px solid rgba(203,168,106,.22);border-radius:50%;box-shadow:0 0 0 2rem rgba(203,168,106,.025),0 0 0 5rem rgba(203,168,106,.025)}.reg-principles{align-items:start}.reg-principles ol{background:#fff;box-shadow:0 14px 35px rgba(11,39,56,.06)}.reg-library>header{position:relative;padding-bottom:1rem}.reg-library>header:after{content:"";position:absolute;left:0;bottom:0;width:4.5rem;height:3px;background:#cba86a}.reg-topic-grid{gap:0;border:0;background:transparent;align-items:stretch}.reg-topic{position:relative;margin:0 1px 1px 0;border:1px solid #d5dfe3;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.reg-topic:hover{z-index:1;transform:translateY(-3px);border-color:#b99858;box-shadow:0 14px 34px rgba(11,39,56,.09)}.reg-topic-code{display:flex;align-items:center;gap:.6rem}.reg-topic-code:before{content:"";width:1.5rem;height:1px;background:#b99858}.reg-topic h3{max-width:23ch}.reg-topic>p:not(.reg-topic-code){max-width:62ch}.reg-topic details{padding:1rem 1rem .2rem;background:#f2f6f7;border:1px solid #e0e7e9;border-radius:8px}.reg-topic summary{padding:.2rem 0 .5rem}.reg-topic summary::marker{color:#b18b48}.reg-topic details a{display:inline-block;margin:.25rem 0 1rem;font-weight:600}.reg-controls{background:linear-gradient(180deg,transparent,#f5f7f7)}.reg-control-grid{background:#fff;box-shadow:0 12px 30px rgba(11,39,56,.05)}.reg-main .reg-meta{margin-top:1rem;padding:1.2rem 1.4rem;background:#f2f5f6;border-left:3px solid #b99858}@media(prefers-reduced-motion:reduce){.reg-topic{transition:none}.reg-topic:hover{transform:none}}


.reg-evidence{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,2fr);gap:1.3rem;margin:2rem 0 0;padding:1.2rem 0 2.4rem;border-bottom:1px solid #d0d9dd}.reg-evidence>.section-no{margin:.2rem 0}.reg-evidence-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid #cbd6da;border-radius:10px;background:#fff;overflow:hidden}.reg-evidence-steps article{padding:1rem;border-right:1px solid #d5dfe3}.reg-evidence-steps article:last-child{border-right:0}.reg-evidence-steps b{color:#755a2c;font:700 .65rem/1.4 "DM Mono",monospace;letter-spacing:.06em}.reg-evidence-steps p{margin:.45rem 0 0;color:#405864;font-size:.84rem;line-height:1.55}.reg-topic details p{color:#263f4c}.reg-topic summary{color:#163f56}.reg-control-grid p{color:#3d5662}.reg-meta{color:#445964}
@media(max-width:760px){.reg-evidence{grid-template-columns:1fr}.reg-evidence-steps{grid-template-columns:1fr}.reg-evidence-steps article{border-right:0;border-bottom:1px solid #d5dfe3}.reg-evidence-steps article:last-child{border-bottom:0}}
@media(max-width:420px){}

.reg-legal-context{margin:1rem 0;padding:1rem 1.15rem;border-left:3px solid #aa8748;background:#f7f5ef;border-radius:0 .5rem .5rem 0}.reg-legal-context h4{margin:0 0 .45rem;color:#18334a;font-size:.92rem;letter-spacing:.02em}.reg-legal-context p{margin:0;line-height:1.68;color:#304355}.reg-primary-sources{display:flex;flex-wrap:wrap;gap:.45rem .8rem;align-items:center;margin-top:1rem;padding-top:.7rem;border-top:1px solid #d7dde1;font-size:.82rem}.reg-primary-sources a{color:#234d68;text-decoration:underline;text-underline-offset:2px}
