.policy-page { background: radial-gradient(circle at 50% 0%, rgba(29,76,87,.18), transparent 32%), #030608; }
.policy-nav { color: #53666c; text-transform: uppercase; letter-spacing: .23em; font: 600 9px/1 var(--app-font); }
.back-link { display: inline-flex; align-items: center; gap: 8px; }.back-link b { font-weight: 500; }
.policy-shell { max-width: 1240px; margin: 0 auto; padding: 150px 30px 110px; }
.policy-hero { display: grid; grid-template-columns: 180px 1fr; align-items: center; gap: 48px; padding: 0 0 80px; border-bottom: 1px solid rgba(88,199,220,.16); }
.policy-emblem { width: 150px; height: 150px; display: grid; place-items: center; position: relative; }
.policy-emblem::before, .policy-emblem::after, .policy-emblem span { content: ""; position: absolute; border: 1px solid rgba(88,199,220,.2); transform: rotate(45deg); }
.policy-emblem::before { inset: 7px; }.policy-emblem::after { inset: 22px; border-color: rgba(167,47,67,.23); }.policy-emblem span { inset: 0; border-style: dashed; animation: privacy-spin 35s linear infinite; }
.policy-emblem img { width: 72px; position: relative; z-index: 2; filter: drop-shadow(0 0 20px rgba(88,199,220,.28)); }
.policy-hero .eyebrow { margin-bottom: 12px; }.policy-hero h1 { margin: 0; color: #e2e8e5; font-size: clamp(42px, 6vw, 76px); line-height: 1.08; font-weight: 400; letter-spacing: -.025em; }
.policy-intro { max-width: 720px; margin: 20px 0 30px; color: #8ea0a5; font-size: 18px; }
.document-meta { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }.document-meta > span small, .document-meta > span strong { display: block; }.document-meta small { color: #4c5e64; text-transform: uppercase; letter-spacing: .16em; font: 600 8px/1 var(--app-font); }.document-meta strong { margin-top: 6px; color: #a7b7ba; font-size: 12px; font-weight: 400; }.document-meta i { width: 1px; height: 28px; background: rgba(88,199,220,.15); }
.policy-layout { display: grid; grid-template-columns: 250px 1fr; gap: 64px; align-items: start; padding-top: 70px; }
.policy-index { position: sticky; top: 105px; padding: 25px 0; border-top: 1px solid rgba(88,199,220,.2); border-bottom: 1px solid rgba(88,199,220,.13); }
.policy-index > p { margin: 0 0 18px; color: var(--crimson-bright); text-transform: uppercase; letter-spacing: .2em; font: 600 9px/1 var(--app-font); }
.policy-index nav { display: flex; flex-direction: column; }.policy-index nav a { display: grid; grid-template-columns: 28px 1fr; gap: 8px; padding: 11px 0; color: #677a80; text-decoration: none; font-size: 12px; border-bottom: 1px solid rgba(88,199,220,.065); transition: color .2s, padding-left .2s; }.policy-index nav a:hover { color: var(--cyan-bright); padding-left: 5px; }.policy-index nav span { color: #33464c; font: 600 9px/1.7 var(--app-font); }.policy-index nav b { font-weight: 400; }
.privacy-note { display: flex; gap: 10px; margin-top: 22px; padding: 15px; color: #64777d; background: rgba(88,199,220,.035); border-left: 1px solid rgba(88,199,220,.28); }.privacy-note > span { color: var(--cyan); }.privacy-note p { margin: 0; font-size: 11px; line-height: 1.5; }
.policy-document { min-width: 0; }.policy-section { scroll-margin-top: 100px; display: grid; grid-template-columns: 55px 1fr; gap: 25px; padding: 44px 0 49px; border-bottom: 1px solid rgba(88,199,220,.12); }
.policy-number { padding-top: 7px; color: #35484e; font: 600 10px/1 var(--app-font); letter-spacing: .12em; }.policy-label { margin: 0 0 8px; color: var(--crimson-bright); text-transform: uppercase; letter-spacing: .19em; font: 600 8px/1 var(--app-font); }.policy-section h2 { margin: 0 0 18px; color: #d4dddb; font-size: clamp(25px, 3vw, 36px); line-height: 1.2; font-weight: 400; }.policy-section > div:last-child > p:last-child, .policy-section > div:last-child > p:not(.policy-label) { color: #84969b; font-size: 15px; }
.policy-section-featured { margin: 20px 0; padding: 45px 34px 48px 0; border: 1px solid rgba(88,199,220,.17); border-left: 0; background: linear-gradient(110deg, rgba(7,18,22,.85), rgba(8,12,15,.58)); box-shadow: inset -30px 0 70px rgba(88,199,220,.018); }
.data-grid { list-style: none; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 30px 0 0; padding: 0; }.data-grid li { display: grid; grid-template-columns: 35px 1fr; gap: 12px; min-height: 112px; padding: 20px; border: 1px solid rgba(88,199,220,.12); background: rgba(3,9,11,.48); }.data-grid li > span { color: var(--cyan); font-size: 20px; }.data-grid li:nth-child(even) > span { color: var(--crimson-bright); }.data-grid strong { color: #b7c5c5; font-size: 13px; font-weight: 400; }.data-grid p { margin: 7px 0 0; color: #64777d; font-size: 12px; line-height: 1.5; }
.contact-section { border-bottom: 0; }.contact-link { display: inline-flex; align-items: center; gap: 12px; margin-top: 10px; padding: 12px 17px; color: var(--cyan-bright); text-decoration: none; border: 1px solid rgba(88,199,220,.3); background: rgba(88,199,220,.04); font: 500 12px/1 var(--app-font); letter-spacing: .04em; transition: .25s; }.contact-link:hover { border-color: var(--cyan); box-shadow: 0 0 24px rgba(88,199,220,.1); transform: translateY(-2px); }.contact-link span { color: var(--crimson-bright); }
@keyframes privacy-spin { to { transform: rotate(405deg); } }
@media (max-width: 900px) { .policy-hero { grid-template-columns: 120px 1fr; gap: 28px; }.policy-emblem { width: 110px; height: 110px; }.policy-layout { grid-template-columns: 1fr; }.policy-index { position: static; }.policy-index nav { display: grid; grid-template-columns: 1fr 1fr; }.privacy-note { max-width: 400px; } }
@media (max-width: 620px) { .policy-shell { padding: 110px 20px 70px; }.policy-hero { grid-template-columns: 1fr; text-align: center; }.policy-emblem { margin: auto; }.policy-hero .eyebrow { justify-content: center; }.document-meta { justify-content: center; }.policy-layout { padding-top: 45px; gap: 35px; }.policy-index nav { grid-template-columns: 1fr; }.policy-section { grid-template-columns: 35px 1fr; gap: 10px; }.policy-section-featured { margin-left: -20px; margin-right: -20px; padding: 38px 20px; grid-template-columns: 35px 1fr; }.data-grid { grid-template-columns: 1fr; }.contact-link { font-size: 10px; } }
