@font-face { font-family: "Bebas Neue"; src: url("../fonts/bebas-neue.ttf") format("truetype"); font-display: swap; }
@font-face { font-family: "Iosevka Charon Mono"; src: url("../fonts/iosevka-charon-mono.woff2") format("woff2"); font-display: swap; }

:root { --green:#17352d; --orange:#bb5a32; --paper:#f1e5ca; --ink:#17352d; }
* { box-sizing: border-box; }
html { min-height: 100%; background: var(--green); scroll-behavior: smooth; }
body { min-width: 320px; min-height: 100%; margin: 0; color: var(--ink); background: var(--green); font-family: "Iosevka Charon Mono", monospace; }
a { color: inherit; }

.legal-page { position: relative; isolation: isolate; min-height: 100dvh; padding: clamp(20px,4vw,52px) clamp(16px,4vw,52px) clamp(38px,7vw,90px); }
.legal-page::before { content:""; position:fixed; z-index:-1; inset:0; background:url("../images/textures/paper-grain.jpg") center / max(100%,1200px) auto repeat-y, url("../images/textures/grain.svg") / 180px 180px repeat; background-blend-mode:multiply; mix-blend-mode:overlay; opacity:.48; filter:grayscale(1) contrast(1.5); pointer-events:none; }
.legal-header { display:flex; width:min(100%,1050px); align-items:center; justify-content:space-between; gap:22px; margin:0 auto clamp(26px,5vw,60px); color:var(--paper); }
.legal-header img { display:block; width:clamp(170px,26vw,320px); filter:brightness(0) invert(1) sepia(.16); }
.legal-header a:last-child { color:var(--orange); font:clamp(16px,2vw,22px)/1 "Bebas Neue",Impact,sans-serif; text-decoration:none; }

.legal-paper { position:relative; width:min(100%,1050px); margin:auto; padding:clamp(32px,7vw,82px) clamp(22px,8vw,96px) clamp(50px,8vw,96px); background:var(--paper); box-shadow:12px 14px 0 rgb(0 0 0 / .2); clip-path:polygon(.5% .8%,14% 0,32% .7%,50% 0,72% .8%,99.5% 0,99% 16%,100% 38%,99% 59%,100% 81%,99% 99.5%,78% 99%,59% 100%,39% 99%,18% 100%,.5% 99%,1% 78%,0 57%,1% 35%,0 14%); }
.legal-paper::after { content:""; position:absolute; inset:0; pointer-events:none; background:url("../images/textures/paper-grain.jpg") center / cover; mix-blend-mode:multiply; opacity:.12; }
.legal-paper > * { position:relative; z-index:1; }
.legal-kicker { margin:0 0 14px; color:var(--orange); font:clamp(22px,3vw,34px)/1 "Bebas Neue",Impact,sans-serif; }
.legal-paper h1 { margin:0 0 clamp(34px,6vw,64px); color:var(--green); font:clamp(58px,10vw,116px)/.82 "Bebas Neue",Impact,sans-serif; letter-spacing:-.015em; overflow-wrap:anywhere; }
.legal-paper h2 { margin:42px 0 12px; color:var(--orange); font:clamp(28px,4vw,42px)/.95 "Bebas Neue",Impact,sans-serif; }
.legal-paper h3 { margin:25px 0 8px; font:24px/1 "Bebas Neue",Impact,sans-serif; }
.legal-paper p,.legal-paper li,.legal-paper address { font-size:clamp(13px,1.55vw,17px); line-height:1.65; }
.legal-paper p { margin:0 0 15px; }
.legal-paper ul { margin:10px 0 20px; padding-left:22px; }
.legal-paper address { margin:0; font-style:normal; }
.legal-paper a { text-decoration-color:var(--orange); text-decoration-thickness:2px; text-underline-offset:3px; }
.legal-warning { margin:24px 0 30px !important; padding:18px 20px; border:3px solid var(--orange); background:rgb(187 90 50 / .08); }
.legal-meta { margin-top:48px !important; padding-top:18px; border-top:2px solid var(--orange); font-size:12px !important; }
.legal-nav { display:flex; flex-wrap:wrap; justify-content:center; gap:10px 22px; width:min(100%,1050px); margin:40px auto 0; color:var(--paper); font:16px/1 "Bebas Neue",Impact,sans-serif; }
.legal-nav a { color:inherit; text-decoration:none; }
.legal-nav a[aria-current="page"],.legal-nav a:hover,.legal-nav a:focus-visible { color:var(--orange); }

@media (hover:hover) and (prefers-reduced-motion:no-preference) { .legal-paper { animation:legal-in .65s cubic-bezier(.16,1,.3,1) both; } @keyframes legal-in { from { opacity:0; transform:translateY(20px); } } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
