/* =========================================================
   BUROFÁCIL — Home Equity page styles
   ========================================================= */

/* (nav--switch styles now live in styles.css since used on both pages) */

/* ============================================================
   HERO — 50/50 image left, copy right on paper bg
   ============================================================ */
.he-hero{
  display:grid;
  grid-template-columns:1fr 1fr;
  background:var(--paper);
  min-height:680px;
}
.he-hero__media{
  position:relative;
  overflow:hidden;
}
.he-hero__photo{
  position:absolute; inset:0;
  background-size:cover;
  background-position:center;
}
.he-hero__copy{
  display:flex;
  align-items:center;
  padding:80px 56px 80px 64px;
}
.he-hero__copy-inner{max-width:560px}
.he-hero__title{
  font-family:var(--serif);
  font-weight:500;
  font-size:clamp(36px, 4vw, 58px);
  line-height:1.04;
  letter-spacing:-0.02em;
  margin:0 0 20px;
  text-wrap:balance;
  color:var(--ink);
}
.he-hero__sub{
  font-size:16px;
  line-height:1.6;
  color:var(--ink-2);
  margin:0 0 36px;
  max-width:520px;
}
.he-hero__stats{
  list-style:none;
  display:flex;
  gap:32px;
  margin:0 0 36px;
  padding:24px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  flex-wrap:wrap;
}
.he-hero__stats li{display:flex;flex-direction:column;gap:6px}
.he-hero__num{
  font-family:var(--serif);
  font-weight:500;
  font-size:34px;
  line-height:1;
  letter-spacing:-0.02em;
  margin:0;
  color:var(--ink);
  font-variant-numeric:tabular-nums;
  display:flex;align-items:baseline;gap:4px;
  white-space:nowrap;
}
.he-hero__num span{
  font-size:14px;
  color:var(--ink-3);
  font-weight:400;
  letter-spacing:0;
  white-space:nowrap;
}
.he-hero__lbl{
  font-size:12px;
  color:var(--ink-3);
  margin:0;
}
.he-hero__ctas{display:flex;gap:12px;flex-wrap:wrap}

