/* P21.5 — Corporate legal utility pages */
.legal-hero{padding:58px 0 62px;background:linear-gradient(145deg,#f7fbfe 0%,#edf6fb 100%);border-bottom:1px solid var(--line)}
.legal-hero-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.7fr);gap:44px;align-items:center}
.legal-hero-copy h1{font-size:clamp(2.35rem,5vw,4.5rem);line-height:1.02;margin:12px 0 18px;letter-spacing:-.045em}
.legal-hero-copy>p{max-width:760px;font-size:1.08rem;line-height:1.75;color:var(--muted)}
.legal-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.legal-summary-card{background:#0b1f33;color:#fff;border-radius:24px;padding:30px;box-shadow:0 22px 60px rgba(10,35,55,.14)}
.legal-summary-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:rgba(255,255,255,.1);margin-bottom:22px}
.legal-summary-icon svg{width:26px;height:26px}
.legal-summary-card strong{display:block;font-size:1.28rem;margin-bottom:10px}
.legal-summary-card p{color:#cfdee9;line-height:1.65;margin:0}
.legal-summary-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.legal-summary-links a{color:#fff;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:8px 11px;font-size:.78rem;font-weight:800}
.legal-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:42px;align-items:start}
.legal-accordion{display:grid;gap:12px;margin-top:24px}
.legal-accordion details{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 8px 28px rgba(20,48,70,.05)}
.legal-accordion summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:42px 1fr 26px;gap:12px;align-items:center;padding:18px 20px;font-size:1rem}
.legal-accordion summary::-webkit-details-marker{display:none}
.legal-accordion summary>span{font-size:.72rem;font-weight:900;letter-spacing:.08em;color:var(--primary)}
.legal-accordion summary>strong{font-size:1rem}
.legal-accordion summary>b{font-size:1.35rem;font-weight:400;text-align:center;transition:transform .2s ease}
.legal-accordion details[open] summary>b{transform:rotate(45deg)}
.legal-accordion-content{padding:0 20px 20px 74px}
.legal-accordion-content p{margin:0;color:var(--muted);line-height:1.78}
.legal-side{display:grid;gap:16px;position:sticky;top:110px}
.legal-info-card{border:1px solid var(--line);background:#fff;border-radius:20px;padding:24px}
.legal-info-card.is-soft{background:#f5f9fc}
.legal-info-card h3{font-size:1.25rem;margin:9px 0 10px}
.legal-info-card p{color:var(--muted);line-height:1.7;margin:0 0 16px}
.legal-bottom-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:34px;border:1px solid var(--line);background:#fff;border-radius:24px}
.legal-bottom-inner h2{margin:8px 0 8px;font-size:clamp(1.55rem,3vw,2.25rem)}
.legal-bottom-inner p{margin:0;color:var(--muted)}
.legal-bottom-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:960px){.legal-hero-grid,.legal-layout{grid-template-columns:1fr}.legal-side{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.legal-hero{padding:38px 0 42px}.legal-hero-grid{gap:26px}.legal-summary-card{padding:22px;border-radius:18px}.legal-content-section{padding-top:42px}.legal-side{grid-template-columns:1fr}.legal-accordion summary{grid-template-columns:34px 1fr 22px;padding:15px}.legal-accordion-content{padding:0 15px 17px 49px}.legal-bottom-inner{display:block;padding:23px}.legal-bottom-actions{justify-content:flex-start;margin-top:20px}.legal-bottom-actions .btn{width:100%;justify-content:center}}
