.legal-hero{
padding-bottom:var(--space-4);
background:var(--c-peach);
color:var(--c-ink);
}

.legal-hero__copy{
display:grid;
gap:var(--space-2);
max-width:var(--container-narrow);
min-width:0;
}

.legal-title-group{
display:grid;
gap:var(--space-2);
}

.legal-title-group .c-kicker{
width:fit-content;
max-width:100%;
align-self:flex-start;
}

.legal-title-group h1{
font-size:var(--fs-5);
line-height:var(--lh-heading);
overflow-wrap:anywhere;
}

.legal-hero__copy .c-lead{
max-width:44rem;
color:#594f4d;
}

.legal-meta{
display:flex;
flex-wrap:wrap;
gap:var(--space-1) var(--space-2);
padding-top:var(--space-1);
color:#665b59;
font-size:var(--fs-1);
line-height:1.5;
}

.legal-meta span{
display:inline-flex;
flex-wrap:wrap;
gap:.35rem;
min-width:0;
}

.legal-meta strong{
color:var(--c-ink);
font-weight:700;
}

.legal-document{
background:var(--c-base);
color:var(--c-ink);
}

.legal-layout{
display:grid;
grid-template-columns:minmax(14rem,18rem) minmax(0,1fr);
gap:var(--space-4);
align-items:start;
}

.legal-layout>*{
min-width:0;
}

.legal-index{
position:sticky;
top:7.5rem;
display:grid;
gap:var(--space-3);
padding:var(--space-3);
border-radius:var(--radius-md);
background:var(--c-surface);
color:var(--c-ink);
box-shadow:var(--shadow-soft);
}

.legal-index__head{
display:grid;
gap:var(--space-1);
}

.legal-index__head .c-badge{
width:fit-content;
max-width:100%;
align-self:flex-start;
}

.legal-index__head h2{
font-size:var(--fs-3);
line-height:var(--lh-heading);
}

.legal-index ol{
list-style:none;
margin:0;
padding:0;
}

.legal-index li{
border-bottom:1px solid var(--c-line);
}

.legal-index li:last-child{
border-bottom:0;
}

.legal-index ol a{
display:grid;
grid-template-columns:1.8rem minmax(0,1fr);
gap:var(--space-1);
align-items:start;
padding:.72rem 0;
color:#51494d;
font-size:var(--fs-1);
line-height:1.4;
}

.legal-index ol a:hover{
color:#9b4825;
}

.legal-index ol a span{
font-family:var(--font-mono);
font-size:var(--fs-0);
font-variant-numeric:tabular-nums;
color:#8a7f84;
}

.legal-index__contact{
display:grid;
gap:var(--space-2);
padding-top:var(--space-2);
border-top:1px solid var(--c-line);
}

.legal-index__contact p{
color:var(--c-muted);
font-size:var(--fs-1);
}

.legal-index__contact .c-btn{
display:inline-flex;
width:auto;
max-width:100%;
min-width:0;
justify-self:start;
grid-template-columns:none;
padding:.72rem 1.25rem;
align-items:center;
white-space:nowrap;
}

.legal-content{
min-width:0;
border-radius:var(--radius-lg);
background:var(--c-surface);
color:var(--c-ink);
box-shadow:var(--shadow-soft);
}

.legal-section{
padding:var(--space-4);
scroll-margin-top:8rem;
border-bottom:1px solid var(--c-line);
}

.legal-section:last-child{
border-bottom:0;
}

.legal-section__head{
display:grid;
grid-template-columns:auto minmax(0,1fr);
gap:var(--space-2);
align-items:start;
}

.legal-section__head>div{
display:grid;
gap:var(--space-1);
min-width:0;
}

.legal-section__number{
display:inline-flex;
align-items:center;
justify-content:center;
width:2.5rem;
height:2.5rem;
border-radius:999px;
background:var(--c-peach);
color:#71391f;
font-family:var(--font-mono);
font-size:var(--fs-1);
line-height:1;
font-weight:700;
font-variant-numeric:tabular-nums;
}

