.xestui-calc {
  --xc-green: #103f35;
  --xc-green-deep: #082d27;
  --xc-green-soft: #dce9e3;
  --xc-gold: #c58a36;
  --xc-cream: #fbf7ee;
  --xc-paper: #fffdf8;
  --xc-ink: #172724;
  --xc-muted: #5c6b66;
  --xc-line: #ded8ca;
  --xc-loss: #8d3b2d;
  --xc-warning: #85631e;
  --xc-good: #1e684f;
  box-sizing: border-box;
  width: min(1180px, 100%);
  margin: clamp(2rem, 6vw, 5rem) auto;
  color: var(--xc-ink);
  font-family: inherit;
  line-height: 1.55;
  border: 1px solid color-mix(in srgb, var(--xc-green) 20%, transparent);
  border-radius: 28px;
  background: var(--xc-paper);
  box-shadow: 0 24px 70px rgba(8, 45, 39, .12);
  overflow: hidden;
  overflow: clip;
  container-type: inline-size;
}

body.xestui-sectorial-post .xestui-v34-fallback {
  width: min(920px, calc(100% - 42px));
}

.xestui-entry-hero {
  width: min(1268px, calc(100vw - 32px));
  max-width: none;
  margin: 21px 0 clamp(72px, 8vw, 109px) 50%;
  transform: translateX(-50%);
}

.xestui-entry-hero__image {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center 48%;
  border-radius: 0;
  box-shadow: 0 32px 90px rgba(11, 35, 20, .15);
}

.xestui-entry-hero figcaption {
  box-sizing: border-box;
  width: min(980px, calc(100% - 28px));
  margin: 0 auto;
  padding: 14px 0;
  color: #6b746e;
  font-size: .68rem;
  line-height: 1.7;
  text-align: center;
}

@media (max-width: 860px) {
  .xestui-entry-hero {
    width: calc(100vw - 42px);
    margin-bottom: 64px;
  }
}

@media (max-width: 620px) {
  .xestui-entry-hero {
    width: calc(100vw - 28px);
    margin-bottom: 55px;
  }
}

.xestui-sectorial-post .xestui-table-wrap {
	overscroll-behavior-inline: contain;
	-webkit-overflow-scrolling: touch;
}

.xestui-sectorial-post .xestui-table-wrap:focus-visible {
	outline: 3px solid rgba(10, 102, 194, .42);
	outline-offset: 3px;
}

.xestui-sectorial-post .xestui-article .xestui-cta a {
	box-sizing: border-box;
	max-width: 100%;
	color: #082d27;
	text-align: center;
	overflow-wrap: anywhere;
}

