/*
Theme Name: Rosetta
Theme URI: https://levelcode.dev/rosetta
Author: Levelcode
Author URI: https://levelcode.dev
Description: Bootstrap 5.3 starter theme with Fancybox ready for image galleries.
Version: 1.0.0
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: rosetta
*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600;700&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Source+Sans+3:wght@400;600;700&display=swap');


/* =========================================
   01) VARIABLES (CSS Custom Properties)
========================================= */
:root{
  --rosetta-primary:#0d6efd;
  --rosetta-green:#2f3b2f;
  --rosetta-green-2:#39462b;
  --rosetta-ink:#233;
  --rosetta-body:#404b40;
  --rosetta-bg:#f6f7f7;
  --rosetta-orange:#ff7a00;
  --rosetta-orange-2:#f29318;
  --muted:#8a918a;
  --medidas-bg:#f5e7da;
  --medidas-sep:#b6a89d; 
  --ink:#2e2e2e;
}

/* =========================================
   02) BASE / RESETS / TIPOGRAFÍA
========================================= */
body{ margin:0; }
.entry-content img{ max-width:100%; height:auto; }
.wp-block-image img{ border-radius:.5rem; }

.subs_text a {
    color: #414042 !important;
    text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Poppins', sans-serif;
}

h2{ color:#3b4426; font-weight:800; }

p{
  font-size:1.2rem;
  line-height:1.2;
  color:#414042 !important;
  font-family: 'Source Sans 3', -apple-system, BlinkMacSystemFont, "Segoe UI",
                 Roboto, "Helvetica Neue", Arial, sans-serif;
}
p.txt-medio{
  font-size:1.8rem;
  line-height:1;
  color:#3b4426 !important;
}
p.txt-medio2{
  font-size:1.8rem;
  line-height:1;
  color:#3b4426 !important;
  margin-bottom:0;
}

/* =========================================
   03) LAYOUT / CONTENEDORES / UTILIDADES
========================================= */
.tabs-rosetta .container,
.brochure .container,
.zonas-comunes .container,
.edificio .container,
.feat-grid .container,
.construcciones .container{ max-width:1100px; }

.rounded-4{ border-radius:1rem !important; }
.navbar-brand{ font-weight:800; letter-spacing:.5px; }
.custom-logo-link img{ max-width:178px; height:auto; }
.brand img{ max-width:294px; }

/* =========================================
   04) HEADER & NAVEGACIÓN
========================================= */
.site-header{ border:0; } /* gana sobre el borde inferior previo */

.topbar-cta{
  background:#FF7A00;
  color:#fff;
  padding:.75rem 0;
}

.topbar-cta a{
  color:#fff;
  text-decoration: none;
}

.topbar-cta__text{ font-weight:700; letter-spacing:.2px; }

.rosetta-menu > li > a.nav-link{
  color:#666666;
  font-weight:800;
  padding:10px 20px !important;
}
.rosetta-menu > li + li{ position:relative; }
.rosetta-menu > li + li::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  height:47px;
  transform:translateY(-50%);
  border-left:2px solid #3b4426;
}
.rosetta-menu > li > a.nav-link:hover,
.rosetta-menu > li > a.nav-link:focus{
  color:#404040;
  text-decoration:none;
}

.rosetta-menu li:last-child {
  display:none;
}

@media (max-width: 992px){
  .rosetta-menu li:last-child {
    display:block;
  }
}

.btn-outline-contacto{
  background-color:transparent;
  border:2px solid #3b4426;
  color:#3b4426;
  border-radius:0;
  padding:1px;
}
.btn-outline-contacto:hover{
  background-color:#424C2F;
  color:#fff;
}

/* =========================================
   05) HERO
========================================= */
.tipologia-hero{ position:relative; }
.tipologia-hero .hero-link{ display:block; position:relative; }
.tipologia-hero .hero-zoom{
  position:absolute; right:1rem; bottom:1rem;
  background:rgba(0,0,0,.55); color:#fff;
  font-weight:700; font-size:.95rem;
  padding:.5rem .75rem; border-radius:.375rem;
  opacity:0; transform:translateY(4px); transition:all .2s ease;
}
.tipologia-hero .hero-link:hover .hero-zoom{ opacity:1; transform:none; }

