/* Mamas Village — shared styling for the legal pages (privacy, terms, guidelines).
   Studio Kue palette and type. Keep in step with index.html. */

@font-face{
  font-family:'Zalando Sans Expanded';
  src:url('fonts/zalando-sans-expanded.woff2') format('woff2-variations');
  font-weight:200 900; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'League Spartan';
  src:url('fonts/league-spartan.woff2') format('woff2-variations');
  font-weight:100 900; font-style:normal; font-display:swap;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}

:root{
  --ivory:#eae5da;
  --taupe:#c6bba8;
  --aged:#d8d0bf;
  --roseclay:#603831;
  --cocoa:#2a120d;
  --crimson:#440005;
  --rosewood:#896269;
  --display:'Zalando Sans Expanded','Arial Narrow',sans-serif;
  --body:'League Spartan','Helvetica Neue',sans-serif;
  --gut:22px;
}
@media (min-width:900px){ :root{ --gut:56px; } }

html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;}
}
body{
  background:var(--aged);
  color:var(--cocoa);
  font-family:var(--body);
  font-weight:300;
  /* Brand sheet: body text is League Spartan Light, sentence case, tracking +75.
     Display roles below all carry +100. Keep in step with index.html. */
  letter-spacing:.075em;
  line-height:1.72;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--crimson);}
:focus-visible{outline:2px solid var(--crimson);outline-offset:3px;}

/* ---------- nav ---------- */
nav{
  position:sticky;top:0;z-index:50;
  display:flex;justify-content:space-between;align-items:center;
  gap:20px;
  padding:16px var(--gut);
  background:var(--aged);
  border-bottom:1px solid rgba(42,18,13,.14);
  transition:box-shadow .3s ease;
}
nav.stuck{box-shadow:0 10px 30px -22px rgba(42,18,13,.5);}
.nav-logo-name{
  display:block;width:100px;aspect-ratio:1577.8/698.1;
  background:url('brand/wordmark-cocoa.svg') left center/contain no-repeat;
  text-indent:-9999px;overflow:hidden;white-space:nowrap;
}
.nav-pill{
  display:inline-flex;align-items:center;flex:0 0 auto;
  font-family:var(--display);font-weight:700;text-transform:uppercase;
  letter-spacing:.1em;font-size:10px;
  border:1px solid var(--crimson);color:var(--crimson);
  padding:10px 16px;text-decoration:none;
  transition:background .25s ease,color .25s ease;
}
.nav-pill:hover{background:var(--crimson);color:var(--aged);}
@media (min-width:900px){ nav{padding:20px var(--gut);} .nav-logo-name{width:126px;} }

/* ---------- document ---------- */
.policy-wrap{max-width:760px;margin:0 auto;padding:44px var(--gut) 72px;}
@media (min-width:900px){ .policy-wrap{padding:64px var(--gut) 96px;} }

.policy-title{
  font-family:var(--display);font-weight:700;text-transform:uppercase;
  letter-spacing:.1em;line-height:1.24;
  font-size:clamp(25px,6.4vw,34px);
  color:var(--cocoa);margin-bottom:10px;text-wrap:balance;
}
.policy-updated{
  font-family:var(--display);font-weight:300;text-transform:uppercase;
  letter-spacing:.1em;font-size:10px;color:var(--rosewood);
  margin-bottom:40px;
}

.policy-section{margin-bottom:34px;}
.policy-section h2{
  font-family:var(--display);font-weight:700;text-transform:uppercase;
  letter-spacing:.1em;line-height:1.34;
  font-size:clamp(15px,3.6vw,17px);
  color:var(--cocoa);margin-bottom:14px;
}
.policy-section h3{
  font-family:var(--display);font-weight:700;text-transform:uppercase;
  letter-spacing:.1em;font-size:12.5px;
  color:var(--roseclay);margin:22px 0 10px;
}
.sec-num{color:var(--rosewood);font-weight:300;margin-right:8px;}
.policy-section p{font-size:14px;margin-bottom:14px;color:var(--cocoa);}
.policy-section p:last-child{margin-bottom:0;}

.policy-list,.policy-sublist{list-style:none;margin:0 0 14px;}
.policy-list > li,.policy-sublist > li{
  position:relative;padding-left:20px;font-size:14px;margin-bottom:10px;
}
.policy-list > li::before,.policy-sublist > li::before{
  content:'';position:absolute;left:0;top:.72em;
  width:7px;height:1px;background:var(--rosewood);
}
.policy-sublist{margin-top:10px;margin-left:8px;}
.li-label{font-weight:500;color:var(--roseclay);}
.li-body{color:var(--cocoa);}

.policy-divider{border:0;border-top:1px solid rgba(42,18,13,.18);margin:34px 0;}

.policy-contact{
  background:var(--ivory);
  border-left:2px solid var(--crimson);
  padding:20px 22px;font-size:14px;margin-top:8px;
}

.version-table{width:100%;border-collapse:collapse;font-size:13px;margin:8px 0 14px;}
.version-table th,.version-table td{
  text-align:left;padding:10px 12px;border-bottom:1px solid rgba(42,18,13,.18);
  vertical-align:top;
}
.version-table th{
  font-family:var(--display);font-weight:300;text-transform:uppercase;
  letter-spacing:.1em;font-size:10px;color:var(--roseclay);
}

/* wide content must scroll inside itself, never the page */
.version-table{display:block;overflow-x:auto;white-space:nowrap;}
@media (min-width:640px){ .version-table{display:table;white-space:normal;} }

/* ---------- footer ---------- */
footer{
  background:var(--aged);
  border-top:1px solid rgba(42,18,13,.18);
  padding:34px var(--gut) 40px;
  display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;
}
.ft-logo{
  display:block;width:100px;aspect-ratio:1577.8/698.1;
  background:url('brand/wordmark-cocoa.svg') left center/contain no-repeat;
  text-indent:-9999px;overflow:hidden;white-space:nowrap;
}
.ft-tagline{font-size:12px;color:var(--cocoa);margin-top:11px;}
.ft-links{display:flex;flex-direction:column;gap:9px;}
.ft-links a{
  font-family:var(--display);font-weight:300;text-transform:uppercase;
  letter-spacing:.1em;font-size:10.5px;color:var(--roseclay);text-decoration:none;
}
.ft-links a:hover{color:var(--crimson);}
@media (min-width:900px){
  footer{padding:40px var(--gut) 46px;}
  .ft-links{text-align:right;align-items:flex-end;}
  .ft-links a{font-size:11px;}
}
