:root{--teal:#164C58;--teal-d:#0F3640;--teal-l:#E7F0F2;--cta:#17707F;--cta-h:#125C69;--sand:#C9A66B;--bg:#F5F8F8;--surface:#fff;--fg:#10252C;--muted:#536870;--line:#D3DEE1;--danger:#B3261E;--ok:#1E7A4D;--font:"Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color-scheme:light}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font);font-size:16px;line-height:1.5}
body::before{content:"ATENÇÃO: site particular do corretor Igor Reis (CRECI-RJ 87.961). Não é o site oficial e não pertence à incorporadora Conscam.";display:block;background:#FFD54A;color:#2B2000;font-weight:700;font-size:.8rem;line-height:1.35;text-align:center;padding:9px max(14px,env(safe-area-inset-left,0px)) 9px;border-bottom:2px solid #C99A00}
h1,h2,h3{margin:0;line-height:1.2;text-wrap:balance;font-weight:700}
img{max-width:100%;display:block}
.wrap{max-width:1040px;margin:0 auto;padding-left:max(18px,env(safe-area-inset-left,0px));padding-right:max(18px,env(safe-area-inset-right,0px))}
.top{background:var(--teal);color:#fff;text-align:center;padding:calc(22px + env(safe-area-inset-top,0px)) 0 26px}
.top .logo-r{width:150px;height:auto;margin:0 auto}
.top .tag{margin:10px 0 0;font-size:1.02rem;font-weight:600}
.top .tag span{display:block;font-weight:400;opacity:.78}
.hero{position:relative;background:var(--teal-d)}
.hero .slides{position:relative;height:clamp(200px,48vw,460px);overflow:hidden}
.hero .slide{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease;display:block}
.hero .slide.is-on{opacity:1}
.hero .slide img{width:100%;height:100%;object-fit:cover;display:block}
.hero .dots{position:absolute;left:0;right:0;bottom:8px;display:flex;justify-content:center;gap:2px}
.hero .dots button{width:24px;height:24px;border:0;background:none;padding:0;cursor:pointer;position:relative}
.hero .dots button:after{content:"";position:absolute;left:8px;top:8px;width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.55)}
.hero .dots button.on:after{background:#fff}
@media (prefers-reduced-motion:reduce){.hero .slide{transition:none}}
.hero small{position:absolute;right:12px;bottom:8px;background:rgba(15,54,64,.78);color:#fff;font-size:.72rem;padding:2px 8px;border-radius:4px}
.lead-in{padding:26px 0 8px;text-align:center}
.lead-in h1{font-size:clamp(1.55rem,5.6vw,2.2rem)}
.lead-in p{margin:10px auto 0;max-width:52ch;color:var(--muted)}
.facts{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:16px 0 0;padding:0;list-style:none}
.facts li{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:4px 12px;font-size:.82rem;color:var(--teal);font-weight:600}
.main{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:32px;padding-block:24px 36px;align-items:start}
@media (max-width:820px){.main{grid-template-columns:minmax(0,1fr);gap:26px}.main .card{order:-1}}
.info h2{font-size:1.3rem;margin-bottom:12px}
.info ul{padding-left:1.1rem;margin:0 0 16px;display:grid;gap:8px}
.info p{color:var(--muted);margin:0 0 14px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px;box-shadow:0 6px 24px rgba(22,76,88,.07)}
.card h2{font-size:1.3rem}
.sub{color:var(--muted);font-size:.92rem;margin:6px 0 18px}
form{display:grid;gap:16px}
.field{display:grid;gap:6px;min-width:0}
label,legend{font-weight:600;font-size:.9rem}
.opt{font-weight:400;color:var(--muted)}
input[type=text],input[type=tel],input[type=email],input[type=search],select,textarea{font:inherit;font-size:16px;color:var(--fg);background:#fff;border:1px solid var(--line);border-radius:10px;padding:11px 12px;width:100%;min-width:0;min-height:48px}
textarea{min-height:90px;resize:vertical}
input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible,.chip input:focus-visible+span{outline:3px solid var(--cta);outline-offset:2px}
[aria-invalid=true]{border-color:var(--danger)!important}
.err{color:var(--danger);font-size:.82rem}
fieldset{border:0;padding:0;margin:0;min-width:0;display:grid;gap:8px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.chip span{display:inline-block;border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 16px;font-size:.93rem}
.chip input:checked+span{background:var(--cta);border-color:var(--cta);color:#fff;font-weight:600}
.row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.row3{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:14px}
@media (max-width:520px){.row2{grid-template-columns:minmax(0,1fr)}}
.consent{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;font-size:.85rem;color:var(--muted);font-weight:400}
.consent input{width:22px;height:22px;margin:1px 0 0;accent-color:var(--cta)}
button,.btn{font:inherit;font-weight:700;border:0;border-radius:10px;padding:13px 18px;min-height:50px;cursor:pointer;background:var(--cta);color:#fff;text-align:center;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
button:hover,.btn:hover{background:var(--cta-h)}
button[disabled]{opacity:.6;cursor:wait}
.btn.ghost,button.ghost{background:transparent;color:var(--teal);border:1px solid var(--line)}
.btn.ghost:hover,button.ghost:hover{background:var(--teal-l)}
.fine{font-size:.8rem;color:var(--muted);margin:0}
.result{display:grid;gap:14px}
.result pre{white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--font);background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px;margin:0;font-size:.92rem}
.actions{display:flex;flex-wrap:wrap;gap:10px}
.actions>*{flex:1 1 200px}
.upsell{border-top:1px dashed var(--line);padding-top:14px;display:grid;gap:8px}
.upsell p{margin:0;font-size:.9rem;color:var(--muted)}
.gal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-block:6px 10px}
.gal figure{margin:0}
.gal img{width:100%;height:auto;border-radius:12px;aspect-ratio:3/2;object-fit:cover}
.gal figcaption{font-size:.8rem;color:var(--muted);margin-top:6px}
.plan{padding-block:14px 30px}
.plan h2{font-size:clamp(1.3rem,4vw,1.8rem)}
.plan .lead{color:var(--muted);max-width:62ch;margin:8px 0 6px}
.groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-top:18px}
.group{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px 16px;min-width:0}
.group h3{font-size:1rem;display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.group h3 b{font-size:.78rem;color:var(--cta);white-space:nowrap}
.group p{margin:6px 0 0;color:var(--muted);font-size:.88rem}
.corretor{display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin:6px 0 24px}
.corretor img{width:72px;height:72px;border-radius:10px;border:1px solid var(--line);flex:none}
.corretor p{margin:0;color:var(--muted);font-size:.9rem}
.corretor b{color:var(--fg)}
.legal{background:var(--teal);color:#d4e4e8;padding-block:22px calc(30px + env(safe-area-inset-bottom,0px));font-size:.78rem}
.legal p{margin:0 0 8px;max-width:82ch}
.legal img{width:90px;margin-bottom:10px;opacity:.95}
/* ficha */
.bar{height:6px;background:var(--line);border-radius:99px;overflow:hidden;margin:4px 0 6px}
.bar i{display:block;height:100%;background:var(--cta);width:0;transition:width .25s}
.stepno{font-size:.82rem;color:var(--muted);margin:0 0 14px;font-weight:600}
.step{display:grid;gap:16px}
.step h2{font-size:1.25rem}
.nav{display:flex;gap:10px;margin-top:6px}
.nav>*{flex:1}
.nav .ghost{flex:0 0 38%}
.up{border:1px solid var(--line);border-radius:12px;padding:14px;display:grid;gap:8px;background:#fff}
.up h3{font-size:.98rem}
.up p{margin:0;font-size:.82rem;color:var(--muted)}
.files{display:grid;gap:6px;margin:0;padding:0;list-style:none}
.files li{display:flex;justify-content:space-between;align-items:center;gap:10px;background:var(--bg);border-radius:8px;padding:8px 10px;font-size:.85rem;overflow-wrap:anywhere}
.files button{min-height:34px;padding:4px 10px;background:transparent;color:var(--danger);border:1px solid var(--line);font-weight:600;font-size:.8rem}
.files button:hover{background:#fdeceb}
.add{background:var(--teal-l);color:var(--teal)}
.add:hover{background:#d6e6ea}
.sum{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-size:.9rem;display:grid;gap:4px}
.sum b{font-weight:600}
.notice{background:var(--teal-l);border-radius:10px;padding:10px 12px;font-size:.85rem;color:var(--teal)}
.warn{background:#fff6e5;border:1px solid #efd9a8;border-radius:10px;padding:10px 12px;font-size:.88rem;color:#6a4b00}
.prog{font-size:.9rem;color:var(--muted)}
