/* Control Rondas — hoja de estilos del sitio */
@font-face{font-family:'Kanit';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/kanit-500.woff2') format('woff2')}
@font-face{font-family:'Kanit';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/kanit-600.woff2') format('woff2')}
@font-face{font-family:'Kanit';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/kanit-700.woff2') format('woff2')}

/* ===== Base y componentes (inicio) ===== */
:root{
    --ink:#07172E; --navy:#0B1B33; --blue:#2D82F9; --blue2:#1B5FCC; --sky:#EAF2FE;
    --soft:#F6FAFF; --line:#DFE8F3; --muted:#66758B; --signal:#16B364; --alert:#FF4D3D; --amber:#FFB020; --aqua:#21C7D9;
    --fh:'Kanit',Inter,system-ui,sans-serif; --fb:'Inter',system-ui,sans-serif;
    --wrap:1180px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:var(--fb);color:var(--ink);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased}
  h1,h2,h3,h4,.display{font-family:var(--fh);letter-spacing:-.035em;line-height:1.08;font-weight:700}
  p{color:var(--muted)}
  a{color:inherit;text-decoration:none}
  img{max-width:100%;display:block}
  .wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
  section{padding:clamp(52px,8vw,100px) 0}
  .eyebrow{margin-bottom:1rem}
  .lead{font-size:1.12rem;color:var(--muted)}
  .mt2{margin-top:1rem}.mt4{margin-top:1.5rem}.mt6{margin-top:2rem}
  .center{text-align:center}
  .maxw{max-width:60ch}.maxw-c{max-width:56ch;margin-left:auto;margin-right:auto}

  .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--fb);font-weight:600;font-size:1rem;padding:.85rem 1.5rem;border-radius:12px;border:1.5px solid transparent;cursor:pointer;transition:.18s}
  .btn-primary{background:var(--blue);color:#fff} .btn-primary:hover{background:var(--blue2)}
  .btn-ghost{background:#fff;border-color:var(--line);color:var(--ink)} .btn-ghost:hover{border-color:var(--blue);color:var(--blue)}
  .btn-block{width:100%}
  .btn-sm{padding:.65rem 1rem;font-size:.92rem}
  .link-blue{color:var(--blue);font-weight:600} .link-blue:hover{color:var(--blue2)}

  .chip{display:inline-flex;align-items:center;gap:.45rem;padding:.42rem .7rem;border-radius:999px;border:1px solid var(--line);background:#fff;color:#334155;font-size:.72rem;font-weight:800;white-space:nowrap}
  .chip-blue{border-color:rgba(45,130,249,.25);background:var(--sky);color:var(--blue2)}
  .chip-ok{border-color:rgba(22,179,100,.25);background:rgba(22,179,100,.08);color:#0E7C46}
  .dot{width:8px;height:8px;border-radius:99px;display:inline-block} .bg-signal{background:var(--signal)}
  .ic{width:1.4rem;height:1.4rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
  .ic-sm{width:1rem;height:1rem}

  .card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.6rem}
  .card-hover{transition:transform .22s,box-shadow .22s,border-color .22s}
  .card-hover:hover{transform:translateY(-4px);box-shadow:0 22px 70px rgba(45,130,249,.14);border-color:rgba(45,130,249,.35)}
  .ibox{width:44px;height:44px;border-radius:12px;background:var(--sky);color:var(--blue);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
  .ctitle{font-size:1.12rem;font-weight:800;margin-bottom:.4rem}
  .ctext{font-size:.92rem;color:var(--muted)}

  header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.85);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
  .nav{display:flex;align-items:center;justify-content:space-between;height:64px}
  .nav .logo{height:28px}
  .menu{display:flex;align-items:center;gap:1.6rem;font-size:.92rem;font-weight:600;color:var(--muted)}
  .menu a:hover{color:var(--ink)}
  .burger{display:none;background:none;border:0;cursor:pointer;padding:8px;color:var(--ink)}
  .mnav{display:none;border-top:1px solid var(--line);background:#fff;padding:14px 20px;flex-direction:column;gap:.6rem;font-weight:600;color:var(--muted)}
  .mnav.open{display:flex}

  .mesh{background:radial-gradient(circle at 12% 18%,rgba(45,130,249,.16),transparent 30%),radial-gradient(circle at 88% 12%,rgba(33,199,217,.16),transparent 26%),linear-gradient(180deg,#fff 0%,#F6FAFF 100%);border-bottom:1px solid var(--line)}
  .grid-bg{background-image:linear-gradient(rgba(45,130,249,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(45,130,249,.07) 1px,transparent 1px);background-size:38px 38px}
  .hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center}
  .hero h1{font-size:clamp(2.1rem,5.2vw,3.4rem)}
  .hero h1 .accent{color:var(--blue)}
  .hero .cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2rem}
  .hero .tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2rem}
  .shadow-soft{box-shadow:0 24px 80px rgba(7,23,46,.10)}
  .shadow-card{box-shadow:0 18px 50px rgba(45,130,249,.10)}

  /* HERO: animación recorrido del guardia */
  .map-card{background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 24px 80px rgba(7,23,46,.10);padding:1.4rem}
  .map-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.8rem}
  .map-head .ev-label{font-size:.72rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
  /* Opacidad del fondo del hero: ajusta --map-op (0 = invisible, 1 = opaca) */
  .map-stage{--map-op:.45;position:relative;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#EEF4FC}
  img.map-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:var(--map-op)}
  .map-svg{position:relative;width:100%;height:auto;display:block}
  .map-note{margin-top:.7rem;font-size:.78rem;color:var(--muted);display:flex;align-items:center;gap:.5rem}
  .map-note .tag{font-family:var(--fh);font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--blue);padding:.18rem .5rem;border-radius:5px}
  .guide{fill:none;stroke:#C8D6EA;stroke-width:2.4;stroke-dasharray:2 8;stroke-linecap:round}
  .trail{fill:none;stroke:var(--blue);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
  .sq rect{fill:#fff;stroke:var(--line);stroke-width:2.4;transition:fill .35s,stroke .35s}
  .sq .chk{fill:none;stroke:var(--blue);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .25s}
  .sq.check rect{stroke:var(--blue)} .sq.check .chk{opacity:1}
  .sq.fill rect{fill:var(--blue);stroke:var(--blue)} .sq.fill .chk{stroke:#fff;opacity:1}
  .halo{fill:var(--blue);opacity:.18} .head{fill:var(--blue)}

  /* placeholder de imagen con nota */
  .imgph{border:1.5px dashed var(--blue);background:rgba(45,130,249,.05);border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;padding:1.3rem;text-align:center;min-height:160px}
  .imgph .tag{font-family:var(--fh);font-size:.66rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--blue);padding:.25rem .6rem;border-radius:6px}
  .imgph .note{font-size:.82rem;color:var(--muted);max-width:42ch}

  .como-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:1.5rem;align-items:stretch}
  .steps2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
  .step .n{font-family:var(--fh);font-size:1.5rem;font-weight:700;color:var(--blue)}
  .step h3{margin-top:.4rem;font-size:1.05rem;font-weight:800}

  .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
  .sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:1rem}
  .h2{font-size:clamp(1.7rem,3.4vw,2.4rem)}

  .band-soft{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .band-blue{background:var(--blue);color:#fff;padding:4rem 0}
  .band-blue .row{display:flex;align-items:center;gap:1.5rem}
  .band-blue h2{font-size:clamp(1.5rem,3vw,2rem)}
  .band-blue p{color:rgba(255,255,255,.85);margin-top:.5rem;max-width:60ch}

  /* casos con foto */
  .case{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}
  .case-ph{min-height:150px;border-bottom:1.5px dashed var(--blue);background:rgba(45,130,249,.05);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;text-align:center;padding:1rem}
  .case-ph .tag{font-family:var(--fh);font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--blue);padding:.22rem .55rem;border-radius:6px}
  .case-ph .note{font-size:.78rem;color:var(--muted)}
  .case .body{padding:1.4rem}

  .plans{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
  .plan{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.6rem;display:flex;flex-direction:column;position:relative}
  .plan.reco{border:2px solid var(--blue);box-shadow:0 18px 50px rgba(45,130,249,.10)}
  .plan .reco-tag{position:absolute;top:-13px;left:1.5rem}
  .plan h3{font-size:1.25rem;font-weight:700}
  .plan .desc{margin-top:.5rem;font-size:.9rem;color:var(--muted)}
  .plan ul{list-style:none;margin-top:1rem;display:flex;flex-direction:column;gap:.55rem;flex:1}
  .plan li{display:flex;gap:.5rem;font-size:.9rem;color:var(--muted)}
  .plan .acts{margin-top:1.5rem;display:flex;flex-direction:column;gap:.5rem}

  /* prueba social */
  .variant-note{font-family:var(--fh);font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--alert);border:1px dashed rgba(255,77,61,.5);background:rgba(255,77,61,.05);padding:.4rem .8rem;border-radius:8px;display:inline-block}
  .vlabel{text-align:center;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:1.4rem}
  .vlabel .muted2{color:var(--line)}
  .marquee{overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
  .marquee-track{display:flex;gap:1rem;width:max-content;animation:scroll 28s linear infinite}
  .marquee:hover .marquee-track{animation-play-state:paused}
  @keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
  .logo-item{height:50px;width:160px;flex:none;border-radius:10px;background:var(--soft);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--muted);font-weight:700;font-size:.8rem}
  .quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
  .quote{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.5rem}
  .quote blockquote{color:var(--ink);font-size:1rem}
  .quote figcaption{margin-top:1rem;font-size:.85rem;color:var(--muted);font-weight:600}
  .metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;text-align:center}
  .metric{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.5rem}
  .metric .n{font-family:var(--fh);font-size:2.4rem;font-weight:700;color:var(--blue)}
  .metric .l{margin-top:.2rem;font-size:.88rem;color:var(--muted)}

  footer{background:#fff;border-top:1px solid var(--line);padding:3.5rem 0 2rem}
  .fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem}
  footer .logo{height:28px}
  footer .fdesc{margin-top:1rem;font-size:.88rem;color:var(--muted);max-width:32ch}
  footer h4{font-family:var(--fh);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:700;margin-bottom:1rem}
  footer ul{list-style:none;display:flex;flex-direction:column;gap:.55rem;font-size:.9rem}
  footer ul a{color:var(--muted)} footer ul a:hover{color:var(--ink)}
  .fbottom{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:space-between;gap:.8rem;font-size:.85rem;color:var(--muted)}
  .fbottom .bee{font-family:var(--fh);font-weight:700;color:var(--ink)} .fbottom .bee:hover{color:var(--blue)}

  @media (max-width:960px){
    .hero-grid{grid-template-columns:1fr;gap:2.2rem}
    .como-grid{grid-template-columns:1fr}
    .plans{grid-template-columns:1fr;max-width:460px;margin:0 auto}
    .menu{display:none} .burger{display:block}
    .fgrid{grid-template-columns:1fr 1fr}
  }
  @media (max-width:760px){
    .grid3,.quotes{grid-template-columns:1fr}
    .metrics{grid-template-columns:repeat(2,1fr)}
    .band-blue .row{flex-direction:column;text-align:center}
  }
  @media (max-width:520px){ .steps2{grid-template-columns:1fr} .fgrid{grid-template-columns:1fr} }
  :focus-visible{outline:3px solid var(--blue);outline-offset:2px}

/* ===== Extras de Funcionalidades ===== */
:root{
    --ink:#07172E; --navy:#0B1B33; --blue:#2D82F9; --blue2:#1B5FCC; --sky:#EAF2FE;
    --soft:#F6FAFF; --line:#DFE8F3; --muted:#66758B; --signal:#16B364; --alert:#FF4D3D; --amber:#FFB020; --aqua:#21C7D9;
    --fh:'Kanit',Inter,system-ui,sans-serif; --fb:'Inter',system-ui,sans-serif; --wrap:1180px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{font-family:var(--fb);color:var(--ink);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased}
  h1,h2,h3,h4,.display{font-family:var(--fh);letter-spacing:-.02em;line-height:1.1;font-weight:700}
  p{color:var(--muted)}
  a{color:inherit;text-decoration:none}
  .wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
  section{padding:clamp(48px,7vw,90px) 0}
  .eyebrow{margin-bottom:1rem}
  .lead{font-size:1.12rem;color:var(--muted)}
  .mt2{margin-top:1rem}.mt4{margin-top:1.5rem}.mt6{margin-top:2rem}
  .center{text-align:center}.maxw{max-width:60ch}.maxw-c{max-width:56ch;margin:0 auto}
  .h2{font-size:clamp(1.6rem,3.2vw,2.3rem)}
  .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--fb);font-weight:600;font-size:1rem;padding:.85rem 1.5rem;border-radius:12px;border:1.5px solid transparent;cursor:pointer;transition:.18s}
  .btn-primary{background:var(--blue);color:#fff} .btn-primary:hover{background:var(--blue2)}
  .btn-ghost{background:#fff;border-color:var(--line);color:var(--ink)} .btn-ghost:hover{border-color:var(--blue);color:var(--blue)}
  .link-blue{color:var(--blue);font-weight:600} .link-blue:hover{color:var(--blue2)}
  .chip{display:inline-flex;align-items:center;gap:.45rem;padding:.42rem .7rem;border-radius:999px;border:1px solid var(--line);background:#fff;color:#334155;font-size:.72rem;font-weight:700;white-space:nowrap}
  .chip-blue{border-color:rgba(45,130,249,.25);background:var(--sky);color:var(--blue2)}
  .dot{width:8px;height:8px;border-radius:99px;display:inline-block}.bg-signal{background:var(--signal)}
  .ic{width:1.4rem;height:1.4rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
  .ic-sm{width:1rem;height:1rem}
  .ibox{width:46px;height:46px;border-radius:12px;background:var(--sky);color:var(--blue);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}

  header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.85);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
  .nav{display:flex;align-items:center;justify-content:space-between;height:64px}
  .nav .logo{height:28px}
  .menu{display:flex;align-items:center;gap:1.6rem;font-size:.92rem;font-weight:600;color:var(--muted)}
  .menu a:hover,.menu a.active{color:var(--ink)}
  .burger{display:none;background:none;border:0;cursor:pointer;padding:8px;color:var(--ink)}
  .mnav{display:none;border-top:1px solid var(--line);background:#fff;padding:14px 20px;flex-direction:column;gap:.6rem;font-weight:600;color:var(--muted)}
  .mnav.open{display:flex}

  .mesh{background:radial-gradient(circle at 12% 18%,rgba(45,130,249,.16),transparent 30%),radial-gradient(circle at 88% 12%,rgba(33,199,217,.16),transparent 26%),linear-gradient(180deg,#fff 0%,#F6FAFF 100%);border-bottom:1px solid var(--line)}
  .phero{padding:clamp(40px,6vw,72px) 0}
  .phero h1{font-size:clamp(2rem,4.6vw,3rem)}
  .phero .cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}

  .frow{display:grid;grid-template-columns:1fr 1fr;gap:2.6rem;align-items:center}
  .frow + .frow{margin-top:clamp(40px,6vw,72px)}
  .frow.rev .ftext{order:2}
  .flist{list-style:none;margin-top:1.2rem;display:flex;flex-direction:column;gap:.7rem}
  .flist li{display:flex;gap:.6rem;color:var(--muted)} .flist li svg{margin-top:.2rem}
  .imgph{border:1.5px dashed var(--blue);background:rgba(45,130,249,.05);border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;padding:1.4rem;text-align:center;min-height:230px}
  .imgph .tag{font-family:var(--fh);font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#fff;background:var(--blue);padding:.22rem .55rem;border-radius:6px}
  .imgph .tag.alt{background:var(--ink)}
  .imgph .note{font-size:.84rem;color:var(--muted);max-width:40ch}

  .band-soft{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .band-blue{background:var(--blue);color:#fff}
  .band-blue h2{color:#fff} .band-blue p{color:rgba(255,255,255,.85)}

  .phone{width:240px;margin:0 auto;background:#0B1B33;border-radius:36px;padding:12px;box-shadow:0 24px 80px rgba(7,23,46,.18)}
  .phone .screen{background:#fff;border-radius:26px;overflow:hidden}
  .scr-top{background:var(--blue);color:#fff;padding:16px 16px 18px}
  .scr-top .t{font-family:var(--fh);font-weight:700}
  .scr-top .s{font-size:.74rem;opacity:.85}
  .scr-body{padding:14px;display:flex;flex-direction:column;gap:10px}
  .scr-item{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;font-size:.82rem;font-weight:600;color:var(--ink)}
  .scr-item .b{width:26px;height:26px;border-radius:8px;background:var(--sky);color:var(--blue);display:flex;align-items:center;justify-content:center;flex:none}
  .scr-item.done .b{background:var(--signal);color:#fff} .scr-item .s{display:block;font-weight:500;color:var(--muted);font-size:.72rem}
  .scr-sos{margin-top:2px;background:var(--alert);color:#fff;border-radius:12px;padding:12px;text-align:center;font-weight:700;font-size:.82rem}

  .grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
  .card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.6rem}
  .ctitle{font-size:1.08rem;font-weight:800;margin-bottom:.4rem}.ctext{font-size:.92rem;color:var(--muted)}
  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
  .step .n{font-family:var(--fh);font-size:1.4rem;font-weight:700;color:var(--blue)}.step h3{margin-top:.3rem;font-size:1rem;font-weight:800}

  footer{background:#fff;border-top:1px solid var(--line);padding:3.5rem 0 2rem}
  .fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem}
  footer .logo{height:28px}.footer .fdesc{}
  footer .fdesc{margin-top:1rem;font-size:.88rem;color:var(--muted);max-width:32ch}
  footer h4{font-family:var(--fh);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:700;margin-bottom:1rem}
  footer ul{list-style:none;display:flex;flex-direction:column;gap:.55rem;font-size:.9rem}
  footer ul a{color:var(--muted)} footer ul a:hover{color:var(--ink)}
  .fbottom{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:space-between;gap:.8rem;font-size:.85rem;color:var(--muted)}
  .fbottom .bee{font-family:var(--fh);font-weight:700;color:var(--ink)}.fbottom .bee:hover{color:var(--blue)}

  @media (max-width:900px){
    .frow{grid-template-columns:1fr;gap:1.6rem}.frow.rev .ftext{order:0}
    .steps{grid-template-columns:repeat(2,1fr)}
    .menu{display:none}.burger{display:block}.fgrid{grid-template-columns:1fr 1fr}
  }
  @media (max-width:620px){.grid3{grid-template-columns:1fr}.steps{grid-template-columns:1fr}.fgrid{grid-template-columns:1fr}}
  :focus-visible{outline:3px solid var(--blue);outline-offset:2px}

/* ===== Extras de Planes / landings ===== */
:root{--ink:#07172E;--navy:#0B1B33;--blue:#2D82F9;--blue2:#1B5FCC;--sky:#EAF2FE;--soft:#F6FAFF;--line:#DFE8F3;--muted:#66758B;--signal:#16B364;--alert:#FF4D3D;--amber:#FFB020;--aqua:#21C7D9;--fh:'Kanit',Inter,system-ui,sans-serif;--fb:'Inter',system-ui,sans-serif;--wrap:1180px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--fb);color:var(--ink);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,.display{font-family:var(--fh);letter-spacing:-.02em;line-height:1.1;font-weight:700}
p{color:var(--muted)} a{color:inherit;text-decoration:none}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
section{padding:clamp(48px,7vw,90px) 0}
.eyebrow{margin-bottom:1rem}.lead{font-size:1.12rem;color:var(--muted)}
.mt2{margin-top:1rem}.mt4{margin-top:1.5rem}.mt6{margin-top:2rem}
.center{text-align:center}.maxw{max-width:62ch}.maxw-c{max-width:58ch;margin:0 auto}
.h2{font-size:clamp(1.6rem,3.2vw,2.3rem)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--fb);font-weight:600;font-size:1rem;padding:.85rem 1.5rem;border-radius:12px;border:1.5px solid transparent;cursor:pointer;transition:.18s}
.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:var(--blue2)}
.btn-ghost{background:#fff;border-color:var(--line);color:var(--ink)}.btn-ghost:hover{border-color:var(--blue);color:var(--blue)}
.btn-block{width:100%}.btn-sm{padding:.65rem 1rem;font-size:.92rem}
.link-blue{color:var(--blue);font-weight:600}.link-blue:hover{color:var(--blue2)}
.chip{display:inline-flex;align-items:center;gap:.45rem;padding:.42rem .7rem;border-radius:999px;border:1px solid var(--line);background:#fff;color:#334155;font-size:.72rem;font-weight:700;white-space:nowrap}
.chip-blue{border-color:rgba(45,130,249,.25);background:var(--sky);color:var(--blue2)}
.dot{width:8px;height:8px;border-radius:99px;display:inline-block}.bg-signal{background:var(--signal)}
.ic{width:1.4rem;height:1.4rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}.ic-sm{width:1rem;height:1rem}
.ibox{width:46px;height:46px;border-radius:12px;background:var(--sky);color:var(--blue);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.85);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:64px}.nav .logo{height:28px}
.menu{display:flex;align-items:center;gap:1.6rem;font-size:.92rem;font-weight:600;color:var(--muted)}
.menu a:hover,.menu a.active{color:var(--ink)}
.burger{display:none;background:none;border:0;cursor:pointer;padding:8px;color:var(--ink)}
.mnav{display:none;border-top:1px solid var(--line);background:#fff;padding:14px 20px;flex-direction:column;gap:.6rem;font-weight:600;color:var(--muted)}.mnav.open{display:flex}
.mesh{background:radial-gradient(circle at 12% 18%,rgba(45,130,249,.16),transparent 30%),radial-gradient(circle at 88% 12%,rgba(33,199,217,.16),transparent 26%),linear-gradient(180deg,#fff 0%,#F6FAFF 100%);border-bottom:1px solid var(--line)}
.phero{padding:clamp(40px,6vw,72px) 0}.phero h1{font-size:clamp(2rem,4.6vw,3rem)}.phero .cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}
.band-soft{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.band-blue{background:var(--blue);color:#fff}.band-blue h2{color:#fff}.band-blue p{color:rgba(255,255,255,.85)}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem}
.mflow{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.6rem}
.card-hover{transition:transform .22s,box-shadow .22s,border-color .22s}.card-hover:hover{transform:translateY(-4px);box-shadow:0 22px 70px rgba(45,130,249,.14);border-color:rgba(45,130,249,.35)}
.ctitle{font-size:1.08rem;font-weight:800;margin-bottom:.4rem}.ctext{font-size:.92rem;color:var(--muted)}
.step .n{font-family:var(--fh);font-size:1.4rem;font-weight:700;color:var(--blue)}.step h3{margin-top:.3rem;font-size:1rem;font-weight:800}
.flist{list-style:none;display:flex;flex-direction:column;gap:.7rem}
.flist li{display:flex;gap:.6rem;color:var(--muted)}.flist li svg{margin-top:.2rem}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.plan{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.6rem;display:flex;flex-direction:column;position:relative}
.plan.reco{border:2px solid var(--blue);box-shadow:0 18px 50px rgba(45,130,249,.10)}
.plan .reco-tag{position:absolute;top:-13px;left:1.5rem}
.plan h3{font-size:1.25rem;font-weight:700}.plan .desc{margin-top:.5rem;font-size:.9rem;color:var(--muted)}
.plan ul{list-style:none;margin-top:1rem;display:flex;flex-direction:column;gap:.55rem;flex:1}
.plan li{display:flex;gap:.5rem;font-size:.9rem;color:var(--muted)}
.plan .acts{margin-top:1.5rem;display:flex;flex-direction:column;gap:.5rem}
.cmp-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:#fff}
.cmp{width:100%;border-collapse:collapse;min-width:680px}
.cmp th,.cmp td{padding:.95rem 1.1rem;text-align:left;border-bottom:1px solid var(--line);font-size:.92rem;vertical-align:top}
.cmp thead th{font-family:var(--fh);font-weight:700;color:var(--ink);font-size:1rem}
.cmp thead th span{display:block;font-family:var(--fb);font-weight:500;font-size:.78rem;color:var(--muted)}
.cmp tbody th{font-weight:600;color:var(--muted)}
.cmp td{color:var(--ink)} .cmp tr:last-child td,.cmp tr:last-child th{border-bottom:0}
.cmp .col-reco{background:var(--sky)}
.faq{display:flex;flex-direction:column;gap:.7rem;max-width:800px}
.faq details{border:1px solid var(--line);border-radius:12px;background:#fff}
.faq summary{cursor:pointer;list-style:none;padding:1rem 1.2rem;font-family:var(--fh);font-weight:600;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';color:var(--blue);font-size:1.4rem;font-weight:400;line-height:1}
.faq details[open] summary::after{content:'\2013'}
.faq .a{padding:0 1.2rem 1.1rem;color:var(--muted);font-size:.95rem}
footer{background:#fff;border-top:1px solid var(--line);padding:3.5rem 0 2rem}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2rem}
footer .logo{height:28px}
footer .fdesc{margin-top:1rem;font-size:.88rem;color:var(--muted);max-width:32ch}
footer h4{font-family:var(--fh);font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:700;margin-bottom:1rem}
footer ul{list-style:none;display:flex;flex-direction:column;gap:.55rem;font-size:.9rem}
footer ul a{color:var(--muted)}footer ul a:hover{color:var(--ink)}
.fbottom{margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:space-between;gap:.8rem;font-size:.85rem;color:var(--muted)}
.fbottom .bee{font-family:var(--fh);font-weight:700;color:var(--ink)}.fbottom .bee:hover{color:var(--blue)}
@media (max-width:900px){.plans{grid-template-columns:1fr;max-width:460px;margin:0 auto}.grid2{grid-template-columns:1fr}.menu{display:none}.burger{display:block}.fgrid{grid-template-columns:1fr 1fr}}
@media (max-width:760px){.mflow{grid-template-columns:1fr}}
@media (max-width:620px){.grid3{grid-template-columns:1fr}.fgrid{grid-template-columns:1fr}}
:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
