/*
Theme Name: Astra Child – Las Encinas
Template: astra
Description: Tema hijo de Astra para conjuntolasencinas.com. Reproduce la cabecera, el menú y los estilos que tenía el tema Wavo (sin plugins).
Version: 1.0.10
Text Domain: astra-child-le
*/

/* ---------- Cabecera (réplica de .topnav de Wavo) ---------- */
#masthead, .site-header, .ast-scroll-to-top-right, #ast-scroll-top { display: none !important; }
.le-topnav{position:fixed;top:0;left:0;width:100%;padding:30px 0;z-index:9999;background:transparent;transition:all .4s;font-family:'Poppins',sans-serif}
.admin-bar .le-topnav{top:32px}
@media screen and (max-width:782px){.admin-bar .le-topnav{top:46px}}
.le-topnav.le-scrolled{background:#2A452A}
.le-topnav .le-cf{display:flex;align-items:center;justify-content:flex-end;padding:0 50px}
.le-menu-icon{display:flex;align-items:center;cursor:pointer;color:#fff;font-size:14px;line-height:18.2px;user-select:none}
.le-menu-icon .le-ic{display:block;width:20px}
.le-menu-icon .le-ic i{display:block;width:20px;height:3px;margin:4px 0;background:#fff;transition:.3s}
.le-menu-icon .le-ic i:last-child{width:14px}
.le-menu-icon:hover .le-ic i:last-child{width:20px}
.le-menu-icon .le-tx{font-size:13px;padding-left:15px}
.le-open .le-menu-icon .le-ic i:first-child{transform:translateY(3.5px) rotate(45deg)}
.le-open .le-menu-icon .le-ic i:last-child{width:20px;transform:translateY(-3.5px) rotate(-45deg)}

/* ---------- Panel del menú (réplica de .hamenu) ---------- */
.le-hamenu{position:fixed;top:0;left:-100%;width:100%;height:100vh;background:#2A452A;z-index:9998;padding-top:120px;overflow:auto;transition:.5s cubic-bezier(1,0,.55,1);font-family:'Poppins',sans-serif}
.le-open .le-hamenu{left:0}
.le-hamenu .le-container{max-width:1170px;margin:0 auto;padding:0 15px;display:flex;flex-wrap:wrap}
.le-hamenu .le-col-l{flex:0 0 75%;max-width:75%;padding:0 15px;position:relative;min-height:300px}
.le-hamenu .le-col-r{flex:0 0 25%;max-width:25%;padding:0 15px}
.le-hamenu ul{list-style:none;margin:0;padding:0}
.le-hamenu .le-main > li{margin-bottom:15px;counter-increment:le-item}
.le-hamenu .le-main{counter-reset:le-item;transition:.5s}
.le-hamenu .o-hidden{overflow:hidden}
.le-hamenu .le-link{display:inline-flex;align-items:baseline;font-size:30px;line-height:1.4;font-weight:600;color:#dbdbdb;text-decoration:none;cursor:pointer;transform:translateY(100%);transition:transform .5s,color .3s}
.le-open .le-hamenu .le-link,.le-open .le-hamenu .le-sublink{transform:none;transition-delay:.4s}
.le-hamenu .le-link:hover,.le-hamenu .is-active > .o-hidden .le-link{color:#fff}
.le-hamenu .le-nm{font-size:10px;font-weight:400;margin-right:10px;color:#fff;opacity:.8}
.le-hamenu .le-main > li > .o-hidden .le-nm:before{content:"0" counter(le-item) "."}
.le-hamenu .le-link .le-arr{font-size:14px;margin-left:8px}
.le-hamenu .le-sub{position:absolute;top:0;left:15px;right:15px;visibility:hidden;opacity:0;transform:translateX(40px);transition:.5s}
.le-hamenu .le-main > li > .o-hidden{transition:opacity .5s,transform .5s,visibility .5s}
.le-hamenu.le-sub-open .le-main > li > .o-hidden{opacity:0;visibility:hidden;transform:translateX(-40px)}
.le-hamenu.le-sub-open .le-sub{visibility:visible;opacity:1;transform:none}
.le-hamenu .le-sub li{margin-bottom:10px;counter-increment:le-sub}
.le-hamenu .le-sub ul{counter-reset:le-sub}
.le-hamenu .le-sublink{display:inline-block;font-size:20px;line-height:1.9;font-weight:400;letter-spacing:1px;color:#eee;text-decoration:none;cursor:pointer;transform:translateY(100%);transition:transform .5s,color .3s}
.le-hamenu .le-sublink:hover{color:#fff}
.le-hamenu .le-sublink.le-back{font-size:14px;color:#fff;opacity:.8}
.le-hamenu .le-cont .le-item{margin-bottom:30px;color:#eee;font-size:13px;line-height:1.8}
.le-hamenu .le-cont h6{font-family:'Poppins',sans-serif;font-size:14px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#fff;margin:0 0 5px}
.le-hamenu .le-search{display:flex;max-width:220px}
.le-hamenu .le-search input{flex:1;min-width:0;background:transparent;border:1px solid rgba(255,255,255,.3);border-right:0;color:#fff;font-size:12px;padding:8px 12px;border-radius:0}
.le-hamenu .le-search input::placeholder{color:rgba(255,255,255,.6)}
.le-hamenu .le-search button{background:#fff;color:#1e1e1e;border:0;border-radius:0;width:60px;cursor:pointer}
.le-hamenu .le-search button svg{width:12px;height:12px;fill:#1e1e1e}
@media (max-width:767px){.le-hamenu .le-col-l,.le-hamenu .le-col-r{flex:0 0 100%;max-width:100%}.le-hamenu .le-col-r{margin-top:30px}.le-topnav .le-cf{padding:0 20px}.le-topnav{padding:20px 0}}
body.le-noscroll{overflow:hidden}

/* ---------- Estilos que añadía Wavo a widgets normales de Elementor ---------- */
/* Línea antes del título (Wavo: «heading-has-line-yes») */
.heading-has-line-yes .elementor-heading-title{position:relative;padding-left:70px}
.heading-has-line-yes .elementor-heading-title:after{content:"";position:absolute;left:0;top:50%;width:60px;height:1px;background:currentColor}
/* Texto con contorno (Wavo: «wavo-has-stroke-yes») */
.wavo-has-stroke-yes.stroke-type-full .elementor-heading-title,.wavo-has-stroke-yes.stroke-type-full .elementor-heading-title *,.wavo-has-stroke-yes.stroke-type-part .elementor-heading-title b{-webkit-text-stroke:1px currentColor;-webkit-text-fill-color:transparent}
.wavo-has-stroke-yes.stroke-type-part .elementor-heading-title b{font-weight:900}
/* Animación de letras (Wavo: «heading-has-split-yes») */
.heading-has-split-yes .le-ch{display:inline-block;opacity:0;transform:translateY(20px);transition:opacity .6s,transform .6s}
.heading-has-split-yes.le-in .le-ch{opacity:1;transform:none}
.heading-has-split-yes .le-wd{display:inline-block;white-space:nowrap}

/* Fondo general crema como en Wavo */
html body{background-color:#FAF1E8 !important}
/* Sin pie de Astra y sin espacio entre widgets (como Wavo) */
#colophon,.site-footer{display:none !important}
body{--kit-widget-spacing:0px}
html body .elementor-widget:not(:last-child){margin-bottom:0;margin-block-end:0}
/* Márgenes de sección de Wavo (clases añadidas desde functions.php) */
.section-padding{padding:120px 0}
.pt-0{padding-top:0 !important}
.pb-0{padding-bottom:0 !important}
@media (max-width:767px){.section-padding{padding:100px 0}}
/* Tipografía base que aplicaba Wavo (los ajustes propios de cada widget siguen mandando) */
html body .elementor-widget:not(.elementor-widget-html) h1,html body .elementor-widget:not(.elementor-widget-html) h2,html body .elementor-widget:not(.elementor-widget-html) h3,html body .elementor-widget:not(.elementor-widget-html) h4,html body .elementor-widget:not(.elementor-widget-html) h5,html body .elementor-widget:not(.elementor-widget-html) h6{font-family:'Poppins',sans-serif;font-weight:600;line-height:1.2;color:#000;margin:0}
html body .elementor-widget:not(.elementor-widget-html) h1{font-size:55px}
html body .elementor-widget:not(.elementor-widget-html) h2{font-size:38px}
html body .elementor-widget:not(.elementor-widget-html) h3{font-size:32px}
html body .elementor-widget:not(.elementor-widget-html) h4{font-size:28px}
html body .elementor-widget:not(.elementor-widget-html) h5{font-size:25px}
html body .elementor-widget:not(.elementor-widget-html) h6{font-size:18px}
html body .elementor-widget-heading .elementor-heading-title.elementor-heading-title{line-height:1}
html body .elementor-widget-heading p.elementor-heading-title.elementor-heading-title,html body .elementor-widget-text-editor p,html body .elementor p.elementor-icon-box-description{font-family:'Roboto',sans-serif;font-size:15px;line-height:30px;font-weight:400;color:#888}
@media (max-width:767px){html body .elementor-widget:not(.elementor-widget-html) h1{font-size:35px}html body .elementor-widget:not(.elementor-widget-html) h2{font-size:28px}html body .elementor-widget:not(.elementor-widget-html) h3{font-size:24px}html body .elementor-widget:not(.elementor-widget-html) h4{font-size:20px}html body .elementor-widget:not(.elementor-widget-html) h5{font-size:18px}html body .elementor-widget:not(.elementor-widget-html) h6{font-size:16px}}
