/* Losoteric Studios — design-match additions */

/* Hero: left aligned */
.ls-hero .e-con-inner,.ls-hero{ }
.ls-hero-narrow{max-width:660px;}

/* Section header spacing */
.ls-section .ls-eyebrow{margin-bottom:6px;}
.ls-sub{max-width:620px;margin-left:auto;margin-right:auto;}

/* Offerings / discipline card bullets */
.ls-bullets .elementor-icon-list-items{display:flex;flex-direction:column;gap:8px;margin-top:6px;}
.ls-bullets .elementor-icon-list-icon i,.ls-bullets .elementor-icon-list-icon svg{color:var(--green-light)!important;}
.ls-bullets .elementor-icon-list-text{color:var(--text-muted)!important;font-family:var(--font-body)!important;font-size:13px!important;}
.ls-card--featured .ls-bullets .elementor-icon-list-text{color:var(--green-mint)!important;}
.ls-card--featured .ls-bullets .elementor-icon-list-icon i,.ls-card--featured .ls-bullets .elementor-icon-list-icon svg{color:var(--green-mint)!important;}

/* Process steps */
.ls-step .ls-step-num,.ls-step .ls-step-num *{font-family:var(--font-display)!important;font-size:30px!important;font-weight:500!important;color:var(--green-light)!important;line-height:1!important;}
.ls-step{border-top:.5px solid var(--border);padding-top:18px;}

