/*
Theme Name: FrontBusiness Kadence Child Premium
Theme URI: https://frontbusiness.com.ar
Description: Tema hijo premium para FrontBusiness sobre Kadence.
Author: FrontBusiness
Template: kadence
Version: 1.1.0
Text Domain: frontbusiness-kadence-child-premium
*/

:root{
  --fb-ink:#07151c;
  --fb-blue:#19394a;
  --fb-blue-2:#244f62;
  --fb-green:#69b82f;
  --fb-green-soft:#e8f5df;
  --fb-paper:#f6f8f7;
  --fb-line:#dfe7e3;
  --fb-muted:#5d6b70;
  --fb-white:#ffffff;
}

body{
  background:var(--fb-paper);
  color:var(--fb-ink);
}

.fb-site{
  font-family: Arial, Helvetica, sans-serif;
  background:var(--fb-paper);
  overflow:hidden;
}

.fb-site h1,
.fb-site h2,
.fb-site h3,
.fb-site strong{
  font-family: Montserrat, Arial, Helvetica, sans-serif;
  letter-spacing:-.04em;
}

.fb-header{
  position:sticky;
  top:0;
  z-index:99;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:18px clamp(22px,5vw,78px);
  background:rgba(246,248,247,.88);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(7,21,28,.08);
}

.fb-brand{
  display:flex;
  align-items:center;
  gap:14px;
  text-decoration:none;
  color:var(--fb-ink);
}

.fb-brand img{
  width:56px;
  height:56px;
  object-fit:contain;
}

.fb-brand strong{
  display:block;
  font-size:22px;
  line-height:1;
}

.fb-brand span{
  display:block;
  margin-top:5px;
  font-size:12px;
  color:var(--fb-muted);
  letter-spacing:.01em;
}

.fb-nav{
  display:flex;
  align-items:center;
  gap:24px;
  font-size:14px;
}

.fb-nav a{
  color:var(--fb-blue);
  text-decoration:none;
  font-weight:600;
}

.fb-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:14px 22px;
  border-radius:999px;
  background:var(--fb-blue);
  color:#fff!important;
  text-decoration:none;
  font-weight:800;
  box-shadow:0 18px 40px rgba(25,57,74,.18);
}

.fb-hero{
  position:relative;
  min-height:92vh;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:56px;
  align-items:center;
  padding:clamp(82px,9vw,140px) clamp(24px,6vw,96px);
  background:
    radial-gradient(circle at 82% 24%, rgba(105,184,47,.22), transparent 28%),
    radial-gradient(circle at 18% 82%, rgba(25,57,74,.12), transparent 30%),
    linear-gradient(135deg,#ffffff 0%,#f3f7f3 48%,#eaf4e8 100%);
}

.fb-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin:0 0 22px;
  color:#2e7d26;
  font-size:12px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.fb-kicker:before{
  content:"";
  width:34px;
  height:2px;
  background:var(--fb-green);
}

.fb-hero h1{
  max-width:960px;
  margin:0;
  font-size:clamp(48px,7vw,96px);
  line-height:.92;
  color:var(--fb-ink);
}

.fb-hero .lead{
  max-width:760px;
  margin:28px 0 0;
  font-size:clamp(18px,1.55vw,23px);
  line-height:1.65;
  color:var(--fb-muted);
}

.fb-actions{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  margin-top:38px;
}

.fb-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:16px 25px;
  border-radius:999px;
  text-decoration:none;
  font-weight:900;
}

.fb-btn.primary{
  background:var(--fb-blue);
  color:#fff;
}

.fb-btn.secondary{
  background:#fff;
  color:var(--fb-blue);
  border:1px solid var(--fb-line);
}

.fb-visual{
  position:relative;
  min-height:520px;
}

.fb-orb{
  position:absolute;
  inset:10% 7% auto auto;
  width:min(440px,86vw);
  aspect-ratio:1;
  border-radius:42%;
  background:linear-gradient(145deg,rgba(105,184,47,.26),rgba(25,57,74,.08));
  filter:blur(.2px);
}

.fb-visual-card{
  position:absolute;
  inset:8% 0 auto auto;
  width:min(470px,92vw);
  padding:34px;
  border-radius:34px;
  background:rgba(255,255,255,.75);
  border:1px solid rgba(255,255,255,.8);
  box-shadow:0 28px 90px rgba(7,21,28,.12);
  backdrop-filter:blur(18px);
}

.fb-visual-card img{
  width:124px;
  margin-bottom:26px;
}

.fb-status{
  display:grid;
  gap:12px;
}

.fb-status div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:15px 18px;
  border-radius:18px;
  background:#fff;
  border:1px solid var(--fb-line);
}

.fb-status span{
  font-weight:800;
}

.fb-section{
  padding:clamp(74px,8vw,126px) clamp(24px,6vw,96px);
}

.fb-section h2{
  max-width:980px;
  margin:0;
  font-size:clamp(38px,5vw,72px);
  line-height:1;
}

.fb-section .intro{
  max-width:820px;
  margin-top:22px;
  color:var(--fb-muted);
  font-size:19px;
  line-height:1.65;
}

.fb-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
  margin-top:44px;
}

.fb-card{
  min-height:250px;
  padding:30px;
  border-radius:30px;
  background:#fff;
  border:1px solid var(--fb-line);
  box-shadow:0 12px 40px rgba(7,21,28,.04);
}

.fb-card h3{
  margin:0 0 16px;
  font-size:25px;
}

.fb-card p{
  margin:0;
  color:var(--fb-muted);
  line-height:1.6;
}

.fb-dark{
  background:linear-gradient(145deg,#08151c,#17394a);
  color:#fff;
}

.fb-dark .fb-kicker{color:#a9e47b}
.fb-dark .fb-card{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.12);
  color:#fff;
}
.fb-dark .fb-card p,.fb-dark .intro{color:rgba(255,255,255,.74)}

.fb-diag{
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:48px;
  align-items:start;
}

.fb-diag-panel{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}

.fb-chip{
  padding:22px;
  border-radius:22px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  font-weight:900;
}

.fb-campus{
  display:grid;
  grid-template-columns:1fr .8fr;
  gap:40px;
  align-items:center;
  background:
    radial-gradient(circle at 92% 18%, rgba(105,184,47,.18), transparent 28%),
    #fff;
}

.fb-campus-box{
  padding:40px;
  border-radius:34px;
  border:1px solid var(--fb-line);
  background:var(--fb-paper);
}

.fb-progress{
  height:12px;
  margin-top:24px;
  background:#dde6e2;
  border-radius:999px;
  overflow:hidden;
}

.fb-progress i{
  display:block;
  height:100%;
  width:72%;
  background:linear-gradient(90deg,var(--fb-green),var(--fb-blue));
}

.fb-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:42px clamp(24px,6vw,96px);
  background:var(--fb-ink);
  color:#fff;
}

.fb-footer .fb-brand{color:#fff}
.fb-footer .fb-brand span{color:rgba(255,255,255,.65)}

@media(max-width:1050px){
  .fb-nav{display:none}
  .fb-hero,.fb-diag,.fb-campus{grid-template-columns:1fr}
  .fb-visual{min-height:430px}
  .fb-grid{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:680px){
  .fb-header{align-items:flex-start}
  .fb-cta{display:none}
  .fb-brand img{width:46px;height:46px}
  .fb-hero{padding-top:78px}
  .fb-hero h1{font-size:48px}
  .fb-grid,.fb-diag-panel{grid-template-columns:1fr}
  .fb-footer{flex-direction:column;align-items:flex-start}
}
