/* ==========================================================
   Shared styles for the standalone pages
   (privacy, terms, refunds, contact).
   Same design tokens as index.html — keep them in sync if you
   ever change the brand colours there.
   ========================================================== */
:root{
  --navy:#001E40; --blue:#0064C0; --accent:#0086E8; --light:#EAF5FF;
  --white:#fff; --text:#172033; --muted:#64748B; --border:#D6E3EF;
  --wa:#25D366; --wa-dark:#1da851;
  --r-sm:8px; --r-md:12px; --r-lg:18px; --r-xl:24px;
  --s-sm:0 2px 8px rgba(0,30,64,.06);
  --s-md:0 8px 24px rgba(0,30,64,.08);
  --ease:cubic-bezier(.22,.8,.28,1);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;font-family:"Manrope","Inter",system-ui,sans-serif;color:var(--text);
  background:var(--white);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4{color:var(--navy);margin:0 0 .5em;line-height:1.25;font-weight:700}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}
::selection{background:var(--accent);color:#fff}
img{max-width:100%}
.container{width:min(1160px,92%);margin-inline:auto}

/* ---------- header ---------- */
header{
  position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--border);
}
.nav{display:flex;align-items:center;gap:20px;padding:14px 0}
.brand{display:flex;align-items:center;flex:none}
.brand img{width:120px;height:auto;display:block}
.nav-links{display:none;gap:22px;margin-left:auto}
.nav-links a{color:var(--navy);font-weight:500;font-size:15px}
.nav-links a:hover{color:var(--blue);text-decoration:none}
@media(min-width:860px){.nav-links{display:flex}}
.nav .btn{margin-left:auto}
@media(min-width:860px){.nav .btn{margin-left:0}}

/* ---------- buttons ---------- */
.btn{
  display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border-radius:999px;
  font-weight:600;font-size:15px;border:1px solid transparent;cursor:pointer;
  transition:transform .22s var(--ease),box-shadow .22s var(--ease),background .22s var(--ease);
}
.btn:hover{transform:translateY(-2px);box-shadow:var(--s-md);text-decoration:none}
.btn svg{width:19px;height:19px;flex:none}
.btn-wa{background:var(--wa);color:#fff}
.btn-wa:hover{background:var(--wa-dark)}
.btn-ghost{background:transparent;color:var(--navy);border-color:var(--border)}
.btn-ghost:hover{border-color:var(--blue);color:var(--blue)}

/* ---------- page head ---------- */
.page-head{background:linear-gradient(160deg,var(--light),#fff);padding:56px 0 44px;border-bottom:1px solid var(--border)}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--blue);background:#fff;padding:7px 15px;border-radius:999px;
  box-shadow:var(--s-sm);margin-bottom:16px;
}
.page-head h1{font-size:clamp(30px,5vw,44px);letter-spacing:-.02em;margin-bottom:10px}
.page-head p{color:var(--muted);margin:0;max-width:66ch}
.updated{font-size:14px;color:var(--muted);margin-top:14px !important}

/* ---------- legal body copy ---------- */
.legal{padding:52px 0 72px}
.legal .container{max-width:820px}
.legal h2{
  font-size:22px;margin:40px 0 12px;padding-top:20px;border-top:1px solid var(--border);
}
.legal section:first-of-type h2{border-top:0;padding-top:0;margin-top:0}
.legal h3{font-size:17px;margin:22px 0 8px}
.legal p,.legal li{color:var(--text)}
.legal ul,.legal ol{padding-left:22px;margin:0 0 16px}
.legal li{margin-bottom:8px}
.legal .note{
  background:var(--light);border-left:3px solid var(--blue);border-radius:0 var(--r-md) var(--r-md) 0;
  padding:16px 20px;margin:20px 0;font-size:15px;
}

/* ---------- contact cards ---------- */
.grid-cards{display:grid;gap:20px;margin-bottom:44px}
@media(min-width:700px){.grid-cards{grid-template-columns:repeat(2,1fr)}}
.card{
  background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:26px;
  box-shadow:var(--s-sm);transition:transform .3s var(--ease),box-shadow .3s var(--ease);
}
.card:hover{transform:translateY(-4px);box-shadow:var(--s-md)}
.card h3{font-size:18px;margin-bottom:6px}
.card p{color:var(--muted);font-size:15px;margin:0 0 14px}
.ico{
  width:46px;height:46px;border-radius:var(--r-md);display:grid;place-items:center;
  background:var(--light);color:var(--blue);margin-bottom:14px;
}
.ico svg{width:22px;height:22px}
.big-link{font-size:18px;font-weight:700;color:var(--navy);word-break:break-word}

/* ---------- footer ---------- */
footer{background:var(--navy);color:#c5dcf3;padding:68px 0 0;font-size:15px}
.f-grid{display:grid;gap:32px}
@media(min-width:768px){.f-grid{grid-template-columns:1.5fr 1fr 1fr 1fr 1.1fr}}
footer h4{color:#fff;font-size:15px;font-weight:600;letter-spacing:.04em;margin-bottom:14px}
footer ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}
footer a{color:#c5dcf3;transition:color .2s var(--ease),padding-left .2s var(--ease)}
footer a:hover{color:#fff;padding-left:4px;text-decoration:none}
footer p{margin:0}
.f-brand{display:inline-flex;align-items:center;background:#fff;padding:12px 20px;border-radius:8px;margin-bottom:20px;transition:transform .25s var(--ease)}
.f-brand img{height:54px;width:auto;display:block}
footer a.f-brand:hover{padding-left:20px;transform:scale(1.03)}
.f-contact{gap:12px}
.f-contact li{display:flex;align-items:center;gap:10px;line-height:1.4}
.f-contact li.f-address{align-items:flex-start}
.f-contact li.f-address svg{margin-top:4px}
.f-contact a{display:inline-flex;align-items:center;gap:10px}
.f-contact svg{flex:none;color:var(--accent)}
.f-bottom{
  display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;
  border-top:1px solid rgba(255,255,255,.12);margin-top:52px;padding:22px 0;font-size:14px;color:#9dbcdc;
}
@media(prefers-reduced-motion:reduce){
  *{animation:none !important;transition:none !important}
  html{scroll-behavior:auto}
}
