:root {
  --navy: #10234b;
  --navy-2: #1c3974;
  --blue: #315fbd;
  --red: #e51a10;
  --red-dark: #c8150d;
  --ink: #182033;
  --muted: #667085;
  --line: #e5eaf2;
  --surface: #ffffff;
  --surface-soft: #f6f8fc;
  --shadow: 0 24px 70px rgba(22, 41, 79, .12);
  --radius: 24px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: #fff;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
  overflow-x: hidden;
}
button, a { font: inherit; }
a { color: inherit; text-decoration: none; }
img, svg { display: block; }
button { cursor: pointer; }
.container { width: min(1160px, calc(100% - 40px)); margin-inline: auto; }
.section-pad { padding: 116px 0; }

.ambient { position: fixed; z-index: -2; pointer-events: none; border-radius: 999px; filter: blur(10px); opacity: .55; }
.ambient-one { width: 520px; height: 520px; top: -260px; right: -180px; background: radial-gradient(circle, rgba(56, 101, 197, .18), transparent 68%); }
.ambient-two { width: 460px; height: 460px; top: 560px; left: -260px; background: radial-gradient(circle, rgba(229, 26, 16, .1), transparent 70%); }

.site-header { position: fixed; inset: 0 0 auto; z-index: 50; padding: 18px 0; transition: .3s ease; }
.site-header.scrolled { padding: 10px 0; background: rgba(255,255,255,.86); box-shadow: 0 10px 40px rgba(19, 36, 71, .08); backdrop-filter: blur(18px); border-bottom: 1px solid rgba(220,226,237,.75); }
.nav-wrap { display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: inline-flex; align-items: center; gap: 10px; color: var(--navy); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-weight: 800; font-size: 22px; letter-spacing: -.04em; }
.brand img { width: 38px; height: 38px; }
.desktop-nav { display: flex; gap: 32px; font-size: 14px; font-weight: 600; color: #42506a; }
.desktop-nav a { position: relative; }
.desktop-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -7px; height: 2px; background: var(--red); transition: .25s ease; }
.desktop-nav a:hover::after { right: 0; }

