:root{--orange:#ff8a00;--orange-d:#e06f00;--green:#22b14c;--red:#ee1c25;--navy:#14224a;--teal:#19c3c9;--yellow:#ffd93d;--sun:#fff3b0;--white:#fff;--ink:#14224a;--muted:#4b5678}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;background:#fff;color:var(--ink);font:500 17px/1.7 "M PLUS Rounded 1c",system-ui,sans-serif;overflow-x:hidden}
h1,h2,h3{font-family:"Dela Gothic One","M PLUS Rounded 1c",sans-serif;font-weight:400;line-height:1.15;margin:0}
a{color:inherit}
:focus-visible{outline:4px solid var(--teal);outline-offset:3px}
.wrap{max-width:1080px;margin:0 auto;padding:0 22px}

/* header */
.top{position:sticky;top:0;z-index:20;background:#fff;border-bottom:3px solid var(--navy)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:10px;padding-bottom:10px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font:400 20px "Dela Gothic One",sans-serif}
.brand img{border-radius:50%}
nav{display:flex;gap:22px;font-weight:700}
nav a{text-decoration:none}
nav a:hover{color:var(--orange-d)}

/* buttons */
.btn{display:inline-block;padding:14px 26px;border:3px solid var(--navy);border-radius:999px;background:var(--yellow);color:var(--navy);font:800 17px "M PLUS Rounded 1c",sans-serif;text-decoration:none;box-shadow:5px 5px 0 var(--navy);transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--navy)}
.btn:active{transform:translate(3px,3px);box-shadow:2px 2px 0 var(--navy)}
.btn.wa{background:var(--green);color:#fff}
.btn.ghost{background:#fff}
.btn.sm{padding:9px 18px;font-size:15px;box-shadow:3px 3px 0 var(--navy)}
.btns{display:flex;gap:14px;flex-wrap:wrap}

/* hero */
.hero{background:var(--orange) radial-gradient(rgba(255,255,255,.28) 2px,transparent 2.5px) 0 0/26px 26px;padding:64px 0 76px;border-bottom:3px solid var(--navy)}
.hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:30px;align-items:center}
.chip{display:inline-block;margin:0 0 16px;padding:5px 16px;background:#fff;border:3px solid var(--navy);border-radius:999px;font-weight:800;transform:rotate(-2deg)}
.hero h1{font-size:clamp(44px,8vw,82px);color:#fff;-webkit-text-stroke:7px var(--navy);paint-order:stroke fill;text-shadow:5px 5px 0 var(--navy)}
.lead{font-size:19px;margin:22px 0 28px;max-width:46ch;color:var(--navy)}
.badges{list-style:none;margin:28px 0 0;padding:0;display:flex;gap:10px;flex-wrap:wrap}
.badges li{background:#fff;border:3px solid var(--navy);border-radius:10px;padding:3px 14px;font-weight:800;font-size:15px}
.badges li:nth-child(2n){background:var(--sun)}
.mascot{position:relative;text-align:center}
.mascot img{width:min(100%,420px);height:auto;filter:drop-shadow(6px 8px 0 rgba(20,34,74,.35));animation:bob 3.2s ease-in-out infinite}
.bubble{position:absolute;top:6%;left:-4%;z-index:2;background:#fff;border:3px solid var(--navy);border-radius:20px;padding:8px 16px;font-weight:800;transform:rotate(-4deg)}
.bubble::after{content:"";position:absolute;bottom:-14px;left:36px;width:20px;height:20px;background:#fff;border-right:3px solid var(--navy);border-bottom:3px solid var(--navy);transform:rotate(45deg)}
.sticker{position:absolute;z-index:2;padding:6px 14px;border:3px solid var(--navy);border-radius:999px;font-weight:800;font-size:14px;color:#fff}
.s1{background:var(--red);right:2%;top:18%;transform:rotate(8deg)}
.s2{background:var(--teal);color:var(--navy);right:0;bottom:12%;transform:rotate(-6deg)}
@keyframes bob{50%{transform:translateY(-10px)}}

/* marquee */
.marquee{background:var(--navy);color:var(--yellow);overflow:hidden;white-space:nowrap;border-bottom:3px solid var(--navy)}
.track{display:inline-flex;animation:slide 28s linear infinite}
.track span{padding:12px 26px;font:400 17px "Dela Gothic One",sans-serif}
.track span::after{content:"\2605";margin-left:52px;color:var(--orange)}
@keyframes slide{to{transform:translateX(-50%)}}

/* sections */
section{padding:76px 0}
section.sun{background:var(--sun) radial-gradient(rgba(255,138,0,.18) 2px,transparent 2.5px) 0 0/26px 26px;border-top:3px solid var(--navy);border-bottom:3px solid var(--navy)}
h2{font-size:clamp(28px,4.6vw,42px);margin-bottom:12px}
.sub{color:var(--muted);margin:0 0 34px;max-width:56ch}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:24px}
.cards.three{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.card{background:#fff;border:3px solid var(--navy);border-radius:20px;padding:24px;box-shadow:6px 6px 0 var(--navy);transition:transform .2s}
.card:hover{transform:translateY(-6px) rotate(-1deg)}
.card h3{font-size:21px;margin-bottom:8px}
.card p{margin:0;color:var(--muted);font-size:16px}
.ico{display:inline-grid;place-items:center;min-width:54px;height:54px;padding:0 10px;margin-bottom:14px;border:3px solid var(--navy);border-radius:14px;font:400 17px "Dela Gothic One",sans-serif;color:var(--navy);background:var(--yellow)}
.c2 .ico{background:var(--teal)}.c3 .ico{background:var(--green);color:#fff}.c4 .ico{background:var(--orange)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}
.ticks{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ticks li{font-weight:700}
.ticks li::before{content:"\2713";display:inline-grid;place-items:center;width:26px;height:26px;margin-right:10px;border:2px solid var(--navy);border-radius:50%;background:var(--green);color:#fff;font-size:14px}

/* demo */
.demo{background:#fff;border:3px solid var(--navy);border-radius:24px;padding:24px;box-shadow:8px 8px 0 var(--navy);display:grid;gap:16px}
.demo-title{margin:0;font:400 18px "Dela Gothic One",sans-serif}
.items{display:flex;gap:8px;flex-wrap:wrap}
.items button{font:700 15px "M PLUS Rounded 1c",sans-serif;padding:8px 16px;border:3px solid var(--navy);border-radius:999px;background:#fff;color:var(--navy);cursor:pointer}
.items button.on{background:var(--orange);color:#fff}
.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
label{display:grid;gap:6px;font-weight:700;font-size:15px}
input{font:inherit;padding:10px 12px;border:3px solid var(--navy);border-radius:12px;width:100%}
.qty{display:flex;align-items:center;gap:10px}
.qty button{width:38px;height:38px;border:3px solid var(--navy);border-radius:50%;background:var(--yellow);font:800 20px/1 sans-serif;cursor:pointer;color:var(--navy)}
.qty output{min-width:26px;text-align:center;font-weight:800;font-size:19px}
.chat{background:#dcf8c6;border:3px solid var(--navy);border-radius:16px 16px 4px 16px;padding:12px 14px;font-size:15px;min-height:64px}

/* steps */
.steps{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;counter-reset:s}
.steps li{counter-increment:s;position:relative;background:#fff;border:3px solid var(--navy);border-radius:20px;padding:64px 24px 24px;box-shadow:6px 6px 0 var(--navy)}
.steps li::before{content:counter(s);position:absolute;top:-18px;left:22px;width:52px;height:52px;display:grid;place-items:center;border:3px solid var(--navy);border-radius:50%;background:var(--red);color:#fff;font:400 24px "Dela Gothic One",sans-serif}
.steps li:nth-child(2)::before{background:var(--teal);color:var(--navy)}.steps li:nth-child(3)::before{background:var(--green)}
.steps b{display:block;font:400 20px "Dela Gothic One",sans-serif;margin-bottom:6px}
.steps span{color:var(--muted)}

/* pay */
.pay{display:grid;grid-template-columns:auto 1fr;gap:36px;align-items:center}
.wise{display:grid;place-items:center;gap:2px;width:210px;padding:26px 18px;background:#9fe870;border:3px solid var(--navy);border-radius:24px;box-shadow:8px 8px 0 var(--navy);transform:rotate(-3deg);color:#163300}
.wise b{font:400 38px "Dela Gothic One",sans-serif}
.wise small{font-weight:800}
.tick{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#163300;color:#9fe870;font-weight:800}
.pay .sub{margin:0}

/* faq */
.narrow{max-width:760px}
details{background:#fff;border:3px solid var(--navy);border-radius:16px;margin:0 0 14px;box-shadow:4px 4px 0 var(--navy)}
summary{cursor:pointer;padding:16px 20px;font-weight:800;list-style:none}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";float:right;font-weight:800;font-size:22px;line-height:1}
details[open] summary::after{content:"\2212"}
details p{margin:0;padding:0 20px 18px;color:var(--muted)}

/* final cta */
.final{background:var(--green);color:#fff;text-align:center;border-bottom:3px solid var(--navy)}
.final img{height:auto;margin-bottom:6px;filter:drop-shadow(4px 5px 0 rgba(20,34,74,.45))}
.final h2{-webkit-text-stroke:5px var(--navy);paint-order:stroke fill;font-size:clamp(34px,6vw,56px)}
.final p{max-width:46ch;margin:14px auto 26px;font-weight:700}
.final .btns{justify-content:center}
.final .btn.wa{background:var(--yellow);color:var(--navy)}
footer{background:var(--navy);color:#cdd5f5;padding:24px 0;font-size:15px}
.foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.float{position:fixed;right:18px;bottom:18px;z-index:30;padding:13px 20px;background:var(--green);color:#fff;border:3px solid var(--navy);border-radius:999px;font-weight:800;text-decoration:none;box-shadow:4px 4px 0 var(--navy)}

@media (max-width:820px){
  nav{display:none}
  .hero-grid,.two,.pay{grid-template-columns:1fr}
  .mascot{order:-1;max-width:320px;margin:0 auto}
  .bubble{left:0}
  .wise{margin:0 auto 4px}
  .row{grid-template-columns:1fr}
  section{padding:56px 0}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .mascot img,.track{animation:none}
  *{transition:none!important}
}