.xestui-calc .xestui-calc__eyebrow { color: #f2c66e; }
.xestui-calc .xestui-calc__section-kicker { color: #85631e; }

.xestui-sectorial-ind-02 .xestui-article > .xestui-visual {
	max-width: 482px;
}

.xestui-calc *,
.xestui-calc *::before,
.xestui-calc *::after { box-sizing: inherit; }
.xestui-calc [hidden] { display: none !important; }

.xestui-calc__hero {
  position: relative;
  padding: clamp(2rem, 5vw, 4.25rem);
  color: #fff;
  background:
    radial-gradient(circle at 92% 12%, rgba(197, 138, 54, .3), transparent 28%),
    linear-gradient(135deg, var(--xc-green-deep), var(--xc-green));
  isolation: isolate;
}

.xestui-calc__hero::after {
  content: "";
  position: absolute;
  inset: 18px;
  z-index: -1;
  border: 1px solid rgba(229, 179, 86, .55);
  border-radius: 18px;
  pointer-events: none;
}

.xestui-calc .xestui-calc__hero h2 {
  max-width: 850px;
  margin: .35rem 0 .75rem;
  color: #fff;
  font-size: clamp(2rem, 4.6vw, 4rem);
  line-height: 1.03;
  letter-spacing: -.035em;
}

.xestui-calc__hero > p:not(.xestui-calc__eyebrow) {
  max-width: 700px;
  margin: 0;
  color: rgba(255, 255, 255, .86);
  font-size: clamp(1rem, 1.6vw, 1.18rem);
}

.xestui-calc__eyebrow,
.xestui-calc__section-kicker {
  margin: 0;
  color: var(--xc-gold);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.xestui-calc__demo {
  display: inline-flex;
  flex-wrap: wrap;
  gap: .45rem 1rem;
  align-items: center;
  margin-top: 1.55rem;
  padding: .7rem 1rem;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: 999px;
  background: rgba(255, 255, 255, .08);
  font-size: .85rem;
}

.xestui-calc__demo strong { color: #f2c66e; }

.xestui-calc__notice {
  margin: 0;
  padding: .9rem clamp(1.4rem, 4vw, 3rem);
  color: #513a18;
  background: #fff0ca;
  border-bottom: 1px solid #edd59c;
  font-weight: 650;
}

.xestui-calc__workspace {
  display: grid;
  grid-template-columns: 1fr;
  align-items: start;
}

.xestui-calc__inputs,
.xestui-calc__access,
.xestui-calc__results { padding: clamp(1.5rem, 4vw, 3rem); }

.xestui-calc .xestui-calc__inputs h3,
.xestui-calc .xestui-calc__access h3,
.xestui-calc .xestui-calc__results h3 {
  margin: .35rem 0 1.4rem;
  color: var(--xc-green-deep);
  font-size: clamp(1.45rem, 2.5vw, 2rem);
  line-height: 1.15;
}

.xestui-calc__group {
  min-width: 0;
  margin: 1.5rem 0 0;
  padding: 1.2rem 0 0;
  border: 0;
  border-top: 1px solid var(--xc-line);
}

.xestui-calc__group legend {
  padding-right: .8rem;
  color: var(--xc-green);
  font-weight: 800;
}

.xestui-calc__fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: .95rem;
}

.xestui-calc__field { min-width: 0; }

.xestui-calc__field label {
  display: block;
  margin-bottom: .38rem;
  color: #263a34;
  font-size: .88rem;
  font-weight: 720;
}

.xestui-calc__field label span,
.xestui-calc__field small { color: var(--xc-muted); font-weight: 500; }

.xestui-calc__control-wrap { position: relative; }

.xestui-calc input[type="number"],
.xestui-calc input[type="text"],
.xestui-calc input[type="email"],
.xestui-calc input[type="tel"],
.xestui-calc select {
  width: 100%;
  min-height: 46px;
  margin: 0;
  padding: .7rem .85rem;
  color: var(--xc-ink);
  background: #fff;
  border: 1px solid #c9d1cc;
  border-radius: 10px;
  box-shadow: none;
  font: inherit;
}

.xestui-calc__control-wrap input { padding-right: 4.4rem; }

.xestui-calc input:focus-visible,
.xestui-calc select:focus-visible,
.xestui-calc button:focus-visible,
.xestui-calc a:focus-visible,
.xestui-calc summary:focus-visible {
  outline: 3px solid rgba(10, 102, 194, .35);
  outline-offset: 2px;
}

.xestui-calc input[aria-invalid="true"],
.xestui-calc select[aria-invalid="true"] { border-color: var(--xc-loss); }
.xestui-calc input[readonly] { color: #53615d; background: #f1f2ef; }

.xestui-calc__unit {
  position: absolute;
  top: 50%;
  right: .8rem;
  transform: translateY(-50%);
  color: var(--xc-muted);
  font-size: .8rem;
  pointer-events: none;
}

.xestui-calc__field > small { display: block; margin-top: .35rem; font-size: .76rem; line-height: 1.35; }
.xestui-calc__field-error { min-height: 1em; color: var(--xc-loss) !important; font-weight: 650 !important; }

.xestui-calc__access {
  position: static;
  margin: 0 1.5rem 1.5rem;
  border: 1px solid #d5ded8;
  border-radius: 20px;
  background: linear-gradient(180deg, #f2f7f4, #fffdf8);
}

.xestui-calc__access > p:not(.xestui-calc__section-kicker) { color: var(--xc-muted); }
.xestui-calc__identity { display: grid; gap: .9rem; margin: 1.2rem 0; }

.xestui-calc__privacy-basic {
  margin: 1rem 0;
  padding: .85rem 1rem;
  color: #4b5b56;
  background: #fff;
  border: 1px solid var(--xc-line);
  border-radius: 10px;
  font-size: .75rem;
}

.xestui-calc__privacy-basic p { margin: .25rem 0 0; }
.xestui-calc__privacy-basic a { color: #0a66c2; }

.xestui-calc__check {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: .65rem;
  align-items: start;
  margin: .9rem 0;
  color: #3e4d48;
  font-size: .78rem;
  cursor: pointer;
}

.xestui-calc__check input { width: 18px; height: 18px; margin: .12rem 0 0; accent-color: var(--xc-green); }

.xestui-calc__verification {
  margin: 1rem 0;
  padding: 1rem;
  background: #fff7df;
  border: 1px solid #e6c77e;
  border-radius: 12px;
}

.xestui-calc__verification label { display: block; margin-bottom: .45rem; color: var(--xc-green-deep); font-size: .86rem; font-weight: 800; }
.xestui-calc__verification input { text-align: center; font-size: 1.35rem !important; font-weight: 800 !important; letter-spacing: .2em; }
.xestui-calc__verification-resend {
  margin-top: .55rem;
  padding: 0;
  color: #0a66c2;
  background: transparent;
  border: 0;
  font: inherit;
  font-size: .8rem;
  font-weight: 750;
  text-decoration: underline;
  cursor: pointer;
}

.xestui-calc__submit,
.xestui-calc__resend,
.xestui-calc__lead-submit {
  width: 100%;
  min-height: 48px;
  margin-top: .7rem;
  padding: .75rem 1.15rem;
  color: #fff;
  background: var(--xc-green);
  border: 1px solid var(--xc-green);
  border-radius: 999px;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
  transition: transform .18s ease, background .18s ease, opacity .18s ease;
}

.xestui-calc__submit:hover:not(:disabled),
.xestui-calc__resend:hover:not(:disabled),
.xestui-calc__lead-submit:hover:not(:disabled) { transform: translateY(-1px); background: var(--xc-green-deep); }
.xestui-calc button:disabled { cursor: wait; opacity: .58; }

.xestui-calc__form-status,
.xestui-calc__mail-state,
.xestui-calc__newsletter-state,
.xestui-calc__lead-status { min-height: 1.5em; margin: .7rem 0 0; font-size: .82rem; font-weight: 650; }
.xestui-calc__form-status[data-state="error"] { color: var(--xc-loss); }
.xestui-calc__form-status[data-state="success"] { color: var(--xc-good); }
.xestui-calc__form-status[data-state="warning"] { color: var(--xc-warning); }
.xestui-calc__form-status[data-state="ready"] { color: var(--xc-green); }
.xestui-calc__newsletter-state[data-state="success"] { color: var(--xc-good); }
.xestui-calc__newsletter-state[data-state="warning"] { color: var(--xc-warning); }
.xestui-calc__lead-status[data-state="success"] { color: var(--xc-good); }
.xestui-calc__lead-status[data-state="warning"] { color: var(--xc-warning); }
.xestui-calc__lead-status[data-state="error"] { color: var(--xc-loss); }

.xestui-calc__honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

.xestui-calc__results {
  color: var(--xc-ink);
  background: var(--xc-cream);
  border-top: 1px solid var(--xc-line);
}

.xestui-calc__result-head {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: flex-start;
  justify-content: space-between;
}

.xestui-calc__status {
  display: inline-flex;
  align-items: center;
  max-width: 340px;
  padding: .55rem .85rem;
  border-radius: 999px;
  font-size: .8rem;
  font-weight: 800;
}

.xestui-calc__status[data-state="loss"] { color: #fff; background: var(--xc-loss); }
.xestui-calc__status[data-state="warning"] { color: #402e08; background: #f3d899; }
.xestui-calc__status[data-state="good"] { color: #fff; background: var(--xc-good); }

.xestui-calc__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.xestui-calc__cards article {
  min-width: 0;
  padding: clamp(1.1rem, 2vw, 1.55rem);
  background: #fff;
  border: 1px solid var(--xc-line);
  border-radius: 16px;
}

.xestui-calc__cards span { display: block; min-height: 2.7em; color: var(--xc-muted); font-size: .8rem; font-weight: 750; }
.xestui-calc__cards strong { display: block; margin-top: .35rem; color: var(--xc-green); font-size: clamp(1.55rem, 3.4vw, 2.7rem); line-height: 1; letter-spacing: -.03em; overflow-wrap: anywhere; }

.xestui-calc__diagnosis {
  margin: 1.2rem 0;
  padding: 1rem 1.15rem;
  background: #fff;
  border-left: 4px solid var(--xc-gold);
  border-radius: 0 12px 12px 0;
}

.xestui-calc__diagnosis p { margin: .25rem 0 0; }
.xestui-calc__details { margin: 1rem 0; padding: 1rem; background: #fff; border: 1px solid var(--xc-line); border-radius: 12px; }
.xestui-calc__details summary { color: var(--xc-green); font-weight: 800; cursor: pointer; }
.xestui-calc__details dl { display: grid; gap: 0; margin: .8rem 0 0; }
.xestui-calc__details dl div { display: flex; gap: 1rem; justify-content: space-between; padding: .55rem 0; border-top: 1px solid #eee9df; }
.xestui-calc__details dt { color: var(--xc-muted); }
.xestui-calc__details dd { margin: 0; color: var(--xc-green-deep); font-weight: 800; text-align: right; }
.xestui-calc__resend { width: auto; min-width: min(100%, 330px); background: transparent; color: var(--xc-green); }
.xestui-calc__resend:hover:not(:disabled) { color: #fff; }
.xestui-calc__lead {
  margin: 1.4rem 0;
  padding: 0;
  background: #fff;
  border: 1px solid #c7d7d0;
  border-radius: 16px;
  overflow: hidden;
}
.xestui-calc__lead > summary {
  padding: 1rem 1.2rem;
  color: #fff;
  background: var(--xc-green);
  font-weight: 800;
  cursor: pointer;
}
.xestui-calc__lead[open] > summary { background: var(--xc-green-deep); }
.xestui-calc__lead-intro { padding: 1.2rem 1.2rem 0; }
.xestui-calc__lead-intro p { margin: .3rem 0 0; color: var(--xc-muted); }
.xestui-calc__lead-form { padding: 1.2rem; }
.xestui-calc__lead-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.xestui-calc__lead-submit { width: auto; min-width: min(100%, 330px); }
.xestui-calc__disclaimer { color: var(--xc-muted); font-size: .76rem; }
.xestui-calc__error { color: var(--xc-loss); font-weight: 700; }

@container (min-width: 900px) {
  .xestui-calc__workspace { grid-template-columns: minmax(0, 1.618fr) minmax(300px, 1fr); }
  .xestui-calc__access { position: sticky; top: 1.5rem; margin: 1.5rem 1.5rem 1.5rem 0; }
}

@supports not (container-type: inline-size) {
  @media (min-width: 901px) {
    .xestui-calc__workspace { grid-template-columns: minmax(0, 1.618fr) minmax(300px, 1fr); }
    .xestui-calc__access { position: sticky; top: 1.5rem; margin: 1.5rem 1.5rem 1.5rem 0; }
  }
}

@container (max-width: 640px) {
  .xestui-calc__fields,
  .xestui-calc__cards,
  .xestui-calc__lead-grid { grid-template-columns: 1fr; }
  .xestui-calc__access { margin: 0 .9rem .9rem; }
  .xestui-calc__inputs,
  .xestui-calc__access,
  .xestui-calc__results { padding: 1.25rem; }
  .xestui-calc__cards span { min-height: 0; }
  .xestui-calc__details dl div { display: block; }
  .xestui-calc__details dd { margin-top: .2rem; text-align: left; }
}

@media (max-width: 640px) {
	body.xestui-sectorial-post .xestui-v34-fallback {
		width: calc(100% - 26px);
	}

	.xestui-sectorial-obr-01 .xestui-table-wrap table,
	.xestui-sectorial-tra-02 .xestui-table-wrap table {
		min-width: 42rem;
	}

	.xestui-sectorial-tra-01 .xestui-table-wrap table {
		min-width: 36rem;
	}

	.xestui-sectorial-ind-02 .xestui-article > .xestui-visual {
		max-width: 100%;
	}

  .xestui-calc { border-radius: 18px; }
  .xestui-calc__hero::after { inset: 10px; border-radius: 12px; }
  .xestui-calc__fields,
  .xestui-calc__cards,
  .xestui-calc__lead-grid { grid-template-columns: 1fr; }
  .xestui-calc__access { margin: 0 .9rem .9rem; }
  .xestui-calc__inputs,
  .xestui-calc__access,
  .xestui-calc__results { padding: 1.25rem; }
  .xestui-calc__cards span { min-height: 0; }
  .xestui-calc__details dl div { display: block; }
  .xestui-calc__details dd { margin-top: .2rem; text-align: left; }
}

@media (min-width: 1200px) {
	.xestui-sectorial-post .xestui-article > .xestui-calc {
		width: min(1180px, calc(100vw - 48px));
		max-width: none;
		margin-left: 50%;
		margin-right: 0;
		transform: translateX(-50%);
	}
}

@media (prefers-reduced-motion: reduce) {
  .xestui-calc *,
  .xestui-calc *::before,
  .xestui-calc *::after { scroll-behavior: auto !important; transition: none !important; }
}
