/* ── Calculadora AGAME — estilos propios ── */
.calc-hero {
  padding: 3rem 0 2rem;
  text-align: center;
}
.calc-hero .svc-eyebrow {
  font-size: .7rem;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--beige-2);
  opacity: .65;
  margin-bottom: .75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.calc-hero .svc-eyebrow::before {
  content: '';
  width: 18px;
  height: 1px;
  background: currentColor;
}
.calc-hero h1 {
  font-size: clamp(1.8rem, 4vw, 2.6rem);
  margin-bottom: .5rem;
}
.calc-hero .lead {
  color: var(--beige-2);
  max-width: 560px;
  margin: 0 auto 2rem;
  font-size: 1rem;
  line-height: 1.65;
}
.calc-wrap {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 2rem;
  max-width: 920px;
  margin: 0 auto;
  padding: 0 20px 4rem;
}
@media(max-width: 760px) {
  .calc-wrap { grid-template-columns: 1fr; }
}
.calc-form-card {
  background: rgba(255,255,255,.025);
  border: 1px solid rgba(217,210,193,.14);
  border-radius: 18px;
  padding: 1.8rem 1.6rem;
}
.calc-form-card .form-card-label {
  font-size: .68rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--beige-2);
  margin-bottom: 1.4rem;
  display: flex;
  align-items: center;
  gap: 8px;
  opacity: .8;
}
.calc-form-card .form-card-label::before {
  content: '';
  width: 18px;
  height: 1px;
  background: var(--beige-2);
  opacity: .5;
}
.calc-field {
  margin-bottom: 1.2rem;
}
.calc-field label {
  display: block;
  font-size: .75rem;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: .4rem;
}
.calc-field input,
.calc-field select {
  width: 100%;
  padding: 10px 14px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  color: var(--beige);
  font-family: Inter, system-ui, sans-serif;
  font-size: .95rem;
  transition: border-color .18s ease;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
}
.calc-field input:focus,
.calc-field select:focus {
  border-color: rgba(217,210,193,.45);
  box-shadow: 0 0 0 3px rgba(217,210,193,.07);
}
.calc-field select option {
  background: #0e1a26;
  color: var(--beige);
}
@media (max-width: 600px){
.calc-field input,
.calc-field select {
  font-size: 16px !important;
  padding: 13px 14px !important;
}
}
.calc-field .field-hint {
  font-size: .72rem;
  color: var(--muted);
  margin-top: .3rem;
  line-height: 1.4;
}
.calc-btn {
  width: 100%;
  padding: .75rem 1.4rem;
  margin-top: .6rem;
  border-radius: 999px;
  border: 1px solid rgba(217,210,193,.55);
  background: rgba(217,210,193,.10);
  color: var(--beige-light);
  font-family: Inter, system-ui, sans-serif;
  font-size: .88rem;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, transform .15s ease;
}
.calc-btn:hover {
  background: rgba(217,210,193,.18);
  border-color: rgba(217,210,193,.8);
  transform: translateY(-1px);
}

/* Resultado */
.calc-result-card {
  background: rgba(255,255,255,.025);
  border: 1px solid rgba(217,210,193,.14);
  border-radius: 18px;
  padding: 1.8rem 1.6rem;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}
.calc-result-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  min-height: 200px;
  text-align: center;
  color: var(--muted);
  gap: .75rem;
}
.calc-result-empty svg {
  opacity: .3;
}
.calc-result-empty p {
  font-size: .88rem;
  line-height: 1.6;
  max-width: 240px;
  margin: 0;
}
.result-hidden { display: none; }

.result-tipo-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: .25rem .75rem;
  border-radius: 999px;
  font-size: .68rem;
  letter-spacing: .10em;
  text-transform: uppercase;
  font-weight: 600;
  border: 1px solid rgba(90,160,100,.35);
  background: rgba(90,160,100,.10);
  color: rgba(155,220,165,.9);
  width: fit-content;
}
.result-tipo-badge.badge-improcedente {
  border-color: rgba(90,160,100,.35);
  background: rgba(90,160,100,.10);
  color: rgba(155,220,165,.9);
}
.result-tipo-badge.badge-objetivo {
  border-color: rgba(201,170,90,.35);
  background: rgba(201,170,90,.10);
  color: rgba(235,210,130,.9);
}
.result-tipo-badge.badge-disciplinario {
  border-color: rgba(200,110,90,.35);
  background: rgba(200,110,90,.10);
  color: rgba(235,175,155,.9);
}

