:root {
  --klira-dark: #204d50;
  --klira-mint: #b4f6ce;
  --klira-cream: #f4edea;
  --klira-white: #ffffff;
  --klira-text: #1b3436;
  --klira-muted: rgba(32, 77, 80, 0.74);
  --klira-shadow: 0 18px 45px rgba(32, 77, 80, 0.14);
}

.klira-v2, .klira-v2 * { box-sizing: border-box; }
.klira-v2 { color: var(--klira-text); font-family: inherit; overflow: hidden; }
.klira-v2-wrap { width: min(1160px, calc(100% - 36px)); margin: 0 auto; }
.klira-v2-section { padding: 86px 0; }
.klira-v2-soft { background: linear-gradient(180deg, rgba(244,237,234,.88), rgba(255,255,255,.96)); }
.klira-v2-dark { background: var(--klira-dark); color: var(--klira-white); }
.klira-v2-dark .klira-v2-eyebrow { color: var(--klira-mint); }
.klira-v2-dark .klira-v2-section-head p { color: rgba(255,255,255,.78); }
.klira-v2 h1, .klira-v2 h2, .klira-v2 h3, .klira-v2 p { margin-top: 0; }
.klira-v2 h1 { font-size: clamp(40px, 6vw, 74px); line-height: .98; letter-spacing: -0.055em; margin-bottom: 24px; color: var(--klira-dark); }
.klira-v2 h2 { font-size: clamp(30px, 4vw, 50px); line-height: 1.05; letter-spacing: -0.04em; margin-bottom: 18px; color: inherit; }
.klira-v2 h3 { font-size: 22px; line-height: 1.18; margin-bottom: 10px; color: var(--klira-dark); }
.klira-v2 p { font-size: 17px; line-height: 1.72; color: var(--klira-muted); }
.klira-v2-eyebrow { display: inline-flex; align-items: center; gap: 8px; color: var(--klira-dark); font-weight: 700; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 16px; }
.klira-v2-eyebrow:before { content: ''; width: 28px; height: 2px; background: var(--klira-mint); border-radius: 10px; }

