/* Shared styles — frame=640, bg static */
@font-face{
  font-family: 'OpenSauceTwo';
  src: url('assets/OpenSauceTwo-Regular.ttf') format('truetype');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
:root{
  --bg: #CFEDE5;
  --ink: #0A0A0A;
  --muted:#8B9399;
  --pill:#0E6B3C;
  --frame: 640px;
  --pad: 24px;
}
*{box-sizing:border-box}
html,body{height:100%;margin:0}
body{
  font-family:'OpenSauceTwo', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  background:var(--bg);
  color:var(--ink);
}

/* Home (hero) */
.hero{ min-height:100svh; display:grid; place-items:center; padding:56px var(--pad); }
.wrap{ width:100%; max-width:var(--frame); margin-inline:auto; display:grid; justify-items:center; text-align:center; gap:18px; }
.logo-mark{ width:78px; margin-bottom:6px; }
.badge{ display:inline-block; background:var(--pill); color:#EAF8D2; padding:8px 14px; border-radius:999px; font-size:13px; }
.title{ font-weight:400; font-size:clamp(48px, 5.2vw, 56px); line-height:1.14; }
.subtitle{ color:#8FA1A3; font-size:18px; line-height:1.6; max-width:560px; margin-top:2px; }
.stores{ display:flex; gap:20px; flex-wrap:wrap; justify-content:center; margin-top:8px; }
.store{ width:240px; height:50px; background:#000; border-radius:25px; display:flex; align-items:center; justify-content:center; gap:10px; text-decoration:none; transition:background .2s; }
.store:hover{ background:#111; }
.store img{ height:22px; width:auto; display:block; }
.store-text{ color:#fff; font-size:16px; line-height:1; }
.footer{ display:grid; justify-items:center; gap:18px; margin-top:56px; }
.made{ color:#000; font-size:14px; }
.made .heart{ color:#D33; }
.links{ display:flex; gap:28px; color:#8B8B8B; }
.links a{ color:#8B8B8B; font-size:14px; text-decoration:none; }
.links a:hover{ text-decoration:underline; }

/* Policy page */
.main{ min-height:100svh; display:grid; place-items:start center; padding:56px var(--pad); }
.frame{ width:100%; max-width:var(--frame); margin-inline:auto; }
.policy-header{ display:flex; align-items:center; gap:12px; margin-bottom:22px; }
.policy-header .logo{ width:36px; height:auto; }
h1{ font-size:32px; line-height:1.2; margin:0 0 16px }
h2{ font-size:20px; margin:24px 0 10px }
p{ margin:10px 0; font-size:16px; line-height:1.65 }
ul{ margin:8px 0 16px 18px; padding:0; }
li{ margin:6px 0; }
.small{ font-size:14px; color:#333 }
.back-home{ margin-top:28px; display:inline-block; color:#0A0A0A; text-decoration:none; border-bottom:1px solid #0A0A0A; }
.back-home:hover{ opacity:.85 }
