.legal-page{--legal-ink:#18332b;--legal-muted:#50665d;--legal-bg:#f3f5f1;--legal-border:#dce4dc;color:var(--legal-ink);background:var(--legal-bg);padding-bottom:clamp(40px,6vw,96px)}
.legal-shell{width:min(100% - 96px,1440px);margin-inline:auto;min-width:0}
.legal-hero{padding:clamp(142px,14vw,205px) 0 clamp(36px,5vw,68px);border-bottom:1px solid var(--legal-border);background:#e9efe8}
.legal-hero h1{font-size:clamp(2.6rem,6vw,5.5rem);line-height:1.05;letter-spacing:-.045em;margin:16px 0 24px;max-width:16ch}
.legal-hero p{max-width:64ch;font-size:clamp(1rem,1.4vw,1.2rem);line-height:1.7;color:var(--legal-muted)}
.legal-page .legal-kicker{text-transform:uppercase;font-size:.75rem;letter-spacing:.16em;font-weight:750}
.legal-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;font-size:.85rem;color:var(--legal-muted)}
.legal-breadcrumb{padding:24px 0;font-size:.85rem;display:flex;gap:10px;flex-wrap:wrap}
.legal-page a{color:var(--legal-ink);text-underline-offset:.2em;overflow-wrap:anywhere}
.legal-layout{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(0,2.65fr);align-items:start;gap:clamp(24px,4vw,64px)}
.legal-toc{position:sticky;top:115px;padding:26px;border:1px solid var(--legal-border);border-radius:24px;background:#fff}
.legal-toc h2{font-size:1rem;margin:0 0 18px}.legal-toc ol{margin:0;padding-left:20px}.legal-toc li{padding:6px 0;font-size:.9rem;line-height:1.5}.legal-toc a{text-decoration:none}.legal-toc a:hover{text-decoration:underline}
.legal-content{min-width:0;display:grid;gap:24px}.legal-card{min-width:0;background:#fff;border:1px solid var(--legal-border);border-radius:24px;padding:clamp(22px,3.5vw,48px);scroll-margin-top:120px}
.legal-card h2{font-size:clamp(1.4rem,2.2vw,2rem);letter-spacing:-.025em;line-height:1.25;margin:0 0 20px}.legal-card h3{font-size:1.08rem;margin:24px 0 10px}
.legal-card p,.legal-card li,.legal-card dd{font-size:1rem;line-height:1.8;color:var(--legal-muted)}.legal-card p{margin:0 0 16px}.legal-card p:last-child{margin-bottom:0}.legal-card ul{padding-left:22px}.legal-card address{font-style:normal;line-height:1.8}
.legal-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.legal-contact-grid div{padding:18px;background:var(--legal-bg);border-radius:16px;min-width:0}.legal-contact-grid strong{display:block;margin-bottom:8px}.legal-contact-grid p{font-size:.95rem}
.legal-table-wrap{overflow-x:auto;max-width:100%;border:1px solid var(--legal-border);border-radius:16px}.legal-table{width:100%;border-collapse:collapse;font-size:.9rem;table-layout:fixed}.legal-table th,.legal-table td{padding:16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--legal-border);line-height:1.65;overflow-wrap:anywhere}.legal-table th{background:var(--legal-bg);font-weight:700}.legal-table tr:last-child td{border-bottom:0}
.legal-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.legal-actions .btn{white-space:normal;min-height:48px;text-align:center;border-radius:999px;max-width:100%;font-size:.88rem;line-height:1.4;padding:15px 24px;background:var(--legal-ink);color:#fff;border:1px solid var(--legal-ink);text-decoration:none}.legal-actions .btn.secondary{background:transparent;color:var(--legal-ink)}
.legal-page :focus-visible{outline:3px solid #497354;outline-offset:4px}.legal-card .legal-note{font-size:.9rem;border-left:3px solid #8ba58d;padding-left:18px}
@media(max-width:1024px){.legal-shell{width:calc(100% - 56px)}.legal-layout{grid-template-columns:1fr}.legal-toc{position:static}.legal-toc ol{columns:2;column-gap:36px}.legal-toc li{break-inside:avoid}}
@media(max-width:600px){.legal-shell{width:calc(100% - 36px)}.legal-hero{padding-top:132px}.legal-toc ol{columns:1}.legal-contact-grid{grid-template-columns:1fr}.legal-card{border-radius:20px}.legal-actions{flex-direction:column}.legal-actions .btn{width:100%;box-sizing:border-box}.legal-table thead{display:none}.legal-table,.legal-table tbody,.legal-table tr,.legal-table td{display:block;width:100%;box-sizing:border-box}.legal-table tr{padding:12px 0;border-bottom:1px solid var(--legal-border)}.legal-table tr:last-child{border:0}.legal-table td{border:0;padding:7px 16px}.legal-table td:before{content:attr(data-label);display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--legal-ink);margin-bottom:3px}}
@media(prefers-reduced-motion:reduce){.legal-page{scroll-behavior:auto}}
@media print{.top,.mega,.destination-footer,.global-arrival-cta,.mobile-bottom-nav,.legal-toc,.legal-actions{display:none!important}.legal-shell{width:100%}.legal-layout{display:block}.legal-hero{padding:20px 0}.legal-card{break-inside:avoid;border-color:#aaa}.legal-page{background:#fff}.legal-card a{color:#000}}
