@font-face { font-family:'Lato'; src:url('../webfonts/Lato-Light.woff2') format('woff2'), url('../webfonts/Lato-Light.woff') format('woff'); font-weight:300; font-style:normal; font-display:swap; }
@font-face { font-family:'Lato'; src:url('../webfonts/Lato-LightItalic.woff2') format('woff2'), url('../webfonts/Lato-LightItalic.woff') format('woff'); font-weight:300; font-style:italic; font-display:swap; }
@font-face { font-family:'Lato'; src:url('../webfonts/Lato-Regular.woff2') format('woff2'), url('../webfonts/Lato-Regular.woff') format('woff'); font-weight:normal; font-style:normal; font-display:swap; }
@font-face { font-family:'Lato'; src:url('../webfonts/Lato-Italic.woff2') format('woff2'), url('../webfonts/Lato-Italic.woff') format('woff'); font-weight:normal; font-style:italic; font-display:swap; }
@font-face { font-family:'Lato'; src:url('../webfonts/Lato-Bold.woff2') format('woff2'), url('../webfonts/Lato-Bold.woff') format('woff'); font-weight:bold; font-style:normal; font-display:swap; }
@font-face { font-family:'Lato'; src:url('../webfonts/Lato-BoldItalic.woff2') format('woff2'), url('../webfonts/Lato-BoldItalic.woff') format('woff'); font-weight:bold; font-style:italic; font-display:swap; }
@font-face { font-family:'Lato'; src:url('../webfonts/Lato-ExtraBold.woff2') format('woff2'), url('../webfonts/Lato-ExtraBold.woff') format('woff'); font-weight:800; font-style:normal; font-display:swap; }
@font-face { font-family:'Lato'; src:url('../webfonts/Lato-ExtraBoldItalic.woff2') format('woff2'), url('../webfonts/Lato-ExtraBoldItalic.woff') format('woff'); font-weight:800; font-style:italic; font-display:swap; }
@font-face { font-family:'Lato'; src:url('../webfonts/Lato-Black.woff2') format('woff2'), url('../webfonts/Lato-Black.woff') format('woff'); font-weight:900; font-style:normal; font-display:swap; }
@font-face { font-family:'Lato'; src:url('../webfonts/Lato-BlackItalic.woff2') format('woff2'), url('../webfonts/Lato-BlackItalic.woff') format('woff'); font-weight:900; font-style:italic; font-display:swap; }


@font-face { font-family:'Amelia-Rounded'; src:url('../webfonts/Amelia-Rounded-Regular.woff2') format('woff2'), url('../webfonts/Amelia-Rounded-Regular.woff') format('woff'); font-weight:normal; font-style:normal; font-display:swap; }
@font-face { font-family:'Amelia-Rounded'; src:url('../webfonts/Amelia-Rounded-Bold.woff2') format('woff2'), url('../webfonts/Amelia-Rounded-Bold.woff') format('woff'); font-weight:bold; font-style:normal; font-display:swap; }
@font-face { font-family:'Amelia-Rounded'; src:url('../webfonts/Amelia-Rounded-Black.woff2') format('woff2'), url('../webfonts/Amelia-Rounded-Black.woff') format('woff'); font-weight:900; font-style:normal; font-display:swap; }


:root {
  --bim-white: #FFFFFF;
  --bim-purple: #6751A0;
  --bim-teal: #3BBFAD;
  --bim-pink: #E91E63;
  --bim-light-teal: #02C1AF29;
  --bim-light-teal-2: #B1ECE6;
  --bim-bg-gray: #F8F9FA;
  --bim-text-dark: #2B2B2B;
  --bim-text-muted: #666666;
  --bim-font-main: 'Lato', sans-serif;
  --bim-font-display: 'Amelia-Rounded', sans-serif;
  --bim-fa-brands: "Font Awesome 7 Brands";
  --bim-fa-solid: "Font Awesome 7 Free";
  --bim-fw-900: 900;
}
html { scroll-behavior:smooth; }
body { font-family:var(--bim-font-main); color:var(--bim-text-dark); padding-top:82px; overflow-x:hidden; }

.ff-lato { font-family:var(--bim-font-main); }
.ff-amelia { font-family:var(--bim-font-display); }
.lead { font-weight:normal; }

/* Utilidades de color */
.text-bim-purple { color:var(--bim-purple) !important; }
.text-bim-teal   { color:var(--bim-teal) !important; }
.bg-bim-light    { background-color:var(--bim-light-teal) !important; }

