
  :root{
    --green:#1E3A2F; --green-d:#142720; --gold:#C1A255; --cream:#F4F1EA;
    --ink:#0E1A15; --muted:#6b7a72;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  body{
    font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
    background:var(--cream); color:var(--ink); line-height:1.5;
  }
  .serif{font-family:Georgia,"Times New Roman",serif;}
  .wrap{max-width:560px; margin:0 auto; padding:0 16px;}

  /* ---------- CARRUSEL ---------- */
  .carousel{position:relative; margin:24px auto; max-width:560px;}
  .slides{overflow:hidden; border-radius:16px;}
  .track{display:flex; transition:transform .4s ease;}
  .slide{min-width:100%; aspect-ratio:4/5; display:flex; flex-direction:column;
    align-items:center; justify-content:center; text-align:center; padding:38px 34px; position:relative;}
  .slide .frame{position:absolute; inset:22px; border:1.5px solid var(--gold); opacity:.5; border-radius:6px; pointer-events:none;}
  .slide.dark{background:var(--green);}
  .slide.darker{background:linear-gradient(160deg,var(--green-d),var(--green));}
  .slide.light{background:var(--cream); border:1px solid #0002;}
  .eyebrow{font-size:13px; letter-spacing:4px; color:var(--gold); margin-bottom:14px;}
  .rule{width:90px; height:2.5px; background:var(--gold); margin:14px auto;}
  .badge{position:absolute; bottom:30px; right:30px; width:42px; height:42px; border:1.5px solid var(--gold);
    border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--gold); font-size:18px;}
  .mono-logo{width:78px; height:78px; border:2.5px solid var(--gold); border-radius:6px;
    display:flex; align-items:center; justify-content:center; margin-bottom:10px;}
  .mono-logo span{font-family:Georgia,serif; font-weight:700; font-size:42px; color:var(--gold); letter-spacing:2px;}
  .brand-name{font-family:Georgia,serif; font-size:24px; letter-spacing:8px; color:var(--gold);}
  .brand-sub{font-size:13px; letter-spacing:9px; color:var(--gold); margin-top:3px;}
  .h-white{color:#fff;} .h-gold{color:var(--gold);} .h-green{color:var(--green);}
  .list{text-align:left; margin-top:18px; width:100%; max-width:380px;}
  .list .item{display:flex; gap:14px; align-items:flex-start; margin-bottom:16px;}
  .dot{width:13px; height:13px; border-radius:50%; background:var(--gold); margin-top:6px; flex:none;}
  .item-t{font-family:Georgia,serif; font-weight:700; font-size:21px;}
  .item-d{font-size:14px; color:#cbd6cf;}
  .light .item-d{color:#4a5b53;}
  .card-row{width:100%; max-width:400px; text-align:left; border:1.5px solid #C1A25588; border-radius:8px;
    padding:14px 18px; margin-bottom:12px;}
  .card-row .t{font-family:Georgia,serif; font-weight:700; font-size:20px; color:var(--gold);}
  .card-row .d{font-size:13.5px; color:#cbd6cf;}

  /* carousel controls */
  .nav{display:flex; align-items:center; justify-content:center; gap:16px; margin-top:16px;}
  .nav button{background:var(--green); color:var(--cream); border:none; width:40px; height:40px;
    border-radius:50%; font-size:18px; cursor:pointer;}
  .nav button:disabled{opacity:.3; cursor:default;}
  .dots{display:flex; gap:8px;}
  .dots i{width:9px; height:9px; border-radius:50%; background:#0003; cursor:pointer; transition:.2s;}
  .dots i.on{background:var(--green); width:24px; border-radius:5px;}

  /* ---------- GATE + CALC ---------- */
  .gate, .calc{max-width:480px; margin:8px auto 0;}
  .panel{background:#fff; border:1px solid #1E3A2F22; border-radius:14px; padding:24px;
    box-shadow:0 2px 24px rgba(20,39,32,.08);}
  .gate h2{font-family:Georgia,serif; font-size:22px; color:var(--green); margin-bottom:8px;}
  .gate p{font-size:14px; color:var(--muted); margin-bottom:18px;}
  .field{margin-bottom:14px;}
  .field label{display:block; font-size:13px; font-weight:600; color:var(--green); margin-bottom:6px;}
  .field input[type=text], .field input[type=number], .field input[type=email]{width:100%; padding:12px 14px; font-size:16px;
    font-family:Georgia,serif; color:var(--ink); background:#fff; border:1.5px solid #1E3A2F33;
    border-radius:8px; outline:none;}
  .field input:focus{border-color:var(--gold);}
  .field .suffix{position:relative;}
  .field .suffix span{position:absolute; right:14px; top:50%; transform:translateY(-50%); color:var(--green); font-weight:600;}
  .field .suffix input{padding-right:52px;}
  .hint{font-size:12px; color:var(--muted); margin-top:4px;}
  .consent{display:flex; gap:10px; align-items:flex-start; margin:14px 0; font-size:12.5px; color:var(--muted);}
  .consent input{margin-top:3px;}
  .consent a{color:var(--green);}
  .btn{background:var(--gold); color:var(--green-d); border:none; padding:14px 22px; font-size:14px;
    font-weight:700; letter-spacing:1px; border-radius:30px; cursor:pointer; width:100%;}
  .btn:disabled{opacity:.45; cursor:default;}
  .err{color:#a32d2d; font-size:13px; margin-top:8px; display:none;}

  .calc{display:none;}
  .tabs{display:flex; gap:6px; background:#fff; padding:5px; border-radius:10px; border:1px solid #1E3A2F22; margin-bottom:18px;}
  .tabs button{flex:1; padding:11px 8px; font-size:14px; font-weight:700; border:none; border-radius:7px;
    background:transparent; color:var(--green); cursor:pointer;}
  .tabs button.on{background:var(--green); color:var(--cream);}
  .toggle{display:flex; gap:6px; margin-bottom:16px; flex-wrap:wrap;}
  .toggle button{flex:1 1 auto; padding:10px 12px; font-size:13px; font-weight:600; cursor:pointer;
    border:1.5px solid #1E3A2F33; background:transparent; color:var(--green); border-radius:8px;}
  .toggle button.on{background:var(--gold); border-color:var(--gold); color:var(--green-d);}
  .results{background:var(--green); border-radius:12px; padding:18px 22px; margin-top:6px;}
  .rrow{display:flex; justify-content:space-between; align-items:baseline; padding:7px 0; border-top:1px solid #ffffff22;}
  .rrow .l{font-size:14px; color:var(--cream); opacity:.85;}
  .rrow .v{font-size:15px; font-family:Georgia,serif; color:#fff;}
  .rrow.strong{border-top:1.5px solid var(--gold); padding:13px 0;}
  .rrow.strong .l{font-size:16px; color:#fff; opacity:1;}
  .rrow.strong .v{font-size:24px; font-weight:700; color:var(--gold);}
  .rrow .v.accent{color:var(--gold);}
  .tramos{margin-top:12px; font-size:12.5px; color:var(--green);}
  .tramos .tr{display:flex; justify-content:space-between; padding:2px 0; opacity:.85;}
  .smallnote{font-size:11.5px; color:var(--muted); margin-top:10px;}
  .nota{font-size:12.5px; color:var(--green); background:#C1A25522; padding:10px 12px; border-radius:8px; margin-top:12px; display:none;}
  .disclaimer{font-size:11px; color:#90a096; text-align:center; margin:18px auto 30px; max-width:480px; line-height:1.5; padding:0 16px;}
  .head{text-align:center; margin:22px 0;}
  .head .mini-logo{display:inline-flex; align-items:center; justify-content:center; width:54px; height:54px;
    border:2px solid var(--gold); border-radius:6px; margin-bottom:8px;}
  .head .mini-logo span{font-family:Georgia,serif; font-weight:700; font-size:26px; color:var(--green); letter-spacing:1px;}
  .head .bn{font-family:Georgia,serif; font-size:18px; letter-spacing:4px; color:var(--green);}
  .head .bs{font-size:10px; letter-spacing:6px; color:var(--gold); margin-top:2px;}
  .head h1{font-family:Georgia,serif; font-size:22px; color:var(--green); margin-top:12px;}
  .head .tag{font-size:13px; color:var(--muted);}

body[data-view="focused"] .tabs{display:none}
.wizard-progress{display:flex;align-items:center;justify-content:center;margin:18px 0 16px;padding:0 10px}
.wizard-progress-item{display:flex;align-items:center;gap:7px;color:var(--muted);white-space:nowrap}
.wizard-progress-item span{display:grid;place-items:center;width:28px;height:28px;border:1px solid #1E3A2F33;border-radius:50%;font-size:12px;font-weight:800;background:#fff}
.wizard-progress-item strong{font-size:12px;font-weight:650}
.wizard-progress-item.on{color:var(--green)}
.wizard-progress-item.on span{background:var(--green);border-color:var(--green);color:#fff}
.wizard-progress-item.done span{background:var(--gold);border-color:var(--gold);color:var(--green-d)}
.wizard-progress-line{height:1px;min-width:22px;flex:1;max-width:58px;background:#1E3A2F22;margin:0 8px}
.wizard-step h2{font-family:Georgia,"Times New Roman",serif;font-size:25px;line-height:1.2;color:var(--green);margin:0 0 20px}
.step-kicker{text-transform:uppercase;letter-spacing:1.8px;font-size:11px;font-weight:800;color:var(--gold);margin-bottom:5px}
.special-case{padding:12px;border:1px solid #C1A25566;border-radius:9px;background:#C1A25512}
.helper-box,.ibi-group{border:1px solid #1E3A2F22;border-radius:10px;background:#f8faf8;padding:14px;margin:0 0 18px}
.helper-box summary{color:var(--green);font-size:13px}.helper-box p,.ibi-group>p{font-size:12.5px;color:var(--muted);margin-top:8px}.ibi-group .field{margin-top:12px}
.result-hero{text-align:center;padding:4px 0 20px;border-bottom:1px solid #ffffff2b;margin-bottom:4px}
.result-hero span{display:block;color:var(--cream);font-size:13px;opacity:.82;margin-bottom:5px}
.result-hero output{display:block;font-family:Georgia,"Times New Roman",serif;color:var(--gold);font-size:32px;font-weight:700;line-height:1.15}
.wizard-actions{position:sticky;bottom:0;z-index:4;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:14px;padding:12px 4px;background:linear-gradient(180deg,rgba(244,241,234,.72),var(--cream) 28%)}
.wizard-actions button{min-height:44px;border-radius:24px;padding:10px 18px;font-size:13px;font-weight:750;cursor:pointer}
.wizard-back{justify-self:start;border:1px solid #1E3A2F44;background:#fff;color:var(--green)}
.wizard-next{justify-self:end;border:1px solid var(--gold);background:var(--gold);color:var(--green-d)}
#wizardHint{text-align:center;font-size:12px;color:var(--muted);max-width:240px}.contact-area{border-top:1px solid #1E3A2F22;padding-top:22px}
@media(max-width:540px){.wizard-progress-item strong{display:none}.wizard-progress-line{max-width:72px}.wizard-step h2{font-size:22px}.wizard-actions button{padding:9px 14px}.result-hero output{font-size:27px}}

.calc{display:block;max-width:680px}.wrap{padding:0 16px}.review-notice{font-size:13px;border-left:3px solid var(--gold);padding:12px;background:#fff;margin:16px 0}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#contactForm{text-align:left;background:#fff;padding:24px;border-radius:14px}#email{display:block;width:100%;padding:12px;margin:8px 0;border:1px solid #88998f;border-radius:8px;font-size:16px;background:#f7f7f5}#sendStatus,#leadStatus{font-size:13px;margin-top:12px}.rrow{gap:16px}.rrow .v{max-width:52%;text-align:right;overflow-wrap:anywhere}.rrow.strong .v{font-size:20px}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media(max-width:420px){.panel{padding:16px}.rrow .l{font-size:13px}.rrow.strong .v{font-size:17px}}

[hidden]{display:none!important}.field select{width:100%;padding:12px;font-size:16px;color:var(--ink);border:1px solid #88998f;border-radius:8px;background:white}.calc-status{font-size:13px;margin:14px 0;color:#67501d}.contact-area{margin:24px 0}.contact-area h2{font-family:Georgia,serif;margin-bottom:16px}details{padding:14px 0}summary{cursor:pointer;font-weight:600}.fiscal-sources{font-size:12px;padding:20px 0}ul{padding-left:20px}a{color:var(--green)}.field input:user-invalid{border-color:#a32d2d}.choice-group{border:0;margin:16px 0;padding:0}.choice-group legend{font-size:13px;font-weight:700;color:var(--green);margin-bottom:8px}.fixed-costs{border:1px solid #1E3A2F22;border-radius:10px;padding:6px 14px;margin:12px 0 18px}.fixed-costs div{display:flex;justify-content:space-between;padding:9px 0;border-top:1px solid #1E3A2F18}.fixed-costs div:first-child{border-top:0}.fixed-costs strong{color:var(--green)}.exemption-toggle button{flex-basis:100%}.gate{padding-bottom:28px}.gate .head{margin-top:28px}.gate .panel{margin-bottom:24px}
