/* Scoped, native dialog: the website and training app design remain independent. */
.privacy-dialog,.privacy-page,.privacy-media{font-family:Lato,Arial,sans-serif;line-height:1.55}
.privacy-dialog *,.privacy-page *,.privacy-media *{box-sizing:border-box}
.privacy-dialog [hidden],.privacy-page [hidden],.privacy-media [hidden]{display:none!important}
.privacy-is-open{overflow:hidden}
.privacy-dialog{color:#173847;background:#f6faf9;border:1px solid #d3e4e6;border-radius:24px;padding:0;width:min(640px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 48px);margin:auto 24px 24px;box-shadow:0 24px 90px #031a2850;overflow:auto;overscroll-behavior:contain}
.privacy-dialog::backdrop{background:#071d2a69;backdrop-filter:blur(2px)}
.privacy-dialog[open]{animation:privacy-arrive .24s ease-out}
.privacy-dialog__head{position:relative;padding:25px 28px 22px;color:white;background:radial-gradient(ellipse at 5% 0%,#28757780,transparent 68%),#102b39;border-radius:22px 22px 0 0;overflow:hidden}
.privacy-dialog__head::after{content:"";position:absolute;width:270px;height:160px;right:-90px;top:-100px;border:1px solid #a0dcd852;border-radius:50%;box-shadow:0 15px 0 0 #a0dcd81a,0 30px 0 0 #a0dcd811;pointer-events:none}
.privacy-dialog__eyebrow{display:block;color:#8edde0;font-size:11px;letter-spacing:.11em;text-transform:uppercase;font-weight:700;margin:0 0 10px}
.privacy-dialog h2{color:white;font-size:clamp(24px,3.3vw,30px);line-height:1.15;margin:0;padding-right:22px;letter-spacing:-.025em}
.privacy-dialog h2:focus{outline:none}
.privacy-dialog__close{position:absolute;right:14px;top:12px;z-index:1;border:1px solid #b5d6d442;background:transparent;color:white;border-radius:50%;width:32px;height:32px;font:24px/1 Arial;cursor:pointer}
.privacy-dialog__body{padding:22px 28px 8px}
.privacy-dialog p{font-size:15px;margin:0 0 14px}
.privacy-dialog a,.privacy-page a,.privacy-media a{color:#166d76;text-decoration:underline;text-underline-offset:3px}
.privacy-dialog__necessary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #d6e3e3;border-bottom:1px solid #d6e3e3;font-size:14px}
.privacy-dialog__necessary span:last-child{color:#276857;background:#e0efe9;border-radius:20px;padding:3px 10px;font-size:12px;white-space:nowrap}
.privacy-dialog__options{padding-top:4px}
.privacy-option{padding:14px 0;border-bottom:1px solid #d6e3e3}
.privacy-option label{display:flex;gap:15px;justify-content:space-between;align-items:center;font-weight:700;font-size:16px;cursor:pointer}
.privacy-option small{display:block;margin:5px 58px 0 0;font-size:13px;color:#425e68;line-height:1.5}
.privacy-option input{appearance:none;flex:none;width:44px;height:25px;border:1px solid #899fa4;border-radius:30px;background:#cbd8da;cursor:pointer;position:relative;margin:0}
.privacy-option input::after{content:"";position:absolute;top:3px;left:3px;width:17px;height:17px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #092a3940;transition:transform .18s}
.privacy-option input:checked{background:#21776e;border-color:#21776e}
.privacy-option input:checked::after{transform:translateX(18px)}
.privacy-option details{margin-top:7px;font-size:12px;color:#425e68}
.privacy-option summary{cursor:pointer;width:fit-content;text-decoration:underline;text-underline-offset:3px}
.privacy-option details p{font-size:12px;margin-top:7px;margin-bottom:2px}
.privacy-dialog__actions{position:sticky;bottom:0;padding:15px 28px 18px;background:#f6faf9;border-top:1px solid #dce7e6}
.privacy-dialog__buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.privacy-btn{font:700 13px/1.3 Lato,Arial,sans-serif;border-radius:9px;min-height:46px;padding:11px 12px;background:#e6f1ef;color:#143d48;border:1px solid #89b5b4;cursor:pointer;text-align:center;text-decoration:none!important;display:inline-flex;align-items:center;justify-content:center}
.privacy-btn:hover{background:#d2e7e3;border-color:#286e72}
.privacy-btn:focus-visible,.privacy-dialog a:focus-visible,.privacy-dialog input:focus-visible,.privacy-dialog summary:focus-visible,.privacy-dialog__close:focus-visible{outline:3px solid #e5b854;outline-offset:3px}
.privacy-dialog__links{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:12px;font-size:12px}
.privacy-dialog .privacy-dialog__preview{font-size:12px;background:#e8f0f2;padding:9px 12px;border-radius:8px;margin-top:12px}
.privacy-dialog [data-privacy-status]:empty{display:none}
.privacy-dialog [data-privacy-status]{font-size:13px;color:#8b3925;padding-top:10px}
.privacy-page{max-width:900px;margin:auto;padding:155px 24px 80px;color:#173847;overflow-wrap:anywhere;hyphens:auto}
.privacy-page h1{font-size:clamp(32px,5vw,48px);line-height:1.12;margin:15px 0 22px}
.privacy-page__card{background:white;border:1px solid #d5e4e4;border-radius:20px;padding:28px;margin:25px 0;box-shadow:0 15px 50px #143d4808}
.privacy-page__card h2{font-size:23px;margin:0 0 12px}
.privacy-page__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.privacy-page__label{font-size:12px;font-weight:700;letter-spacing:.08em;color:#187782;text-transform:uppercase}
.privacy-page__list{padding-left:20px}.privacy-page__list li{margin:10px 0}
.privacy-media{margin:20px 0;padding:24px;background:#e9f4f2;border:1px solid #c6dedb;border-radius:18px;color:#173847}
.privacy-media__placeholder{display:grid;grid-template-columns:64px 1fr;gap:20px;align-items:start}
.privacy-media__icon{display:grid;place-items:center;background:#123643;color:#91d7d6;border-radius:18px;width:64px;height:64px;font-size:25px}
.privacy-media h3{font-size:23px!important;color:#173847!important;margin:0 0 10px!important}
.privacy-media p{font-size:14px!important;color:#385863!important;margin:0 0 14px!important}
.privacy-media__links{display:flex;flex-wrap:wrap;align-items:center;gap:14px;font-size:13px}
.privacy-media__player iframe{display:block;width:100%;border:0;border-radius:12px;min-height:352px;background:#102b39}
.privacy-media__manage{display:block;font-size:12px;margin-top:12px}
@media(max-width:600px){.privacy-dialog{margin:auto 10px 10px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:20px}.privacy-dialog__head{padding:22px 20px 20px}.privacy-dialog__body{padding:18px 20px 5px}.privacy-dialog__actions{padding:12px 20px 16px}.privacy-dialog__buttons{grid-template-columns:1fr 1fr}.privacy-dialog__buttons .privacy-btn:last-child{grid-column:1/-1}.privacy-dialog h2{font-size:26px}.privacy-dialog p{font-size:14px}.privacy-option small{margin-right:0}.privacy-media{padding:18px}.privacy-media__placeholder{grid-template-columns:1fr;gap:14px}.privacy-page__card{padding:22px}}
@media(prefers-reduced-motion:reduce){.privacy-dialog[open]{animation:none}.privacy-option input::after{transition:none}}
@keyframes privacy-arrive{from{opacity:.5;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