/* Dark CTA — used on light backgrounds */
.btn--dark{background:#1a1612;color:#fff}
.btn--dark:hover{background:#2a241e}

/* ============================================================
   COMPARANDO + SIMULATOR
   ============================================================ */
.he-compare{padding:96px 0 96px;background:var(--paper)}
.he-compare__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:64px;
  align-items:start;
  margin-bottom:72px;
}
.he-compare__lede{
  font-size:16px;
  line-height:1.65;
  color:var(--ink-2);
  margin:18px 0 28px;
  max-width:480px;
}
.he-compare__badges{
  list-style:none;
  margin:0; padding:0;
  display:flex; gap:12px; flex-wrap:wrap;
}
.he-compare__badges li{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:14px 18px;
  border:1px solid var(--line);
  border-radius:8px;
  font-size:12px;
  letter-spacing:0.12em;
  font-weight:600;
  color:var(--ink);
  background:#fff;
}
.he-compare__badges svg{color:var(--orange);flex:none}

/* SIMULATOR */
.simulator{
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  padding:28px 28px 24px;
  box-shadow:0 24px 60px -38px rgba(26,22,18,.2);
}
.simulator__eyebrow{margin:0 0 18px}
.simulator__row{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  margin-bottom:10px;
}
.simulator__lbl{
  font-size:14px;
  color:var(--ink-2);
  font-weight:500;
}
.simulator__val{
  font-family:var(--serif);
  font-size:20px;
  font-weight:500;
  color:var(--ink);
  font-variant-numeric:tabular-nums;
}

.simulator__slider{
  -webkit-appearance:none;
  appearance:none;
  width:100%;
  height:6px;
  border-radius:999px;
  background:var(--line);
  outline:none;
  margin:6px 0 6px;
}
.simulator__slider::-webkit-slider-runnable-track{
  height:6px;
  border-radius:999px;
  background:linear-gradient(to right, var(--orange) 0%, var(--orange) var(--p,30%), var(--line) var(--p,30%), var(--line) 100%);
}
.simulator__slider::-moz-range-track{
  height:6px;
  border-radius:999px;
  background:var(--line);
}
.simulator__slider::-moz-range-progress{
  height:6px;
  background:var(--orange);
  border-radius:999px;
}
.simulator__slider::-webkit-slider-thumb{
  -webkit-appearance:none;
  width:20px;height:20px;
  border-radius:50%;
  background:#fff;
  border:2px solid var(--orange);
  margin-top:-7px;
  cursor:pointer;
  box-shadow:0 2px 6px rgba(0,0,0,.15);
}
.simulator__slider::-moz-range-thumb{
  width:20px;height:20px;
  border-radius:50%;
  background:#fff;
  border:2px solid var(--orange);
  cursor:pointer;
  box-shadow:0 2px 6px rgba(0,0,0,.15);
}

.simulator__range{
  display:flex;
  justify-content:space-between;
  font-size:12px;
  color:var(--ink-3);
  margin-bottom:24px;
}
.simulator__hint{
  font-size:13.5px;
  color:var(--ink-2);
  margin:0 0 4px;
}
.simulator__amount{
  font-family:var(--serif);
  font-weight:500;
  font-size:48px;
  letter-spacing:-0.02em;
  line-height:1;
  margin:0 0 22px;
  color:var(--ink);
  font-variant-numeric:tabular-nums;
}
.simulator__cta{
  width:100%;
  justify-content:center;
}
.simulator__fine{
  margin:12px 0 0;
  font-size:12px;
  color:var(--ink-3);
  text-align:center;
}

/* COMPARISON TABLE */
.he-table__head{text-align:center;margin-bottom:32px}
.he-table__title{
  font-family:var(--serif);
  font-weight:500;
  font-size:clamp(26px, 2.6vw, 36px);
  line-height:1.1;
  letter-spacing:-0.015em;
  margin:0 0 10px;
}
.he-table__sub{
  font-size:14px;
  color:var(--ink-2);
  margin:0;
}
.he-table{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  align-items:stretch;
}
.he-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  padding:24px 22px 22px;
  display:flex;
  flex-direction:column;
  gap:6px;
  position:relative;
}
.he-card--reco{
  border:2px solid var(--orange);
  padding-top:30px;
}
.he-card__pin{
  position:absolute;
  top:-12px; left:18px;
  background:var(--orange);
  color:#fff;
  font-size:10.5px;
  font-weight:700;
  padding:5px 12px;
  border-radius:6px;
  letter-spacing:0.14em;
}
.he-card__brand{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 0 14px;
}
.he-card__logo{height:18px;width:auto}
.he-card__type{
  font-size:11px;
  letter-spacing:0.14em;
  font-weight:700;
  color:var(--ink);
}
.he-card__label{
  font-size:11px;
  letter-spacing:0.14em;
  font-weight:700;
  color:var(--ink-3);
  margin:0 0 14px;
  line-height:1.25;
}
.he-card__price{
  font-family:var(--serif);
  font-weight:500;
  font-size:34px;
  line-height:1.05;
  letter-spacing:-0.02em;
  margin:0;
  color:var(--ink);
  font-variant-numeric:tabular-nums;
}
.he-card__price--alarm{color:#c62828}
.he-card__meta{
  font-size:13px;
  color:var(--ink-2);
  margin:0;
}
.he-card__taxa{
  font-size:13px;
  color:var(--ink-2);
  margin:0 0 8px;
}
.he-card__verdict{
  margin:auto 0 0;
  font-size:14px;
  font-weight:600;
  padding-top:8px;
}
.he-card__verdict--good{color:#2e7d32}
.he-card__verdict--bad{color:#c62828}
.he-table__foot{
  text-align:center;
  font-size:12px;
  color:var(--ink-3);
  margin:24px 0 0;
  max-width:720px;
  margin-left:auto;
  margin-right:auto;
  line-height:1.55;
}

/* ============================================================
   COMO FUNCIONA (steps)
   ============================================================ */
.he-steps{padding:96px 0}
.he-steps__head{text-align:center;margin-bottom:56px}
.he-steps__head .eyebrow{margin:0 0 14px}
.he-steps__title{margin:0;font-size:clamp(28px,3.4vw,46px)}
.he-steps__grid{
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:64px;
  align-items:center;
}
.he-steps__list{
  list-style:none;
  margin:0; padding:0;
  display:flex;
  flex-direction:column;
}
.he-steps__list li{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:24px;
  padding:22px 8px;
  border-bottom:1px solid var(--line);
}
.he-steps__list li:last-child{border-bottom:0}
.he-steps__num{
  font-family:var(--serif);
  font-weight:500;
  font-size:46px;
  line-height:1;
  color:var(--orange);
  letter-spacing:-0.02em;
  font-variant-numeric:tabular-nums;
}
.he-steps__name{
  font-family:var(--serif);
  font-weight:500;
  font-size:22px;
  letter-spacing:-0.01em;
  margin:0 0 4px;
  color:var(--ink);
}
.he-steps__desc{margin:0;font-size:14px;color:var(--ink-2)}
.he-steps__time{
  font-size:12px;
  letter-spacing:0.16em;
  font-weight:700;
  color:var(--orange);
}
.he-steps__media{position:relative}
.he-steps__photo{
  aspect-ratio:4/5;
  border-radius:14px;
  background-size:cover;
  background-position:center;
  border:1px solid var(--line);
}

/* ============================================================
   PARA QUEM CABE
   ============================================================ */
.he-who{padding:96px 0}
.he-who__head{text-align:center;margin-bottom:56px}
.he-who__head .eyebrow{margin:0 0 14px}
.he-who__grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.who-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  padding:30px 28px;
  display:flex;
  flex-direction:column;
  gap:14px;
  transition:transform .25s, box-shadow .25s, border-color .25s;
}
.who-card:hover{
  transform:translateY(-2px);
  box-shadow:0 24px 50px -32px rgba(26,22,18,.2);
  border-color:#dbcfb9;
}
.who-card__icon{
  width:62px;height:62px;
  border-radius:50%;
  background:var(--paper-2);
  display:flex;align-items:center;justify-content:center;
  color:var(--ink);
}
.who-card__icon svg{width:46px;height:46px}
.who-card__title{
  font-family:var(--serif);
  font-weight:500;
  font-size:22px;
  line-height:1.15;
  letter-spacing:-0.01em;
  margin:8px 0 0;
  min-height:50px;
  text-wrap:balance;
}
.who-card__div{
  border:0;
  border-top:1px solid var(--line);
  margin:0;
}
.who-card__sub{margin:0;font-size:13.5px;color:var(--ink-2)}

/* ============================================================
   CASOS DE USO
   ============================================================ */
.he-uses{padding:96px 0}
.he-uses__head{margin-bottom:48px}
.he-uses__head .eyebrow{margin:0 0 10px}
.he-uses__head .h2{margin:0}
.he-uses__grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.use-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:12px;
  padding:22px 24px;
  display:flex;
  align-items:center;
  gap:20px;
}
.use-card__icon{
  width:54px;height:54px;
  flex:none;
  display:flex;align-items:center;justify-content:center;
  color:var(--ink);
}
.use-card__icon svg{width:48px;height:48px}
.use-card__title{
  font-family:var(--serif);
  font-weight:500;
  font-size:20px;
  line-height:1.15;
  letter-spacing:-0.01em;
  margin:0 0 4px;
}
.use-card__desc{margin:0;font-size:14px;color:var(--ink-2)}

/* ============================================================
   FAQ
   ============================================================ */
.he-faq{padding:96px 0}
.he-faq__title{margin:0 0 36px}
.he-faq__grid{
  display:grid;
  grid-template-columns:1.05fr 1fr;
  gap:64px;
  align-items:start;
}
.he-faq__art{position:sticky;top:24px}
.he-faq__art svg{width:100%;height:auto;max-width:520px;margin-left:auto;display:block}

.faq{display:flex;flex-direction:column}
.faq__item{
  border-top:1px solid var(--line);
  padding:0;
}
.faq__item:last-child{border-bottom:1px solid var(--line)}
.faq__item summary{
  list-style:none;
  cursor:pointer;
  padding:20px 4px;
  font-size:15.5px;
  font-weight:500;
  color:var(--ink);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  transition:color .2s;
}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary:hover{color:var(--orange-2)}
.faq__plus{
  font-family:var(--sans);
  font-weight:400;
  font-size:22px;
  color:var(--orange);
  line-height:1;
  transition:transform .25s;
}
.faq__item[open] .faq__plus{transform:rotate(45deg)}
.faq__body{
  padding:0 4px 22px;
  font-size:14.5px;
  line-height:1.65;
  color:var(--ink-2);
  max-width:560px;
}

/* ============================================================
   CTA FINAL — dark contained card with key photo (matches index pattern)
   ============================================================ */
.he-cta{
  background:var(--bg);
  padding:80px 0;
}
.he-cta__card{
  background:var(--bg-2);
  border-radius:var(--radius-lg);
  overflow:hidden;
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:stretch;
  min-height:440px;
  color:#fff;
  border:1px solid rgba(255,255,255,.06);
}
.he-cta__copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:64px 56px;
}
.he-cta__title{
  margin:0;
  font-size:clamp(32px, 3.6vw, 52px);
  line-height:1.05;
  letter-spacing:-0.02em;
  max-width:520px;
}
.he-cta__sub{
  font-size:16px;
  color:rgba(255,255,255,.78);
  margin:18px 0 28px;
  max-width:480px;
  line-height:1.55;
}
.he-cta__ctas{display:flex;gap:12px;flex-wrap:wrap}
.he-cta__media{
  background-size:cover;
  background-position:center;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 980px){
  .he-hero{grid-template-columns:1fr;min-height:0}
  .he-hero__media{height:340px}
  .he-hero__copy{padding:48px 22px}
  .he-compare__grid{grid-template-columns:1fr;gap:40px}
  .he-table{grid-template-columns:1fr 1fr}
  .he-steps__grid{grid-template-columns:1fr;gap:40px}
  .he-steps__media{max-width:420px;margin:0 auto;width:100%}
  .he-who__grid{grid-template-columns:1fr 1fr}
  .he-uses__grid{grid-template-columns:1fr}
  .he-faq__grid{grid-template-columns:1fr;gap:32px}
  .he-faq__art{order:-1;position:static}
  .he-faq__art svg{max-width:340px;margin:0 auto}
  .he-cta__card{grid-template-columns:1fr;min-height:0}
  .he-cta__copy{padding:48px 32px}
  .he-cta__media{min-height:280px}
}

@media (max-width: 640px){
  .he-table{grid-template-columns:1fr}
  .he-who__grid{grid-template-columns:1fr}
  .he-hero__stats{gap:20px}
  .he-hero__num{font-size:28px}
  .he-steps__list li{
    grid-template-columns:auto 1fr;
    grid-template-areas:"num body" "num time";
    gap:8px 18px;
  }
  .he-steps__num{grid-area:num;font-size:38px;align-self:start}
  .he-steps__body{grid-area:body}
  .he-steps__time{grid-area:time;justify-self:start}
}