/* =========================================
   06) BARRA DE MEDIDAS (superior)
========================================= */
.medidas-rosetta{ background:var(--medidas-bg); border-radius:0 !important; }
.btn-measure{
  background:transparent;
  border:0;
  border-right:1px solid var(--medidas-sep);
  color:#777;
  font-weight:800;
  padding:.3rem 1.25rem;
  border-radius:0;
}
.btn-measure:last-child{ border-right:0; }

/* =========================================
   07) FEATURES / ICONOS / CARDS MINI
========================================= */
/* contenedor características */
.features-rosetta{ align-items:start; }

/* componente feature */
.feature{
  display:flex;
  flex-direction:column;
  align-items:center;
  margin:0;
  gap:.65rem;
}

/* tile naranja */
.feature-tile{
  display:grid;
  place-items:center;
  width:96px; height:96px;
  background:var(--rosetta-orange);
  border-radius:0;
  box-shadow:0 2px 0 rgba(0,0,0,.04), 0 8px 20px rgba(0,0,0,.06);
}
.feature-tile img{
  width:89px; height:auto;
  object-fit:contain;
}

/* texto bajo icono */
.feature-caption{
  color:var(--feature-text);
  font-weight:700;
  font-size:1.15rem;
  line-height:1.1;
  text-align:center;
}
.feature:hover .feature-tile{ filter:brightness(1.03); }

