/* Structural layout only — all visuals via Elementor Style controls */
.elementor-widget-vn2-villa-specs .vn2-villa-specs {
  margin-left: auto;
  margin-right: auto;
}

.elementor-widget-vn2-villa-specs .vn2-vs-g2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}

.elementor-widget-vn2-villa-specs .vn2-vs-box-ico,
.elementor-widget-vn2-villa-specs .vn2-vs-icon-el.vn2-vs-box-ico {
  display: block;
  line-height: 1;
}

.elementor-widget-vn2-villa-specs .vn2-vs-box-ico svg,
.elementor-widget-vn2-villa-specs .vn2-vs-icon-el.vn2-vs-box-ico svg {
  width: 1em;
  height: 1em;
  fill: currentColor;
}

.elementor-widget-vn2-villa-specs .vn2-vs-box-l,
.elementor-widget-vn2-villa-specs .vn2-vs-box-sub {
  display: block;
}

.elementor-widget-vn2-villa-specs .vn2-vs-toggle-btn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  box-shadow: none;
  outline: none;
  appearance: none;
  -webkit-appearance: none;
}

.elementor-widget-vn2-villa-specs .vn2-vs-toggle-btn .vn2-vs-toggle-ico,
.elementor-widget-vn2-villa-specs .vn2-vs-toggle-btn .vn2-vs-toggle-ico svg {
  transition: transform 0.25s ease;
}

.elementor-widget-vn2-villa-specs .vn2-vs-toggle-btn .vn2-vs-toggle-ico svg {
  width: 1em;
  height: 1em;
  fill: currentColor;
}

.elementor-widget-vn2-villa-specs .vn2-vs-toggle-btn.vn2-vs-open .vn2-vs-toggle-ico {
  transform: rotate(180deg);
}

.elementor-widget-vn2-villa-specs .vn2-vs-all-specs {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
}

.elementor-widget-vn2-villa-specs .vn2-vs-all-specs.vn2-vs-open {
  opacity: 1;
}

.elementor-widget-vn2-villa-specs .vn2-vs-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.elementor-widget-vn2-villa-specs .vn2-vs-strip:last-child {
  margin-bottom: 0 !important;
}

.elementor-widget-vn2-villa-specs .vn2-vs-strip-left {
  display: flex;
  align-items: center;
}

.elementor-widget-vn2-villa-specs .vn2-vs-strip-left .vn2-vs-strip-ico,
.elementor-widget-vn2-villa-specs .vn2-vs-strip-left .vn2-vs-strip-ico svg {
  flex-shrink: 0;
  line-height: 1;
}

.elementor-widget-vn2-villa-specs .vn2-vs-strip-left .vn2-vs-strip-ico svg {
  fill: currentColor;
}

.elementor-widget-vn2-villa-specs.vn2-vs-align-left .vn2-villa-specs {
  margin-left: 0;
  margin-right: auto;
}

.elementor-widget-vn2-villa-specs.vn2-vs-align-right .vn2-villa-specs {
  margin-left: auto;
  margin-right: 0;
}

.elementor-widget-vn2-villa-specs.vn2-vs-align-center .vn2-villa-specs {
  margin-left: auto;
  margin-right: auto;
}
