/* ================================================================
   TERMS & CONDITIONS PAGE
   Loads after eclipse-main (main.css) and relies on its :root tokens
   plus the Libre Baskerville / Inter fonts already enqueued site-wide.
   Mirrors privacy.css's layout so the two legal pages read as one
   family. Mobile-first: base rules target ≤767px, then tablet/desktop
   layers.
   ================================================================ */

/* ── PAGE HEADING (plain text, no image/hero banner) ── */
.tc-heading{
  padding:clamp(2.5rem,6vw,4rem) clamp(1.25rem,5vw,3rem) clamp(1.25rem,3vw,1.75rem);
  background:#fff;
  text-align:center;
}
.tc-heading-inner{max-width:760px;margin:0 auto;}
.tc-eyebrow{
  font-family:'Inter',sans-serif;
  font-size:clamp(0.65rem,1.2vw,0.75rem);
  font-weight:600;
  letter-spacing:0.3em;
  text-transform:uppercase;
  color:var(--gold);
  margin-bottom:0.75rem;
}
.tc-title{
  font-family:'Libre Baskerville',serif;
  font-size:clamp(1.8rem,5vw,2.75rem);
  font-weight:700;
  color:var(--navy);
  line-height:1.15;
  margin-bottom:0.6rem;
}
.tc-updated{
  font-size:0.82rem;
  color:var(--muted);
  font-style:normal;
}

/* ── CONTENT WRAPPER ── */
.tc-sections{
  max-width:760px;
  margin:0 auto;
  padding:clamp(1rem,4vw,1.5rem) clamp(1.25rem,5vw,3rem) clamp(3rem,7vw,5rem);
  background:var(--cream);
}

.tc-block{
  padding:clamp(1.75rem,4vw,2.5rem) 0;
  border-bottom:1px solid var(--border);
}
.tc-block:first-child{padding-top:clamp(1rem,3vw,1.5rem);}
.tc-block:last-child{border-bottom:none;}

.tc-block h2{
  font-family:'Libre Baskerville',serif;
  font-size:clamp(1.2rem,2.8vw,1.5rem);
  font-weight:700;
  color:var(--navy);
  margin-bottom:0.9rem;
}
.tc-block p{
  font-size:clamp(0.95rem,1.6vw,1.05rem);
  color:var(--muted);
  line-height:1.8;
  margin-bottom:0.9rem;
}
.tc-block p:last-child{margin-bottom:0;}

.tc-lead{
  font-size:clamp(1rem,2vw,1.1rem)!important;
  color:var(--navy)!important;
  line-height:1.8;
}

/* ── EMPHASIS NOTE (reuses .menu-note-box from main.css) ── */
.tc-note{margin-top:0.25rem;margin-bottom:0;}

/* ── CONTACT CARD ── */
.tc-contact-card{
  background:#fff;
  border:1px solid var(--border);
  padding:clamp(1.5rem,3vw,2rem);
  margin-top:0.5rem;
}
.tc-contact-name{
  font-family:'Libre Baskerville',serif;
  font-size:1.05rem;
  font-weight:700;
  color:var(--navy);
  margin-bottom:0.6rem;
}
.tc-contact-row{
  font-size:0.9rem;
  color:var(--muted);
  line-height:1.8;
}
.tc-contact-row a{color:var(--navy);font-weight:500;}
.tc-contact-row a:hover{color:var(--gold);}

/* links inside paragraph copy */
.tc-block p a{color:var(--navy);text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:2px;}
.tc-block p a:hover{color:var(--gold);}

/* ── SCROLL REVEAL (JS toggles .is-visible; see terms.js) ── */
.reveal{
  opacity:0;
  transform:translateY(20px);
  transition:opacity 0.55s ease,transform 0.55s ease;
}
.reveal.is-visible{opacity:1;transform:translateY(0);}
@media(prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none;}
}

/* ── TABLET (≥768px) ── */
@media(min-width:768px){
  .tc-block h2{margin-bottom:1.1rem;}
}

/* ── DESKTOP (≥1025px) ── */
@media(min-width:1025px){
  .tc-sections{padding-top:clamp(1.5rem,3vw,2rem);}
}