/* carrusel mini (si aplica) */
.card-feat{ overflow:hidden; background:#fff; }

/* Ajuste solo para el carrusel mini con overlay */
.carousel-mini {
  position: relative;
  overflow: hidden;
}

/* El slide recorta imagen + overlay y hereda el borde */
.carousel-mini .carousel-mini-slide {
  border-radius: 6px;
  overflow: hidden;
}

/* La imagen ocupa todo el slide (mismo alto que el overlay) */
.carousel-mini .carousel-mini-slide img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

/* Overlay exactamente del mismo tamaño y con el mismo radio */
.carousel-mini .overlay-img {
  position: absolute;
  inset: 0;                /* top/right/bottom/left: 0 */
  height: auto;
  width: auto;
  border-radius: 6px;
  pointer-events: none;
  background: linear-gradient(
    180deg,
    rgba(254, 121, 18, 0.02) 36%,
    rgba(254, 121, 18, 0.5) 100%
  );
}

.carousel-mini {
  position: relative;
}

.carousel-mini .feature-icon {
  position: absolute;
  top: 0px;
  right: 12px;
  z-index: 5; /* por encima del overlay */
}

.carousel-mini .feature-icon img {
  display: block;
  width: 44px;   /* ajusta al tamaño que necesites */
  height: 44px;
  object-fit: contain;
}




.carousel-mini .dots{
  position:absolute; left:50%; bottom:10px;
  transform:translateX(-50%);
  display:flex; gap:.35rem;
}
.carousel-mini .dots span{
  width:8px; height:8px; border-radius:50%;
  background:#d9d9d9; display:block;
}
.carousel-mini .dots span.active{ background:#fff; }

/* =========================================
   08) IMÁGENES / RECORTES / BACKGROUNDS
========================================= */
.img-crop{
  width:100%;
  height:auto;
  object-fit:cover;
  object-position:center;
  display:block;
  border-radius:.5rem;
}

.bg-gris{
    background-color: #ecedea;
}

.bg-contacto{
  background-color:#3b4426;
  background:url(/wp-content/uploads/2025/11/fondos-09-scaled.jpg) no-repeat center/cover;   
}

.bg-green{
  background-color:#3b4426;
  background:url(/wp-content/uploads/2025/11/fondos-01-scaled.jpg) no-repeat center/cover;
}
.bg-side-r{
  background:url(/wp-content/uploads/2025/11/comp2.png) no-repeat center/contain;
  height:362px; display:flex; justify-content:end; align-items:center;
}
.bg-side-l{
  background:url(/wp-content/uploads/2025/11/fondos-03.jpg) no-repeat center/contain;
  height:362px;
}

.box-img-ver{ position:relative; }
.box-ver{ position:absolute; bottom:7px; right:7px; }

/* =========================================
   09) BOTONES / CTAs
========================================= */
/* Banner */
.cta-banner { background-color:#fff2e8; }

/* Proporción del banner completo en desktop (ajusta % si cambia el arte) */
@media (min-width: 992px){
  /* ej. 30.4% si tu arte es 476/1567; usa el valor que ya calculaste */
  .cta-banner__frame { --bs-aspect-ratio: 27.4%; }
  .cta-banner__inner { position:absolute; inset:0; width:100%; height:100%; }
}

/* En <992px: NO absoluto -> flujo normal y apilado */
@media (max-width: 991.98px){
  .cta-banner__frame { --bs-aspect-ratio: auto; }
  .cta-banner__inner {
    position: static;        /* desactiva el absolute */
    inset: auto;
    width: auto;
    height: auto;
  }
  .cta-banner .bg-side-l{
    min-height: 300px;       /* visibles y cómodas */
    height: auto;            /* no forzar 100% */
  }
.cta-button {
    margin-top: 170px;
}
.cta-banner .bg-side-r {
    min-height: 160px;
}
  
}

/* Columnas con fondo: quita alturas fijas y evita recorte */
.cta-banner .bg-side-r,
.cta-banner .bg-side-l{
  background-repeat: no-repeat;
  background-position: right bottom; /* ajusta si quieres right center */
  background-size: contain;           /* usa cover si prefieres sin franjas */
  height: 100%;
}

/* Botón: evita empujar en mobile; si necesitas margen alto, sólo en desktop */
.cta-button{
  display: inline-block;
  margin-top: 0;
}
@media (min-width: 992px){
  /* si el diseño pide separarlo en desktop, ajusta aquí */
  /* .cta-button{ margin-top: 40px; } */
}


/* Botón dentro del marco (quita el margin-top previo si lo tenías) */
.cta-button{ margin-top:0; display:inline-block; }

.cta-button,
.cta-button2{
  display:inline-block;
  background-color:#fe7912;
  color:#fff;
  text-decoration:none;
  padding:10px 26px;
  font-weight:800;
}
.cta-button{ margin-top:210px; display:block; }

.cta-button3{
  display:inline-block;
  background-color:#fe7912;
  color:#fff;
  text-decoration:none;
  padding:0 8px;
  font-weight:800;
}

.cta-button-verde{
  display:inline-block;
  background-color:var(--rosetta-green);
  color:#fff;
  text-decoration:none;
  padding:10px 26px;
  font-weight:800;
}

.box-buttons a{ display:block; text-align:center; }

/* =========================================
   10) SECCIÓN “ESPACIOS” (Cards)
========================================= */

.carousel-mini {
  position: relative;
  overflow: hidden;
  /* Ajusta esto a la altura aproximada de tus imágenes */
  min-height: 220px;
}

.carousel-mini-slide {
  position: absolute;
  inset: 0;                 /* top:0; right:0; bottom:0; left:0 */
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.5s ease-in-out, visibility 0.5s ease-in-out;
}

.carousel-mini-slide img {
  width: 100%;
  height: auto;
  display: block;
}

/* Slide visible */
.carousel-mini-slide.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}


.spaces .card-space{
  border:1px solid #eee;
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease;
  background:#fff;
  padding:10px 20px;
}
.spaces .card-space:hover{
  transform:translateY(-4px);
  box-shadow:0 12px 30px rgba(0,0,0,.08);
  background-color:#fff2e8;
}
.spaces .thumb{ aspect-ratio:16/9; object-fit:cover; width:100%; border-radius:4px; }
.spaces .btn-mini{
  background:var(--rosetta-orange);
  border:0; color:#fff; font-weight:800;
  padding:.4rem 1.3rem;
  border-radius:6px;
}

.section-divider{ display:flex; align-items:center; gap:16px; margin:10px 0; }
.section-divider .bar{ height:8px; background:#fe7912; width:42px; }
.section-divider .bar.alt{ background:var(--rosetta-orange); width:180px; }

/* Wrapper del mapa */
.map-wrapper {
  position: relative;
}

/* Contenedor de las dos imágenes flotantes */
.map-badges {
    /* position: absolute; */
    top: 16px;
    left: 16px;
    display: flex;
    flex-direction: row;
    gap: 8px;
    z-index: 5;
    padding: 20px;
}

/* Cada badge */
.map-badge img {
    display: block;
    max-width: 284px;
    width: 100%;
    height: auto;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .18);
}

/* --- Mobile (ajusta según tus breakpoints) --- */
@media (max-width: 767.98px) {
  .map-badges {
    top: 8px;
    left: 8px;
    gap: 6px;
  }

}




/* =========================================
   11) TEXTOS AUX / COLORES AUX
========================================= */
.page-template-nosotros .text-ink2 {
    min-height: 80px;
}


.text-ink{ color:var(--ink); } /* base */
.text-ink2{
  font-size:1.7rem; line-height:1.2;
  color:#3b4426; font-weight:800;
}
.text-ink3{
  font-size:1.4rem; line-height:1.2;
  color:#fff; font-weight:800;
}
.text-muted{
  font-size:.9rem; line-height:1.2; font-weight:500;
}
.verde{ color:#3b4426; }
.naranja{ color:#fe7912; }

/* =========================================
   12) FORMULARIOS / WPCF7 / INPUTS
========================================= */
.form-control{ height:30px; }
.form-control:focus{
  background-color:#3b4426 !important;
  box-shadow:none !important;
}
.wpcf7-form-control{
  color:#fff !important;
  border-radius:0;
  margin-bottom:11px;
}
.wpcf7-form-control::placeholder{ color:#fff; }
input[type=text],
input[type=tel],
input[type=email]{ background-color:#3b4426 !important; }
input.wpcf7-form-control.wpcf7-submit{
  background-color:#ff7a00;
  color:#fff; font-weight:800;
}
span.wpcf7-form-control.wpcf7-acceptance span{
  color:#fff; margin-bottom:20px; margin-left:0; font-size:1rem;
}

/* overrides por id de formulario */

#wpcf7-f37-o2 .wpcf7-list-item-label{
color:black;
}

#wpcf7-f143-o1 input[type=tel],
#wpcf7-f143-o1 input[type=email],
#wpcf7-f143-o1  input[type=text],


#wpcf7-f42-o4 input[type=tel],
#wpcf7-f42-o4 input[type=email],
#wpcf7-f42-o4  input[type=text],
#wpcf7-f42-o5 input[type=text],
#wpcf7-f42-o5 input[type=tel],
#wpcf7-f42-o5 input[type=email],
#wpcf7-f37-o4 input[type=text],
#wpcf7-f37-o4 input[type=tel],
#wpcf7-f37-o4 input[type=email]{
  background-color:transparent !important;
  border:1px solid #3b4426 !important;
}

#wpcf7-f143-o1 .wpcf7-form-control,
#wpcf7-f42-o4 .wpcf7-form-control,
#wpcf7-f42-o5 .wpcf7-form-control,
#wpcf7-f37-o4 .wpcf7-form-control{
  color:#3b4426 !important;
  border-radius:0;
  margin-bottom:11px;
}

#wpcf7-f143-o1 .wpcf7-form-control::placeholder,
#wpcf7-f42-o4 .wpcf7-form-control::placeholder,
#wpcf7-f42-o5 .wpcf7-form-control::placeholder,
#wpcf7-f37-o4 .wpcf7-form-control::placeholder{ color:#3b4426 !important; }

#wpcf7-f143-o1 span.wpcf7-form-control.wpcf7-acceptance span,
#wpcf7-f42-o4 span.wpcf7-form-control.wpcf7-acceptance span,
#wpcf7-f42-o5 span.wpcf7-form-control.wpcf7-acceptance span,
#wpcf7-f37-o4 span.wpcf7-form-control.wpcf7-acceptance span{ color:#3b4426 !important; }

#wpcf7-f143-o1 .wpcf7-form-control.wpcf7-submit,
#wpcf7-f42-o4 .wpcf7-form-control.wpcf7-submit,
#wpcf7-f42-o5 .wpcf7-form-control.wpcf7-submit,
#wpcf7-f37-o4 .wpcf7-form-control.wpcf7-submit{ color:#fff !important; }

/* formulario footer */
#wpcf7-f50-o5 span.wpcf7-form-control-wrap input,
#wpcf7-f50-o6 span.wpcf7-form-control-wrap input{
  max-width:41%;
  background-color:#fff !important;
  color:#000 !important;
}
#wpcf7-f50-o5 input[type=email],
#wpcf7-f50-o5 input[type=submit],
#wpcf7-f50-o6 input[type=submit],
#wpcf7-f50-o6 input[type=email]{
  min-height:50px;
  border:0;
  margin:0 10px 0 0;
}

#wpcf7-f50-o4 input[type=email], #wpcf7-f50-o4 input[type=text]{
    border-style: solid;
    border-color: #fff;
    width:100%;
}

