/* Power BI landing refresh: restrained, white-first visual system. */
html { scroll-padding-top: 96px; }
body { background: #fff; }
.pbi-hero, .pbi-quote-section, .pbi-hero * { box-sizing: border-box; }
.pbi-hero { position: relative; overflow: hidden; background: #fff; padding: 154px 0 110px; }
.pbi-hero::before { content: ""; position: absolute; width: 760px; height: 760px; right: -370px; top: -370px; border-radius: 50%; background: radial-gradient(circle,#f2f7ff 0%,rgba(242,247,255,0) 70%); pointer-events: none; }
.pbi-hero-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.05fr); gap: clamp(36px,5vw,88px); align-items: center; }
.pbi-hero-copy { position: relative; z-index: 2; }
.pbi-eyebrow { display: flex; align-items: center; gap: 11px; margin: 0 0 26px; color: #2864c8; font-size: .76rem; font-weight: 800; letter-spacing: .16em; }
.pbi-eyebrow-mark { width: 9px; height: 9px; border-radius: 50%; background: #f4bd35; box-shadow: 0 0 0 5px #fff5d8; }
.pbi-hero h1 { max-width: 700px; margin: 0; color: #14223a; font-size: clamp(3.25rem,5.25vw,5.35rem); font-weight: 800; line-height: 1.04; letter-spacing: -.065em; }
.pbi-hero h1 span { color: #2864c8; }
.pbi-hero-lead { max-width: 520px; margin: 29px 0 0; color: #637186; font-size: clamp(1.02rem,1.3vw,1.16rem); line-height: 1.75; }
.pbi-hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 26px; margin-top: 35px; }
.pbi-primary-link { display: inline-flex; align-items: center; justify-content: center; gap: 24px; min-height: 55px; padding: 0 22px; border-radius: 11px; background: #2864c8; color: #fff; font-size: .91rem; font-weight: 750; box-shadow: 0 12px 26px rgba(40,100,200,.18); transition: background .2s,transform .2s,box-shadow .2s; }
.pbi-primary-link:hover { background: #174eae; color: #fff; transform: translateY(-2px); box-shadow: 0 16px 30px rgba(40,100,200,.25); }
.pbi-primary-link span { font-size: 1.25rem; font-weight: 400; }
.pbi-secondary-link { display: inline-flex; align-items: center; gap: 10px; color: #24364e; font-size: .9rem; font-weight: 700; transition: color .2s; }
.pbi-secondary-link:hover { color: #2864c8; }
.pbi-hero-footnote { display: flex; align-items: center; gap: 15px; margin-top: 66px; color: #8b97a8; font-size: .76rem; font-weight: 650; letter-spacing: .035em; }
.pbi-footnote-line { width: 31px; height: 1px; background: #bbc8d8; }
.pbi-hero-visual { position: relative; min-height: 535px; display: grid; align-items: center; isolation: isolate; }
.pbi-visual-orbit { position: absolute; border: 1px solid #edf2f9; border-radius: 50%; pointer-events: none; z-index: -1; }
.pbi-orbit-one { width: 600px; height: 600px; left: -30px; top: -32px; }
.pbi-orbit-two { width: 770px; height: 770px; left: -115px; top: -115px; }
.pbi-dashboard { width: 100%; max-width: 570px; margin: auto; overflow: hidden; border: 1px solid #e6ecf4; border-radius: 19px; background: #fff; box-shadow: 0 30px 85px rgba(34,57,94,.12),0 4px 18px rgba(34,57,94,.04); transform: rotate(-2deg); }
.pbi-dashboard-top { display: flex; align-items: center; gap: 12px; min-height: 54px; padding: 0 21px; border-bottom: 1px solid #edf1f6; color: #27374f; font-size: .77rem; font-weight: 750; }
.pbi-dashboard-icon { display: flex; align-items: end; gap: 2px; width: 26px; height: 26px; padding: 6px 5px; border-radius: 7px; background: #f4bd35; }
.pbi-dashboard-icon i { width: 4px; height: 7px; border-radius: 1px; background: #fff; }
.pbi-dashboard-icon i:nth-child(2) { height: 12px; }.pbi-dashboard-icon i:nth-child(3) { height: 15px; }
.pbi-dashboard-period { margin-left: auto; padding: 7px 11px; border: 1px solid #e9eef5; border-radius: 7px; color: #748196; font-size: .67rem; font-weight: 600; white-space: nowrap; }.pbi-dashboard-period b { margin-left: 8px; }
.pbi-dashboard-body { padding: 29px 28px 27px; }
.pbi-dashboard-heading { display: flex; align-items: end; justify-content: space-between; gap: 10px; }.pbi-dashboard-heading div { display: grid; gap: 7px; }.pbi-dashboard-heading small { color: #8b98aa; font-size: .57rem; font-weight: 800; letter-spacing: .14em; }.pbi-dashboard-heading strong { color: #1b2a43; font-size: 1.12rem; letter-spacing: -.025em; }
.pbi-live-dot { color: #278563; font-size: .64rem; font-weight: 700; white-space: nowrap; }.pbi-live-dot::before { content: ""; display: inline-block; width: 6px; height: 6px; margin-right: 6px; border-radius: 50%; background: #39bd88; vertical-align: 1px; }
.pbi-dashboard-metrics { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; margin: 24px 0 16px; }.pbi-dashboard-metrics div { display: grid; gap: 7px; padding: 18px; border: 1px solid #e9eef5; border-radius: 11px; }.pbi-dashboard-metrics small { color: #7d8ba0; font-size: .69rem; }.pbi-dashboard-metrics strong { color: #1c2b44; font-size: 1.55rem; letter-spacing: -.05em; }.pbi-dashboard-metrics span { color: #25996b; font-size: .62rem; font-weight: 750; }
.pbi-dashboard-chart { padding: 17px 18px 13px; border: 1px solid #e9eef5; border-radius: 11px; }.pbi-chart-label { display: flex; justify-content: space-between; align-items: center; }.pbi-chart-label strong { color: #1d2c44; font-size: .77rem; }.pbi-chart-label small { color: #91a0b1; font-size: .64rem; }
.pbi-bars { display: flex; align-items: end; justify-content: space-around; gap: 12px; height: 123px; margin-top: 22px; border-bottom: 1px solid #e7ecf2; background: repeating-linear-gradient(to top,#edf1f6 0 1px,transparent 1px 41px); }.pbi-bars i { display: block; width: 8%; height: var(--bar); border-radius: 5px 5px 0 0; background: linear-gradient(#5a91e6,#2b69ca); }.pbi-bars i:last-child { background: linear-gradient(#f5d16b,#f1b537); }
.pbi-chart-months { display: flex; justify-content: space-around; margin-top: 9px; color: #9daabd; font-size: .59rem; }
.pbi-float-card { position: absolute; right: -14px; bottom: 40px; display: flex; align-items: center; gap: 11px; padding: 14px 19px; border: 1px solid #e9eef6; border-radius: 12px; background: #fff; box-shadow: 0 17px 45px rgba(34,57,94,.13); transform: rotate(3deg); }.pbi-float-card > span { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 9px; background: #fff4d5; color: #d39b19; font-size: 1.3rem; }.pbi-float-card div { display: grid; gap: 3px; }.pbi-float-card strong { color: #27374d; font-size: .73rem; }.pbi-float-card small { color: #9ba7b7; font-size: .6rem; }
.pbi-visual-note { position: absolute; right: 18px; bottom: 1px; color: #9aa6b5; font-size: .67rem; }
body:has(.pbi-hero) .whatsapp-cloud-bubble { display: none; }
/* Dashboard preview */
.pbi-hero-visual { min-height: 580px; }
.pbi-dashboard { max-width: 590px; border-radius: 20px; transform: rotate(-1deg); box-shadow: 0 35px 85px rgba(27,54,91,.13),0 3px 12px rgba(27,54,91,.04); }
.pbi-dashboard-top { min-height: 62px; padding: 0 25px; }
.pbi-dashboard-icon { width: 30px; height: 30px; }
.pbi-dashboard-brand { display: grid; gap: 2px; color: #1d2b43; font-size: .78rem; line-height: 1.15; }
.pbi-dashboard-brand small { color: #9ba8b8; font-size: .59rem; font-weight: 550; }
.pbi-dashboard-period { border-radius: 8px; background: #f8fafc; }
.pbi-dashboard-body { padding: 29px 29px 24px; }
.pbi-dashboard-heading strong { font-size: 1.22rem; }
.pbi-dashboard-metrics { gap: 12px; margin: 23px 0 14px; }
.pbi-dashboard-metrics .pbi-metric-card { position: relative; overflow: hidden; min-height: 119px; padding: 17px 18px; border: 1px solid #e9eef5; border-radius: 12px; background: #fff; }
.pbi-metric-card strong { position: relative; z-index: 1; font-size: 1.46rem; }
.pbi-dashboard-metrics .pbi-metric-card span { position: relative; z-index: 1; color: #8b98a8; font-size: .61rem; font-weight: 550; }
.pbi-metric-card span b { display: inline-block; margin-right: 4px; padding: 3px 5px; border-radius: 4px; background: #e7f8ef; color: #228457; font-weight: 800; }
.pbi-metric-card svg { position: absolute; right: -4px; bottom: 9px; width: 100px; height: 38px; fill: none; stroke: #83afea; stroke-width: 2.2; opacity: .48; }
.pbi-dashboard-chart { padding: 18px 18px 15px; border-radius: 12px; }
.pbi-chart-label div { display: grid; gap: 3px; }
.pbi-chart-label strong { font-size: .81rem; }
.pbi-chart-label small { font-size: .61rem; }
.pbi-chart-label > span { display: inline-flex; align-items: center; gap: 6px; color: #7a8ba2; font-size: .61rem; font-weight: 650; }
.pbi-chart-label > span i { width: 7px; height: 7px; border-radius: 50%; background: #2d6ed1; }
.pbi-chart-graphic { position: relative; height: 158px; margin-top: 12px; }
.pbi-chart-graphic svg { display: block; width: 100%; height: 100%; overflow: visible; }
.pbi-chart-graphic .pbi-grid-line { fill: none; stroke: #e8eef5; stroke-width: 1; stroke-dasharray: 4 6; }
.pbi-chart-graphic .pbi-chart-area { fill: url(#pbiAreaFill); }
.pbi-chart-graphic .pbi-chart-line { fill: none; stroke: #2d6ed1; stroke-width: 3.5; stroke-linecap: round; }
.pbi-chart-tooltip { position: absolute; right: 8%; top: 2px; display: grid; gap: 1px; padding: 7px 10px; border: 1px solid #e8edf4; border-radius: 7px; background: #fff; box-shadow: 0 8px 20px rgba(26,55,95,.09); }
.pbi-chart-tooltip b { color: #1d2e48; font-size: .7rem; line-height: 1; }.pbi-chart-tooltip small { color: #9da9b7; font-size: .52rem; line-height: 1; }
.pbi-chart-months { margin-top: 4px; font-size: .6rem; }
.pbi-dashboard-sources { display: flex; align-items: center; gap: 8px; margin-top: 17px; color: #8492a5; font-size: .59rem; }
.pbi-dashboard-sources > span { margin-right: auto; white-space: nowrap; font-weight: 700; }
.pbi-dashboard-sources > span i { display: inline-block; width: 6px; height: 6px; margin-right: 5px; border-radius: 50%; background: #35b982; vertical-align: 1px; }
.pbi-dashboard-sources b { padding: 5px 8px; border: 1px solid #e8edf4; border-radius: 5px; color: #67778b; font-weight: 700; white-space: nowrap; }
@media (max-width: 640px) {
  .pbi-hero-visual { min-height: 445px; }
  .pbi-dashboard-top { min-height: 51px; padding: 0 14px; }
  .pbi-dashboard-body { padding: 19px 14px 17px; }
  .pbi-dashboard-heading strong { font-size: .99rem; }
  .pbi-dashboard-metrics .pbi-metric-card { min-height: 105px; padding: 11px; }
  .pbi-metric-card svg { width: 73px; opacity: .3; }
  .pbi-dashboard-metrics .pbi-metric-card span { font-size: .5rem; }
  .pbi-dashboard-chart { padding: 14px 12px 11px; }
  .pbi-chart-graphic { height: 112px; }
  .pbi-dashboard-sources { flex-wrap: wrap; gap: 5px; }
  .pbi-dashboard-sources > span { flex: 0 0 100%; }
}
.pbi-quote-section { padding: 82px 0 96px; background: #f8fafc; }.pbi-quote-section .hero-split-grid { display: block; max-width: 850px; margin: auto; }.pbi-quote-section .hero-form-col { width: 100%; }.pbi-quote-section .form-card-hero-glow { padding: clamp(24px,4vw,46px); border: 1px solid #e5ebf2; border-radius: 20px; box-shadow: 0 16px 54px rgba(28,54,90,.07); }.pbi-quote-section .form-card-title { font-size: clamp(1.55rem,2.4vw,2.1rem); letter-spacing: -.04em; }.pbi-quote-section .form-card-desc { margin-bottom: 27px; font-size: .97rem; }.pbi-quote-section .form-btn-submit-vibrant { background: #2864c8; box-shadow: none; }.pbi-quote-section .form-btn-submit-vibrant:hover { background: #174eae; box-shadow: 0 10px 24px rgba(40,100,200,.2); }
.pbi-clean-section { background: #fff !important; padding: 90px 0 !important; }.pbi-clean-section .section-badge,.portfolio-section-ads .section-badge { background: transparent; border: 0; padding: 0; color: #2864c8; font-size: .76rem; letter-spacing: .14em; }.pbi-clean-section .section-title,.portfolio-section-ads .section-title { color: #17263c; letter-spacing: -.045em; }.pbi-clean-section .section-subtitle,.portfolio-section-ads .section-subtitle { color: #6a788b; }
.pbi-clean-section .service-focus-card,.pbi-clean-section .value-interactive-card { border: 1px solid #e9eef4; border-radius: 16px; box-shadow: 0 5px 24px rgba(25,51,85,.035); }.pbi-clean-section .service-focus-card.card-featured-b2b { transform: none; border-color: #e9eef4; box-shadow: 0 5px 24px rgba(25,51,85,.035); }.pbi-clean-section .service-focus-card.card-featured-b2b:hover { transform: translateY(-5px); box-shadow: 0 18px 36px rgba(25,51,85,.1); }.pbi-clean-section .badge-mas-solicitado { background: #f4bd35; color: #25334a; box-shadow: none; }.pbi-clean-section .stats-kpi-bar { border-radius: 16px; }
.portfolio-section-ads { background: #f8fafc; border-top: 0; padding: 90px 0; }.portfolio-card-ads { border-color: #e8edf4; box-shadow: 0 4px 20px rgba(25,51,85,.04); }.p-filter-btn.active { background: #2864c8; border-color: #2864c8; box-shadow: none; }
.pbi-faq-section > .container > div:last-child > div { background: #fff !important; border-color: #e8edf4 !important; box-shadow: 0 4px 18px rgba(25,51,85,.035); }
.pbi-final-cta { padding: 82px 0 !important; background: #193969 !important; }
@media (max-width: 980px) { .pbi-hero { padding: 125px 0 70px; }.pbi-hero-grid { grid-template-columns: 1fr; gap: 35px; }.pbi-hero-copy { max-width: 700px; }.pbi-hero-visual { width: min(100%,650px); min-height: 470px; margin: auto; }.pbi-dashboard { max-width: 550px; }.pbi-hero-footnote { margin-top: 38px; } }
@media (max-width: 640px) { .pbi-hero { padding: 113px 0 54px; }.pbi-hero h1 { font-size: clamp(2.85rem,11vw,4rem); }.pbi-hero-lead { margin-top: 22px; font-size: 1rem; line-height: 1.65; }.pbi-hero-actions { gap: 19px; margin-top: 27px; }.pbi-primary-link { width: 100%; }.pbi-hero-footnote { margin-top: 32px; }.pbi-hero-visual { min-height: 350px; }.pbi-dashboard { transform: rotate(-1deg); }.pbi-dashboard-top { padding: 0 13px; }.pbi-dashboard-period { display: none; }.pbi-dashboard-body { padding: 18px 14px; }.pbi-dashboard-heading strong { font-size: .94rem; }.pbi-dashboard-metrics div { padding: 11px; }.pbi-dashboard-metrics strong { font-size: 1.12rem; }.pbi-dashboard-metrics span { font-size: .54rem; }.pbi-bars { height: 85px; }.pbi-float-card { right: 0; bottom: -3px; padding: 10px; }.pbi-quote-section { padding: 60px 0; }.pbi-clean-section,.portfolio-section-ads { padding: 65px 0 !important; } }
@media (prefers-reduced-motion: reduce) { .pbi-primary-link,.pbi-secondary-link { transition: none; } }
@media (max-width: 980px) { .pbi-hero-visual { min-height: 565px; } }
@media (max-width: 640px) {
  .pbi-hero-visual { min-height: 445px; }
  .pbi-dashboard-top { padding: 0 14px; }
  .pbi-dashboard-body { padding: 19px 14px 17px; }
  .pbi-dashboard-heading strong { font-size: .99rem; }
  .pbi-dashboard-metrics .pbi-metric-card { padding: 11px; }
  .pbi-chart-graphic { height: 112px; }
}

/* Ads hero: keep the lead form visible beside the message. */
.pbi-ads-hero { padding: 122px 0 78px; background: radial-gradient(circle at 100% 0%, #f5f9ff 0, #fff 42%); }
.pbi-ads-hero .pbi-hero-grid { grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr); gap: clamp(35px,4.8vw,70px); align-items: center; }
.pbi-ads-hero .pbi-hero-copy { max-width: 620px; }
.pbi-ads-hero h1 { max-width: 640px; font-size: clamp(2.8rem,4.2vw,4.3rem); line-height: 1.075; letter-spacing: -.055em; }
.pbi-ads-hero .pbi-hero-lead { max-width: 560px; margin-top: 23px; font-size: 1.06rem; line-height: 1.7; }
.pbi-hero-benefits { display: grid; gap: 17px; margin: 28px 0 0; padding: 0; list-style: none; }
.pbi-hero-benefits li { display: flex; align-items: flex-start; gap: 12px; }
.pbi-hero-benefits li > span { display: grid; place-items: center; flex: 0 0 23px; width: 23px; height: 23px; margin-top: 2px; border-radius: 50%; background: #e8f1ff; color: #2766c9; font-size: .78rem; font-weight: 900; }
.pbi-hero-benefits li div { display: grid; gap: 2px; }
.pbi-hero-benefits strong { color: #20324d; font-size: .92rem; line-height: 1.35; }
.pbi-hero-benefits small { color: #77869a; font-size: .86rem; line-height: 1.45; }
.pbi-ads-hero .pbi-hero-actions { margin-top: 30px; }
.pbi-ads-hero .pbi-hero-footnote { margin-top: 32px; }
.pbi-ads-hero .hero-form-col { width: 100%; min-width: 0; }
.pbi-ads-hero .form-card-hero-glow { padding: 29px 29px 27px; border: 1px solid #e1e9f5; border-radius: 20px; background: #fff; box-shadow: 0 22px 65px rgba(27,62,112,.11),0 2px 8px rgba(27,62,112,.03); }
.pbi-ads-hero .form-card-title { font-size: 1.45rem; letter-spacing: -.035em; }
.pbi-ads-hero .form-card-desc { margin-bottom: 21px; line-height: 1.5; }
.pbi-ads-hero .form-group-compact { margin-bottom: 11px; }
.pbi-ads-hero .form-group-compact input,.pbi-ads-hero .form-group-compact select,.pbi-ads-hero .form-group-compact textarea { border-color: #dbe3ed; }
.pbi-ads-hero .form-btn-submit-vibrant { background: linear-gradient(135deg,#13b987,#079b75); box-shadow: 0 10px 23px rgba(9,158,116,.2); }
.pbi-ads-hero .form-btn-submit-vibrant:hover { background: linear-gradient(135deg,#0aa77a,#078b69); box-shadow: 0 14px 27px rgba(9,158,116,.27); }
@media (max-width: 980px) {
  .pbi-ads-hero { padding: 115px 0 70px; }
  .pbi-ads-hero .pbi-hero-grid { grid-template-columns: 1fr; gap: 35px; max-width: 720px; }
  .pbi-ads-hero .pbi-hero-copy { max-width: 700px; }
}
@media (max-width: 640px) {
  .pbi-ads-hero { padding: 106px 0 54px; }
  .pbi-ads-hero h1 { font-size: clamp(2.5rem,10vw,3.4rem); }
  .pbi-ads-hero .pbi-hero-lead { margin-top: 18px; font-size: .96rem; }
  .pbi-hero-benefits { gap: 12px; margin-top: 20px; }
  .pbi-hero-benefits strong { font-size: .86rem; }
  .pbi-hero-benefits small { font-size: .79rem; }
  .pbi-ads-hero .pbi-hero-actions { margin-top: 23px; }
  .pbi-ads-hero .pbi-hero-footnote { display: none; }
  .pbi-ads-hero .form-card-hero-glow { padding: 23px 18px; }
}
