/* The "second number" pages: /second-number and its Spanish, Chinese and
   Korean versions. One stylesheet for the four, on top of site.css (colours and
   type live there; nothing here names a font). Component names follow the
   phone line page (/line) so the two read as one family. */
*{margin:0;padding:0;box-sizing:border-box;}
:root{--tm:#D5006C;--tm-rgb:213,0,108;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);line-height:1.65;}
::selection{background:rgba(var(--brand-rgb),0.18);}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid rgba(var(--brand-rgb),0.45);outline-offset:3px;border-radius:8px;}

nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 48px;background:rgba(var(--bg-rgb),0.92);backdrop-filter:blur(20px);border-bottom:1px solid rgba(var(--ink-rgb),0.1);}
.logo{font-weight:800;font-size:22px;display:flex;align-items:center;gap:2px;text-decoration:none;color:var(--ink);}
.logo-mei{color:var(--brand);}
.logo-usa{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--muted);margin-left:4px;align-self:flex-end;margin-bottom:2px;}
.nav-right{display:flex;align-items:center;gap:18px;}
.langs{display:flex;gap:4px;font-size:13px;font-weight:600;}
.langs a{color:var(--muted-strong);text-decoration:none;padding:6px 9px;border-radius:8px;}
.langs a:hover{background:rgba(var(--ink-rgb),0.06);}
.langs a[aria-current]{color:var(--ink);background:rgba(var(--ink-rgb),0.07);}
.btn-nav{background:var(--brand);color:#fff;padding:10px 22px;border-radius:40px;font-weight:600;font-size:13px;text-decoration:none;white-space:nowrap;}

.wrap{max-width:960px;margin:0 auto;padding:0 24px;}
.tm{color:var(--tm);font-weight:800;}

.hero{padding:120px 24px 30px;}
.hero .wrap{display:grid;grid-template-columns:1.05fr 0.95fr;gap:44px;align-items:center;max-width:1080px;}
h1{font-family:var(--font-display);font-size:clamp(32px,4.6vw,54px);font-weight:700;letter-spacing:-0.03em;line-height:1.06;margin-bottom:18px;text-wrap:balance;}
h1 .accent{color:var(--brand);display:block;}
.lede{font-size:18px;color:var(--muted-strong);max-width:560px;margin-bottom:24px;text-wrap:pretty;}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;}
.btn-primary{background:var(--brand);color:var(--white);text-decoration:none;padding:15px 28px;border-radius:44px;font-weight:700;font-size:16px;box-shadow:0 10px 24px -8px rgba(var(--brand-rgb),0.5);display:inline-flex;align-items:center;gap:8px;border:none;cursor:pointer;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s;}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 14px 28px -8px rgba(var(--brand-rgb),0.55);}
.btn-ghost{background:var(--white);color:var(--ink);text-decoration:none;padding:14px 24px;border-radius:44px;font-weight:600;font-size:15px;border:1.5px solid rgba(var(--ink-rgb),0.14);display:inline-flex;align-items:center;transition:border-color .18s;}
.btn-ghost:hover{border-color:rgba(var(--ink-rgb),0.35);}
.trust{font-size:14px;color:var(--muted-strong);margin-top:18px;font-weight:600;}

/* The idea in one picture: your phone with your own number, quiet, and a web
   page that holds the number you give out, where a new text lands. */