#wpcf7-f50-o5  .wpcf7-form-control::placeholder,
#wpcf7-f50-o6 .wpcf7-form-control::placeholder{ color:#3b4426 !important; }

select.wpcf7-form-control.wpcf7-select {
    width: 100%;
    font-size: 1rem;
    padding: 3px 10px 3px 10px;
}

/* =========================================
   13) TABS
========================================= */
.tabs-rosetta .nav-link{
  display:block;
  background:var(--rosetta-green);
  color:#fff; font-weight:800; text-align:center;
  padding:1rem 1.25rem;
  border-radius:.125rem;
  border:none;
}
.tabs-rosetta .nav-link:hover,
.tabs-rosetta .nav-link:focus{ filter:brightness(1.05); }
.tabs-rosetta .nav-link.active{
  background:var(--rosetta-orange);
  color:#fff;
}
.tabs-rosetta .nav-link:focus{ box-shadow:none; }

/* =========================================
   14) SUBRAYADO TRICOLOR / LÍNEAS
========================================= */
.mini-bar{ width:48px; height:6px; background:var(--rosetta-orange); }

.h-underline{
  --bar-h:.3rem;
  --bar-radius:6px;
  position:relative; display:inline-block;
  padding-bottom:.9rem; line-height:1.15;
}
.h-underline::after{
  content:""; position:absolute; bottom:0; left:0;
  width:100%; height:var(--bar-h);
  background:linear-gradient(
    to right,
    #424C2F 0%, #424C2F 25%,
    #FF7A00 25%, #FF7A00 90%,
    #b85b39 90%, #b85b39 100%
  );
}
.h-underline.is-center{ text-align:center; }
.h-underline.is-left{ text-align:left; }
.h-underline.is-right{ text-align:right; }

