/* =========================================================================
   Lipan Care — Elementor (free) compatibility layer
   Maps the Lipan Care design system onto Elementor containers & widgets
   (classes set in Advanced › CSS Classes). Loaded after Elementor's CSS.
   ========================================================================= */

/* --- neutralise Elementor container/widget defaults inside our layouts --- */
body.lc-site .elementor .e-con{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--margin-top:0px;--margin-bottom:0px;--gap:0px;--row-gap:0px;--column-gap:0px;--border-radius:0;max-width:none}
body.lc-site .elementor .elementor-widget:not(:last-child){margin-block-end:0;margin-bottom:0}
body.lc-site .elementor .elementor-widget{width:100%;max-width:100%}
body.lc-site .elementor .elementor-widget-text-editor p:last-child{margin-bottom:0}
body.lc-site .elementor img{border-radius:0;box-shadow:none}

/* --- typography: Elementor headings follow the theme --- */
body.lc-site .elementor .elementor-heading-title{font-family:inherit;line-height:1.15;letter-spacing:-.015em;font-weight:800;color:var(--heading);margin:0 0 .6em}
body.lc-site .elementor h1.elementor-heading-title{font-size:clamp(2.1rem,5vw,3.6rem)}
body.lc-site .elementor h2.elementor-heading-title{font-size:clamp(1.65rem,3.4vw,2.5rem)}
body.lc-site .elementor h3.elementor-heading-title{font-size:1.2rem;margin-bottom:.35rem}
body.lc-site .elementor .elementor-heading-title a{color:inherit;text-decoration:none}
body.lc-site .elementor .elementor-widget-text-editor{color:inherit;font-family:inherit}
body.lc-site .elementor .kicker{display:flex;width:auto}
body.lc-site .elementor .kicker .elementor-heading-title{color:inherit;font-size:.8rem;font-weight:700;letter-spacing:.14em;line-height:1.3;margin:0}
.tone-forest .elementor-heading-title,.tone-navy .elementor-heading-title,.tone-laterite .elementor-heading-title,.phero .elementor-heading-title{color:#fff!important}
.tone-forest .kicker .elementor-heading-title,.tone-navy .kicker .elementor-heading-title,.phero .kicker .elementor-heading-title{color:var(--lime)!important}
.tone-laterite .kicker .elementor-heading-title{color:var(--clay)!important}

/* --- section / wrap --- */
body.lc-site .elementor .e-con.sec{--padding-top:var(--sec);--padding-bottom:var(--sec)}
body.lc-site .elementor .e-con.wrap{width:min(100% - 2rem,var(--wrap))!important;margin-inline:auto!important;--width:min(100% - 2rem,var(--wrap))}
body.lc-site .elementor .e-con.sec-head{margin-bottom:2.4rem;max-width:760px}
body.lc-site .elementor .e-con.news-head{flex-direction:row!important;justify-content:space-between;align-items:flex-end;max-width:none;flex-wrap:wrap;gap:1rem}
body.lc-site .elementor .e-con.news-head>.e-con{width:auto}
body.lc-site .elementor .e-con.news-head .elementor-widget-html{width:auto}
body.lc-site .elementor .e-con.btns{flex-direction:row!important;flex-wrap:wrap!important;gap:.8rem!important;margin-top:1.6rem}
body.lc-site .elementor .e-con.btns>.elementor-widget{width:auto}
body.lc-site .elementor .band .e-con.wrap{max-width:860px;text-align:center;align-items:center}
body.lc-site .elementor .band .e-con.btns{justify-content:center}
body.lc-site .elementor .prose{max-width:72ch}

/* --- buttons (Elementor button widget with .lc-btn) --- */
body.lc-site .elementor .lc-btn .elementor-button{text-decoration:none;display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.4rem;border-radius:999px;font-weight:700;font-size:1rem;line-height:1.1;border:2px solid transparent;font-family:inherit;transition:transform .15s,background .15s}
body.lc-site .elementor .lc-btn .elementor-button:hover{transform:translateY(-1px)}
body.lc-site .elementor .lc-btn.lc-btn-primary .elementor-button{background:var(--lime)!important;color:var(--navy-900)!important}
body.lc-site .elementor .lc-btn.lc-btn-primary .elementor-button:hover{background:#b0d64a!important}
body.lc-site .elementor .lc-btn.lc-btn-ghost .elementor-button{background:transparent!important;border-color:var(--navy);color:var(--navy)!important}
body.lc-site .elementor .lc-btn.lc-btn-ghost .elementor-button:hover{background:var(--navy)!important;color:#fff!important}
body.lc-site .elementor .lc-btn.lc-btn-light .elementor-button{background:var(--paper)!important;color:var(--navy-900)!important}
body.lc-site .elementor .lc-btn.lc-btn-ghost-light .elementor-button{background:transparent!important;border-color:rgba(255,255,255,.75);color:#fff!important}
body.lc-site .elementor .lc-btn.lc-btn-ghost-light .elementor-button:hover{background:#fff!important;color:var(--navy-900)!important}
@media (prefers-color-scheme:dark){body.lc-site .elementor .lc-btn.lc-btn-ghost .elementor-button{border-color:var(--lime);color:var(--lime)!important}}

/* --- hero --- */
body.lc-site .elementor .e-con.hero-grid{display:grid!important;grid-template-columns:1.05fr .95fr;gap:clamp(1.5rem,5vw,4rem)!important;align-items:center;padding-block:clamp(2.5rem,6vw,5rem) clamp(1rem,3vw,2rem)}
body.lc-site .elementor .hero .lead{font-size:clamp(1.08rem,1.6vw,1.25rem);color:var(--muted);max-width:56ch}
body.lc-site .elementor .hero-fig{position:relative}
body.lc-site .elementor .hero-fig img{position:relative;width:100%;aspect-ratio:1/1.02;object-fit:cover;clip-path:polygon(50% 0,100% 27%,100% 100%,0 100%,0 27%)}
@media (max-width:860px){body.lc-site .elementor .e-con.hero-grid{grid-template-columns:1fr}body.lc-site .elementor .hero-fig{max-width:460px;margin-inline:auto;order:-1}}

/* --- page hero --- */
body.lc-site .elementor .e-con.phero-grid{display:grid!important;grid-template-columns:1.2fr .8fr;gap:var(--lc-gap)!important;align-items:center;padding-block:clamp(2.5rem,6vw,4.5rem)}
body.lc-site .elementor .phero .elementor-widget-text-editor{color:#dfe8ee;font-size:1.15rem}
body.lc-site .elementor .phero-fig figure,.split-fig figure,.card-img figure{margin:0;position:relative}
body.lc-site .elementor .phero-fig img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius) var(--radius) var(--radius) 80px;box-shadow:12px 12px 0 var(--lime)}
body.lc-site .elementor .wp-caption-text,body.lc-site .elementor .widget-image-caption{position:absolute;top:.8rem;left:.8rem;margin:0;background:rgba(11,43,65,.85);color:#fff;font-size:.75rem;font-weight:600;padding:.3rem .65rem;border-radius:999px}
@media (max-width:760px){body.lc-site .elementor .e-con.phero-grid{grid-template-columns:1fr}}

/* --- stats --- */
body.lc-site .elementor .e-con.stats-grid{display:grid!important;grid-template-columns:repeat(4,1fr);gap:var(--lc-gap)!important}
body.lc-site .elementor .e-con.stat{border-top:4px solid var(--lime);--padding-top:1rem}
body.lc-site .elementor .stat-num .elementor-heading-title{font-size:clamp(2rem,4vw,2.9rem);line-height:1;letter-spacing:-.03em;margin-bottom:.45rem}
body.lc-site .elementor .stat-label{color:var(--muted);font-size:.98rem}
.tone-forest .stat-label{color:#cfdcd0!important}
@media (max-width:860px){body.lc-site .elementor .e-con.stats-grid{grid-template-columns:repeat(2,1fr)}}

/* --- grids & cards --- */
body.lc-site .elementor .e-con.grid{display:grid!important;gap:var(--lc-gap)!important}
body.lc-site .elementor .e-con.cols-2{grid-template-columns:repeat(2,1fr)}
body.lc-site .elementor .e-con.cols-3{grid-template-columns:repeat(3,1fr)}
body.lc-site .elementor .e-con.cols-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:1000px){body.lc-site .elementor .e-con.cols-4,body.lc-site .elementor .e-con.cols-3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){body.lc-site .elementor .e-con.cols-4,body.lc-site .elementor .e-con.cols-3,body.lc-site .elementor .e-con.cols-2{grid-template-columns:1fr}}
body.lc-site .elementor .e-con.card{--overflow:hidden;position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
body.lc-site .elementor .e-con.card-body{--padding-top:1.25rem;--padding-right:1.3rem;--padding-bottom:1.4rem;--padding-left:1.3rem;gap:.35rem!important;flex:1}
body.lc-site .elementor .icon-card .e-con.card-body{--padding-top:1.6rem;--padding-right:1.6rem;--padding-bottom:1.6rem;--padding-left:1.6rem}
body.lc-site .elementor .card-body .elementor-widget-text-editor{color:var(--muted);font-size:.98rem}
body.lc-site .elementor .card-img img{width:100%;aspect-ratio:4/3;object-fit:cover}
body.lc-site .elementor .news-card .card-img img{aspect-ratio:3/2;object-position:top}
body.lc-site .elementor .card-title .elementor-heading-title a::after{content:"";position:absolute;inset:0}
body.lc-site .elementor .e-con.card:hover{border-color:var(--lime);box-shadow:0 10px 30px -18px rgba(19,67,99,.45)}
body.lc-site .elementor .card .more{margin-top:.6rem}
body.lc-site .elementor .tag{width:auto;align-self:flex-start}
body.lc-site .elementor .tag .elementor-heading-title{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--lime-700);background:var(--lime-100);padding:.2rem .6rem;border-radius:999px;margin:0;line-height:1.4}
body.lc-site .elementor .place .elementor-heading-title{font-size:.85rem;font-weight:400;color:var(--muted);margin:0}
body.lc-site .elementor .news-card time{font-size:.85rem;font-weight:700;color:var(--accent)}

/* --- split --- */
body.lc-site .elementor .e-con.split{display:grid!important;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,5vw,4.5rem)!important;align-items:center}
body.lc-site .elementor .e-con.split.narrow{grid-template-columns:.75fr 1.25fr}
body.lc-site .elementor .e-con.split.narrow.reverse{grid-template-columns:1.25fr .75fr}
body.lc-site .elementor .split.reverse>.split-fig{order:2}
body.lc-site .elementor .split-fig{position:relative}
body.lc-site .elementor .split-fig img{width:100%;aspect-ratio:5/4;object-fit:cover;border-radius:var(--radius)}
body.lc-site .elementor .split.narrow .split-fig img{aspect-ratio:2/3;object-fit:contain;background:var(--surface-2)}
@media (max-width:860px){body.lc-site .elementor .e-con.split,body.lc-site .elementor .e-con.split.narrow,body.lc-site .elementor .e-con.split.narrow.reverse{grid-template-columns:1fr}body.lc-site .elementor .split.reverse>.split-fig{order:0}}

/* --- pillars, actions, team --- */
body.lc-site .elementor .e-con.pillars{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:var(--lc-gap)!important}
body.lc-site .elementor .e-con.pillar{background:var(--surface);border-radius:var(--radius);border:1px solid var(--line);--padding-top:1.5rem;--padding-right:1.5rem;--padding-bottom:1.5rem;--padding-left:1.5rem}
body.lc-site .elementor .pillar .card-ic{margin-bottom:.9rem}
body.lc-site .elementor .pillar .elementor-widget-text-editor{color:var(--muted);font-size:.97rem}
.tone-forest .e-con.pillar{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.12)!important}
.tone-forest .pillar .elementor-widget-text-editor{color:#cfdcd0!important}
body.lc-site .elementor .e-con.actions{display:grid!important;grid-template-columns:repeat(4,1fr);gap:1rem!important}
body.lc-site .elementor .e-con.action{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);--padding-top:1.5rem;--padding-right:1.5rem;--padding-bottom:1.5rem;--padding-left:1.5rem;gap:.4rem!important}
body.lc-site .elementor .e-con.action:first-child{background:var(--lime-100);border-color:var(--lime)}
body.lc-site .elementor .e-con.action:hover{background:var(--navy);border-color:var(--navy)}
body.lc-site .elementor .e-con.action:hover .elementor-heading-title,body.lc-site .elementor .e-con.action:hover p{color:#fff}
body.lc-site .elementor .action .elementor-widget-text-editor{color:var(--muted);font-size:.96rem}
@media (max-width:1000px){body.lc-site .elementor .e-con.actions{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){body.lc-site .elementor .e-con.actions{grid-template-columns:1fr}}
body.lc-site .elementor .e-con.team{display:grid!important;grid-template-columns:repeat(3,1fr);gap:var(--lc-gap)!important}
body.lc-site .elementor .e-con.member{flex-direction:row!important;align-items:center;gap:1rem!important;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);--padding-top:1.2rem;--padding-right:1.2rem;--padding-bottom:1.2rem;--padding-left:1.2rem}
body.lc-site .elementor .member .elementor-widget-html{width:auto}
body.lc-site .elementor .member strong{display:block;color:var(--heading)}
body.lc-site .elementor .member span{color:var(--muted);font-size:.95rem}
@media (max-width:760px){body.lc-site .elementor .e-con.team{grid-template-columns:1fr}}

/* --- gallery --- */
body.lc-site .elementor .e-con.gallery-sec{--padding-bottom:var(--sec);margin-top:calc(var(--sec) * -0.5)}
body.lc-site .elementor .e-con.gallery{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.8rem!important}
body.lc-site .elementor .gal-img img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}

/* --- notices --- */
.lc-notice{padding:.9rem 0;font-weight:600}
.lc-notice.ok{background:var(--lime-100);color:var(--navy-900)}
.lc-notice.err{background:#fbe6dc;color:var(--laterite-700)}