/* Botón Base */
.btn-bim { border-radius:50px; padding:10px 25px; font-weight:600; transition:all 0.3s ease; }
.btn-bim-primary { background-color:var(--bim-pink); color:white; border:none; }
.btn-bim-primary:hover { background-color:#d81b60; color:white; }

img { max-width:100%; height:auto; }

section { scroll-margin-top:82px; }
section [class^="container"] { padding-top:5rem; padding-bottom:5rem; }
.row-header { margin-bottom:1rem; }
.row-header h2 { font-size:2.5em; font-weight:bolder; font-family:var(--bim-font-display); margin-bottom:1rem; }
.row-header p { max-width:600px; font-size:1.2em; }

/* Ajustes Navbar */
.navbar-brand img { width:auto; height:40px; }
.nav-link { color:var(--bin-dark); }
.nav-link:hover { color:var(--bim-teal); }

/* Hero */
.bim-hero { position:relative; }
.bim-hero .bim-hero__img { position:absolute; left:0; top:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.bim-hero .bim-hero__overlay { position:absolute; left:0; bottom:0; width:100%; height:50%; background:linear-gradient(to top, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%); z-index:1; }
.bim-hero [class^="container"] { position:relative; padding-top:8rem; padding-bottom:6rem; z-index:2; }
.bim-hero .bim-hero__text { padding:2.5rem; background:#FFF; border-radius:30px; }
.bim-hero h1 { font-size:3em; font-family:var(--bim-font-display); line-height:1.1; }
.bim-hero p { font-size:1.4em; }

/* Trust Bar */
.bim-trust-bar { font-weight:300; font-size:1.5rem; background-color:var(--bim-teal); }
.bim-trust-bar strong { font-weight:800; }
.bim-trust-bar .sep::before { content:'\f111'; font-family: var(--bim-fa-solid); font-weight:var(--bim-fw-900); font-size:0.8rem; color:var(--bim-white); }

/* Servicios */
.bim-service-icon { width:100px; height:100px; border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto; transition:transform 0.3s ease; }
.bim-service-card:hover .bim-service-icon { transform:translateY(-5px); }
.bim-service-icon img { width:50px; height:auto; }
.bim-service-card h6 { font-size:0.9rem; line-height:1.2; }

.bim-card { padding:1rem; }
.bim-card figure { width:110px; height:auto; margin:0 auto 1rem; }
.bim-card figure img { width:100%; }
/* Beneficios */

/* Agente Bim */
.bim-agente_cards { padding:1rem 2rem; border-radius:200px; background:var(--bim-light-teal); }
.bim-locator-banner { border-radius:200px; padding:0 3rem; }
.bim-qr-box img { display:block; }

/* Business Section */
.bim-business .btn-bim-primary { font-size:1.25rem; padding:12px 40px; }

/* FAQ Accordion */
.bim-faq { background:#EAEAEAAB; }
.bim-accordion .accordion-button { padding:1.5rem; }
.bim-accordion .accordion-button:not(.collapsed) { background-color:transparent; color:var(--bim-text-dark); box-shadow:none; }

.bim-accordion .accordion-button::after { background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%233BBFAD' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5l6 6 6-6'/%3e%3c/svg%3e"); }
.bim-accordion .accordion-button:not(.collapsed)::after { transform: var(--bs-accordion-btn-icon-transform); }
.bim-accordion .accordion-body { padding:0 1.5rem 1rem; }

/* FINAL CTA */
.bim-final-cta { background:var(--bim-light-teal-2); }
.bim-final-cta .container { padding-top:7rem; padding-bottom:8rem; }
.bim-final-cta h2 { font-size:4em; line-height:1; }
.bim-final-cta img { transform:scale(1.15); transform-origin:center bottom; }

/* Footer */
footer { position:relative; background:var(--bim-teal); margin-top:-30px; border-top-left-radius:30px; border-top-right-radius:30px; z-index:2; }
.footer-logo { width:auto; height:40px; }
.apps-logos img { width:auto; height:50px; }
.bim-footer a:hover { opacity:0.8; }
.bim-footer__contacto a { color:#FFF; text-decoration:none; }
.redes { display:inline-flex; align-items:center; gap:1rem; }
.redes a { display:flex; width:24px; height:24px; align-items:center; justify-content:center; font-size:20px; color:#FFF; text-decoration:none; }

/* Responsive */
@media (max-width:991.98px) { 
  .navbar-toggler:focus { border:0; outline:none !important; box-shadow:none; }
  .navbar-collapse { padding-top:2rem; padding-bottom:2rem; }
  .navbar-nav { gap:10px; }
  .navbar-nav .nav-item { width:100%; text-align:center; }
  .navbar-nav .nav-item a { display:block; }
  .display-4 { font-size:2.5rem; }
  .bim-final-cta h2 { font-size:2rem; }
}
@media (max-width:767.98px) { 
  .bim-hero [class^="container"] { padding-top:18rem; padding-bottom:0; }
  .bim-hero .bim-hero__img { object-position:90% top; }
  .bim-hero .bim-hero__text { background:rgba(255,255,255,1); padding:2rem; border-bottom-left-radius:0; border-bottom-right-radius:0; }
  .bim-hero h1 { font-size:2em; }
  .bim-hero p { font-size:1.1em; }
  .bim-agente_cards { border-radius:30px; padding:2rem; }
  .bim-card { padding:0; }
  .bim-card figure { margin-bottom:0; }
  .bim-locator-banner { border-radius:30px; padding:3rem 2rem 1rem 2rem; }
  .bim-final-cta { background:transparent; }
  .bim-final-cta [class^="container"] { padding-top:4rem; padding-bottom:30px; }
  .bim-final-cta .bim-locator-banner { background:transparent !important; padding:0; }
  .bim-final-cta img { transform:none; }
}
@media (max-width:575.98px) { 
  .fs-5 { font-size:1.1em !important; }
  section [class^="container"] { padding-top:3rem; padding-bottom:3rem; }
  .row-header h2 { font-size:2em; }
  .bim-trust-bar { text-align:center; font-size:1.1em; line-height:1.2; }
  .bim-trust-bar strong { white-space:nowrap; }
  .bim-accordion .accordion-button.fs-5 { font-size:1.1rem !important; }
  footer { text-align:center; }
  .apps-logos { justify-content:center; }
  .apps-logos img { height:42px; }
}


#politica-privacidad h2, #politica-privacidad h3 { margin:1.5rem 0; font-weight:700; }
#politica-privacidad h2 { color:var(--bim-purple); }