.two{background:var(--ink);border-radius:26px;padding:16px;display:grid;gap:12px;box-shadow:0 30px 60px -30px rgba(var(--ink-rgb),0.7);}
.ln{background:#fff;border-radius:16px;padding:14px 16px;}
.ln .top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;}
.ln .tag{font-size:12px;font-weight:800;letter-spacing:0.04em;text-transform:uppercase;color:var(--muted);}
.ln .what{font-size:15px;font-weight:700;color:var(--ink);margin-bottom:8px;}
.ln ul{list-style:none;display:grid;gap:6px;}
.ln li{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:baseline;font-size:13.5px;padding:7px 10px;border-radius:10px;background:rgba(var(--ink-rgb),0.04);}
.ln li b{font-weight:700;white-space:nowrap;}
.ln li span{color:var(--muted-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ln.mine{box-shadow:inset 0 0 0 2px rgba(var(--good-rgb),0.45);}
.ln.mine .tag{color:var(--good);}
.ln .state{font-size:13px;font-weight:700;color:var(--muted);margin-top:8px;}
.ln.mine .state{color:var(--good);}
.ln.web .tag{color:var(--brand);}
.ln.web .dots{display:inline-flex;gap:5px;flex:none;}
.ln.web .dots i{width:8px;height:8px;border-radius:50%;background:rgba(var(--ink-rgb),0.16);}
/* The text that lands: it takes its place at the top of the list, then the
   list is as it was. Only height and opacity move; nothing else shifts. */
.ln.web li.new{background:rgba(var(--brand-rgb),0.10);box-shadow:inset 3px 0 0 var(--brand);max-height:0;opacity:0;padding-top:0;padding-bottom:0;margin-bottom:-6px;overflow:hidden;transition:max-height .5s cubic-bezier(.2,.8,.2,1),opacity .4s ease,padding .5s cubic-bezier(.2,.8,.2,1),margin .5s cubic-bezier(.2,.8,.2,1);}
.two.fresh .ln.web li.new{max-height:44px;opacity:1;padding-top:7px;padding-bottom:7px;margin-bottom:0;}

.section{padding:46px 24px;}
.section h2{font-family:var(--font-display);font-size:clamp(26px,3.6vw,36px);font-weight:700;letter-spacing:-0.025em;text-align:center;margin-bottom:8px;text-wrap:balance;}
.section .sub{text-align:center;color:var(--muted);font-size:16px;max-width:620px;margin:0 auto 28px;text-wrap:pretty;}

.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;}
.stat{background:var(--white);border:1px solid rgba(var(--ink-rgb),0.08);border-radius:18px;padding:24px;}
.stat .big{font-family:var(--font-display);font-size:40px;font-weight:700;letter-spacing:-0.035em;line-height:1.05;margin-bottom:10px;}
.stat p{font-size:14.5px;color:var(--muted-strong);text-wrap:pretty;}
.stat .src{display:block;margin-top:10px;font-size:12.5px;color:var(--muted);}
.asks{margin-top:26px;text-align:center;}
.asks h3{font-size:15px;color:var(--muted-strong);margin-bottom:12px;}
.chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;}
.chips span{background:var(--white);border:1px solid rgba(var(--ink-rgb),0.1);border-radius:30px;padding:8px 14px;font-size:14px;font-weight:600;color:var(--muted-strong);}

.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:16px;}
.card{background:var(--white);border:1px solid rgba(var(--ink-rgb),0.08);border-radius:16px;padding:22px 22px 24px;}
.card svg{width:30px;height:30px;margin-bottom:12px;}
.card h3{font-size:17px;margin-bottom:6px;line-height:1.3;}
.card p{font-size:14.5px;color:var(--muted-strong);text-wrap:pretty;}