.line-footer{ width:100%; position:relative; }
.line-footer::after{
  content:""; position:absolute; bottom:0; left:0;
  width:100%; height:5px;
  background:linear-gradient(
    to right,
    #424C2F 0%, #424C2F 25%,
    #FF7A00 25%, #FF7A00 90%,
    #b85b39 90%, #b85b39 100%
  );
}

.footer-contact .divider{
  height:2px; background:#e8efe51a; border-radius:2px;
  position:relative; max-width:222px;
}
.footer-contact .divider::after{
  content:""; position:absolute; bottom:0; left:0;
  width:100%; height:5px;
  background:linear-gradient(
    to right,
    #FFF 0%, #FFF 25%,
    #FF7A00 25%, #FF7A00 90%,fe
    #b85b39 90%, #b85b39 100%
  );
}

/* =========================================
   15) FOOTER
========================================= */
.footer-rosetta{
  color:#e8efe5;
  background-color:#3b4426;
  background-image:url('https://rosetta.levelcode.net/wp-content/uploads/2025/11/icono-07.png');
  background-repeat:no-repeat;
  background-position:left center;
  background-size:contain;
}
.footer-top{ padding:2rem 0; }
.footer-logo{ max-width:265px; display:block; }
.footer-logo img{ display:block; }

.footer p{ color:#fff; }

.footer-menu{
  --divider-color:rgba(255,255,255,.85);
  list-style:none; padding:0; margin:0;
  display:flex; flex-direction:column; gap:.35rem;
}
.footer-menu a.footer-link{
  display:block; padding:.35rem 0 .55rem;
  font-weight:800; text-decoration:none; color:#fff;
  line-height:1.15; transition:opacity .2s ease-in-out;
}
.footer-menu > li:not(:last-child) > a.footer-link{
  border-bottom:1px solid var(--divider-color);
  width:115px;
}
.footer-menu a.footer-link:hover,
.footer-menu a.footer-link:focus{ opacity:.85; }
.footer-menu .current-menu-item > a.footer-link,
.footer-menu .current_page_item > a.footer-link{
  opacity:1; border-bottom-color:#fff;
}

.footer-contact .tag{ font-weight:900; margin-bottom:.25rem; }
.footer-news .footer-input{ border-radius:12px; }
.footer-cta{ border-radius:12px; }

.footer-legal{ background:#414042; padding:.9rem 0; }
.footer-cta-bar{ background:#ff7a00; color:#fff; font-weight:900; padding:.7rem 0; }
.footer-cta-bar a{ color:#fff; font-weight:900;text-decoration: none;}


#menu-menu-copyright{
  display:flex; justify-content:space-evenly;
}

footer .links a{
  color:#fff; text-decoration:none; padding:0 3px;
}
footer .links li:not(:last-child) > a::after{
  content:" -"; position:relative; color:#fff; padding-left:2px;
}
.footer-legal .derechos::after{
  content:"-"; position:relative; color:#fff; padding-left:6px;
}

.icons{ max-width:108px; }
.redsiguenos{ font-size:.8rem; }
.redsociales{ font-weight:700; margin-top:-7px; }

/* =========================================
   16) SECCIONES VARIAS
========================================= */
.brochure{
  background:#eef0ed;
  border-top:1px solid #e4e6e2;
  border-bottom:1px solid #e4e6e2;
}
.construcciones{
  background:#fff2e8;
  border-top:1px solid #e4e6e2;
  border-bottom:1px solid #e4e6e2;	
}
.txt-construcciones{
  font-size:1.9rem; line-height:1;
  margin-bottom:30px; max-width:426px;
}

/* indicadores / controles de carrusel Bootstrap */
.carousel-indicators [data-bs-target]{
  width:15px; height:15px; border-radius:50%;
}
.carousel-control-prev,
.carousel-control-next{ display:none; }

.box-social-float {
    position: fixed;
    right: 0;
    top: 46%;
    width: 100px;
    z-index:99999;
}

.img-mobile.home-img-intro img {
    display: none;
    height: auto;
    width: 100%;
}



/* CSS (todo depende del id #banner-direccion) */

  #banner-direccion {
    display: flex;
    max-width: 384px;
    align-items: end;
  }

  #banner-direccion .bd-col {
    box-sizing: border-box;
  }

  #banner-direccion .bd-icon-col {
    background: #394228;        /* verde oscuro */
    width: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px 10px;
    height: 170px;
  }

  #banner-direccion .bd-icon-building {
    position: relative;
    width: 40px;
    height: 70px;
    border: 2px solid #ffffff;
    border-radius: 3px;
    box-sizing: border-box;
  }

  #banner-direccion .bd-door {
    position: absolute;
    bottom: 4px;
    left: 50%;
    transform: translateX(-50%);
    width: 12px;
    height: 16px;
    border: 2px solid #ffffff;
    border-radius: 2px;
    box-sizing: border-box;
  }

  #banner-direccion .bd-window-row {
    position: relative;
    display: flex;
    justify-content: space-between;
    padding: 10px 6px 0;
  }

  #banner-direccion .bd-window-row span {
    width: 7px;
    height: 7px;
    border: 2px solid #ffffff;
    box-sizing: border-box;
  }

  #banner-direccion .bd-text-col {
    padding: 0px 18px 0px 22px;
  }

  #banner-direccion .bd-line-1,
  #banner-direccion .bd-line-2 {
    margin: 0;
    line-height: 1;
    font-weight: bold;
    font-size: 1.4rem;
  }

  #banner-direccion .bd-line-1 {
    margin-bottom: 6px;
  }

  #banner-direccion .bd-highlight {
    color: #ff7a1a;            /* naranja */
    font-weight: 800;
  }

  #banner-direccion .bd-strong {
    font-weight: 800;
  }

  /* ajuste simple para pantallas pequeñas */
  @media (max-width: 480px) {
    #banner-direccion {
      max-width: 100%;
    }

    #banner-direccion .bd-text-col {
      padding: 16px;
    }

    #banner-direccion .bd-line-1,
    #banner-direccion .bd-line-2 {
      font-size: 16px;
    }
  }


