 :root{
    --paper:#EFF2EF; --paper-raised:#F8FAF8; --ink:#16211F; --ink-soft:#4B5854;
    --ink-faint:#7C8985; --rule:#CBD4CE; --rule-soft:#DEE4E0;
    --rust:#A8451F; --rust-dark:#8A3818; --rust-tint:#F5E6DD;
    --verdi:#3E6358; --verdi-tint:#E4ECE8; --steel:#2C4A63; --white:#FFFFFF;
    --shadow: 0 1px 2px rgba(22,33,31,0.06), 0 8px 24px -12px rgba(22,33,31,0.15);
  }
  
.wrap{
  max-width:960px;
  margin:0 auto;
  padding:0 28px;
}

.narrow{
  max-width:720px;
}

  .mast{border-bottom:1px solid var(--rule); padding:16px 0;}
  .mast .wrap{display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;}
  .mast-brand{font-family:'Open Sans',sans-serif; font-size:13.5px; letter-spacing:.02em; text-transform:none; color:var(--ink-soft); display:flex; align-items:center; gap:6px;}
  .mast-brand::before{content:"←"; color:var(--rust); font-weight:700; font-size:15px;}
  .mast-brand strong{color:var(--ink); font-weight:600;}
  .mast-brand a{color:var(--rust); text-decoration:none; font-weight:600; border-bottom:1px solid transparent; transition:border-color .15s ease;}
  .mast-brand a:hover{border-color:var(--rust);}
  .mast-tag{font-family:'Open Sans',sans-serif; font-size:11.5px; letter-spacing:.05em; color:var(--verdi); border:1px solid var(--verdi); border-radius:100px; padding:4px 12px;}

  .hero{padding:56px 0 0;}
  .eyebrow{font-family:'Open Sans',sans-serif; font-size:12.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--rust); display:flex; align-items:center; gap:10px; margin-bottom:18px;}
  .eyebrow::before{content:""; width:26px; height:1px; background:var(--rust); display:inline-block;}
  h1.title{font-family:'Open Sans',sans-serif; font-weight:600; font-size:clamp(2rem,4.2vw,3rem); line-height:1.08; letter-spacing:-.01em; margin:0 0 28px; color:var(--ink); max-width:16ch;}

  .pain-block{background:var(--white); border:1px solid var(--rule); padding:30px 32px; box-shadow:var(--shadow);}
  .pain-lead{font-family:'Open Sans',sans-serif; font-style:italic; font-size:14px; margin:0 0 18px; color:var(--ink);}
  .pain-list{list-style:none; margin:0 0 22px; padding:0; display:flex; flex-direction:column; gap:13px;}
  .pain-list li{display:flex; align-items:flex-start; gap:12px; color:var(--ink-soft); font-size:12px;}
  .pain-mark{flex-shrink:0; width:16px; height:16px; margin-top:4px; border:1.5px solid var(--rust); border-radius:3px; position:relative;}
  .pain-close{margin:0; padding-top:18px; border-top:1px solid var(--rule-soft); font-weight:600; color:var(--ink); font-size:14px;}

  .section-kicker{font-family:'Open Sans',sans-serif; font-size:12px; letter-spacing:.07em; text-transform:uppercase; color:var(--ink-faint);}

  .pitch{display:grid; grid-template-columns:1.5fr 1fr; gap:48px; margin-top:68px; align-items:start;}
  .pitch h2{font-family:'Open Sans',sans-serif; font-weight:600; font-style:italic; font-size:1.55rem; margin:0 0 16px; color:var(--ink); line-height:1.2;}
  .pitch h3{font-family:'Open Sans',sans-serif; font-weight:600; font-style:italic; font-size:1.25rem; margin:38px 0 14px; color:var(--ink);}
  .pitch p{color:var(--ink-soft); margin:0 0 14px;}
  .step-list{list-style:none; margin:18px 0 20px; padding:0; display:flex; flex-direction:column; gap:14px;}
  .step-list li{display:flex; gap:14px; align-items:flex-start; color:var(--ink-soft);}
  .step-num{flex-shrink:0; width:26px; height:26px; border-radius:50%; background:var(--verdi); color:#fff; font-family:'Open Sans',sans-serif; font-size:12px; font-weight:600; display:flex; align-items:center; justify-content:center;}
  .pitch-figure{position:sticky; top:24px;}
  .pitch-figure img{width:100%; border:1px solid var(--rule); display:block;}
  .pitch-figure figcaption{font-size:14px; font-style:italic; color:var(--ink-faint); margin-top:10px; line-height:1.45;}

  .servicios{margin-top:76px;}
  .servicios h2{font-family:'Open Sans',sans-serif; font-weight:600; font-size:1.7rem; margin:8px 0 26px;}
  .svc-grid{display:grid; grid-template-columns:1fr 1fr; gap:14px;}
  .svc-card{background:var(--white); border:1px solid var(--rule); border-left:3px solid var(--rust); padding:20px 22px; box-shadow:var(--shadow);}
  .svc-name{font-family:'Open Sans',sans-serif; font-weight:600; font-size:1.05rem; margin:0 0 8px; color:var(--ink);}
  .svc-desc{margin:0; font-size:.92rem; color:var(--ink-soft);}

  .figure2{margin-top:56px;}
  .figure2 img{width:100%; display:block; filter:grayscale(15%) saturate(94%);}
  .figure2 figcaption{font-size:14px; font-style:italic; color:var(--ink-faint); margin-top:10px;}

  .resources{margin-top:40px; display:grid; grid-template-columns:1fr 1fr; gap:14px;}
  .resource-btn{display:flex; flex-direction:column; gap:6px; background:var(--verdi-tint); border:1px solid #C7D8D0; padding:18px 20px; text-decoration:none; color:var(--verdi); transition:transform .15s ease, border-color .15s ease;}
  .resource-btn:hover{transform:translateY(-2px); border-color:var(--verdi);}
  .resource-btn span:first-child{font-family:'Open Sans',sans-serif; font-size:11px; letter-spacing:.04em; text-transform:uppercase; opacity:.75;}
  .rb-cta{font-family:'Open Sans',sans-serif; font-weight:600; font-size:1.05rem; color:var(--verdi);}

  .iniciar{margin-top:76px;  border:1px solid #E4C3AF; padding:32px 34px;}
  .iniciar .section-kicker{color:var(--ink-faint);}
  .iniciar h2{font-family:'Open Sans',sans-serif; font-style:italic; font-weight:600; font-size:16px; margin:8px 0 16px; color:var(--rust-dark);}
  .iniciar p{margin:0 0 13px;}
  .iniciar p:last-child{margin-bottom:0;}

  .contacto{margin:70px 0 40px;}
  .contacto h2{font-family:'Open Sans',sans-serif; font-weight:600; font-size:1.5rem; margin:8px 0 14px;}
  .contacto > .wrap-intro{color:var(--ink-soft); max-width:62ch; margin-bottom:26px;}
  .contact-grid{display:grid; grid-template-columns:1fr 1fr; gap:14px;}
  .contact-card{background:var(--white); border:1px solid var(--rule); padding:20px 22px; box-shadow:var(--shadow);}
  .contact-photo{width:64px; height:64px; border-radius:50%; object-fit:cover; margin-bottom:10px; display:block; background:var(--paper-raised);}
  .contact-name{font-family:'Open Sans',sans-serif; font-weight:600; font-size:1.02rem; margin:0 0 4px; color:var(--ink);}
  .contact-role{font-size:.85rem; color:var(--ink-faint); margin:0 0 8px;}
  .contact-email{color:var(--steel); font-size:14px; text-decoration:none; border-bottom:1px solid var(--rule);}
  .contact-email:hover{border-color:var(--steel);}


  @media (max-width:760px){
    .wrap{padding:0 20px;}
    .pitch{grid-template-columns:1fr; gap:30px;}
    .pitch-figure{position:static; max-width:280px; margin:0 auto;}
    .svc-grid{grid-template-columns:1fr;}
    .resources{grid-template-columns:1fr;}
    .contact-grid{grid-template-columns:1fr;}
    .pain-block{padding:24px 22px;}
  }