/* Amazing Cretan Villas – layout of the Elementor pages (villa pages and articles).
   The sections themselves use acv-villa.css; this file only lines up Elementor's containers. */

/* Page container holding the sections: full width, no gaps, the site background */
.e-con.acv-stack{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--gap:0px;--row-gap:0px;--column-gap:0px;--content-width:100%;--width:100%;background:#F5EEE8;padding:0!important;gap:0!important}
.e-con.acv-stack>.e-con-inner{max-width:none!important;padding:0!important;gap:0!important}
.acv-ew{width:100%}
.acv-ew>section{margin:0}

/* Article: two columns (text + sidebar) on the site background, same widths as the approved design */
.e-con.acv-art-cols{--gap:48px;--row-gap:0px;--column-gap:48px;display:grid!important;grid-template-columns:minmax(0,1fr) 300px;gap:0 48px!important;align-items:start;
  padding:52px max(20px,calc((100% - 1140px)/2))!important;background:#F5EEE8;border-top:1px solid #E2D5CB;box-sizing:border-box;width:100%;max-width:none}
.e-con.acv-art-cols>.e-con-inner{display:contents}
.e-con.acv-art-main,.e-con.acv-art-aside{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--gap:0px;--row-gap:0px;--width:auto;padding:0!important;width:auto!important;min-width:0;gap:0!important;flex-direction:column}
.e-con.acv-art-main{max-width:72ch}
.e-con.acv-art-aside{position:sticky;top:90px;align-self:start}
.e-con.acv-art-cols .acv-page{background:transparent}
.e-con.acv-art-cols .acv-page .art-side{position:static}
@media (max-width:980px){
  .e-con.acv-art-cols{grid-template-columns:minmax(0,1fr);row-gap:26px!important}
  .e-con.acv-art-aside{position:static}
  .e-con.acv-art-cols .art-toc{display:none}
}
@media (max-width:700px){.e-con.acv-art-cols{padding-block:40px!important}}

/* Our "Text section" widget */
.acv-page .acv-text{max-width:72ch}
.acv-page .acv-text>*:first-child{margin-top:0}
.acv-page .acv-text-imgs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:22px}
.acv-page .acv-text-imgs figure{margin:0}
.acv-page .acv-text-imgs img{width:100%;height:auto;border-radius:8px;display:block}

/* Elementor's own widgets placed between our sections: keep them inside the page width */
.e-con.acv-stack>.elementor-widget:not([class*="elementor-widget-acv-"]),
.e-con.acv-stack>.e-con-inner>.elementor-widget:not([class*="elementor-widget-acv-"]){max-width:1180px;margin-inline:auto;padding:32px 20px;box-sizing:border-box;width:100%}
