/* Refinamiento visual: ritmo, jerarquía, alineación y accesibilidad. */
html { scroll-padding-top: 88px; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
.lucide { width: 19px; height: 19px; flex: 0 0 auto; }
.site-header { position: sticky; top: 0; z-index: 20; padding-inline: max(6vw, 28px); background: rgba(251,250,246,.94); backdrop-filter: blur(15px); }
.site-header nav { margin-right:auto; }
.site-header nav a { position: relative; padding: 10px 0; }
.site-header nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 4px; height: 1px; background: var(--orange); transition: right .2s ease; }
.site-header nav a:hover::after { right: 0; }
.hero { min-height:calc(100vh - 88px); padding:58px max(7vw,28px); grid-template-columns:minmax(470px,1fr) minmax(540px,1fr); gap:6vw; }
.hero-copy { max-width: 690px; }
.hero h1 { font-size:clamp(58px,5.05vw,82px); max-width:740px; line-height:.98; }
.hero h1 em { display:inline-block; font-size:.9em; line-height:1.02; }
.hero-lead { max-width:590px; line-height:1.65; margin:24px 0 18px; }
.launch-badge { width: fit-content; display:flex; align-items:center; gap:9px; margin:0 0 28px; padding:9px 13px; border:1px solid rgba(231,104,66,.32); background:rgba(255,255,255,.58); color:#b64a2e; font-size:11px; font-weight:800; letter-spacing:.035em; text-transform:uppercase; }
.launch-badge .lucide { width:15px; height:15px; }
.hero-actions .lucide { width:16px; height:16px; }
.demo-button { min-width:225px; justify-content:flex-start; gap:13px; border-color:rgba(16,35,28,.42); background:rgba(255,255,255,.52); }
.demo-button:hover { border-color:var(--ink); background:#fff; }
.demo-button > span { display:grid; gap:1px; text-align:left; line-height:1.15; }
.demo-button small { color:var(--muted); font-size:9px; font-weight:600; letter-spacing:.02em; }
.hero .button-primary { box-shadow:0 12px 28px rgba(190,74,42,.19); }
.offer-highlight { width:fit-content; display:grid; grid-template-columns:auto 1fr; align-items:center; margin:0 0 26px; border:1px solid rgba(231,104,66,.3); background:rgba(255,255,255,.68); box-shadow:0 8px 25px rgba(16,35,28,.045); }
.offer-zero { min-width:128px; padding:12px 16px; display:grid; justify-items:center; border-right:1px solid rgba(16,35,28,.14); }
.offer-zero small { color:var(--muted); font-size:8px; font-weight:800; letter-spacing:.1em; }
.offer-zero strong { color:var(--orange); font-size:29px; line-height:1.05; }
.offer-message { padding:11px 17px; display:grid; gap:2px; }
.offer-message b { font-size:14px; color:var(--ink); }
.offer-message small { color:var(--muted); font-size:11px; }
.hero-actions { align-items:center; }
.trust-list { margin-top:24px; gap:22px; }
.trust-list li { display:flex; align-items:center; gap:7px; }
.trust-list li::before { display:none; }
.trust-list .lucide { width:15px; height:15px; color:var(--orange); }
.product-preview { max-width:730px; justify-self:end; width:100%; }
.preview-window { border-radius: 3px; overflow: hidden; transform: rotate(.65deg); }
.preview-window { border:8px solid #fff; box-shadow:0 34px 75px rgba(16,35,28,.2); }
.shop-hero { background:linear-gradient(120deg,#bad4c3 0,#eadccf 57%,#e79470); }
.shop-hero .preview-cta { display:inline-flex; background:var(--deep); color:#fff; padding:12px 18px; font-size:9px; }
.mobile-admin-float { position:absolute; top:-6%; right:-3%; min-width:210px; padding:16px; display:flex; align-items:center; gap:12px; background:#fff; border:1px solid #dbddd6; box-shadow:0 18px 40px rgba(16,35,28,.15); }
.mobile-admin-float > .lucide { width:28px; height:28px; color:var(--orange); }
.mobile-admin-float div { display:grid; }
.mobile-admin-float small { font-size:7px; letter-spacing:.14em; color:var(--orange); font-weight:800; }
.mobile-admin-float strong { font-size:12px; }
.mobile-admin-float span { color:var(--muted); font-size:9px; }
.button { letter-spacing: .005em; }
.button:focus-visible, a:focus-visible, input:focus-visible { outline: 3px solid rgba(231,104,66,.4); outline-offset: 3px; }
.proof-strip { padding-inline: max(7vw,28px); }
.proof-strip span:first-child { border-left: 1px solid var(--line); }
.proof-strip span { justify-content:flex-start; padding-inline:clamp(24px,3vw,54px); gap:15px; }
.proof-strip span .lucide { width:22px; height:22px; color:var(--orange); stroke-width:1.6; }
.proof-strip span b { color:var(--ink); font-size:13px; }
.section { padding-block: clamp(96px,9vw,140px); }
.section-heading { max-width: 800px; }
.feature-grid { max-width: 1500px; margin-inline: auto; }
.feature-grid article { padding: 38px; min-height: 280px; }
.feature-grid article > span { width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(231,104,66,.28); color:var(--orange); }
.feature-grid article > span .lucide { width:20px; height:20px; }
.feature-grid .feature-main > span { border-color:rgba(255,255,255,.25); color:#f39a7b; }
.feature-grid h3 { font-size: 28px; margin-top: 54px; }
.feature-grid .feature-wide { grid-column:1 / 4; min-height:210px; display:grid; grid-template-columns:42px minmax(280px,1fr) minmax(300px,.85fr); align-items:center; gap:clamp(28px,4vw,72px); background:#edf1eb; }
.feature-grid .feature-wide h3 { margin:0 0 12px; }
.feature-grid .feature-wide p { margin:0; }
.feature-grid .feature-wide > strong { font:500 25px/1.25 var(--serif); align-self:stretch; display:flex; align-items:center; border-left:1px solid #c8d0c9; padding-left:clamp(28px,3vw,48px); }
.process { padding-inline: max(9vw,28px); align-items: start; }
.stories { background:#f1efe8; }
.stories-heading { display:grid; grid-template-columns:1fr 1.05fr; column-gap:9vw; max-width:none; align-items:end; }
.stories-heading .eyebrow { grid-column:1 / -1; }
.stories-heading h2 { max-width:760px; }
.stories-heading > p:last-child { align-self:end; margin:0 0 5px; max-width:560px; }
.stories-heading > p:last-child small { display:block; margin-top:8px; color:#8a928d; font-size:10px; letter-spacing:.06em; text-transform:uppercase; }
.stories-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; max-width:1500px; margin-inline:auto; }
.stories-cta { max-width:1500px; margin:24px auto 0; padding:28px 30px; display:flex; align-items:center; justify-content:space-between; gap:30px; background:var(--deep); color:#fff; }
.stories-cta > div { display:grid; gap:3px; }
.stories-cta span { color:#f39a7b; font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.stories-cta strong { font:500 24px/1.25 var(--serif); }
.stories-cta .button { flex:0 0 auto; }
.story-card { background:#fff; border:1px solid var(--line); }
.story-card figure { margin:0; aspect-ratio:4 / 3; overflow:hidden; }
.story-card img { width:100%; height:100%; display:block; object-fit:cover; transition:transform .5s ease; }
.story-card:hover img { transform:scale(1.025); }
.story-copy { padding:clamp(28px,3vw,46px); }
.demo-label { display:flex; align-items:center; gap:8px; color:var(--orange); font-size:10px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.demo-label .lucide { width:15px; height:15px; }
.story-copy blockquote { margin:0 0 34px; max-width:600px; font:500 clamp(25px,2.25vw,36px)/1.18 var(--serif); letter-spacing:-.025em; }
.story-copy p { display:grid; gap:3px; margin:0; }
.story-copy strong { font-size:13px; }
.story-copy small { color:var(--muted); font-size:11px; }
.stories-disclaimer { display:flex; align-items:center; gap:9px; margin:24px auto 0; max-width:1500px; color:var(--muted); font-size:11px; }
.stories-disclaimer .lucide { width:15px; height:15px; }
.process ol { max-width: 680px; width: 100%; justify-self: end; }
.process li { padding: 32px 0; }
.pricing { padding-inline: max(9vw,28px); }
.price-copy { max-width: 710px; }
.price-card { max-width: 520px; width: 100%; justify-self: end; box-shadow: 22px 22px 0 #e8ddd1; }
.price-card > div { display:grid; grid-template-columns:auto auto 1fr; align-items:end; column-gap:8px; margin:28px 0 12px; min-height:78px; }
.price-card > div sup { align-self:start; margin-top:8px; font-size:22px; line-height:1; }
.price-card > div strong { display:block; font-size:88px; line-height:.82; letter-spacing:-.055em; }
.price-card > div span { align-self:end; margin:0 0 4px; line-height:1; }
.price-card > div + small { display:block; margin-top:4px; }
.price-card p .lucide { width:16px; height:16px; color:#f39a7b; vertical-align:-3px; margin:0 7px 8px 0; }
.price-card .domain-note { display:block; margin-top:8px; color:#92a49a; font-size:12px; }
.price-card .button .lucide { width:17px; height:17px; color:inherit; margin:0; }
.lead-section { margin-inline: max(2vw,18px); padding-inline: max(7vw,28px); align-items: center; }
.lead-section > div { max-width: 740px; }
.lead-section form { max-width: 650px; width: 100%; justify-self: end; box-shadow: 0 18px 50px rgba(16,35,28,.08); }
input { border-radius: 0; }
footer { padding-inline:max(6vw,28px); grid-template-columns:1fr auto; }
.legal-strip { background:#0d2118; color:rgba(255,255,255,.74); border-top:1px solid rgba(255,255,255,.1); }
.legal-strip-inner { padding:26px max(6vw,28px) 30px; display:grid; grid-template-columns:.55fr 1fr 1fr; gap:28px; align-items:start; }
.legal-strip h2 { margin:0; color:#fff; font-size:1rem; }
.legal-strip p { margin:0; max-width:62ch; font-size:.78rem; line-height:1.65; }
footer a { color:inherit; }
.faq-section { display: grid; grid-template-columns: .8fr 1.2fr; gap: 9vw; background: #f1efe8; }
.faq-section .section-heading { margin: 0; position: sticky; top: 130px; align-self: start; }
.faq-section .section-heading h2 { font-size: clamp(42px,4vw,66px); }
.faq-list { border-top: 1px solid #cfd0c8; }
.faq-list details { border-bottom: 1px solid #cfd0c8; padding: 0; }
.faq-list summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; gap: 30px; align-items: center; padding: 28px 0; font: 500 22px/1.25 var(--serif); }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { font: 300 28px var(--sans); color: var(--orange); transition: transform .2s ease; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details p { color: var(--muted); max-width: 720px; margin: -8px 45px 28px 0; }
.website-field { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.lead-section button:disabled { opacity: .72; cursor: wait; transform: none; }
.lead-section form[hidden] { display:none; }
.lead-section form { border-top:4px solid var(--orange); }
.lead-section input { transition:border-color .18s ease, box-shadow .18s ease; }
.lead-section select { width:100%; height:50px; border:1px solid #cacbc4; background:#fff; padding:0 14px; font:inherit; color:var(--ink); outline:none; }
.lead-section select:focus { border-color:var(--orange); box-shadow:0 0 0 3px rgba(231,104,66,.12); }
.qualification-block { display:grid; gap:16px; padding:20px; background:#f3f0e8; border-left:3px solid var(--orange); }
.qualification-block > p { margin:0 0 2px; display:grid; gap:3px; }
.qualification-block > p strong { font:600 19px var(--serif); }
.qualification-block > p span { color:var(--muted); font-size:12px; }
.qualification-block fieldset { margin:0; padding:0; border:0; }
.qualification-block legend { margin-bottom:8px; font-size:12px; font-weight:750; }
.choice-row { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.choice-row label { display:flex; align-items:center; gap:9px; min-height:46px; padding:0 12px; background:#fff; border:1px solid #cacbc4; font-weight:600; }
.choice-row input { width:16px; height:16px; }
.pricing-consent { color:var(--ink); line-height:1.45; }
.lead-success { max-width:650px; width:100%; justify-self:end; padding:42px; background:var(--paper); border-top:4px solid #2f7a4b; box-shadow:0 18px 50px rgba(16,35,28,.08); }
.lead-success[hidden] { display:none; }
.lead-success > span { display:grid; place-items:center; width:52px; height:52px; margin-bottom:26px; border-radius:50%; background:#dcecdf; color:#27613f; }
.lead-success > span svg { width:27px; height:27px; }
.lead-success h3 { margin:0 0 14px; font:500 36px/1.05 var(--serif); }
.lead-success > p:not(.eyebrow) { color:var(--muted); }
.lead-success > div { display:flex; flex-wrap:wrap; gap:10px; margin-top:28px; }
.legal-links { white-space:nowrap; }
.legal-links a { text-decoration:underline; text-underline-offset:3px; }
.whatsapp-dialog { width:min(520px,calc(100% - 28px)); padding:0; border:0; color:var(--ink); background:var(--paper); box-shadow:0 28px 90px rgba(5,20,14,.34); }
.whatsapp-dialog::backdrop { background:rgba(8,25,18,.68); backdrop-filter:blur(3px); }
.whatsapp-dialog form { position:relative; display:grid; gap:17px; padding:36px; }
.whatsapp-dialog h2 { margin:-8px 0 0; font:500 38px/1 var(--serif); }
.whatsapp-dialog form > p:not(.eyebrow) { margin:-6px 0 7px; color:var(--muted); }
.whatsapp-dialog select { width:100%; height:50px; padding:0 13px; background:#fff; border:1px solid #cacbc4; font:inherit; }
.dialog-close { position:absolute; right:16px; top:14px; width:38px; height:38px; border:0; background:#ecece6; color:var(--ink); font-size:24px; cursor:pointer; }
.form-reassurance { display:flex; justify-content:center; gap:20px; color:var(--muted); font-size:10px; font-weight:650; }
.form-reassurance span { display:flex; align-items:center; gap:6px; }
.form-reassurance .lucide { width:14px; height:14px; color:#387552; }
.mobile-conversion { display: none; }
.whatsapp-float { position:fixed; right:22px; bottom:22px; z-index:32; width:62px; min-width:62px; height:62px; padding:0; display:flex; align-items:center; justify-content:center; border:5px solid rgba(255,255,255,.92); border-radius:50%; background:#25d366; box-shadow:0 10px 30px rgba(7,48,24,.2),0 2px 8px rgba(7,48,24,.12); transition:transform .2s ease, box-shadow .2s ease, background .2s ease; }
.whatsapp-float:hover { transform:translateY(-3px) scale(1.025); background:#20c85f; box-shadow:0 16px 36px rgba(7,48,24,.26),0 3px 10px rgba(7,48,24,.14); }
.whatsapp-float[hidden] { display:none; }
.whatsapp-float img { width:29px; height:29px; display:block; filter:invert(1); }
.whatsapp-float span { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }

@media (max-width: 1100px) {
  .hero { grid-template-columns: 1fr 1fr; gap: 4vw; padding-inline: 5vw; }
  .hero h1 { font-size: 58px; }
  .product-preview { min-width: 0; }
  .mobile-admin-float { right:0; }
  .feature-grid .feature-wide { grid-column: 1 / 4; }
}
@media (max-width: 950px) {
  .site-header { position: relative; }
  .hero { min-height: auto; grid-template-columns: 1fr; padding-inline: max(7vw,24px); }
  .hero-copy { max-width: 700px; }
  .product-preview { justify-self: center; max-width: 760px; }
  .feature-grid .feature-wide { grid-column:1 / 3; grid-template-columns:42px minmax(0,1fr) minmax(0,.85fr); gap:30px; }
  .feature-grid .feature-wide > strong { padding-left:26px; }
  .price-card, .lead-section form { justify-self: start; }
  .proof-strip span:first-child { border-left: 0; }
  .faq-section { grid-template-columns: 1fr; gap: 45px; }
  .stories-heading { grid-template-columns:1fr; gap:22px; }
  .stories-heading .eyebrow { grid-column:auto; }
  .stories-grid { grid-template-columns:1fr; }
  .faq-section .section-heading { position: static; }
}
@media (max-width: 620px) {
  .legal-strip-inner { grid-template-columns:1fr; gap:12px; padding-bottom:84px; }
  .lead-success { justify-self:start; }
  html { scroll-padding-top: 20px; }
  .site-header { display:none; }
  .hero { padding-inline: 20px; }
  .hero h1 { font-size: clamp(44px,13vw,54px); line-height: .98; }
  .hero h1 em { font-size:.9em; }
  .hero-copy { width: 100%; }
  .launch-badge { font-size:9px; margin-bottom:22px; padding:8px 10px; }
  .hero-lead { line-height: 1.6; }
  .offer-highlight { width:100%; grid-template-columns:112px 1fr; }
  .offer-zero { min-width:0; padding:11px 10px; }
  .offer-zero strong { font-size:25px; }
  .offer-message { padding:10px 12px; }
  .offer-message b { font-size:12px; line-height:1.25; }
  .offer-message small { font-size:10px; }
  .trust-list { font-size: 11px; }
  .product-preview { width: calc(100% + 4px); }
  .mobile-admin-float { top:-14px; right:-4px; min-width:178px; padding:11px; }
  .mobile-admin-float > .lucide { width:22px; height:22px; }
  .proof-strip { padding-inline: 20px; }
  .proof-strip span { padding-inline:4px; }
  .feature-grid .feature-wide { grid-column:auto; display:grid; grid-template-columns:42px 1fr; gap:24px 18px; min-height:230px; }
  .feature-grid .feature-wide > div { grid-column:2; }
  .feature-grid .feature-wide > strong { grid-column:2; display:block; border-left:0; border-top:1px solid #c8d0c9; padding:22px 0 0; font-size:21px; }
  .feature-grid article { padding: 28px; min-height: 220px; }
  .section-heading h2, .lead-section h2 { font-size: clamp(39px,11vw,48px); }
  .story-copy { padding:26px 22px; }
  .story-copy blockquote { font-size:25px; margin:22px 0 28px; }
  .stories-disclaimer { align-items:flex-start; line-height:1.5; }
  .stories-cta { margin-top:16px; padding:24px 20px; align-items:stretch; flex-direction:column; }
  .stories-cta strong { font-size:22px; }
  .stories-cta .button { width:100%; }
  .process, .pricing { padding-inline: 20px; }
  .price-card { box-shadow: 10px 10px 0 #e8ddd1; }
  .lead-section { padding-inline: 14px; }
  .lead-section form { box-shadow: none; }
  .choice-row { grid-template-columns:1fr; }
  .lead-success { padding:28px 22px; box-shadow:none; }
  .lead-success > div { display:grid; }
  .whatsapp-dialog form { padding:30px 20px 22px; }
  .whatsapp-dialog h2 { font-size:33px; }
  .form-reassurance { flex-direction:column; align-items:center; gap:7px; }
  .section { padding-block:74px; }
  .process { padding-block:74px; }
  footer { grid-template-columns:1fr; align-items:start; gap:8px; }
  body { padding-bottom: 68px; }
  .faq-list summary { padding: 22px 0; font-size: 20px; }
  .faq-list details p { margin-right: 24px; }
  .mobile-conversion { position:fixed; display:flex; align-items:center; justify-content:space-between; left:12px; right:12px; bottom:10px; min-height:52px; padding:0 20px; z-index:30; background:var(--orange); color:#fff; font-size:13px; font-weight:800; box-shadow:0 12px 35px rgba(16,35,28,.3); opacity:0; visibility:hidden; transform:translateY(18px); pointer-events:none; transition:opacity .2s ease, transform .2s ease, visibility .2s; }
  .mobile-conversion.is-visible { opacity:1; visibility:visible; transform:translateY(0); pointer-events:auto; }
  .whatsapp-float { right:14px; bottom:76px; width:56px; min-width:56px; height:56px; border-width:4px; }
  .whatsapp-float img { width:26px; height:26px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .button, .site-header nav a::after { transition: none; }
  .button:hover { transform: none; }
}
