/* ===============================
   TOILETVERTISING GLOBAL STYLES
   (Used by index.html + terms.html + privacy.html)
   =============================== */

* { box-sizing: border-box; }

body.toiletvibe {
  background:#faf6ef;
  font-family:"Courier Prime","Courier New",monospace;
  color:#2a1a12;
  margin:0;
  line-height:1.6;
}

/* ===============================
   HEADER (Unified White Header)
   =============================== */

.tv-header {
  background:#fff;
  border-bottom:3px solid #b4371e;
  box-shadow:0 2px 15px rgba(0,0,0,.08);
  position:relative;
  z-index:1000;
}

.tv-header-inner {
  max-width:1200px;
  margin:auto;
  padding:1.5rem 2rem;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.tv-logo {
  height:90px;
  width:auto;
  max-width:100%;
}

.tv-nav a {
  margin-left:1.8rem;
  text-decoration:none;
  color:#333;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:1px;
  font-size:1rem;
  transition:.3s;
  position:relative;
}

.tv-nav a::after {
  content:"";
  position:absolute;
  bottom:-5px; left:0;
  width:0; height:2px;
  background:#b4371e;
  transition:width .3s;
}

.tv-nav a:hover { color:#b4371e; }
.tv-nav a:hover::after { width:100%; }

.tv-nav .tv-cta {
  background:#b4371e;
  padding:.6rem 1.2rem;
  border-radius:25px;
  color:#fff;
  box-shadow:0 4px 15px rgba(180,55,30,.3);
}
.tv-nav .tv-cta:hover {
  transform:translateY(-2px);
  box-shadow:0 6px 20px rgba(180,55,30,.4);
}
.tv-nav .tv-cta::after { display:none; }

/* ===============================
   BURGER MENU (Mobile)
   =============================== */

.tv-burger {
  display:none;
  flex-direction:column;
  width:32px;
  cursor:pointer;
  gap:6px;
}
.tv-burger span {
  height:4px;
  width:100%;
  background:#b4371e;
  border-radius:3px;
  transition:.3s;
}

@media(max-width:768px){
  .tv-burger { display:flex; }
  .tv-nav {
    position:fixed;
    right:-100%;
    top:80px;
    width:70%;
    background:#fff;
    padding:25px 30px;
    border-left:4px solid #b4371e;
    box-shadow:-4px 0 20px rgba(0,0,0,.15);
    display:flex;
    flex-direction:column;
    gap:18px;
    transition:.35s;
  }
  body.nav-open .tv-nav { right:0; }
  
  .tv-logo { height:70px; }

  body.nav-open .tv-burger span:nth-child(1){
    transform:translateY(10px) rotate(45deg);
  }
  body.nav-open .tv-burger span:nth-child(2){ opacity:0; }
  body.nav-open .tv-burger span:nth-child(3){
    transform:translateY(-10px) rotate(-45deg);
  }
}

/* ===============================
   HERO (homepage only)
   =============================== */

.tv-hero {
  background:url("http://www.lordpenh.com/toiletvertising/images/rowofurinals.jpg") center/cover no-repeat;
  text-align:center;
  padding:2rem 1rem 1rem;
  position:relative;
  color:#fff;
}
.tv-hero::before {
  content:""; position:absolute; inset:0;
  background:rgba(42,26,18,.35);
}
.tv-hero-inner { position:relative; max-width:750px; margin:auto; }
.tv-hero h1 {
  font-family:"Bebas Neue",sans-serif;
  font-size:4.5rem; margin-bottom:1rem;
  font-weight:700; letter-spacing:3px;
  text-shadow:4px 4px 8px rgba(0,0,0,.6);
}
.tv-hero .lead {
  font-size:1.25rem; margin-bottom:2.5rem;
  text-shadow:2px 2px 4px rgba(0,0,0,.5);
}
.tv-button {
  background:#f4d03f; color:#2a1a12;
  padding:1.1rem 2.5rem; border-radius:50px;
  text-decoration:none; font-weight:700;
  text-transform:uppercase; letter-spacing:1px;
  display:inline-block; transition:.3s;
  border:3px solid #2a1a12;
}
.tv-button:hover {
  background:#fff;
  transform:translateY(-3px);
}
.under { margin-top:1.5rem; }

/* ===============================
   GLOBAL SECTIONS
   =============================== */

.tv-section {
  max-width:900px;
  margin:5rem auto;
  padding:0 1.5rem;
}
.tv-section h2 {
  font-family:"Playfair Display",serif;
  font-size:3rem;
  text-align:center;
  color:#b4371e;
  margin-bottom:1rem;
  position:relative;
}
.tv-section h2::after {
  content:"※";
  display:block;
  margin:.5rem auto 0;
  font-size:1.5rem;
  color:#d4a574;
}
.tv-section p { font-size:1.15rem; margin-bottom:1.2rem; }

.tv-bullets {
  background:#fff;
  padding:2rem 2rem 2rem 3rem;
  border-left:6px solid #b4371e;
  box-shadow:3px 3px 0 #d4a574;
  margin:2rem 0;
}
.tv-bullets li { margin-bottom:1rem; list-style:square; font-size:1.1rem; }

/* Pricing, Gallery, FAQ, etc. remain unchanged from site
   (as index.html already holds those sections)
   ------------------------------ */

/* ===============================
   FOOTER (Unified)
   =============================== */

.tv-footer {
  text-align:center;
  padding:3rem 2rem 2rem;
  background:#2a1a12;
  color:#d4a574;
}
.footer-nav {
  margin:2rem 0 1rem;
  padding:1rem 0;
  border-top:1px solid #432a1e;
  border-bottom:1px solid #432a1e;
}
.footer-nav a {
  color:#d4a574;
  text-decoration:none;
  margin:0 1rem;
  text-transform:uppercase;
  font-size:.9rem;
  letter-spacing:1px;
  transition:.3s;
}
.footer-nav a:hover { color:#f4d03f; }
.footer-credit {
  font-size:.85rem;
  opacity:.7;
}

/* ===============================
   LEGAL PAGES (terms + privacy)
   =============================== */

.legal-content {
  max-width:900px;
  margin:100px auto 80px;
  padding:0 20px;
  font-size:1.05rem;
  line-height:1.75;
}

.legal-content h1 {
  font-family:"Playfair Display",serif;
  font-size:3rem;
  text-align:center;
  color:#b4371e;
  margin-bottom:1rem;
}
.legal-content .last-updated {
  text-align:center;
  color:#876;
  font-style:italic;
  margin-bottom:2.5rem;
}
.legal-content h2 {
  font-family:"Special Elite",cursive;
  font-size:1.8rem;
  color:#b4371e;
  margin-top:3rem;
  margin-bottom:1rem;
  border-left:6px solid #b4371e;
  padding-left:1rem;
}
.legal-content h3 {
  font-family:"Special Elite",cursive;
  font-size:1.3rem;
  color:#432a1e;
  margin-top:2rem;
  margin-bottom:.8rem;
}
.legal-content p,
.legal-content ul li { margin-bottom:1rem; }

/* Boxes from terms/privacy kept visually identical */

.highlight-box {
  background:#fff;
  border:3px solid #b4371e;
  padding:1.5rem;
  margin:2rem 0;
  box-shadow:4px 4px 0 #d4a574;
}
.info-box {
  background:#fff8f3;
  border:3px dashed #d4a574;
  padding:1.5rem;
  margin:2rem 0;
}

/* Back link (identical behaviour) */

.back-link,
.back-btn {
  display:inline-block;
  background:#b4371e;
  color:#fff;
  padding:.8rem 1.5rem;
  text-decoration:none;
  font-weight:bold;
  margin-top:2rem;
  border-radius:4px;
  transition:.3s;
}
.back-link:hover,
.back-btn:hover {
  background:#8b2810;
  transform:translateY(-2px);
}

/* Mobile optimization for legal pages */

@media(max-width:768px){
  .legal-content{ padding:0 1.2rem; }
  .legal-content h1{ font-size:2.2rem; }
  .legal-content h2{ font-size:1.5rem; }
}

/* ======================================================================= */
/* PRIVACY PAGE FIX — BETTER READABILITY, SPACING & DOCUMENT FEEL          */
/* WITHOUT CHANGING ANY CONTENT WHATSOEVER                                 */
/* ======================================================================= */

.privacy-content {
    max-width: 860px;
    margin: 120px auto 100px;
    padding: 0 28px;
    font-family: "Courier Prime", monospace;
    font-size: 18px;
    line-height: 1.7;
    color: #2a1a12;
}

/* Title */
.privacy-content h1 {
    font-family: "Playfair Display", serif;
    font-size: 46px;
    margin-bottom: 10px;
    color: #b4371e;
    text-align: left;
}

/* "Last Updated" text cleaned and spaced */
.privacy-content .last-updated {
    color: #6a4c3b;
    font-style: italic;
    margin-bottom: 35px;
    font-size: 17px;
}

/* Headings hierarchy improved */
.privacy-content h2 {
    margin-top: 55px;
    margin-bottom: 18px;
    font-size: 30px;
    color: #b4371e;
    font-family: "Special Elite", cursive;
}

.privacy-content h3 {
    margin-top: 28px;
    margin-bottom: 10px;
    font-size: 23px;
    font-family: "Special Elite", cursive;
}

/* List spacing tightened */
.privacy-content ul {
    margin: 14px 0 25px 25px;
}
.privacy-content ul li { margin-bottom: 8px; }

/* Decorative privacy box */
.info-box {
    border: 2px dashed #c89f7a;
    background: #fff8ef;
    padding: 22px 26px;
    margin: 40px 0 50px;
    font-size: 18px;
}

/* Highlight permissions box */
.highlight-box {
    border: 3px solid #b4371e;
    background: #fff;
    padding: 25px;
    margin: 40px 0 55px;
    font-size: 18px;
    box-shadow: 4px 4px 0 #e1c09f;
}

/* Back link button improved */
.back-link {
    display: inline-block;
    background: #b4371e;
    color: #fff;
    padding: 12px 26px;
    font-weight: bold;
    text-decoration: none;
    margin-top: 60px;
    border-radius: 6px;
    font-size: 17px;
}
.back-link:hover { background:#8a2c12; }

/* LEGAL — readable HR */
.privacy-content hr {
    border: 0;
    border-top: 2px solid #e1c09f;
    margin: 60px 0;
}

/* Responsive */
@media(max-width:768px){
    .privacy-content{
        margin-top: 150px;
        font-size: 17px;
        padding: 0 20px;
    }
    .privacy-content h1{ font-size: 36px; }
    .privacy-content h2{ font-size: 26px; }
    .privacy-content h3{ font-size: 20px; }
}
