/* Accessibility options + cookie notice (shared by every public page) */
.pv-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.pv-skip{position:absolute;left:12px;top:-60px;z-index:100;padding:10px 16px;background:var(--pv-solid);color:var(--pv-on);font-weight:800;text-decoration:none}
.pv-skip:focus{top:12px}
.pv-a11y{position:fixed;right:20px;bottom:20px;z-index:60;display:flex;flex-direction:column;align-items:flex-end;gap:10px;font-family:'Manrope',system-ui,sans-serif}
.pv-a11y-btn{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:linear-gradient(135deg,var(--pv-a1,#A8E0FA),var(--pv-a2,#4A8BDB));color:var(--pv-on,#06121F);box-shadow:0 10px 26px rgba(0,0,0,.45);cursor:pointer;transition:transform .2s}
.pv-a11y-btn:hover{transform:scale(1.06)}
.pv-a11y-btn:focus-visible,.pv-a11y-opt:focus-visible,.pv-a11y-reset:focus-visible,.pv-cookie button:focus-visible{outline:3px solid #fff;outline-offset:2px}
.pv-a11y-pop{width:min(280px,calc(100vw - 40px));padding:16px;border-radius:18px;background:#10131A;color:#F2F4F8;border:1px solid rgba(255,255,255,.14);box-shadow:0 22px 60px rgba(0,0,0,.6)}
.pv-a11y-h{margin:0 0 12px;font-size:13px;font-weight:800;letter-spacing:.08em}
.pv-a11y-opts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pv-a11y-opt{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:64px;padding:10px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.04);color:inherit;font:inherit;font-size:13px;font-weight:700;line-height:1.25;text-align:left;cursor:pointer}
.pv-a11y-opt span{font-size:15px;font-weight:800;opacity:.8}
.pv-a11y-opt[aria-pressed="true"]{background:var(--pv-solid,#7CC4F0);border-color:var(--pv-solid,#7CC4F0);color:var(--pv-on,#06121F)}
.pv-a11y-reset{width:100%;margin-top:10px;min-height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:transparent;color:inherit;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.pv-cookie{position:fixed;left:20px;bottom:20px;z-index:59;display:flex;align-items:center;gap:14px;max-width:min(520px,calc(100vw - 110px));padding:12px 14px 12px 16px;border-radius:14px;background:#10131A;color:#E7EAF0;border:1px solid rgba(255,255,255,.14);box-shadow:0 18px 44px rgba(0,0,0,.5);font-family:'Manrope',system-ui,sans-serif;font-size:13px;line-height:1.45}
.pv-cookie p{margin:0}
.pv-cookie a{color:var(--pv-solid,#7CC4F0);font-weight:700}
.pv-cookie button{flex:none;min-width:56px;min-height:38px;border:0;border-radius:999px;background:var(--pv-solid,#7CC4F0);color:var(--pv-on,#06121F);font:inherit;font-weight:800;cursor:pointer}
@media (max-width:900px){
  .pv-a11y{right:14px;bottom:calc(14px + env(safe-area-inset-bottom))}
  .pv-cookie{left:12px;right:12px;bottom:calc(14px + env(safe-area-inset-bottom));max-width:none;transform:none;flex-direction:column;align-items:center;text-align:center;gap:10px;z-index:61}
  .pv-a11y-btn{width:50px;height:50px}
  /* pages with the bottom tab bar */
  body.has-bnav .pv-a11y,body.has-bnav .pv-cookie{bottom:calc(96px + env(safe-area-inset-bottom))}
}
/* The options themselves (classes set on <html> before first paint by theme.js) */
html.a11y-text body{zoom:1.18}
html.a11y-contrast{--pv-muted:var(--pv-ink)!important;--pv-text:var(--pv-ink)!important;--pv-dim:var(--pv-ink)!important;--pv-line:#8A93A6!important;--pv-line2:#A9B1C2!important;--pv-line3:#C7CDD8!important}
html.a11y-contrast .pv-theme-root::after,html.a11y-contrast .pv-theme-root::before,html.a11y-contrast #pv-light{display:none!important}
html.a11y-contrast img{filter:none!important}
html.a11y-motion *,html.a11y-motion *::before,html.a11y-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.a11y-motion .pv-hport,html.a11y-motion .pv-hname,html.a11y-motion .pv-film-strip,html.a11y-motion #about .pv-in img{scale:none!important;translate:none!important;rotate:none!important;opacity:1!important;filter:none!important}
html.a11y-links a{text-decoration:underline!important;text-underline-offset:3px}
html.a11y-font body,html.a11y-font [style*="Playfair"],html.a11y-font [style*="Caveat"],html.a11y-font [style*="Anton"],html.a11y-font em,html.a11y-font h1,html.a11y-font h2,html.a11y-font h3{font-family:Verdana,'Manrope','Noto Sans Malayalam','Noto Sans Tamil',sans-serif!important;font-style:normal!important;letter-spacing:0!important}
/* Cookie notice: centred at the bottom, slides up */
.pv-cookie:not([hidden]){animation:pv-cookie-in-m .45s cubic-bezier(.2,.8,.2,1) .6s both}
@media (min-width:901px){
  .pv-cookie{left:50%;right:auto;transform:translateX(-50%);max-width:min(560px,calc(100vw - 180px))}
  .pv-cookie:not([hidden]){animation-name:pv-cookie-in}
}
@keyframes pv-cookie-in{from{opacity:0;transform:translate(-50%,24px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes pv-cookie-in-m{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.a11y-motion .pv-cookie{animation:none!important}
@media (prefers-reduced-motion:reduce){.pv-cookie{animation:none!important}}
@media print{.pv-a11y,.pv-cookie{display:none!important}}
