/* TripRights — közös stylesheet (Design Guide v1.1 tokenek + komponensek) */
:root{
    --page:#f9f9f7; --surface:#fcfcfb; --surface-2:#f3f2ef;
    --ink:#0b0b0b; --ink-2:#52514e; --ink-3:#898781;
    --line:#e1e0d9; --line-2:#c3c2b7; --ring:rgba(11,11,11,.10);
    --brand:#1c5cab; --brand-hover:#184f95; --brand-light:#2a78d6; --brand-wash:#e8f0fb;
    --money:#006300; --money-wash:#eaf6ea;
    --warn:#8a5a00; --warn-wash:#fdf4e3;
    --no:#a33333; --no-wash:#faecec;
    --r-card:14px; --r-ctrl:9px;
    --shadow:0 1px 2px rgba(11,11,11,.04);
    font-family:system-ui,-apple-system,"Segoe UI",sans-serif;
  }
  *{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--page);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased}
  .wrap{max-width:880px;margin:0 auto;padding:0 20px}
  a{color:var(--brand)}

  header.site{display:flex;justify-content:space-between;align-items:center;padding:18px 0}
  .brand{font-weight:800;font-size:19px;letter-spacing:-.02em;text-decoration:none;color:var(--ink)}
  .brand span{color:var(--brand)}
  nav.top{display:flex;gap:16px;align-items:center;font-size:13.5px}
  nav.top a{color:var(--ink-2);text-decoration:none;font-weight:600}
  nav.top a:hover{color:var(--brand)}
  .lang{display:flex;gap:4px;margin-left:8px}
  .lang button{border:1px solid var(--line-2);background:#fff;border-radius:8px;padding:5px 10px;
    font-size:12.5px;font-weight:700;cursor:pointer;color:var(--ink-2);font-family:inherit}
  .lang button[aria-pressed="true"]{background:var(--brand);border-color:var(--brand);color:#fff}
  @media(max-width:560px){nav.top a.navlink{display:none}}

  .hero{position:relative;padding:26px 0 4px}
  .badge{display:inline-block;background:var(--brand-wash);color:var(--brand);border:1px solid var(--ring);
    border-radius:999px;padding:4px 12px;font-size:13px;font-weight:700;margin-bottom:12px}
  h1{font-size:clamp(25px,4.6vw,38px);line-height:1.12;letter-spacing:-.025em;margin:0 0 10px;max-width:640px}
  .lede{color:var(--ink-2);max-width:600px;margin:0 0 14px;font-size:16px}
  .motif{position:absolute;right:0;top:18px;width:180px;opacity:.9;pointer-events:none}
  @media(max-width:760px){.motif{display:none}}
  .trust{display:flex;gap:14px 18px;flex-wrap:wrap;font-size:12.5px;color:var(--ink-2);margin:6px 0 4px}
  .trust span::before{content:"✓ ";color:var(--money);font-weight:800}

  .card{background:var(--surface);border:1px solid var(--ring);border-radius:var(--r-card);box-shadow:var(--shadow);margin:18px 0}
  .card .inner{padding:22px}
  label{display:block;font-size:13px;font-weight:600;color:var(--ink-2);margin:15px 0 6px}
  .row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  @media(max-width:620px){.row2{grid-template-columns:1fr}}
  input[type=text],select{width:100%;padding:11px 12px;font-size:15px;border:1px solid var(--line-2);
    border-radius:var(--r-ctrl);background:#fff;color:var(--ink);font-family:inherit}
  input:focus,select:focus{outline:2px solid var(--brand-light);outline-offset:1px;border-color:var(--brand-light)}
  .seg{display:flex;gap:6px;flex-wrap:wrap}
  .seg button{flex:1 1 auto;padding:11px 10px;font-size:13.5px;font-weight:600;border-radius:var(--r-ctrl);cursor:pointer;
    border:1px solid var(--line-2);background:#fff;color:var(--ink-2);font-family:inherit;min-height:44px}
  .seg button[aria-pressed="true"]{background:var(--brand);border-color:var(--brand);color:#fff}
  .btn-p{display:block;width:100%;background:var(--brand);color:#fff;border:none;border-radius:10px;
    padding:14px 26px;font-size:15.5px;font-weight:700;cursor:pointer;font-family:inherit;margin-top:20px;min-height:48px}
  .btn-p:hover{background:var(--brand-hover)}

  #result{display:none}
  .verdict{border-radius:var(--r-card);padding:24px;border:1px solid var(--ring)}
  .verdict.good{background:var(--money-wash)} .verdict.bad{background:var(--no-wash)} .verdict.maybe{background:var(--warn-wash)}
  .vh{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}
  .good .vh{color:var(--money)} .bad .vh{color:var(--no)} .maybe .vh{color:var(--warn)}
  .amount{font-size:clamp(36px,7vw,50px);font-weight:800;letter-spacing:-.03em;line-height:1.1}
  .amount .per{font-size:.36em;font-weight:600;color:var(--ink-2)}
  .vs{color:var(--ink-2);font-size:14.5px;margin-top:6px;max-width:560px}
  .chips{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 0}
  .chip-f{background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:12.5px;color:var(--ink-2)}
  .chip-f b{color:var(--ink)}
  .cta-btn{display:inline-block;background:var(--money);color:#fff;text-decoration:none;border-radius:10px;
    padding:14px 28px;font-size:15.5px;font-weight:700;margin-top:16px;min-height:48px}
  .cta-btn:hover{filter:brightness(1.15)}
  .risk{font-size:12.5px;color:var(--ink-3);margin-top:10px}
  details.how{margin-top:12px;font-size:13.5px;color:var(--ink-2)}
  details.how summary{cursor:pointer;font-weight:600;color:var(--brand);font-size:13px}
  details.how .hbody{padding-top:8px}

  section.zone{margin:34px 0}
  h2{font-size:22px;letter-spacing:-.02em;margin:0 0 14px}
  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
  @media(max-width:640px){.steps{grid-template-columns:1fr}}
  .step{background:var(--surface);border:1px solid var(--ring);border-radius:12px;padding:16px}
  .step .n{width:26px;height:26px;border-radius:50%;background:var(--brand);color:#fff;font-weight:800;font-size:13px;
    display:flex;align-items:center;justify-content:center;margin-bottom:8px}
  .step b{display:block;margin-bottom:4px;font-size:14.5px}
  .step span{font-size:13.5px;color:var(--ink-2)}

  .faq details{border-bottom:1px solid var(--line);padding:12px 0}
  .faq summary{cursor:pointer;font-weight:600;font-size:15px}
  .faq p{color:var(--ink-2);font-size:14.5px;margin:8px 0 2px;max-width:700px}

  .founder{background:var(--surface);border:1px solid var(--ring);border-radius:12px;padding:16px 18px;
    font-size:13.5px;color:var(--ink-2);max-width:640px}
  .founder b{color:var(--ink)}

  footer.site{border-top:1px solid var(--line);margin-top:40px;padding:22px 0 40px;font-size:12.5px;color:var(--ink-3)}
  footer .cols{display:flex;gap:26px;flex-wrap:wrap;margin-bottom:12px}
  footer a{color:var(--ink-2);text-decoration:none}
  footer a:hover{color:var(--brand)}

  /* Jogi oldalak (privacy, cookies, imprint, contact) — hosszú folyószöveg.
     Szűk sorhossz az olvashatóságért, a design guide tokenjeivel. */
  .legal{max-width:700px}
  .legal h1{font-size:clamp(23px,3.6vw,30px);margin:0 0 14px}
  .legal h2{font-size:17px;margin:26px 0 8px;letter-spacing:-.01em}
  .legal p{color:var(--ink-2);font-size:15px;margin:0 0 12px}
  .legal strong{color:var(--ink)}
  .legal a{color:var(--brand)}
  .legal table{border-collapse:collapse;width:100%;margin:10px 0 4px;font-size:14px}
  .legal th,.legal td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
  .legal th{background:var(--surface-2);font-weight:600;color:var(--ink)}
  .legal td{color:var(--ink-2)}
