@font-face{font-family:Inter;src:url(assets/fonts/inter.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:Bricolage;src:url(assets/fonts/bricolage.woff2) format("woff2");font-weight:200 800;font-stretch:75% 100%;font-display:swap}
:root{--ink:#0f1c2e;--ink2:#1a2c45;--accent:#ff6b2c;--accentDark:#e2541a;--cream:#f7f4ee;--slate:#5b6b80;--line:#e4e0d8;--ink:#0f1c2e;--ink2:#1a2c45;--accent:#ff6b2c;--accentDark:#e2541a;--cream:#f7f4ee;--slate:#5b6b80;--line:#e4e0d8;--r:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);line-height:1.6;background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}a{color:inherit}
h1,h2,h3,.disp{font-family:Bricolage,Inter,system-ui,sans-serif;letter-spacing:-.02em;line-height:1.08;margin:0}
h2{font-size:clamp(2rem,4.2vw,3rem);font-weight:750}
h3{font-size:1.18rem;font-weight:700;letter-spacing:-.01em}
.wrap{max-width:1180px;margin:auto;padding:0 24px}
section{padding:104px 0}
.kicker{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accentDark);margin:0 0 16px}
.kicker:before{content:"";width:22px;height:2px;background:currentColor;border-radius:2px}
.sechead{max-width:720px;margin-bottom:56px}.sechead p{color:var(--slate);font-size:1.12rem;margin:18px 0 0}
.center{text-align:center;margin-left:auto;margin-right:auto}.center .kicker{justify-content:center}
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--accent);color:#fff;padding:15px 26px;border-radius:999px;text-decoration:none;font-weight:700;font-size:1rem;border:0;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s;box-shadow:0 8px 24px -8px #ff6b2c99;font-family:inherit}
.btn:hover{background:var(--accentDark);transform:translateY(-2px)}
.btn.ghost{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px #ffffff55}.btn.ghost:hover{background:#ffffff14}
.btn.sm{padding:10px 18px;font-size:.92rem}
/* nav */
.nav{position:sticky;top:0;z-index:50;background:#0f1c2ee6;backdrop-filter:saturate(1.4) blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #ffffff12}
.navin{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:#fff}
.brand svg{width:38px;height:38px}.brand b{font-family:Bricolage,Inter,sans-serif;font-size:1.2rem;font-weight:750;letter-spacing:-.02em}.brand b span{color:var(--accent)}
.nav nav{display:flex;align-items:center;gap:28px}.nav nav a:not(.btn){color:#cfd7e3;text-decoration:none;font-size:.94rem;font-weight:500}.nav nav a:not(.btn):hover{color:#fff}
/* hero */
.hero{background:var(--ink);color:#fff;position:relative;overflow:hidden;padding:88px 0 110px}
.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#ffffff0a 1px,transparent 1px),linear-gradient(90deg,#ffffff0a 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(ellipse 80% 70% at 70% 40%,#000 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse 80% 70% at 70% 40%,#000 30%,transparent 75%)}
.hero:after{content:"";position:absolute;width:720px;height:720px;right:-160px;top:-220px;background:radial-gradient(circle,#ff6b2c33,transparent 62%);pointer-events:none}
.heroin{position:relative;z-index:1;display:grid;grid-template-columns:1.02fr 1fr;gap:56px;align-items:center}
.pill{display:inline-flex;align-items:center;gap:9px;background:#ffffff10;border:1px solid #ffffff1f;padding:7px 14px 7px 10px;border-radius:999px;font-size:.86rem;color:#dfe5ee;margin-bottom:26px}
.pill i{width:8px;height:8px;border-radius:50%;background:#3ddc84;box-shadow:0 0 0 4px #3ddc8433}
.hero h1{font-size:clamp(2.7rem,6.2vw,4.9rem);font-weight:800;margin-bottom:24px}
.hero h1 em{font-style:normal;color:var(--accent);position:relative;white-space:nowrap}
.hero .lead{font-size:1.2rem;color:#c3ccd9;max-width:540px;margin:0 0 16px}.tradeline{display:flex;gap:10px;align-items:flex-start;color:#aeb9c8;font-size:.95rem;max-width:540px;margin:0 0 30px}.tradeline svg{flex:none;color:var(--accent);margin-top:3px}.tradeline b{color:#fff}
.ctas{display:flex;flex-wrap:wrap;gap:14px}
.callnote{display:flex;align-items:center;gap:10px;color:#c3ccd9;font-size:.95rem;margin-top:26px}
.callnote svg{flex:none;color:var(--accent)}.callnote b{color:#fff}
.trust{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:34px;padding-top:26px;border-top:1px solid #ffffff17;font-size:.9rem;color:#aeb9c8}
.trust span{display:flex;align-items:center;gap:8px}.trust svg{color:#3ddc84}
/* device mockups */
.stage{position:relative;padding:10px 46px 40px 0}
.browser{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 30px 70px -20px #000c,0 0 0 1px #ffffff1a}
.browser .bar{display:flex;align-items:center;gap:6px;height:30px;padding:0 12px;background:#eef0f3;border-bottom:1px solid #dde1e6}
.browser .bar i{width:9px;height:9px;border-radius:50%;background:#ff5f57}.browser .bar i:nth-child(2){background:#febc2e}.browser .bar i:nth-child(3){background:#28c840}
.browser .bar u{flex:1;margin:0 30px 0 14px;height:17px;border-radius:6px;background:#fff;text-decoration:none;font-size:10px;color:#7a8696;display:flex;align-items:center;justify-content:center;font-family:Inter,sans-serif;white-space:nowrap;overflow:hidden}
.browser img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top}
.phone{position:absolute;right:0;bottom:0;width:31%;background:#0b0f16;border-radius:26px;padding:7px;box-shadow:0 30px 60px -18px #000d,0 0 0 1px #ffffff26}
.phone img{border-radius:20px;width:100%;aspect-ratio:390/844;object-fit:cover;object-position:top}
.phone:before{content:"";position:absolute;top:13px;left:50%;transform:translateX(-50%);width:30%;height:9px;background:#0b0f16;border-radius:9px;z-index:2}
.hero .stage .browser{transform:perspective(1600px) rotateY(-7deg) rotateX(2deg)}
.chip{position:absolute;z-index:3;background:#fff;color:var(--ink);border-radius:14px;padding:11px 15px;font-size:.84rem;font-weight:600;box-shadow:0 18px 40px -12px #000a;display:flex;align-items:center;gap:10px;line-height:1.25}
.chip small{display:block;font-weight:500;color:var(--slate);font-size:.76rem}
.chip .dot{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#fff1ea;color:var(--accentDark);flex:none}
.chip.c1{left:-26px;bottom:62px}.chip.c2{right:-8px;top:-14px}
/* trades strip */
.strip{background:var(--ink2);color:#c9d2de;padding:22px 0;border-top:1px solid #ffffff10}
.stripin{display:flex;align-items:center;gap:10px 22px;flex-wrap:wrap;justify-content:center;font-weight:600;font-size:.95rem}
.stripin b{color:#fff;font-weight:700;margin-right:6px}.stripin span{display:flex;align-items:center;gap:22px}.stripin span:after{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent)}.stripin span:last-child:after{display:none}
/* who */
.who{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.whocard{border:1px solid var(--line);border-radius:var(--r);padding:32px 28px;background:#fff;transition:box-shadow .2s,transform .2s}
.whocard:hover{box-shadow:0 20px 44px -22px #0f1c2e55;transform:translateY(-3px)}
.icon{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;background:#fff1ea;color:var(--accentDark);margin-bottom:20px}
.whocard p{color:var(--slate);margin:10px 0 0}
/* included */
.inc{background:var(--cream)}
.incgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.incitem{background:#fff;border-radius:var(--r);padding:26px;display:flex;gap:18px;align-items:flex-start;border:1px solid #ece7dd}
.incitem .icon{margin:0;flex:none;width:44px;height:44px;border-radius:12px;background:var(--ink);color:#fff}
.incitem p{margin:6px 0 0;color:var(--slate);font-size:.95rem;line-height:1.5}
.incitem.hl .icon{background:var(--accent)}
/* steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;counter-reset:s;position:relative}
.steps:before{content:"";position:absolute;top:34px;left:12%;right:12%;border-top:2px dashed #d9d3c7}
.step{position:relative;text-align:center;padding:0 12px}
.step .num{width:68px;height:68px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;margin:0 auto 24px;font-family:Bricolage,sans-serif;font-weight:800;font-size:1.6rem;box-shadow:0 0 0 8px #fff}
.step:nth-child(2) .num{background:var(--accent)}
.step p{color:var(--slate);margin:10px 0 0}.step .when{display:inline-block;margin-top:14px;font-size:.8rem;font-weight:700;color:var(--accentDark);background:#fff1ea;padding:4px 12px;border-radius:999px}
/* work */
.work{background:var(--ink);color:#fff}.work .sechead p{color:#aeb9c8}.work .kicker{color:var(--accent)}
.workgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.wcard{background:#16263c;border-radius:20px;padding:22px 22px 24px;border:1px solid #ffffff12;display:flex;flex-direction:column;transition:transform .2s,border-color .2s}
.wcard:hover{transform:translateY(-4px);border-color:#ff6b2c66}
.wcard .stage{padding:0 30px 22px 0;margin-bottom:18px}
.wcard .browser .bar{height:22px}.wcard .browser .bar i{width:7px;height:7px}.wcard .browser .bar u{height:13px;font-size:8px}
.wcard .phone{width:30%;border-radius:16px;padding:4px}.wcard .phone img{border-radius:12px}.wcard .phone:before{top:8px;height:5px}
.tag{align-self:flex-start;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:7px;margin-bottom:12px}
.tag.founder{background:#ff6b2c26;color:#ff9a6b}.tag.client{background:#3ddc8424;color:#5ef0a0}.tag.sample{background:#ffffff14;color:#c3ccd9}
.wcard h3{font-size:1.28rem}.wcard .trade{color:#9fabbb;font-size:.92rem;margin:4px 0 16px}
.wlinks{margin-top:auto;display:flex;gap:18px;font-weight:700;font-size:.94rem}.wlinks a{color:#fff;text-decoration:none;border-bottom:2px solid var(--accent);padding-bottom:2px}.wlinks a.sec{border-color:#ffffff40;color:#cfd7e3}
.worknote{color:#8a97a8;font-size:.88rem;text-align:center;margin-top:36px}
/* pricing */
.found{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;background:#fff1ea;border:1px dashed #ff6b2c88;color:#8a3410;border-radius:14px;padding:14px 20px;max-width:820px;margin:0 auto 44px;font-size:.96rem;text-align:center}
.found b{background:var(--accent);color:#fff;padding:3px 10px;border-radius:999px;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}
.plans{display:grid;grid-template-columns:repeat(2,1fr);gap:26px;max-width:940px;margin:auto}
.plan{border:1px solid var(--line);border-radius:22px;padding:36px 34px;position:relative;background:#fff;display:flex;flex-direction:column}
.plan.featured{background:var(--ink);color:#fff;border-color:var(--ink);box-shadow:0 30px 60px -28px #0f1c2e99}
.plan .ribbon{position:absolute;top:-13px;left:34px;background:var(--accent);color:#fff;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:5px 12px;border-radius:999px}
.plan h3{font-size:1.4rem}.plan .blurb{color:var(--slate);margin:8px 0 22px;font-size:.98rem}.plan.featured .blurb{color:#aeb9c8}
.price{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:4px}
.price strong{font-family:Bricolage,sans-serif;font-size:3.2rem;font-weight:800;letter-spacing:-.03em;line-height:1}
.price s{color:#97a2b1;font-size:1.25rem;font-weight:600}.price small{color:var(--slate);font-weight:600}.plan.featured .price small{color:#aeb9c8}
.pnote{font-size:.85rem;color:var(--accentDark);font-weight:700;margin-bottom:24px}.plan.featured .pnote{color:var(--accent)}
.plan ul{list-style:none;padding:0;margin:0 0 30px;display:grid;gap:11px}
.plan li{display:flex;gap:11px;font-size:.97rem;line-height:1.45}.plan li svg{flex:none;margin-top:3px;color:var(--accent)}
.plan .btn{margin-top:auto;justify-content:center}.plan:not(.featured) .btn{background:var(--ink);box-shadow:none}.plan:not(.featured) .btn:hover{background:var(--ink2)}
.care{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:940px;margin:26px auto 0}
.cplan{border:1px solid var(--line);border-radius:18px;padding:26px 28px;background:var(--cream)}
.cplan .top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.cplan .top strong{font-family:Bricolage,sans-serif;font-size:2rem;font-weight:800}.cplan .top small{color:var(--slate);font-weight:600}
.cplan p{color:var(--slate);margin:4px 0 14px;font-size:.93rem}
.cplan ul{margin:0;padding-left:18px;font-size:.93rem;display:grid;gap:5px}.cplan li::marker{color:var(--accent)}
.terms{max-width:940px;margin:30px auto 0;display:grid;grid-template-columns:1.1fr 1fr;gap:26px}
.addons{border:1px solid var(--line);border-radius:18px;padding:24px 28px}
.addons h3{margin-bottom:10px;font-size:1.05rem}
.addons table{width:100%;border-collapse:collapse;font-size:.92rem}.addons td{padding:8px 0;border-top:1px solid #efebe4}.addons td:last-child{text-align:right;font-weight:700;white-space:nowrap;padding-left:12px}
.payterms{border-radius:18px;padding:24px 28px;background:var(--ink);color:#d5dce6;font-size:.95rem}
.payterms h3{color:#fff;margin-bottom:12px;font-size:1.05rem}.payterms p{margin:0 0 12px}.payterms b{color:#fff}
/* roi */
.roi{background:var(--cream);padding:84px 0}
.roigrid{display:grid;grid-template-columns:1fr 1.4fr;gap:50px;align-items:center}
.roistats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.stat{background:#fff;border-radius:16px;padding:24px 20px;border:1px solid #ece7dd}
.stat strong{display:block;font-family:Bricolage,sans-serif;font-size:2.3rem;font-weight:800;color:var(--accentDark);line-height:1;margin-bottom:10px;letter-spacing:-.03em}
.stat span{font-size:.92rem;color:var(--slate)}
.src{font-size:.78rem;color:#8b95a3;margin-top:14px}
/* faq */
.faq{max-width:820px;margin:auto}
.faq details{border-bottom:1px solid var(--line);padding:4px 0}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;font-weight:650;font-size:1.1rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";font-size:1.6rem;font-weight:400;color:var(--accent);transition:transform .2s;line-height:1}
.faq details[open] summary:after{transform:rotate(45deg)}
.faq details p{margin:0 0 22px;color:var(--slate);max-width:700px}
/* contact */
.contact{background:var(--ink);color:#fff;position:relative;overflow:hidden}
.contact:before{content:"";position:absolute;width:640px;height:640px;left:-240px;bottom:-320px;background:radial-gradient(circle,#ff6b2c2b,transparent 62%)}
.cgrid{position:relative;display:grid;grid-template-columns:1fr 1.05fr;gap:60px;align-items:start}
.contact .kicker{color:var(--accent)}.contact .lead{color:#aeb9c8;font-size:1.1rem;margin:18px 0 32px}
.bigphone{display:inline-flex;align-items:center;gap:14px;text-decoration:none;font-family:Bricolage,sans-serif;font-size:2.1rem;font-weight:800;letter-spacing:-.02em}
.bigphone span{width:54px;height:54px;border-radius:16px;background:var(--accent);display:grid;place-items:center}
.cinfo{margin-top:30px;display:grid;gap:14px;color:#c3ccd9}.cinfo div{display:flex;gap:12px;align-items:flex-start}.cinfo svg{flex:none;color:var(--accent);margin-top:3px}.cinfo b{color:#fff}
.qrbox{display:flex;align-items:center;gap:18px;margin-top:34px;padding:16px;border:1px solid #ffffff1a;border-radius:16px;background:#ffffff08;max-width:380px}
.qrbox img{width:86px;height:86px;border-radius:8px;background:#fff;padding:5px}.qrbox p{margin:0;font-size:.9rem;color:#aeb9c8}.qrbox b{color:#fff;display:block}
form{background:#fff;color:var(--ink);border-radius:22px;padding:34px;box-shadow:0 30px 70px -30px #000c}
form h3{font-size:1.45rem;margin-bottom:4px}form .sub{color:var(--slate);margin:0 0 22px;font-size:.95rem}
.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
label{display:block;font-weight:600;font-size:.88rem;margin-bottom:14px}
input,textarea,select{width:100%;margin-top:6px;padding:12px 14px;border:1.5px solid #dcd7cd;border-radius:11px;font:inherit;font-weight:400;font-size:.98rem;background:#fcfbf9;transition:border-color .15s,box-shadow .15s}
input:focus,textarea:focus,select:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 4px #ff6b2c22;background:#fff}
fieldset{border:0;padding:0;margin:4px 0 16px}legend{font-weight:600;font-size:.88rem;margin-bottom:8px}
.slots{display:grid;gap:8px}
.slot{display:flex;align-items:center;gap:12px;border:1.5px solid #dcd7cd;border-radius:12px;padding:11px 14px;cursor:pointer;margin:0;font-weight:600;font-size:.94rem;transition:border-color .15s,background .15s}
.slot input{width:auto;margin:0;accent-color:var(--accent)}
.slot.pref{border-color:#ffb795;background:#fff7f2}.slot.pref em{margin-left:auto;font-style:normal;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:var(--accent);color:#fff;padding:3px 8px;border-radius:999px}
.slot:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 3px #ff6b2c22}
form .btn{width:100%;justify-content:center;margin-top:6px}
.formnote{font-size:.82rem;color:var(--slate);text-align:center;margin:12px 0 0}
.hp{position:absolute;left:-9999px}
#thanks{display:none;text-align:center;padding:30px 10px}#thanks .icon{margin:0 auto 18px;background:#e8fbf0;color:#1c9a55}
/* footer */
footer{background:#0a1422;color:#8a97a8;padding:46px 0;font-size:.9rem}
.fin{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:center}
footer .brand b{font-size:1.05rem}footer p{margin:0}footer a{color:#c3ccd9}
/* responsive */
@media (max-width:1000px){.heroin{grid-template-columns:1fr;gap:60px}.stage{max-width:640px}.workgrid{grid-template-columns:1fr 1fr}.incgrid{grid-template-columns:1fr 1fr}.roigrid{grid-template-columns:1fr}.cgrid{grid-template-columns:1fr}}
@media (max-width:760px){.brand b{white-space:nowrap}.nav .btn.sm{padding:9px 14px;font-size:.84rem;white-space:nowrap}.nav .btn.sm .long{display:none}.brand svg{width:34px;height:34px}section{padding:76px 0}.nav nav a:not(.btn){display:none}.who,.incgrid,.steps,.workgrid,.plans,.care,.terms,.roistats{grid-template-columns:1fr}.steps:before{display:none}.hero{padding:56px 0 80px}.row{grid-template-columns:1fr}.chip.c1{left:-6px}.chip.c2{display:none}form{padding:24px}.brand b{font-size:1.05rem}.plan{padding:32px 24px}.stage{padding-right:34px}.price strong{font-size:2.8rem}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
