.legal-page{min-height:100vh;padding:36px 18px 90px;background:transparent;color:#30254F;font-family:Arial,Helvetica,sans-serif;line-height:1.7;overflow-wrap:anywhere}
.legal-shell{width:min(960px,100%);margin:0 auto}
.legal-card{background:#EDE8FA;border:1px solid rgba(48,37,79,.14);border-radius:22px;padding:40px;box-shadow:0 16px 44px rgba(48,37,79,.17)}
.legal-card h1{margin:0 0 14px;font-size:clamp(27px,4vw,36px);line-height:1.2;color:#30254F}
.legal-card h2{margin:30px 0 10px;font-size:21px;line-height:1.35;color:#30254F}
.legal-card h3{color:#30254F}
.legal-card p,.legal-card li{font-size:15px}
.legal-card ul,.legal-card ol{padding-left:24px}
.legal-card a{color:#57448E;text-decoration:underline;text-underline-offset:3px}
.legal-card a:focus-visible{outline:3px solid #57448E;outline-offset:3px}
.legal-meta{margin-bottom:26px;color:#57448E}
.legal-operator{margin:20px 0;padding:16px 18px;border-radius:12px;background:#fff;border:1px solid rgba(87,68,142,.15)}
.legal-footer{margin-top:32px;padding-top:20px;border-top:1px solid rgba(87,68,142,.22);color:#57448E;font-size:13px}
.contact-intro{font-size:16px!important;margin-bottom:26px}
.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.contact-panel{padding:24px;background:#fff;border:1px solid rgba(87,68,142,.18);border-radius:16px;min-width:0}
.contact-panel h2,.contact-notice h2{margin:0 0 12px;font-size:19px}
.contact-panel a{font-weight:700;font-size:17px}
.contact-panel p{margin-bottom:0}
.contact-notice{margin-top:20px;padding:22px 24px;border-radius:16px;background:rgba(87,68,142,.09);border-left:4px solid #57448E}
.contact-notice p{margin:0}
@media(max-width:640px){.legal-page{padding:16px 10px 90px}.legal-card{padding:24px 18px;border-radius:16px}.contact-grid{grid-template-columns:1fr}.contact-panel{padding:20px}.contact-notice{padding:18px}}


/* KAYROMA SHARED BACKGROUND
   Contact / Privacy / Terms use the global body background.
   No separate page background or gradient.
*/
body:has(.legal-page) > main,
body:has(.legal-page) .legal-page {
    background: transparent !important;
    background-image: none !important;
    background-color: transparent !important;
}
