/**
 * Imob Engine — página pública de Financiamento.
 * Visual próprio, sem bibliotecas e totalmente derivado dos tokens do tema.
 */
.ie-fp {
	--fp-brand: var(--ie-brand, #17539a);
	--fp-brand-ink: var(--ie-brand-ink, #fff);
	--fp-deep: color-mix(in srgb, var(--ie-brand, #17539a) 64%, #061729);
	--fp-deep-2: color-mix(in srgb, var(--ie-brand, #17539a) 84%, #061729);
	--fp-tint: color-mix(in srgb, var(--ie-brand, #17539a) 7%, var(--ie-bg, #fff));
	--fp-tint-2: color-mix(in srgb, var(--ie-brand, #17539a) 13%, var(--ie-bg, #fff));
	--fp-bg: var(--ie-bg, #fff);
	--fp-surface: var(--ie-surface, #f6f8fb);
	--fp-card: var(--ie-bg, #fff);
	--fp-line: var(--ie-border, #dce4ef);
	--fp-text: var(--ie-text, #142238);
	--fp-muted: var(--ie-text-muted, #627086);
	--fp-on-deep: #fff;
	--fp-on-deep-soft: rgba(255,255,255,.78);
	--fp-on-deep-line: rgba(255,255,255,.19);
	--fp-shadow: 0 18px 55px rgba(18,58,103,.12);
	--fp-shadow-lg: 0 34px 84px rgba(7,32,68,.22);
	--fp-ease: cubic-bezier(.22,.8,.22,1);
	--fp-container: min(var(--ie-container, 1140px), 92vw);
	color: var(--fp-text);
	background: var(--fp-bg);
}
[data-theme="dark"] .ie-fp {
	--fp-deep: color-mix(in srgb, var(--ie-brand, #8fc6ff) 20%, #06101d);
	--fp-deep-2: color-mix(in srgb, var(--ie-brand, #8fc6ff) 28%, #06101d);
	--fp-tint: color-mix(in srgb, var(--ie-brand, #8fc6ff) 10%, var(--ie-bg, #0d1621));
	--fp-tint-2: color-mix(in srgb, var(--ie-brand, #8fc6ff) 17%, var(--ie-bg, #0d1621));
	--fp-card: var(--ie-surface, #111c28);
	--fp-shadow: 0 18px 55px rgba(0,0,0,.34);
	--fp-shadow-lg: 0 34px 84px rgba(0,0,0,.50);
}
.ie-fp__container { width: var(--fp-container); margin-inline: auto; }
.ie-fp button,.ie-fp input { font: inherit; }
.ie-fp [hidden] { display: none !important; }
.ie-fp-eyebrow { display:flex;align-items:center;gap:10px;margin:0;color:var(--fp-brand);font-size:.74rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase; }
.ie-fp-eyebrow::before { content:"";width:28px;height:2px;border-radius:99px;background:currentColor;transition:width .3s var(--fp-ease); }
.ie-fp section:hover .ie-fp-eyebrow::before { width:44px; }
.ie-fp-sectionhead { max-width:770px;margin-bottom:34px; }
.ie-fp-sectionhead h2,.ie-fp-banks__intro h2 { margin:12px 0 12px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,4vw,3.25rem);font-weight:400;line-height:1.04;letter-spacing:-.04em; }
.ie-fp-sectionhead > p:last-child,.ie-fp-banks__intro > p { color:var(--fp-muted);line-height:1.8;margin:0;font-size:1rem; }
.ie-js .ie-fp-reveal { opacity:0;transform:translateY(22px);transition:opacity .65s var(--fp-ease),transform .65s var(--fp-ease); }
.ie-js .ie-fp-reveal.is-visible { opacity:1;transform:none; }

.ie-fp-hero { position:relative;overflow:hidden;min-height:570px;display:flex;align-items:center;padding:clamp(70px,9vw,126px) 0;background:linear-gradient(115deg,var(--fp-deep),var(--fp-deep-2));color:var(--fp-on-deep); }
.ie-fp-hero::before { content:"";position:absolute;inset:0;background:radial-gradient(circle at 74% 22%,rgba(255,255,255,.10),transparent 34%),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px);background-size:auto,44px 44px,44px 44px;mask-image:linear-gradient(90deg,transparent 10%,#000 60%,#000); }
.ie-fp-hero__glow { position:absolute;width:420px;height:420px;border-radius:50%;right:9%;top:13%;background:color-mix(in srgb,var(--fp-brand) 35%,#fff);filter:blur(95px);opacity:.18; }
.ie-fp-hero__grid { position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.72fr);gap:clamp(44px,7vw,96px);align-items:center; }
.ie-fp-hero .ie-fp-eyebrow { color:#b9dcff; }
.ie-fp-hero h1 { max-width:780px;margin:16px 0 22px;color:var(--fp-on-deep);font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.65rem,5.2vw,4.85rem);line-height:.98;letter-spacing:-.055em;font-weight:400; }
.ie-fp-hero__lead { max-width:680px;margin:0;color:var(--fp-on-deep-soft);font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.78; }
.ie-fp-hero__actions { display:flex;flex-wrap:wrap;gap:11px;margin-top:30px; }
.ie-fp-btn { display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 20px;border:1px solid transparent;border-radius:999px;font-size:.86rem;font-weight:800;transition:transform .25s var(--fp-ease),background .25s ease,box-shadow .25s ease; }
.ie-fp-btn:hover { transform:translateY(-2px); }
.ie-fp-btn--light { background:#fff;color:var(--fp-deep); }
.ie-fp-btn--light:hover { color:var(--fp-deep);box-shadow:0 14px 30px rgba(0,0,0,.18); }
.ie-fp-btn--ghost { border-color:var(--fp-on-deep-line);background:rgba(255,255,255,.08);color:#fff; }
.ie-fp-btn--ghost:hover { color:#fff;background:rgba(255,255,255,.14); }
.ie-fp-hero__preview { position:relative;padding:26px;border:1px solid rgba(255,255,255,.18);border-radius:28px;background:linear-gradient(155deg,rgba(255,255,255,.15),rgba(255,255,255,.07));box-shadow:var(--fp-shadow-lg);backdrop-filter:blur(14px); }
.ie-fp-hero__preview::after { content:"";position:absolute;inset:8px;border:1px solid rgba(255,255,255,.08);border-radius:21px;pointer-events:none; }
.ie-fp-preview__top { display:flex;align-items:center;justify-content:space-between;color:rgba(255,255,255,.72);font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em; }
.ie-fp-preview__top i { width:9px;height:9px;border-radius:50%;background:#a9d7ff;box-shadow:0 0 0 5px rgba(169,215,255,.12); }
.ie-fp-preview__value { margin-top:38px;font-size:clamp(2rem,3.4vw,3.15rem);font-weight:750;letter-spacing:-.04em; }
.ie-fp-hero__preview > p { margin:3px 0 28px;color:rgba(255,255,255,.66);font-size:.85rem; }
.ie-fp-preview__bars { height:78px;display:flex;align-items:flex-end;gap:9px;padding-bottom:15px;border-bottom:1px solid rgba(255,255,255,.14); }
.ie-fp-preview__bars i { flex:1;border-radius:7px 7px 2px 2px;background:linear-gradient(#bde2ff,rgba(189,226,255,.22));animation:ie-fp-pulse 3.6s ease-in-out infinite alternate; }
.ie-fp-preview__bars i:nth-child(1){height:35%}.ie-fp-preview__bars i:nth-child(2){height:52%;animation-delay:.2s}.ie-fp-preview__bars i:nth-child(3){height:75%;animation-delay:.4s}.ie-fp-preview__bars i:nth-child(4){height:61%;animation-delay:.6s}.ie-fp-preview__bars i:nth-child(5){height:88%;animation-delay:.8s}
@keyframes ie-fp-pulse { to { opacity:.62;transform:scaleY(.88);transform-origin:bottom; } }
.ie-fp-preview__meta { display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px; }
.ie-fp-preview__meta span { display:flex;flex-direction:column;gap:3px; }
.ie-fp-preview__meta small { color:rgba(255,255,255,.58);font-size:.72rem; }
.ie-fp-preview__meta strong { color:#fff;font-size:.95rem; }

.ie-fp-calculator { padding:clamp(76px,9vw,124px) 0;background:linear-gradient(180deg,var(--fp-bg),var(--fp-tint)); }
.ie-fp-calcgrid { display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.72fr);gap:30px;align-items:start; }
.ie-fp-form,.ie-fp-result { border:1px solid var(--fp-line);border-radius:24px;background:var(--fp-card);box-shadow:var(--fp-shadow); }
.ie-fp-form { padding:clamp(22px,3vw,34px); }
.ie-fp-mode { display:grid;grid-template-columns:1fr 1fr;padding:5px;margin-bottom:28px;border:1px solid var(--fp-line);border-radius:14px;background:var(--fp-tint); }
.ie-fp-mode button { min-height:43px;border:0;border-radius:10px;background:transparent;color:var(--fp-muted);cursor:pointer;font-weight:750;transition:background .2s ease,color .2s ease,box-shadow .2s ease; }
.ie-fp-mode button.is-active { background:var(--fp-card);color:var(--fp-brand);box-shadow:0 2px 10px rgba(23,83,154,.10); }
.ie-fp-field,.ie-fp-property { margin-bottom:24px; }
.ie-fp-field > label,.ie-fp-property > label,.ie-fp-system legend { display:block;margin-bottom:8px;color:var(--fp-text);font-size:.82rem;font-weight:750; }
.ie-fp-field label small { color:var(--fp-muted);font-weight:500; }
.ie-fp-money,.ie-fp-percent,.ie-fp-property__search { display:flex;align-items:center;min-height:54px;border:1px solid var(--fp-line);border-radius:13px;background:var(--fp-bg);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease; }
.ie-fp-money:focus-within,.ie-fp-percent:focus-within,.ie-fp-property__search:focus-within { border-color:var(--fp-brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--fp-brand) 14%,transparent); }
.ie-fp-money > span,.ie-fp-percent > span { flex:0 0 auto;padding-left:15px;color:var(--fp-muted);font-size:.82rem;font-weight:700; }
.ie-fp-money input,.ie-fp-percent input,.ie-fp-property__search input { width:100%;min-width:0;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;color:var(--fp-text);font-size:1rem;padding:14px 15px; }
.ie-fp-percent input { text-align:right; }
.ie-fp-percent > span { order:2;padding:0 15px 0 0; }
.ie-fp-fieldset { display:grid;grid-template-columns:1fr 150px;gap:14px; }
.ie-fp-field__line { display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:11px; }
.ie-fp-field__line label { font-size:.82rem;font-weight:750; }
.ie-fp-field__line output { color:var(--fp-brand);font-size:.84rem;font-weight:800; }
.ie-fp-rangefield input[type="range"] { width:100%;accent-color:var(--fp-brand);cursor:pointer; }
.ie-fp-rangefield__ticks { display:flex;justify-content:space-between;margin-top:4px;color:var(--fp-muted);font-size:.69rem; }
.ie-fp-system { display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:0 0 24px;padding:0;border:0; }
.ie-fp-system legend { grid-column:1/-1; }
.ie-fp-system label { position:relative;display:block;cursor:pointer; }
.ie-fp-system input { position:absolute;opacity:0;pointer-events:none; }
.ie-fp-system span { display:flex;flex-direction:column;gap:3px;min-height:70px;padding:13px 15px;border:1px solid var(--fp-line);border-radius:13px;background:var(--fp-bg);transition:border .2s ease,background .2s ease,transform .2s ease; }
.ie-fp-system span:hover { transform:translateY(-1px); }
.ie-fp-system input:checked + span { border-color:var(--fp-brand);background:var(--fp-tint-2);box-shadow:inset 0 0 0 1px var(--fp-brand); }
.ie-fp-system strong { font-size:.9rem;color:var(--fp-text); }
.ie-fp-system small { color:var(--fp-muted);font-size:.75rem; }
.ie-fp-property { position:relative; }
.ie-fp-property__search svg { width:19px;height:19px;margin-left:15px;fill:none;stroke:var(--fp-muted);stroke-width:1.8; }
.ie-fp-property__results { position:absolute;z-index:12;top:82px;left:0;right:0;max-height:330px;overflow:auto;padding:6px;border:1px solid var(--fp-line);border-radius:14px;background:var(--fp-card);box-shadow:var(--fp-shadow-lg); }
.ie-fp-property__status { padding:14px;color:var(--fp-muted);font-size:.83rem; }
.ie-fp-property__item { width:100%;display:grid;grid-template-columns:54px 1fr auto;gap:12px;align-items:center;padding:9px;border:0;border-radius:10px;background:transparent;color:var(--fp-text);text-align:left;cursor:pointer;transition:background .18s ease,transform .18s ease; }
.ie-fp-property__item:hover { background:var(--fp-tint);transform:translateX(2px); }
.ie-fp-property__item img { width:54px;height:46px;object-fit:cover;border-radius:8px;background:var(--fp-tint); }
.ie-fp-property__item strong { display:block;font-size:.82rem;line-height:1.35; }
.ie-fp-property__item small { display:block;margin-top:2px;color:var(--fp-muted);font-size:.7rem; }
.ie-fp-property__item b { color:var(--fp-brand);font-size:.8rem;white-space:nowrap; }
.ie-fp-property__selected { margin-top:10px;padding:12px 13px;border-radius:12px;background:var(--fp-tint);color:var(--fp-text);font-size:.8rem; }
.ie-fp-property__selected strong { color:var(--fp-brand); }

.ie-fp-result { position:sticky;top:105px;overflow:hidden; }
.ie-fp-result__head { display:flex;justify-content:space-between;align-items:center;gap:16px;padding:19px 22px;border-bottom:1px solid var(--fp-line);background:var(--fp-tint); }
.ie-fp-result__head > div { display:flex;align-items:center;gap:8px; }
.ie-fp-result__head span { color:var(--fp-muted);font-size:.72rem; }
.ie-fp-result__head strong { color:var(--fp-brand);font-size:.74rem;text-transform:uppercase;letter-spacing:.08em; }
.ie-fp-result__live { display:inline-flex!important;align-items:center;gap:6px; }
.ie-fp-result__live i { width:7px;height:7px;border-radius:50%;background:var(--ie-success,#198754);box-shadow:0 0 0 4px color-mix(in srgb,var(--ie-success,#198754) 13%,transparent); }
.ie-fp-result__primary { padding:28px 22px 24px; }
.ie-fp-result__primary small { display:block;color:var(--fp-muted);font-size:.78rem; }
.ie-fp-result__primary > strong { display:block;margin-top:5px;color:var(--fp-text);font-size:clamp(2rem,4vw,3.1rem);line-height:1;letter-spacing:-.045em; }
.ie-fp-result__primary > span { display:block;margin-top:9px;color:var(--fp-muted);font-size:.78rem; }
.ie-fp-result__grid { display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--fp-line);border-top:1px solid var(--fp-line);border-bottom:1px solid var(--fp-line); }
.ie-fp-result__grid > div { min-height:88px;padding:17px 20px;background:var(--fp-card); }
.ie-fp-result__grid span { display:block;color:var(--fp-muted);font-size:.7rem; }
.ie-fp-result__grid strong { display:block;margin-top:4px;color:var(--fp-text);font-size:.9rem; }
.ie-fp-rate { margin:20px 22px 0;padding:15px;border:1px solid var(--fp-line);border-radius:13px;background:var(--fp-tint); }
.ie-fp-rate > span { color:var(--fp-muted);font-size:.7rem; }
.ie-fp-rate > strong { display:block;margin-top:2px;color:var(--fp-brand);font-size:1rem; }
.ie-fp-rate p { margin:7px 0 0;color:var(--fp-muted);font-size:.69rem;line-height:1.55; }
.ie-fp-result__notice { display:grid;grid-template-columns:20px 1fr;gap:10px;margin:18px 22px 22px;align-items:start;color:var(--fp-muted); }
.ie-fp-result__notice svg { width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8; }
.ie-fp-result__notice p { margin:0;font-size:.7rem;line-height:1.55; }

.ie-fp-how { padding:clamp(68px,8vw,110px) 0;background:var(--fp-bg); }
.ie-fp-how__grid { display:grid;grid-template-columns:repeat(3,1fr);gap:18px; }
.ie-fp-how__card { position:relative;min-height:225px;padding:27px;border:1px solid var(--fp-line);border-radius:20px;background:var(--fp-card);overflow:hidden;transition:transform .28s var(--fp-ease),box-shadow .28s ease,border-color .28s ease; }
.ie-fp-how__card:hover { transform:translateY(-5px);border-color:color-mix(in srgb,var(--fp-brand) 44%,var(--fp-line));box-shadow:var(--fp-shadow); }
.ie-fp-how__card > span { display:inline-flex;align-items:center;justify-content:center;width:39px;height:39px;border-radius:12px;background:var(--fp-tint-2);color:var(--fp-brand);font-size:.72rem;font-weight:850; }
.ie-fp-how__card h3 { margin:32px 0 8px;font-size:1.03rem; }
.ie-fp-how__card p { margin:0;color:var(--fp-muted);font-size:.84rem;line-height:1.72; }
.ie-fp-how__card::after { content:"";position:absolute;width:90px;height:90px;border-radius:50%;right:-45px;bottom:-45px;background:var(--fp-tint-2);transition:transform .35s var(--fp-ease); }
.ie-fp-how__card:hover::after { transform:scale(1.35); }

.ie-fp-banks { padding:clamp(76px,9vw,124px) 0;background:var(--fp-tint); }
.ie-fp-banks__intro { display:grid;grid-template-columns:1.1fr .7fr;gap:clamp(28px,6vw,90px);align-items:end;margin-bottom:38px; }
.ie-fp-banks__intro h2 { margin-bottom:0; }
.ie-fp-bankgrid { display:grid;grid-template-columns:repeat(3,1fr);gap:16px; }
.ie-fp-bank { position:relative;display:flex;flex-direction:column;min-height:280px;padding:24px;border:1px solid var(--fp-line);border-radius:20px;background:var(--fp-card);box-shadow:0 8px 30px rgba(18,58,103,.06);overflow:hidden;transition:transform .28s var(--fp-ease),box-shadow .28s ease,border-color .28s ease; }
.ie-fp-bank:hover { transform:translateY(-5px);border-color:color-mix(in srgb,var(--fp-brand) 36%,var(--fp-line));box-shadow:var(--fp-shadow); }
.ie-fp-bank__logo { display:flex;align-items:center;height:46px;margin-bottom:28px; }
.ie-fp-bank__logo img { display:block;max-width:132px;max-height:39px;width:auto;height:auto; }
.ie-fp-bank__logo strong { font-size:1.1rem; }
.ie-fp-bank__body > span { color:var(--fp-brand);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em; }
.ie-fp-bank__body h3 { margin:5px 0 8px;font-size:1.05rem; }
.ie-fp-bank__body p { margin:0;color:var(--fp-muted);font-size:.79rem;line-height:1.65; }
.ie-fp-bank__link { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:20px;border-top:1px solid var(--fp-line);color:var(--fp-text);font-size:.78rem;font-weight:800; }
.ie-fp-bank__link b { display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:var(--fp-tint-2);color:var(--fp-brand);transition:transform .22s ease,background .22s ease; }
.ie-fp-bank__link:hover { color:var(--fp-brand); }
.ie-fp-bank__link:hover b { transform:translate(2px,-2px);background:var(--fp-brand);color:var(--fp-brand-ink); }
.ie-fp-prose { padding:70px 0; }

@media (max-width: 980px) {
	.ie-fp-hero__grid,.ie-fp-calcgrid,.ie-fp-banks__intro { grid-template-columns:1fr; }
	.ie-fp-hero { min-height:auto; }
	.ie-fp-hero__preview { max-width:560px; }
	.ie-fp-result { position:relative;top:auto; }
	.ie-fp-bankgrid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 700px) {
	.ie-fp-hero { padding:62px 0 70px; }
	.ie-fp-hero h1 { font-size:clamp(2.35rem,12vw,3.35rem); }
	.ie-fp-hero__preview { padding:20px;border-radius:22px; }
	.ie-fp-calculator,.ie-fp-banks { padding:68px 0; }
	.ie-fp-form { padding:18px; }
	.ie-fp-fieldset { grid-template-columns:1fr 115px; }
	.ie-fp-how__grid,.ie-fp-bankgrid { grid-template-columns:1fr; }
	.ie-fp-result__grid { grid-template-columns:1fr 1fr; }
	.ie-fp-property__item { grid-template-columns:46px 1fr; }
	.ie-fp-property__item b { grid-column:2; }
}
@media (max-width: 460px) {
	.ie-fp-mode,.ie-fp-system,.ie-fp-fieldset,.ie-fp-result__grid { grid-template-columns:1fr; }
	.ie-fp-preview__meta { grid-template-columns:1fr; }
	.ie-fp-hero__actions { flex-direction:column;align-items:stretch; }
}
@media (prefers-reduced-motion: reduce) {
	.ie-fp *, .ie-fp *::before, .ie-fp *::after { animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important; }
	.ie-js .ie-fp-reveal { opacity:1;transform:none; }
}
