.legal{background:var(--color-surface-app);padding-bottom:72px}.legal-hero{border-bottom:1px solid var(--color-border-soft);background:radial-gradient(circle at 88% 20%, #a8d38859, transparent 32%), linear-gradient(180deg, #fffaf2 0%, var(--color-white) 100%);padding-block:48px 0;position:relative;overflow:hidden}.legal-hero__inner{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.legal-hero__title{color:var(--color-brand);font-size:clamp(2rem,1.4rem + 2vw,2.75rem);font-weight:800;line-height:1.2}.legal-hero__lead{max-width:720px;font-size:var(--fs-18);color:var(--color-text-body);line-height:28px}.legal-hero__meta{font-size:var(--fs-14);color:var(--color-text-muted)}.legal-tabs{flex-wrap:wrap;gap:0 28px;margin-top:14px;display:flex}.legal-tabs__item{font-size:var(--fs-16);color:var(--color-text-subtle);transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease);border-bottom:3px solid #0000;padding-block:12px;font-weight:600}.legal-tabs__item:hover{color:var(--color-brand)}.legal-tabs__item.is-active{border-bottom-color:var(--color-brand);color:var(--color-brand)}.legal-draft{border:1px solid var(--color-warning-border);border-radius:var(--radius-md);background:var(--color-warning-bg);align-items:flex-start;gap:10px;margin-top:24px;padding:12px 16px;display:flex}.legal-draft p{font-size:var(--fs-14);color:var(--color-warning-text);flex:1;line-height:20px}.legal-draft img{flex:none;margin-top:1px}.legal__body{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:32px;margin-top:24px;display:grid}.legal-toc{top:calc(var(--header-h) + 24px);position:sticky}.legal-toc__box{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);background:var(--color-white);padding:20px}.legal-toc__title{font-size:var(--fs-14);letter-spacing:.5px;text-transform:uppercase;color:var(--color-text);cursor:default;font-weight:700;list-style:none}.legal-toc__title::-webkit-details-marker{display:none}.legal-toc__list{counter-reset:toc;flex-direction:column;gap:2px;margin-top:12px;display:flex}.legal-toc__list a{border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:var(--fs-14);color:var(--color-text-body);transition:background var(--dur) var(--ease), color var(--dur) var(--ease);border-left:3px solid #0000;gap:8px;padding:7px 10px;line-height:20px;display:flex}.legal-toc__list a:before{counter-increment:toc;content:counter(toc) ".";min-width:18px;color:var(--color-text-muted)}.legal-toc__list a:hover{background:var(--color-surface-muted);color:var(--color-brand)}.legal-toc__list a.is-current{border-left-color:var(--color-brand);background:var(--color-brand-tint-border);color:var(--color-brand);font-weight:600}.legal-doc{border:1px solid var(--color-border-soft);border-radius:var(--radius-xl);background:var(--color-white);font-size:var(--fs-16);color:var(--color-text-body);flex-direction:column;gap:36px;padding:40px 48px;line-height:26px;display:flex}.legal-doc section{scroll-margin-top:calc(var(--header-h) + 24px);flex-direction:column;gap:12px;display:flex}.legal-doc h2{font-size:var(--fs-20);color:var(--color-text);font-weight:700;line-height:28px}.legal-doc ul{flex-direction:column;gap:8px;padding-left:22px;list-style:outside;display:flex}.legal-doc li::marker{color:var(--color-brand-accent-text)}.legal-doc strong{color:var(--color-text);font-weight:600}.legal-doc a{color:var(--color-brand);text-underline-offset:3px;font-weight:600;text-decoration:underline}.legal-doc a:hover{color:var(--color-brand-hover)}.legal-terms{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);flex-direction:column;margin:0;display:flex}.legal-terms>div{grid-template-columns:180px minmax(0,1fr);gap:16px;padding:14px 18px;display:grid}.legal-terms>div+div{border-top:1px solid var(--color-border-soft)}.legal-terms dt{color:var(--color-brand);font-weight:600}.legal-terms dd{margin:0}.legal-table-wrap{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);position:relative;overflow-x:auto}.legal-table{border-collapse:collapse;width:100%;min-width:520px;font-size:var(--fs-15);line-height:22px}.legal-table th,.legal-table td{border-bottom:1px solid var(--color-border-soft);text-align:left;vertical-align:top;padding:12px 18px}.legal-table tbody tr:last-child>*{border-bottom:0}.legal-table thead th{background:var(--color-surface-muted);font-size:var(--fs-13);letter-spacing:.4px;text-transform:uppercase;color:var(--color-text-muted);font-weight:700}.legal-table tbody th{width:200px;color:var(--color-text);font-weight:600}.legal-contact{border-radius:var(--radius-md);background:var(--color-border-soft);gap:1px;margin:0;display:grid;overflow:hidden}.legal-contact>div{background:var(--color-brand-tint);grid-template-columns:120px minmax(0,1fr);gap:16px;padding:12px 18px;display:grid}.legal-contact dt{color:var(--color-text);font-weight:600}.legal-contact dd{margin:0}@media (width<=1023.98px){.legal__body{grid-template-columns:minmax(0,1fr);gap:20px}.legal-toc{position:static}.legal-toc__title{cursor:pointer;justify-content:space-between;align-items:center;display:flex}.legal-toc__title:after{content:"";width:21px;height:21px;transition:transform var(--dur) var(--ease);background:url("data:image/svg+xml,%3csvg%20preserveAspectRatio='none'%20overflow='visible'%20style='display:%20block;'%20width='21'%20height='21'%20viewBox='0%200%2021%2021'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20id='image'%3e%3cpath%20id='Vector'%20d='M6.3%208.4L10.5%2012.6L14.7%208.4'%20stroke='%236B7280'%20stroke-width='1.575'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/g%3e%3c/svg%3e") 50%/21px no-repeat}.legal-toc__box[open] .legal-toc__title:after{transform:rotate(180deg)}.legal-doc{padding:32px}}@media (width<=767.98px){.legal{padding-bottom:48px}.legal-hero{padding-top:32px}.legal-hero__lead{font-size:var(--fs-16);line-height:24px}.legal-tabs{gap:0 20px}.legal-tabs__item{font-size:var(--fs-14)}.legal-doc{font-size:var(--fs-15);gap:28px;padding:24px 18px;line-height:24px}.legal-doc h2{font-size:var(--fs-18);line-height:26px}.legal-terms>div,.legal-contact>div{grid-template-columns:minmax(0,1fr);gap:4px}}.contact{flex-direction:column;gap:28px;padding-block:40px 64px;display:flex}.contact__head{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.contact__title{color:var(--color-brand);font-size:clamp(1.75rem,1.3rem + 1.6vw,2.5rem);font-weight:800;line-height:1.2}.contact__lead{max-width:640px;font-size:var(--fs-16);color:var(--color-text-body);line-height:24px}.contact__lead a,.contact-form__note a,.error-page__help a{color:var(--color-brand);font-weight:600;text-decoration:underline}.contact__layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:24px;display:grid}.contact-form,.contact-info{border:1px solid var(--color-border-soft);border-radius:var(--radius-xl);background:var(--color-white);flex-direction:column;gap:18px;padding:28px;display:flex}.contact-form__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;display:grid}.contact-form .field__error[hidden],.contact-form .auth-form__success[hidden]{display:none}.contact-form__note{font-size:var(--fs-13);color:var(--color-text-muted);line-height:18px}.contact-form__submit{align-self:flex-start;min-width:180px}.contact-info__title{font-size:var(--fs-18);font-weight:700}.contact-info .legal-contact>div{grid-template-columns:minmax(0,1fr);gap:2px}.contact-info__links{font-size:var(--fs-14);flex-direction:column;gap:8px;display:flex}.contact-info__links a{color:var(--color-brand);font-weight:600}.contact-info__links a:hover{text-decoration:underline}.error-page{text-align:center;flex-direction:column;align-items:center;gap:12px;padding-block:48px 72px;display:flex}.error-page__mascot{width:200px;height:auto}.error-page__code{font-family:var(--font-display);color:var(--color-primary);font-size:64px;font-weight:800;line-height:1}.error-page__title{font-size:var(--fs-24);color:var(--color-text);font-weight:800}.error-page__text{max-width:520px;font-size:var(--fs-16);color:var(--color-text-body);line-height:24px}.error-page__actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px;display:flex}.error-page__help{font-size:var(--fs-14);color:var(--color-text-muted)}@media (width<=1023.98px){.contact__layout{grid-template-columns:minmax(0,1fr)}}@media (width<=575.98px){.contact{padding-block:24px 48px}.contact-form,.contact-info{padding:20px 16px}.contact-form__row{grid-template-columns:minmax(0,1fr)}.contact-form__submit{align-self:stretch}}
