/* Legal + thank-you pages — uses the same CampusWalkin theme tokens as theme.css */
.cw-legal-hero{background:linear-gradient(135deg,#071a32 0%,#0a2547 65%,#102f55 100%);color:#fff;padding:64px 0 58px;position:relative;overflow:hidden}
.cw-legal-hero:after{content:"";position:absolute;right:-120px;top:-170px;width:430px;height:430px;border:1px solid rgba(213,171,76,.18);border-radius:50%;box-shadow:0 0 0 55px rgba(213,171,76,.035),0 0 0 110px rgba(213,171,76,.025);pointer-events:none}
.cw-legal-hero__eyebrow{display:inline-flex;align-items:center;gap:8px;color:#e0bb68;font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px}
.cw-legal-hero h1{font-family:var(--cw-font-serif);font-weight:700;font-size:clamp(2.25rem,5vw,4rem);line-height:1.04;letter-spacing:-.025em;margin:0 0 16px;max-width:780px}
.cw-legal-hero p{max-width:760px;color:rgba(255,255,255,.72);font-size:1.02rem;line-height:1.75;margin:0}
.cw-legal-shell{background:#f7f4ed;padding:52px 0 72px}
.cw-legal-card{background:#fff;border:1px solid rgba(12,36,67,.1);border-radius:18px;box-shadow:0 12px 36px rgba(8,27,52,.07);overflow:hidden}
.cw-legal-card__inner{padding:clamp(24px,4vw,52px)}
.cw-legal-meta{display:flex;flex-wrap:wrap;gap:8px 24px;padding-bottom:24px;margin-bottom:28px;border-bottom:1px solid rgba(12,36,67,.1);font-size:.84rem;color:var(--cw-muted)}
.cw-legal-meta strong{color:var(--cw-navy);font-weight:650}
.cw-legal-content{color:#34465a;font-size:.95rem;line-height:1.78}
.cw-legal-content h2{font-family:var(--cw-font-serif);color:var(--cw-navy);font-size:1.55rem;line-height:1.25;margin:34px 0 12px;font-weight:700}
.cw-legal-content h2:first-child{margin-top:0}
.cw-legal-content h3{color:var(--cw-navy);font-size:1rem;font-weight:700;margin:22px 0 8px}
.cw-legal-content p{margin:0 0 14px}
.cw-legal-content ul{padding-left:1.25rem;margin:0 0 16px}
.cw-legal-content li{margin-bottom:7px}
.cw-legal-content a{color:#0b5fa8;text-decoration-thickness:1px;text-underline-offset:2px}
.cw-legal-callout{background:#f8f3e7;border:1px solid rgba(186,137,31,.22);border-left:4px solid #c79329;border-radius:10px;padding:17px 18px;margin:24px 0;color:#4b4537}
.cw-legal-nav{background:#fff;border:1px solid rgba(12,36,67,.1);border-radius:14px;padding:18px;position:sticky;top:92px}
.cw-legal-nav__title{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#8a7350;font-weight:700;margin-bottom:10px}
.cw-legal-nav a{display:block;padding:9px 10px;border-radius:8px;text-decoration:none;color:#42546a;font-size:.88rem}
.cw-legal-nav a:hover,.cw-legal-nav a[aria-current="page"]{background:#f7f4ed;color:#0a1b33;font-weight:650}

.cw-thanks{min-height:calc(100vh - 190px);background:linear-gradient(180deg,#f7f4ed 0%,#fff 100%);padding:64px 0 80px;display:flex;align-items:center}
.cw-thanks-card{max-width:820px;margin:auto;background:#fff;border:1px solid rgba(12,36,67,.1);border-radius:22px;box-shadow:0 18px 50px rgba(8,27,52,.09);padding:clamp(28px,5vw,58px);text-align:center}
.cw-thanks-icon{width:74px;height:74px;border-radius:50%;background:#0a1b33;color:#dfba64;display:inline-flex;align-items:center;justify-content:center;margin-bottom:24px;box-shadow:0 0 0 9px #f4ead4}
.cw-thanks-card h1{font-family:var(--cw-font-serif);color:var(--cw-navy);font-size:clamp(2rem,5vw,3.3rem);line-height:1.08;margin:0 0 14px}
.cw-thanks-card .cw-thanks-lead{color:#53657a;font-size:1.05rem;line-height:1.7;max-width:650px;margin:0 auto 30px}
.cw-thanks-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;text-align:left;margin:30px 0}
.cw-thanks-step{border:1px solid rgba(12,36,67,.09);border-radius:12px;padding:16px;background:#fcfbf8}
.cw-thanks-step span{display:block;color:#b27e1c;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}
.cw-thanks-step strong{display:block;color:#0a1b33;font-size:.91rem;line-height:1.4}
.cw-thanks-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:26px}
.cw-btn--outline-navy{background:#fff;border:1px solid rgba(10,27,51,.2);color:#0a1b33}
.cw-btn--outline-navy:hover{background:#f7f4ed;color:#0a1b33}

@media(max-width:991.98px){.cw-legal-nav{position:static}.cw-legal-shell{padding-top:34px}}
@media(max-width:575.98px){.cw-legal-hero{padding:46px 0 42px}.cw-legal-shell{padding:26px 0 52px}.cw-legal-card{border-radius:14px}.cw-thanks{padding:36px 0 54px}.cw-thanks-steps{grid-template-columns:1fr}.cw-thanks-actions .cw-btn{width:100%;justify-content:center}}
