/* Losoteric Studios — component styling (Xpro widgets, forms, lists) */

/* ---- Slim section ---- */
.ls-slim.ls-section{padding-top:18px!important;padding-bottom:18px!important;}

/* ---- Xpro Button ---- */
.ls-cta .xpro-elementor-button{font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;border-radius:4px;padding:12px 24px;border:.5px solid transparent;display:inline-flex;align-items:center;gap:8px;transition:transform .2s var(--ease),box-shadow .2s var(--ease),opacity .2s var(--ease),color .2s var(--ease);line-height:1;text-decoration:none;}
.ls-cta .xpro-elementor-button:active{transform:scale(.97);}
.ls-cta-primary .xpro-elementor-button{background:var(--gradient);color:#fff;}
.ls-cta-primary .xpro-elementor-button:hover{box-shadow:var(--shadow-lift);color:#fff;}
.ls-cta-outline .xpro-elementor-button{background:transparent;color:var(--text-muted);border-color:var(--border);}
.ls-cta-outline .xpro-elementor-button:hover{color:var(--text-dark);border-color:var(--green-light);}
.ls-cta-white .xpro-elementor-button{background:#fff;color:var(--green-deep);}

/* ---- Header nav (Xpro horizontal menu) ---- */
.ls-nav ul.xpro-elementor-horizontal-menu{display:flex;gap:30px;margin:0;padding:0;list-style:none;align-items:center;}
.ls-nav .xpro-elementor-horizontal-menu li{margin:0;}
.ls-nav .xpro-elementor-horizontal-menu a{font-family:var(--font-body)!important;font-size:13px!important;font-weight:500!important;letter-spacing:.02em!important;color:var(--text-mid)!important;text-transform:none!important;text-decoration:none;transition:color .2s var(--ease);padding:6px 0;}
.ls-nav .xpro-elementor-horizontal-menu a:hover,.ls-nav .xpro-elementor-horizontal-menu .current-menu-item>a{color:var(--green-deep)!important;}
.ls-nav .xpro-elementor-horizontal-menu-toggler{color:var(--green-deep);}
.ls-nav .xpro-elementor-horizontal-menu-overlay-content a{color:var(--text-dark)!important;font-family:var(--font-display)!important;font-size:24px!important;}

/* ---- Footer ---- */
#xpro-theme-builder-footer{background:var(--green-deep);}
#xpro-theme-builder-footer .ls-footer-text,#xpro-theme-builder-footer .ls-footer-text *{color:var(--green-mint)!important;font-family:var(--font-body)!important;font-size:13px!important;line-height:1.6!important;}
#xpro-theme-builder-footer .ls-footer-head,#xpro-theme-builder-footer .ls-footer-head *{color:#fff!important;text-transform:uppercase!important;letter-spacing:.14em!important;font-size:11px!important;font-weight:600!important;font-family:var(--font-body)!important;margin-bottom:4px;}
#xpro-theme-builder-footer .ls-footer-nav ul.xpro-elementor-horizontal-menu{display:flex;flex-direction:column;gap:9px;margin:0;padding:0;list-style:none;}
#xpro-theme-builder-footer .ls-footer-nav a{color:var(--green-mint)!important;font-family:var(--font-body)!important;font-size:13px!important;text-decoration:none;transition:color .2s var(--ease);}
#xpro-theme-builder-footer .ls-footer-nav a:hover{color:#fff!important;}
#xpro-theme-builder-footer .ls-footer-social .elementor-social-icon{background:rgba(255,255,255,.08)!important;color:var(--green-mint)!important;border-radius:4px;transition:background .2s var(--ease);}
#xpro-theme-builder-footer .ls-footer-social .elementor-social-icon:hover{background:rgba(255,255,255,.18)!important;}
#xpro-theme-builder-footer .ls-footer-bottom{border-top:.5px solid rgba(255,255,255,.12);}
#xpro-theme-builder-footer .ls-footer-meta,#xpro-theme-builder-footer .ls-footer-meta *{color:rgba(168,230,195,.7)!important;font-size:11px!important;letter-spacing:.04em!important;font-family:var(--font-body)!important;}

/* ---- Checklist (icon-list) ---- */
.ls-checklist .elementor-icon-list-items{display:flex;flex-direction:column;gap:9px;}
.ls-checklist .elementor-icon-list-icon i,.ls-checklist .elementor-icon-list-icon svg{color:var(--green-light)!important;}
.ls-checklist .elementor-icon-list-text{color:var(--text-mid)!important;font-family:var(--font-body)!important;font-size:14px!important;}
.ls-card--featured .ls-checklist .elementor-icon-list-text{color:var(--green-mint)!important;}
.ls-card--featured .ls-checklist .elementor-icon-list-icon i,.ls-card--featured .ls-checklist .elementor-icon-list-icon svg{color:var(--green-mint)!important;}

/* ---- Contact info list ---- */
.ls-contact-list .elementor-icon-list-icon i,.ls-contact-list .elementor-icon-list-icon svg{color:var(--green-deep)!important;}
.ls-contact-list .elementor-icon-list-text{color:var(--text-mid)!important;font-family:var(--font-body)!important;font-size:14px!important;}

/* ---- Accordion (FAQ) ---- */
.ls-accordion .elementor-accordion-item{border:.5px solid var(--border)!important;border-radius:4px;margin-bottom:10px;overflow:hidden;background:var(--white);}
.ls-accordion .elementor-tab-title{font-family:var(--font-body)!important;font-weight:500!important;color:var(--text-dark)!important;font-size:15px;padding:16px 18px;}
.ls-accordion .elementor-tab-title.elementor-active{color:var(--green-deep)!important;}
.ls-accordion .elementor-tab-content{color:var(--text-muted)!important;font-family:var(--font-body)!important;font-size:14px!important;line-height:1.65;padding:0 18px 18px;}
.ls-accordion .elementor-accordion-icon{color:var(--green-light);}

/* ---- WPForms (contact) ---- */
.ls-form-card{padding:34px!important;}
.wpforms-form .wpforms-field-label{font-family:var(--font-body)!important;color:var(--text-dark)!important;font-size:13px!important;font-weight:500!important;letter-spacing:.01em;}
.wpforms-form input[type=text],.wpforms-form input[type=email],.wpforms-form textarea,.wpforms-form select{background:var(--surface)!important;border:.5px solid var(--border)!important;border-radius:4px!important;padding:12px 14px!important;font-family:var(--font-body)!important;color:var(--text-dark)!important;font-size:14px!important;box-shadow:none!important;}
.wpforms-form input:focus,.wpforms-form textarea:focus,.wpforms-form select:focus{outline:none!important;border-color:var(--green-light)!important;}
.wpforms-form button[type=submit],.wpforms-submit{background:var(--gradient)!important;color:#fff!important;border:none!important;border-radius:4px!important;text-transform:uppercase!important;letter-spacing:.14em!important;font-size:12px!important;font-weight:500!important;font-family:var(--font-body)!important;padding:13px 28px!important;transition:box-shadow .2s var(--ease);cursor:pointer;}
.wpforms-form button[type=submit]:hover,.wpforms-submit:hover{box-shadow:var(--shadow-lift)!important;}
.wpforms-confirmation-container-full{background:var(--green-ghost)!important;border:.5px solid var(--green-pale)!important;border-radius:4px;color:var(--text-mid)!important;font-family:var(--font-body)!important;}

/* ---- Blocksy: ensure full-bleed content on our pages ---- */
.elementor-page .ct-container,.elementor-page .entry-content{max-width:100%!important;padding:0!important;}
.elementor-page .page-title,.elementor-page .entry-header{display:none!important;}
