*{box-sizing:border-box} :root{--orange:#ff861f;--ink:#111111;--muted:#777777;--paper:#f6f6f6;--line:#e7e7e7;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;color:#171717;font-family:var(--sans);font-size:14px;line-height:1.55;background:#fff}a{color:inherit;text-decoration:none}.container{width:min(1110px,calc(100% - 48px));margin:0 auto}.site-header{height:58px;background:#101010;color:#fff;border-bottom:1px solid #2a2a2a;position:sticky;top:0;z-index:20}.nav-wrap{width:min(1110px,calc(100% - 48px));height:100%;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:10px;min-width:235px}.logo-placeholder{width:31px;height:31px;border:1px solid #64513b;border-radius:8px;display:grid;place-items:center;color:var(--orange);font-family:var(--serif);font-size:18px;flex-shrink:0}.brand-copy{display:flex;flex-direction:column;line-height:1.25}.brand-name{font-family:var(--serif);letter-spacing:1.6px;font-size:13px}.brand-tag{font-size:7px;letter-spacing:1.5px;color:var(--orange);margin-top:3px}.main-nav{display:flex;gap:27px;align-items:center;font-size:11px;color:#eee}.main-nav a:hover{color:var(--orange)}.button{display:inline-flex;justify-content:center;align-items:center;min-height:41px;padding:0 16px;border-radius:7px;font:700 12px var(--sans);border:1px solid transparent;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-1px)}.button-orange{background:var(--orange);color:#111}.button-orange:hover{background:#ff9b42}.button-outline{border-color:#454545;color:#fff;background:transparent}.nav-cta{min-height:35px;padding:0 15px;font-size:11px}.menu-toggle{display:none;background:none;color:white;border:0;font-size:22px}.hero{background:linear-gradient(110deg,#0b0b0b 0%,#151515 72%,#28170d 100%);color:white;position:relative;overflow:hidden;padding:68px 0 53px;min-height:430px}.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:85px;position:relative;z-index:1}.eyebrow{color:var(--orange);font-size:10px;font-weight:700;letter-spacing:1.8px;margin:0 0 14px}.hero h1{font:500 clamp(42px,5vw,58px)/.99 var(--serif);letter-spacing:-1.8px;margin:0 0 20px}.hero-description{max-width:550px;color:#d0d0d0;font-size:14px;line-height:1.65;margin:0 0 20px}.hero-actions{display:flex;gap:9px}.trust-row{display:flex;gap:20px;flex-wrap:wrap;color:#c9c9c9;font-size:10px;margin-top:26px}.trust-row span::first-letter{color:var(--orange)}.steps-card{background:rgba(48,45,43,.83);border:1px solid #47423f;border-radius:18px;padding:22px 22px 12px;max-width:390px;box-shadow:0 12px 40px #0002}.steps-card h2{font:500 19px var(--serif);margin:0 0 16px}.mini-step{display:flex;gap:12px;padding:11px 0;border-bottom:1px solid #494542;align-items:flex-start}.mini-step:last-child{border:0}.mini-step>span{display:grid;place-items:center;background:var(--orange);color:#111;border-radius:50%;width:22px;height:22px;font-weight:700;font-size:11px;flex-shrink:0}.mini-step strong,.mini-step small{display:block}.mini-step strong{font-size:11px;margin:1px 0 3px}.mini-step small{font-size:10px;color:#bdbdbd}.hero-orbit{position:absolute;border:1px solid #6b3d1b;border-radius:50%;pointer-events:none}.orbit-one{width:390px;height:390px;right:-230px;top:-220px;box-shadow:0 0 0 45px #a65b1a0b,0 0 0 90px #a65b1a0a}.orbit-two{width:220px;height:220px;right:-85px;top:-100px;border-color:#50301b}.plans-section{background:var(--paper);padding:62px 0 60px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px}.section-heading h2,.process-intro h2{font:500 38px/1.12 var(--serif);letter-spacing:-.6px;margin:0}.plans-heading>p{max-width:420px;color:#777;font-size:12px;margin:0 0 4px}.plans-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:25px}.plan-card{position:relative;background:white;border:1px solid #e8e8e8;border-radius:15px;padding:22px 22px 19px;box-shadow:0 5px 20px #00000006;display:flex;flex-direction:column;min-width:0}.plan-card.featured{border:1.5px solid var(--orange);box-shadow:0 8px 30px #0000000c}.plan-card h3{font:500 21px var(--serif);margin:0 0 3px}.plan-description{color:#777;font-size:10px;min-height:31px;margin:0 0 15px;max-width:95%}.price{font:700 26px/1.2 var(--sans);letter-spacing:-1px;margin-top:3px}.price small{font:400 10px var(--sans);letter-spacing:0}.tax-note{color:#777;font-size:9px;margin:4px 0 13px}.plan-card hr{border:0;border-top:1px solid #e6e6e6;width:100%;margin:0 0 12px}.plan-card ul{list-style:none;padding:0;margin:0 0 16px;flex:1}.plan-card li{position:relative;padding-left:17px;font-size:10px;line-height:1.55;margin:0 0 8px}.plan-card li:before{content:"✓";position:absolute;left:0;top:0;color:#f36e19;font-size:13px}.button-card{width:100%;min-height:36px;border-color:#dedede;color:#111;background:#fff;font-size:11px}.button-card.button-orange{border-color:var(--orange);background:var(--orange)}.plan-badge{position:absolute;right:14px;top:13px;background:#fff0e5;color:#9b4308;font-size:9px;font-weight:700;padding:4px 9px;border-radius:20px}.dark-card{background:linear-gradient(140deg,#171717,#252525);color:#fff;border-color:#252525}.dark-card .plan-description,.dark-card .tax-note{color:#c6c6c6}.dark-card hr{border-color:#3b3b3b}.dark-card .price{color:var(--orange)}.dark-card .button-card{color:#111}.fine-print{text-align:center;color:#888;font-size:10px;margin:18px 0 0}.process-section{padding:65px 0 70px;background:#fff}.process-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}.process-intro h2{font-size:38px;margin-bottom:16px}.process-intro>p:not(.eyebrow){font-size:12px;color:#777;max-width:430px;margin:0 0 15px}.process-list{display:flex;flex-direction:column;gap:9px}.process-item{display:flex;align-items:center;gap:13px;border:1px solid #e8e8e8;border-radius:12px;padding:13px 15px;min-height:66px}.process-item>span{display:grid;place-items:center;flex-shrink:0;background:#111;color:var(--orange);font-weight:700;border-radius:9px;width:28px;height:28px;font-size:11px}.process-item strong{font-size:12px}.process-item p{font-size:10px;color:#777;margin:2px 0 0}.diagnostic-cta{background:#111;color:#fff;padding:42px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-inner h2{font:500 31px/1.12 var(--serif);margin:0 0 8px}.cta-inner p{font-size:12px;color:#c9c9c9;margin:0}.contact-section{padding:62px 0;background:#f6f6f6}.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px}.contact-grid h2{font:500 34px/1.15 var(--serif);margin:0 0 13px}.contact-grid>div>p:not(.eyebrow){color:#777;font-size:13px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contact-form label{font-size:11px;font-weight:700;display:flex;flex-direction:column;gap:6px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #dedede;border-radius:7px;background:#fff;padding:12px;font:400 12px var(--sans);color:#222;outline:none}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--orange)}.full-field{grid-column:1/-1}.contact-form button{width:100%}.form-note,.form-status{font-size:10px;color:#777;margin:0}.form-status{color:#91420b}.site-footer{background:#080808;color:#fff;padding:25px 0}.footer-inner{display:grid;grid-template-columns:.45fr 1.55fr;gap:60px;align-items:start}.footer-inner>div{display:flex;flex-direction:column;font-size:10px}.footer-inner>div strong{font-size:11px}.footer-inner>div span{color:#aaa;font-size:9px}.footer-inner p{font-size:9px;color:#bcbcbc;line-height:1.6;margin:0}
@media(min-width:1200px){.hero{padding-top:68px;padding-bottom:53px}}@media(max-width:800px){.nav-wrap{gap:12px}.brand{min-width:0}.main-nav{gap:13px}.hero-grid{gap:35px;grid-template-columns:1.1fr .9fr}.hero h1{font-size:44px}.trust-row{gap:10px}.process-grid{gap:35px}.contact-grid{gap:35px}}@media(max-width:640px){.container,.nav-wrap{width:calc(100% - 36px)}.site-header{height:62px}.menu-toggle{display:block;margin-left:auto}.nav-cta{display:none}.main-nav{display:none;position:absolute;left:0;right:0;top:61px;background:#111;padding:18px;flex-direction:column;align-items:flex-start;border-top:1px solid #333}.main-nav.open{display:flex}.brand-name{font-size:12px}.hero{padding:53px 0 43px}.hero-grid{grid-template-columns:1fr;gap:32px}.hero h1{font-size:46px}.hero-description{font-size:13px}.trust-row{font-size:9px;gap:8px 14px}.steps-card{max-width:none}.plans-section{padding:48px 0}.section-heading{display:block}.section-heading h2,.process-intro h2{font-size:33px}.plans-heading>p{margin-top:15px}.plans-grid{grid-template-columns:1fr;gap:12px}.plan-card{padding:22px}.plan-description{min-height:0;margin-bottom:15px}.plan-card li{font-size:11px}.process-section{padding:48px 0}.process-grid{grid-template-columns:1fr;gap:28px}.process-intro h2{font-size:35px}.process-item{align-items:flex-start}.diagnostic-cta{padding:35px 0}.cta-inner{align-items:flex-start;flex-direction:column}.cta-inner h2{font-size:29px}.contact-section{padding:45px 0}.contact-grid{grid-template-columns:1fr;gap:25px}.contact-form{grid-template-columns:1fr}.full-field{grid-column:auto}.footer-inner{grid-template-columns:1fr;gap:18px}.footer-inner p{font-size:10px}.orbit-one{right:-290px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Escala ampliada para escritorio: evita que la composición se vea como al 75% de zoom */
@media (min-width: 1000px) {
  body { font-size: 15px; }
  .container, .nav-wrap { width: min(1320px, calc(100% - 96px)); }
  .site-header { height: 72px; }
  .brand { gap: 13px; min-width: 300px; }
  .logo-placeholder { width: 40px; height: 40px; border-radius: 10px; font-size: 23px; }
  .brand-name { font-size: 16px; letter-spacing: 1.9px; }
  .brand-tag { font-size: 9px; letter-spacing: 1.8px; }
  .main-nav { gap: 34px; font-size: 13px; }
  .button { min-height: 47px; padding: 0 20px; font-size: 14px; border-radius: 8px; }
  .nav-cta { min-height: 44px; padding: 0 21px; font-size: 13px; }
  .hero { padding: 82px 0 67px; min-height: 595px; }
  .hero-grid { grid-template-columns: 1.15fr .85fr; gap: 105px; }
  .eyebrow { font-size: 12px; letter-spacing: 2px; margin-bottom: 18px; }
  .hero h1 { font-size: clamp(65px, 4.35vw, 76px); line-height: .99; letter-spacing: -2.2px; margin-bottom: 24px; }
  .hero-description { max-width: 680px; font-size: 17px; line-height: 1.65; margin-bottom: 25px; }
  .hero-actions { gap: 12px; }
  .trust-row { gap: 24px; font-size: 12px; margin-top: 32px; }
  .steps-card { max-width: 470px; padding: 29px 30px 18px; border-radius: 22px; }
  .steps-card h2 { font-size: 24px; margin-bottom: 20px; }
  .mini-step { gap: 15px; padding: 14px 0; }
  .mini-step > span { width: 28px; height: 28px; font-size: 13px; }
  .mini-step strong { font-size: 14px; margin-bottom: 4px; }
  .mini-step small { font-size: 12px; }
  .plans-section { padding: 79px 0 75px; }
  .section-heading { gap: 65px; }
  .section-heading h2, .process-intro h2 { font-size: 49px; letter-spacing: -.8px; }
  .plans-heading > p { max-width: 520px; font-size: 14px; }
  .plans-grid { gap: 17px; margin-top: 31px; }
  .plan-card { padding: 29px 30px 24px; border-radius: 17px; }
  .plan-card h3 { font-size: 27px; margin-bottom: 5px; }
  .plan-description { font-size: 12px; min-height: 38px; margin-bottom: 18px; }
  .price { font-size: 33px; }
  .price small { font-size: 12px; }
  .tax-note { font-size: 11px; margin: 5px 0 16px; }
  .plan-card hr { margin-bottom: 15px; }
  .plan-card ul { margin-bottom: 20px; }
  .plan-card li { padding-left: 20px; font-size: 12px; line-height: 1.6; margin-bottom: 10px; }
  .plan-card li:before { font-size: 15px; }
  .button-card { min-height: 43px; font-size: 13px; }
  .plan-badge { right: 17px; top: 16px; font-size: 10px; padding: 5px 11px; }
  .fine-print { font-size: 11px; margin-top: 22px; }
  .process-section { padding: 82px 0 85px; }
  .process-grid { grid-template-columns: .85fr 1.15fr; gap: 90px; }
  .process-intro h2 { font-size: 49px; margin-bottom: 20px; }
  .process-intro > p:not(.eyebrow) { font-size: 14px; margin-bottom: 20px; }
  .process-list { gap: 12px; }
  .process-item { gap: 16px; padding: 17px 19px; min-height: 79px; border-radius: 14px; }
  .process-item > span { width: 34px; height: 34px; font-size: 13px; border-radius: 10px; }
  .process-item strong { font-size: 14px; }
  .process-item p { font-size: 12px; margin-top: 4px; }
  .diagnostic-cta { padding: 52px 0; }
  .cta-inner h2 { font-size: 40px; margin-bottom: 10px; }
  .cta-inner p { font-size: 14px; }
  .contact-section { padding: 78px 0; }
  .contact-grid { gap: 80px; }
  .contact-grid h2 { font-size: 43px; }
  .contact-grid > div > p:not(.eyebrow) { font-size: 15px; }
  .contact-form { gap: 17px; }
  .contact-form label { font-size: 13px; gap: 8px; }
  .contact-form input, .contact-form select, .contact-form textarea { padding: 14px; font-size: 14px; }
  .form-note, .form-status { font-size: 12px; }
  .site-footer { padding: 31px 0; }
  .footer-inner { gap: 75px; }
  .footer-inner > div { font-size: 12px; }
  .footer-inner > div strong { font-size: 13px; }
  .footer-inner > div span, .footer-inner p { font-size: 11px; }
}


/* Ventana modal del formulario */
.form-modal {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.form-modal.is-open {
  display: flex;
}

.form-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.78);
  backdrop-filter: blur(4px);
}

.form-modal__panel {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  width: min(100%, 760px);
  height: min(88vh, 800px);
  padding: 30px;
  overflow: hidden;
  background: #2A2826;
  color: #171717;
  border: 1px solid #e7e7e7;
  border-radius: 16px;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.3);
}

.form-modal__close {
  position: absolute;
  top: 12px;
  right: 16px;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 50%;
  background: #f2f2f2;
  color: #111;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}

.form-modal__panel h2 {
  margin: 0 42px 6px 0;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 30px;
  font-weight: 500;
}

.form-modal__description {
  margin: 0 0 18px;
  color: #707070;
  font-size: 13px;
}

.form-modal__panel iframe {
  display: block;
  width: 100%;
  flex: 1;
  min-height: 0;
  border: 0;
  border-radius: 8px;
  background: #fff;
}

body.modal-open {
  overflow: hidden;
}

@media (max-width: 600px) {
  .form-modal {
    padding: 10px;
  }

  .form-modal__panel {
    width: 100%;
    height: 94dvh;
    padding: 24px 16px 16px;
    border-radius: 12px;
  }

  .form-modal__panel h2 {
    font-size: 24px;
  }
}

.form-modal__close {
  position: absolute;
  z-index: 5;
  top: 12px;
  right: 16px;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 50%;
  background: #f2f2f2;
  color: #111;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}

/* Eliminar el borde y el espacio alrededor del formulario */
.form-modal__panel {
  padding: 0;
  border: none;
  overflow: hidden;
  gap: 0;
}

/* Mantener el encabezado de la ventana bien espaciado */
.form-modal__panel h2 {
  padding: 26px 60px 0 28px;
  margin: 0 0 6px;
}

.form-modal__description {
  padding: 0 28px;
  margin: 0 0 18px;
}

/* El iframe ocupa todo el ancho disponible */
.form-modal__panel iframe {
  display: block;
  width: 100%;
  flex: 1;
  min-height: 0;
  border: none;
  border-radius: 0;
  margin: 0;
  padding: 0;
  background: #fff;
}
