﻿*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --white:#F9F7F4;
  --black:#0C0C0A;
  --gray-100:#EFEDE8;
  --gray-200:#E2DFD8;
  --gray-300:#C8C5BC;
  --gray-500:#8A8880;
  --gray-700:#3E3D39;
  --gold:#B8A882;
  --accent:#1B6B7B;
}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;background:var(--white);color:var(--gray-700);line-height:1.6;-webkit-font-smoothing:antialiased}
main section{padding:72px 6vw}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{line-height:1.2;color:var(--black)}
button{font:inherit}
nav{background:var(--black);padding:16px 6vw;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:90}
.nav-logo{font-family:'Syne',sans-serif;font-size:1.2rem;font-weight:800;color:var(--accent);text-transform:uppercase}
.nav-actions{display:flex;align-items:center;gap:20px}
.nav-link{font-size:.8rem;letter-spacing:.06em;color:var(--gray-300);text-transform:uppercase}
.nav-cta{background:var(--accent);color:var(--white);border:none;border-radius:999px;padding:10px 18px;font-weight:600;cursor:pointer}
.hero{background:var(--black);position:relative;overflow:hidden}
.hero::after{content:'';position:absolute;right:-120px;top:-120px;width:400px;height:400px;background:radial-gradient(circle,rgba(27,107,123,.24) 0,transparent 70%);border-radius:50%;pointer-events:none}
.hero-eyebrow{color:var(--gray-500);font-size:.72rem;text-transform:uppercase;letter-spacing:.16em;margin-bottom:18px}
.hero h1{font-family:'Fraunces',serif;font-size:clamp(2.1rem,6vw,4.6rem);color:var(--white);letter-spacing:-.03em;max-width:820px}
.hero h1 em{font-style:normal;color:var(--accent)}
.hero-sub{margin-top:20px;max-width:680px;color:var(--gray-300);font-size:1rem}
.hero-actions{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px}
.btn-primary,.btn-secondary,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;text-align:center;border-radius:999px;font-weight:600;cursor:pointer;line-height:1.3}
.btn-primary{background:var(--accent);color:var(--white);border:none;padding:13px 26px}
.btn-ghost{background:none;color:var(--gray-300);border:1px solid rgba(255,255,255,.18);padding:13px 22px}
.btn-secondary{background:transparent;border:1px solid var(--gray-300);color:var(--gray-700);padding:13px 26px}
.btn-block{width:100%}
.hero-proof{margin-top:44px;padding-top:28px;border-top:1px solid rgba(255,255,255,.12);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.proof-item{display:flex;flex-direction:column}
.proof-item .num{font-family:'Fraunces',serif;color:var(--white);font-size:2rem}
.proof-item .label{font-size:.78rem;color:var(--gray-500);text-transform:uppercase;letter-spacing:.08em}
.section-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.16em;color:var(--gray-500);margin-bottom:12px}
.section-title{font-family:'Fraunces',serif;font-size:clamp(1.75rem,4vw,2.75rem);letter-spacing:-.02em;max-width:740px;margin-bottom:34px}
.section-intro{max-width:620px;color:var(--gray-500);margin:-18px 0 28px;font-size:.95rem}
.public-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.public-card{background:#fff;border:1px solid var(--gray-200);border-radius:16px;padding:22px}
.public-card h3{font-family:'Fraunces',serif;margin-bottom:8px}
.public-card p{font-size:.92rem;color:var(--gray-500)}
.solutions{background:var(--gray-100)}
.journey{display:grid;gap:0;max-width:720px}
.journey-step{display:grid;grid-template-columns:52px 1fr;gap:16px;padding:0 0 28px;position:relative}
.journey-step:not(.journey-step-last)::before{content:'';position:absolute;left:25px;top:52px;bottom:0;width:2px;background:var(--gray-200)}
.journey-num{width:52px;height:52px;border-radius:50%;background:var(--accent);color:var(--white);font-family:'Fraunces',serif;font-size:1.35rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1}
.journey-body h3{font-family:'Fraunces',serif;font-size:1.15rem;margin-bottom:6px;padding-top:10px}
.journey-body p{font-size:.92rem;color:var(--gray-500);line-height:1.55}
.journey-cta{margin-top:12px;padding:24px;background:#fff;border:1px solid var(--gray-200);border-radius:16px;max-width:720px;text-align:center}
.journey-cta p{margin-bottom:14px;color:var(--gray-700);font-size:.95rem}
.wizard-step[data-step="3"] #whatsappCta{margin-top:16px}
.diagnostic{background:var(--white)}
.wizard{background:#fff;border:1px solid var(--gray-200);border-radius:18px;padding:24px}
.wizard-progress{display:flex;gap:10px;margin-bottom:20px}
.step-dot{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:1px solid var(--gray-300);color:var(--gray-500);font-weight:600;flex-shrink:0}
.step-dot.active{background:var(--accent);border-color:var(--accent);color:#fff}
.wizard-step{display:none}
.wizard-step.active{display:block}
.wizard-step h3{font-family:'Fraunces',serif;margin-bottom:8px;font-size:1.2rem}
.wizard-step p{font-size:.9rem;color:var(--gray-500);margin-bottom:14px}
.option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.option-card,.chip{border:1px solid var(--gray-300);background:#fff;border-radius:12px;padding:12px;cursor:pointer;text-align:left}
.option-card strong{display:block;font-size:.95rem;color:var(--black);line-height:1.35}
.option-card span{display:block;font-size:.82rem;color:var(--gray-500);margin-top:4px;line-height:1.45}
.chip{font-size:.86rem;color:var(--gray-700);line-height:1.45}
.option-card.active,.chip.active{border-color:var(--accent);background:rgba(27,107,123,.08)}
.estimate-box{background:var(--gray-100);border:1px solid var(--gray-200);padding:16px;border-radius:14px}
.estimate-sector,.estimate-modules-title{font-size:.92rem;margin-bottom:8px;line-height:1.5}
.summary-modules{margin:0 0 14px 18px;padding:0}
.summary-modules li{margin-bottom:6px;font-size:.9rem;line-height:1.45;color:var(--gray-700)}
.estimate-pricing{display:grid;gap:10px;margin-top:4px}
.estimate-line{display:grid;gap:4px;padding:10px 0;border-bottom:1px solid var(--gray-200)}
.estimate-line:last-child{border-bottom:none}
.estimate-label{font-size:.82rem;color:var(--gray-500);line-height:1.4}
.estimate-value{font-size:1.05rem;color:var(--black);line-height:1.3;word-break:keep-all}
.estimate-plan{font-size:.78rem;color:var(--gray-500)}
.estimate-total{padding-top:12px;margin-top:4px;border-top:1px dashed var(--gray-300);border-bottom:none}
.estimate-total .estimate-value{font-size:1.15rem;color:var(--accent)}
.estimate-note{font-size:.82rem;color:var(--gray-500);margin-top:12px;line-height:1.55}
.lead-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;margin:16px 0}
.lead-fields label{font-size:.82rem;color:var(--gray-700)}
.lead-fields input{grid-column:span 1;border:1px solid var(--gray-300);border-radius:10px;padding:11px 12px;background:#fff;width:100%}
.wizard-actions{display:flex;flex-direction:column-reverse;align-items:stretch;margin-top:18px;gap:12px}
.faq-list{max-width:760px}
.faq-item{border-bottom:1px solid var(--gray-200);padding:16px 0;cursor:pointer}
.faq-q{display:flex;justify-content:space-between;font-weight:600;color:var(--black);gap:12px;line-height:1.45}
.faq-q::after{content:'+';font-size:1.4rem;color:var(--gray-500);line-height:1;transition:transform .2s;flex-shrink:0}
.faq-item.open .faq-q::after{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease,padding-top .25s ease;color:var(--gray-500);line-height:1.55}
.faq-item.open .faq-a{max-height:200px;padding-top:8px}
footer{background:var(--black);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:28px 6vw}
footer .logo{font-family:'Syne',sans-serif;color:var(--accent);text-transform:uppercase;font-weight:800}
footer p{color:var(--gray-500);font-size:.85rem}

@media (max-width:980px){
  .public-grid,.option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lead-fields{grid-template-columns:1fr}
}
@media (max-width:760px){
  nav{padding:14px 5vw}
  .nav-link{display:none}
  main section{padding:58px 5vw}
  .hero-proof{grid-template-columns:1fr}
  .public-grid,.option-grid{grid-template-columns:1fr}
  .wizard{padding:16px}
  .journey-step{grid-template-columns:44px 1fr;gap:12px}
  .journey-num{width:44px;height:44px;font-size:1.15rem}
  .journey-step:not(.journey-step-last)::before{left:21px;top:44px}
}
