.legal-page{background:#f7f6fb;color:var(--ink)}
.legal-page main{overflow:hidden}
.legal-page h1,.legal-page h2{letter-spacing:-.04em}
.legal-page a{overflow-wrap:anywhere}
.legal-page header{position:sticky}

.legal-hero{position:relative;padding:clamp(70px,9vw,122px) 0;overflow:hidden;background:radial-gradient(circle at 78% 22%,#493a85 0,transparent 28%),linear-gradient(145deg,#080810,#19152d 64%,#0c0b13);color:#f8f6ff}
.legal-hero::after{position:absolute;right:-110px;bottom:-190px;width:460px;height:460px;border:1px solid #9280ea44;border-radius:46% 54% 48% 52%;content:"";transform:rotate(28deg);pointer-events:none}
.legal-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.75fr);align-items:center;gap:clamp(42px,7vw,100px)}
.legal-hero-inner{max-width:690px}
.legal-kicker,.contact-panel>p:first-of-type,.policy-summary>p,.legal-nav>p,.legal-cta>div>p{margin-bottom:19px;color:#b6a7fb;font-size:10px;font-weight:600;letter-spacing:.16em}
.legal-hero h1{font-size:clamp(44px,6.5vw,82px);line-height:1.02;text-wrap:balance}
.legal-hero h1 span{background:linear-gradient(100deg,#4ba7e6,#9b6df3);background-clip:text;-webkit-background-clip:text;color:transparent}
.legal-hero-inner>p:last-child{max-width:600px;margin-top:27px;color:#c9c4d7;font-size:clamp(17px,1.8vw,21px);line-height:1.65}

.contact-panel,.policy-summary{position:relative;padding:34px;border:1px solid #ffffff25;border-radius:20px;background:#ffffff0d;box-shadow:0 24px 65px #0005;backdrop-filter:blur(12px)}
.contact-icon{position:absolute;top:25px;right:27px;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#7354e8;font-size:21px}
.contact-panel h2{max-width:310px;font-size:29px;line-height:1.2}
.contact-panel>p:nth-of-type(2){margin:17px 0 26px;color:#c9c4d7;font-size:14px;line-height:1.65}
.contact-panel>a{display:inline-flex;align-items:center;min-height:46px;padding:10px 15px;border-radius:8px;background:#fff;color:#47388e;font-size:13px;font-weight:600}
.policy-summary ul{display:grid;gap:13px;margin:0 0 27px;padding:0;list-style:none}
.policy-summary li{display:flex;align-items:flex-start;gap:10px;color:#f2effa;font-size:14px;line-height:1.5}
.policy-summary li::before{display:grid;place-items:center;flex:0 0 20px;width:20px;height:20px;border-radius:50%;background:#7354e8;content:"✓";font-size:10px}
.policy-summary>span{display:block;padding-top:19px;border-top:1px solid #ffffff1f;color:#afa9bc;font-size:12px}

.legal-body{padding:clamp(65px,8vw,105px) 0;background:linear-gradient(180deg,#fff,#f7f6fb)}
.support-intro{display:grid;grid-template-columns:.7fr 1.1fr 1.2fr;gap:clamp(25px,5vw,70px);align-items:start;margin-bottom:48px}
.support-intro .section-label{margin:7px 0 0!important}
.support-intro h2{font-size:clamp(31px,3.5vw,45px);line-height:1.12}
.support-intro>p:last-child{color:var(--muted);font-size:15px;line-height:1.75}
.support-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.legal-card{scroll-margin-top:110px;padding:30px;border:1px solid #e1deeb;border-radius:18px;background:#fff;box-shadow:0 14px 40px #27213b0b}
.support-grid .legal-card{min-height:245px}
.support-grid .legal-card.wide{grid-column:1/-1;min-height:0}
.card-number{display:inline-flex;margin-bottom:30px;color:#7659df;font-size:10px;font-weight:600;letter-spacing:.14em}
.legal-card h2{margin-bottom:15px;font-size:clamp(22px,2.2vw,29px);line-height:1.2}
.legal-card p{max-width:72ch;color:#595468;font-size:15px;line-height:1.78}
.legal-card p+p{margin-top:15px}
.legal-card a{color:#6044cb;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.legal-card{transition:transform .25s cubic-bezier(.2,0,0,1),box-shadow .25s ease,border-color .25s ease}
.legal-card:hover{transform:translateY(-3px);border-color:#c9bdec;box-shadow:0 22px 55px #27213b13}

.legal-layout{display:grid;grid-template-columns:245px minmax(0,780px);justify-content:center;align-items:start;gap:clamp(35px,6vw,80px)}
.legal-nav{position:sticky;top:120px;padding:24px;border:1px solid #e1deeb;border-radius:16px;background:#fff;box-shadow:0 12px 34px #27213b09}
.legal-nav>p{margin-bottom:15px;color:#7358d6}
.legal-nav a{display:flex;align-items:center;min-height:40px;border-bottom:1px solid #eeecf3;color:#5c5767;font-size:12px;line-height:1.35}
.legal-nav a:last-child{border-bottom:0}
.legal-nav a:hover{color:#6849d8}
.legal-document{display:grid;gap:18px;min-width:0}
.legal-document .legal-card{padding:clamp(26px,4vw,42px)}

.legal-cta{padding:80px 0;background:linear-gradient(135deg,#ece8ff,#eef5ff);text-align:center}
.legal-cta>div>p{margin-bottom:13px;color:#7155d3}
.legal-cta h2{margin-bottom:28px;font-size:clamp(32px,4.5vw,56px)}
.legal-page footer nav a[aria-current="page"]{color:#fff}

@media(max-width:900px){
  .legal-hero-grid{grid-template-columns:1fr;gap:38px}
  .contact-panel,.policy-summary{max-width:620px}
  .support-intro{grid-template-columns:1fr 1fr}
  .support-intro .section-label{grid-column:1/-1}
  .support-grid{grid-template-columns:1fr 1fr}
  .support-grid .legal-card.wide{grid-column:1/-1}
  .legal-layout{grid-template-columns:210px minmax(0,1fr);gap:28px}
}

@media(max-width:700px){
  .legal-hero{padding-block:58px}
  .legal-hero-grid{gap:30px}
  .legal-hero h1{font-size:clamp(40px,12vw,57px)}
  .legal-hero-inner>p:last-child{font-size:16px}
  .contact-panel,.policy-summary{padding:26px}
  .support-intro{grid-template-columns:1fr;gap:18px;margin-bottom:34px}
  .support-intro .section-label{grid-column:auto}
  .support-grid{grid-template-columns:1fr}
  .support-grid .legal-card.wide{grid-column:auto}
  .support-grid .legal-card{min-height:0}
  .legal-layout{grid-template-columns:1fr;gap:24px}
  .legal-nav{position:static;display:flex;gap:8px;overflow-x:auto;padding:10px;border-radius:12px;scrollbar-width:none}
  .legal-nav::-webkit-scrollbar{display:none}
  .legal-nav>p{display:none}
  .legal-nav a{flex:0 0 auto;min-height:44px;padding:8px 12px;border:0;border-radius:7px;background:#f1eefb;color:#514674;white-space:nowrap}
  .legal-card{padding:24px 21px}
  .card-number{margin-bottom:20px}
  .legal-cta{padding-block:60px}
}

@media(max-width:420px){
  .contact-panel>a{width:100%;justify-content:center;font-size:12px}
  .contact-icon{top:20px;right:20px;width:36px;height:36px}
  .legal-card p{font-size:14px}
}

@media(prefers-reduced-motion:reduce){.legal-card:hover{transform:none}}
@media(hover:none){.legal-card:hover{transform:none;box-shadow:0 14px 40px #27213b0b}}
