:root{--yellow:#e9d036;--ink:#1d1e1f;--muted:#777781;--cream:#fcfae8}*{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:Inter, sans-serif;font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.16;color:#111;font-weight:700;letter-spacing:-.035em}h1{font-size:clamp(32px,3.5vw,48px)}h2{font-size:30px}h3{font-size:16px;letter-spacing:-.025em}p{color:var(--muted)}.wrap{width:min(1120px,89%);margin-inline:auto}.skip-link{position:fixed;top:-60px;left:20px;z-index:100;background:white;padding:12px}.skip-link:focus{top:10px}a:focus-visible,summary:focus-visible{outline:3px solid var(--yellow);outline-offset:5px}.compliance-hero{position:relative;overflow:hidden;background:#252627;color:#fff;min-height:445px}.hero-photo{position:absolute;right:0;width:62%;height:100%;object-fit:cover;object-position:center 38%}.hero-shade{position:absolute;inset:0;background:linear-gradient(85deg,#242526 0%,#242526 38%,#242526e8 46%,#24252600 68%)}.hero-content{position:relative;padding-top:25px;padding-bottom:32px}.breadcrumb{display:flex;gap:12px;font-size:12px;margin-bottom:35px}.hero-copy{max-width:490px;width:48%}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:700;color:var(--yellow);margin-bottom:10px}.hero-copy h1{color:#fff;margin-bottom:20px}.hero-copy>p:not(.eyebrow){color:#f0f0f0;max-width:435px;line-height:1.45}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;border-radius:40px;background:var(--yellow);color:#111;font-weight:700;font-size:13px;padding:15px 25px;margin-top:22px;transition:background .2s}.button:hover{background:#f6df51}.button i{font-size:11px}.hero-tags{display:flex;align-items:center;gap:12px;font-size:11px;margin-top:25px}.hero-tags:before{content:'';width:40px;height:2px;background:var(--yellow)}.hero-shield{position:absolute;width:140px;height:170px;left:45%;top:145px;color:var(--yellow)}.pillars{display:grid;grid-template-columns:repeat(3,1fr);padding-block:25px 18px;gap:20px}.pillars article{display:flex;gap:24px;padding-right:25px;border-right:1px solid #e7e7e7}.pillars article:nth-child(3){border:0}.number{flex-shrink:0;display:grid;place-items:center;width:48px;height:48px;background:var(--cream);border:1px solid #f5eaa9;border-radius:50%;font-size:20px;color:#555}.pillars h2{font-size:19px;margin:6px 0 14px;max-width:170px}.pillars p{font-size:14px}.pillars small{grid-column:1/-1;text-align:center;color:var(--muted);font-size:11px}.workflow{display:grid;grid-template-columns:36% 1fr;gap:65px;padding-block:38px}.workflow h2:after,.risk-grid h2:after,.support h2:after,.operations h2:after,.audience-copy h2:after,.faqs h2:after,.readiness h2:after{content:'';display:block;width:52px;height:3px;background:var(--yellow);margin:18px 0 22px}.workflow p+p{margin-top:32px}.workflow-map{display:grid;grid-template-columns:repeat(3,1fr);gap:36px 20px;position:relative}.workflow-map article{text-align:center;position:relative}.workflow-map article:before{content:'';position:absolute;top:40px;left:-15%;width:130%;height:1px;background:var(--yellow);z-index:-1}.circle{display:inline-grid;place-items:center;width:78px;height:78px;border:1px solid var(--yellow);border-radius:50%;background:#fff;font-size:30px}.workflow-map h3{margin:9px 0 3px}.workflow-map p{font-size:13px;line-height:1.2}.risk-section{background:var(--cream);padding-block:30px}.risk-grid{display:grid;grid-template-columns:44% 1fr;gap:35px;align-items:center}.risk-grid>img{width:100%;height:395px;object-fit:cover;object-position:center 40%}.risk-grid h2:after{margin:12px 0}.risk-list article{display:flex;gap:23px;align-items:center;margin-top:13px}.risk-list article>span{width:58px;height:58px;flex-shrink:0;border-radius:50%;background:white;display:grid;place-items:center;font-size:25px}.risk-list article>div{flex:1;border-bottom:1px solid #dbd9c8;padding-bottom:12px}.risk-list article:last-child>div{border:0}.risk-list p{font-size:14px;margin-top:3px}.readiness{background:linear-gradient(110deg,#252627,#151617);padding-block:30px;color:white}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.readiness h2,.readiness h3{color:#fff}.readiness h2:after{margin:14px 0}.section-heading>p{font-size:13px;color:#ddd;margin-top:9px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.step-top{display:flex;align-items:center;gap:28px;position:relative;margin-bottom:13px}.step-top:before{content:'';position:absolute;left:0;right:-28px;height:2px;background:var(--yellow)}.steps article:last-child .step-top:before{right:55%}.step-top b{z-index:1;background:var(--yellow);color:#111;font-size:14px;border-radius:50%;width:27px;height:27px;display:grid;place-items:center}.step-top .circle{z-index:1;background:#222;color:var(--yellow);width:65px;height:65px;font-size:27px;border-width:2px}.steps p{font-size:13px;color:#ddd;margin-top:8px;max-width:220px}.support{padding-block:30px}.support h2:after{margin:14px 0 24px}.support-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 65px}.support-grid article{display:flex;gap:28px;align-items:center}.support-grid article>i{width:38px;font-size:29px;text-align:center}.support-grid h3{font-size:14px}.support-grid p{font-size:13px;margin-top:5px}.operations{border-top:1px solid #eee}.operations-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:35px;padding-block:12px}.operations h2{font-size:25px}.operations p{font-size:14px;max-width:440px}.network{height:230px;position:relative}.network-center{position:absolute;left:45%;top:44%;font-size:75px;line-height:1}.network-center>.fa-lock{position:absolute;font-size:23px;color:var(--yellow);top:20px;left:31px}.network-node{position:absolute;display:flex;align-items:center;gap:10px}.network-node .circle{width:53px;height:53px;font-size:23px}.network-node h3{font-size:11px}.network-node p{font-size:9px}.node-0{top:0;left:46%}.node-1{top:55px;left:3%}.node-2{top:55px;right:0}.node-3{bottom:8px;left:6%}.node-4{bottom:8px;right:0}.audiences{display:grid;grid-template-columns:40% repeat(3,1fr);background:var(--cream)}.audience-copy{padding:30px 25px 30px max(25px,calc((100vw - 1120px)/2))}.audience-copy h2{font-size:24px}.audience-copy h2:after{margin:10px 0 14px}.audience-copy p{font-size:13px}.audiences figure{position:relative;min-height:175px;border-left:3px solid white}.audiences img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center 30%}.audiences figcaption{position:absolute;bottom:0;left:0;right:0;padding:35px 15px 15px;background:linear-gradient(transparent,#0009);font-size:12px;color:white;font-weight:600}.faqs{padding-block:24px}.faqs h2{font-size:24px}.faqs h2:after{margin:9px 0 14px}.faqs details{border:1px solid #e4e4e7;border-radius:6px;margin-top:5px;font-size:12px}.faqs summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:10px 17px;list-style:none}.faqs summary::-webkit-details-marker{display:none}.faqs details[open] summary i{transform:rotate(180deg)}.faqs details p{padding:0 17px 14px;line-height:1.6}.final-cta{background:var(--cream);padding:22px 0}.final-cta>.wrap{display:flex;justify-content:space-between;align-items:center;gap:25px}.final-cta h2{font-size:25px}.final-cta p{font-size:13px;margin-top:4px}.button.dark{background:#1b1b1b;color:#fff;margin:0;flex-shrink:0}.button.dark:hover{background:#3b3b3b}
@media(min-width:1500px){.hero-photo{width:58%}}@media(max-width:900px){h2{font-size:25px}.hero-copy{width:55%}.hero-shield{left:53%;width:100px}.hero-shade{background:linear-gradient(90deg,#242526 25%,#242526ed 48%,#24252633)}.pillars article{gap:12px;padding-right:10px}.pillars h2{font-size:16px}.workflow{gap:25px;grid-template-columns:36% 1fr}.risk-grid>img{height:410px}.section-heading{display:block}.section-heading>p{margin-bottom:18px}.steps{gap:15px}.support-grid{gap:22px}.network-node{gap:4px}.network-node p{max-width:70px}.audience-copy{padding:24px}.audience-copy h2{font-size:20px}.final-cta h2{font-size:21px}}
@media(max-width:600px){.wrap{width:90%}.compliance-hero{min-height:520px}.hero-photo{width:100%;opacity:.45}.hero-shade{background:linear-gradient(90deg,#242526fa,#24252690)}.hero-copy{width:100%;max-width:420px}.hero-content{padding-bottom:36px}.breadcrumb{font-size:10px;gap:8px;margin-bottom:40px}.hero-copy h1{font-size:35px}.hero-copy>p:not(.eyebrow){max-width:90%}.hero-shield{display:none}.pillars{grid-template-columns:1fr;padding-top:24px;gap:20px}.pillars article{border-right:0;border-bottom:1px solid #eee;padding-bottom:18px}.pillars h2{max-width:none;margin:0 0 8px;font-size:18px}.pillars small{font-size:10px}.workflow{grid-template-columns:1fr;gap:30px;padding-block:28px}.workflow p+p{margin-top:18px}.workflow-map{gap:25px 10px}.circle{width:65px;height:65px;font-size:25px}.workflow-map h3{font-size:13px}.workflow-map p{font-size:11px}.workflow-map article:before{top:33px}.risk-grid{grid-template-columns:1fr;gap:24px}.risk-grid>img{height:290px}.risk-list article{gap:15px}.risk-list p{font-size:13px}.steps{grid-template-columns:1fr 1fr;gap:25px}.step-top:before{right:0}.steps article:last-child .step-top:before{right:0}.steps h3{font-size:14px}.support-grid{grid-template-columns:1fr}.support-grid article{gap:20px}.operations-grid{grid-template-columns:1fr;padding-block:25px;gap:20px}.network{max-width:390px;width:100%;margin:auto}.audiences{grid-template-columns:repeat(3,1fr)}.audience-copy{grid-column:1/-1;padding:25px 5%}.audiences figure{min-height:170px}.audiences figcaption{font-size:10px;padding:25px 8px 10px}.final-cta>.wrap{flex-direction:column;align-items:flex-start;gap:18px}.final-cta h2{font-size:23px}}
.workflow-map{isolation:isolate}.network:before{content:'';position:absolute;left:20%;right:19%;top:38%;height:43%;background:linear-gradient(20deg,transparent 49.3%,var(--yellow) 49.6%,var(--yellow) 50.3%,transparent 50.6%),linear-gradient(-20deg,transparent 49.3%,var(--yellow) 49.6%,var(--yellow) 50.3%,transparent 50.6%);z-index:0}.network-center{background:white}.network-node{z-index:1}.network-node>div{background:white}.network-center:before{content:'';position:absolute;width:1px;height:35px;left:50%;top:-35px;background:var(--yellow)}

/* Match About's gentle scroll entrances and hover interactions. */
html { scroll-behavior: smooth; scroll-padding-top: 110px; }
.compliance-reveal {
  opacity: 1;
  translate: 0 0;
  transition: opacity .65s ease var(--reveal-delay, 0ms),
    translate .65s ease var(--reveal-delay, 0ms),
    transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}
.compliance-reveal.is-pending { opacity: 0; translate: 0 24px; }
.compliance-page .button { transition: background .2s ease, transform .3s ease, box-shadow .3s ease; }
.compliance-page .button i, .compliance-page .circle, .compliance-page .risk-list article > span {
  transition: transform .3s ease, background .3s ease, box-shadow .3s ease;
}
.compliance-page .audiences figure { overflow: hidden; }
.compliance-page .audiences img { transition: transform .5s ease; }
.compliance-page .faqs summary i { transition: transform .3s ease; }
@media (hover: hover) and (pointer: fine) {
  .compliance-page .button:hover { transform: translateY(-3px); box-shadow: 0 8px 20px #00000015; }
  .compliance-page .button:hover i { transform: translateX(4px); }
  .compliance-page .workflow-map article:hover .circle,
  .compliance-page .steps article:hover .circle,
  .compliance-page .risk-list article:hover > span { transform: translateY(-4px); box-shadow: 0 6px 16px #0000000c; }
  .compliance-page .audiences figure:hover img { transform: scale(1.04); }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .compliance-page #main *, .compliance-page #main *::before, .compliance-page #main *::after { animation: none !important; transition: none !important; }
  .compliance-reveal.is-pending { opacity: 1; translate: none; }
}
@media print {
  .compliance-reveal.is-pending { opacity: 1; translate: none; }
}

/* Match the final typography scale used by about.html. */
.compliance-page #main {
  font-size: 15px;
  line-height: 1.45;
}
.compliance-page #main h1 {
  /* About's clamp resolves to its 36px minimum at every viewport width. */
  font-size: 36px;
  line-height: 1.08;
  letter-spacing: -1.5px;
}
.compliance-page #main h2 {
  font-size: 28px;
  line-height: 1.18;
  letter-spacing: -.8px;
}
.compliance-page #main h3 {
  font-size: 17px;
  line-height: 1.25;
  letter-spacing: -.3px;
}
.compliance-page #main p {
  font-size: 15px;
  line-height: 1.45;
}
.compliance-page #main .eyebrow {
  font-size: 11px;
  letter-spacing: 1.2px;
}
.compliance-page #main .pillars h2 {
  max-width: none;
  font-size: 17px;
  line-height: 1.25;
  letter-spacing: -.3px;
}
/* Keep diagram labels readable without crowding the connecting paths. */
.compliance-page #main .network-node h3 { font-size: 13px; }
.compliance-page #main .network-node p { font-size: 12px; max-width: 105px; }
.compliance-page .network { height: 270px; }
.compliance-page .node-1, .compliance-page .node-2 { top: 70px; }
.compliance-page .network-center { left: 42%; }
@media (max-width: 600px) {
  .compliance-page #main .support-grid h3 { font-size: 14px; }
  .compliance-page #main .support-grid p { font-size: 12px; }
  .compliance-page #main .final-cta h2 { font-size: 23px; line-height: 1.2; }
  .compliance-page #main .final-cta p { font-size: 13px; line-height: 1.55; }
  .compliance-page .final-cta .button { font-size: 12px; }
  .compliance-page .workflow-map { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .compliance-page #main .network-node p { max-width: 72px; }
}

/* Make FAQ questions as readable as the body copy. */
.compliance-page .faqs summary {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  padding: 14px 17px;
  gap: 16px;
}
.compliance-page .faqs summary i {
  flex-shrink: 0;
  font-size: 12px;
}