.where{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;align-items:start;}
.col{border-radius:22px;padding:28px 28px 30px;}
.col h3{font-family:var(--font-display);font-size:22px;letter-spacing:-0.02em;margin-bottom:14px;}
.col ul{list-style:none;display:grid;gap:10px;}
.col li{display:flex;gap:10px;align-items:flex-start;font-size:15px;}
.col li svg{flex:none;width:18px;height:18px;margin-top:4px;}
.col.give{background:var(--ink);color:#e6edf7;}
.col.give h3{color:#fff;}
.col.keepit{background:var(--white);border:1.5px solid rgba(var(--good-rgb),0.4);}
.col .note{margin-top:18px;padding-top:16px;border-top:1px solid rgba(var(--ink-rgb),0.1);font-size:15px;font-weight:600;color:var(--ink);text-wrap:pretty;}

.plans{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;align-items:start;}
.plan{background:var(--white);border:1.5px solid rgba(var(--ink-rgb),0.08);border-radius:22px;padding:28px 28px 24px;display:flex;flex-direction:column;box-shadow:0 10px 30px -18px rgba(var(--ink-rgb),0.25);}
.plan.main{border-color:var(--tm);box-shadow:0 18px 44px -20px rgba(var(--ink-rgb),0.35);}
.plan .kind{font-size:13px;font-weight:700;color:var(--muted);margin-bottom:6px;}
.plan h3{font-family:var(--font-display);font-size:24px;font-weight:700;letter-spacing:-0.02em;margin-bottom:2px;line-height:1.2;}
.plan .price{font-family:var(--font-display);font-size:48px;font-weight:700;letter-spacing:-0.04em;line-height:1;margin:10px 0 2px;font-variant-numeric:tabular-nums;}
.plan .price small{font-family:var(--font-sans);font-size:16px;font-weight:600;letter-spacing:0;color:var(--muted);}
.plan .incl{font-size:13.5px;font-weight:700;color:var(--good);margin-bottom:14px;}
.plan ul{list-style:none;margin:0 0 18px;}
.plan li{padding:8px 0;border-top:1px solid rgba(var(--ink-rgb),0.07);font-size:14.5px;color:var(--muted-strong);display:flex;gap:10px;align-items:flex-start;}
.plan li svg{flex:none;width:18px;height:18px;margin-top:3px;}
.plan .need{font-size:13px;color:var(--muted);margin-bottom:18px;text-wrap:pretty;}
.plan .btn-primary{margin-top:auto;justify-content:center;}
.plan .btn-ghost{margin-top:auto;justify-content:center;}
.plan.main .btn-primary{background:var(--tm);box-shadow:0 10px 24px -8px rgba(var(--tm-rgb),0.55);}
.plan.main .btn-primary:hover{box-shadow:0 14px 28px -8px rgba(var(--tm-rgb),0.6);}
.pick{text-align:center;margin-top:18px;font-size:15px;font-weight:600;color:var(--muted-strong);text-wrap:pretty;}

/* The text number's card is its order form: how long, the add-on, an email
   and a name, then payment. */
.plan .txnote{font-size:14.5px;font-weight:600;color:var(--ink);background:rgba(var(--brand-rgb),0.08);border-radius:12px;padding:10px 14px;margin:8px 0 2px;text-wrap:pretty;}
#txForm{display:flex;flex-direction:column;gap:12px;margin-top:2px;}
#txForm fieldset{border:0;min-width:0;}
#txForm legend,.fld>span{font-size:13px;font-weight:700;color:var(--muted-strong);margin-bottom:6px;display:block;}
.terms{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.terms legend{grid-column:1/-1;}
.term{position:relative;cursor:pointer;}
.term input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer;margin:0;}
.term span{display:flex;flex-direction:column;align-items:center;gap:2px;border:1.5px solid rgba(var(--ink-rgb),0.16);border-radius:12px;padding:10px 6px;background:var(--white);transition:border-color .15s ease,background .15s ease;}
.term b{font-size:14.5px;font-weight:700;}
.term i{font-style:normal;font-size:14px;color:var(--muted-strong);font-variant-numeric:tabular-nums;}
.term input:checked+span{border-color:var(--tm);background:rgba(var(--tm-rgb),0.06);}
.term input:checked+span i{color:var(--ink);font-weight:700;}
.term input:focus-visible+span{outline:3px solid rgba(var(--brand-rgb),0.45);outline-offset:2px;}
.addon{display:flex;align-items:center;gap:10px;border:1.5px solid rgba(var(--ink-rgb),0.16);border-radius:12px;padding:11px 14px;font-size:14.5px;cursor:pointer;}
.addon input{width:18px;height:18px;flex:none;accent-color:var(--tm);}
.addon span{flex:1;}
.addon b{font-variant-numeric:tabular-nums;white-space:nowrap;}
.fld{display:block;}
.fld input{display:block;width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--white);border:1.5px solid rgba(var(--ink-rgb),0.2);border-radius:12px;padding:12px 14px;}
.fld input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(var(--brand-rgb),0.15);}
.fld small{display:block;font-size:12.5px;color:var(--muted);margin-top:5px;}
.txerr{font-size:14px;font-weight:600;color:var(--bad);min-height:0;text-wrap:pretty;}
.txerr:empty{display:none;}
/* A button does not take the page's typeface by itself. */
#txForm .btn-primary{width:100%;justify-content:center;margin-top:2px;font-family:inherit;}
#txForm .btn-primary:disabled{opacity:.6;cursor:default;transform:none;}
#txForm .need{margin:0;text-align:center;}
#txForm.closed .terms,#txForm.closed .addon,#txForm.closed .fld,#txForm.closed .btn-primary,#txForm.closed .need{opacity:.45;}

