:root{
  --ink:#0d2740;
  --muted:#6b7a86;
  --blush:#fdebf1;
  --teal:#7ECFDC;
  --ring:rgba(13,39,64,.06);
}

/* Narrow container helper (matches your site) */
.container.narrow{ max-width: 980px; }

/* Hero with soft downward gradient */
.privacy-hero{
  padding: 120px 0 100px;
  background:
    radial-gradient(1200px 420px at 50% -12%, rgba(126,207,220,.18), rgba(126,207,220,0) 65%),
    linear-gradient(180deg, #f1dfdf 0%, var(--blush) 35%, #fff 100%);
  text-align:center;
}
.privacy-hero h1{
  font-family: "Cormorant Garamond", serif;
  color: var(--ink);
  font-weight: 700;
  margin-bottom: .25rem;
}
.privacy-hero .lead{
  color: var(--muted);
  font-weight: 500;
}

/* Content area */
.privacy-main{
  padding: 40px 0 80px;
}

/* Cards */
.pp-card{
  background: #fff;
  border: 1px solid var(--ring);
  border-radius: 16px;
  padding: 22px 22px 18px;
  box-shadow: 0 10px 26px rgba(11,31,53,.06);
  margin: 18px 0;
}
.pp-card h2{
  font-family: "Cormorant Garamond", serif;
  color: var(--ink);
  font-size: clamp(1.35rem, 2.2vw, 1.75rem);
  margin: 0 0 .6rem;
}
.pp-card p, .pp-card li{
  color: var(--muted);
}

/* Accent block for commitment */
.pp-card.pp-accent{
  background: linear-gradient(180deg, #f7fbfc, #ffffff);
  border-color: rgba(13,39,64,.05);
}

/* Lists with subtle bullets */
.pp-list{
  margin: .25rem 0 0;
  padding-left: 1.1rem;
  line-height: 1.7;
}
.pp-intro{ margin-bottom: .6rem; }

/* Back link with animated arrow */
.pp-back{ margin-top: 16px; }
.pp-backlink{
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
  text-decoration: none;
  color: #0b5662;
}
.pp-arrow{
  width: 28px; height: 28px; border-radius: 50%;
  background: linear-gradient(180deg, #6ec3d0, #4a9fb0);
  position: relative;
  box-shadow: 0 8px 22px rgba(78, 159, 176, .35);
  transition: transform .25s ease;
}
.pp-arrow::before{
  content:"";
  position:absolute; inset:0;
  margin:auto;
  width: 8px; height: 8px;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  transform: rotate(-45deg);
  left: 10px; /* nudge right to look centered */
}
.pp-backlink:hover .pp-arrow{ transform: translateX(-4px); }

/* Responsive */
@media (max-width: 768px){
  .privacy-hero{ padding: 96px 0 84px; }
}


  /**************************************
    0) ROOT + GLOBAL UTILITIES
  **************************************/
  :root{
    --nav-teal:#7ECFDC;
    --nav-dark:#0d2740;
  }

  /* Basic header spacing used globally */
  .site-top {
    position: sticky; top:0; z-index:1000;
    background:#fff;
    border-bottom:1px solid rgba(0,0,0,.06);
    transition: background .25s ease, border-color .25s ease, box-shadow .25s ease;
  }
  .site-top .container{ min-height:68px; }

  /* Base brand link (also used outside header scope) */
  .brand {
    font-size: 1.5rem;
    font-weight: bold;
    text-decoration: none;
    color: #0d2740;
  }

  /* Generic hover micro-interactions */
  .btn{ transition: transform .25s ease, box-shadow .25s ease }
  .btn:hover{ transform: translateY(-3px) }

  /**************************************
    1) HEADER & NAV (site-top, brand, nav)
  **************************************/
  header.site-top .brand {
    font-size: 1.4rem;
    font-weight: 700;
  }
  header.site-top .brand span {
    font-size: 1.4rem;
  }

  /* Default/stuck header (solid) — already declared above with .site-top */

  /* Overlay variant: sits above hero, transparent, no border/shadow */
  .site-top--overlay{
    position:absolute; left:0; right:0; top:0;
    background: transparent;
    border-bottom-color: transparent;
  }
  .site-top.is-stuck{
    background:#fff;
    border-bottom-color: rgba(0,0,0,.06);
    box-shadow: 0 4px 18px rgba(0,0,0,.06);
  }

  /* Final overlay hard reset (wins via !important) */
  .site-top--overlay{
    background:transparent !important;
    border-bottom:0 !important;
    box-shadow:none !important;
  }
  .site-top--overlay.shadow-sm,
  .site-top--overlay[class*="shadow"]{
    box-shadow:none !important;
  }

  /* Brand + nav link visuals */
  .site-top .brand{ font-weight:700; font-size:1.6rem; color:var(--nav-dark); text-decoration:none; }
  .site-top .brand span{ color:var(--nav-teal); }

  .site-top .nav{ display:flex; gap:28px; align-items:center; }
  .site-top .nav a{
    position:relative; display:inline-block; padding:6px 2px;
    color:var(--nav-dark); text-decoration:none; font-weight:600; letter-spacing:.2px;
    transition:color .2s ease;
  }
  .site-top .nav a::after{
    content:""; position:absolute; left:0; bottom:-8px; height:2px; width:0;
    background:var(--nav-teal); transition:width .22s ease;
  }
  .site-top .nav a:hover{ color:#3aa8ba; }
  .site-top .nav a:hover::after{ width:100%; }
  .site-top .nav a.active{ color:var(--nav-teal); }
  .site-top .nav a.active::after{ width:100%; }

  /* Hamburger */
  .hamburger {
    font-size: 1.8rem;
    background: none;
    border: none;
    cursor: pointer;
    display: none;
    color: #0d2740;
  }
  .hamburger{ display:none; width:44px; height:44px; background:none; border:0; font-size:1.7rem; color:var(--nav-dark); }

  /* Mobile drawer */
  @media (max-width:991px){
    .hamburger{ display:inline-block; }
    .site-top .nav{
      position:fixed; top:0; right:0; width:280px; height:100vh;
      background:#fff; border-left:1px solid rgba(0,0,0,.08);
      box-shadow:-20px 0 40px rgba(0,0,0,.06);
      padding:80px 18px 18px; flex-direction:column; gap:12px;
      transform:translateX(100%); transition:transform .28s ease; z-index:1001;
    }
    .site-top.is-open .nav{ transform:translateX(0); }
    #site-nav{ transition: transform .28s ease }
  }

  /* Dim overlay for mobile drawer */
  .nav-dim{ position:fixed; inset:0; background:rgba(0,0,0,.28); z-index:1000;
    opacity:0; pointer-events:none; transition:opacity .25s ease; }
  .nav-dim.show{ opacity:1; pointer-events:auto; }

  /* Z-index layering for header/drawer/dimmer */
  .site-top { z-index: 2000; }
  @media (max-width: 991px){
    .site-top .nav { z-index: 2001; }
  }
  .nav-dim { z-index: 1500; }
