/* StudyPulse native legal pages. Homepage header and footer are intentionally inherited from home.css. */
.legal-native-page{background:#f5f9fd;color:var(--ink)}
.legal-native-main{min-height:70vh}
.legal-native-hero{position:relative;overflow:hidden;padding:70px 0 62px;background:linear-gradient(145deg,#f7fbff 0%,#eef8fb 55%,#f6fff2 100%);border-bottom:1px solid var(--line)}
.legal-native-orb{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}
.legal-native-orb-a{width:330px;height:330px;left:-120px;top:-150px;background:radial-gradient(circle,rgba(16,189,216,.17),rgba(16,189,216,0) 68%)}
.legal-native-orb-b{width:380px;height:380px;right:-120px;bottom:-230px;background:radial-gradient(circle,rgba(101,223,43,.16),rgba(101,223,43,0) 68%)}
.legal-native-hero-inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:45px}
.legal-native-heading{max-width:800px}.legal-native-eyebrow{display:inline-flex;align-items:center;gap:9px;color:#078ea9;font-size:10px;font-weight:900;letter-spacing:.18em}.legal-native-eyebrow:before{content:"";width:28px;height:2px;background:linear-gradient(90deg,var(--cyan),var(--green))}
.legal-native-heading h1{margin:15px 0 13px;color:var(--navy);font-size:clamp(42px,5.4vw,72px);line-height:1.02;letter-spacing:-.045em}.legal-native-heading>p{max-width:720px;margin:0;color:#5f7289;font-size:17px;line-height:1.7}
.legal-native-meta{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}.legal-native-meta span{padding:7px 10px;border:1px solid #d6e5ed;border-radius:999px;background:rgba(255,255,255,.72);color:#60748a;font-size:10px;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.legal-native-hero-actions{display:grid;justify-items:end;gap:12px}.legal-native-support{color:#567086;font-size:11px;font-weight:800}.legal-native-support:hover{color:var(--blue)}
.legal-native-nav{position:sticky;top:var(--header-h);z-index:900;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);box-shadow:0 9px 25px rgba(8,31,69,.045);backdrop-filter:blur(16px)}
.legal-native-nav-inner{display:flex;align-items:center;gap:7px;overflow:auto;padding-block:12px;scrollbar-width:thin}.legal-native-nav a{flex:0 0 auto;padding:9px 13px;border:1px solid transparent;border-radius:11px;color:#5e7187;font-size:11px;font-weight:850;white-space:nowrap}.legal-native-nav a:hover{background:#f1f8fb;color:var(--navy)}.legal-native-nav a[aria-current=page]{border-color:#cde8ef;background:#eaf9fc;color:#087f9b}
.legal-document-section{position:relative;padding:46px 0 90px;background:radial-gradient(circle at 50% 0,rgba(8,118,215,.055),transparent 32%),#f5f9fd}
.legal-document-card{overflow:hidden;border:1px solid #d6e3ec;border-radius:24px;background:#fff;box-shadow:0 25px 70px rgba(8,31,69,.12)}
.legal-document-toolbar{min-height:76px;padding:13px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#f8fbfd)}
.legal-document-toolbar>div:first-child{display:flex;align-items:center;gap:12px}.legal-document-toolbar strong,.legal-document-toolbar small{display:block}.legal-document-toolbar strong{color:var(--navy);font-size:13px}.legal-document-toolbar small{margin-top:2px;color:#7b8da0;font-size:10px}.legal-document-mark{width:39px;height:39px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#07346a,#0788aa);color:#fff;font-size:10px;font-weight:900;box-shadow:0 9px 22px rgba(7,75,123,.2)}
.legal-document-actions{display:flex;gap:8px}.legal-document-actions a{padding:8px 11px;border:1px solid #d8e5ed;border-radius:10px;background:#fff;color:#486079;font-size:10px;font-weight:850}.legal-document-actions a:hover{border-color:#a9d4e0;background:#edf9fc;color:#087f9b}
.legal-document-embed{display:block;width:100%;height:1100px;border:0;background:#e7edf2}
.legal-document-fallback{min-height:650px;padding:80px 25px;display:grid;place-items:center;align-content:center;text-align:center;background:#fff}.legal-document-fallback img{width:min(420px,75%);margin-bottom:30px}.legal-document-fallback h2{font-size:40px;color:var(--navy);margin:0}.legal-document-fallback p{color:var(--muted)}
.legal-web-copy{margin-top:24px;border:1px solid #d6e3ec;border-radius:20px;background:#fff;box-shadow:0 16px 45px rgba(8,31,69,.07);overflow:hidden}.legal-web-copy>summary{list-style:none;cursor:pointer;min-height:72px;padding:15px 20px;display:flex;align-items:center;justify-content:space-between;gap:15px}.legal-web-copy>summary::-webkit-details-marker{display:none}.legal-web-copy>summary span{display:grid}.legal-web-copy>summary strong{color:var(--navy);font-size:13px}.legal-web-copy>summary small{margin-top:2px;color:#788ba0;font-size:10px}.legal-web-copy>summary i{width:33px;height:33px;display:grid;place-items:center;border-radius:50%;background:#edf8fb;color:#087f9b;font-style:normal;font-size:20px;transition:transform .2s}.legal-web-copy[open]>summary{border-bottom:1px solid var(--line)}.legal-web-copy[open]>summary i{transform:rotate(45deg)}
.legal-reader-grid{display:grid;grid-template-columns:280px minmax(0,1fr);align-items:start;gap:36px;padding:34px}.legal-toc{position:sticky;top:calc(var(--header-h) + 74px);border:1px solid var(--line);border-radius:16px;background:#f6fafc;overflow:hidden}.legal-toc summary{list-style:none;padding:15px 17px;border-bottom:1px solid var(--line);color:var(--navy);font-size:13px;font-weight:850}.legal-toc summary::-webkit-details-marker{display:none}.legal-toc ol{max-height:calc(100vh - 190px);overflow:auto;margin:0;padding:14px 18px 18px 36px}.legal-toc li{margin:0 0 7px;color:#8493a3;font-size:10.5px;line-height:1.45}.legal-toc a{color:#5e7187}.legal-toc a:hover,.legal-toc a.is-active{color:#078aa8}
.legal-content{min-width:0;padding:4px 8px 25px;color:#2d4058;font-size:14px;line-height:1.78}.legal-content .legal-notice{margin:0 0 25px;padding:18px 20px;border:1px solid #cde3ea;border-left:5px solid var(--cyan);border-radius:14px;background:#f5fbfd}.legal-content section{scroll-margin-top:170px;padding:0 0 22px;border-bottom:1px solid #e7eef3}.legal-content section+section{padding-top:10px}.legal-content h2{margin:22px 0 10px;color:var(--navy);font-size:27px;line-height:1.24;letter-spacing:-.02em}.legal-content h3{margin:18px 0 7px;color:#0784a3;font-size:16px}.legal-content p{margin:0 0 11px}.legal-content ul,.legal-content ol{padding-left:22px}.legal-content li{margin:0 0 6px}.legal-content .contact{padding:16px;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:12px;background:#fafcff}.legal-content .table-wrap{overflow:auto}.legal-content table{width:100%;border-collapse:collapse;font-size:12px}.legal-content th,.legal-content td{padding:10px;border:1px solid var(--line);text-align:left;vertical-align:top}.legal-content th{background:var(--navy);color:#fff}
@media(max-width:980px){.legal-native-hero-inner{grid-template-columns:1fr}.legal-native-hero-actions{justify-items:start}.legal-native-nav{top:var(--header-h)}.legal-document-embed{height:900px}.legal-reader-grid{grid-template-columns:1fr}.legal-toc{position:relative;top:auto}.legal-toc ol{max-height:none}}
@media(max-width:720px){.legal-native-hero{padding:48px 0 42px}.legal-native-heading h1{font-size:43px}.legal-native-heading>p{font-size:14px}.legal-document-section{padding:28px 0 65px}.legal-document-card{border-radius:17px}.legal-document-toolbar{align-items:flex-start;flex-direction:column;padding:14px}.legal-document-actions{width:100%}.legal-document-actions a{flex:1;text-align:center}.legal-document-embed{height:72vh;min-height:560px}.legal-reader-grid{padding:21px}.legal-content{padding-inline:0}.legal-content h2{font-size:24px}}
@media(max-width:480px){.legal-native-meta{display:grid}.legal-native-hero-actions .button{width:100%}.legal-document-actions{display:grid;grid-template-columns:1fr 1fr}.legal-document-embed{height:68vh;min-height:510px}.legal-reader-grid{padding:16px}.legal-web-copy>summary{padding:14px 16px}}
@media print{.site-header,.search-overlay,.legal-native-hero,.legal-native-nav,.legal-document-card,.legal-web-copy>summary,.site-footer,.back-top,.page-progress,.skip-link{display:none!important}.legal-document-section{padding:0;background:#fff}.legal-web-copy{display:block!important;margin:0;border:0;box-shadow:none}.legal-reader-grid{display:block;padding:0}.legal-toc{display:none}.legal-content{font-size:11pt}.legal-content section{break-inside:avoid-page}}

.legal-mobile-pages{display:none;padding:12px;background:#dfe7ed}.legal-mobile-pages img{width:100%;height:auto;margin:0 auto 12px;border-radius:4px;background:#fff;box-shadow:0 8px 22px rgba(8,31,69,.15)}
@media(max-width:720px){.legal-document-embed{display:none}.legal-mobile-pages{display:block}.legal-document-card{overflow:visible}.legal-native-nav-inner{padding-inline:2px}.legal-native-heading h1{overflow-wrap:anywhere}.legal-native-meta span{white-space:normal}.legal-document-toolbar>div:first-child{min-width:0}.legal-document-toolbar strong{overflow-wrap:anywhere}.legal-web-copy{margin-top:18px}.legal-content table{min-width:620px}.legal-content .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.legal-toc ol{padding-right:12px}.legal-native-page .site-footer{margin-top:0}}


/* v8: all legal policies are native HTML; no embedded PDF viewers. */
.legal-html-document-card{overflow:hidden;border:1px solid #d6e3ec;border-radius:24px;background:#fff;box-shadow:0 25px 70px rgba(8,31,69,.12)}
.legal-html-toolbar{position:sticky;top:calc(var(--header-h) + 59px);z-index:12}
.legal-document-actions button{padding:8px 11px;border:1px solid #d8e5ed;border-radius:10px;background:#fff;color:#486079;font:inherit;font-size:10px;font-weight:850;cursor:pointer}.legal-document-actions button:hover{border-color:#a9d4e0;background:#edf9fc;color:#087f9b}
.legal-html-document-card .legal-reader-grid{padding:42px}.legal-html-document-card .legal-content{font-size:15px;line-height:1.82}.legal-html-document-card .legal-content>section:last-child{border-bottom:0}
.legal-print-button{border:0;cursor:pointer;font:inherit}
@media(max-width:980px){.legal-html-toolbar{position:relative;top:auto}.legal-html-document-card .legal-reader-grid{padding:28px}}
@media(max-width:720px){.legal-html-document-card{border-radius:17px}.legal-html-document-card .legal-reader-grid{padding:18px}.legal-html-document-card .legal-content{font-size:14px}.legal-html-document-card .legal-toc{border-radius:13px}.legal-html-document-card .legal-document-toolbar{flex-direction:column;align-items:flex-start}.legal-html-document-card .legal-document-actions{width:100%}.legal-html-document-card .legal-document-actions>*{flex:1;text-align:center}}
@media(max-width:480px){.legal-html-document-card .legal-reader-grid{padding:14px}.legal-html-document-card .legal-content h2{font-size:22px}.legal-html-document-card .legal-document-actions{display:grid;grid-template-columns:1fr 1fr}}
@media print{.legal-html-toolbar,.legal-native-hero,.legal-native-nav,.site-header,.site-footer,.back-top,.page-progress,.skip-link{display:none!important}.legal-document-section{padding:0!important;background:#fff!important}.legal-html-document-card{border:0!important;box-shadow:none!important}.legal-html-document-card .legal-reader-grid{display:block!important;padding:0!important}.legal-html-document-card .legal-toc{display:none!important}.legal-html-document-card .legal-content{font-size:11pt!important;line-height:1.55!important}.legal-content section{break-inside:auto}.legal-content h2{break-after:avoid-page}}

/* v9 legal layout correction: native HTML begins immediately, with no floating/empty viewer area. */
.legal-document-section{padding-top:34px}
.legal-html-document-card{display:block;overflow:visible}
.legal-html-toolbar{position:relative!important;top:auto!important;z-index:2;margin:0}
.legal-html-document-card .legal-reader-grid{padding-top:30px}
.legal-toc ol{list-style:none;padding-left:18px}
.legal-toc li{counter-increment:none}
.legal-toc a{display:block;padding:4px 2px;border-radius:6px}
.legal-toc a:hover,.legal-toc a.is-active{background:#eaf7fb;padding-left:7px}
@media(min-width:981px){
  .legal-native-nav{position:sticky;top:var(--header-h)}
  .legal-html-document-card .legal-reader-grid{grid-template-columns:260px minmax(0,1fr);gap:42px}
}
@media(max-width:720px){
  .legal-document-section{padding-top:22px}
  .legal-html-document-card{overflow:hidden}
  .legal-html-document-card .legal-reader-grid{padding-top:18px}
}