.legal-section__eyebrow{
color:#8a5a46;
font-size:var(--fs-0);
line-height:1.35;
font-weight:700;
letter-spacing:.08em;
text-transform:uppercase;
}

.legal-section__head h2{
font-size:var(--fs-4);
overflow-wrap:anywhere;
}

.legal-section__body{
margin-top:var(--space-3);
color:#4e474b;
}

.legal-section__body>p{
max-width:48rem;
}

.legal-facts{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,11rem),1fr));
gap:var(--space-2);
align-items:start;
}

.legal-facts div{
display:grid;
gap:var(--space-1);
padding:var(--space-2);
border-radius:var(--radius-sm);
background:var(--c-base);
color:var(--c-ink);
}

.legal-facts strong{
font-family:var(--font-head);
font-size:var(--fs-2);
line-height:1.35;
}

.legal-facts span{
color:#625a5f;
font-size:var(--fs-1);
line-height:1.55;
}

.legal-data-list{
display:grid;
margin:0;
}

.legal-data-list div{
display:grid;
grid-template-columns:minmax(8rem,.32fr) minmax(0,1fr);
gap:var(--space-2);
padding:var(--space-2) 0;
border-bottom:1px solid var(--c-line);
}

.legal-data-list div:first-child{
border-top:1px solid var(--c-line);
}

.legal-data-list dt{
color:var(--c-ink);
font-size:var(--fs-2);
}

.legal-data-list dd{
color:#5f575c;
}

.legal-purpose-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));
gap:var(--space-2);
align-items:start;
list-style:none;
}

.legal-purpose-grid li{
display:grid;
gap:var(--space-1);
padding:var(--space-3);
border-radius:var(--radius-md);
background:var(--c-lilac);
color:var(--c-ink);
}

.legal-purpose-grid strong{
font-family:var(--font-head);
font-size:var(--fs-3);
line-height:var(--lh-heading);
}

.legal-purpose-grid span{
color:#5d5261;
font-size:var(--fs-1);
line-height:1.6;
}

.legal-payment-panel{
border-radius:var(--radius-md);
overflow:hidden;
background:var(--c-blue);
color:var(--c-ink);
}

.legal-payment-panel__intro{
display:grid;
gap:var(--space-2);
padding:var(--space-3);
}

.legal-payment-panel__intro .c-badge{
width:fit-content;
max-width:100%;
align-self:flex-start;
background:#ffffff;
color:#554e52;
}

.legal-payment-panel__intro h3{
font-size:var(--fs-3);
}

.legal-payment-panel__intro p{
color:#554f5e;
}

.legal-payment-panel__rows{
display:grid;
background:#ffffff;
color:var(--c-ink);
}

.legal-payment-panel__rows div{
display:grid;
grid-template-columns:minmax(8rem,.3fr) minmax(0,1fr);
gap:var(--space-2);
padding:var(--space-2) var(--space-3);
border-top:1px solid var(--c-line);
}

.legal-payment-panel__rows span{
color:#71696e;
font-size:var(--fs-1);
}

.legal-payment-panel__rows strong{
font-size:var(--fs-1);
line-height:1.55;
overflow-wrap:anywhere;
}

.legal-section .table-scroll{
box-shadow:none;
}

.legal-section .c-table{
min-width:40rem;
}

.legal-section .c-table caption{
color:var(--c-muted);
}

.legal-sharing-list{
list-style:none;
}

.legal-sharing-list li{
padding:var(--space-2) 0;
border-bottom:1px solid var(--c-line);
}

.legal-sharing-list li:first-child{
border-top:1px solid var(--c-line);
}

.legal-sharing-list li>div{
display:grid;
grid-template-columns:minmax(10rem,.35fr) minmax(0,1fr);
gap:var(--space-2);
}

.legal-sharing-list strong{
color:var(--c-ink);
font-family:var(--font-head);
line-height:1.45;
}

.legal-sharing-list span{
color:#625a5f;
font-size:var(--fs-1);
line-height:1.6;
}

.legal-security-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));
gap:var(--space-2);
align-items:start;
}

