@font-face{font-family:"Fredoka One";src:url("fredoka.ttf") format("truetype");font-display:swap}
:root{
  --ocean:#005B96;--deep:#0A2239;--coral:#FF6F59;--aqua-top:#CFF4FF;--aqua-bot:#8FD9F5;
  --sand:#FFF8E7;--amber:#FFB800;--ink:#0A2239;--muted:#3d5a75;--card:#ffffff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Nunito",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);
  background:linear-gradient(180deg,var(--aqua-top) 0%,var(--aqua-bot) 55%,#4fb6e6 100%);background-attachment:fixed;line-height:1.6}
a{color:var(--ocean)}
.wrap{max-width:1080px;margin:0 auto;padding:0 16px}
header.top{display:flex;align-items:center;justify-content:space-between;padding:16px 0}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--deep)}
.brand img{width:44px;height:44px;border-radius:12px;box-shadow:0 3px 8px rgba(0,40,90,.25)}
.brand span{font-family:"Fredoka One",system-ui,sans-serif;font-size:22px}
nav a{margin-left:18px;text-decoration:none;font-weight:700;color:var(--deep)}
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center;padding:28px 0 40px}
.hero h1{font-family:"Fredoka One",system-ui,sans-serif;font-size:clamp(40px,7vw,72px);line-height:1.02;margin:0 0 10px;
  color:#fff;-webkit-text-stroke:2px var(--deep);text-shadow:0 6px 0 #003b6f}
.hero h1 em{font-style:normal;color:var(--amber)}
.hero p.lead{font-size:19px;color:var(--deep);max-width:520px;margin:0 0 22px}
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--deep);color:#fff;text-decoration:none;border-radius:999px;
  padding:12px 22px;font-weight:800;box-shadow:0 5px 0 #000d1a;transition:transform .12s}
.btn:hover{transform:translateY(-2px)}
.btn svg{width:22px;height:22px}
.hero .art{border-radius:24px;overflow:hidden;box-shadow:0 18px 40px rgba(0,40,90,.3);border:6px solid #fff}
.hero .art img{display:block;width:100%;height:auto}
section{padding:36px 0}
h2{font-family:"Fredoka One",system-ui,sans-serif;font-size:34px;margin:0 0 18px;color:var(--deep)}
.features{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{background:var(--sand);border-radius:20px;padding:20px;box-shadow:0 6px 0 rgba(0,59,111,.18)}
.card h3{margin:0 0 6px;font-size:19px}
.card p{margin:0;color:var(--muted)}
.shots{display:flex;gap:14px;overflow-x:auto;padding:6px 2px 16px;scroll-snap-type:x mandatory}
.shots img{flex:0 0 auto;width:220px;height:auto;border-radius:18px;scroll-snap-align:start;box-shadow:0 8px 20px rgba(0,40,90,.25)}
footer{background:var(--deep);color:#cfe7f7;padding:26px 0;margin-top:30px}
footer a{color:#fff}
footer .row{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;align-items:center}
/* policy pages */
.doc{background:#fff;border-radius:24px;padding:28px;margin:10px 0 30px;box-shadow:0 10px 30px rgba(0,40,90,.18)}
.doc h1{font-family:"Fredoka One",system-ui,sans-serif;font-size:36px;margin:0 0 4px}
.doc h2{font-size:24px;margin:28px 0 8px}
.doc .meta{color:var(--muted);margin:0 0 18px}
.doc table{border-collapse:collapse;width:100%;margin:8px 0}
.doc th,.doc td{border:1px solid #d6e6f2;padding:8px 10px;text-align:left;vertical-align:top;font-size:15px}
.doc th{background:#eef7fd}
@media (max-width:820px){
  .hero{grid-template-columns:1fr}
  .features{grid-template-columns:1fr}
  nav a{margin-left:10px;font-size:14px}
  nav a[href='#features']{display:none}
  .brand span{font-size:19px}
  .doc{padding:20px}
  .doc table{display:block;overflow-x:auto}
}
