/* Start custom CSS for section, class: .elementor-element-afd123a */.elementor-393230 .elementor-element.elementor-element-afd123a{
    --ink:#241017;
    --espresso:#2A140C;
    --espresso-light:#3D2113;
    --cream:#FFF3E4;
    --cream-soft:#FFFAF2;
    --wine:#E8452C;
    --wine-deep:#B22F1B;
    --gold:#F0A93C;
    --teal:#1E8A7C;
    --teal-deep:#125E54;
    --line: rgba(36,16,23,0.14);
    display:block;
    background:var(--espresso);
    color:var(--cream-soft);
    font-family:'Work Sans', sans-serif;
    line-height:1.6;
  }
  .elementor-393230 .elementor-element.elementor-element-afd123a *{box-sizing:border-box;}
  .wrap{max-width:880px;margin:0 auto;padding:0 28px;}

  /* HERO */
  .hero{
    padding:72px 0 56px;
    background:
      radial-gradient(ellipse at top right, rgba(184,145,47,0.14), transparent 55%),
      var(--espresso);
    border-bottom:1px solid rgba(241,230,206,0.12);
  }
  .eyebrow{
    font-family:'IBM Plex Mono', monospace;
    font-size:12px;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--gold);
    margin-bottom:18px;
  }
  h1{
    font-family:'Fraunces', serif;
    font-weight:500;
    font-size:clamp(34px,5vw,54px);
    line-height:1.08;
    margin:0 0 20px;
    color:var(--cream);
    max-width:11ch;
  }
  .hero p.lead{
    font-size:18px;
    max-width:52ch;
    color:rgba(241,230,206,0.82);
    margin:0 0 32px;
  }
  .hero-visual{
    display:flex;
    align-items:center;
    gap:22px;
    margin-top:8px;
  }
  .hero-caption{
    font-family:'IBM Plex Mono', monospace;
    font-size:12px;
    color:rgba(255,243,228,0.6);
    letter-spacing:.02em;
  }
  .hero-caption strong{color:var(--gold);font-weight:600;}

  /* BODY */
  main{background:var(--cream-soft);color:var(--ink);}
  section{padding:56px 0;}
  section + section{border-top:1px solid var(--line);}
  h2{
    font-family:'Fraunces', serif;
    font-weight:500;
    font-size:30px;
    margin:0 0 22px;
    color:var(--wine-deep);
  }
  h3{
    font-family:'Fraunces', serif;
    font-size:19px;
    font-weight:500;
    margin:0 0 8px;
  }
  p{margin:0 0 16px;max-width:68ch;}

  /* HAND SCALE — signature element */
  .scale-block{
    background:var(--espresso);
    border-radius:18px;
    padding:36px 28px 28px;
    margin:28px 0 8px;
  }
  .scale-row{
    display:flex;
    align-items:flex-end;
    gap:14px;
    overflow-x:auto;
    padding-bottom:6px;
  }
  .scale-item{
    flex:0 0 auto;
    text-align:center;
  }
  .scale-item svg{display:block;margin:0 auto 8px;}
  .scale-num{
    font-family:'IBM Plex Mono', monospace;
    font-size:13px;
    color:var(--cream);
    background:rgba(184,145,47,0.18);
    border:1px solid rgba(184,145,47,0.4);
    border-radius:20px;
    padding:2px 10px;
  }
  .scale-caption{
    font-family:'IBM Plex Mono', monospace;
    font-size:12px;
    color:rgba(241,230,206,0.6);
    margin-top:16px;
  }

  /* MEASURE DIAGRAM */
  .measure-block{
    display:flex;
    gap:32px;
    align-items:center;
    background:var(--espresso);
    border-radius:18px;
    padding:28px;
    margin:28px 0 8px;
    flex-wrap:wrap;
  }
  .measure-block svg{flex:0 0 auto;}
  .measure-text{flex:1 1 240px;min-width:220px;}
  .measure-text p{
    color:rgba(241,230,206,0.85);
    font-size:14.5px;
    margin:0 0 10px;
    max-width:none;
  }
  .measure-point{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-family:'IBM Plex Mono', monospace;
    font-size:13px;
    color:var(--cream);
    margin:6px 0;
  }
  .measure-point .dot{
    width:18px;height:18px;
    border-radius:50%;
    display:inline-flex;
    align-items:center;justify-content:center;
    font-size:11px;
    color:var(--espresso);
    font-weight:600;
  }
  .dot-a{background:#F0A93C;}
  .dot-b{background:#E8452C;}

  /* TABLE */
  table{
    width:100%;
    border-collapse:collapse;
    margin:24px 0 8px;
    font-size:15px;
  }
  caption{
    text-align:left;
    font-family:'IBM Plex Mono', monospace;
    font-size:12px;
    color:var(--wine-deep);
    letter-spacing:.04em;
    text-transform:uppercase;
    margin-bottom:10px;
  }
  th,td{
    text-align:left;
    padding:12px 14px;
    border-bottom:1px solid var(--line);
  }
  th{
    font-family:'IBM Plex Mono', monospace;
    font-size:12px;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:var(--wine-deep);
    font-weight:500;
  }
  tr:last-child td{border-bottom:none;}

  /* ICON CARDS — usadas en "de qué depende" y en "cuidados" */
  .icon-card{
    border-radius:16px;
    padding:22px;
    display:flex;
    flex-direction:column;
    gap:14px;
  }
  .icon-badge{
    width:42px;
    height:42px;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
  }
  .icon-badge svg{width:21px;height:21px;color:var(--cream-soft);}
  .icon-card h4{
    font-family:'Fraunces', serif;
    font-size:16.5px;
    font-weight:500;
    margin:0;
  }
  .icon-card p{font-size:14px;margin:0;line-height:1.55;}
  .icon-coral{background:rgba(232,69,44,0.09);}
  .icon-coral .icon-badge{background:var(--wine);}
  .icon-coral h4{color:var(--wine-deep);}
  .icon-coral p{color:rgba(178,47,27,0.82);}
  .icon-teal{background:rgba(30,138,124,0.09);}
  .icon-teal .icon-badge{background:var(--teal);}
  .icon-teal h4{color:var(--teal-deep);}
  .icon-teal p{color:rgba(18,94,84,0.82);}
  .icon-gold{background:rgba(240,169,60,0.13);}
  .icon-gold .icon-badge{background:var(--gold);}
  .icon-gold h4{color:#8a5a13;}
  .icon-gold p{color:rgba(122,79,15,0.82);}

  /* FACTOR CARDS */
  .factors{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    margin-top:8px;
  }
  @media (max-width:640px){.factors{grid-template-columns:1fr;}}

  /* STEPS */
  .steps{list-style:none;margin:24px 0 0;padding:0;counter-reset:step;}
  .steps li{
    counter-increment:step;
    position:relative;
    padding:0 0 20px 46px;
    border-left:1px solid var(--line);
    margin-left:14px;
  }
  .steps li:last-child{border-left:1px solid transparent;padding-bottom:0;}
  .steps li::before{
    content:counter(step);
    position:absolute;
    left:-14px;
    top:-2px;
    width:28px;height:28px;
    border-radius:50%;
    background:var(--wine);
    color:var(--cream);
    font-family:'IBM Plex Mono', monospace;
    font-size:13px;
    display:flex;align-items:center;justify-content:center;
  }

  /* FAQ */
  details{
    border-bottom:1px solid var(--line);
    padding:16px 0;
  }
  summary{
    font-family:'Fraunces', serif;
    font-size:17px;
    cursor:pointer;
    list-style:none;
    display:flex;
    justify-content:space-between;
    align-items:center;
  }
  summary::-webkit-details-marker{display:none;}
  summary::after{
    content:'+';
    font-family:'IBM Plex Mono', monospace;
    color:var(--wine);
    font-size:20px;
  }
  details[open] summary::after{content:'–';}
  details p{margin-top:12px;color:rgba(42,27,20,0.78);}

  /* CTA */
  .cta{
    background:var(--wine);
    border-radius:20px;
    padding:40px 36px;
    display:flex;
    flex-direction:column;
    gap:20px;
  }
  .cta-icon{
    width:48px;
    height:48px;
    border-radius:14px;
    background:rgba(255,243,228,0.16);
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
  }
  .cta-icon svg{width:24px;height:24px;color:var(--cream);}
  .cta h3{color:var(--cream);margin:0 0 6px;font-size:23px;}
  .cta p{color:rgba(255,243,228,0.82);margin:0;max-width:44ch;font-size:14.5px;}
  .cta-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    flex-wrap:wrap;
    padding-top:20px;
    border-top:1px solid rgba(255,243,228,0.18);
  }
  .discount{
    display:inline-flex;
    align-items:center;
    gap:10px;
    background:rgba(255,243,228,0.12);
    border:1px dashed rgba(255,243,228,0.45);
    border-radius:30px;
    padding:8px 20px 8px 8px;
    font-size:13.5px;
    color:var(--cream);
  }
  .discount-badge{
    width:30px;
    height:30px;
    border-radius:50%;
    background:var(--gold);
    color:var(--espresso);
    font-family:'IBM Plex Mono', monospace;
    font-size:11px;
    font-weight:600;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
  }
  .discount strong{color:var(--gold);}
  .btn{
    background:var(--cream);
    color:var(--wine-deep);
    font-family:'IBM Plex Mono', monospace;
    font-size:13px;
    letter-spacing:.04em;
    text-transform:uppercase;
    padding:14px 26px;
    border-radius:30px;
    text-decoration:none;
    white-space:nowrap;
    transition:transform .15s ease;
  }
  .btn:hover{transform:translateY(-2px);}

  @media (max-width:640px){
    .factors{grid-template-columns:1fr;}
    .cta-bottom{flex-direction:column;align-items:flex-start;}
  }/* End custom CSS */