:root {
    color-scheme: dark;
    --legal-green: #00db68;
    --legal-line: rgba(0, 219, 104, .2);
    --legal-text: #f4fff8;
    --legal-muted: #9eb0a6;
}

html {
    scroll-behavior: smooth;
    scrollbar-color: var(--legal-green) #07100d;
}

body {
    min-height: 100vh !important;
    color: var(--legal-text) !important;
    background:
        radial-gradient(circle at 12% 3%, rgba(0, 219, 104, .13), transparent 26rem),
        linear-gradient(135deg, #07100d, #081310 52%, #07100d) !important;
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

body::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
    opacity: .2;
    background-image:
        linear-gradient(rgba(0, 219, 104, .09) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0, 219, 104, .09) 1px, transparent 1px);
    background-size: 64px 64px;
    -webkit-mask-image: linear-gradient(to bottom, #000, transparent 80%);
    mask-image: linear-gradient(to bottom, #000, transparent 80%);
    pointer-events: none;
}

::selection {
    color: #04120a;
    background: #48efa0;
}

.pp-header {
    position: relative;
    overflow: hidden;
    padding: clamp(4.5rem, 9vw, 7.5rem) 1.5rem clamp(3.2rem, 7vw, 5rem) !important;
    color: var(--legal-text) !important;
    background:
        radial-gradient(circle at 75% 15%, rgba(0, 219, 104, .2), transparent 25rem),
        linear-gradient(135deg, #08150f, #092117) !important;
    border-bottom: 1px solid var(--legal-line);
}

.pp-header::before {
    content: "964";
    position: absolute;
    right: 8%;
    top: 50%;
    transform: translateY(-50%);
    color: rgba(0, 219, 104, .09);
    font: 800 clamp(6rem, 16vw, 13rem)/1 Arial, sans-serif;
    letter-spacing: -.08em;
}

.pp-header h1 {
    position: relative;
    color: var(--legal-text) !important;
    font-size: clamp(2.1rem, 5vw, 4.6rem) !important;
    letter-spacing: -.045em;
    text-shadow: none !important;
    text-wrap: balance;
}

.pp-header p {
    position: relative;
    color: #a9bcb1 !important;
    margin-top: .9rem !important;
}

.container {
    width: min(100% - 2rem, 880px) !important;
    padding: clamp(2.2rem, 5vw, 4rem) 0 5rem !important;
}

.section {
    position: relative;
    padding: clamp(1.35rem, 3vw, 2rem) !important;
    margin-bottom: 1rem !important;
    color: var(--legal-text) !important;
    background: linear-gradient(145deg, rgba(0, 219, 104, .045), transparent 48%), rgba(14, 26, 22, .92) !important;
    border: 1px solid var(--legal-line) !important;
    border-radius: 18px !important;
    box-shadow: inset 0 1px rgba(255, 255, 255, .035), 0 18px 45px rgba(0, 0, 0, .18) !important;
}

.section h2 {
    color: #43ed99 !important;
    border-bottom-color: var(--legal-line) !important;
    font-size: clamp(1.05rem, 2.5vw, 1.3rem) !important;
}

.section p,
.section li {
    color: #b8c8bf !important;
}

.back-link {
    display: inline-flex !important;
    align-items: center;
    min-height: 48px;
    margin-top: 1.2rem !important;
    padding: .75rem 1.1rem;
    color: #04120a !important;
    background: linear-gradient(135deg, var(--legal-green), #45ef9b);
    border-radius: 12px;
    text-decoration: none !important;
    box-shadow: 0 12px 30px rgba(0, 219, 104, .2);
}

.back-link:focus-visible {
    outline: 3px solid #fff;
    outline-offset: 4px;
}

@media (max-width: 600px) {
    .pp-header { text-align: left !important; }
    .pp-header h1,
    .pp-header p { text-align: left; }
    .pp-header::before { right: -18%; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { transition-duration: .01ms !important; }
}
