/* --- Tighter sections for the Privacy Policy page --- */

/* 1) Pull the hero closer and shorten it a bit */
section:first-of-type {
  padding-top: 2.25rem;   /* ~pt-5 */
  padding-bottom: 1.75rem;/* between pb-6 and pb-7 */
}

/* 2) Compress all subsequent sections */
#intro,
#what-we-collect,
#how-we-use,
#lawful-basis,
#sharing,
#cookies,
#retention,
#security,
#international,
#your-rights,
#children,
#contact,
#changes {
  padding-top: 1.25rem;   /* pt-5 */
  padding-bottom: 1.25rem;/* pb-5 */
}

/* 3) Reduce space inside common blocks */
#what-we-collect .grid,
#how-we-use .grid {
  gap: 1rem;              /* tighter than gap-6 */
}

/* 4) Trim big headings’ margins */
#intro h2, 
#what-we-collect h2, 
#how-we-use h2,
#lawful-basis h2,
#sharing h2,
#cookies h2,
#retention h2,
#security h2,
#international h2,
#your-rights h2,
#children h2,
#contact h2,
#changes h2 {
  margin-bottom: 0.75rem; /* tighter under-title spacing */
}

/* 5) Tighten “mt-*” spacers often used right under headings */
#what-we-collect .mt-10,
#how-we-use .mt-8,
#sharing .mt-4,
#cookies .mt-3,
#retention .mt-3,
#security .mt-3,
#international .mt-3,
#your-rights .mt-3,
#children .mt-3,
#contact .mt-3,
#changes .mt-3 {
  margin-top: 0.5rem !important;
}

/* 6) Maintain decent spacing on very small screens */
@media (max-width: 640px) {
  section:first-of-type {
    padding-top: 1rem;
    padding-bottom: 1.25rem;
  }
  #intro,
  #what-we-collect,
  #how-we-use,
  #lawful-basis,
  #sharing,
  #cookies,
  #retention,
  #security,
  #international,
  #your-rights,
  #children,
  #contact,
  #changes {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}

/* 7) Optional: nicer anchor jumps if you add a sticky header */
#intro,
#what-we-collect,
#how-we-use,
#lawful-basis,
#sharing,
#cookies,
#retention,
#security,
#international,
#your-rights,
#children,
#contact,
#changes {
  scroll-margin-top: 96px;
}





/* Hide Contact on mobile, show Theme */
@media (max-width: 767.98px) {
  a[href="../contact/"] {
    display: none !important;
  }
  #themeToggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
  }
}

/* Desktop/tablet: show Theme (and restore Contact, just in case) */
@media (min-width: 768px) {
  a[href="../contact/"] {
    display: inline-flex !important;
  }
  #themeToggle {
    display: inline-flex !important; /* override Tailwind's hidden */
    align-items: center;
    justify-content: center;
  }
}





/* Base color so the hamburger is visible */
#menuBtn {
  color: #0f172a;              /* dark slate (icon color) */
  background: rgba(15, 23, 42, 0.06);
  border: 1px solid rgba(15, 23, 42, 0.12);
}

/* Dark mode variant (if you use a .dark class on <html> or <body>) */
.dark #menuBtn {
  color: #f8fafc;              /* near-white */
  background: rgba(148, 163, 184, 0.10);
  border-color: rgba(148, 163, 184, 0.25);
}

/* Hover / active feedback */
#menuBtn:hover {
  background: rgba(15, 23, 42, 0.12);
}
.dark #menuBtn:hover {
  background: rgba(148, 163, 184, 0.18);
}

/* Focus ring without Tailwind (fallback) */
#menuBtn:focus-visible {
  outline: 2px solid #6366f1;  /* indigo */
  outline-offset: 2px;
  border-color: #6366f1;
}

/* Optional: ensure it's above bg overlays if any */
#menuBtn { z-index: 20; }


#menuBtn { color: #0f172a; }        /* dark slate on light */
.dark #menuBtn { color: #f8fafc; }  /* near-white on dark */




/* ===== Mobile footer grid (apply after Tailwind) ===== */
@media (max-width: 639.98px) {
  /* Make the main footer grid 2 columns on mobile */
  footer .grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important; /* a bit tighter */
    align-items: start;
  }

  /* Brand block spans full width on the first row */
  footer .grid > div:first-child {
    grid-column: 1 / -1 !important;
    text-align: center;
  }

  /* Center headings + lists for all columns */
  footer .grid > div h4 {
    text-align: center;
    margin-bottom: 6px;
  }
  footer .grid > div ul {
    margin-top: 6px !important;
    text-align: center;
  }
  footer .grid > div ul li {
    margin: 6px 0 !important;
  }

  /* Center social icons row */
  footer .grid > div .flex.gap-3 {
    justify-content: center;
  }

  /* Slightly reduce paddings in the container */
  footer .mx-auto {
    padding-left: 16px !important;
    padding-right: 16px !important;
    padding-top: 16px !important;
    padding-bottom: 16px !important;
  }

  /* Tighten the copyright strip */
  footer .border-t.pt-6 {
    padding-top: 10px !important;
  }
}

/* Optional: smaller social icons on very small screens */
@media (max-width: 380px) {
  footer .size-9 {
    width: 34px !important;
    height: 34px !important;
  }
  footer .h-5.w-5 {
    width: 18px !important;
    height: 18px !important;
  }
  
}


/* Center the brand row on mobile */
@media (max-width: 639.98px) {
  footer .grid > div:first-child > .flex.items-center {
    justify-content: center !important; /* center the logo + text */
  }
  /* optional: ensure the block spans full width + centers text */
  footer .grid > div:first-child {
    grid-column: 1 / -1 !important;
    text-align: center;
  }
}


/* Center the FOLLOW column on small screens */
@media (max-width: 639.98px) {
  /* The Follow column is the last item in your footer grid */
  footer .grid > div:last-child {
    grid-column: 1 / -1;     /* span full width */
    text-align: center;       /* center the heading */
  }
  footer .grid > div:last-child .mt-3.flex {
    justify-content: center;  /* center the social icons row */
  }
}