/* InstaUPI — legal pages */
:root{--navy-950:#021430;--navy:#062E63;--blue:#0B52F5;--teal:#08B8B8;--amber:#F6A10A;--ink:#0B1F3A;--text:#33465F;--muted:#5B6C83;--line:#E2E9F2;--soft:#F5F8FC}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;font-family:Inter,"Segoe UI",system-ui,sans-serif;color:var(--text);background:#fff;line-height:1.75;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto}
a{color:var(--blue)} a:hover{color:#0842CF}
:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:4px}
.wrap{max-width:1140px;margin:0 auto;padding-left:clamp(1.1rem,3vw,2.5rem);padding-right:clamp(1.1rem,3vw,2.5rem)}
.lg-header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line)}
.lg-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:72px}
.lg-header img{width:140px;display:block}
.back{display:inline-flex;align-items:center;gap:.4rem;font-family:"Plus Jakarta Sans",sans-serif;font-weight:700;font-size:.92rem;text-decoration:none;color:var(--navy);padding:.55rem 1rem;border-radius:999px;border:1.5px solid var(--line);white-space:nowrap}
.back:hover{border-color:var(--navy);color:var(--navy)}
.lg-hero{background:linear-gradient(180deg,#F3F7FD,#fff);padding:clamp(2.5rem,6vw,4.5rem) 0 2rem}
.lg-hero h1{font-family:"Plus Jakarta Sans",sans-serif;color:var(--ink);font-size:clamp(2rem,1.4rem + 2.6vw,3.2rem);letter-spacing:-.035em;line-height:1.1;margin:0}
.lg-hero h1::after{content:"";display:block;width:72px;height:5px;border-radius:5px;background:var(--amber);margin-top:1.1rem}
.lg-hero p{color:var(--muted);margin:1rem 0 0;max-width:62ch}
.meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.3rem}
.meta span{font-size:.82rem;font-weight:600;color:var(--navy);background:#fff;border:1px solid var(--line);padding:.3rem .8rem;border-radius:999px}
.lg-body{display:grid;grid-template-columns:240px minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);padding-top:2.5rem;padding-bottom:5rem;align-items:start}
.toc{position:sticky;top:96px;font-size:.9rem}
.toc h2{font-family:"Plus Jakarta Sans",sans-serif;font-size:.95rem;color:var(--ink);margin:0 0 .8rem}
.toc ol{margin:0;padding:0;list-style:none;border-left:2px solid var(--line)}
.toc a{display:block;padding:.35rem 0 .35rem 1rem;margin-left:-2px;border-left:2px solid transparent;color:var(--muted);text-decoration:none;line-height:1.4}
.toc a:hover{color:var(--navy);border-left-color:var(--teal)}
article{max-width:72ch;min-width:0}
article section{padding-bottom:1.6rem;margin-bottom:1.6rem;border-bottom:1px solid var(--line)}
article section:last-of-type{border-bottom:0}
article h2{font-family:"Plus Jakarta Sans",sans-serif;color:var(--ink);font-size:clamp(1.2rem,1.1rem + .5vw,1.45rem);letter-spacing:-.02em;margin:0 0 .8rem;line-height:1.3}
article h3{font-family:"Plus Jakarta Sans",sans-serif;color:var(--navy);font-size:1.02rem;margin:1.2rem 0 .4rem}
article p{margin:0 0 .9rem}
article ul{margin:0 0 1rem;padding-left:1.2rem}
article li{margin-bottom:.4rem}
article li::marker{color:var(--teal)}
.callout{background:var(--soft);border-left:4px solid var(--teal);border-radius:0 14px 14px 0;padding:1rem 1.2rem;margin:0 0 1.2rem}
.contact-box{background:var(--navy);color:#C9D6EA;border-radius:20px;padding:1.5rem 1.6rem}
.contact-box h2{color:#fff}
.contact-box a{color:#7FE3E0}
.contact-box address{font-style:normal}
.lg-footer{background:var(--navy-950);color:#9FB2CF;font-size:.88rem;padding:1.5rem 0}
.lg-footer .wrap{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}
.lg-footer a{color:#9FB2CF;text-decoration:none;margin-left:1.2rem}
.lg-footer a:hover,.lg-footer a[aria-current]{color:#fff}
@media (max-width:860px){.lg-body{grid-template-columns:minmax(0,1fr)}.toc{position:static;background:var(--soft);border-radius:16px;padding:1.2rem}.lg-footer .wrap{flex-direction:column}.lg-footer a{margin:0 1rem 0 0;display:inline-block;padding:.2rem 0}}
@media (max-width:400px){.lg-header img{width:118px}.back{font-size:.84rem;padding:.5rem .8rem}}
@media print{.lg-header,.toc,.lg-footer{display:none}.lg-body{display:block}}
