/* Public Taxio brand tokens and typography are shared with the main site. */
@import url("landing-ilanding/assets/css/main.css");
* { box-sizing: border-box; }
body { margin:0; font-family:var(--default-font); color:var(--default-color); background:linear-gradient(150deg,#f3f9ff 0%,#fff 65%); line-height:1.6; }
body > header { max-width:1120px; margin:24px auto 0; padding:16px 28px; display:flex; justify-content:space-between; align-items:center; gap:20px; background:var(--surface-color); border-radius:50px; box-shadow:0 2px 20px #2d465e1a; }
a { color:var(--accent-color); text-underline-offset:4px; }
a:hover { color:#0865c7; }
.brand { display:inline-flex; align-items:center; gap:14px; text-decoration:none; }
.brand img { display:block; width:auto; height:44px; max-width:65vw; object-fit:contain; }
.brand span { color:var(--accent-color); font-family:var(--nav-font); font-size:14px; font-weight:700; background:#e7f2ff; border-radius:50px; padding:4px 12px; }
body > header > a:last-child { font-family:var(--nav-font); font-weight:600; }
main { max-width:1040px; margin:64px auto; padding:0 32px; }
.eyebrow { font-size:12px; font-weight:700; letter-spacing:1.5px; color:var(--accent-color); }
h1,h2,h3 { font-family:var(--heading-font); color:var(--heading-color); }
h1 { font-size:clamp(36px,6vw,60px); font-weight:800; line-height:1.15; letter-spacing:-1px; margin:18px 0; }
h1 em { font-style:normal; color:var(--accent-color); }
.lead { max-width:670px; font-size:19px; color:#526475; margin-bottom:40px; }
h2 { font-size:26px; font-weight:700; margin-top:0; }
h3 { margin-top:0; }
section.card { background:var(--surface-color); border:1px solid #e2ebf4; border-radius:20px; padding:32px; margin:24px 0; box-shadow:0 10px 40px #2d465e12; overflow:hidden; }
.card p { color:#526475; }
label { display:block; font-weight:600; margin:18px 0; }
input:not([type=checkbox]),textarea { font:inherit; display:block; width:100%; border:1px solid #cbd9e7; border-radius:8px; padding:12px 14px; margin:7px 0; background:var(--surface-color); color:var(--default-color); }
input:focus,textarea:focus { outline:3px solid #dcecff; outline-offset:1px; border-color:var(--accent-color); }
.check { display:flex; align-items:flex-start; gap:12px; font-weight:400; font-size:14px; }
.check input { margin-top:5px; width:18px; height:18px; accent-color:var(--accent-color); flex-shrink:0; }
small { display:block; color:#66758c; }
.required-note { color:#b42318; }
button,.button { font:inherit; font-weight:600; border:1px solid var(--accent-color); border-radius:50px; background:var(--accent-color); color:var(--contrast-color); padding:12px 24px; display:inline-block; cursor:pointer; text-decoration:none; transition:background .2s,box-shadow .2s; }
button:hover,.button:hover { background:#0865c7; border-color:#0865c7; color:#fff; box-shadow:0 5px 16px #0d83fd24; }
button:focus-visible,.button:focus-visible,a:focus-visible { outline:3px solid #8ec5ff; outline-offset:3px; }
button:disabled { opacity:.6; cursor:wait; }
.secondary { background:#fff; color:var(--accent-color); }
.secondary:hover { background:#eaf4ff; color:#0865c7; }
.notice { padding:18px 22px; border:1px solid #b9dcf8; background:#eaf4ff; border-radius:12px; margin:20px 0; color:#245579; }
.error { background:#fff4ef; border-color:#f0c8b5; color:#853b1b; }
.warning { border-left:3px solid #c88828; padding-left:12px; }
.drop { background:#f3f9ff; border:2px dashed #b4d7fb; padding:24px; border-radius:12px; }
.exports,.facts { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin:28px 0; }
.exports > form { border:1px solid #e2ebf4; border-radius:12px; padding:24px; }
.facts { font-size:14px; color:#66758c; }
.facts strong { color:var(--heading-color); }
.table-wrap { overflow:auto; max-height:480px; margin:24px 0; border:1px solid #e2ebf4; border-radius:10px; }
table { border-collapse:collapse; width:100%; font-size:13px; }
th,td { text-align:left; padding:12px; border-bottom:1px solid #e5edf5; min-width:90px; }
th { background:#edf5ff; color:var(--heading-color); position:sticky; top:0; }
tbody tr:nth-child(even) { background:#f8fbff; }
.amount { text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; }
section.upsell { background:#07142f; color:#fff; border-radius:20px; padding:32px; margin-top:30px; }
.upsell h2 { color:#fff; }
.upsell .eyebrow { color:#90c7ff; }
.upsell p { color:#d2dcec; }
footer { font-size:13px; padding:24px 0; border-top:1px solid #e2ebf4; color:#66758c; }
.progress { font-weight:600; }
@media(max-width:640px) {
  body > header { margin:14px 12px 0; padding:14px 18px; gap:12px; }
  .brand { gap:8px; }
  .brand img { height:30px; }
  .brand span { font-size:12px; padding:3px 9px; }
  body > header > a:last-child { font-size:13px; }
  main { padding:0 18px; margin-top:36px; }
  section.card,section.upsell { padding:22px; }
  .exports,.facts { grid-template-columns:1fr; }
}
