/* acebetpromocode.top */
:root{
  --slate:#1D2735;
  --slate-2:#2B3849;
  --cool:#F2F5F9;
  --paper:#FFFFFF;
  --edge:#DCE3EC;
  --lime:#9BE15D;
  --lime-deep:#4E9A1E;
  --sky:#5AA9F0;
  --sky-soft:#E4F1FD;
  --text:#1D2735;
  --soft:#5B6878;
  --red:#C8323A;
  --wide:"Unbounded", "Arial Black", system-ui, sans-serif;
  --base:"Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--text);font:400 17px/1.7 var(--base)}
img{max-width:100%;height:auto;display:block}
a{color:#1E6FBF;text-underline-offset:3px}
a:hover{color:var(--slate)}
:focus-visible{outline:3px solid var(--sky);outline-offset:3px;border-radius:4px}
h1,h2,h3{font-family:var(--wide);font-weight:700;line-height:1.15;letter-spacing:-.02em;color:var(--slate);margin:0}
h2{font-size:clamp(24px,3vw,34px);margin-bottom:14px}
h3{font-size:19px;font-weight:600;margin:28px 0 8px;letter-spacing:-.01em}
p{margin:0 0 16px}
.c{max-width:1140px;margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:99}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--lime);color:var(--slate);font:700 17px/1 var(--base);text-decoration:none;border:0;border-radius:12px;padding:17px 24px;cursor:pointer;box-shadow:0 0 0 2px var(--slate) inset;transition:background .12s,transform .12s}
.btn:hover{background:#B3EC7E;color:var(--slate);transform:translateY(-1px)}
.btn:active{transform:translateY(1px)}
.btn.dark{background:var(--slate);color:#fff;box-shadow:none}
.btn.dark:hover{background:var(--slate-2);color:#fff}
.btn.sm{font-size:15px;padding:12px 16px;border-radius:10px}
.btn.wide{width:100%}

/* header */
.bar{background:var(--slate);color:#C9D3E0}
.bar .c{display:flex;align-items:center;gap:22px;min-height:62px}
.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font:600 16px/1 var(--wide);margin-right:auto;letter-spacing:-.01em}
.brand img{width:34px;height:34px;border-radius:8px}
.brand b{color:var(--lime);font-weight:600}
.bar nav{display:flex;gap:20px}
.bar nav a{color:#C9D3E0;text-decoration:none;font-weight:600;font-size:14.5px}
.bar nav a:hover{color:#fff}
@media (max-width:880px){.bar nav{display:none}}

/* hero */
.hero{background:var(--cool);border-bottom:1px solid var(--edge);overflow:hidden}
.hero .c{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;padding-top:44px;padding-bottom:54px}
.path{font-size:14px;color:var(--soft);margin-bottom:14px}
.hero h1{font-size:clamp(34px,5.2vw,62px);line-height:1.04;margin-bottom:16px}
.hero h1 span{display:block;font-size:.42em;font-weight:500;letter-spacing:0;color:var(--soft);margin-top:12px}
.hero .intro{font-size:18.5px;color:#3A4757;max-width:44ch}
.codebox{display:flex;align-items:stretch;gap:10px;margin:24px 0 12px;max-width:520px}
.code{flex:1;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:2px dashed var(--slate);border-radius:12px;padding:6px 6px 6px 18px}
.code small{display:block;font-size:12px;font-weight:700;color:var(--soft)}
.code b{font:700 24px/1.1 var(--wide);letter-spacing:.06em}
.copy{background:var(--sky-soft);border:0;border-radius:9px;font:700 14px var(--base);color:#1E6FBF;padding:12px 14px;cursor:pointer}
.copy.ok{background:var(--lime);color:var(--slate)}
.under{font-size:13.5px;color:var(--soft);max-width:520px}
.byl{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--soft);margin-top:18px}
@media (max-width:560px){.codebox{flex-direction:column}.codebox .btn{width:100%}}

/* the ace card */
.ace{justify-self:center;width:min(330px,80vw);aspect-ratio:5/7;background:#fff;border-radius:22px;border:2px solid var(--slate);box-shadow:14px 14px 0 var(--lime),0 30px 60px rgba(29,39,53,.18);position:relative;transform:rotate(4deg);padding:22px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;animation:deal .9s cubic-bezier(.2,.9,.3,1) both}
@keyframes deal{from{transform:translate(60px,-30px) rotate(18deg);opacity:0}to{transform:rotate(4deg);opacity:1}}
@media (prefers-reduced-motion:reduce){.ace{animation:none}}
.ace .corner{position:absolute;font:700 30px/1 var(--wide);color:var(--slate);text-align:center}
.ace .corner i{display:block;font-style:normal;font-size:26px;margin-top:2px}
.ace .tl{top:16px;left:18px}.ace .br{bottom:16px;right:18px;transform:rotate(180deg)}
.ace .spade{width:84px;height:84px;margin-bottom:12px}
.ace .k{font:700 13px var(--base);color:var(--soft);text-transform:none}
.ace .big{font:700 clamp(34px,4.4vw,44px)/1 var(--wide);color:var(--slate);margin:6px 0}
.ace .plus{font:600 16px/1.35 var(--base);color:var(--slate);background:var(--lime);border-radius:8px;padding:6px 10px;margin-top:6px}
@media (max-width:900px){.hero .c{grid-template-columns:1fr;gap:34px;padding-top:28px}.ace{width:min(270px,72vw)}}

/* sections */
.blk{padding:64px 0}
.blk.grey{background:var(--cool)}
.lead{color:var(--soft);max-width:64ch}
.facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
.fact{background:#fff;border:1px solid var(--edge);border-radius:14px;padding:16px 18px}
.fact span{display:block;font-size:13px;font-weight:700;color:var(--soft)}
.fact b{display:block;font:600 17px/1.35 var(--wide);letter-spacing:-.01em;margin-top:4px}
.fact.hl{background:var(--slate);border-color:var(--slate)}
.fact.hl span{color:#9FB0C4}.fact.hl b{color:var(--lime)}
@media (max-width:820px){.facts{grid-template-columns:1fr 1fr}}
@media (max-width:440px){.facts{grid-template-columns:1fr}}

/* code steps */
.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:26px;border:2px solid var(--slate);border-radius:16px;overflow:hidden;counter-reset:f}
.flow div{padding:18px;border-right:2px solid var(--slate);background:#fff;counter-increment:f;font-size:15px;color:var(--soft)}
.flow div:last-child{border-right:0;background:var(--lime);color:var(--slate)}
.flow div::before{content:"0" counter(f);display:block;font:700 22px var(--wide);color:var(--slate);margin-bottom:8px}
.flow b{display:block;color:var(--slate);font-size:16.5px;margin-bottom:2px}
@media (max-width:820px){.flow{grid-template-columns:1fr 1fr}.flow div:nth-child(2){border-right:0}.flow div:nth-child(-n+2){border-bottom:2px solid var(--slate)}}
@media (max-width:460px){.flow{grid-template-columns:1fr}.flow div{border-right:0;border-bottom:2px solid var(--slate)}.flow div:last-child{border-bottom:0}}

/* calculator */
.calc{display:grid;grid-template-columns:.9fr 1.1fr;gap:0;background:#fff;border:2px solid var(--slate);border-radius:18px;overflow:hidden;margin-top:24px}
.calc .in{padding:24px;background:var(--slate);color:#C9D3E0}
.calc .in h3{color:#fff;margin:0 0 10px;font-size:18px}
.calc label{display:block;font-weight:600;font-size:14px;margin:14px 0 6px}
.calc input[type=range]{width:100%;accent-color:var(--lime)}
.calc .val{font:700 34px/1 var(--wide);color:var(--lime)}
.calc .seg{display:flex;gap:6px;margin-top:6px}
.calc .seg button{flex:1;background:var(--slate-2);color:#C9D3E0;border:1px solid #3E4D61;border-radius:9px;padding:10px 6px;font:600 14px var(--base);cursor:pointer}
.calc .seg button[aria-pressed=true]{background:var(--lime);color:var(--slate);border-color:var(--lime)}
.calc .out{padding:24px;display:grid;grid-template-columns:1fr 1fr;gap:14px;align-content:start}
.calc .out div{border:1px solid var(--edge);border-radius:12px;padding:14px}
.calc .out span{display:block;font-size:13px;font-weight:700;color:var(--soft)}
.calc .out b{display:block;font:700 26px/1.15 var(--wide);margin-top:4px}
.calc .out .warn b{color:var(--red)}
.calc .out p{grid-column:1/-1;font-size:13.5px;color:var(--soft);margin:0}
@media (max-width:820px){.calc{grid-template-columns:1fr}}

/* picks grid */
.picks{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;list-style:none;margin:22px 0 0;padding:0}
@media (max-width:960px){.picks{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.picks{grid-template-columns:1fr}}
.pick{background:#fff;border:1px solid var(--edge);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:12px}
.pick .row{display:flex;gap:12px;align-items:center}
.pick img{width:56px;height:56px;border-radius:12px;object-fit:cover;background:var(--slate)}
.pick .nm{font-weight:700;font-size:16px;line-height:1.25}
.pick .nm em{font-style:normal;display:inline-block;font-size:11.5px;font-weight:700;background:var(--sky-soft);color:#1E6FBF;border-radius:6px;padding:1px 7px;margin-left:4px;vertical-align:1px}
.pick .rt{font-size:13.5px;color:var(--soft)}
.pick .sc{margin-left:auto;text-align:right;line-height:1}
.pick .sc b{display:block;font:700 30px/1 var(--wide);color:var(--slate)}
.pick .sc small{font-size:12px;font-weight:700;color:var(--soft)}
.pick .dl{font-weight:600;font-size:15.5px}
.pick .ln{font-size:13.5px;color:var(--soft);margin-top:-8px}
.pick .ft{display:flex;gap:10px;align-items:center;margin-top:auto}
.pick .ft .btn{flex:1}
.pick .ft a.rv{font-size:13.5px;font-weight:600}

/* article */
.art{max-width:760px;margin:0 auto}
.art section{margin-bottom:46px}
.art ul,.art ol{padding-left:22px;margin:0 0 18px}
.art li{margin-bottom:8px}
.art strong{color:var(--slate)}
.art figure{margin:8px 0 24px}
.art figure img{width:100%;border-radius:16px;border:1px solid var(--edge)}
.art figcaption{font-size:14px;color:var(--soft);margin-top:8px}
.box{border-left:4px solid var(--lime);background:var(--cool);border-radius:0 12px 12px 0;padding:14px 18px;margin:4px 0 20px;font-size:16px}
.box.blue{border-color:var(--sky)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:6px 0 22px}
.grid2 div{border:1px solid var(--edge);border-radius:14px;padding:16px 18px;font-size:15.5px}
.grid2 h4{font:600 16px var(--wide);margin:0 0 6px}
.grid2 ul{margin:0;padding-left:18px}
@media (max-width:640px){.grid2{grid-template-columns:1fr}}
.tbl{width:100%;border-collapse:collapse;font-size:15px}
.tbl th,.tbl td{padding:10px 12px;border-bottom:1px solid var(--edge);text-align:left;vertical-align:top}
.tbl thead th{background:var(--slate);color:#fff;font-weight:600}
.tscroll{overflow-x:auto;margin:4px 0 22px;border-radius:12px;border:1px solid var(--edge)}
.tscroll .tbl{min-width:540px}
.mid{display:flex;gap:16px;align-items:center;border:2px solid var(--slate);border-radius:16px;padding:14px 16px;margin:8px 0 26px;background:#fff}
.mid img{width:56px;height:56px;border-radius:12px}
.mid div{flex:1;font-size:15px;line-height:1.45;color:var(--soft)}
.mid div b{display:block;color:var(--slate);font:600 17px/1.3 var(--wide)}
@media (max-width:560px){.mid{flex-wrap:wrap}.mid .btn{width:100%}}
.seq{list-style:none;padding:0;margin:0 0 20px;counter-reset:q}
.seq li{counter-increment:q;position:relative;padding:0 0 16px 52px;margin:0}
.seq li::before{content:counter(q);position:absolute;left:0;top:-2px;width:36px;height:36px;border-radius:10px;background:var(--slate);color:var(--lime);font:700 16px/36px var(--wide);text-align:center}

/* faq */
.faq details{border-bottom:1px solid var(--edge)}
.faq summary{cursor:pointer;list-style:none;padding:18px 40px 18px 0;font-weight:700;font-size:17px;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:6px;top:50%;width:12px;height:12px;border-right:3px solid var(--slate);border-bottom:3px solid var(--slate);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq details p{margin:0 0 18px;color:var(--soft)}

/* footer */
.foot{background:var(--slate);color:#AEBBCB;padding:54px 0 120px;font-size:15px}
.foot .cols{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:34px}
@media (max-width:820px){.foot .cols{grid-template-columns:1fr}}
.foot h4{font:600 15px var(--wide);color:#fff;margin:0 0 12px}
.foot ul{list-style:none;margin:0;padding:0}
.foot li{margin-bottom:7px}
.foot a{color:#fff}
.foot .small{border-top:1px solid #34445A;margin-top:32px;padding-top:20px;font-size:13px;color:#8796AA;line-height:1.6}

/* sticky code bar */
.dockbar{position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:3px solid var(--slate);box-shadow:0 -12px 30px rgba(29,39,53,.18);transform:translateY(105%);transition:transform .3s}
.dockbar.on{transform:none}
.dockbar .c{display:flex;align-items:center;gap:14px;min-height:74px;padding-top:8px;padding-bottom:8px}
.dockbar img{width:46px;height:46px;border-radius:10px}
.dockbar .t{flex:1;min-width:0;line-height:1.25}
.dockbar .t b{display:block;font:600 16px/1.25 var(--wide)}
.dockbar .t button{background:none;border:0;padding:0;font:600 13.5px var(--base);color:#1E6FBF;text-decoration:underline;cursor:pointer}
.dockbar .chip{display:flex;align-items:center;gap:8px;border:2px dashed var(--slate);border-radius:10px;padding:5px 5px 5px 12px;font:700 16px var(--wide);letter-spacing:.05em}
.dockbar .chip .copy{padding:9px 10px;font-size:13px;letter-spacing:0}
.dockbar .x{background:none;border:0;font-size:22px;color:var(--soft);cursor:pointer;padding:4px}
.dockbar .c + .c{min-height:0;padding-top:0;padding-bottom:0}
.dockbar ul{display:none;margin:0;padding:0 0 14px 20px;font-size:14px;color:var(--soft);columns:2;column-gap:36px}
.dockbar.open ul{display:block}
.dockbar li{margin-bottom:4px;break-inside:avoid}
@media (max-width:760px){
  .dockbar .c{flex-wrap:wrap;gap:8px 10px}
  .dockbar img{width:38px;height:38px}
  .dockbar .t{flex:1 1 calc(100% - 100px)}
  .dockbar .x{order:2}
  .dockbar .chip{order:3}
  .dockbar .btn{order:4;flex:1;white-space:nowrap;font-size:15px;padding:13px 12px}
  .dockbar ul{columns:1}
}

/* inner pages */
.top2{background:var(--cool);border-bottom:1px solid var(--edge);padding:40px 0 44px}
.top2 h1{font-size:clamp(30px,4.4vw,46px)}
.top2 p{color:var(--soft);margin:10px 0 0;max-width:60ch}
.doc{max-width:760px;margin:0 auto;padding:46px 20px 64px}
.doc h2{font-size:22px;margin:32px 0 10px}
.doc h2:first-child{margin-top:0}
.doc ul,.doc ol{padding-left:22px}
.doc li{margin-bottom:7px}
