/* Styling for the policy pages: terms, privacy, cookies.
   Tokens, fonts and shared chrome all come from styles.css. These are long
   reading documents, so the job here is a single comfortable measure, clear
   heading hierarchy and tables that survive a phone. Nothing decorative. */

.pol-hero{padding:clamp(2.8rem,6vw,4.6rem) clamp(1.2rem,5vw,5.5rem) clamp(1.6rem,3vw,2.4rem);
  border-bottom:1px solid var(--rule);}
.pol-hero h1{font-family:var(--font-display);font-weight:700;color:var(--white);
  font-size:clamp(1.9rem,4.6vw,3rem);line-height:1.1;margin:.5rem 0 0;letter-spacing:-.01em;}
.pol-meta{color:var(--gray);font-size:.86rem;margin:1rem 0 0;}

.pol-wrap{display:grid;grid-template-columns:minmax(0,1fr);gap:0;
  padding:clamp(2.2rem,5vw,3.6rem) clamp(1.2rem,5vw,5.5rem) clamp(3rem,7vw,5rem);}
@media (min-width:60rem){
  .pol-wrap{grid-template-columns:15rem minmax(0,1fr);gap:3.5rem;align-items:start;}
  .pol-toc{position:sticky;top:1.5rem;}
}

.pol-toc{border-left:2px solid var(--rule);padding-left:1.1rem;margin-bottom:2.4rem;}
.pol-toc h2{font-family:var(--font-display);font-weight:600;color:var(--gray);
  font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;margin:0 0 .9rem;}
.pol-toc a{display:block;color:var(--gray-light);text-decoration:none;font-size:.86rem;
  line-height:1.5;padding:.32rem 0;transition:color .18s;}
.pol-toc a:hover,.pol-toc a:focus-visible{color:var(--orange);}

.pol-body{max-width:74ch;}
.pol-body h2{font-family:var(--font-display);font-weight:600;color:var(--white);
  font-size:clamp(1.15rem,2.3vw,1.45rem);line-height:1.3;margin:2.8rem 0 .9rem;
  padding-top:1.6rem;border-top:1px solid var(--rule);}
.pol-body h2:first-child{margin-top:0;padding-top:0;border-top:none;}
.pol-body h3{font-family:var(--font-display);font-weight:600;color:var(--white);
  font-size:1.02rem;margin:1.8rem 0 .6rem;}
.pol-body p,.pol-body li{color:var(--gray-light);line-height:1.8;font-size:.97rem;}
.pol-body p{margin:0 0 1.05rem;}
.pol-body ul,.pol-body ol{margin:0 0 1.2rem;padding-left:1.3rem;}
.pol-body li{margin-bottom:.55rem;}
.pol-body a{color:var(--orange);}
.pol-body strong{color:var(--white);font-weight:600;}

/* a short, quiet callout for the things a reader must not miss */
.pol-note{border-left:2px solid var(--orange);background:var(--card);
  padding:1.1rem 1.3rem;margin:0 0 1.4rem;}
.pol-note p{margin:0;color:var(--white);font-size:.94rem;line-height:1.75;}
.pol-note p + p{margin-top:.7rem;}

/* tables: scroll rather than squash on a phone */
.pol-tablewrap{overflow-x:auto;margin:0 0 1.5rem;-webkit-overflow-scrolling:touch;}
.pol-body table{border-collapse:collapse;width:100%;min-width:34rem;font-size:.9rem;}
.pol-body th,.pol-body td{text-align:left;vertical-align:top;padding:.75rem .9rem;
  border:1px solid var(--rule);color:var(--gray-light);line-height:1.6;}
.pol-body th{color:var(--white);font-family:var(--font-display);font-weight:600;
  background:var(--card);font-size:.86rem;}

.pol-contact{border:1px solid var(--rule);padding:1.4rem 1.5rem;margin:2.4rem 0 0;}
.pol-contact h3{margin-top:0;}
.pol-contact p{margin:0;}

/* The Gita verse on the mission page. Devanagari has no webfont here, so it
   falls back to a system face; that is correct rather than a gap. */
.pol-verse{margin:1.6rem 0 .9rem;padding:1.2rem 1.4rem;border-left:2px solid var(--orange);
  background:var(--card);}
.pol-verse p{margin:0 0 .4rem;color:var(--white);font-size:1.02rem;line-height:1.9;}
.pol-verse p:last-child{margin-bottom:0;}
.pol-verse-en{color:var(--gray-light);font-style:italic;margin:0 0 1.4rem;line-height:1.8;}
.pol-lede{color:var(--white);font-size:clamp(1.02rem,1.7vw,1.18rem);line-height:1.8;margin:0 0 1.6rem;}