/* Testimonial */
.ls-testi-media{position:relative;min-height:300px;border-radius:4px;overflow:hidden;}
.ls-testi-media .ls-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;}
.ls-testi-media .ls-play .elementor-icon{background:#fff!important;width:64px!important;height:64px!important;border-radius:50%!important;box-shadow:var(--shadow-lift);}
.ls-testi-media .ls-play .elementor-icon i,.ls-testi-media .ls-play .elementor-icon svg{color:var(--green-deep)!important;}
.ls-author-name,.ls-author-name *{font-family:var(--font-body)!important;font-weight:600!important;color:var(--text-dark)!important;font-size:14px!important;}
.ls-author-co,.ls-author-co *{font-family:var(--font-display)!important;font-style:normal!important;color:var(--green-deep)!important;font-size:18px!important;}

/* Work cards (home + portfolio) */
.ls-work{position:relative;background:var(--surface);border:.5px solid var(--border);border-radius:4px;overflow:hidden;padding:0!important;}
.ls-work .ls-media img{border-radius:0;width:100%;height:200px;object-fit:cover;box-shadow:none;}
.ls-work-body{padding:20px 22px 24px;}
.ls-work-cat,.ls-work-cat *{position:absolute;top:14px;right:14px;background:rgba(255,255,255,.92);color:var(--green-deep)!important;font-family:var(--font-body)!important;font-size:10px!important;letter-spacing:.1em!important;text-transform:uppercase!important;padding:5px 10px;border-radius:4px;z-index:2;}
.ls-work--featured{background:var(--green-deep)!important;}
.ls-work--featured .ls-h3,.ls-work--featured .ls-h3 *{color:#fff!important;}
.ls-work--featured .ls-body,.ls-work--featured .ls-body *{color:var(--green-mint)!important;}
.ls-tagrow .elementor-icon-list-items{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;}
.ls-tagrow .elementor-icon-list-item{width:auto!important;}
.ls-tagrow .elementor-icon-list-text{background:var(--green-ghost);color:var(--green-deep)!important;border:.5px solid var(--green-pale);border-radius:4px;padding:3px 9px;font-size:10px!important;letter-spacing:.04em;text-transform:uppercase;font-family:var(--font-body)!important;}
.ls-explore .elementor-button{background:transparent!important;color:var(--green-deep)!important;padding:0!important;border:none!important;letter-spacing:.12em;}

/* Filter pills */
.ls-filterbar{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:10px;}
.ls-pill,.ls-pill *{font-family:var(--font-body)!important;font-size:11px!important;letter-spacing:.08em!important;text-transform:uppercase!important;color:var(--text-muted)!important;background:var(--surface);border:.5px solid var(--border);border-radius:4px;padding:7px 14px;}
.ls-pill.ls-pill--active,.ls-pill.ls-pill--active *{background:var(--green-deep);color:#fff!important;border-color:transparent;}

/* Your brand here card */
.ls-yourbrand{background:var(--white);border:.5px dashed var(--green-pale);border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:32px 24px;height:100%;}
.ls-yourbrand .elementor-icon{background:var(--green-ghost)!important;width:54px!important;height:54px!important;border-radius:50%!important;}
.ls-yourbrand .elementor-icon i,.ls-yourbrand .elementor-icon svg{color:var(--green-deep)!important;}

/* About stats */
.ls-stat{text-align:center;}
.ls-stat-num,.ls-stat-num *{font-family:var(--font-display)!important;font-size:clamp(34px,4vw,46px)!important;font-weight:500!important;color:var(--green-deep)!important;line-height:1!important;}
.ls-stat-label,.ls-stat-label *{font-family:var(--font-body)!important;font-weight:500!important;color:var(--text-dark)!important;font-size:14px!important;}
.ls-ethos-card{background:var(--white);border:.5px solid var(--border);border-radius:4px;padding:24px 22px;height:100%;}
.ls-ethos-card .ls-h3,.ls-ethos-card .ls-h3 *{font-family:var(--font-body)!important;font-weight:600!important;}

/* Services accordion content */
.ls-svc-accordion .elementor-tab-title{font-family:var(--font-display)!important;font-size:22px!important;font-weight:500!important;}
.ls-svc-accordion .elementor-tab-content{padding:6px 18px 22px;}
.ls-svc-accordion .elementor-tab-content ul{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.ls-svc-accordion .elementor-tab-content li{color:var(--text-muted);font-size:13px;position:relative;padding-left:20px;}
.ls-svc-accordion .elementor-tab-content li:before{content:'';position:absolute;left:0;top:7px;width:8px;height:8px;border-left:1.5px solid var(--green-light);border-bottom:1.5px solid var(--green-light);transform:rotate(-45deg);}
.ls-svc-accordion .elementor-tab-content .ls-svc-cta{display:inline-block;margin-top:16px;font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--green-deep);border:.5px solid var(--border);border-radius:4px;padding:11px 22px;text-decoration:none;}
.ls-svc-accordion .elementor-tab-content .ls-svc-cta:hover{border-color:var(--green-light);}

/* Scope cards */
.ls-scope{background:var(--surface);border:.5px solid var(--border);border-radius:4px;padding:30px 28px;height:100%;}
.ls-scope .ls-h3,.ls-scope .ls-h3 *{font-family:var(--font-display)!important;font-size:24px!important;font-weight:500!important;}

/* Contact form card centered + 2-col row handled by WPForms columns */
.ls-form-wrap{max-width:760px;margin:0 auto;}

/* Minimal footer */
#xpro-theme-builder-footer{background:var(--surface)!important;border-top:.5px solid var(--border);}
.ls-footer-min{padding:26px 24px;text-align:center;}
.ls-footer-min,.ls-footer-min *{font-family:var(--font-body)!important;font-size:12px!important;letter-spacing:.04em!important;color:var(--text-faint)!important;}

/* Hero left alignment helper */
.ls-hero .ls-h1,.ls-hero .ls-lead{text-align:left;}
@media(max-width:767px){.ls-svc-accordion .elementor-tab-content ul{grid-template-columns:1fr;}}

/* Xpro nav real classes */
.ls-nav .xpro-elementor-horizontal-navbar-nav{display:flex;flex-direction:row;gap:30px;align-items:center;margin:0;padding:0;}
.ls-nav .xpro-elementor-horizontal-navbar-nav li{margin:0;list-style:none;}
.ls-nav .xpro-elementor-horizontal-navbar-nav a{font-family:var(--font-display)!important;font-size:16px!important;font-weight:500!important;color:var(--text-mid)!important;text-transform:none!important;letter-spacing:.01em;text-decoration:none;padding:4px 0;}
.ls-nav .xpro-elementor-horizontal-navbar-nav a:hover{color:var(--green-deep)!important;}
.ls-header-cta .xpro-elementor-button{padding:11px 22px;}

.ls-logo *{white-space:nowrap!important;font-size:22px!important;}
.ls-header-cta{flex:0 0 auto;}

.ls-tagrow .elementor-icon-list-icon{display:none!important;}
.ls-tagrow .elementor-icon-list-text{margin-left:0!important;}

/* WPForms two-column row */
.wpforms-form .wpforms-field.wpforms-one-half{float:left;width:48%;clear:none;}
.wpforms-form .wpforms-field.wpforms-one-half.wpforms-last{float:right;}
.wpforms-form .wpforms-field-row:after,.wpforms-form:after{content:'';display:table;clear:both;}
.wpforms-form .wpforms-field{margin-bottom:18px;}
