@font-face{font-family:Montserrat;src:url('./assets/montserrat.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Montserrat;src:url('./assets/montserrat-medium.ttf') format('truetype');font-weight:500 700;font-display:swap}@font-face{font-family:Cormorant;src:url('./assets/cormorant.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Cormorant;src:url('./assets/cormorant-italic.ttf') format('truetype');font-weight:400;font-style:italic;font-display:swap}
:root{--forest:#1e3b33;--paper:#f6f3ec;--ink:#253c34;--muted:#58635b;--rule:#cbd0c6;--white:#fffefb;--error:#a32d28;font-family:Montserrat,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0}body:has(dialog[open]){overflow:hidden}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}img{display:block;max-width:100%}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #a1773e;outline-offset:5px}button:disabled{cursor:default;opacity:.55}[hidden]{display:none!important}
.skip{position:absolute;top:-80px;left:20px;background:var(--forest);color:white;padding:14px;z-index:10}.skip:focus{top:15px}.preview-note{font-size:12px;letter-spacing:.02em;text-align:center;padding:9px 16px;background:#e5e9e0;color:#344a3d;line-height:1.5}.preview-note span{margin:0 8px}
.site-header{margin:auto;padding:25px 5%;max-width:1600px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0}.brand>span{font-size:17px;letter-spacing:.18em;font-weight:500}.brand small{display:block;font-size:10px;letter-spacing:.32em;margin-top:7px}.brand img{object-fit:contain}.site-header nav{display:flex;align-items:center;gap:38px;font-size:14px}.site-header nav>a{text-decoration:none}.text-button{border:0;border-bottom:1px solid var(--forest);padding:10px 0;background:none;color:var(--forest);font-size:14px}.text-button span{margin-left:22px}
.hero{display:grid;grid-template-columns:1fr 1fr;max-width:1600px;margin:auto;padding:10px 5% 64px;gap:6%}.hero-copy{padding:45px 0 15px}.eyebrow{font-size:12px;letter-spacing:.17em;font-weight:500;line-height:1.7;margin:0 0 22px}.line{display:inline-block;width:34px;border-top:1px solid currentColor;vertical-align:middle;margin-right:10px}h1,h2,h3{font-family:Cormorant,Georgia,serif;font-weight:400}h1{font-size:clamp(58px,6.4vw,101px);line-height:.98;letter-spacing:-.035em;margin:0 0 26px}h1 em,h2 em{font-weight:400}p{font-size:16px;line-height:1.8}.hero-description{max-width:415px;color:var(--muted);margin-bottom:27px;font-size:16px}.button{background:var(--forest);color:var(--paper);border:1px solid var(--forest);min-height:55px;padding:17px 24px;display:inline-flex;align-items:center;justify-content:center;gap:38px;font-weight:500;font-size:14px;text-decoration:none;transition:background .2s,transform .2s}.button:hover{background:#315247;transform:translateY(-2px)}.button span{font-size:20px}.micro{font-size:13px;line-height:1.65;color:var(--muted);margin:13px 0 0}.hero-image{position:relative;margin:0;min-height:600px;align-self:stretch;overflow:hidden}.hero-image>img{height:100%;width:100%;object-fit:cover;object-position:50% 52%;position:absolute}.hero-image figcaption{position:absolute;bottom:0;left:0;right:0;padding:60px 24px 20px;background:linear-gradient(transparent,rgba(12,25,18,.85));color:white;display:flex;flex-direction:column;gap:7px}.hero-image figcaption>span{font-family:Cormorant,Georgia,serif;font-size:26px}.hero-image small{font-size:12px;letter-spacing:.08em;line-height:1.5}
.section{padding:80px 5%;max-width:1600px;margin:auto}.services{border-top:1px solid var(--rule)}.section-heading{display:grid;grid-template-columns:1fr 1.65fr 1fr;gap:36px;align-items:start}.section-heading .eyebrow{padding-top:12px}.section-heading h2{font-size:clamp(42px,4.1vw,62px);line-height:1.02;margin:0;letter-spacing:-.025em}.section-heading>p:last-child{margin:10px 0 0;color:var(--muted);font-size:16px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:56px}.service-grid article{border-top:1px solid var(--forest);padding-top:20px;display:flex;flex-direction:column;align-items:flex-start}.number{font-size:12px;letter-spacing:.08em}.service-grid h3{font-size:38px;line-height:1.1;min-height:83px;margin:26px 0 14px}.service-grid p{color:var(--muted);font-size:16px;margin:0 0 26px;max-width:365px}.service-link{margin-top:auto;font-size:14px;font-weight:500;padding:10px 0;border:0;border-bottom:1px solid var(--rule);background:none;color:var(--forest);width:100%;display:flex;justify-content:space-between;gap:10px;text-align:left}.service-link:hover{border-color:var(--forest)}
.site-footer{padding:38px 5%;border-top:1px solid var(--rule);display:flex;align-items:center;justify-content:space-between;gap:25px;max-width:1600px;margin:auto}.site-footer strong{font-size:14px;letter-spacing:.16em;font-weight:500}.site-footer span{display:block;font-size:12px;margin-top:10px;color:var(--muted)}.site-footer p,.site-footer a{font-size:12px;color:var(--muted)}
dialog{width:min(760px,calc(100% - 32px));max-height:calc(100dvh - 36px);padding:28px 38px;border:1px solid var(--rule);color:var(--ink);background:var(--paper)}dialog::backdrop{background:rgba(12,28,22,.64);backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--rule);padding-bottom:16px;margin-bottom:26px}.dialog-top .eyebrow{margin:0;font-size:12px}.close{border:0;background:transparent;font-size:30px;line-height:1;width:44px;height:44px;color:var(--forest)}dialog h2{font-size:43px;line-height:1.05;margin:10px 0 18px}dialog p{font-size:16px;color:var(--muted)}label{display:block;font-size:14px;line-height:1.6;margin-bottom:8px}input,select,textarea{width:100%;min-height:49px;background:var(--white);color:var(--ink);border:1px solid var(--muted);border-radius:0;padding:12px 13px;font-size:16px}textarea{resize:vertical;min-height:100px}select{padding-right:30px}
@media(min-width:1500px){.hero-copy{padding-top:60px}.hero-image{min-height:710px}}
@media(max-width:1000px){.hero{gap:5%}.hero-copy{padding-top:20px}.hero-image{min-height:590px}h1{font-size:70px}.section-heading{grid-template-columns:1fr 1.6fr}.section-heading>p:last-child{grid-column:2}.service-grid{gap:24px}.site-footer p{display:none}}
@media(max-width:680px){.preview-note span{margin:0 3px}.site-header{padding:19px 5%;gap:10px}.brand img{width:38px;height:38px}.brand>span{font-size:12px;letter-spacing:.13em}.brand small{font-size:9px;margin-top:5px}.site-header nav{gap:0}.site-header nav>a{display:none}.text-button{font-size:14px}.text-button span{margin-left:7px}.hero{grid-template-columns:1fr;gap:34px;padding-top:15px;padding-bottom:42px}.hero-copy{padding-top:6px}.hero-copy>.eyebrow{margin-bottom:23px}h1{font-size:clamp(62px,13.5vw,90px);line-height:.97}.hero-description{max-width:490px}.hero-image{min-height:0;aspect-ratio:4/4.2;max-height:620px}.hero-image figcaption{padding:60px 18px 18px}.hero-image figcaption>span{font-size:24px}.section{padding:52px 5%}.section-heading{display:block}.section-heading .eyebrow{padding:0;margin-bottom:18px}.section-heading h2{font-size:46px}.section-heading>p:last-child{margin-top:22px;max-width:380px}.service-grid{grid-template-columns:1fr;margin-top:36px;gap:32px}.service-grid article{display:grid;grid-template-columns:40px 1fr;column-gap:16px}.service-grid .number{padding-top:5px}.service-grid h3{margin:0 0 13px;min-height:0;font-size:34px}.service-grid h3 br{display:none}.service-grid p,.service-grid .service-link{grid-column:2;max-width:none}.service-grid p{margin-bottom:15px}.site-footer{padding:30px 5%;align-items:flex-start}.site-footer strong{font-size:12px}.site-footer a{font-size:12px}dialog{padding:18px 20px;width:calc(100% - 20px);max-height:calc(100dvh - 20px)}dialog h2{font-size:37px}.dialog-top{margin-bottom:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.approach{background:var(--forest);color:var(--paper)}.approach-inner{max-width:1600px;margin:auto;padding:80px 7%;display:grid;grid-template-columns:1fr 1fr;gap:12%}.approach h2,.conversation h2,.faq h2,.closing h2{font-size:clamp(46px,4.6vw,68px);line-height:1.04;letter-spacing:-.025em;margin:0 0 25px}.approach-inner>div>p:last-child{max-width:450px;color:#d4ddce}.principles{padding-top:20px}.principles article{display:flex;gap:24px;padding:23px 0;border-top:1px solid #597066}.principles article>span{font-size:12px;padding-top:8px;color:#d4ddce}.principles h3{font-size:30px;line-height:1.2;margin:0 0 8px}.principles p{font-size:16px;line-height:1.7;color:#d4ddce;margin:0}
.conversation{display:grid;grid-template-columns:1fr 1fr;gap:13%;padding-top:95px;padding-bottom:95px}.conversation-heading>p:not(.eyebrow):not(.micro){max-width:410px;color:var(--muted)}.conversation .micro{max-width:400px}.process{list-style:none;padding:8px 0 0;margin:0}.process li{display:flex;gap:24px;padding:22px 0;border-bottom:1px solid var(--rule)}.process li>span{font-size:12px;padding-top:8px}.process h3{font-size:32px;margin:0 0 6px}.process p{margin:0;color:var(--muted);font-size:16px}
.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:13%;border-top:1px solid var(--rule)}.faq-list{border-top:1px solid var(--rule)}details{border-bottom:1px solid var(--rule);padding:0}summary{cursor:pointer;list-style:none;font-size:16px;line-height:1.6;padding:22px 28px 22px 0;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:4px;top:20px;font-size:22px}details[open] summary:after{content:'−'}details p{margin:0;padding:0 24px 22px 0;font-size:16px;color:var(--muted)}.closing{text-align:center;background:var(--forest);color:var(--paper);padding:72px 5%}.closing h2{margin:20px 0 32px}.button.light{background:var(--paper);color:var(--forest);border-color:var(--paper)}.button.light:hover{background:#e8e8dd}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.step-list{list-style:none;margin:0 0 25px;padding:0;display:flex;justify-content:space-between;gap:12px}.step-list li{font-size:12px;color:var(--muted);display:flex;gap:7px;align-items:center}.step-list li>span{width:25px;height:25px;border:1px solid #99a497;display:inline-flex;justify-content:center;align-items:center;border-radius:50%;flex-shrink:0}.step-list [aria-current]{font-weight:500;color:var(--forest)}.step-list [aria-current]>span{background:var(--forest);color:var(--paper);border-color:var(--forest)}.step-count{font-size:12px!important;margin:8px 0!important;letter-spacing:.08em}.form-demo{font-size:13px;line-height:1.6;color:var(--muted);padding:12px 14px;border:1px solid var(--rule);margin:18px 0 22px;background:#edf0e7}.field{margin-bottom:20px;min-width:0}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.two-fields>.field{margin-bottom:18px}.two-fields>[data-conditional]{min-width:0}fieldset{border:0;padding:0;margin:0;min-width:0}.extras{margin:0 0 22px}.extras>legend{font-size:14px;margin-bottom:12px}.optional{font-size:12px;color:var(--muted)}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.check-grid label,.check-line{display:flex;gap:10px;align-items:flex-start;font-size:14px;cursor:pointer}.check-grid input,.check-line input{appearance:auto;width:19px;min-width:19px;height:19px;min-height:19px;margin:2px 0 0;accent-color:var(--forest);padding:0}.check-line{margin-bottom:20px;line-height:1.7}.field-help{font-size:13px!important;line-height:1.7!important;margin:0 0 20px!important}.form-actions{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--rule);margin-top:25px;padding-top:22px;align-items:center}.form-actions #next{margin-left:auto}.back{background:none;color:var(--forest);border:0;padding:14px 0;font-size:14px;text-decoration:underline;text-underline-offset:4px}.consent{margin-top:12px}#form-error{font-size:14px;color:var(--error);border-left:3px solid var(--error);padding:10px 13px;margin:10px 0 20px;background:#f6e9e2}.result-notice{font-size:14px;line-height:1.8;border:1px solid #9ca997;background:#e5ecdf;padding:15px 18px;margin:20px 0}#project-summary{margin:0;border-top:1px solid var(--rule)}#project-summary>div{display:grid;grid-template-columns:145px 1fr;gap:16px;padding:13px 0;border-bottom:1px solid var(--rule);font-size:14px;line-height:1.6;overflow-wrap:anywhere}dt{color:var(--muted)}dd{margin:0}#preview-result>p{font-size:15px}
@media(max-width:800px){.approach-inner{gap:7%;padding:65px 5%}.conversation,.faq{gap:7%}.step-list{gap:8px}.step-list li{font-size:12px}}
@media(max-width:680px){.approach-inner,.conversation,.faq{grid-template-columns:1fr;gap:30px;padding-top:52px;padding-bottom:52px}.approach h2,.conversation h2,.faq h2,.closing h2{font-size:48px}.principles{padding:0}.conversation .process{padding-top:0}.closing{padding:58px 5%}.two-fields{grid-template-columns:1fr;gap:0}.two-fields>.field{margin-bottom:20px}.step-list{margin-bottom:20px;gap:5px}.step-list li{display:flex;flex-direction:column;gap:6px;font-size:12px}.check-grid{grid-template-columns:1fr}.dialog-top .eyebrow{font-size:12px;max-width:230px;letter-spacing:.08em}#project-summary>div{grid-template-columns:105px 1fr;gap:12px}.form-actions .button{gap:12px;padding:15px 16px}.form-actions{flex-wrap:wrap}.hero-image small{font-size:12px}}
@media(max-width:380px){.site-header nav .text-button{font-size:12px}.brand>span{font-size:11px}.brand img{width:32px;height:32px}.brand{gap:6px}.site-header{gap:8px}.hero-copy>.eyebrow{font-size:11px}.line{width:20px;margin-right:5px}}

/* Correcciones de la auditoría: errores asociados, reflujo y encabezado móvil. */
.hero-copy { min-width: 0; }
h1 { overflow-wrap: anywhere; }
.service-actions { margin-top: auto; width: 100%; }
.service-actions .service-link { margin-top: 0; }
.field-error { color: var(--error); font-size: 14px; line-height: 1.6; margin: 7px 0 0; }
input[aria-invalid="true"], select[aria-invalid="true"], textarea[aria-invalid="true"] { border: 2px solid var(--error); }
.scope-notice { font-size: 14px; line-height: 1.6; padding: 12px 14px; border-left: 3px solid var(--forest); background: #e5ecdf; }
@media (max-width: 680px) {
  .service-grid .service-actions { grid-column: 2; }
  .dialog-top { margin-bottom: 14px; padding-bottom: 10px; }
  .step-list { margin-bottom: 12px; }
  dialog h2 { margin: 8px 0 12px; font-size: 34px; }
  #step-description { margin: 8px 0; line-height: 1.5; }
  .form-demo { margin: 12px 0 16px; padding: 9px 11px; }
  select { font-size: 14px; padding-right: 22px; }
}

@media (max-width: 680px) {
  dialog { max-width: calc(100% - 20px); }
  .step-count { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
}

.contact{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid var(--line)}
.contact-links{display:flex;flex-direction:column;justify-content:center;gap:20px;overflow-wrap:anywhere}
.contact-links a{width:fit-content;text-underline-offset:6px}
.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
[hidden]{display:none!important}
button:disabled{opacity:.65;cursor:wait}
#send-status{padding:16px;border:1px solid var(--muted)}
.privacy-page{max-width:820px;margin:auto;padding:60px 24px}
.privacy-page h1{font-size:clamp(44px,7vw,72px)}
.privacy-page h2{font-size:30px;margin-top:32px}
.privacy-page a{overflow-wrap:anywhere}
@media(max-width:680px){.contact{grid-template-columns:1fr;gap:18px}}
