  #ssl-site{
    --blue:#1478C4;
    --blue-dark:#0B4E82;
    --teal:#33585C;
    --teal-dark:#213B3E;
    --ink:#1E2C30;
    --paper:#FFFFFF;
    --mist:#F4F7F8;
    --line:#DCE4E6;
    --orange:#E2790F;
    --display:'Jost', sans-serif;
    --body:'Inter', sans-serif;
    --mono:'Space Grotesk', sans-serif;
    font-family:var(--body);
    color:var(--ink);
    background:var(--paper);
    line-height:1.55;
    -webkit-font-smoothing:antialiased;
  }
  #ssl-site *{box-sizing:border-box;}
  #ssl-site img{max-width:100%;display:block;}
  #ssl-site a{color:inherit;text-decoration:none;}
  #ssl-site .wrap{max-width:1180px;margin:0 auto;padding:0 32px;}
  #ssl-site .eyebrow{
    font-family:var(--display);font-weight:300;letter-spacing:.22em;
    text-transform:uppercase;font-size:14px;color:var(--blue);
  }
  #ssl-site h1,#ssl-site h2,#ssl-site h3{font-family:var(--display);margin:0;line-height:1.08;}
  #ssl-site .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);}

  /* ---------- NAV ---------- */
  #ssl-site .ssl-nav{
    position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);
    backdrop-filter:blur(8px);border-bottom:1px solid var(--line);
  }
  #ssl-site .ssl-nav-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 32px;max-width:1180px;margin:0 auto;}
  #ssl-site .ssl-logo{display:flex;align-items:center;gap:10px;}
  #ssl-site .ssl-logo svg{width:30px;height:30px;flex-shrink:0;}
  #ssl-site .ssl-logo-mark{display:flex;}
  #ssl-site .ssl-logo-mark span{
    display:flex;align-items:center;justify-content:center;
    width:22px;height:22px;background:var(--blue);color:#fff;
    font-family:var(--mono);font-weight:700;font-size:13px;
    border-right:2px solid #fff;
  }
  #ssl-site .ssl-logo-mark span:last-child{border-right:none;}
  #ssl-site .ssl-logo-text{display:flex;flex-direction:column;line-height:1.1;}
  #ssl-site .ssl-logo-text b{font-family:var(--display);font-size:15px;letter-spacing:.02em;color:var(--ink);}
  #ssl-site .ssl-logo-text small{font-family:var(--display);font-size:9px;letter-spacing:.16em;color:var(--teal);text-transform:uppercase;}
  #ssl-site .ssl-menu{display:flex;align-items:center;gap:34px;}
  #ssl-site .ssl-menu a{font-size:14px;font-weight:500;color:var(--ink);opacity:.75;transition:opacity .2s;}
  #ssl-site .ssl-menu a:hover{opacity:1;}
  #ssl-site .ssl-cta{
    background:var(--blue);color:#fff !important;padding:10px 20px;border-radius:2px;
    font-size:13px;font-weight:600;letter-spacing:.03em;opacity:1 !important;
    transition:background .2s;
  }
  #ssl-site .ssl-cta:hover{background:var(--blue-dark);}
  #ssl-site .ssl-burger{display:none;background:none;border:none;cursor:pointer;padding:8px;}
  #ssl-site .ssl-burger span{display:block;width:22px;height:2px;background:var(--ink);margin:5px 0;}

  /* ---------- HERO ---------- */
  #ssl-site .ssl-hero{position:relative;min-height:78vh;display:flex;align-items:flex-end;overflow:hidden;}
  #ssl-site .ssl-hero img{
    position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
    filter:saturate(1.05);
  }
  #ssl-site .ssl-hero::after{
    content:'';position:absolute;inset:0;
    background:linear-gradient(0deg, rgba(15,30,33,.82) 0%, rgba(15,30,33,.35) 45%, rgba(15,30,33,.05) 75%);
  }
  #ssl-site .ssl-hero-content{position:relative;z-index:2;padding:0 32px 64px;max-width:1180px;margin:0 auto;width:100%;color:#fff;}
  #ssl-site .ssl-hero .eyebrow{color:#BFE0F5;}
  #ssl-site .ssl-hero h1{font-size:clamp(34px,5.4vw,64px);font-weight:300;color:#fff;margin-top:6px;}
  #ssl-site .ssl-hero h1 b{font-weight:600;display:block;}
  #ssl-site .ssl-hero p{max-width:560px;margin-top:20px;color:#E7F0F3;font-size:16px;}
  #ssl-site .ssl-hero-actions{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap;}
  #ssl-site .btn-solid{background:var(--blue);color:#fff;padding:14px 26px;border-radius:2px;font-weight:600;font-size:14px;letter-spacing:.02em;transition:background .2s;}
  #ssl-site .btn-solid:hover{background:var(--blue-dark);}
  #ssl-site .btn-ghost{border:1px solid rgba(255,255,255,.55);color:#fff;padding:14px 26px;border-radius:2px;font-weight:600;font-size:14px;transition:background .2s,border-color .2s;}
  #ssl-site .btn-ghost:hover{background:rgba(255,255,255,.12);border-color:#fff;}

  /* ---------- STAT STRIP (signature) ---------- */
  #ssl-site .ssl-manifest{background:var(--teal-dark);padding:0;}
  #ssl-site .ssl-manifest-inner{
    max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);
  }
  #ssl-site .plate{
    position:relative;padding:30px 26px;border-right:1px solid rgba(255,255,255,.14);
    background:var(--blue);
  }
  #ssl-site .plate:nth-child(2){background:#1668A9;}
  #ssl-site .plate:nth-child(3){background:#125A94;}
  #ssl-site .plate:nth-child(4){background:var(--blue-dark);border-right:none;}
  #ssl-site .plate::before{
    content:'';position:absolute;top:8px;left:8px;right:8px;bottom:8px;
    border:1px dashed rgba(255,255,255,.25);pointer-events:none;
  }
  #ssl-site .plate .num{font-family:var(--mono);font-weight:700;font-size:clamp(26px,3vw,36px);color:#fff;display:block;}
  #ssl-site .plate .lbl{font-size:11px;letter-spacing:.06em;color:rgba(255,255,255,.85);text-transform:uppercase;margin-top:6px;display:block;}

  /* ---------- SECTION SHELLS ---------- */
  #ssl-site section{padding:96px 0;}
  #ssl-site .section-head{max-width:640px;margin-bottom:48px;}
  #ssl-site .section-head h2{font-size:clamp(26px,3.4vw,38px);font-weight:600;color:var(--teal-dark);margin-top:8px;}
  #ssl-site .section-head h2 em{font-style:normal;font-weight:300;display:block;color:#8FA6AA;font-size:.8em;}

  /* ---------- EMPRESA ---------- */
  #ssl-site .ssl-empresa{background:var(--paper);}
  #ssl-site .empresa-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
  #ssl-site .empresa-grid img{border-radius:2px;}
  #ssl-site .empresa-copy .item{margin-bottom:36px;}
  #ssl-site .empresa-copy .item:last-child{margin-bottom:0;}
  #ssl-site .empresa-copy h3{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);font-weight:500;margin-bottom:10px;}
  #ssl-site .empresa-copy p{color:#41565A;font-size:15.5px;}
  #ssl-site .empresa-copy .team-row{display:flex;gap:16px;align-items:center;}
  #ssl-site .empresa-copy .team-row img{width:96px;height:96px;object-fit:cover;border-radius:2px;flex-shrink:0;}

  /* ---------- SERVICIOS ---------- */
  #ssl-site .ssl-servicios{background:var(--mist);}
  #ssl-site .servicio{
    display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch;
    background:#fff;margin-bottom:24px;border:1px solid var(--line);overflow:hidden;
  }
  #ssl-site .servicio:last-child{margin-bottom:0;}
  #ssl-site .servicio.rev{grid-template-columns:1fr 1fr;}
  #ssl-site .servicio.rev .s-media{order:2;}
  #ssl-site .servicio.rev .s-copy{order:1;}
  #ssl-site .s-media{position:relative;min-height:340px;}
  #ssl-site .s-media img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
  #ssl-site .s-copy{padding:44px;display:flex;flex-direction:column;justify-content:center;}
  #ssl-site .s-copy .eyebrow{font-size:11px;}
  #ssl-site .s-copy h3{font-size:24px;font-weight:600;color:var(--teal-dark);margin:8px 0 14px;}
  #ssl-site .s-copy p{color:#41565A;font-size:15px;margin-bottom:22px;}
  #ssl-site .s-features{display:flex;flex-direction:column;gap:14px;}
  #ssl-site .s-features .f{display:flex;align-items:center;gap:12px;font-size:13.5px;font-weight:600;color:var(--teal-dark);}
  #ssl-site .s-features svg{width:22px;height:22px;flex-shrink:0;color:var(--blue);}

  /* ---------- CONTACTO ---------- */
  #ssl-site .ssl-contacto{position:relative;background:var(--teal-dark);color:#fff;padding:0;overflow:hidden;}
  #ssl-site .contacto-media{position:relative;height:280px;}
  #ssl-site .contacto-media img{width:100%;height:100%;object-fit:cover;opacity:.55;}
  #ssl-site .contacto-media::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(23,44,47,0) 0%, var(--teal-dark) 100%);}
  #ssl-site .contacto-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;padding:64px 0 88px;}
  #ssl-site .contacto-grid h2{font-size:clamp(26px,3.4vw,36px);font-weight:600;color:#fff;margin-top:8px;}
  #ssl-site .contacto-grid p{color:#C9DADC;font-size:15.5px;max-width:460px;margin-top:16px;}
  #ssl-site .contact-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:20px;}
  #ssl-site .contact-list li{display:flex;align-items:center;gap:14px;font-size:15px;}
  #ssl-site .contact-list svg{width:20px;height:20px;color:#7FC4E8;flex-shrink:0;}
  #ssl-site .contact-list a:hover{color:#7FC4E8;}

  /* ---------- FOOTER ---------- */
  #ssl-site .ssl-footer{background:#152B2E;color:#93A6A8;padding:32px 0;font-size:13px;}
  #ssl-site .footer-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;}
  #ssl-site .footer-inner .ssl-logo-text b{color:#fff;}

  /* ---------- REVEAL ---------- */
  #ssl-site .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease;}
  #ssl-site .reveal.in{opacity:1;transform:none;}

  /* ---------- RESPONSIVE ---------- */
  @media(max-width:900px){
    #ssl-site .ssl-menu{position:fixed;inset:64px 0 0 0;background:#fff;flex-direction:column;padding:32px;gap:22px;
      align-items:flex-start;transform:translateX(100%);transition:transform .3s ease;height:calc(100vh - 64px);overflow:auto;}
    #ssl-site .ssl-menu.open{transform:translateX(0);}
    #ssl-site .ssl-burger{display:block;}
    #ssl-site .empresa-grid{grid-template-columns:1fr;gap:32px;}
    #ssl-site .ssl-manifest-inner{grid-template-columns:repeat(2,1fr);}
    #ssl-site .plate:nth-child(2){border-right:none;}
    #ssl-site .plate{border-bottom:1px solid rgba(255,255,255,.14);}
    #ssl-site .servicio,#ssl-site .servicio.rev{grid-template-columns:1fr;}
    #ssl-site .servicio.rev .s-media, #ssl-site .servicio.rev .s-copy{order:0;}
    #ssl-site .s-media{min-height:220px;}
    #ssl-site .contacto-grid{grid-template-columns:1fr;padding:48px 0 56px;}
    #ssl-site section{padding:64px 0;}
  }
  @media(prefers-reduced-motion:reduce){
    #ssl-site .reveal{opacity:1;transform:none;transition:none;}
  }
