:root{
    --navy: #08283B;
    --navy-2: #0D3B54;
    --blue: #0E6BA8;
    --blue-light: #4FA3D9;
    --teal: #1FBFA8;
    --ink: #0E1F27;
    --paper: #F5F8FA;
    --paper-2: #E7EFF2;
    --line: #D3E0E6;
    --white: #FFFFFF;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:'Inter', sans-serif;
    color:var(--ink);
    background:var(--paper);
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,.display{
    font-family:'Space Grotesk', sans-serif;
    letter-spacing:-0.02em;
  }
  .mono{ font-family:'IBM Plex Mono', monospace; letter-spacing:0.02em; }
  a{color:inherit; text-decoration:none;}
  img{display:block; max-width:100%;}
  .wrap{ max-width:1180px; margin:0 auto; padding:0 32px; }
  section{ position:relative; }

  /* ---------- HEADER ---------- */
  header{
    position:fixed; top:0; left:0; right:0; z-index:100;
    padding:18px 0;
    transition:background .3s ease, box-shadow .3s ease, padding .3s ease;
  }
  header.scrolled{
    background:rgba(8,40,59,0.92);
    backdrop-filter:blur(10px);
    padding:12px 0;
    box-shadow:0 8px 24px rgba(0,0,0,0.15);
  }
  header .wrap{ display:flex; align-items:center; justify-content:space-between; gap:24px; }
  .logo-mark{ height:34px; width:auto; filter:brightness(0) invert(1); }
  nav{ display:flex; align-items:center; gap:32px; }
  nav a.nav-link{
    font-size:14px; font-weight:500; color:var(--white); opacity:.85;
    position:relative; padding:4px 0;
  }
  nav a.nav-link:hover{ opacity:1; }
  nav a.nav-link::after{
    content:''; position:absolute; left:0; bottom:-2px; width:0; height:1px;
    background:var(--teal); transition:width .25s ease;
  }
  nav a.nav-link:hover::after{ width:100%; }
  .btn{
    display:inline-flex; align-items:center; gap:8px;
    font-size:14px; font-weight:600; padding:11px 20px;
    border-radius:3px; white-space:nowrap; cursor:pointer;
    border:1px solid transparent;
  }
  .btn-primary{ background:var(--teal); color:#04241D; }
  .btn-primary:hover{ background:#33d1b9; }
  .btn-ghost{ border-color:rgba(255,255,255,0.35); color:var(--white); }
  .btn-ghost:hover{ border-color:var(--white); }
  .menu-toggle{ display:none; background:none; border:none; color:var(--white); font-size:26px; cursor:pointer; }

  /* ---------- HERO ---------- */
  .hero{
    background:linear-gradient(180deg, var(--navy) 0%, var(--navy-2) 100%);
    color:var(--white);
    padding:170px 0 120px;
    overflow:hidden;
  }
  .hero .wrap{
    display:grid; grid-template-columns:1.05fr 1fr; gap:48px; align-items:center;
  }
  .eyebrow{
    display:inline-flex; align-items:center; gap:8px;
    font-size:12px; font-weight:600; letter-spacing:0.14em; text-transform:uppercase;
    color:var(--teal); border:1px solid rgba(31,191,168,0.4); border-radius:999px;
    padding:6px 14px; margin-bottom:22px;
  }
  .eyebrow::before{ content:''; width:6px; height:6px; border-radius:50%; background:var(--teal); }
  .hero h1{
    font-size:clamp(34px, 4.4vw, 54px); font-weight:600; line-height:1.06; margin-bottom:22px;
  }
  .hero h1 em{ font-style:normal; color:var(--blue-light); }
  .hero p.lead{
    font-size:17px; color:#C7DAE3; max-width:460px; margin-bottom:34px;
  }
  .hero-ctas{ display:flex; gap:14px; flex-wrap:wrap; }
  .hero-stats{
    display:flex; gap:28px; margin-top:46px; padding-top:26px;
    border-top:1px solid rgba(255,255,255,0.14);
  }
  .hero-stats div strong{ display:block; font-family:'Space Grotesk'; font-size:22px; color:var(--white); }
  .hero-stats div span{ font-size:12px; color:#9FC0CF; }

  .hero-art{ position:relative; }
  .product-frame{ position:relative; z-index:2; max-width:340px; margin:0 auto; }
  .product-frame img{ width:100%; filter:drop-shadow(0 22px 30px rgba(0,0,0,0.35)); }
  .callout{
    position:absolute; font-size:11.5px; color:#DCEAF0; white-space:nowrap;
    display:flex; align-items:center; gap:8px;
  }
  .callout .dot{ width:6px; height:6px; border-radius:50%; background:var(--teal); flex:none; box-shadow:0 0 6px 1px rgba(31,191,168,0.8); }
  .callout .stem{ width:34px; height:1px; background:rgba(255,255,255,0.35); flex:none; }
  /* anchor points are set inline per callout (left/top = exact point on the product) */
  .callout.dir-right{ transform:translateY(-50%); }
  .callout.dir-left{ flex-direction:row-reverse; transform:translate(-100%,-50%); }

  .wave-divider{ display:block; width:100%; height:auto; }

  /* ---------- SOBRE ---------- */
  .about{ background:var(--paper); padding:100px 0 90px; }
  .about .wrap{ display:grid; grid-template-columns:0.9fr 1.1fr; gap:64px; align-items:start; }
  .section-label{
    font-size:12px; font-weight:600; letter-spacing:0.14em; text-transform:uppercase;
    color:var(--blue); margin-bottom:14px;
  }
  .about h2{ font-size:32px; font-weight:600; line-height:1.15; color:var(--navy); }
  .about-copy p{ font-size:15.5px; color:#3C5561; margin-bottom:16px; max-width:520px; }

  /* ---------- VERSÕES ---------- */
  .versions{ background:var(--paper-2); padding:90px 0 100px; }
  .versions-head{ max-width:560px; margin-bottom:48px; }
  .versions-head h2{ font-size:32px; color:var(--navy); margin-bottom:12px; }
  .versions-head p{ color:#3C5561; font-size:15px; }
  .version-grid{ display:grid; grid-template-columns:repeat(auto-fit, minmax(240px, 1fr)); gap:24px; }
  .version-card{
    background:var(--white); border:1px solid var(--line); border-radius:6px;
    overflow:hidden; display:flex; flex-direction:column;
  }
  .version-media{
    height:230px; display:flex; align-items:center; justify-content:center;
    background:linear-gradient(180deg, #0D3B54 0%, #08283B 100%); position:relative;
  }
  .version-media img{ height:78%; filter:drop-shadow(0 14px 18px rgba(0,0,0,0.3)); }
  .version-media.placeholder{
    color:#7FA0AF; flex-direction:column; gap:10px; background:#0A3247;
  }
  .version-media.placeholder svg{ width:44px; height:44px; opacity:.6; }
  .version-media.placeholder span{ font-size:12px; letter-spacing:0.08em; text-transform:uppercase; }
  .version-eyebrow{
    display:block; font-family:'IBM Plex Mono'; font-size:11px; font-weight:600;
    letter-spacing:0.14em; text-transform:uppercase; color:var(--blue); margin-bottom:6px;
  }
  .version-body{ padding:22px 26px 28px; flex:1; display:flex; flex-direction:column; }
  .version-body h3{ font-size:20px; color:var(--navy); margin-bottom:8px; }
  .version-body p{ font-size:14px; color:#4A6470; margin-bottom:20px; flex:1; }
  .version-body .btn{ align-self:flex-start; }
  .btn-outline{ border:1px solid var(--blue); color:var(--blue); background:transparent; }
  .btn-outline:hover{ background:var(--blue); color:var(--white); }

  /* ---------- FILTROS ---------- */
  .filters{ background:var(--paper); padding:96px 0 100px; }
  .filters-head{ max-width:600px; margin-bottom:48px; }
  .filters-head h2{ font-size:32px; color:var(--navy); margin-bottom:12px; }
  .filters-head p{ color:#3C5561; font-size:15px; }
  .filter-grid{ display:flex; flex-direction:column; gap:28px; }
  .filter-specs{ list-style:none; margin:2px 0 20px; border-top:1px solid var(--line); padding-top:14px; }
  .filter-specs li{ display:flex; justify-content:space-between; gap:10px; font-size:13px; color:#4A6470; padding:5px 0; }
  .filter-specs li span:last-child{ color:#9FB0B8; font-style:italic; text-align:right; }

  /* arte completa (fundo + neon + título) ao lado da ficha técnica; empilha no mobile */
  .filters .version-card{
    flex-direction:row;
    align-items:flex-start;
  }
  .filters .version-media{
    flex:0 0 44%;
    height:auto;
    padding:0;
    background:none;
  }
  .filters .version-media img{
    width:100%;
    height:auto;
    max-height:none;
    display:block;
  }
  .filters .version-body{
    flex:1;
    justify-content:center;
  }
  .filter-badges{
    list-style:none;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px 18px;
    margin:2px 0 22px;
    padding-bottom:22px;
    border-bottom:1px solid var(--line);
  }
  .filter-badges li{
    display:flex;
    align-items:flex-start;
    gap:9px;
  }
  .filter-badges li svg{
    width:19px; height:19px; flex:none; color:var(--teal); margin-top:1px;
  }
  .filter-badges li span{
    font-size:12.5px;
    font-weight:600;
    color:var(--navy);
    line-height:1.35;
  }
  @media (max-width: 860px){
    .filters .version-card{ flex-direction:column; }
    .filters .version-media{
      flex:none;
      width:100%;
      height:auto;
    }
    .filters .version-media img{ width:100%; height:auto; }
  }
  @media (max-width:560px){
    .filter-badges{ grid-template-columns:1fr; }
  }

  /* ---------- APP CONTROL ---------- */
  .app-control{ background:var(--paper); padding:96px 0; }
  .app-control .wrap{ display:grid; grid-template-columns:1fr 0.85fr; gap:64px; align-items:center; }
  .app-control h2{ font-size:32px; color:var(--navy); margin-bottom:16px; }
  .app-control p.intro{ font-size:15.5px; color:#3C5561; margin-bottom:24px; max-width:480px; }
  .app-feature-list{ list-style:none; display:flex; flex-direction:column; gap:14px; margin-bottom:28px; }
  .app-feature-list li{ display:flex; gap:12px; font-size:14.5px; color:#3C5561; align-items:flex-start; }
  .app-feature-list li svg{ width:18px; height:18px; flex:none; color:var(--teal); margin-top:2px; }
  .app-badge{
    display:inline-flex; align-items:center; gap:8px; font-size:12.5px; color:#5B7480;
    border:1px solid var(--line); border-radius:999px; padding:6px 14px;
  }
  .app-badge strong{ color:var(--navy); }
  .phone-mock{
    width:240px; margin:0 auto; background:var(--navy); border-radius:32px; padding:14px;
    box-shadow:0 30px 50px rgba(8,40,59,0.25);
  }
  .phone-screen{ background:linear-gradient(180deg,#0D3B54,#08283B); border-radius:20px; padding:22px 18px; color:var(--white); }
  .phone-screen .ps-label{ font-size:11px; color:#9FC0CF; letter-spacing:0.06em; text-transform:uppercase; margin-bottom:6px; }
  .phone-screen .ps-temp{ font-family:'Space Grotesk'; font-size:44px; font-weight:600; margin-bottom:2px; }
  .phone-screen .ps-status{ font-size:12px; color:var(--teal); margin-bottom:22px; }
  .phone-row{ display:flex; justify-content:space-between; align-items:center; padding:12px 0; border-top:1px solid rgba(255,255,255,0.1); font-size:12.5px; color:#C7DAE3; }
  .phone-toggle{ width:34px; height:18px; border-radius:999px; background:var(--teal); position:relative; }
  .phone-toggle::after{ content:''; position:absolute; width:14px; height:14px; border-radius:50%; background:#fff; top:2px; right:2px; }
  .phone-caption{ text-align:center; font-size:11.5px; color:#9FC0CF; margin-top:14px; }

  .hero-dual{ position:relative; z-index:2; display:flex; align-items:flex-end; justify-content:center; gap:18px; max-width:600px; margin:0 auto; }
  .hero-product{ position:relative; text-align:center; min-width:0; }
  .hero-product.small{ flex:0.6; }
  .hero-product.medium{ flex:1; }
  .hero-product.large{ flex:1.18; }
  .hero-product img{ width:100%; height:auto; display:block; filter:drop-shadow(0 18px 24px rgba(0,0,0,0.4)); }
  .hero-product .tag{
    position:relative; z-index:1; display:inline-block; margin-top:16px;
    font-family:'IBM Plex Mono', monospace; font-size:12px; font-weight:600; letter-spacing:0.08em;
    color:var(--navy); background:var(--teal); padding:5px 13px; border-radius:4px; white-space:nowrap;
  }

  /* ---------- SPECS ---------- */
  .specs{ background:var(--navy); color:var(--white); padding:96px 0; position:relative; overflow:hidden; }
  .specs .wrap{ position:relative; z-index:1; }
  .specs-head{ display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin-bottom:36px; flex-wrap:wrap; }
  .specs-head h2{ font-size:32px; }
  .specs-head p{ color:#9FC0CF; font-size:14px; max-width:380px; }
  table.spec-table{ width:100%; border-collapse:collapse; }
  .spec-table th, .spec-table td{
    text-align:left; padding:16px 18px; border-bottom:1px solid rgba(255,255,255,0.12); font-size:14px;
  }
  .spec-table thead th{
    font-family:'Space Grotesk'; font-weight:600; font-size:13px; text-transform:uppercase;
    letter-spacing:0.06em; color:var(--teal); border-bottom:1px solid rgba(31,191,168,0.4);
  }
  .spec-table tbody th{ font-weight:500; color:#C7DAE3; width:38%; }
  .spec-table td{ color:var(--white); }
  .spec-table tbody tr:last-child th, .spec-table tbody tr:last-child td{ border-bottom:none; }
  .tbd{ color:#7FA0AF; font-style:italic; font-family:'Inter'; }

  /* ---------- SPEC CARDS (translucent, stacked models) ---------- */
  .spec-cards{ display:flex; flex-direction:column; gap:28px; }
  .spec-card{
    position:relative; border-radius:14px; overflow:hidden;
    background:rgba(255,255,255,0.06);
    border:1px solid rgba(255,255,255,0.14);
    backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
    box-shadow:0 20px 40px rgba(0,0,0,0.25);
  }
  .spec-card-head{
    display:flex; align-items:baseline; justify-content:space-between; gap:16px;
    padding:22px 28px; border-bottom:1px solid rgba(255,255,255,0.14);
    background:rgba(255,255,255,0.04);
  }
  .spec-card-head .model-eyebrow{
    font-family:'IBM Plex Mono'; font-size:11px; letter-spacing:0.14em; text-transform:uppercase;
    color:var(--teal); display:block; margin-bottom:4px;
  }
  .spec-card-head h3{ font-size:24px; color:var(--white); }
  .spec-card-head .model-tag{
    font-family:'IBM Plex Mono'; font-size:12px; color:#9FC0CF;
    border:1px solid rgba(255,255,255,0.25); border-radius:999px; padding:5px 14px; white-space:nowrap;
  }
  .spec-grid{ display:grid; grid-template-columns:repeat(auto-fit, minmax(150px, 1fr)); }
  .spec-item{ padding:22px 26px; border-top:1px solid rgba(255,255,255,0.1); border-left:1px solid rgba(255,255,255,0.1); position:relative; }
  .spec-item::before{ content:''; position:absolute; top:-1px; left:26px; width:22px; height:2px; background:var(--teal); }
  .spec-item .spec-label{ font-size:11.5px; color:#9FC0CF; text-transform:uppercase; letter-spacing:0.06em; margin-bottom:10px; }
  .spec-item .spec-value{ font-family:'IBM Plex Mono'; font-size:29px; font-weight:700; color:var(--teal); letter-spacing:-0.01em; font-variant-numeric:tabular-nums; line-height:1.15; }
  .spec-item .spec-value small{ font-size:20px; font-weight:700; color:var(--white); margin-left:6px; letter-spacing:-0.01em; }
  .spec-note{ font-size:12px; color:#7FA0AF; margin-top:22px; }

  /* ---------- VANTAGENS ---------- */
  .advantages{ background:var(--paper); padding:96px 0; }
  .adv-head{ max-width:560px; margin-bottom:44px; }
  .adv-head h2{ font-size:32px; color:var(--navy); }
  .adv-grid{ display:grid; grid-template-columns:repeat(3, 1fr); gap:1px; background:var(--line); border:1px solid var(--line); }
  .adv-card{ background:var(--white); padding:32px 28px; }
  .adv-card .icon{ width:34px; height:34px; margin-bottom:18px; color:var(--blue); }
  .adv-card h3{ font-family:'Space Grotesk'; font-size:16.5px; color:var(--navy); margin-bottom:8px; }
  .adv-card p{ font-size:13.5px; color:#5B7480; }

  /* ---------- APLICAÇÕES ---------- */
  .applications{ background:var(--paper-2); padding:96px 0; }
  .app-head{ max-width:560px; margin-bottom:44px; }
  .app-head h2{ font-size:32px; color:var(--navy); }
  .app-grid{ display:grid; grid-template-columns:repeat(4, 1fr); gap:18px; }
  .app-card{
    background:var(--white); border:1px solid var(--line); border-radius:6px; padding:24px 20px;
    min-height:150px; display:flex; flex-direction:column; justify-content:flex-end;
  }
  .app-card .icon{ width:26px; height:26px; color:var(--teal); margin-bottom:14px; }
  .app-card h3{ font-size:14.5px; color:var(--navy); margin-bottom:6px; font-family:'Space Grotesk'; }
  .app-card p{ font-size:12.5px; color:#5B7480; }

  /* ---------- CTA FINAL ---------- */
  .cta-final{
    background:linear-gradient(120deg, var(--blue) 0%, var(--navy) 70%);
    color:var(--white); padding:90px 0; text-align:center;
  }
  .cta-final h2{ font-size:30px; max-width:640px; margin:0 auto 16px; }
  .cta-final p{ color:#DCEAF0; font-size:15px; margin-bottom:32px; }

  /* ---------- FOOTER ---------- */
  footer{ background:#061F2E; color:#8FAEBC; padding:52px 0 30px; }
  footer .wrap{ display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:32px; }
  .footer-logo{ height:26px; filter:brightness(0) invert(1); opacity:.9; margin-bottom:12px; }
  footer .col p{ font-size:13px; line-height:1.7; }
  footer .col h4{ color:var(--white); font-size:13px; margin-bottom:12px; font-weight:600; }
  footer .col a{ display:block; font-size:13px; margin-bottom:8px; color:#8FAEBC; }
  footer .col a:hover{ color:var(--teal); }
  .footer-bottom{
    max-width:1180px; margin:40px auto 0; padding:20px 32px 0; border-top:1px solid rgba(255,255,255,0.08);
    font-size:12px; color:#5E7A88; display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px;
  }

  /* ---------- WHATSAPP FLOAT ---------- */
  .wa-float{
    position:fixed; bottom:26px; right:26px; z-index:200;
    width:58px; height:58px; border-radius:50%;
    background:#25D366; display:flex; align-items:center; justify-content:center;
    box-shadow:0 10px 24px rgba(0,0,0,0.28); cursor:pointer;
  }
  .wa-float::before{
    content:''; position:absolute; inset:0; border-radius:50%; background:#25D366;
    animation:pulse 2.2s ease-out infinite; z-index:-1;
  }
  @keyframes pulse{
    0%{ transform:scale(1); opacity:.55; }
    100%{ transform:scale(1.9); opacity:0; }
  }
  .wa-float svg{ width:28px; height:28px; }

  @media (max-width:900px){
    .hero .wrap{ grid-template-columns:1fr; }
    .hero-dual{ order:-1; margin-bottom:20px; max-width:460px; }
    .about .wrap{ grid-template-columns:1fr; }
    .app-control .wrap{ grid-template-columns:1fr; }
    .phone-mock{ margin-top:20px; }
    .version-grid{ grid-template-columns:1fr; }
    .adv-grid{ grid-template-columns:1fr 1fr; }
    .app-grid{ grid-template-columns:1fr 1fr; }
    nav{ position:fixed; top:64px; left:0; right:0; background:var(--navy); flex-direction:column;
      padding:20px 32px; gap:18px; align-items:flex-start; transform:translateY(-130%); transition:transform .3s ease; }
    nav.open{ transform:translateY(0); }
    .menu-toggle{ display:block; }
  }
  @media (max-width:560px){
    .adv-grid, .app-grid{ grid-template-columns:1fr; }
    .specs-head{ flex-direction:column; align-items:flex-start; }
    .spec-grid{ grid-template-columns:repeat(2, 1fr); }
    .spec-table th, .spec-table td{ padding:12px 10px; font-size:12.5px; }
    .hero-dual{ max-width:360px; gap:10px; }
    .hero-product .tag{ font-size:10.5px; padding:4px 9px; }
  }

  @media (prefers-reduced-motion: reduce){
    *{ animation:none !important; transition:none !important; }
  }

  /* ---------- SIMULADOR ---------- */
  .simulator{ background:var(--paper-2); padding:96px 0; }
  .sim-head{ max-width:560px; margin:0 auto 40px; text-align:center; }
  .sim-head .section-label{ justify-content:center; }
  .sim-head h2{ font-size:32px; color:var(--navy); margin-bottom:12px; }
  .sim-head p{ color:#3C5561; font-size:15px; }
  .sim-card{
    max-width:520px; margin:0 auto; background:var(--white);
    border:1px solid var(--line); border-radius:10px; padding:36px 36px 32px;
    box-shadow:0 20px 40px rgba(8,40,59,0.08);
  }
  .sim-progress{ display:flex; gap:6px; margin-bottom:28px; }
  .sim-progress .dot{ height:4px; flex:1; border-radius:2px; background:var(--line); transition:background .25s ease; }
  .sim-progress .dot[data-active="true"]{ background:var(--teal); }
  .sim-step p.sim-title{ font-family:'Space Grotesk'; font-size:19px; font-weight:600; color:var(--navy); margin-bottom:4px; }
  .sim-step p.sim-sub{ font-size:13.5px; color:#5B7480; margin-bottom:24px; }
  .sim-field{ margin-bottom:16px; }
  .sim-field label{ display:block; font-size:13px; color:#3C5561; margin-bottom:6px; font-weight:500; }
  .sim-grid-2{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
  .sim-card input[type="number"], .sim-card input[type="text"], .sim-card input[type="email"], .sim-card input[type="tel"]{
    width:100%; height:42px; border:1px solid var(--line); border-radius:6px; padding:0 12px;
    font-size:14px; font-family:'Inter', sans-serif; color:var(--ink); background:var(--paper);
  }
  .sim-card input:focus{ outline:none; border-color:var(--blue); box-shadow:0 0 0 3px rgba(14,107,168,0.12); }
  .sim-checkbox{ display:flex; align-items:center; gap:8px; font-size:13px; color:#3C5561; margin-bottom:10px; cursor:pointer; }
  .sim-checkbox input{ width:15px; height:15px; accent-color:var(--blue); }
  .sim-result-box{
    background:var(--paper-2); border:1px solid var(--line); border-radius:8px;
    padding:16px 18px; margin-bottom:24px;
  }
  .sim-result-box .sim-result-label{
    font-family:'IBM Plex Mono'; font-size:11px; color:#7FA0AF; text-transform:uppercase;
    letter-spacing:0.06em; margin-bottom:4px;
  }
  .sim-result-box .sim-result-value{ font-family:'IBM Plex Mono'; font-size:24px; font-weight:700; color:var(--navy); font-variant-numeric:tabular-nums; }
  .sim-model-card{
    background:linear-gradient(160deg, var(--navy) 0%, var(--navy-2) 100%); color:var(--white);
    border-radius:10px; padding:24px 26px; margin-bottom:20px;
  }
  .sim-model-eyebrow{ font-family:'IBM Plex Mono'; font-size:11px; letter-spacing:0.12em; text-transform:uppercase; color:var(--teal); margin-bottom:8px; }
  .sim-model-name{ font-family:'Space Grotesk'; font-size:24px; font-weight:600; margin-bottom:12px; }
  .sim-model-name.warn{ color:#FFB347; }
  .sim-model-desc{ font-size:13.5px; color:#C7DAE3; line-height:1.6; margin-bottom:18px; }
  table.sim-spec-table{ width:100%; border-collapse:collapse; border-top:1px solid rgba(255,255,255,0.14); padding-top:10px; }
  .sim-spec-table tr td{ font-size:13px; font-family:'IBM Plex Mono'; padding:8px 0; border-bottom:1px solid rgba(255,255,255,0.08); font-variant-numeric:tabular-nums; }
  .sim-spec-table tr:last-child td{ border-bottom:none; }
  .sim-spec-table td:first-child{ color:#9FC0CF; font-variant-numeric:normal; }
  .sim-spec-table td:last-child{ text-align:right; color:var(--teal); font-weight:600; }
  .sim-note{ font-size:12px; color:#7FA0AF; line-height:1.5; margin-bottom:22px; }
  .sim-card .btn{ width:100%; justify-content:center; margin-bottom:10px; }
  .sim-card .btn:last-child{ margin-bottom:0; }

  .sim-choice-group{ display:flex; flex-wrap:wrap; gap:8px; }
  .sim-choice{
    padding:9px 14px; border:1px solid var(--line); border-radius:999px;
    font-size:13px; font-weight:500; color:#3C5561; background:var(--paper);
    cursor:pointer; transition:background .15s ease, border-color .15s ease, color .15s ease;
  }
  .sim-choice:hover{ border-color:var(--blue); }
  .sim-choice[data-active="true"]{ background:var(--blue); border-color:var(--blue); color:var(--white); }
  .sim-back-link{
    display:inline-block; margin-bottom:16px; font-size:13px; color:var(--blue);
    cursor:pointer; font-weight:500;
  }
  .sim-factor-list{ list-style:none; margin-bottom:18px; }
  .sim-factor-list li{
    display:flex; justify-content:space-between; gap:12px; font-size:13px;
    color:#C7DAE3; padding:7px 0; border-bottom:1px solid rgba(255,255,255,0.08);
  }
  .sim-factor-list li:last-child{ border-bottom:none; }
  .sim-factor-list li span:last-child{ color:var(--teal); font-weight:600; font-family:'IBM Plex Mono'; }