.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:16px;}
.step{background:var(--white);border:1px solid rgba(var(--ink-rgb),0.08);border-radius:16px;padding:22px 24px;}
.step .n{font-weight:800;font-size:15px;width:30px;height:30px;border-radius:50%;background:var(--brand);color:var(--white);display:flex;align-items:center;justify-content:center;margin-bottom:12px;}
.step h3{font-size:16px;margin-bottom:5px;}
.step p{font-size:14px;color:var(--muted-strong);}
.more{text-align:center;margin-top:18px;font-size:14.5px;}
.more a{color:var(--brand);font-weight:600;text-decoration:none;}

.limits{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;}
.lim{flex:1 1 270px;max-width:320px;background:var(--white);border:1px solid rgba(var(--ink-rgb),0.08);border-radius:16px;padding:20px 22px;}
.lim h3{font-size:16px;margin-bottom:4px;}
.lim p{font-size:14px;color:var(--muted-strong);}

.faq .wrap{max-width:780px;}
.faq details{background:var(--white);border:1px solid rgba(var(--ink-rgb),0.08);border-radius:12px;padding:15px 20px;margin-bottom:10px;}
.faq summary{cursor:pointer;font-weight:600;font-size:15.5px;}
.faq details[open] summary{color:var(--brand);margin-bottom:8px;}
.faq details p{font-size:14.5px;color:var(--muted-strong);}
.faq details a{color:var(--brand);font-weight:600;text-decoration:none;}

.finalcta{text-align:center;padding:44px 24px 20px;}
.finalcta h2{font-family:var(--font-display);font-size:clamp(26px,3.8vw,38px);font-weight:700;letter-spacing:-0.025em;margin-bottom:16px;text-wrap:balance;}
.finalcta .cta-row{justify-content:center;}
.wa{display:inline-flex;align-items:center;gap:8px;background:#25d366;color:#fff;text-decoration:none;padding:14px 26px;border-radius:44px;font-weight:700;font-size:15px;}
.sources{max-width:780px;margin:26px auto 0;font-size:12.5px;color:var(--muted);text-align:left;}
.sources a{color:var(--muted-strong);}
footer{text-align:center;padding:30px 24px 48px;font-size:13px;color:var(--muted);}
footer a{color:var(--brand);text-decoration:none;font-weight:600;}
footer .langs{justify-content:center;margin-bottom:12px;}

@media(max-width:860px){
  .hero .wrap{grid-template-columns:1fr;gap:28px;}
  .where,.plans{grid-template-columns:1fr;}
}
@media(max-width:720px){
  nav{padding:12px 16px;}
  nav .langs{display:none;}
  .hero{padding-top:96px;}
  .col{padding:24px 22px;}
  .lim{max-width:none;}
  .btn-primary,.btn-ghost{width:100%;justify-content:center;}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}.ln.web li.new,.term span{transition:none;}}

/* Korean breaks lines between words, not inside one (a translator's note,
   2026-11-06: the headline split as "않 / 아요"). A very long word may still wrap. */
:lang(ko){word-break:keep-all;overflow-wrap:break-word;}