.legal-security-grid .c-card{
display:grid;
gap:var(--space-1);
}

.legal-security-grid h3{
font-size:var(--fs-3);
}

.legal-security-grid p{
color:#5d555a;
font-size:var(--fs-1);
}

.legal-request-steps{
display:grid;
}

.legal-request-steps>div{
display:grid;
grid-template-columns:auto minmax(0,1fr);
gap:var(--space-2);
padding:var(--space-2) 0;
border-bottom:1px solid var(--c-line);
}

.legal-request-steps>div:first-child{
border-top:1px solid var(--c-line);
}

.legal-request-steps>div>span{
display:inline-flex;
align-items:center;
justify-content:center;
width:2rem;
height:2rem;
border-radius:999px;
background:var(--c-primary);
color:#241b1a;
font-family:var(--font-mono);
font-size:var(--fs-1);
line-height:1;
font-weight:700;
}

.legal-request-steps>div>div{
display:grid;
gap:var(--space-1);
min-width:0;
}

.legal-request-steps h3{
font-size:var(--fs-3);
}

.legal-request-steps p{
color:#625a5f;
font-size:var(--fs-1);
}

.legal-inline-actions{
justify-content:flex-start;
}

.legal-region-note{
display:grid;
grid-template-columns:1fr;
gap:var(--space-1);
background:var(--c-blue);
color:var(--c-ink);
}

.legal-region-note p{
color:#554f5e;
}

.legal-version-row{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));
gap:var(--space-2);
}

.legal-version-row div{
display:grid;
gap:var(--space-1);
padding:var(--space-2);
border-radius:var(--radius-sm);
background:var(--c-base);
color:var(--c-ink);
}

.legal-version-row span{
color:#71696e;
font-size:var(--fs-1);
}

.legal-version-row strong{
font-size:var(--fs-2);
overflow-wrap:anywhere;
}

.legal-version-row a{
color:#8f401f;
text-decoration:underline;
text-decoration-thickness:1px;
text-underline-offset:.2em;
}

.legal-closing-section{
padding-top:0;
}

.legal-closing{
background:#171417;
color:#f8f3f2;
}

.legal-closing__copy{
display:grid;
gap:var(--space-2);
max-width:42rem;
min-width:0;
}

.legal-closing__copy h2{
font-size:var(--fs-4);
color:#f8f3f2;
}

.legal-closing__copy p{
color:#c4bdc1;
}

.legal-closing__kicker{
width:fit-content;
max-width:100%;
align-self:flex-start;
background:#ffe8dd;
color:#512b1d;
}

.legal-closing__kicker::before{
background:#241b1a;
}

.legal-closing__actions{
display:grid;
gap:var(--space-1);
min-width:min(100%,13rem);
}

.legal-closing__actions .c-btn{
width:100%;
}

.legal-closing__actions .c-btn-ghost{
color:#f8f3f2;
border-color:rgba(255,255,255,.38);
}

.legal-closing__actions .c-btn-ghost:hover{
background:rgba(255,255,255,.08);
}

@media (max-width:64rem){
.legal-layout{
grid-template-columns:1fr;
}

.legal-index{
position:static;
}

.legal-index ol{
display:grid;
grid-template-columns:repeat(2,minmax(0,1fr));
column-gap:var(--space-3);
}

.legal-content{
border-radius:var(--radius-md);
}
}

@media (max-width:44rem){
.legal-hero__copy .c-lead{
font-size:var(--fs-2);
}

.legal-meta{
display:grid;
}

.legal-index{
padding:var(--space-2);
}

.legal-index ol{
grid-template-columns:1fr;
}

.legal-section{
padding:var(--space-3) var(--space-2);
}

.legal-section__head{
grid-template-columns:1fr;
}

.legal-section__number{
width:2.25rem;
height:2.25rem;
}

.legal-data-list div,
.legal-payment-panel__rows div,
.legal-sharing-list li>div{
grid-template-columns:1fr;
gap:var(--space-1);
}

.legal-inline-actions{
display:grid;
}

.legal-version-row{
grid-template-columns:1fr;
}
}
