
.legal-cover{position:relative;overflow:hidden;padding:4.25rem 0 3.5rem;background:linear-gradient(135deg,#f7faff 0%,#eef4ff 100%);border-bottom:1px solid var(--border)}
.legal-cover::before,.legal-cover::after{content:"";position:absolute;border:1px solid rgba(21,94,239,.13);border-radius:50%;pointer-events:none}.legal-cover::before{width:310px;height:310px;right:8%;top:-190px}.legal-cover::after{width:190px;height:190px;right:20%;bottom:-145px}
.legal-cover__inner{position:relative;z-index:1}.legal-cover .breadcrumb{margin-bottom:1.45rem}.legal-cover h1{max-width:760px;margin:.55rem 0 .7rem;font-size:clamp(2.35rem,5vw,4rem);line-height:1.05}.legal-cover p{max-width:650px;margin:0;color:var(--text-muted);font-size:1.08rem}
.legal-section{padding-top:4.5rem}.legal-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:4.5rem;align-items:start}.legal-sidebar{position:relative}.legal-sidebar__inner{position:sticky;top:112px;border:1px solid var(--border);border-radius:16px;background:#fff;padding:1.25rem;box-shadow:0 12px 35px rgba(17,24,39,.05)}.legal-sidebar__title{margin:0 0 1.15rem;padding:0 .55rem;font-size:1.05rem;font-weight:800;color:var(--text)}.legal-nav__group+ .legal-nav__group{margin-top:1.2rem;padding-top:1.15rem;border-top:1px solid var(--border)}.legal-nav__group>span{display:block;padding:0 .55rem .45rem;color:var(--text-muted);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.legal-nav__group a{display:block;padding:.7rem .7rem;border-radius:9px;color:var(--text);font-size:.94rem;line-height:1.35}.legal-nav__group a:hover{background:var(--surface)}.legal-nav__group a.is-active{background:#eef4ff;color:var(--primary);font-weight:800;box-shadow:inset 3px 0 0 var(--primary)}
.legal-content{max-width:820px}.legal-content__header{padding-bottom:2rem;border-bottom:1px solid var(--border)}.legal-content__kicker{display:block;margin-bottom:.65rem;color:var(--primary);font-size:.78rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.legal-content h2{margin:0;font-size:clamp(1.8rem,3vw,2.5rem)}.legal-block{padding:2rem 0;border-bottom:1px solid var(--border)}.legal-block h3{margin:0 0 .8rem;font-size:1.15rem}.legal-block p,.legal-block address{margin:0;color:var(--text-muted);font-style:normal;line-height:1.8}.legal-block strong{color:var(--text)}.legal-block a{color:var(--primary);font-weight:700}.legal-block--muted{padding:1.6rem;margin-top:1.5rem;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.legal-data{margin:0}.legal-data>div{display:grid;grid-template-columns:190px minmax(0,1fr);gap:1.25rem;padding:.7rem 0}.legal-data dt{font-weight:700;color:var(--text)}.legal-data dd{margin:0}.legal-updated{display:flex;justify-content:space-between;gap:1rem;margin-top:2.25rem;padding:1rem 1.15rem;border-radius:12px;background:#f7f9fc;color:var(--text-muted)}.legal-updated strong{color:var(--text)}.footer-link--current{color:#fff!important;font-weight:700}
@media(max-width:900px){.legal-layout{grid-template-columns:1fr;gap:2rem}.legal-sidebar__inner{position:static}.legal-sidebar nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.legal-nav__group+.legal-nav__group{margin:0;padding:0;border:0}}
@media(max-width:640px){.legal-cover{padding:3rem 0 2.75rem}.legal-section{padding-top:2.75rem}.legal-sidebar nav{grid-template-columns:1fr}.legal-nav__group+.legal-nav__group{padding-top:1rem;border-top:1px solid var(--border)}.legal-data>div{grid-template-columns:1fr;gap:.2rem}.legal-content{min-width:0}}
.legal-intro{margin:1rem 0 0;color:var(--text-muted);line-height:1.75}.legal-intro strong{color:var(--text)}
.legal-toc{margin:2rem 0 .5rem;padding:1.35rem 1.5rem;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.legal-toc>strong{display:block;margin-bottom:.75rem}.legal-toc ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1.5rem;margin:0;padding-left:1.25rem}.legal-toc a{color:var(--text-muted);font-size:.93rem}.legal-toc a:hover{color:var(--primary)}
.legal-block{scroll-margin-top:120px}.legal-block p+p{margin-top:.85rem}.legal-list{margin:.85rem 0 0;padding-left:1.25rem;color:var(--text-muted)}.legal-list li{margin:.5rem 0;line-height:1.7}.legal-note{margin-top:1.2rem;padding:1rem 1.1rem;border-left:4px solid var(--primary);border-radius:8px;background:#eef4ff;color:var(--text-muted);line-height:1.65}.legal-note strong{color:var(--text)}.legal-data--compact{margin-top:1rem}
@media(max-width:640px){.legal-toc ol{grid-template-columns:1fr}}

.legal-note--warning{border-left-color:#d97706;background:#fff8eb}.legal-note--warning strong{color:#92400e}


/* Cookie policy */
.legal-table-wrap{overflow-x:auto;margin:1.4rem 0 1.1rem;border:1px solid var(--color-border,#dfe5ee);border-radius:14px;background:#fff}
.legal-table{width:100%;min-width:760px;border-collapse:collapse;text-align:left}
.legal-table th,.legal-table td{padding:1rem 1.1rem;border-bottom:1px solid var(--color-border,#e4e8ef);vertical-align:top}
.legal-table th{background:#f5f8fc;color:#172033;font-size:.92rem}
.legal-table tr:last-child td{border-bottom:0}
.cookie-categories div{align-items:flex-start}
.legal-inline-button{display:inline;border:0;background:none;padding:0;color:var(--color-primary,#155eef);font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}
.legal-inline-button:hover{text-decoration:none}

/* Withdrawal notice */
.legal-action-box{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin:2rem 0;padding:1.35rem 1.45rem;border:1px solid #bfd1ff;border-radius:14px;background:#eef4ff}
.legal-action-box strong{display:block;margin-bottom:.25rem;color:var(--text);font-size:1.05rem}.legal-action-box p{margin:0;color:var(--text-muted)}
.legal-address-card{margin:1rem 0!important;padding:1.1rem 1.2rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}
.legal-form-sample{margin-top:1.2rem;padding:1.4rem;border:1px solid var(--border);border-radius:14px;background:#fff;box-shadow:0 10px 28px rgba(17,24,39,.04)}
.legal-form-sample p{margin:.55rem 0!important;color:var(--text-muted)}
@media(max-width:640px){.legal-action-box{align-items:stretch;flex-direction:column}.legal-action-box .button{width:100%;text-align:center}}
