
.cq-generated-page { min-height: calc(100vh - 76px); background: var(--color-surface); }
.cq-legal-main { padding: clamp(3rem,7vw,6rem) clamp(1.25rem,5vw,4rem); background: var(--color-surface); width: 100%; }
.cq-legal-content { width: 100%; max-width: 58rem; margin-inline: auto; color: var(--color-on-surface); font-family: var(--font-family-body); }
.cq-legal-content > .hero-title { margin: .8rem 0 1.4rem; font-size: var(--font-size-4xl); }
.cq-legal-updated { font-size: .88rem; letter-spacing: .04em; color: var(--color-on-surface-secondary); }
.cq-legal-intro { margin: 1rem 0 2rem; font-size: var(--font-size-lg); line-height: 1.65; }
.cq-legal-main .cq-business-details { padding: 1.4rem; border: 1px solid #dfd9cf; background: #f6f3ed; margin: 0 0 2.6rem; }
.cq-legal-main .cq-business-grid strong { color: var(--color-primary); }
.cq-legal-section { padding: 1.6rem 0; border-bottom: 1px solid #e2ddd4; }
.cq-legal-section h2 { color: var(--color-on-surface); font-family: var(--font-family-heading); font-size: var(--font-size-3xl); margin: 0 0 .65rem; }
.cq-legal-section p { line-height: 1.8; font-size: var(--font-size-base); margin: 0; overflow-wrap: anywhere; }
.cq-legal-home { margin-top: 2.2rem; }
.cq-legal-content a:not(.btn),.cq-legal-content a:visited:not(.btn) { color: var(--color-primary); text-decoration: none; }
.cq-legal-content a:hover { color: var(--color-on-surface); }
.cq-legal-content a:active { color: var(--color-accent); }
.cq-error-content { min-height: 42vh; display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.cq-error-content > p { margin: 0 0 2rem; }
@media (max-width: 767px) { .cq-legal-main {padding: 2.4rem 1.1rem 4rem;} .cq-legal-section {padding: 1.2rem 0;} }