.klira-v2-hero { padding: 92px 0 88px; background: radial-gradient(circle at 88% 18%, rgba(180,246,206,.55), transparent 30%), linear-gradient(135deg, #fff 0%, #f4edea 100%); }
.klira-v2-hero-grid { display: grid; grid-template-columns: minmax(0, 1.14fr) minmax(320px, .7fr); gap: 48px; align-items: center; }
.klira-v2-lead { font-size: clamp(18px, 2vw, 23px) !important; max-width: 760px; color: rgba(32,77,80,.82) !important; }
.klira-v2-actions { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 32px; }
.klira-v2-btn { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 14px 24px; border-radius: 999px; font-weight: 800; text-decoration: none !important; transition: transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease, border-color .18s ease; border: 1px solid transparent; }
.klira-v2-btn:hover { transform: translateY(-2px); text-decoration: none !important; }
.klira-v2-btn-primary { background: var(--klira-dark); color: #fff !important; box-shadow: 0 14px 34px rgba(32,77,80,.22); }
.klira-v2-btn-primary:hover { background: #173b3e; color: var(--klira-mint) !important; }
.klira-v2-btn-secondary { background: rgba(255,255,255,.72); color: var(--klira-dark) !important; border-color: rgba(32,77,80,.16); }
.klira-v2-btn-secondary:hover { background: var(--klira-mint); color: var(--klira-dark) !important; }

.klira-v2-hero-card { position: relative; padding: 22px; border-radius: 30px; background: rgba(32,77,80,.94); box-shadow: var(--klira-shadow); display: grid; gap: 16px; }
.klira-v2-hero-card:before { content: ''; position: absolute; inset: 16px -12px -12px 24px; background: var(--klira-mint); border-radius: 30px; z-index: -1; }
.klira-v2-mini-card { padding: 20px; border-radius: 22px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12); }
.klira-v2-mini-card strong { display: block; color: #fff; font-size: 18px; margin-bottom: 6px; }
.klira-v2-mini-card span { color: rgba(255,255,255,.76); }

.klira-v2-section-head { max-width: 760px; margin-bottom: 34px; }
.klira-v2-section-head p { font-size: 18px; }
.klira-v2-grid { display: grid; gap: 22px; }
.klira-v2-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.klira-v2-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.klira-v2-card { background: #fff; border: 1px solid rgba(32,77,80,.10); border-radius: 26px; padding: 28px; box-shadow: 0 10px 26px rgba(32,77,80,.07); transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.klira-v2-card:hover { transform: translateY(-4px); box-shadow: var(--klira-shadow); border-color: rgba(180,246,206,.85); }
.klira-v2-card p { margin-bottom: 0; }
.klira-v2-service { background: linear-gradient(180deg, #fff, rgba(244,237,234,.55)); }
.klira-v2-highlight { margin-top: 26px; padding: 30px; border-radius: 28px; background: var(--klira-dark); box-shadow: var(--klira-shadow); }
.klira-v2-highlight h3 { color: var(--klira-mint); }
.klira-v2-highlight p { color: rgba(255,255,255,.84); margin-bottom: 0; }

.klira-v2-steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; counter-reset: step; }
.klira-v2-step { padding: 24px; border-radius: 26px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.12); }
.klira-v2-step span { display: inline-flex; align-items: center; justify-content: center; width: 42px; height: 42px; border-radius: 50%; background: var(--klira-mint); color: var(--klira-dark); font-weight: 900; margin-bottom: 16px; }
.klira-v2-step strong { display: block; color: #fff; font-size: 18px; margin-bottom: 8px; }
.klira-v2-step p { color: rgba(255,255,255,.76); font-size: 15px; margin-bottom: 0; }

.klira-v2-about-grid { display: grid; grid-template-columns: .78fr 1fr; gap: 52px; align-items: start; }
.klira-v2-about-text { padding: 30px; border-radius: 30px; background: var(--klira-cream); }
.klira-v2-about-text p:last-child { margin-bottom: 0; }
.klira-v2-about-text strong { color: var(--klira-dark); }

.klira-v2-benefits { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.klira-v2-benefits div { background: #fff; border: 1px solid rgba(32,77,80,.1); border-radius: 22px; padding: 22px; font-weight: 800; color: var(--klira-dark); box-shadow: 0 8px 22px rgba(32,77,80,.06); }
.klira-v2-benefits div:before { content: '✓'; display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; margin-right: 8px; border-radius: 999px; background: var(--klira-mint); color: var(--klira-dark); font-weight: 900; }

.klira-v2-final { text-align: center; background: radial-gradient(circle at 50% 0%, rgba(180,246,206,.5), transparent 28%), var(--klira-dark); color: #fff; }
.klira-v2-final .klira-v2-wrap { max-width: 820px; }
.klira-v2-final h2 { color: #fff; }
.klira-v2-final p { color: rgba(255,255,255,.82); font-size: 20px; }
.klira-v2-final .klira-v2-btn-primary { background: var(--klira-mint); color: var(--klira-dark) !important; }
.klira-v2-final .klira-v2-btn-primary:hover { background: #fff; color: var(--klira-dark) !important; }

@media (max-width: 900px) {
  .klira-v2-hero-grid, .klira-v2-about-grid { grid-template-columns: 1fr; }
  .klira-v2-grid-3, .klira-v2-grid-2, .klira-v2-steps, .klira-v2-benefits { grid-template-columns: 1fr 1fr; }
  .klira-v2-section { padding: 66px 0; }
  .klira-v2-hero { padding: 70px 0; }
}
@media (max-width: 620px) {
  .klira-v2-wrap { width: min(100% - 24px, 1160px); }
  .klira-v2 h1 { font-size: 40px; }
  .klira-v2 h2 { font-size: 30px; }
  .klira-v2-grid-3, .klira-v2-grid-2, .klira-v2-steps, .klira-v2-benefits { grid-template-columns: 1fr; }
  .klira-v2-actions { flex-direction: column; }
  .klira-v2-btn { width: 100%; }
  .klira-v2-card, .klira-v2-highlight, .klira-v2-about-text { padding: 22px; border-radius: 22px; }
  .klira-v2-hero-card:before { display: none; }
}

/* Hero logo - Klira Home V2 v1.0.6 */
.klira-v2-logo-wrap {
  display: flex;
  align-items: center;
  margin-bottom: 24px;
}
.klira-v2-logo {
  display: block;
  width: min(270px, 68vw);
  height: auto;
  filter: drop-shadow(0 10px 22px rgba(32, 77, 80, .10));
}
@media (max-width: 900px) {
  .klira-v2-logo-wrap { justify-content: center; }
  .klira-v2-hero-copy { text-align: center; }
  .klira-v2-hero-copy .klira-v2-eyebrow { justify-content: center; }
  .klira-v2-actions { justify-content: center; }
}

/* Klira Home V2 v1.0.7 — hero logo and spacing refinement */
.klira-v2-hero {
  padding-top: 46px !important;
  padding-bottom: 74px !important;
}
.klira-v2-hero-grid {
  align-items: center !important;
}
.klira-v2-logo-wrap {
  margin-bottom: 26px !important;
}
.klira-v2-logo {
  width: min(380px, 78vw) !important;
  max-width: 380px !important;
}
@media (min-width: 1200px) {
  .klira-v2-logo {
    width: 410px !important;
    max-width: 410px !important;
  }
}
@media (max-width: 900px) {
  .klira-v2-hero {
    padding-top: 34px !important;
    padding-bottom: 56px !important;
  }
  .klira-v2-logo {
    width: min(300px, 78vw) !important;
  }
}

/* Klira Home V2 v1.0.10 — Solicitar llamada modal */
.klira-v2-btn-call {
  background: var(--klira-mint);
  color: var(--klira-dark) !important;
  border-color: rgba(32,77,80,.14);
  box-shadow: 0 14px 34px rgba(32,77,80,.14);
}
.klira-v2-btn-call:hover {
  background: #ffffff;
  color: var(--klira-dark) !important;
  border-color: rgba(32,77,80,.22);
  box-shadow: 0 18px 42px rgba(32,77,80,.18);
}
.klira-v2-final-actions {
  display: flex;
  justify-content: center;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 26px;
}
.klira-v2-final .klira-v2-btn-call {
  background: #ffffff;
  color: var(--klira-dark) !important;
}
.klira-v2-final .klira-v2-btn-call:hover {
  background: var(--klira-mint);
  color: var(--klira-dark) !important;
}

.klira-v2-modal {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 22px;
}
.klira-v2-modal.is-open { display: flex; }
.klira-v2-modal-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15, 37, 39, .68);
  backdrop-filter: blur(6px);
}
.klira-v2-modal-dialog {
  position: relative;
  z-index: 1;
  width: min(760px, 100%);
  max-height: min(92vh, 920px);
  overflow: auto;
  border-radius: 28px;
  background: linear-gradient(180deg, #ffffff, rgba(244,237,234,.96));
  box-shadow: 0 28px 90px rgba(0,0,0,.30);
  border: 1px solid rgba(180,246,206,.65);
  padding: 28px;
}
.klira-v2-modal-close {
  position: sticky;
  top: 0;
  float: right;
  width: 42px;
  height: 42px;
  margin: -10px -10px 6px 14px;
  border: 0;
  border-radius: 999px;
  background: var(--klira-dark);
  color: #fff;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 26px rgba(32,77,80,.20);
}
.klira-v2-modal-close:hover { background: #173b3e; color: var(--klira-mint); }
.klira-v2-modal-head {
  margin-bottom: 16px;
  padding-right: 30px;
}
.klira-v2-modal-head h2 {
  color: var(--klira-dark);
  margin-bottom: 8px;
}
.klira-v2-modal-head p {
  margin-bottom: 0;
  color: rgba(32,77,80,.78);
  font-size: 17px;
}
.klira-v2-modal-form .klira-contact-wrap,
.klira-v2-modal-form .klira-contact-wrap--home {
  max-width: none;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
  transform: none !important;
}
.klira-v2-modal-form .klira-contact-wrap--home:after { display: none !important; }
.klira-v2-modal-form .klira-form-title,
.klira-v2-modal-form .klira-form-subtitle {
  display: none;
}
.klira-v2-modal-form .klira-form--home .klira-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.klira-v2-modal-form .klira-form--home textarea { min-height: 120px; }
.klira-v2-modal-form .klira-btn {
  background: var(--klira-dark) !important;
  color: #ffffff !important;
  border: 0 !important;
}
.klira-v2-modal-form .klira-btn:hover {
  background: #173b3e !important;
  color: var(--klira-mint) !important;
}
html.klira-v2-modal-open,
html.klira-v2-modal-open body {
  overflow: hidden;
}
@media (max-width: 620px) {
  .klira-v2-final-actions { flex-direction: column; }
  .klira-v2-modal { padding: 12px; }
  .klira-v2-modal-dialog { padding: 22px 16px; border-radius: 22px; }
  .klira-v2-modal-form .klira-form--home .klira-grid { grid-template-columns: 1fr; }
}

/* Klira Home V2 v1.0.12 — hero badge centered across full hero */
.klira-v2-hero > .klira-v2-hero-eyebrow-wrap{
  text-align:center !important;
  margin:0 auto 28px !important;
  padding:0 24px !important;
}
.klira-v2-hero > .klira-v2-hero-eyebrow-wrap .klira-v2-hero-eyebrow{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:0 !important;
  margin:0 !important;
  padding:10px 22px !important;
  border-radius:999px !important;
  background:var(--klira-mint) !important;
  color:var(--klira-dark) !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1.1 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  box-shadow:0 12px 30px rgba(32,77,80,.08) !important;
}
.klira-v2-hero > .klira-v2-hero-eyebrow-wrap .klira-v2-hero-eyebrow:before{
  display:none !important;
  content:none !important;
}
@media(max-width:768px){
  .klira-v2-hero > .klira-v2-hero-eyebrow-wrap{margin-bottom:22px !important; padding:0 16px !important;}
  .klira-v2-hero > .klira-v2-hero-eyebrow-wrap .klira-v2-hero-eyebrow{font-size:12px !important; padding:9px 16px !important; white-space:normal !important;}
}


/* Klira Home V2 v1.1.1 — page-by-page professional visual hardening
   Scope: home page only. No functional logic is changed. */
.klira-v2{
  --klira-dark:#204d50;
  --klira-dark-2:#173b3e;
  --klira-mint:#b4f6ce;
  --klira-cream:#f4edea;
  --klira-ink:#142f32;
  --klira-text:#1b3436;
  --klira-muted:#48686b;
  --klira-line:rgba(32,77,80,.14);
  --klira-soft-shadow:0 14px 34px rgba(32,77,80,.10);
  --klira-strong-shadow:0 22px 58px rgba(32,77,80,.16);
  color:var(--klira-text) !important;
  background:#fff !important;
  overflow-x:hidden !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.klira-v2 *,
.klira-v2 *::before,
.klira-v2 *::after{box-sizing:border-box;}
.klira-v2-wrap{width:min(1160px, calc(100% - 40px)) !important;margin-inline:auto !important;}
.klira-v2-section{padding:76px 0 !important;position:relative;}
.klira-v2-section + .klira-v2-section{margin-top:0 !important;}
.klira-v2 h1,
.klira-v2 h2,
.klira-v2 h3,
.klira-v2 strong{color:var(--klira-dark) !important;}
.klira-v2 h1{max-width:900px;font-size:clamp(38px,5.6vw,68px) !important;line-height:1.02 !important;letter-spacing:-.045em !important;margin:0 0 22px !important;}
.klira-v2 h2{font-size:clamp(29px,3.7vw,48px) !important;line-height:1.08 !important;letter-spacing:-.035em !important;margin:0 0 16px !important;}
.klira-v2 h3{font-size:clamp(20px,2vw,23px) !important;line-height:1.22 !important;margin:0 0 10px !important;}
.klira-v2 p,
.klira-v2 li,
.klira-v2 span{color:var(--klira-muted);}
.klira-v2 p{font-size:17px !important;line-height:1.68 !important;margin:0 0 14px !important;}
.klira-v2 p:last-child{margin-bottom:0 !important;}
.klira-v2 a{color:var(--klira-dark);text-underline-offset:3px;}
.klira-v2 a:hover,
.klira-v2 a:focus,
.klira-v2 a:active{color:var(--klira-dark-2);}
.klira-v2 :focus-visible{outline:3px solid rgba(180,246,206,.95) !important;outline-offset:4px !important;border-radius:16px;}

/* Hero */
.klira-v2-hero{
  padding:42px 0 72px !important;
  background:
    radial-gradient(circle at 92% 10%, rgba(180,246,206,.58), transparent 28%),
    radial-gradient(circle at 8% 12%, rgba(255,255,255,.88), transparent 30%),
    linear-gradient(135deg,#ffffff 0%,#f4edea 100%) !important;
  border-bottom:1px solid rgba(32,77,80,.08);
}
.klira-v2-hero-grid{grid-template-columns:minmax(0,1.12fr) minmax(300px,.72fr) !important;gap:44px !important;align-items:center !important;}
.klira-v2-lead{max-width:820px !important;color:#34595c !important;font-weight:500;}
.klira-v2-hero-card{
  isolation:isolate;
  background:linear-gradient(160deg,rgba(32,77,80,.98),rgba(23,59,62,.96)) !important;
  border:1px solid rgba(180,246,206,.30) !important;
  box-shadow:var(--klira-strong-shadow) !important;
}
.klira-v2-hero-card::before{opacity:.92;}
.klira-v2-mini-card{
  background:rgba(255,255,255,.115) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.klira-v2-mini-card:hover,
.klira-v2-mini-card:focus-within,
.klira-v2-mini-card:active{background:rgba(255,255,255,.16) !important;border-color:rgba(180,246,206,.58) !important;}
.klira-v2-mini-card strong{color:#fff !important;}
.klira-v2-mini-card span{color:rgba(255,255,255,.88) !important;}

/* Badges */
.klira-v2-eyebrow,
.klira-v2 .klira-badge{
  color:var(--klira-dark) !important;
  font-weight:900 !important;
  letter-spacing:.09em !important;
}
.klira-v2-eyebrow::before{background:var(--klira-mint) !important;}
.klira-v2-dark .klira-v2-eyebrow,
.klira-v2-dark .klira-badge,
.klira-v2-final .klira-v2-eyebrow,
.klira-v2-final .klira-badge{color:var(--klira-mint) !important;}

/* Cards and panels */
.klira-v2-grid{gap:20px !important;}
.klira-v2-card,
.klira-v2-benefits div,
.klira-v2-about-text,
.klira-v2-highlight,
.klira-v2-step{
  transform:translateZ(0);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease, color .18s ease !important;
}
.klira-v2-card{
  min-height:100%;
  background:rgba(255,255,255,.96) !important;
  border:1px solid var(--klira-line) !important;
  border-radius:26px !important;
  padding:26px !important;
  box-shadow:var(--klira-soft-shadow) !important;
}
.klira-v2-card h3{color:var(--klira-dark) !important;}
.klira-v2-card p{color:#48686b !important;}
.klira-v2-card:hover,
.klira-v2-card:focus-within,
.klira-v2-card:active{
  transform:translateY(-4px) !important;
  background:#ffffff !important;
  border-color:rgba(180,246,206,.95) !important;
  box-shadow:var(--klira-strong-shadow) !important;
}
.klira-v2-card:hover h3,
.klira-v2-card:focus-within h3,
.klira-v2-card:active h3{color:var(--klira-dark) !important;}
.klira-v2-card:hover p,
.klira-v2-card:focus-within p,
.klira-v2-card:active p{color:#34595c !important;}
.klira-v2-service{background:linear-gradient(180deg,#ffffff,rgba(244,237,234,.72)) !important;}
.klira-v2-highlight{
  background:linear-gradient(145deg,var(--klira-dark),var(--klira-dark-2)) !important;
  border:1px solid rgba(180,246,206,.28) !important;
  box-shadow:var(--klira-strong-shadow) !important;
}
.klira-v2-highlight h3{color:var(--klira-mint) !important;}
.klira-v2-highlight p{color:rgba(255,255,255,.90) !important;}

/* Dark process area */
.klira-v2-dark{
  background:
    radial-gradient(circle at 10% 0, rgba(180,246,206,.18), transparent 28%),
    linear-gradient(145deg,var(--klira-dark),var(--klira-dark-2)) !important;
}
.klira-v2-dark h2,
.klira-v2-dark h3{color:#ffffff !important;}
.klira-v2-dark p{color:rgba(255,255,255,.88) !important;}
.klira-v2-step{
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.10);
}
.klira-v2-step:hover,
.klira-v2-step:focus-within,
.klira-v2-step:active{background:rgba(255,255,255,.15) !important;border-color:rgba(180,246,206,.70) !important;transform:translateY(-3px) !important;}
.klira-v2-step span{background:var(--klira-mint) !important;color:var(--klira-dark) !important;}
.klira-v2-step strong{color:#ffffff !important;}
.klira-v2-step p{color:rgba(255,255,255,.88) !important;}

/* About and benefits */
.klira-v2-about-grid{gap:46px !important;align-items:center !important;}
.klira-v2-about-text{
  background:linear-gradient(180deg,rgba(244,237,234,.96),rgba(255,255,255,.95)) !important;
  border:1px solid rgba(32,77,80,.10);
  box-shadow:var(--klira-soft-shadow);
}
.klira-v2-about-text p{color:#3d6063 !important;}
.klira-v2-about-text strong{color:var(--klira-dark) !important;}
.klira-v2-benefits div{
  background:#ffffff !important;
  border:1px solid var(--klira-line) !important;
  color:var(--klira-dark) !important;
  line-height:1.35;
  box-shadow:var(--klira-soft-shadow) !important;
}
.klira-v2-benefits div:hover,
.klira-v2-benefits div:focus-within,
.klira-v2-benefits div:active{transform:translateY(-3px);border-color:rgba(180,246,206,.95) !important;box-shadow:var(--klira-strong-shadow) !important;color:var(--klira-dark) !important;}

/* Final CTA */
.klira-v2-final{
  background:
    radial-gradient(circle at 50% 0%, rgba(180,246,206,.38), transparent 32%),
    linear-gradient(145deg,var(--klira-dark),var(--klira-dark-2)) !important;
  border-top:1px solid rgba(180,246,206,.18);
}
.klira-v2-final h2{color:#ffffff !important;}
.klira-v2-final p{color:rgba(255,255,255,.90) !important;}

/* Buttons: readable in normal, hover, focus and active states */
.klira-v2-btn,
.klira-v2 .klira-btn-unified{
  min-height:52px !important;
  padding:14px 24px !important;
  border-radius:999px !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  letter-spacing:.01em;
  white-space:normal;
  text-align:center;
  text-decoration:none !important;
  cursor:pointer;
}
.klira-v2-btn-primary,
.klira-v2-btn-primary:visited{background:var(--klira-dark) !important;color:#ffffff !important;border-color:var(--klira-dark) !important;}
.klira-v2-btn-primary:hover,
.klira-v2-btn-primary:focus,
.klira-v2-btn-primary:active{background:var(--klira-dark-2) !important;color:var(--klira-mint) !important;border-color:var(--klira-dark-2) !important;}
.klira-v2-btn-call,
.klira-v2-btn-call:visited{background:var(--klira-mint) !important;color:var(--klira-dark) !important;border-color:rgba(32,77,80,.18) !important;}
.klira-v2-btn-call:hover,
.klira-v2-btn-call:focus,
.klira-v2-btn-call:active{background:#ffffff !important;color:var(--klira-dark) !important;border-color:rgba(32,77,80,.26) !important;}
.klira-v2-btn-secondary,
.klira-v2-btn-secondary:visited{background:rgba(255,255,255,.86) !important;color:var(--klira-dark) !important;border-color:rgba(32,77,80,.18) !important;}
.klira-v2-btn-secondary:hover,
.klira-v2-btn-secondary:focus,
.klira-v2-btn-secondary:active{background:var(--klira-dark) !important;color:#ffffff !important;border-color:var(--klira-dark) !important;}
.klira-v2-final .klira-v2-btn-primary,
.klira-v2-final .klira-v2-btn-primary:visited{background:var(--klira-mint) !important;color:var(--klira-dark) !important;border-color:var(--klira-mint) !important;}
.klira-v2-final .klira-v2-btn-primary:hover,
.klira-v2-final .klira-v2-btn-primary:focus,
.klira-v2-final .klira-v2-btn-primary:active{background:#ffffff !important;color:var(--klira-dark) !important;border-color:#ffffff !important;}
.klira-v2-final .klira-v2-btn-call,
.klira-v2-final .klira-v2-btn-call:visited{background:#ffffff !important;color:var(--klira-dark) !important;border-color:#ffffff !important;}
.klira-v2-final .klira-v2-btn-call:hover,
.klira-v2-final .klira-v2-btn-call:focus,
.klira-v2-final .klira-v2-btn-call:active{background:var(--klira-mint) !important;color:var(--klira-dark) !important;border-color:var(--klira-mint) !important;}

/* Modal and embedded form contrast */
.klira-v2-modal-dialog{background:linear-gradient(180deg,#ffffff,rgba(244,237,234,.98)) !important;color:var(--klira-text) !important;}
.klira-v2-modal-head h2{color:var(--klira-dark) !important;}
.klira-v2-modal-head p{color:#48686b !important;}
.klira-v2-modal-close,
.klira-v2-modal-close:visited{background:var(--klira-dark) !important;color:#fff !important;}
.klira-v2-modal-close:hover,
.klira-v2-modal-close:focus,
.klira-v2-modal-close:active{background:var(--klira-dark-2) !important;color:var(--klira-mint) !important;}
.klira-v2-modal-form input,
.klira-v2-modal-form textarea,
.klira-v2-modal-form select{color:var(--klira-text) !important;background:#fff !important;border-color:rgba(32,77,80,.18) !important;}
.klira-v2-modal-form label,
.klira-v2-modal-form .klira-field label{color:var(--klira-dark) !important;}
.klira-v2-modal-form .klira-btn,
.klira-v2-modal-form button[type="submit"]{background:var(--klira-dark) !important;color:#ffffff !important;}
.klira-v2-modal-form .klira-btn:hover,
.klira-v2-modal-form .klira-btn:focus,
.klira-v2-modal-form .klira-btn:active,
.klira-v2-modal-form button[type="submit"]:hover,
.klira-v2-modal-form button[type="submit"]:focus,
.klira-v2-modal-form button[type="submit"]:active{background:var(--klira-dark-2) !important;color:var(--klira-mint) !important;}

/* Responsive refinement */
@media (max-width:1024px){
  .klira-v2-hero-grid{grid-template-columns:1fr !important;gap:34px !important;}
  .klira-v2-hero-copy{text-align:center !important;}
  .klira-v2-lead{margin-inline:auto !important;}
  .klira-v2-actions{justify-content:center !important;}
  .klira-v2-hero-card{max-width:720px;margin-inline:auto;width:100%;}
  .klira-v2-grid-3,
  .klira-v2-steps,
  .klira-v2-benefits{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .klira-v2-about-grid{grid-template-columns:1fr !important;gap:24px !important;}
}
@media (max-width:680px){
  .klira-v2-wrap{width:min(100% - 28px,1160px) !important;}
  .klira-v2-hero{padding:28px 0 50px !important;}
  .klira-v2-section{padding:54px 0 !important;}
  .klira-v2 h1{font-size:clamp(34px,11vw,44px) !important;letter-spacing:-.035em !important;}
  .klira-v2 h2{font-size:clamp(27px,8vw,34px) !important;}
  .klira-v2 p{font-size:16px !important;line-height:1.62 !important;}
  .klira-v2-grid-2,
  .klira-v2-grid-3,
  .klira-v2-steps,
  .klira-v2-benefits{grid-template-columns:1fr !important;}
  .klira-v2-card,
  .klira-v2-highlight,
  .klira-v2-about-text,
  .klira-v2-step{padding:22px !important;border-radius:22px !important;}
  .klira-v2-actions,
  .klira-v2-final-actions{display:grid !important;grid-template-columns:1fr !important;gap:12px !important;}
  .klira-v2-btn{width:100% !important;min-height:50px !important;}
  .klira-v2-hero-card::before{display:none !important;}
  .klira-v2-modal{padding:10px !important;}
  .klira-v2-modal-dialog{border-radius:22px !important;padding:20px 15px !important;}
}
@media (max-width:380px){
  .klira-v2-wrap{width:min(100% - 22px,1160px) !important;}
  .klira-v2-card,
  .klira-v2-highlight,
  .klira-v2-about-text,
  .klira-v2-step{padding:18px !important;}
}
@media (prefers-reduced-motion:reduce){
  .klira-v2 *,
  .klira-v2 *::before,
  .klira-v2 *::after{transition:none !important;scroll-behavior:auto !important;}
  .klira-v2-card:hover,
  .klira-v2-step:hover,
  .klira-v2-benefits div:hover,
  .klira-v2-btn:hover{transform:none !important;}
}

/* Klira Home V2 v1.1.2 — targeted fixes from screenshot review
   Fixes: hero badge centering, readable buttons, compact section spacing,
   centered hero mini-cards, stronger hover/lift effects. */
main.klira-v2,
body .klira-v2{
  --klira-dark:#204d50;
  --klira-dark-2:#173b3e;
  --klira-mint:#b4f6ce;
  --klira-cream:#f4edea;
  --klira-text:#14383b;
  --klira-muted:#3f6568;
  --klira-line:rgba(32,77,80,.13);
  --klira-soft-shadow:0 16px 38px rgba(32,77,80,.105);
  --klira-strong-shadow:0 28px 70px rgba(32,77,80,.20);
}

/* 001 — badge Klira Consulting centered across the whole hero block */
body .klira-v2 .klira-v2-hero-eyebrow-wrap,
body .klira-v2-hero > .klira-v2-hero-eyebrow-wrap{
  width:min(1160px, calc(100% - 40px)) !important;
  max-width:1160px !important;
  margin:0 auto 28px !important;
  padding:0 !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
}
body .klira-v2 .klira-v2-hero-eyebrow{
  margin:0 auto !important;
  display:inline-flex !important;
  justify-content:center !important;
  align-items:center !important;
  min-width:min(310px, 100%) !important;
  max-width:100% !important;
  text-align:center !important;
}

/* 002 + 005 — button labels always visible and buttons aligned to one standard */
body .klira-v2 .klira-v2-actions,
body .klira-v2 .klira-v2-final-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;
  flex-wrap:wrap !important;
  margin-top:30px !important;
}
body .klira-v2 .klira-v2-actions > a.klira-v2-btn,
body .klira-v2 .klira-v2-final-actions > a.klira-v2-btn,
body .klira-v2 a.klira-v2-btn.klira-btn-unified{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:214px !important;
  width:auto !important;
  min-height:54px !important;
  padding:15px 25px !important;
  border-radius:999px !important;
  font-size:16px !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  letter-spacing:.01em !important;
  text-align:center !important;
  text-decoration:none !important;
  opacity:1 !important;
  visibility:visible !important;
  text-indent:0 !important;
  overflow:visible !important;
  white-space:normal !important;
  -webkit-text-fill-color:currentColor !important;
  text-shadow:none !important;
}
body .klira-v2 a.klira-v2-btn-primary,
body .klira-v2 a.klira-v2-btn-primary:visited,
body .klira-v2 a[data-klira-open-chat="1"]{
  background:var(--klira-dark) !important;
  border:1px solid var(--klira-dark) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  box-shadow:0 16px 34px rgba(32,77,80,.18) !important;
}
body .klira-v2 a.klira-v2-btn-call,
body .klira-v2 a.klira-v2-btn-call:visited,
body .klira-v2 a[data-klira-open-call="1"]{
  background:var(--klira-mint) !important;
  border:1px solid rgba(32,77,80,.18) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  box-shadow:0 16px 34px rgba(32,77,80,.13) !important;
}
body .klira-v2 a.klira-v2-btn-secondary,
body .klira-v2 a.klira-v2-btn-secondary:visited{
  background:#ffffff !important;
  border:1px solid rgba(32,77,80,.20) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  box-shadow:0 12px 28px rgba(32,77,80,.08) !important;
}
body .klira-v2 a.klira-v2-btn:hover,
body .klira-v2 a.klira-v2-btn:focus-visible,
body .klira-v2 a.klira-v2-btn:active{
  transform:translateY(-5px) !important;
  box-shadow:0 24px 58px rgba(32,77,80,.22) !important;
}
body .klira-v2 a.klira-v2-btn-primary:hover,
body .klira-v2 a.klira-v2-btn-primary:focus-visible,
body .klira-v2 a.klira-v2-btn-primary:active,
body .klira-v2 a[data-klira-open-chat="1"]:hover,
body .klira-v2 a[data-klira-open-chat="1"]:focus-visible,
body .klira-v2 a[data-klira-open-chat="1"]:active{
  background:var(--klira-dark-2) !important;
  border-color:var(--klira-dark-2) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
body .klira-v2 a.klira-v2-btn-call:hover,
body .klira-v2 a.klira-v2-btn-call:focus-visible,
body .klira-v2 a.klira-v2-btn-call:active,
body .klira-v2 a[data-klira-open-call="1"]:hover,
body .klira-v2 a[data-klira-open-call="1"]:focus-visible,
body .klira-v2 a[data-klira-open-call="1"]:active{
  background:#ffffff !important;
  border-color:rgba(32,77,80,.25) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
}
body .klira-v2 a.klira-v2-btn-secondary:hover,
body .klira-v2 a.klira-v2-btn-secondary:focus-visible,
body .klira-v2 a.klira-v2-btn-secondary:active{
  background:var(--klira-dark) !important;
  border-color:var(--klira-dark) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* 003 + 004 — less empty space around section titles */
body .klira-v2 .klira-v2-section{
  padding:58px 0 !important;
}
body .klira-v2 .klira-v2-hero{
  padding:38px 0 62px !important;
}
body .klira-v2 .klira-v2-section-head{
  max-width:820px !important;
  margin:0 0 28px !important;
}
body .klira-v2 .klira-v2-section-head .klira-v2-eyebrow,
body .klira-v2 .klira-v2-section-head .klira-badge{
  margin-bottom:18px !important;
}
body .klira-v2 .klira-v2-section-head h2{
  margin-bottom:14px !important;
}
body .klira-v2 .klira-v2-highlight{
  margin-top:22px !important;
}

/* 006 — hero right-side cards centered and text readable */
body .klira-v2 .klira-v2-hero-card{
  width:100% !important;
  max-width:430px !important;
  margin:0 auto !important;
  padding:24px !important;
  display:grid !important;
  gap:16px !important;
  align-content:center !important;
  justify-items:stretch !important;
  border-radius:30px !important;
  background:linear-gradient(145deg,rgba(180,246,206,.92),rgba(180,246,206,.72)) !important;
  border:1px solid rgba(32,77,80,.10) !important;
  box-shadow:0 24px 64px rgba(32,77,80,.16) !important;
}
body .klira-v2 .klira-v2-hero-card::before{
  inset:18px -10px -10px 24px !important;
  background:rgba(255,255,255,.92) !important;
  border:1px solid rgba(32,77,80,.08) !important;
  border-radius:30px !important;
  opacity:1 !important;
}
body .klira-v2 .klira-v2-mini-card{
  min-height:132px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  padding:24px !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.78) !important;
  border:1px solid rgba(32,77,80,.09) !important;
  box-shadow:0 12px 28px rgba(32,77,80,.08) !important;
}
body .klira-v2 .klira-v2-mini-card strong{
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  font-size:18px !important;
  line-height:1.22 !important;
  margin:0 0 8px !important;
}
body .klira-v2 .klira-v2-mini-card span{
  color:#3f6568 !important;
  -webkit-text-fill-color:#3f6568 !important;
  opacity:1 !important;
  font-size:16px !important;
  line-height:1.45 !important;
}
body .klira-v2 .klira-v2-mini-card:hover,
body .klira-v2 .klira-v2-mini-card:focus-within,
body .klira-v2 .klira-v2-mini-card:active{
  transform:translateY(-7px) !important;
  background:#ffffff !important;
  border-color:rgba(32,77,80,.18) !important;
  box-shadow:0 26px 58px rgba(32,77,80,.18) !important;
}

/* More alive hover across home cards */
body .klira-v2 .klira-v2-card:hover,
body .klira-v2 .klira-v2-card:focus-within,
body .klira-v2 .klira-v2-card:active,
body .klira-v2 .klira-v2-step:hover,
body .klira-v2 .klira-v2-step:focus-within,
body .klira-v2 .klira-v2-step:active,
body .klira-v2 .klira-v2-benefits div:hover,
body .klira-v2 .klira-v2-benefits div:focus-within,
body .klira-v2 .klira-v2-benefits div:active{
  transform:translateY(-8px) !important;
  box-shadow:0 28px 70px rgba(32,77,80,.18) !important;
}
body .klira-v2 .klira-v2-card,
body .klira-v2 .klira-v2-mini-card,
body .klira-v2 .klira-v2-step,
body .klira-v2 .klira-v2-benefits div,
body .klira-v2 .klira-v2-btn{
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background-color .22s ease, color .22s ease !important;
}

@media (min-width:1025px){
  body .klira-v2 .klira-v2-hero-copy{text-align:center !important;}
  body .klira-v2 .klira-v2-hero-copy h1,
  body .klira-v2 .klira-v2-hero-copy .klira-v2-lead{margin-left:auto !important;margin-right:auto !important;}
}
@media (max-width:1024px){
  body .klira-v2 .klira-v2-hero-card{max-width:520px !important;}
  body .klira-v2 .klira-v2-actions > a.klira-v2-btn{min-width:210px !important;}
}
@media (max-width:680px){
  body .klira-v2 .klira-v2-wrap,
  body .klira-v2 .klira-v2-hero-eyebrow-wrap{width:min(100% - 26px,1160px) !important;}
  body .klira-v2 .klira-v2-section{padding:44px 0 !important;}
  body .klira-v2 .klira-v2-hero{padding:28px 0 46px !important;}
  body .klira-v2 .klira-v2-actions,
  body .klira-v2 .klira-v2-final-actions{display:grid !important;grid-template-columns:1fr !important;gap:12px !important;}
  body .klira-v2 .klira-v2-actions > a.klira-v2-btn,
  body .klira-v2 .klira-v2-final-actions > a.klira-v2-btn,
  body .klira-v2 a.klira-v2-btn.klira-btn-unified{width:100% !important;min-width:0 !important;}
  body .klira-v2 .klira-v2-hero-card{max-width:100% !important;padding:18px !important;}
  body .klira-v2 .klira-v2-hero-card::before{display:none !important;}
  body .klira-v2 .klira-v2-mini-card{min-height:auto !important;padding:22px !important;}
}


/* Klira Home V2 v1.1.3 — exact corrections after disabling Brand Adapter.
   Scope: home page only. No JS/form/chat logic changed. */
body .klira-v2{
  --klira-dark:#204d50;
  --klira-dark-2:#173b3e;
  --klira-mint:#b4f6ce;
  --klira-cream:#f4edea;
  --klira-text:#14383b;
  --klira-muted:#41676a;
}

/* 007 — center hero badge and keep it away from block edges */
body main.klira-v2 .klira-v2-hero{
  position:relative !important;
  padding:34px 0 56px !important;
}
body main.klira-v2 .klira-v2-hero > .klira-v2-hero-eyebrow-wrap{
  width:min(1160px, calc(100% - 42px)) !important;
  max-width:1160px !important;
  margin:0 auto 34px !important;
  padding:0 !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
}
body main.klira-v2 .klira-v2-hero-eyebrow,
body main.klira-v2 .klira-v2-hero > .klira-v2-hero-eyebrow-wrap .klira-v2-hero-eyebrow{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:min(360px, 100%) !important;
  min-width:0 !important;
  max-width:360px !important;
  margin:0 auto !important;
  padding:10px 22px !important;
  border-radius:999px !important;
  background:var(--klira-mint) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  font-weight:900 !important;
  line-height:1.1 !important;
  text-align:center !important;
  letter-spacing:.08em !important;
  box-shadow:0 12px 28px rgba(32,77,80,.08) !important;
}

/* Hero block compact and balanced */
body main.klira-v2 .klira-v2-hero-grid{
  width:min(1160px, calc(100% - 42px)) !important;
  grid-template-columns:minmax(0,1.04fr) minmax(340px,.78fr) !important;
  gap:52px !important;
  align-items:center !important;
  margin:0 auto !important;
}
body main.klira-v2 .klira-v2-hero-copy{
  text-align:center !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
}
body main.klira-v2 .klira-v2-hero-copy h1{
  max-width:720px !important;
  margin:0 auto 22px !important;
  font-weight:500 !important;
  font-size:clamp(44px,5.2vw,70px) !important;
  line-height:1.08 !important;
  letter-spacing:-.045em !important;
}
body main.klira-v2 .klira-v2-lead{
  max-width:760px !important;
  margin:0 auto !important;
  color:#42676a !important;
  -webkit-text-fill-color:#42676a !important;
  font-weight:700 !important;
}

/* 002 / 005 / 010 — button labels always visible and one standard size */
body main.klira-v2 a.klira-v2-btn,
body main.klira-v2 a.klira-v2-btn:visited{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:238px !important;
  min-height:58px !important;
  padding:16px 28px !important;
  border-radius:999px !important;
  font-size:17px !important;
  line-height:1.1 !important;
  font-weight:900 !important;
  text-align:center !important;
  opacity:1 !important;
  visibility:visible !important;
  text-decoration:none !important;
  overflow:hidden !important;
  white-space:nowrap !important;
  text-indent:0 !important;
}
body main.klira-v2 a.klira-v2-btn .klira-v2-btn-label{
  display:block !important;
  position:relative !important;
  z-index:3 !important;
  opacity:1 !important;
  visibility:visible !important;
  color:inherit !important;
  -webkit-text-fill-color:currentColor !important;
  font:inherit !important;
  line-height:inherit !important;
  text-indent:0 !important;
  white-space:nowrap !important;
  text-shadow:none !important;
}
body main.klira-v2 .klira-v2-actions,
body main.klira-v2 .klira-v2-final-actions{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:16px !important;
  flex-wrap:wrap !important;
  width:100% !important;
}
body main.klira-v2 a.klira-v2-btn-call,
body main.klira-v2 a.klira-v2-btn-call:visited{
  background:var(--klira-mint) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  border:1px solid rgba(32,77,80,.18) !important;
}
body main.klira-v2 a.klira-v2-btn-primary,
body main.klira-v2 a.klira-v2-btn-primary:visited,
body main.klira-v2 a[data-klira-open-chat="1"],
body main.klira-v2 a[data-klira-open-chat="1"]:visited{
  background:var(--klira-dark) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  border:1px solid var(--klira-dark) !important;
}
body main.klira-v2 a.klira-v2-btn-secondary,
body main.klira-v2 a.klira-v2-btn-secondary:visited{
  background:#ffffff !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  border:1px solid rgba(32,77,80,.20) !important;
}
body main.klira-v2 a.klira-v2-btn:hover,
body main.klira-v2 a.klira-v2-btn:focus-visible,
body main.klira-v2 a.klira-v2-btn:active{
  transform:translateY(-7px) !important;
  box-shadow:0 26px 62px rgba(32,77,80,.24) !important;
}
body main.klira-v2 a.klira-v2-btn-primary:hover,
body main.klira-v2 a.klira-v2-btn-primary:focus-visible,
body main.klira-v2 a.klira-v2-btn-primary:active,
body main.klira-v2 a[data-klira-open-chat="1"]:hover,
body main.klira-v2 a[data-klira-open-chat="1"]:focus-visible,
body main.klira-v2 a[data-klira-open-chat="1"]:active{
  background:#173b3e !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* 008 — simplify right hero visual: one clear wrapper, centered cards */
body main.klira-v2 .klira-v2-hero-card{
  width:100% !important;
  max-width:450px !important;
  margin:0 auto !important;
  padding:28px !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:18px !important;
  align-items:center !important;
  justify-items:stretch !important;
  background:linear-gradient(145deg, rgba(180,246,206,.96), rgba(180,246,206,.72)) !important;
  border:1px solid rgba(32,77,80,.12) !important;
  border-radius:30px !important;
  box-shadow:0 26px 68px rgba(32,77,80,.18) !important;
  overflow:visible !important;
}
body main.klira-v2 .klira-v2-hero-card::before{
  display:none !important;
  content:none !important;
}
body main.klira-v2 .klira-v2-mini-card{
  width:100% !important;
  min-height:132px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  padding:26px !important;
  border-radius:25px !important;
  background:rgba(255,255,255,.88) !important;
  border:1px solid rgba(32,77,80,.10) !important;
  box-shadow:0 14px 32px rgba(32,77,80,.09) !important;
}
body main.klira-v2 .klira-v2-mini-card strong,
body main.klira-v2 .klira-v2-mini-card span{
  opacity:1 !important;
  visibility:visible !important;
  text-shadow:none !important;
}
body main.klira-v2 .klira-v2-mini-card strong{
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
}
body main.klira-v2 .klira-v2-mini-card span{
  color:#42676a !important;
  -webkit-text-fill-color:#42676a !important;
}
body main.klira-v2 .klira-v2-mini-card:hover,
body main.klira-v2 .klira-v2-mini-card:focus-within{
  transform:translateY(-9px) !important;
  background:#ffffff !important;
  box-shadow:0 30px 72px rgba(32,77,80,.22) !important;
}

/* 003 / 004 — reduce excessive empty space before section names */
body main.klira-v2 .klira-v2-section{
  padding:54px 0 !important;
}
body main.klira-v2 .klira-v2-section-head{
  margin:0 0 30px !important;
  max-width:820px !important;
}
body main.klira-v2 .klira-v2-section-head h2{
  margin-top:0 !important;
}

/* 009 — badges on dark blocks must not disappear */
body main.klira-v2 .klira-v2-dark .klira-v2-eyebrow,
body main.klira-v2 .klira-v2-dark .klira-badge,
body main.klira-v2 .klira-v2-final .klira-v2-eyebrow,
body main.klira-v2 .klira-v2-final .klira-badge{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:118px !important;
  padding:10px 20px !important;
  border-radius:999px !important;
  background:var(--klira-mint) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  font-weight:900 !important;
  line-height:1.1 !important;
  letter-spacing:.08em !important;
}
body main.klira-v2 .klira-v2-dark .klira-v2-section-head h2,
body main.klira-v2 .klira-v2-dark .klira-v2-section-head p{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* Final CTA: second button must contrast against dark panel */
body main.klira-v2 .klira-v2-final a.klira-v2-btn-call,
body main.klira-v2 .klira-v2-final a.klira-v2-btn-call:visited{
  background:var(--klira-mint) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
}
body main.klira-v2 .klira-v2-final a.klira-v2-btn-primary,
body main.klira-v2 .klira-v2-final a.klira-v2-btn-primary:visited,
body main.klira-v2 .klira-v2-final a[data-klira-open-chat="1"],
body main.klira-v2 .klira-v2-final a[data-klira-open-chat="1"]:visited{
  background:#ffffff !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  border-color:#ffffff !important;
}
body main.klira-v2 .klira-v2-final a.klira-v2-btn-primary:hover,
body main.klira-v2 .klira-v2-final a[data-klira-open-chat="1"]:hover{
  background:var(--klira-mint) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
}

/* More life on hover for every card/panel */
body main.klira-v2 .klira-v2-card:hover,
body main.klira-v2 .klira-v2-card:focus-within,
body main.klira-v2 .klira-v2-step:hover,
body main.klira-v2 .klira-v2-step:focus-within,
body main.klira-v2 .klira-v2-benefits div:hover,
body main.klira-v2 .klira-v2-benefits div:focus-within{
  transform:translateY(-9px) !important;
  box-shadow:0 30px 76px rgba(32,77,80,.22) !important;
}

@media (max-width:1024px){
  body main.klira-v2 .klira-v2-hero-grid{
    grid-template-columns:1fr !important;
    gap:34px !important;
  }
  body main.klira-v2 .klira-v2-hero-copy h1{
    max-width:820px !important;
  }
  body main.klira-v2 .klira-v2-hero-card{
    max-width:520px !important;
  }
}
@media (max-width:680px){
  body main.klira-v2 .klira-v2-hero,
  body main.klira-v2 .klira-v2-section{
    padding:38px 0 !important;
  }
  body main.klira-v2 .klira-v2-hero > .klira-v2-hero-eyebrow-wrap,
  body main.klira-v2 .klira-v2-hero-grid,
  body main.klira-v2 .klira-v2-wrap{
    width:min(100% - 26px,1160px) !important;
  }
  body main.klira-v2 .klira-v2-hero-copy h1{
    font-size:clamp(36px,10.8vw,48px) !important;
    line-height:1.08 !important;
  }
  body main.klira-v2 .klira-v2-actions,
  body main.klira-v2 .klira-v2-final-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  body main.klira-v2 a.klira-v2-btn,
  body main.klira-v2 a.klira-v2-btn:visited{
    width:100% !important;
    min-width:0 !important;
    white-space:normal !important;
  }
  body main.klira-v2 a.klira-v2-btn .klira-v2-btn-label{
    white-space:normal !important;
  }
  body main.klira-v2 .klira-v2-hero-card{
    max-width:100% !important;
    padding:18px !important;
  }
}


/* Klira Home V2 v1.1.4 — final hero centering + forced visible chat button label.
   Scope: home page only. No JS/form/chat logic changed. */

/* 011 — center the KLIRA CONSULTING badge against the whole hero block, not the right column */
body main.klira-v2 section.klira-v2-hero{
  position:relative !important;
  padding-top:86px !important;
}
body main.klira-v2 section.klira-v2-hero > .klira-v2-hero-eyebrow-wrap{
  position:absolute !important;
  top:34px !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 20px !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  pointer-events:none !important;
  transform:none !important;
}
body main.klira-v2 section.klira-v2-hero > .klira-v2-hero-eyebrow-wrap .klira-v2-hero-eyebrow{
  width:auto !important;
  min-width:360px !important;
  max-width:min(460px, calc(100vw - 48px)) !important;
  margin:0 auto !important;
  padding:11px 34px !important;
  text-align:center !important;
  justify-content:center !important;
  align-items:center !important;
  transform:none !important;
  background:var(--klira-mint) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  box-shadow:0 14px 30px rgba(32,77,80,.09) !important;
}

/* 012 — force the second button text to stay visible on the dark background */
body main.klira-v2 .klira-v2-actions a[data-klira-open-chat="1"],
body main.klira-v2 .klira-v2-actions a[data-klira-open-chat="1"]:visited,
body main.klira-v2 .klira-v2-actions a.klira-v2-btn-primary,
body main.klira-v2 .klira-v2-actions a.klira-v2-btn-primary:visited{
  position:relative !important;
  isolation:isolate !important;
  background:var(--klira-dark) !important;
  border-color:var(--klira-dark) !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
body main.klira-v2 .klira-v2-actions a[data-klira-open-chat="1"] .klira-v2-btn-label,
body main.klira-v2 .klira-v2-actions a.klira-v2-btn-primary .klira-v2-btn-label,
body main.klira-v2 .klira-v2-actions a[data-klira-open-chat="1"] span,
body main.klira-v2 .klira-v2-actions a.klira-v2-btn-primary span{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  position:relative !important;
  z-index:5 !important;
  opacity:1 !important;
  visibility:visible !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  text-shadow:0 1px 1px rgba(0,0,0,.16) !important;
  mix-blend-mode:normal !important;
  filter:none !important;
}
body main.klira-v2 .klira-v2-actions a[data-klira-open-chat="1"]:hover,
body main.klira-v2 .klira-v2-actions a[data-klira-open-chat="1"]:focus-visible,
body main.klira-v2 .klira-v2-actions a[data-klira-open-chat="1"]:active,
body main.klira-v2 .klira-v2-actions a.klira-v2-btn-primary:hover,
body main.klira-v2 .klira-v2-actions a.klira-v2-btn-primary:focus-visible,
body main.klira-v2 .klira-v2-actions a.klira-v2-btn-primary:active{
  background:#173b3e !important;
  border-color:#173b3e !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
body main.klira-v2 .klira-v2-actions a[data-klira-open-chat="1"]:hover .klira-v2-btn-label,
body main.klira-v2 .klira-v2-actions a[data-klira-open-chat="1"]:focus-visible .klira-v2-btn-label,
body main.klira-v2 .klira-v2-actions a[data-klira-open-chat="1"]:active .klira-v2-btn-label,
body main.klira-v2 .klira-v2-actions a.klira-v2-btn-primary:hover .klira-v2-btn-label,
body main.klira-v2 .klira-v2-actions a.klira-v2-btn-primary:focus-visible .klira-v2-btn-label,
body main.klira-v2 .klira-v2-actions a.klira-v2-btn-primary:active .klira-v2-btn-label{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

@media (max-width:680px){
  body main.klira-v2 section.klira-v2-hero{
    padding-top:78px !important;
  }
  body main.klira-v2 section.klira-v2-hero > .klira-v2-hero-eyebrow-wrap{
    top:24px !important;
    padding:0 14px !important;
  }
  body main.klira-v2 section.klira-v2-hero > .klira-v2-hero-eyebrow-wrap .klira-v2-hero-eyebrow{
    min-width:0 !important;
    width:auto !important;
    max-width:calc(100vw - 40px) !important;
    padding:10px 18px !important;
    font-size:12px !important;
    white-space:normal !important;
  }
}

/* Klira Home V2 v1.1.5 — safe hero badge placement + translation fallback support.
   The badge now belongs to the right hero column, so it cannot escape or be clipped. */
body main.klira-v2 section.klira-v2-hero{
  padding-top:56px !important;
  overflow:hidden !important;
}
body main.klira-v2 .klira-v2-hero-grid{
  align-items:center !important;
}
body main.klira-v2 .klira-v2-hero-side{
  width:100% !important;
  max-width:500px !important;
  margin:0 auto !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:24px !important;
  min-width:0 !important;
}
body main.klira-v2 .klira-v2-hero > .klira-v2-hero-eyebrow-wrap{
  display:none !important;
}
body main.klira-v2 .klira-v2-hero-side .klira-v2-hero-eyebrow,
body main.klira-v2 .klira-v2-hero-side .klira-page-hero__badge,
body main.klira-v2 .klira-v2-hero-side .klira-badge{
  position:static !important;
  inset:auto !important;
  transform:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:min(100%, 430px) !important;
  min-width:0 !important;
  max-width:430px !important;
  margin:0 auto !important;
  padding:11px 24px !important;
  border-radius:999px !important;
  background:var(--klira-mint) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  font-size:14px !important;
  font-weight:900 !important;
  line-height:1.1 !important;
  letter-spacing:.08em !important;
  box-shadow:0 14px 30px rgba(32,77,80,.09) !important;
  pointer-events:auto !important;
}
body main.klira-v2 .klira-v2-hero-side .klira-v2-hero-eyebrow::before{
  display:none !important;
  content:none !important;
}
body main.klira-v2 .klira-v2-hero-side .klira-v2-hero-card{
  margin:0 auto !important;
  width:100% !important;
  max-width:450px !important;
}

/* Extra hardening for the chat/evaluation button text. */
body main.klira-v2 .klira-v2-actions a.klira-v2-btn-primary,
body main.klira-v2 .klira-v2-actions a[data-klira-open-chat="1"]{
  min-width:238px !important;
}
body main.klira-v2 .klira-v2-actions a.klira-v2-btn-primary .klira-v2-btn-label,
body main.klira-v2 .klira-v2-actions a[data-klira-open-chat="1"] .klira-v2-btn-label{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  opacity:1 !important;
  visibility:visible !important;
}

@media (max-width:1024px){
  body main.klira-v2 .klira-v2-hero-side{max-width:560px !important;}
  body main.klira-v2 .klira-v2-hero-side .klira-v2-hero-card{max-width:520px !important;}
}
@media (max-width:680px){
  body main.klira-v2 section.klira-v2-hero{padding-top:38px !important;}
  body main.klira-v2 .klira-v2-hero-side{gap:18px !important; max-width:100% !important;}
  body main.klira-v2 .klira-v2-hero-side .klira-v2-hero-eyebrow,
  body main.klira-v2 .klira-v2-hero-side .klira-page-hero__badge,
  body main.klira-v2 .klira-v2-hero-side .klira-badge{
    width:100% !important;
    max-width:100% !important;
    white-space:normal !important;
    font-size:12px !important;
    padding:10px 16px !important;
  }
}


/* Klira Home V2 v1.1.6 — unified button system requested by client
   Light panels: #204d50 / white -> hover #b4f6ce / #204d50
   Dark panels (#204d50): #b4f6ce / #204d50 -> hover #f4edea / #204d50
*/
body main.klira-v2{
  --klira-dark: #204d50;
  --klira-mint: #b4f6ce;
  --klira-warm: #f4edea;
}

/* One visual standard for every main CTA button */
body main.klira-v2 a.klira-v2-btn,
body main.klira-v2 a.klira-v2-btn:visited,
body main.klira-v2 a.klira-v2-btn-call,
body main.klira-v2 a.klira-v2-btn-call:visited,
body main.klira-v2 a.klira-v2-btn-primary,
body main.klira-v2 a.klira-v2-btn-primary:visited,
body main.klira-v2 a.klira-v2-btn-secondary,
body main.klira-v2 a.klira-v2-btn-secondary:visited{
  min-width: 220px !important;
  min-height: 58px !important;
  padding: 15px 30px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  font-weight: 900 !important;
  letter-spacing: .01em !important;
  line-height: 1.15 !important;
  white-space: nowrap !important;
  border: 1px solid rgba(32,77,80,.16) !important;
  text-decoration: none !important;
  box-shadow: 0 14px 32px rgba(32,77,80,.16) !important;
  transition: transform .22s ease, box-shadow .22s ease, background-color .22s ease, color .22s ease, border-color .22s ease !important;
  overflow: hidden !important;
}

/* LIGHT BACKGROUND BLOCKS — default */
body main.klira-v2 :where(.klira-v2-hero, .klira-v2-soft, .klira-v2-about, .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final), .klira-v2-modal-dialog) a.klira-v2-btn,
body main.klira-v2 :where(.klira-v2-hero, .klira-v2-soft, .klira-v2-about, .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final), .klira-v2-modal-dialog) a.klira-v2-btn:visited,
body main.klira-v2 .klira-v2-modal-form .klira-btn,
body main.klira-v2 .klira-v2-modal-form button[type="submit"]{
  background: #204d50 !important;
  color: #ffffff !important;
  border-color: #204d50 !important;
}

/* LIGHT BACKGROUND BLOCKS — hover/focus/active */
body main.klira-v2 :where(.klira-v2-hero, .klira-v2-soft, .klira-v2-about, .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final), .klira-v2-modal-dialog) a.klira-v2-btn:hover,
body main.klira-v2 :where(.klira-v2-hero, .klira-v2-soft, .klira-v2-about, .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final), .klira-v2-modal-dialog) a.klira-v2-btn:focus-visible,
body main.klira-v2 :where(.klira-v2-hero, .klira-v2-soft, .klira-v2-about, .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final), .klira-v2-modal-dialog) a.klira-v2-btn:active,
body main.klira-v2 .klira-v2-modal-form .klira-btn:hover,
body main.klira-v2 .klira-v2-modal-form .klira-btn:focus,
body main.klira-v2 .klira-v2-modal-form .klira-btn:active,
body main.klira-v2 .klira-v2-modal-form button[type="submit"]:hover,
body main.klira-v2 .klira-v2-modal-form button[type="submit"]:focus,
body main.klira-v2 .klira-v2-modal-form button[type="submit"]:active{
  background: #b4f6ce !important;
  color: #204d50 !important;
  border-color: #b4f6ce !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 22px 42px rgba(32,77,80,.22) !important;
}

/* DARK BACKGROUND BLOCKS — default */
body main.klira-v2 :where(.klira-v2-dark, .klira-v2-final, .klira-cta) a.klira-v2-btn,
body main.klira-v2 :where(.klira-v2-dark, .klira-v2-final, .klira-cta) a.klira-v2-btn:visited{
  background: #b4f6ce !important;
  color: #204d50 !important;
  border-color: #b4f6ce !important;
  box-shadow: 0 16px 34px rgba(0,0,0,.16) !important;
}

/* DARK BACKGROUND BLOCKS — hover/focus/active */
body main.klira-v2 :where(.klira-v2-dark, .klira-v2-final, .klira-cta) a.klira-v2-btn:hover,
body main.klira-v2 :where(.klira-v2-dark, .klira-v2-final, .klira-cta) a.klira-v2-btn:focus-visible,
body main.klira-v2 :where(.klira-v2-dark, .klira-v2-final, .klira-cta) a.klira-v2-btn:active{
  background: #f4edea !important;
  color: #204d50 !important;
  border-color: #f4edea !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 24px 46px rgba(0,0,0,.22) !important;
}

/* Force inner button labels to inherit the correct visible color */
body main.klira-v2 a.klira-v2-btn .klira-v2-btn-label,
body main.klira-v2 a.klira-v2-btn span,
body main.klira-v2 a.klira-v2-btn:hover .klira-v2-btn-label,
body main.klira-v2 a.klira-v2-btn:focus-visible .klira-v2-btn-label,
body main.klira-v2 a.klira-v2-btn:active .klira-v2-btn-label{
  color: inherit !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-shadow: none !important;
}

/* Keep the three hero buttons aligned cleanly on desktop and stacked on mobile */
body main.klira-v2 .klira-v2-actions,
body main.klira-v2 .klira-v2-final-actions{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
}

@media (max-width: 680px){
  body main.klira-v2 a.klira-v2-btn,
  body main.klira-v2 a.klira-v2-btn:visited{
    width: 100% !important;
    min-width: 0 !important;
  }
  body main.klira-v2 a.klira-v2-btn:hover,
  body main.klira-v2 a.klira-v2-btn:focus-visible,
  body main.klira-v2 a.klira-v2-btn:active{
    transform: translateY(-2px) !important;
  }
}
/* ============================================================
   KLIRA — FINAL SAFE OVERRIDE v1
   Apply at the VERY END of Apariencia > Personalizar > CSS adicional.
   Fixes global CSS conflicts on Inicio without touching plugin logic.
   ============================================================ */

:root{
  --klira-dark:#204d50;
  --klira-mint:#b4f6ce;
  --klira-soft:#f4edea;
  --klira-ink:#123638;
}

/* ---------- HOME HERO: remove old absolute/negative badge conflicts ---------- */
body main.klira-v2.klira-page--home section.klira-v2-hero,
body main.klira-v2.klira-page--home .klira-v2-hero.klira-page-hero{
  position:relative !important;
  overflow:hidden !important;
  padding-top:clamp(44px,5vw,64px) !important;
  padding-bottom:clamp(56px,6vw,76px) !important;
  margin-top:0 !important;
}

body main.klira-v2.klira-page--home .klira-v2-hero-grid,
body main.klira-v2.klira-page--home .klira-v2-hero .klira-v2-hero-grid{
  position:relative !important;
  padding-top:0 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1.08fr) minmax(330px,.78fr) !important;
  gap:clamp(30px,4vw,54px) !important;
  align-items:center !important;
}

body main.klira-v2.klira-page--home .klira-v2-hero-copy,
body main.klira-v2.klira-page--home .klira-v2-hero-side{
  position:relative !important;
  inset:auto !important;
  transform:none !important;
}

body main.klira-v2.klira-page--home .klira-v2-hero-side{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:22px !important;
  width:100% !important;
  max-width:520px !important;
  min-width:0 !important;
  margin:0 auto !important;
  overflow:visible !important;
}

/* The company badge now belongs to the right column and must never escape/crop. */
body main.klira-v2.klira-page--home .klira-v2-hero-side > .klira-v2-hero-eyebrow,
body main.klira-v2.klira-page--home .klira-v2-hero-side > .klira-page-hero__badge,
body main.klira-v2.klira-page--home .klira-v2-hero-side > .klira-badge{
  position:static !important;
  inset:auto !important;
  left:auto !important;
  top:auto !important;
  right:auto !important;
  bottom:auto !important;
  transform:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:min(100%,430px) !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 auto !important;
  padding:11px 22px !important;
  box-sizing:border-box !important;
  border-radius:999px !important;
  background:var(--klira-mint) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  font-size:13px !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  text-align:center !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:clip !important;
  box-shadow:0 12px 30px rgba(32,77,80,.09) !important;
  z-index:3 !important;
}

body main.klira-v2.klira-page--home .klira-v2-hero-side > .klira-v2-hero-eyebrow::before,
body main.klira-v2.klira-page--home .klira-v2-hero-side > .klira-v2-hero-eyebrow::after{
  display:none !important;
  content:none !important;
}

/* Hero right card: clean one wrapper + centered inner cards. */
body main.klira-v2.klira-page--home .klira-v2-hero-card{
  width:100% !important;
  max-width:460px !important;
  margin:0 auto !important;
  display:grid !important;
  gap:18px !important;
  padding:28px !important;
  border-radius:30px !important;
  background:rgba(180,246,206,.92) !important;
  border:1px solid rgba(32,77,80,.12) !important;
  box-shadow:0 28px 70px rgba(32,77,80,.16) !important;
  overflow:visible !important;
}
body main.klira-v2.klira-page--home .klira-v2-hero-card::before,
body main.klira-v2.klira-page--home .klira-v2-hero-card::after{
  display:none !important;
  content:none !important;
}
body main.klira-v2.klira-page--home .klira-v2-mini-card{
  min-height:112px !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  padding:22px 26px !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.90) !important;
  border:1px solid rgba(32,77,80,.08) !important;
  box-shadow:0 12px 28px rgba(32,77,80,.08) !important;
}
body main.klira-v2.klira-page--home .klira-v2-mini-card strong{
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
}
body main.klira-v2.klira-page--home .klira-v2-mini-card span{
  color:rgba(32,77,80,.82) !important;
  -webkit-text-fill-color:rgba(32,77,80,.82) !important;
}

/* ---------- HOME BUTTON SYSTEM ---------- */
body main.klira-v2.klira-page--home a.klira-v2-btn,
body main.klira-v2.klira-page--home a.klira-v2-btn:visited{
  min-width:220px !important;
  min-height:58px !important;
  padding:15px 30px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  white-space:nowrap !important;
  text-decoration:none !important;
  border:1px solid rgba(32,77,80,.16) !important;
  box-shadow:0 14px 32px rgba(32,77,80,.16) !important;
  transition:transform .22s ease, box-shadow .22s ease, background-color .22s ease, color .22s ease, border-color .22s ease !important;
}

/* Light blocks: normal = dark bg / white text */
body main.klira-v2.klira-page--home :where(.klira-v2-hero,.klira-v2-soft,.klira-v2-about,.klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final),.klira-v2-modal-dialog) a.klira-v2-btn,
body main.klira-v2.klira-page--home :where(.klira-v2-hero,.klira-v2-soft,.klira-v2-about,.klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final),.klira-v2-modal-dialog) a.klira-v2-btn:visited{
  background:var(--klira-dark) !important;
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  border-color:var(--klira-dark) !important;
}

/* Light blocks: hover/focus/active = mint bg / dark text */
body main.klira-v2.klira-page--home :where(.klira-v2-hero,.klira-v2-soft,.klira-v2-about,.klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final),.klira-v2-modal-dialog) a.klira-v2-btn:hover,
body main.klira-v2.klira-page--home :where(.klira-v2-hero,.klira-v2-soft,.klira-v2-about,.klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final),.klira-v2-modal-dialog) a.klira-v2-btn:focus-visible,
body main.klira-v2.klira-page--home :where(.klira-v2-hero,.klira-v2-soft,.klira-v2-about,.klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final),.klira-v2-modal-dialog) a.klira-v2-btn:active{
  background:var(--klira-mint) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  border-color:var(--klira-mint) !important;
  transform:translateY(-4px) !important;
  box-shadow:0 24px 48px rgba(32,77,80,.22) !important;
}

/* Dark blocks: normal = mint bg / dark text */
body main.klira-v2.klira-page--home :where(.klira-v2-dark,.klira-v2-final,.klira-cta) a.klira-v2-btn,
body main.klira-v2.klira-page--home :where(.klira-v2-dark,.klira-v2-final,.klira-cta) a.klira-v2-btn:visited{
  background:var(--klira-mint) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  border-color:var(--klira-mint) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.16) !important;
}

/* Dark blocks: hover/focus/active = warm bg / dark text */
body main.klira-v2.klira-page--home :where(.klira-v2-dark,.klira-v2-final,.klira-cta) a.klira-v2-btn:hover,
body main.klira-v2.klira-page--home :where(.klira-v2-dark,.klira-v2-final,.klira-cta) a.klira-v2-btn:focus-visible,
body main.klira-v2.klira-page--home :where(.klira-v2-dark,.klira-v2-final,.klira-cta) a.klira-v2-btn:active{
  background:var(--klira-soft) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  border-color:var(--klira-soft) !important;
  transform:translateY(-4px) !important;
  box-shadow:0 24px 48px rgba(0,0,0,.22) !important;
}

/* Force inner labels to follow the button color, overriding older white-only rules. */
body main.klira-v2.klira-page--home a.klira-v2-btn *,
body main.klira-v2.klira-page--home a.klira-v2-btn .klira-v2-btn-label,
body main.klira-v2.klira-page--home a.klira-v2-btn:hover *,
body main.klira-v2.klira-page--home a.klira-v2-btn:focus-visible *,
body main.klira-v2.klira-page--home a.klira-v2-btn:active *{
  color:inherit !important;
  -webkit-text-fill-color:currentColor !important;
  opacity:1 !important;
  visibility:visible !important;
  text-shadow:none !important;
}

body main.klira-v2.klira-page--home .klira-v2-actions,
body main.klira-v2.klira-page--home .klira-v2-final-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:16px !important;
  flex-wrap:wrap !important;
}

/* More alive hover for cards, but only on desktop. */
@media (hover:hover) and (pointer:fine){
  body main.klira-v2.klira-page--home .klira-card:hover,
  body main.klira-v2.klira-page--home .klira-panel:hover,
  body main.klira-v2.klira-page--home .klira-glass:hover,
  body main.klira-v2.klira-page--home .klira-v2-card:hover,
  body main.klira-v2.klira-page--home .klira-v2-step:hover,
  body main.klira-v2.klira-page--home .klira-v2-mini-card:hover{
    transform:translateY(-7px) !important;
    box-shadow:0 28px 70px rgba(32,77,80,.18) !important;
    border-color:rgba(180,246,206,.70) !important;
  }
}

/* Mobile safety */
@media (max-width:900px){
  body main.klira-v2.klira-page--home .klira-v2-hero-grid{
    grid-template-columns:1fr !important;
  }
  body main.klira-v2.klira-page--home .klira-v2-hero-copy{
    text-align:center !important;
  }
  body main.klira-v2.klira-page--home .klira-v2-lead{
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

@media (max-width:680px){
  body main.klira-v2.klira-page--home section.klira-v2-hero,
  body main.klira-v2.klira-page--home .klira-v2-hero.klira-page-hero{
    padding-top:36px !important;
    padding-bottom:46px !important;
  }
  body main.klira-v2.klira-page--home a.klira-v2-btn,
  body main.klira-v2.klira-page--home a.klira-v2-btn:visited{
    width:100% !important;
    min-width:0 !important;
    white-space:normal !important;
  }
  body main.klira-v2.klira-page--home .klira-v2-hero-card{
    max-width:100% !important;
    padding:18px !important;
  }
  body main.klira-v2.klira-page--home .klira-v2-mini-card{
    min-height:100px !important;
    padding:20px !important;
  }
}
/* ============================================================
   KLIRA — BUTTON CONTEXT RULES FINAL v2
   Pegar SIEMPRE al final del CSS adicional.

   REGLAS:
   1) Botón en bloque claro:
      normal  => fondo #204d50, texto #ffffff
      hover   => fondo #b4f6ce, texto #204d50

   2) Botón en bloque oscuro #204d50:
      normal  => fondo #b4f6ce, texto #204d50
      hover   => fondo #f4edea, texto #204d50

   Incluye -webkit-text-fill-color para Chrome/Brave/Edge.
   ============================================================ */

:root{
  --klira-dark:#204d50;
  --klira-dark-2:#173b3e;
  --klira-mint:#b4f6ce;
  --klira-soft:#f4edea;
  --klira-white:#ffffff;
}

/* ---------- BASE: all Klira Home buttons ---------- */
body .klira-v2 a.klira-v2-btn,
body .klira-v2 a.klira-v2-btn:link,
body .klira-v2 a.klira-v2-btn:visited,
body .klira-v2 button.klira-v2-btn,
body .klira-v2 .klira-v2-btn,
body .klira-v2 .klira-v2-btn > span,
body .klira-v2 .klira-v2-btn .klira-v2-btn-label{
  text-decoration:none !important;
  text-shadow:none !important;
  opacity:1 !important;
  visibility:visible !important;
}

body .klira-v2 a.klira-v2-btn,
body .klira-v2 button.klira-v2-btn,
body .klira-v2 .klira-v2-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:214px !important;
  min-height:54px !important;
  padding:15px 26px !important;
  border-radius:999px !important;
  border:1px solid transparent !important;
  font-size:16px !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  letter-spacing:.01em !important;
  cursor:pointer !important;
  transition:background-color .18s ease, color .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease !important;
}

/* ============================================================
   LIGHT BACKGROUND BLOCKS
   Hero, standard sections, cards, white/cream areas.
   ============================================================ */
body .klira-v2 .klira-v2-hero:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn,
body .klira-v2 .klira-v2-hero:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:link,
body .klira-v2 .klira-v2-hero:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:visited,
body .klira-v2 .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn,
body .klira-v2 .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:link,
body .klira-v2 .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:visited,
body .klira-v2 .klira-v2-card a.klira-v2-btn,
body .klira-v2 .klira-v2-card a.klira-v2-btn:link,
body .klira-v2 .klira-v2-card a.klira-v2-btn:visited,
body .klira-v2 a.klira-v2-btn.klira-light-btn,
body .klira-v2 a.klira-v2-btn.klira-light-btn:visited{
  background:var(--klira-dark) !important;
  background-color:var(--klira-dark) !important;
  border-color:var(--klira-dark) !important;
  color:var(--klira-white) !important;
  -webkit-text-fill-color:var(--klira-white) !important;
  box-shadow:0 16px 34px rgba(32,77,80,.18) !important;
}

body .klira-v2 .klira-v2-hero:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn > span,
body .klira-v2 .klira-v2-hero:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn .klira-v2-btn-label,
body .klira-v2 .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn > span,
body .klira-v2 .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn .klira-v2-btn-label,
body .klira-v2 .klira-v2-card a.klira-v2-btn > span,
body .klira-v2 .klira-v2-card a.klira-v2-btn .klira-v2-btn-label,
body .klira-v2 a.klira-v2-btn.klira-light-btn > span,
body .klira-v2 a.klira-v2-btn.klira-light-btn .klira-v2-btn-label{
  color:var(--klira-white) !important;
  -webkit-text-fill-color:var(--klira-white) !important;
}

body .klira-v2 .klira-v2-hero:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:hover,
body .klira-v2 .klira-v2-hero:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:focus,
body .klira-v2 .klira-v2-hero:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:focus-visible,
body .klira-v2 .klira-v2-hero:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:active,
body .klira-v2 .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:hover,
body .klira-v2 .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:focus,
body .klira-v2 .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:focus-visible,
body .klira-v2 .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:active,
body .klira-v2 .klira-v2-card a.klira-v2-btn:hover,
body .klira-v2 .klira-v2-card a.klira-v2-btn:focus,
body .klira-v2 .klira-v2-card a.klira-v2-btn:focus-visible,
body .klira-v2 .klira-v2-card a.klira-v2-btn:active,
body .klira-v2 a.klira-v2-btn.klira-light-btn:hover,
body .klira-v2 a.klira-v2-btn.klira-light-btn:focus,
body .klira-v2 a.klira-v2-btn.klira-light-btn:active{
  background:var(--klira-mint) !important;
  background-color:var(--klira-mint) !important;
  border-color:var(--klira-mint) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  transform:translateY(-4px) !important;
  box-shadow:0 24px 58px rgba(32,77,80,.22) !important;
}

body .klira-v2 .klira-v2-hero:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:hover > span,
body .klira-v2 .klira-v2-hero:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:focus > span,
body .klira-v2 .klira-v2-hero:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:active > span,
body .klira-v2 .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:hover > span,
body .klira-v2 .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:focus > span,
body .klira-v2 .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:active > span,
body .klira-v2 .klira-v2-card a.klira-v2-btn:hover > span,
body .klira-v2 .klira-v2-card a.klira-v2-btn:focus > span,
body .klira-v2 .klira-v2-card a.klira-v2-btn:active > span,
body .klira-v2 a.klira-v2-btn.klira-light-btn:hover > span,
body .klira-v2 a.klira-v2-btn.klira-light-btn:focus > span,
body .klira-v2 a.klira-v2-btn.klira-light-btn:active > span,
body .klira-v2 .klira-v2-hero:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:hover .klira-v2-btn-label,
body .klira-v2 .klira-v2-section:not(.klira-v2-dark):not(.klira-v2-final) a.klira-v2-btn:hover .klira-v2-btn-label,
body .klira-v2 .klira-v2-card a.klira-v2-btn:hover .klira-v2-btn-label,
body .klira-v2 a.klira-v2-btn.klira-light-btn:hover .klira-v2-btn-label{
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
}

/* ============================================================
   DARK BACKGROUND BLOCKS (#204d50)
   Important: placed AFTER light rules so dark context wins.
   ============================================================ */
body .klira-v2 .klira-v2-dark a.klira-v2-btn,
body .klira-v2 .klira-v2-dark a.klira-v2-btn:link,
body .klira-v2 .klira-v2-dark a.klira-v2-btn:visited,
body .klira-v2 .klira-v2-final a.klira-v2-btn,
body .klira-v2 .klira-v2-final a.klira-v2-btn:link,
body .klira-v2 .klira-v2-final a.klira-v2-btn:visited,
body .klira-v2 [style*="#204d50"] a.klira-v2-btn,
body .klira-v2 [style*="rgb(32, 77, 80)"] a.klira-v2-btn{
  background:var(--klira-mint) !important;
  background-color:var(--klira-mint) !important;
  border-color:var(--klira-mint) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.16) !important;
}

body .klira-v2 .klira-v2-dark a.klira-v2-btn > span,
body .klira-v2 .klira-v2-dark a.klira-v2-btn .klira-v2-btn-label,
body .klira-v2 .klira-v2-final a.klira-v2-btn > span,
body .klira-v2 .klira-v2-final a.klira-v2-btn .klira-v2-btn-label,
body .klira-v2 [style*="#204d50"] a.klira-v2-btn > span,
body .klira-v2 [style*="rgb(32, 77, 80)"] a.klira-v2-btn > span{
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
}

body .klira-v2 .klira-v2-dark a.klira-v2-btn:hover,
body .klira-v2 .klira-v2-dark a.klira-v2-btn:focus,
body .klira-v2 .klira-v2-dark a.klira-v2-btn:focus-visible,
body .klira-v2 .klira-v2-dark a.klira-v2-btn:active,
body .klira-v2 .klira-v2-final a.klira-v2-btn:hover,
body .klira-v2 .klira-v2-final a.klira-v2-btn:focus,
body .klira-v2 .klira-v2-final a.klira-v2-btn:focus-visible,
body .klira-v2 .klira-v2-final a.klira-v2-btn:active,
body .klira-v2 [style*="#204d50"] a.klira-v2-btn:hover,
body .klira-v2 [style*="rgb(32, 77, 80)"] a.klira-v2-btn:hover{
  background:var(--klira-soft) !important;
  background-color:var(--klira-soft) !important;
  border-color:var(--klira-soft) !important;
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
  transform:translateY(-4px) !important;
  box-shadow:0 24px 58px rgba(0,0,0,.22) !important;
}

body .klira-v2 .klira-v2-dark a.klira-v2-btn:hover > span,
body .klira-v2 .klira-v2-dark a.klira-v2-btn:focus > span,
body .klira-v2 .klira-v2-dark a.klira-v2-btn:active > span,
body .klira-v2 .klira-v2-final a.klira-v2-btn:hover > span,
body .klira-v2 .klira-v2-final a.klira-v2-btn:focus > span,
body .klira-v2 .klira-v2-final a.klira-v2-btn:active > span,
body .klira-v2 .klira-v2-dark a.klira-v2-btn:hover .klira-v2-btn-label,
body .klira-v2 .klira-v2-final a.klira-v2-btn:hover .klira-v2-btn-label,
body .klira-v2 [style*="#204d50"] a.klira-v2-btn:hover > span,
body .klira-v2 [style*="rgb(32, 77, 80)"] a.klira-v2-btn:hover > span{
  color:var(--klira-dark) !important;
  -webkit-text-fill-color:var(--klira-dark) !important;
}

/* ---------- Mobile safety ---------- */
@media (max-width:640px){
  body .klira-v2 a.klira-v2-btn,
  body .klira-v2 button.klira-v2-btn,
  body .klira-v2 .klira-v2-btn{
    width:100% !important;
    max-width:360px !important;
    min-width:0 !important;
  }
}