.button { min-height: 52px; padding: 0 22px; border: 0; border-radius: 15px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; font-weight: 700; transition: transform .22s ease, box-shadow .22s ease, background .22s ease; }
.button:hover { transform: translateY(-2px); }
.button svg { width: 21px; height: 21px; fill: currentColor; }
.button-small { min-height: 43px; padding-inline: 18px; font-size: 14px; border-radius: 13px; }
.button-dark { background: var(--navy); color: #fff; box-shadow: 0 10px 24px rgba(16,35,75,.2); }
.button-primary { color: #fff; background: linear-gradient(135deg, #f12a1f, var(--red-dark)); box-shadow: 0 16px 32px rgba(229,26,16,.22); }
.button-ghost { color: var(--navy); background: transparent; padding-inline: 8px; }
.button-ghost span { font-size: 22px; transition: transform .2s ease; }
.button-ghost:hover span { transform: translateX(4px); }
.button-outline { color: var(--navy); border: 1px solid #d7dfeb; background: #fff; }

.hero { min-height: 820px; padding-top: 150px; background: radial-gradient(circle at 82% 20%, rgba(71,110,194,.12), transparent 28%), linear-gradient(180deg, #fbfcff 0%, #fff 90%); position: relative; overflow: hidden; }
.hero::after { content:""; position:absolute; inset:auto 0 0; height:1px; background:linear-gradient(90deg,transparent,#e6eaf2,transparent); }
.hero-grid { min-height: 650px; display: grid; grid-template-columns: .92fr 1.08fr; align-items: center; gap: 70px; }
.eyebrow { color: var(--blue); font-size: 13px; line-height: 1; text-transform: uppercase; letter-spacing: .13em; font-weight: 800; display: inline-flex; align-items: center; gap: 9px; }
.pulse-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--red); box-shadow: 0 0 0 0 rgba(229,26,16,.35); animation: pulse 2s infinite; }
@keyframes pulse { 70% { box-shadow: 0 0 0 9px rgba(229,26,16,0); } }
.hero h1 { max-width: 620px; margin: 24px 0 22px; color: var(--navy); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: clamp(52px, 6.4vw, 78px); line-height: 1.02; letter-spacing: -.055em; }
.hero h1 span { color: var(--red); position: relative; white-space: nowrap; }
.hero h1 span::after { content:""; position:absolute; left:2px; right:0; bottom:-8px; height:11px; background:url("data:image/svg+xml,%3Csvg width='300' height='12' viewBox='0 0 300 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 9C72 2 210 2 298 7' stroke='%23e51a10' stroke-width='4' stroke-linecap='round' fill='none' opacity='.28'/%3E%3C/svg%3E") center/100% 100% no-repeat; }
.hero-lead { max-width: 570px; margin: 0; color: #5b6577; font-size: 20px; line-height: 1.7; }
.hero-actions { display: flex; align-items: center; gap: 16px; margin-top: 34px; flex-wrap: wrap; }
.hero-proof { margin-top: 37px; display: flex; align-items: center; gap: 14px; font-size: 14px; }
.hero-proof strong { color: var(--navy); }
.hero-proof span { color: var(--muted); }
.avatars { display:flex; padding-left:8px; }
.avatars span { width: 36px; height: 36px; margin-left:-8px; display:grid; place-items:center; border:3px solid #fff; border-radius:50%; color:#fff; font-size:10px; font-weight:700; background:linear-gradient(135deg,#1e3a73,#5b78b6); }
.avatars span:nth-child(2) { background:linear-gradient(135deg,#d52a20,#f16b62); }
.avatars span:nth-child(3) { background:linear-gradient(135deg,#60704c,#94a975); }

.hero-visual { position: relative; min-height: 650px; display: grid; place-items: center; perspective: 1100px; }
.orbit { position:absolute; border-radius:50%; border:1px solid rgba(49,95,189,.12); }
.orbit-one { width:560px; height:560px; animation: rotate 28s linear infinite; }
.orbit-two { width:440px; height:440px; border-style:dashed; animation: rotate 21s linear infinite reverse; }
@keyframes rotate { to { transform:rotate(360deg); } }
.phone-shell { position:relative; z-index:2; padding:10px; border-radius:48px; background:linear-gradient(145deg,#273651,#060b13 60%); box-shadow: 0 42px 80px rgba(19,34,65,.25), inset 0 0 0 1px rgba(255,255,255,.18); transform: rotateY(-5deg) rotateX(1.5deg); animation: phoneFloat 6s ease-in-out infinite; }
@keyframes phoneFloat { 50% { transform:rotateY(-2deg) rotateX(1deg) translateY(-12px); } }
.phone-frame { width: 328px; height: 670px; position: relative; overflow: hidden; border-radius: 39px; background: #f7f8fb; border: 2px solid #0b1019; }
.phone-top { height: 35px; padding: 11px 18px 0; display:flex; align-items:flex-start; justify-content:space-between; font-size:9px; font-weight:700; color:#121a2a; position:relative; }
.island { width:92px; height:25px; background:#05070a; border-radius:18px; position:absolute; top:6px; left:50%; transform:translateX(-50%); }
.app-screen { padding: 8px 18px 22px; }
.app-bar { display:flex; align-items:center; gap:9px; }
.app-bar img { width:34px; height:34px; }
.app-bar div { display:flex; flex-direction:column; line-height:1.15; }
.app-bar small { font-size:7px; letter-spacing:.13em; color:#7a8495; font-weight:800; }
.app-bar strong { color:var(--navy); font-size:14px; }
.app-bar button { margin-left:auto; border:0; width:31px; height:31px; border-radius:50%; background:#e7ecf5; color:var(--navy); font-size:10px; font-weight:800; }
.app-intro { margin:24px 0 15px; }
.mini-pill { display:inline-block; padding:5px 8px; border-radius:999px; background:#eaf0fb; color:#3560b3; font-size:7px; font-weight:800; text-transform:uppercase; letter-spacing:.06em; }
.app-intro h2 { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; color:var(--navy); font-size:19px; line-height:1.25; margin:9px 0 5px; letter-spacing:-.03em; }
.app-intro p { font-size:9.5px; color:#747f91; line-height:1.5; margin:0; }
.prompt-card { min-height:113px; position:relative; padding:14px; border-radius:16px; background:#fff; border:1px solid #e1e6ef; box-shadow:0 8px 20px rgba(21,41,77,.055); }
.prompt-label { color:#9aa3b1; font-size:7px; letter-spacing:.1em; font-weight:800; }
.prompt-card p { display:inline; margin:8px 0 0; color:#333d4f; font-size:10px; line-height:1.55; }
.typing-cursor { display:inline-block; width:1px; height:12px; margin-left:2px; vertical-align:-2px; background:#315fbd; animation:blink .8s steps(2) infinite; }
@keyframes blink { 50% { opacity:0; } }
.options-row { display:flex; gap:7px; margin:12px 0; }
.option { border:1px solid #e1e6ef; background:#fff; color:#687386; border-radius:9px; padding:7px 9px; font-size:7.5px; font-weight:700; }
.option.active { color:#244d9d; background:#eaf0fb; border-color:#d9e3f5; }
.generate-button { width:100%; border:0; padding:11px; border-radius:12px; color:#fff; background:linear-gradient(135deg,#f12a1f,#cb150d); font-size:10px; font-weight:800; box-shadow:0 10px 18px rgba(229,26,16,.18); }
.draft-result { margin-top:13px; padding:13px; border-radius:14px; background:#fff; border:1px solid #e2e7ef; opacity:0; transform:translateY(8px); transition:.7s ease; }
.draft-result.visible { opacity:1; transform:none; }
.result-head { display:flex; justify-content:space-between; color:#8c96a6; font-size:7px; font-weight:800; letter-spacing:.08em; }
.ready { color:#20885d; padding:2px 5px; border-radius:8px; background:#e7f7ef; }
.draft-result p { color:#465064; font-size:8.4px; line-height:1.5; margin:8px 0 0; }
.home-indicator { position:absolute; left:50%; bottom:7px; transform:translateX(-50%); width:105px; height:4px; border-radius:4px; background:#111; opacity:.8; }
.floating-chip { position:absolute; z-index:4; padding:12px 15px; border:1px solid rgba(221,228,239,.9); border-radius:14px; background:rgba(255,255,255,.88); box-shadow:0 18px 45px rgba(23,43,79,.13); backdrop-filter:blur(14px); color:var(--navy); font-size:12px; font-weight:700; animation:chipFloat 5s ease-in-out infinite; }
.floating-chip span { color:var(--red); margin-right:5px; }
.chip-one { left:8px; top:175px; }
.chip-two { right:-2px; bottom:125px; animation-delay:-2.3s; }
@keyframes chipFloat { 50% { transform:translateY(-8px) rotate(-1deg); } }

.trust-strip { border-block:1px solid var(--line); background:#fbfcfe; }
.trust-grid { min-height:82px; display:grid; grid-template-columns:repeat(4,1fr); align-items:center; text-align:center; color:#697487; font-size:12px; font-weight:700; letter-spacing:.02em; }
.trust-grid span+span { border-left:1px solid #e4e9f1; }

.section-heading { max-width:700px; margin-bottom:55px; }
.section-heading.centred { margin-inline:auto; text-align:center; }
.section-heading h2 { margin:18px 0 14px; color:var(--navy); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:clamp(37px,5vw,54px); line-height:1.08; letter-spacing:-.045em; }
.section-heading p { margin:0; color:var(--muted); font-size:18px; }
.benefit-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:22px; }
.feature-card { position:relative; min-height:360px; padding:34px; border:1px solid #e2e8f1; border-radius:var(--radius); background:linear-gradient(145deg,#fff,#fafbfe); box-shadow:0 15px 45px rgba(22,41,79,.055); overflow:hidden; transition:.3s ease; }
.feature-card:hover { transform:translateY(-5px); box-shadow:var(--shadow); border-color:#d8e0ed; }
.feature-card h3 { margin:14px 0 9px; color:var(--navy); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:24px; letter-spacing:-.025em; }
.feature-card p { margin:0; color:var(--muted); max-width:500px; }
.feature-icon { width:43px; height:43px; display:grid; place-items:center; border-radius:13px; background:#edf2fb; color:var(--blue); font-weight:800; }
.feature-large { grid-row:span 2; min-height:742px; display:flex; flex-direction:column; }
.feature-wide { grid-column:span 2; min-height:270px; display:grid; grid-template-columns:.8fr 1.2fr; align-items:center; gap:40px; }
.before-after { margin-top:auto; padding:26px; border-radius:20px; background:#f0f3f8; border:1px solid #e2e7ef; }
.message { border-radius:15px; padding:18px; background:#fff; box-shadow:0 8px 20px rgba(22,41,79,.05); }
.message small { color:#9aa3b1; font-size:9px; font-weight:800; letter-spacing:.1em; }
.message p { margin-top:7px; color:#465064; font-size:13px; }
.message.raw { transform:rotate(-1deg); opacity:.8; }
.message.polished { border-left:3px solid var(--red); transform:rotate(.6deg); }
.transform-line { height:45px; position:relative; display:grid; place-items:center; }
.transform-line::before { content:""; position:absolute; top:0; bottom:0; width:1px; background:#cad3e2; }
.transform-line span { position:relative; z-index:1; width:25px; height:25px; display:grid; place-items:center; border-radius:50%; background:var(--navy); color:#fff; font-size:10px; }
.tone-stack { margin-top:38px; display:grid; gap:9px; transform:rotate(-2deg); }
.tone-stack span { padding:14px 16px; display:flex; justify-content:space-between; border-radius:12px; background:#fff; color:#687386; border:1px solid #e2e7ef; font-size:13px; font-weight:700; box-shadow:0 8px 20px rgba(19,37,73,.04); }
.tone-stack .selected { background:#edf3ff; border-color:#d8e5fb; color:#244f9f; transform:translateX(13px); }
.language-cloud { height:170px; position:relative; margin-top:30px; }
.language-cloud span { position:absolute; padding:9px 13px; border:1px solid #e0e6ef; border-radius:999px; background:#fff; box-shadow:0 8px 20px rgba(22,41,79,.06); color:#3f4b60; font-size:12px; font-weight:700; }
.language-cloud span:nth-child(1){left:4%;top:14%;}.language-cloud span:nth-child(2){right:3%;top:5%;}.language-cloud span:nth-child(3){left:29%;top:45%;background:#eaf0fb;color:#315fbd}.language-cloud span:nth-child(4){right:8%;bottom:5%;}.language-cloud span:nth-child(5){left:2%;bottom:9%;}
.privacy-visual { min-height:170px; display:flex; align-items:center; justify-content:center; gap:20px; border-radius:20px; background:radial-gradient(circle at 40% 45%,rgba(49,95,189,.16),transparent 32%),#f2f5fa; }
.shield { width:82px; height:94px; display:grid; place-items:center; clip-path:polygon(50% 0,94% 17%,88% 70%,50% 100%,12% 70%,6% 17%); background:linear-gradient(145deg,var(--navy-2),var(--navy)); color:#fff; font-size:31px; box-shadow:0 20px 35px rgba(16,35,75,.18); }
.privacy-lines { display:grid; gap:11px; }
.privacy-lines span { width:94px; height:10px; border-radius:9px; background:#d5ddeb; }
.privacy-lines span:nth-child(2){width:65px}.privacy-lines span:nth-child(3){width:78px}

.how-section { background:var(--surface-soft); border-block:1px solid #e8edf4; }
.steps-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.step-card { min-height:390px; position:relative; padding:30px; border:1px solid #e1e7ef; border-radius:22px; background:#fff; box-shadow:0 15px 40px rgba(22,41,79,.05); }
.step-number { position:absolute; top:27px; right:29px; color:#a9b3c2; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-weight:800; font-size:12px; }
.step-card h3 { margin:23px 0 10px; color:var(--navy); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:22px; letter-spacing:-.025em; }
.step-card p { margin:0; color:var(--muted); }
.step-visual { height:190px; margin-top:30px; border-radius:18px; background:#f3f6fa; display:grid; place-items:center; overflow:hidden; }
.note-visual { position:relative; align-content:center; gap:13px; padding:42px; transform:rotate(-1deg); }
.note-visual span { width:100%; height:9px; border-radius:8px; background:#cbd4e2; }
.note-visual span:nth-child(2){width:74%}.note-visual span:nth-child(3){width:88%}
.note-visual b { position:absolute; right:22px; bottom:20px; width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:var(--red); color:#fff; font-size:25px; box-shadow:0 10px 22px rgba(229,26,16,.22); }
.sparkle-visual { position:relative; background:radial-gradient(circle,rgba(49,95,189,.16),transparent 45%),#f3f6fa; }
.sparkle-visual i { position:absolute; color:var(--blue); font-style:normal; animation:sparkle 2.4s ease-in-out infinite; }
.sparkle-visual i:nth-child(1){font-size:54px}.sparkle-visual i:nth-child(2){font-size:29px;left:23%;top:27%;animation-delay:-.8s}.sparkle-visual i:nth-child(3){font-size:22px;right:24%;bottom:24%;animation-delay:-1.5s}
@keyframes sparkle { 50%{transform:scale(1.18) rotate(10deg);opacity:.55} }
.send-visual { background:linear-gradient(145deg,#eef3fb,#f7f9fc); }
.send-visual span { width:83px; height:83px; display:grid; place-items:center; border-radius:25px; background:linear-gradient(145deg,#294f9a,#122b5d); color:#fff; font-size:40px; box-shadow:0 20px 35px rgba(16,35,75,.2); transform:rotate(4deg); }

.testimonial-section { padding-top:92px; }
.testimonial-wrap { position:relative; max-width:960px; padding:75px 90px; border-radius:30px; overflow:hidden; text-align:center; background:linear-gradient(145deg,#132c60,#0c1d40); color:#fff; box-shadow:0 28px 70px rgba(16,35,75,.22); }
.testimonial-wrap::after { content:""; position:absolute; width:360px; height:360px; border-radius:50%; right:-150px; bottom:-230px; border:70px solid rgba(255,255,255,.035); }
.quote-mark { position:absolute; top:15px; left:42px; color:rgba(255,255,255,.12); font-family:Georgia,serif; font-size:150px; line-height:1; }
blockquote { position:relative; margin:0; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:clamp(26px,4vw,39px); line-height:1.35; letter-spacing:-.035em; }
.quote-author { margin-top:35px; display:flex; align-items:center; justify-content:center; gap:13px; text-align:left; }
.author-mark { width:43px; height:43px; display:grid; place-items:center; border-radius:50%; background:#fff; color:var(--navy); font-size:12px; font-weight:800; }
.quote-author div:last-child { display:flex; flex-direction:column; }
.quote-author span { color:#b9c5da; font-size:13px; }

.pricing-section { background:linear-gradient(180deg,#fff,#f8faff); }
.pricing-grid { max-width:860px; margin:auto; display:grid; grid-template-columns:repeat(2,1fr); align-items:stretch; gap:22px; }
.price-card { position:relative; padding:38px; border:1px solid #e0e6ef; border-radius:25px; background:#fff; box-shadow:0 18px 55px rgba(22,41,79,.07); display:flex; flex-direction:column; }
.price-card.featured { color:#fff; border-color:transparent; background:linear-gradient(145deg,#173873,#0d234c); transform:translateY(-12px); box-shadow:0 30px 70px rgba(16,35,75,.23); }
.plan-label { color:var(--blue); font-size:11px; font-weight:800; letter-spacing:.12em; }
.featured .plan-label { color:#9fbafa; }
.price-card h3 { margin:13px 0 8px; color:var(--navy); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:28px; letter-spacing:-.03em; }
.featured h3 { color:#fff; }
.price-card p { color:var(--muted); margin:0; }
.featured p { color:#bdc9dc; }
.price { margin:35px 0 24px; display:flex; align-items:baseline; gap:10px; }
.price strong { color:var(--navy); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:49px; letter-spacing:-.05em; }
.featured .price strong { color:#fff; }
.price span { color:var(--muted); font-size:13px; }
.featured .price span { color:#bdc9dc; }
.price-card ul { list-style:none; padding:0; margin:0 0 32px; display:grid; gap:14px; flex:1; }
.price-card li { position:relative; padding-left:27px; color:#4f5b6e; font-size:14px; }
.featured li { color:#d7dfeb; }
.price-card li::before { content:"✓"; position:absolute; left:0; top:0; color:#25835e; font-weight:800; }
.featured li::before { color:#83e0b5; }
.popular-tag { position:absolute; top:18px; right:18px; padding:7px 10px; border-radius:999px; background:rgba(255,255,255,.12); color:#fff; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.pricing-note { max-width:780px; margin:36px auto 0; text-align:center; color:#7a8495; font-size:13px; }

.faq-section { border-top:1px solid #edf0f5; }
.faq-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:80px; align-items:start; }
.accordion { border-top:1px solid #dfe5ee; }
details { border-bottom:1px solid #dfe5ee; }
summary { list-style:none; cursor:pointer; padding:23px 0; display:flex; align-items:center; justify-content:space-between; color:var(--navy); font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:18px; font-weight:700; }
summary::-webkit-details-marker { display:none; }
summary span { width:29px; height:29px; display:grid; place-items:center; border-radius:50%; background:#eff3f8; color:var(--navy); transition:.25s ease; }
details[open] summary span { transform:rotate(45deg); background:#fde9e7; color:var(--red); }
details p { margin:-5px 45px 24px 0; color:var(--muted); }

.final-cta { padding:0 0 34px; }
.final-cta-inner { min-height:550px; position:relative; overflow:hidden; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; color:#fff; border-radius:32px; background:linear-gradient(145deg,#193c7d 0%,#0b1d40 68%); box-shadow:0 35px 80px rgba(16,35,75,.2); }
.final-cta-inner::before,.final-cta-inner::after { content:""; position:absolute; border:1px solid rgba(255,255,255,.08); border-radius:50%; }
.final-cta-inner::before { width:620px; height:620px; left:-370px; top:-300px; }
.final-cta-inner::after { width:530px; height:530px; right:-330px; bottom:-320px; }
.cta-glow { position:absolute; width:440px; height:300px; top:-130px; left:50%; transform:translateX(-50%); background:radial-gradient(circle,rgba(82,128,224,.35),transparent 68%); }
.final-cta img { position:relative; width:72px; margin-bottom:22px; filter:drop-shadow(0 14px 22px rgba(0,0,0,.18)); }
.eyebrow.light { color:#adc5f5; }
.final-cta h2 { position:relative; margin:18px 20px 12px; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:clamp(40px,6vw,66px); line-height:1.08; letter-spacing:-.05em; }
.final-cta p { position:relative; margin:0 20px 30px; color:#bdc9dd; font-size:18px; }
.app-store-button { position:relative; min-height:63px; padding:8px 23px; border-radius:16px; color:#111827; background:#fff; box-shadow:0 16px 38px rgba(0,0,0,.2); }
.app-store-button svg { width:30px; height:30px; }
.app-store-button span { display:flex; flex-direction:column; align-items:flex-start; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:17px; line-height:1.15; }
.app-store-button small { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:8px; letter-spacing:.08em; }
.launch-message { min-height:25px; position:relative; margin-top:14px; color:#bfcbe0; font-size:13px; }

footer { padding:52px 0; }
.footer-grid { display:grid; grid-template-columns:1fr auto; align-items:start; gap:30px; }
.footer-brand img { width:34px; height:34px; }
.footer-grid > div:first-child p { margin:8px 0 0; color:#7d8796; font-size:13px; }
.footer-navigation { display:flex; flex-direction:column; align-items:flex-end; gap:18px; }
.footer-links,.footer-legal { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px 24px; font-size:13px; font-weight:600; }
.footer-links { color:#556176; }
.footer-legal { align-items:center; padding-top:16px; border-top:1px solid #e5eaf1; color:#334155; }
.footer-legal span { color:#98a0ad; font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.footer-links a,.footer-legal a { transition:color .2s ease; }
.footer-links a:hover,.footer-links a:focus-visible,.footer-legal a:hover,.footer-legal a:focus-visible { color:var(--red); }
.copyright { grid-column:1/-1; margin:10px 0 0; padding-top:25px; border-top:1px solid #e5eaf1; color:#98a0ad; font-size:12px; }

.reveal { opacity:0; transform:translateY(25px); transition:opacity .8s ease, transform .8s cubic-bezier(.22,1,.36,1); }
.reveal.in-view { opacity:1; transform:none; }
.reveal-delay { transition-delay:.15s; }

@media (max-width: 980px) {
  .desktop-nav { display:none; }
  .hero { padding-top:130px; }
  .hero-grid { grid-template-columns:1fr; text-align:center; gap:55px; }
  .hero-copy { display:flex; flex-direction:column; align-items:center; }
  .hero h1 { max-width:760px; }
  .hero-visual { min-height:690px; }
  .chip-one { left:12%; }.chip-two { right:10%; }
  .benefit-grid { grid-template-columns:1fr 1fr; }
  .feature-large { grid-column:span 2; grid-row:auto; min-height:680px; }
  .feature-wide { grid-column:span 2; }
  .faq-grid { grid-template-columns:1fr; gap:25px; }
  .faq-grid .section-heading { margin-bottom:10px; }
}

@media (max-width: 720px) {
  .container { width:min(100% - 28px, 1160px); }
  .section-pad { padding:84px 0; }
  .site-header .button { display:none; }
  .hero { min-height:auto; padding-top:120px; }
  .hero-grid { gap:30px; }
  .hero h1 { font-size:48px; }
  .hero-lead { font-size:17px; }
  .hero-actions { flex-direction:column; width:100%; }
  .hero-actions .button { width:100%; }
  .hero-proof { text-align:left; }
  .hero-visual { min-height:620px; transform:scale(.88); margin-inline:-30px; }
  .phone-frame { width:315px; height:650px; }
  .orbit-one { width:500px;height:500px }.orbit-two{width:390px;height:390px}
  .floating-chip { font-size:11px; }
  .chip-one { left:2%; top:150px; }.chip-two { right:1%; bottom:80px; }
  .trust-grid { grid-template-columns:1fr 1fr; padding:12px 0; }
  .trust-grid span { padding:12px 8px; }
  .trust-grid span+span { border-left:0; }
  .section-heading h2 { font-size:39px; }
  .section-heading p { font-size:16px; }
  .benefit-grid { grid-template-columns:1fr; }
  .feature-card,.feature-large,.feature-wide { grid-column:auto; min-height:auto; }
  .feature-large { min-height:690px; }
  .feature-wide { grid-template-columns:1fr; gap:25px; }
  .steps-grid { grid-template-columns:1fr; }
  .step-card { min-height:auto; }
  .testimonial-wrap { padding:65px 25px; }
  blockquote { font-size:27px; }
  .pricing-grid { grid-template-columns:1fr; }
  .price-card.featured { transform:none; }
  .footer-grid { grid-template-columns:1fr; }
  .footer-navigation { align-items:flex-start; }
  .footer-links,.footer-legal { justify-content:flex-start; gap:14px 22px; }
  .footer-legal { width:100%; }
}

@media (max-width: 420px) {
  .hero h1 { font-size:41px; }
  .hero-visual { transform:scale(.78); min-height:560px; margin: -20px -55px 0; }
  .feature-card { padding:26px; }
  .before-after { padding:16px; }
  .price-card { padding:30px 24px; }
  .final-cta-inner { min-height:510px; border-radius:24px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
  .reveal { opacity:1; transform:none; }
}
