:root {
  --navy: #07172f;
  --navy-2: #0b2347;
  --blue: #2168f6;
  --blue-dark: #1553d4;
  --mint: #28d8bd;
  --mint-pale: #dffaf4;
  --ink: #0b1c34;
  --muted: #607086;
  --line: #dbe5f1;
  --surface: #ffffff;
  --soft: #f4f7fb;
  --shadow: 0 30px 80px rgba(7, 23, 47, .14);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; color: var(--ink); background: #fff; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; }
button, input, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; }
.ambient { position: absolute; inset: 0 0 auto; height: 900px; z-index: -1; overflow: hidden; background: radial-gradient(circle at 86% 18%, rgba(33,104,246,.13), transparent 29rem), radial-gradient(circle at 6% 58%, rgba(40,216,189,.1), transparent 25rem), linear-gradient(180deg,#f7faff 0%,#fff 82%); }
.ambient::after { content:""; position:absolute; width:48rem; height:48rem; top:-33rem; right:-9rem; border:1px solid rgba(33,104,246,.09); border-radius:50%; box-shadow:0 0 0 3rem rgba(33,104,246,.025),0 0 0 6rem rgba(33,104,246,.018); }
.section-shell, .site-header, footer { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.site-header { min-height: 88px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.brand { display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--navy); font-size:.84rem; font-weight:800; letter-spacing:.13em; }
.brand > span:last-child span { color:var(--blue); }
.brand-mark { width:35px; height:35px; display:grid; place-items:center; flex:none; border-radius:11px; background:var(--navy); box-shadow:0 8px 18px rgba(7,23,47,.18); }
.brand-mark svg { width:22px; fill:#fff; }
.brand-mark .brand-check { fill:none; stroke:var(--mint); stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
nav { display:flex; align-items:center; gap:30px; }
nav a { color:#52657c; text-decoration:none; font-size:.86rem; font-weight:650; }
nav a:hover { color:var(--blue); }
.header-actions { display:flex; align-items:center; gap:12px; }
.site-language { position:relative; min-width:132px; height:42px; display:flex; align-items:center; gap:7px; padding:0 34px 0 12px; border:1px solid #cbd9ea; border-radius:999px; background:rgba(255,255,255,.86); box-shadow:0 8px 20px rgba(17,53,96,.05); }
.site-language::after { content:""; position:absolute; right:13px; top:50%; width:7px; height:7px; border:solid #607086; border-width:0 2px 2px 0; transform:translateY(-68%) rotate(45deg); pointer-events:none; }
.site-language svg { width:16px; flex:none; fill:none; stroke:var(--blue); stroke-width:1.7; }
.site-language select { width:100%; min-width:0; padding:0; border:0; color:var(--navy); background:transparent; font-size:.75rem; font-weight:750; outline:none; appearance:none; cursor:pointer; }
.header-cta { padding:11px 17px; border:1px solid #cbd9ea; border-radius:999px; color:var(--navy); background:rgba(255,255,255,.8); text-decoration:none; font-size:.82rem; font-weight:750; box-shadow:0 8px 20px rgba(17,53,96,.06); }

.hero { display:grid; grid-template-columns:minmax(0,.94fr) minmax(480px,1.06fr); align-items:center; gap:72px; padding-block:68px 90px; }
.eyebrow { display:flex; align-items:center; gap:10px; margin:0 0 22px; color:var(--blue); font-size:.72rem; font-weight:800; letter-spacing:.15em; }
.eyebrow b { font:inherit; }
.eyebrow > span { width:8px; height:8px; border-radius:50%; background:currentColor; box-shadow:0 0 0 6px rgba(33,104,246,.1); }
.eyebrow.light { color:var(--mint); }
h1,h2 { font-family:Georgia, "Times New Roman", serif; color:var(--navy); }
h1 { margin:0; max-width:640px; font-size:clamp(3.55rem,5.4vw,5.35rem); font-weight:600; line-height:.93; letter-spacing:-.055em; }
h1 .headline-opening,h1 em { display:block; }
h1 em { margin-top:.08em; color:var(--navy); font-size:.78em; font-weight:500; letter-spacing:-.045em; }
.word-window { display:grid; min-height:1em; overflow:hidden; color:var(--blue); text-shadow:0 12px 32px rgba(33,104,246,.15); }
.word-window > span { display:block; transform-origin:left center; }
.word-window > span.is-leaving { animation:wordLeave .34s cubic-bezier(.4,0,1,1) forwards; }
.word-window > span.is-entering { animation:wordEnter .5s cubic-bezier(.16,1,.3,1) forwards; }
@keyframes wordLeave { to { opacity:0; transform:translateY(-55%) rotateX(35deg); filter:blur(8px); } }
@keyframes wordEnter { from { opacity:0; transform:translateY(65%) rotateX(-35deg); filter:blur(8px); } to { opacity:1; transform:none; filter:blur(0); } }
.hero-intro { max-width:570px; margin:30px 0 28px; color:var(--muted); font-size:1.08rem; line-height:1.68; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; }
.button { min-height:52px; display:inline-flex; align-items:center; justify-content:center; gap:15px; padding:0 20px; border:1px solid transparent; border-radius:14px; text-decoration:none; font-size:.9rem; font-weight:760; cursor:pointer; transition:transform .2s ease,box-shadow .2s ease,background .2s ease; }
.button b { font:inherit; }
.button:hover { transform:translateY(-2px); }
.button-primary { color:#fff; background:var(--blue); box-shadow:0 15px 30px rgba(33,104,246,.23); }
.button-primary:hover { background:var(--blue-dark); }
.button-primary span,.button-mint span { font-size:1.2rem; }
.button-quiet { color:var(--navy); border-color:#cedbea; background:#fff; }
.button-quiet:hover { border-color:#aabfd9; box-shadow:0 12px 25px rgba(7,23,47,.08); }
.trust-row { display:flex; flex-wrap:wrap; gap:18px; margin-top:27px; color:#5d6f84; font-size:.75rem; font-weight:650; }
.trust-row span { display:flex; align-items:center; gap:7px; }
.trust-row svg { width:16px; fill:none; stroke:var(--blue); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }

.product-stage { position:relative; min-height:650px; display:grid; place-items:center; overflow:hidden; padding:92px 24px 100px; border-radius:36px; background:linear-gradient(145deg,#07172f,#0c2c59); box-shadow:0 34px 70px rgba(7,23,47,.22); }
.product-stage::before { content:""; position:absolute; inset:0; opacity:.12; background-image:repeating-radial-gradient(ellipse at 90% 10%,transparent 0 9px,rgba(40,216,189,.8) 10px 11px,transparent 12px 19px); mask-image:linear-gradient(to bottom left,#000,transparent 65%); }
.stage-orbit { position:absolute; border:1px solid rgba(40,216,189,.13); border-radius:50%; }
.orbit-one { width:380px; height:380px; left:-230px; bottom:-230px; box-shadow:0 0 0 28px rgba(40,216,189,.025),0 0 0 56px rgba(40,216,189,.018); }
.orbit-two { width:230px; height:230px; right:-160px; top:-130px; box-shadow:0 0 0 25px rgba(33,104,246,.04),0 0 0 50px rgba(33,104,246,.025); }
.scan-badge { display:flex; align-items:center; gap:7px; color:rgba(255,255,255,.68); font-size:.58rem; font-weight:800; letter-spacing:.1em; white-space:nowrap; }
.scan-badge span { width:7px; height:7px; border-radius:50%; background:var(--mint); box-shadow:0 0 0 5px rgba(40,216,189,.12); }
.finder-card { position:relative; z-index:2; width:min(402px,100%); padding:24px; border:1px solid rgba(255,255,255,.5); border-radius:24px; background:#fff; box-shadow:0 28px 55px rgba(0,0,0,.26); transform:rotate(-1.2deg); }
.finder-top { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:24px; }
.mini-brand { display:flex; align-items:center; gap:6px; color:var(--navy); font-size:.59rem; font-weight:850; letter-spacing:.12em; }
.mini-brand i { width:21px; height:21px; border-radius:7px; background:var(--navy); }
.language-pill { display:flex; align-items:center; gap:5px; padding:6px 9px; border:1px solid #e0e7f0; border-radius:999px; color:#56677b; font-size:.62rem; }
.language-pill svg { width:13px; fill:none; stroke:var(--blue); stroke-width:1.7; }
.finder-kicker { margin:0 0 12px; color:var(--blue); font-size:.6rem; font-weight:800; letter-spacing:.14em; }
.finder-card h2 { margin:0; font-size:2.35rem; line-height:.96; letter-spacing:-.035em; }
.finder-card h2 span { display:block; }
.finder-content > p:not(.finder-kicker) { margin:13px 0; color:#6a788b; font-size:.75rem; line-height:1.5; }
.finder-content { transform-origin:center top; }
.finder-content.is-leaving,.finder-action.is-leaving,.finder-safe.is-leaving { animation:cardLeave .24s ease-in forwards; }
.finder-content.is-entering,.finder-action.is-entering,.finder-safe.is-entering { animation:cardEnter .42s cubic-bezier(.16,1,.3,1) forwards; }
@keyframes cardLeave { to { opacity:0; transform:translateY(-8px); filter:blur(4px); } }
@keyframes cardEnter { from { opacity:0; transform:translateY(12px); filter:blur(4px); } to { opacity:1; transform:none; filter:blur(0); } }
.finder-reward { padding:8px 10px; border:1px solid #efdfb2; border-radius:8px; color:#75550f; background:#fff9ea; font-size:.63rem; font-weight:700; }
.finder-action { width:100%; min-height:64px; display:flex; align-items:center; gap:11px; margin-top:16px; padding:10px; border:0; border-radius:14px; color:#fff; background:var(--blue); text-align:left; }
.finder-icon { width:39px; height:39px; display:grid; place-items:center; flex:none; border-radius:11px; background:rgba(255,255,255,.15); }
.finder-icon svg { width:21px; fill:none; stroke:#fff; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.finder-action > span:nth-child(2) { display:grid; gap:2px; flex:1; }
.finder-action strong { font-size:.75rem; }
.finder-action small { color:rgba(255,255,255,.72); font-size:.59rem; }
.finder-action b { font-size:1rem; }
.delivery-route { display:grid; grid-template-columns:auto auto 1fr; align-items:center; gap:7px; margin-top:11px; color:#7a8798; }
.route-label { font-size:.46rem; font-weight:850; letter-spacing:.09em; white-space:nowrap; }
.route-arrow { color:var(--blue); font-size:.7rem; }
.route-channels { display:flex; justify-content:flex-end; gap:3px; min-width:0; }
.route-channels i { padding:3px 5px; border:1px solid #dbe4ef; border-radius:999px; color:#607086; background:#f8fbff; font-size:.43rem; font-style:normal; font-weight:720; white-space:nowrap; }
.finder-safe { display:flex; align-items:center; gap:9px; margin-top:13px; padding:10px; border:1px solid #e0e8f1; border-radius:11px; background:#f7faff; }
.finder-safe svg { width:17px; flex:none; fill:none; stroke:var(--blue); stroke-width:1.6; }
.finder-safe span { display:grid; gap:1px; }
.finder-safe strong { font-size:.62rem; }
.finder-safe small { color:#6e7d8f; font-size:.55rem; }
.stage-topline { position:absolute; z-index:3; top:24px; left:24px; right:24px; display:flex; align-items:center; justify-content:space-between; gap:18px; }
.language-cloud { display:flex; flex-wrap:wrap; gap:6px; }
.language-cloud span { width:max-content; padding:6px 9px; border:1px solid rgba(255,255,255,.11); border-radius:999px; color:rgba(255,255,255,.38); background:rgba(255,255,255,.04); font-size:.55rem; font-weight:700; transition:color .3s ease,background .3s ease,border-color .3s ease,transform .3s ease; }
.language-cloud span.is-active { color:var(--navy); border-color:var(--mint); background:var(--mint); transform:translateY(3px); box-shadow:0 8px 20px rgba(40,216,189,.22); }
.stage-footer { position:absolute; z-index:3; left:24px; right:24px; bottom:20px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
.worldwide-note { display:flex; align-items:center; gap:8px; padding:9px 11px; border:1px solid rgba(255,255,255,.13); border-radius:12px; color:#fff; background:rgba(255,255,255,.06); backdrop-filter:blur(8px); }
.worldwide-note svg { width:18px; flex:none; fill:none; stroke:var(--mint); stroke-width:1.6; }
.worldwide-note > span { display:grid; gap:1px; }
.worldwide-note strong { font-size:.59rem; }
.worldwide-note small { color:rgba(255,255,255,.48); font-size:.49rem; }
.item-tabs { display:flex; flex-wrap:wrap; gap:6px; }
.item-tabs span { padding:6px 9px; border:1px solid rgba(255,255,255,.12); border-radius:999px; color:rgba(255,255,255,.48); background:rgba(255,255,255,.05); font-size:.57rem; font-weight:650; transition:color .3s ease,background .3s ease,border-color .3s ease; }
.item-tabs span.is-active { color:var(--navy); border-color:#fff; background:#fff; }

.proof-strip { width:100%; display:grid; grid-template-columns:repeat(4,1fr); border-block:1px solid var(--line); background:#fbfdff; }
.proof-strip div { min-height:135px; display:grid; place-content:center; gap:7px; padding:20px 32px; border-right:1px solid var(--line); text-align:center; }
.proof-strip div:last-child { border:0; }
.proof-strip strong { color:var(--navy); font-family:Georgia,"Times New Roman",serif; font-size:1.65rem; }
.proof-strip span { color:var(--muted); font-size:.77rem; }

.reward-feature { display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:center; padding-block:96px; }
.reward-copy h2 { margin:0; max-width:620px; font-size:clamp(2.7rem,4.7vw,4.5rem); font-weight:600; line-height:.98; letter-spacing:-.045em; }
.reward-copy > p:not(.eyebrow) { max-width:590px; margin:24px 0 30px; color:var(--muted); font-size:1rem; line-height:1.68; }
.reward-rules { display:flex; flex-wrap:wrap; gap:10px; }
.reward-rules > span { display:flex; align-items:center; gap:7px; padding:8px 10px; border:1px solid var(--line); border-radius:999px; color:#506176; background:#fff; font-size:.68rem; font-weight:700; }
.reward-rules i { width:20px; height:20px; display:grid; place-items:center; border-radius:50%; color:#fff; background:var(--blue); font-size:.58rem; font-style:normal; }
.reward-demo { position:relative; min-height:430px; overflow:hidden; padding:44px; border-radius:30px; background:linear-gradient(145deg,#081a36,#0d315e); box-shadow:0 28px 65px rgba(7,23,47,.18); }
.reward-demo::before { content:""; position:absolute; width:330px; height:330px; right:-180px; top:-190px; border:1px solid rgba(40,216,189,.16); border-radius:50%; box-shadow:0 0 0 34px rgba(40,216,189,.03),0 0 0 68px rgba(40,216,189,.02); }
.reward-setting { position:relative; z-index:1; width:min(330px,88%); padding:25px; border-radius:22px; background:#fff; box-shadow:0 25px 55px rgba(0,0,0,.22); transform:rotate(-2deg); }
.setting-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.setting-head > span { color:var(--blue); font-size:.62rem; font-weight:850; letter-spacing:.13em; }
.setting-head > strong { padding:5px 8px; border-radius:999px; color:#07806a; background:var(--mint-pale); font-size:.55rem; }
.reward-amount { display:flex; align-items:flex-start; gap:7px; margin:25px 0 22px; }
.reward-amount span { margin-top:10px; color:#718096; font-size:.78rem; font-weight:750; }
.reward-amount strong { color:var(--navy); font-family:Georgia,serif; font-size:4.4rem; font-weight:500; line-height:.8; }
.transport-toggle { display:flex; align-items:center; gap:12px; padding-top:17px; border-top:1px solid var(--line); }
.transport-toggle > span { width:37px; height:21px; display:flex; align-items:center; justify-content:flex-end; flex:none; padding:3px; border-radius:999px; background:var(--blue); }
.transport-toggle > span i { width:15px; height:15px; border-radius:50%; background:#fff; }
.transport-toggle > div { display:grid; gap:2px; }
.transport-toggle strong { font-size:.7rem; }
.transport-toggle small { color:#748296; font-size:.58rem; }
.reward-result { position:absolute; z-index:2; right:30px; bottom:30px; width:min(300px,72%); padding:20px; border:1px solid rgba(255,255,255,.2); border-radius:18px; color:#fff; background:rgba(255,255,255,.09); backdrop-filter:blur(12px); transform:rotate(2deg); }
.reward-result > span { display:block; margin-bottom:10px; color:var(--mint); font-size:.55rem; font-weight:850; letter-spacing:.12em; }
.reward-result > div { padding:12px; border:1px solid rgba(255,255,255,.16); border-radius:11px; background:rgba(255,255,255,.08); font-size:.78rem; }
.reward-result small { display:block; margin-top:10px; color:rgba(255,255,255,.58); font-size:.58rem; }

.story,.pricing,.faq { padding-block:96px; }
.section-heading { max-width:650px; }
.section-heading.centered { margin-inline:auto; text-align:center; }
.section-heading.centered .eyebrow { justify-content:center; }
.section-heading h2,.included h2,.order h2,.kindness h2 { margin:0; font-size:clamp(2.7rem,4.8vw,4.6rem); font-weight:600; line-height:.98; letter-spacing:-.045em; }
.section-heading > p:last-child { margin:20px 0 0; color:var(--muted); font-size:1rem; line-height:1.65; }
.steps-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin:52px 0 0; padding:0; list-style:none; counter-reset:steps; }
.steps-grid li { position:relative; min-height:310px; padding:25px; border:1px solid var(--line); border-radius:22px; background:#fff; transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.steps-grid li:hover { transform:translateY(-5px); border-color:#b9cbea; box-shadow:0 20px 40px rgba(7,23,47,.09); }
.step-no { position:absolute; top:22px; right:22px; color:#a5b1bf; font-family:Georgia,serif; font-size:.8rem; }
.step-icon { width:48px; height:48px; display:grid; place-items:center; margin-bottom:45px; border-radius:14px; color:var(--blue); background:#eaf2ff; }
.step-icon svg { width:24px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.steps-grid h3 { margin:0 0 12px; color:var(--navy); font-size:1.02rem; }
.steps-grid p { margin:0; color:var(--muted); font-size:.85rem; line-height:1.58; }

.included { padding-bottom:96px; }
.included-panel { display:grid; grid-template-columns:1.02fr .98fr; min-height:650px; overflow:hidden; border-radius:32px; background:var(--navy); box-shadow:var(--shadow); }
.included-copy { padding:clamp(44px,7vw,80px); color:#fff; }
.included-copy h2 { color:#fff; }
.included-copy > p:not(.eyebrow) { max-width:570px; margin:22px 0 34px; color:rgba(255,255,255,.63); line-height:1.65; }
.included-copy ul { display:grid; gap:0; margin:0; padding:0; list-style:none; }
.included-copy li { display:grid; grid-template-columns:30px 1fr; gap:11px; padding:16px 0; border-top:1px solid rgba(255,255,255,.1); }
.included-copy li i { display:grid; width:24px; height:24px; place-items:center; border-radius:50%; color:var(--navy); background:var(--mint); font-size:.72rem; font-style:normal; font-weight:900; }
.included-copy li span { display:grid; gap:4px; }
.included-copy li strong { font-size:.9rem; }
.included-copy li small { color:rgba(255,255,255,.55); font-size:.76rem; line-height:1.4; }
.kit-preview { position:relative; overflow:hidden; background:radial-gradient(circle at 80% 15%,rgba(33,104,246,.25),transparent 17rem),linear-gradient(145deg,#edf5ff,#dce9fb); }
.kit-preview::before { content:""; position:absolute; inset:0; opacity:.25; background-image:linear-gradient(rgba(33,104,246,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(33,104,246,.08) 1px,transparent 1px); background-size:32px 32px; }
.luggage-card,.wallet-card,.hybrid-tag { position:absolute; background:#fff; box-shadow:0 30px 60px rgba(7,23,47,.2); }
.luggage-card { width:238px; min-height:322px; left:54%; top:51%; padding:25px; transform:translate(-50%,-50%) rotate(5deg); border-radius:23px; }
.luggage-card p { margin:28px 0 5px; color:var(--blue); font-size:.65rem; font-weight:850; letter-spacing:.13em; }
.luggage-card strong { display:block; color:var(--navy); font-family:Georgia,serif; font-size:1.65rem; line-height:1; }
.luggage-card small { display:block; margin-top:13px; color:#6d7b8d; font-size:.65rem; line-height:1.5; }
.fake-qr { width:130px; aspect-ratio:1; display:grid; grid-template-columns:repeat(3,1fr); gap:7px; padding:10px; border:8px solid var(--navy); background:#fff; }
.fake-qr span { background:var(--navy); }
.fake-qr span:nth-child(2),.fake-qr span:nth-child(4),.fake-qr span:nth-child(8) { background:#fff; border:4px solid var(--navy); }
.wallet-card { width:238px; min-height:140px; left:5%; bottom:7%; padding:19px; transform:rotate(-8deg); border-radius:17px; background:var(--blue); color:#fff; }
.wallet-card > span { font-size:.58rem; font-weight:850; letter-spacing:.12em; }
.wallet-card p { margin:21px 0 8px; font-family:Georgia,serif; font-size:1rem; line-height:1.1; }
.wallet-card small { color:rgba(255,255,255,.7); font-size:.58rem; line-height:1.4; }
.fake-qr.small { width:62px; margin:auto; gap:3px; padding:4px; border-width:4px; }
.hybrid-tag { width:198px; min-height:194px; right:4%; top:7%; padding:17px; transform:rotate(-4deg); border-radius:22px; }
.hybrid-top { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.tracker-pocket { display:grid; justify-items:center; gap:5px; color:#65778c; }
.tracker-pocket > span { width:62px; height:62px; display:block; border:8px solid #dce6f1; border-radius:50%; background:radial-gradient(circle,#fff 0 36%,#dce6f1 38% 43%,#f8fbff 45%); box-shadow:inset 0 0 0 1px #c8d5e4; }
.tracker-pocket b { font-size:.5rem; letter-spacing:.04em; }
.hybrid-tag p { margin:17px 0 5px; color:var(--blue); font-size:.55rem; font-weight:850; letter-spacing:.13em; }
.hybrid-tag > strong { display:block; color:var(--navy); font-family:Georgia,serif; font-size:1rem; line-height:1.05; }
.hybrid-tag > small { display:block; margin-top:7px; color:#718094; font-size:.55rem; line-height:1.4; }
.compatibility-note { position:absolute; right:16px; bottom:13px; margin:0; color:#718198; font-size:.48rem; }

.kindness { display:grid; grid-template-columns:.9fr 1.1fr; gap:74px; align-items:start; padding-block:96px; border-top:1px solid var(--line); }
.kindness-intro { position:sticky; top:40px; }
.kindness-intro > p:last-child { max-width:550px; margin:24px 0 0; color:var(--muted); font-size:1rem; line-height:1.68; }
.promise-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.promise-grid article { min-height:220px; padding:26px; border:1px solid var(--line); border-radius:22px; background:linear-gradient(145deg,#fff,#f8fbff); }
.promise-grid article > span { display:grid; width:34px; height:34px; place-items:center; border-radius:50%; color:var(--blue); background:#eaf2ff; font-family:Georgia,serif; font-size:.72rem; }
.promise-grid h3 { margin:34px 0 10px; color:var(--navy); font-size:1rem; }
.promise-grid p { margin:0; color:var(--muted); font-size:.82rem; line-height:1.55; }

.pricing { border-top:1px solid var(--line); }
.pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); align-items:stretch; gap:16px; margin-top:52px; }
.plan-card { position:relative; display:flex; flex-direction:column; min-height:520px; padding:30px; border:1px solid #d4e0ed; border-radius:26px; background:#fff; box-shadow:0 18px 45px rgba(7,23,47,.07); }
.plan-card.plan-personal { border-color:#a9c6fb; box-shadow:0 24px 55px rgba(33,104,246,.12); }
.plan-card.plan-kind { overflow:hidden; color:#fff; border-color:#16467c; background:linear-gradient(145deg,#0d315e,var(--navy)); box-shadow:0 26px 60px rgba(7,23,47,.2); }
.kind-label { position:absolute; top:0; right:0; display:flex; align-items:center; gap:6px; padding:9px 13px; border-radius:0 25px 0 14px; color:var(--navy); background:var(--mint); font-size:.58rem; font-weight:900; letter-spacing:.1em; }
.kind-label span { font-size:.9rem; }
.plan-top > p { margin:0 0 22px; color:var(--blue); font-size:.65rem; font-weight:850; letter-spacing:.14em; }
.plan-kind .plan-top > p { color:var(--mint); }
.plan-top h3 { margin:0; color:var(--navy); font-family:Georgia,serif; font-size:3.5rem; font-weight:500; line-height:.9; }
.plan-top > span { display:block; margin-top:11px; color:#748398; font-size:.72rem; font-weight:650; }
.plan-kind .plan-top > span { color:rgba(255,255,255,.55); }
.plan-price { display:flex; align-items:flex-start; gap:4px; }
.plan-price sup { margin-top:9px; color:#65758a; font-size:.7rem; font-weight:750; }
.plan-kind .plan-price sup { color:rgba(255,255,255,.58); }
.plan-price strong { color:var(--navy); font-family:Georgia,serif; font-size:3.7rem; font-weight:500; line-height:.88; letter-spacing:-.04em; }
.plan-kind .plan-price strong { color:#fff; }
.plan-summary { min-height:70px; margin:27px 0 24px; color:var(--muted); font-size:.84rem; line-height:1.55; }
.plan-kind .plan-summary { color:rgba(255,255,255,.65); }
.plan-card ul { display:grid; gap:12px; margin:0 0 30px; padding:22px 0 0; border-top:1px solid var(--line); list-style:none; }
.plan-kind ul { border-color:rgba(255,255,255,.12); }
.plan-card li { position:relative; padding-left:21px; color:#43566e; font-size:.78rem; line-height:1.45; }
.plan-kind li { color:rgba(255,255,255,.76); }
.plan-card li::before { content:"✓"; position:absolute; left:0; color:#07866f; font-weight:900; }
.plan-kind li::before { color:var(--mint); }
.plan-card .button { margin-top:auto; }
.wide { width:100%; }
.pricing-footnote { max-width:860px; margin:26px auto 0; color:#7a8899; font-size:.7rem; line-height:1.55; text-align:center; }

.order { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; margin-bottom:96px; padding:68px; border-radius:30px; color:#fff; background:linear-gradient(135deg,#07172f,#0d315e); box-shadow:var(--shadow); }
.order h2 { color:#fff; }
.order-copy > p:not(.eyebrow) { max-width:530px; margin:20px 0; color:rgba(255,255,255,.63); line-height:1.65; }
.order-assurances { display:flex; flex-wrap:wrap; gap:14px; color:var(--mint); font-size:.72rem; font-weight:700; }
.order-assurances b { font:inherit; }
.order-form { display:grid; gap:18px; padding:28px; border:1px solid rgba(255,255,255,.14); border-radius:20px; background:rgba(255,255,255,.07); backdrop-filter:blur(10px); }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.order-form label:not(.consent):not(.transport-option) { display:grid; gap:9px; color:rgba(255,255,255,.78); font-size:.75rem; font-weight:680; }
.order-form input,.order-form select { width:100%; height:54px; min-height:54px; padding:0 15px; border:1px solid rgba(255,255,255,.22); border-radius:13px; color:#fff; background-color:rgba(5,18,38,.46); outline:none; }
.order-form select { padding-right:46px; background-image:linear-gradient(45deg,transparent 50%,rgba(255,255,255,.72) 50%),linear-gradient(135deg,rgba(255,255,255,.72) 50%,transparent 50%); background-position:calc(100% - 20px) 23px,calc(100% - 14px) 23px; background-size:6px 6px,6px 6px; background-repeat:no-repeat; appearance:none; cursor:pointer; }
.order-form input::placeholder { color:rgba(255,255,255,.35); }
.order-form input:focus,.order-form select:focus { border-color:var(--mint); box-shadow:0 0 0 3px rgba(40,216,189,.12); }
.order-form option { color:var(--ink); background:#fff; }
.reward-fields { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.transport-option { display:flex; align-items:flex-start; gap:10px; padding:12px; border:1px solid rgba(255,255,255,.14); border-radius:12px; color:rgba(255,255,255,.78); background:rgba(5,18,38,.2); }
.transport-option input { width:16px; min-height:auto; margin-top:2px; accent-color:var(--mint); }
.transport-option > span { display:grid; gap:2px; }
.transport-option strong { font-size:.68rem; }
.transport-option small { color:rgba(255,255,255,.48); font-size:.6rem; line-height:1.35; }
.consent { display:flex; align-items:flex-start; gap:9px; color:rgba(255,255,255,.58); font-size:.68rem; line-height:1.4; }
.consent input { width:15px; min-height:auto; margin-top:1px; accent-color:var(--mint); }
.button-mint { color:var(--navy); background:var(--mint); box-shadow:0 15px 30px rgba(40,216,189,.13); }
.button-mint:hover { background:#56e4cf; }
.form-status { min-height:18px; margin:0; color:var(--mint); font-size:.72rem; text-align:center; }

.faq { padding-top:0; }
.faq-list { margin-top:42px; border-top:1px solid var(--line); }
.faq-list details { border-bottom:1px solid var(--line); }
.faq-list summary { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:24px 0; color:var(--navy); font-size:.95rem; font-weight:720; cursor:pointer; list-style:none; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary span { color:var(--blue); font-size:1.4rem; font-weight:400; transition:transform .2s ease; }
.faq-list details[open] summary span { transform:rotate(45deg); }
.faq-list details p { max-width:760px; margin:-8px 0 24px; color:var(--muted); font-size:.9rem; line-height:1.6; }

footer { min-height:110px; display:flex; align-items:center; justify-content:space-between; gap:24px; border-top:1px solid var(--line); color:#748296; font-size:.7rem; }
.footer-brand { display:flex; align-items:center; gap:10px; }
.footer-brand .brand-mark { width:31px; height:31px; border-radius:9px; }
.footer-brand .brand-mark svg { width:19px; }
.footer-brand > div { display:grid; gap:2px; }
.footer-brand strong { color:var(--navy); font-size:.72rem; letter-spacing:.1em; }
.footer-brand small { color:#7a8798; font-size:.62rem; }

dialog { width:min(630px,calc(100% - 28px)); padding:36px; border:0; border-radius:26px; color:var(--ink); background:#fff; box-shadow:0 35px 100px rgba(4,17,36,.36); }
dialog::backdrop { background:rgba(5,18,37,.65); backdrop-filter:blur(8px); }
dialog[open] { animation:dialogIn .22s ease-out; }
@keyframes dialogIn { from { opacity:0; transform:translateY(14px) scale(.98); } }
.dialog-close { position:absolute; top:17px; right:17px; width:38px; height:38px; border:1px solid var(--line); border-radius:50%; color:#607086; background:#fff; font-size:1.2rem; cursor:pointer; }
.dialog-kicker { margin:0 0 9px; color:var(--blue); font-size:.65rem; font-weight:850; letter-spacing:.14em; }
dialog h2 { max-width:500px; margin:0; font-size:2.5rem; line-height:1; }
.demo-flow { display:grid; grid-template-columns:1fr auto 1fr auto 1fr; align-items:center; gap:11px; margin:30px 0; }
.demo-flow div { display:grid; gap:4px; min-width:0; padding:15px; border:1px solid var(--line); border-radius:14px; background:#f8fbff; }
.demo-flow div span { width:24px; height:24px; display:grid; place-items:center; border-radius:50%; color:#fff; background:var(--blue); font-size:.65rem; font-weight:800; }
.demo-flow strong { margin-top:7px; font-size:.78rem; }
.demo-flow small { color:#738194; font-size:.62rem; line-height:1.3; }
.demo-flow > i { color:#9aabba; font-style:normal; }
.demo-hold { position:relative; min-height:82px; display:grid; grid-template-columns:42px 1fr 32px; align-items:center; gap:13px; overflow:hidden; padding:0 18px; border:1px solid rgba(255,255,255,.08); border-radius:18px; color:#fff; background:linear-gradient(135deg,#07172f,#0c2b55); cursor:pointer; user-select:none; touch-action:none; box-shadow:0 16px 35px rgba(7,23,47,.16); }
.demo-hold .demo-fill { position:absolute; inset:0; width:0; background:var(--blue); }
.demo-hold.is-active .demo-fill { width:100%; transition:width 1.4s linear; }
.hold-icon,.hold-copy,.hold-ring { position:relative; z-index:1; }
.hold-icon { width:42px; height:42px; display:grid; place-items:center; border-radius:13px; background:rgba(255,255,255,.1); }
.hold-icon svg { width:22px; fill:none; stroke:#fff; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.hold-copy { display:grid; gap:3px; }
.demo-hold b { font-size:.85rem; }
.demo-hold small { color:rgba(255,255,255,.58); font-size:.65rem; }
.hold-ring { width:26px; height:26px; display:grid; place-items:center; border:2px solid rgba(255,255,255,.25); border-radius:50%; }
.hold-ring i { width:8px; height:8px; border-radius:50%; background:var(--mint); }
.demo-hold.is-active .hold-ring { border-color:#fff; animation:holdPulse .7s ease-in-out infinite alternate; }
.demo-hold.is-complete { background:linear-gradient(135deg,#087866,#0a9f86); }
.demo-hold.is-complete .hold-ring { border-color:rgba(255,255,255,.75); }
.demo-hold.is-complete .hold-ring i { width:12px; height:7px; border:solid #fff; border-width:0 0 2px 2px; border-radius:0; background:transparent; transform:rotate(-45deg) translate(1px,-1px); }
@keyframes holdPulse { to { transform:scale(1.12); } }
.demo-note { margin:16px 0 0; color:var(--muted); font-size:.75rem; line-height:1.5; text-align:center; }

@media (max-width:950px) {
  nav { display:none; }
  .hero { grid-template-columns:1fr; gap:58px; padding:70px 0 78px; }
  .hero-copy { text-align:center; }
  .eyebrow,.hero-actions,.trust-row { justify-content:center; }
  .hero-intro { margin-inline:auto; }
  .product-stage { width:min(650px,100%); margin-inline:auto; }
  .proof-strip { grid-template-columns:1fr 1fr; }
  .proof-strip div:nth-child(2) { border-right:0; }
  .proof-strip div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .reward-feature { grid-template-columns:1fr; gap:42px; }
  .reward-demo { width:min(650px,100%); margin-inline:auto; }
  .steps-grid { grid-template-columns:1fr 1fr; }
  .included-panel { grid-template-columns:1fr; }
  .kit-preview { min-height:600px; }
  .kindness { grid-template-columns:1fr; gap:42px; }
  .kindness-intro { position:static; }
  .pricing-grid { grid-template-columns:1fr; max-width:620px; margin-inline:auto; }
  .plan-card { min-height:auto; }
  .plan-summary { min-height:auto; }
  .order { grid-template-columns:1fr; gap:40px; padding:55px; }
}

@media (max-width:640px) {
  .section-shell,.site-header,footer { width:min(100% - 24px,1180px); }
  .site-header { min-height:74px; }
  .header-cta { display:none; }
  .header-actions { margin-left:auto; }
  .site-language { min-width:126px; height:40px; padding-left:10px; }
  .brand { font-size:.76rem; }
  .hero { min-height:auto; gap:46px; padding:46px 0 62px; }
  h1 { font-size:clamp(3.05rem,14vw,4.35rem); }
  h1 em { font-size:.72em; }
  .hero-intro { font-size:1rem; }
  .hero-actions { display:grid; }
  .trust-row { gap:11px; }
  .product-stage { min-height:610px; padding:82px 16px 108px; border-radius:25px; }
  .finder-card { width:100%; padding:20px; transform:rotate(-.6deg); }
  .finder-card h2 { font-size:2.12rem; }
  .stage-topline { top:18px; left:18px; right:18px; align-items:flex-start; }
  .scan-badge { font-size:.48rem; }
  .language-cloud span { font-size:.49rem; padding:5px 7px; }
  .stage-footer { left:15px; right:15px; bottom:16px; display:grid; justify-items:center; }
  .worldwide-note { display:none; }
  .item-tabs { justify-content:center; }
  .item-tabs span { padding:5px 7px; font-size:.5rem; }
  .delivery-route { grid-template-columns:auto auto 1fr; gap:5px; }
  .route-label { font-size:.41rem; }
  .route-channels i { padding:3px 4px; font-size:.39rem; }
  .proof-strip div { min-height:110px; padding:18px 12px; }
  .proof-strip strong { font-size:1.35rem; }
  .proof-strip span { font-size:.68rem; }
  .reward-feature { padding-block:72px; }
  .reward-copy h2 { font-size:clamp(2.45rem,12vw,3.4rem); }
  .reward-demo { min-height:410px; padding:28px 18px; border-radius:24px; }
  .reward-setting { width:88%; padding:21px; }
  .reward-result { right:16px; bottom:22px; width:78%; }
  .story,.pricing,.faq { padding-block:72px; }
  .section-heading h2,.included h2,.order h2,.kindness h2 { font-size:clamp(2.45rem,12vw,3.4rem); }
  .steps-grid { grid-template-columns:1fr; }
  .steps-grid li { min-height:auto; }
  .step-icon { margin-bottom:30px; }
  .included { width:100%; padding-bottom:72px; }
  .included-panel { border-radius:0; }
  .included-copy { padding:55px 22px; }
  .kit-preview { min-height:540px; }
  .luggage-card { width:205px; min-height:292px; left:55%; padding:22px; }
  .wallet-card { width:215px; left:2%; bottom:7%; }
  .hybrid-tag { width:166px; right:1%; top:5%; padding:13px; }
  .tracker-pocket > span { width:50px; height:50px; }
  .kindness { padding-block:72px; }
  .promise-grid { grid-template-columns:1fr; }
  .promise-grid article { min-height:auto; }
  .promise-grid h3 { margin-top:24px; }
  .pricing-grid { gap:12px; margin-top:38px; }
  .plan-card { padding:27px 22px; border-radius:22px; }
  .order { width:100%; gap:32px; margin-bottom:72px; padding:44px 16px calc(44px + env(safe-area-inset-bottom)); border-radius:0; }
  .order-copy > p:not(.eyebrow) { margin:17px 0; line-height:1.58; }
  .order-assurances { gap:10px 14px; }
  .order-form { gap:17px; padding:20px 16px 24px; border-radius:18px; }
  .order-form label:not(.consent):not(.transport-option) { gap:8px; font-size:.78rem; }
  .order-form input,.order-form select { height:54px; min-height:54px; font-size:1rem; }
  .transport-option { padding:14px; }
  .field-row { grid-template-columns:1fr; }
  .reward-fields { grid-template-columns:1fr; }
  footer { padding:27px 0; align-items:flex-start; flex-direction:column; }
  dialog { padding:30px 20px 22px; }
  dialog h2 { font-size:2rem; }
  .demo-flow { grid-template-columns:1fr; }
  .demo-flow > i { transform:rotate(90deg); text-align:center; }
  .demo-hold { grid-template-columns:38px 1fr 28px; gap:10px; padding:0 13px; }
  .hold-icon { width:38px; height:38px; }
}

@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; }
}