.result-indem-main {
  text-align: center;
  padding: 1.2rem 0 .8rem;
  border-top: 1px solid rgba(217,210,193,.08);
  border-bottom: 1px solid rgba(217,210,193,.08);
}
.result-indem-label {
  font-size: .65rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: .4rem;
}
.result-indem-amount {
  font-family: 'EB Garamond', Georgia, serif;
  font-size: clamp(2.2rem, 5vw, 3rem);
  font-weight: 600;
  color: var(--beige);
  line-height: 1;
  letter-spacing: -.02em;
}
.result-indem-note {
  font-size: .72rem;
  color: var(--muted);
  margin-top: .4rem;
  line-height: 1.4;
}

.result-datos-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .6rem;
}
.result-dato {
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(217,210,193,.08);
  border-radius: 10px;
  padding: .7rem .8rem;
}
.result-dato-label {
  font-size: .65rem;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--muted);
  margin-bottom: .25rem;
}
.result-dato-value {
  font-size: .95rem;
  font-weight: 600;
  color: var(--beige);
}

.result-aviso {
  background: rgba(217,210,193,.045);
  border: 1px solid rgba(217,210,193,.18);
  border-radius: 10px;
  padding: .8rem 1rem;
  font-size: .8rem;
  color: rgba(217,210,193,.68);
  line-height: 1.6;
}
.result-aviso strong {
  display: block;
  margin-bottom: .2rem;
  font-size: .72rem;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.result-cta {
  display: flex;
  flex-direction: column;
  gap: .6rem;
}
.result-cta-text {
  font-size: .82rem;
  color: var(--beige-2);
  line-height: 1.5;
}
.result-cta-buttons {
  display: flex;
  gap: .5rem;
  flex-wrap: wrap;
}
.result-cta-buttons .btn {
  flex: 1;
  min-width: 100px;
  justify-content: center;
  font-size: .78rem;
  padding: .5rem .9rem;
}

/* Alerta de plazo urgente */
.plazo-urgente {
  display: flex;
  align-items: flex-start;
  gap: .6rem;
  background: rgba(200,110,90,.08);
  border: 1px solid rgba(200,110,90,.25);
  border-radius: 10px;
  padding: .8rem 1rem;
  font-size: .82rem;
  color: rgba(235,175,155,.9);
  line-height: 1.55;
}
.plazo-urgente svg {
  flex-shrink: 0;
  margin-top: 2px;
}

/* Info boxes bajo la calculadora */
.calc-info-section {
  max-width: 920px;
  margin: 0 auto;
  padding: 0 20px 4rem;
}
.calc-info-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 1rem;
  margin-top: 1.5rem;
}
.calc-info-box {
  background: rgba(255,255,255,.02);
  border: 1px solid rgba(217,210,193,.10);
  border-radius: 14px;
  padding: 1.2rem 1.3rem;
}
.calc-info-box h3 {
  font-size: 1rem;
  margin-bottom: .5rem;
  color: var(--beige);
}
.calc-info-box p {
  font-size: .85rem;
  color: var(--beige-2);
  line-height: 1.65;
  margin: 0;
}

/* FAQ específica */
.calc-faq {
  max-width: 780px;
  margin: 0 auto;
  padding: 0 20px 4rem;
}
.calc-faq h2 {
  margin-bottom: 1rem;
}

/* ── Añadidos para las páginas en inglés ── */
.calc-hero .calc-sub{
  color: var(--beige-2);
  max-width: 620px;
  margin: 0 auto 1.5rem;
  font-size: 1rem;
  line-height: 1.65;
}
.calc-info-section .calc-info-grid a{ color: var(--beige-2); border-bottom: 1px solid rgba(217,210,193,.25); }
.calc-info-section .calc-info-grid a:hover{ color: var(--beige); }