.img-desktop{
    display:block;
} 
 




/* =========================================
   99) MEDIA QUERIES (todas al final)
========================================= */

/* >= LG */
@media (min-width: 992px){
  .h-underline{ --bar-h:.3rem; }

 
}

/* <= LG-1 */
@media (max-width: 991.98px){
  .rosetta-menu > li + li::before{ display:none; }
  .rosetta-menu > li > a.nav-link{ padding:.75rem 0; }
  .topbar-cta{ padding:.6rem 0; }
}

/* <= SM-1 */
@media (max-width: 575.98px){
    

.img-mobile.home-img-intro img {
    display: block !important;
}
 
.img-desktop{
    display: none !important;
}

    
    .box-social-float {
        width: 70px;
    }  
  .full-mobile {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .full-mobile figure,
  .full-mobile img {
    width: 100% !important;
    max-width: 100% !important;
  }    
    
  /* features tiles */
  .feature-tile{ width:84px; height:84px; }
  .feature-tile img{ width:38px; height:38px; }
  .feature-caption{ font-size:1.02rem; }

  /* (bloque legacy del original) */
  .feature-icon{ width:76px; height:76px; }
  .feature-icon img{ width:34px; height:34px; }
  .feature-label{ font-size:.98rem; }

  /* footer */
  .footer-menu a.footer-link{ font-size:1.05rem; }
}
