.portfolio-legal{--legal-accent:#75eee3;min-height:100vh;background:#0b1114;color:#edf4f1}.legal-hero{padding:173px clamp(24px,6vw,95px) 95px;background:radial-gradient(circle at 79% 45%,rgba(39,111,107,.23),transparent 39%),#0b1114;border-bottom:1px solid rgba(161,218,208,.18)}.legal-close>div>span,.legal-eyebrow,.legal-index>span,.legal-section-heading>span{color:var(--legal-accent);font-size:10px;font-weight:900;letter-spacing:.18em}.legal-hero h1{font-size:clamp(4.1rem,8.5vw,8.2rem);line-height:.91;letter-spacing:-.08em;margin:27px 0}.legal-close h2 em,.legal-hero h1 em{color:var(--legal-accent);font-family:Georgia,Times New Roman,serif;font-weight:400}.legal-hero p{max-width:570px;color:#aac0bb;font-size:16px;line-height:1.75}.legal-hero-link{display:inline-flex;align-items:center;gap:22px;margin-top:34px;padding-bottom:11px;border-bottom:1px solid var(--legal-accent);color:var(--legal-accent);font-size:11px;font-weight:900;letter-spacing:.12em}.legal-layout{max-width:1450px;margin:auto;padding:80px clamp(24px,6vw,95px) 120px;display:grid;grid-template-columns:280px minmax(0,1fr);gap:clamp(45px,8vw,125px)}.legal-index{position:sticky;top:116px;align-self:start;display:grid;gap:4px}.legal-index>span{margin-bottom:17px}.legal-index a{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;min-height:49px;border-bottom:1px solid rgba(161,218,208,.15);color:#c7d6d1;font-size:13px;font-weight:700;transition:color .2s,padding .2s}.legal-index a:hover{padding-left:5px}.legal-index a span,.legal-index a svg,.legal-index a:hover{color:var(--legal-accent)}.legal-content{min-width:0}.legal-section{padding:0 0 76px;margin-bottom:76px;border-bottom:1px solid rgba(161,218,208,.17);scroll-margin-top:115px}.legal-section:last-child{margin-bottom:0;border-bottom:0;padding-bottom:0}.legal-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.legal-section-heading>svg{color:var(--legal-accent);stroke-width:1.5}.legal-section h2{font-size:clamp(2.7rem,4.2vw,4.6rem);letter-spacing:-.065em;margin:15px 0 29px}.legal-section h3{font-size:19px;letter-spacing:-.025em;margin:28px 0 9px}.legal-section p{color:#b4c8c1;max-width:790px;font-size:15px;line-height:1.85;margin:0 0 18px}.legal-section p a{color:var(--legal-accent);text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.legal-close{padding:70px clamp(24px,6vw,95px);background:#173b3c;display:flex;align-items:end;justify-content:space-between;gap:40px}.legal-close h2{font-size:clamp(3rem,5vw,5.4rem);letter-spacing:-.07em;line-height:.95;margin:18px 0 0}.legal-close>a{display:inline-flex;align-items:center;gap:27px;padding:17px 20px;background:var(--legal-accent);color:#071d1a;font-size:11px;font-weight:900;letter-spacing:.12em;white-space:nowrap}[data-theme=light] .portfolio-legal{--legal-accent:#087a78;background:#f4f7f3;color:#172b29}[data-theme=light] .legal-hero{background:radial-gradient(circle at 79% 45%,rgba(61,156,145,.16),transparent 40%),#f4f7f3;border-color:#bfd1cb}[data-theme=light] .legal-hero p,[data-theme=light] .legal-section p{color:#48615b}[data-theme=light] .legal-index a{color:#294b45;border-color:#bfd1cb}[data-theme=light] .legal-section{border-color:#bfd1cb}[data-theme=light] .legal-close{background:#d9eae3}[data-theme=dark] .portfolio-legal{--legal-accent:#a5ead8;background:#0a101b}[data-theme=dark] .legal-hero{background:radial-gradient(circle at 78% 42%,rgba(93,169,155,.17),transparent 36%),radial-gradient(circle at 12% 100%,rgba(115,101,185,.1),transparent 45%),#0a101b}[data-theme=dark] .legal-close{background:#142a34}@media (max-width:850px){.legal-layout{grid-template-columns:1fr;gap:55px}.legal-index{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 22px}.legal-index>span{grid-column:1/-1}.legal-hero{padding-top:135px}}@media (max-width:600px){.legal-hero{padding:120px 20px 70px}.legal-hero h1{font-size:clamp(3.5rem,13vw,5.4rem)}.legal-layout{padding:55px 20px 80px;gap:48px}.legal-index{grid-template-columns:1fr}.legal-section{padding-bottom:55px;margin-bottom:55px}.legal-close{padding:55px 20px;flex-direction:column;align-items:start;gap:30px}}