/* LSL:START */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600;9..144,700&family=Nunito:wght@400;600;700;800&family=Caveat:wght@600;700&display=swap');

/* ===== LiGHT Speech & Language — site styles (generated) ===== */
:root{
  --lsl-ink:#0a1e3c;--lsl-navy:#0d2a52;--lsl-sea:#155089;--lsl-heading:#123561;--lsl-text:#3b4f68;
  --lsl-gold:#ffc94d;--lsl-gold-deep:#f0a71e;--lsl-glow:#ffe9ad;--lsl-cream:#fff9ee;
  --lsl-coral:#ef7f5b;--lsl-coral-deep:#e2643f;--lsl-teal:#2f9e99;
  --lsl-shadow:0 16px 40px rgba(13,42,82,.12);--lsl-shadow-sm:0 8px 22px rgba(13,42,82,.10);
}
body{background:var(--lsl-cream);font-family:'Nunito',sans-serif;color:var(--lsl-text);line-height:1.7}
.wp-site-blocks{padding-top:0}
.lsl-main,.lsl-main>.entry-content{margin:0;padding:0;max-width:none}
body:not(.elementor-page) .lsl-main{padding-top:110px}
h1,h2,h3,h4{font-family:'Fraunces',serif;color:var(--lsl-heading);line-height:1.18}
.elementor-widget-text-editor p{margin:0 0 1em}
.elementor-widget-text-editor p:last-child{margin-bottom:0}
.elementor-widget-text-editor a{color:var(--lsl-sea);font-weight:700;text-decoration:none}
.elementor-widget-text-editor a:hover{color:var(--lsl-coral-deep)}

/* ---------------- HEADER ---------------- */
.lsl-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:12px 24px;
  background:rgba(10,30,60,.88);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  box-shadow:0 6px 24px rgba(5,15,35,.28)}
.lsl-header__inner{max-width:1120px;margin:0 auto;gap:20px}
.lsl-brand{gap:12px}
.lsl-brand-mark{margin:0!important;flex:none}
.lsl-brand-mark img{width:44px;height:44px;display:block}
.lsl-brand-text{gap:0}
.lsl-brand-name{font-family:'Fraunces',serif;font-weight:700;font-size:1.12rem;line-height:1.06;margin:0}
.lsl-brand-name a{color:#fff;text-decoration:none}
.lsl-brand-tag{font-family:'Caveat',cursive;font-weight:600;font-size:.92rem;color:var(--lsl-glow);
  letter-spacing:.4px;margin:2px 0 0;line-height:1.1}
.lsl-nav .wp-block-navigation__container{gap:4px}
.lsl-nav a.wp-block-navigation-item__content{color:rgba(255,255,255,.88);font-family:'Nunito',sans-serif;
  font-weight:700;font-size:.98rem;padding:9px 15px;border-radius:999px;text-decoration:none;transition:color .25s}
.lsl-nav a.wp-block-navigation-item__content:hover{color:var(--lsl-glow)}
.lsl-nav .lsl-nav-cta a.wp-block-navigation-item__content{
  background:linear-gradient(135deg,var(--lsl-gold),var(--lsl-gold-deep));color:var(--lsl-ink);
  box-shadow:0 4px 14px rgba(240,167,30,.35);margin-left:8px}
.lsl-nav .lsl-nav-cta a.wp-block-navigation-item__content:hover{color:var(--lsl-ink);transform:translateY(-2px)}
.lsl-nav .wp-block-navigation__responsive-container-open,
.lsl-nav .wp-block-navigation__responsive-container-close{color:#fff}
.lsl-nav .wp-block-navigation__responsive-container-open svg{width:30px;height:30px}
@media(max-width:860px){
  .lsl-nav .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex!important}
  .lsl-nav .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
  .lsl-nav .wp-block-navigation__responsive-container.is-menu-open{
    display:flex!important;position:fixed!important;top:0;left:0;right:0;bottom:0;z-index:200;
    background:rgba(7,22,48,.97);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
    padding:24px;flex-direction:column;align-items:center;justify-content:center}
  .lsl-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
    flex-direction:column;gap:10px;align-items:center}
  .lsl-nav .wp-block-navigation__responsive-container.is-menu-open a.wp-block-navigation-item__content{
    font-size:1.3rem;padding:14px 24px;color:#fff}
  .lsl-header{padding:10px 18px}
}
@media(max-width:640px){
  .lsl-brand-tag{display:none}
  .lsl-brand-name{font-size:1rem}
  .lsl-brand-mark img{width:38px;height:38px}
}

/* ---------------- FOOTER ---------------- */
.lsl-footer{background:#071630;color:rgba(255,255,255,.72);padding:70px 24px 30px;position:relative;overflow:hidden}
.lsl-foot-grid{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:44px}
.lsl-footer p,.lsl-footer li{font-size:.94rem}
.lsl-footer .lsl-brand-name{font-size:1.2rem}
.lsl-foot-h{color:#fff;font-family:'Nunito',sans-serif;font-weight:800;font-size:.95rem;
  letter-spacing:1.4px;text-transform:uppercase;margin:0 0 18px}
.lsl-foot-links,.lsl-foot-contact{list-style:none;padding:0;margin:0}
.lsl-foot-links li{margin-bottom:10px}
.lsl-footer a{color:rgba(255,255,255,.72);text-decoration:none;transition:color .25s,padding-left .25s}
.lsl-footer a:hover{color:var(--lsl-glow)}
.lsl-foot-links a:hover{padding-left:5px}
.lsl-foot-script{font-family:'Caveat',cursive;color:var(--lsl-glow);font-size:1.25rem;margin:14px 0 0}
.lsl-foot-blurb{max-width:320px;margin:8px 0 0}
.lsl-foot-contact li{display:flex;gap:10px;align-items:center;margin-bottom:12px}
.lsl-foot-contact li::before{content:"";width:16px;height:16px;flex:none;background-color:var(--lsl-gold);
  -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain}
.lsl-fc-phone::before{-webkit-mask-image:url(/wp-content/uploads/lsl/lsl-i-phone.svg);mask-image:url(/wp-content/uploads/lsl/lsl-i-phone.svg)}
.lsl-fc-mail::before{-webkit-mask-image:url(/wp-content/uploads/lsl/lsl-i-mail.svg);mask-image:url(/wp-content/uploads/lsl/lsl-i-mail.svg)}
.lsl-fc-pin::before{-webkit-mask-image:url(/wp-content/uploads/lsl/lsl-i-pin.svg);mask-image:url(/wp-content/uploads/lsl/lsl-i-pin.svg)}
.lsl-foot-bottom{max-width:1120px;margin:44px auto 0;border-top:1px solid rgba(255,255,255,.1);
  padding-top:24px;font-size:.85rem;gap:14px}
.lsl-foot-bottom p{margin:0}
.lsl-foot-script-sm{font-family:'Caveat',cursive;color:var(--lsl-glow);font-size:1.05rem}
@media(max-width:860px){.lsl-foot-grid{grid-template-columns:1fr 1fr;gap:34px}}
@media(max-width:640px){.lsl-foot-grid{grid-template-columns:1fr;gap:28px}.lsl-footer{padding:56px 20px 26px}}

/* ---------------- SHARED PAGE PIECES ---------------- */
.lsl-texture{background-image:radial-gradient(rgba(18,53,97,.05) 1.1px,transparent 1.1px);background-size:26px 26px}
.lsl-sec-head{max-width:660px;margin-left:auto;margin-right:auto}
.lsl-eyebrow .elementor-heading-title{letter-spacing:.3px}
.lsl-squiggle img{margin:6px auto 4px}
.lsl-squiggle.elementor-widget-image{width:100%}
.lsl-lede p{margin:0}
.lsl-wave{position:absolute;left:0;right:0;bottom:-2px;width:100%;z-index:6;line-height:0;
  pointer-events:none;margin:0}
.lsl-wave img{width:100%;display:block;height:90px;object-fit:fill}
.lsl-page-hero .lsl-wave img{height:70px}
.lsl-hero,.lsl-page-hero,.lsl-night-hero{position:relative;overflow:hidden}

/* buttons */
.lsl-btn .elementor-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-family:'Nunito',sans-serif;font-weight:800;font-size:1rem;padding:15px 30px;border-radius:999px;
  border:none;line-height:1.2;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.lsl-btn .elementor-button-content-wrapper{align-items:center;gap:10px}
.lsl-btn .elementor-button-icon svg{width:19px;height:19px;fill:none;stroke:currentColor}
.lsl-btn-gold .elementor-button{background:linear-gradient(135deg,var(--lsl-gold) 0%,var(--lsl-gold-deep) 100%);
  color:var(--lsl-ink);box-shadow:0 8px 24px rgba(240,167,30,.38)}
.lsl-btn-gold .elementor-button:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(240,167,30,.5);color:var(--lsl-ink)}
.lsl-btn-ghost .elementor-button{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.55)}
.lsl-btn-ghost .elementor-button:hover{transform:translateY(-3px);border-color:var(--lsl-gold);
  color:var(--lsl-glow);background:rgba(255,201,77,.08)}
.lsl-btn-navy .elementor-button{background:var(--lsl-navy);color:#fff;box-shadow:var(--lsl-shadow-sm)}
.lsl-btn-navy .elementor-button:hover{transform:translateY(-3px);background:#163a68;color:#fff}
.lsl-btn-block .elementor-button{width:100%}
@media(max-width:640px){.lsl-hero-ctas .elementor-button{width:100%}}

/* pills, badges, chips, tags */
.lsl-pill .elementor-heading-title{display:inline-flex;align-items:center;gap:10px;
  background:rgba(255,233,173,.14);border:1px solid rgba(255,201,77,.45);padding:8px 18px;
  border-radius:999px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.lsl-badge .elementor-heading-title{display:inline-flex;padding:7px 15px;border-radius:999px;
  letter-spacing:1.6px;text-transform:uppercase}
.lsl-badge-gold .elementor-heading-title{background:rgba(240,167,30,.16)}
.lsl-badge-glow .elementor-heading-title{background:rgba(255,201,77,.18)}
.lsl-tag .elementor-heading-title{display:inline-flex;padding:6px 14px;border-radius:999px;
  background:rgba(255,201,77,.13);border:1px solid rgba(255,201,77,.4)}
.lsl-ribbon .elementor-heading-title{display:inline-flex;padding:6px 18px;border-radius:999px;
  letter-spacing:1.5px;text-transform:uppercase;
  background:linear-gradient(135deg,var(--lsl-gold),var(--lsl-gold-deep));box-shadow:0 4px 14px rgba(0,0,0,.3)}
.lsl-chip .elementor-icon-box-wrapper{display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.22);padding:8px 16px;
  border-radius:999px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-align:left}
.lsl-chip .elementor-icon-box-icon{margin:0!important}
.lsl-chip .elementor-icon-box-title{margin:0}
.lsl-chip .elementor-icon-box-description{display:none}
.lsl-chip .elementor-icon svg{width:16px;height:16px;fill:none;stroke:currentColor}
.lsl-chips,.lsl-tags{flex-wrap:wrap}

/* icon-box */
.lsl-ib .elementor-icon{border-radius:16px}
.lsl-ib .elementor-icon svg{fill:none;stroke:currentColor}
.lsl-ib .elementor-icon-box-title{margin:0 0 8px}
.lsl-ib .elementor-icon-box-description{margin:0}

/* hero */
.lsl-hero .lsl-hl{color:var(--lsl-glow);position:relative;white-space:nowrap}
.lsl-hero .lsl-hl::after{content:"";position:absolute;left:0;right:0;bottom:-.14em;height:.18em;
  background:url(/wp-content/uploads/lsl/lsl-underline.svg) center/100% 100% no-repeat}
.lsl-hero-h1 .elementor-heading-title{max-width:15ch;text-shadow:0 4px 30px rgba(4,12,28,.45)}

/* stats */
.lsl-stat{background:#fff;border-radius:22px;box-shadow:var(--lsl-shadow-sm);
  border:2px dashed rgba(240,167,30,.35);transition:transform .3s ease,box-shadow .3s ease}
.lsl-stat:hover{transform:translateY(-6px) rotate(-.5deg);box-shadow:var(--lsl-shadow)}
.lsl-stat .elementor-counter-number-wrapper,.lsl-num-static .elementor-heading-title{
  font-family:'Fraunces',serif;font-weight:700;font-size:2.6rem;color:var(--lsl-heading);line-height:1;
  display:flex;justify-content:center}
.lsl-num-static .elementor-heading-title em{font-style:normal;color:var(--lsl-gold-deep)}
.lsl-num-icon .elementor-icon svg{fill:none;stroke:currentColor;width:42px;height:42px}
.lsl-stat-lbl p{margin:0;font-weight:700;text-align:center}
@media(max-width:767px){.lsl-stat .elementor-counter-number-wrapper,.lsl-num-static .elementor-heading-title{font-size:2rem}}

/* two paths */
.lsl-path{border-radius:28px;box-shadow:var(--lsl-shadow);overflow:hidden;transition:transform .35s ease}
.lsl-path:hover{transform:translateY(-8px)}
.lsl-path-families{background:linear-gradient(160deg,#fff 0%,#fdf1da 100%);border:2px solid rgba(240,167,30,.25)}
.lsl-path-therapists{background:linear-gradient(160deg,#0d2a52 0%,#173f74 100%)}

/* feature + value + service + flex cards */
.lsl-feat{background:#fff;border-radius:22px;box-shadow:var(--lsl-shadow-sm);border-top:5px solid var(--lsl-gold);
  transition:transform .3s ease,box-shadow .3s ease}
.lsl-feat-2{border-top-color:var(--lsl-coral)}
.lsl-feat-3{border-top-color:var(--lsl-teal)}
.lsl-feat:hover{transform:translateY(-7px) rotate(.4deg);box-shadow:var(--lsl-shadow)}
.lsl-value{background:#fff;border-radius:22px;box-shadow:var(--lsl-shadow-sm);position:relative;
  overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}
.lsl-value::after{content:"";position:absolute;right:-24px;bottom:-24px;width:90px;height:90px;
  border-radius:50%;background:rgba(255,201,77,.13);transition:transform .4s ease}
.lsl-value:hover{transform:translateY(-6px);box-shadow:var(--lsl-shadow)}
.lsl-value:hover::after{transform:scale(1.7)}
.lsl-svc{background:#fff;border-radius:22px;box-shadow:var(--lsl-shadow-sm);border-left:6px solid var(--lsl-gold);
  transition:box-shadow .3s ease,transform .3s ease}
.lsl-svc:hover{box-shadow:var(--lsl-shadow);transform:translateY(-4px)}
.lsl-svc-coral{border-left-color:var(--lsl-coral)}
.lsl-svc-teal{border-left-color:var(--lsl-teal)}
.lsl-svc-sea{border-left-color:var(--lsl-sea)}
.lsl-flexcard{border-radius:22px;box-shadow:var(--lsl-shadow-sm);color:#fff;transition:transform .3s ease,box-shadow .3s ease}
.lsl-flexcard:hover{transform:translateY(-7px);box-shadow:var(--lsl-shadow)}
.lsl-flexcard-1{background:linear-gradient(150deg,#1a4a80,#0d2a52)}
.lsl-flexcard-2{background:linear-gradient(150deg,#2f9e99,#1d6f6b)}
.lsl-flex-row{max-width:780px;margin:0 auto}

/* CTA band */
.lsl-cta-wrap>.e-con-inner{background:linear-gradient(135deg,#0d2a52 0%,#1a4a80 60%,#20609b 100%);
  border-radius:34px;padding:64px 50px;box-shadow:0 24px 60px rgba(13,42,82,.35);position:relative;overflow:hidden}
.lsl-cta-wrap>.e-con-inner::before{content:"";position:absolute;left:-40px;top:-60px;width:280px;height:280px;
  opacity:.14;pointer-events:none;
  background:url(/wp-content/uploads/lsl/lsl-lighthouse-mark.svg) center/contain no-repeat}
.lsl-cta-copy{position:relative;z-index:2}
.lsl-cta-btn{position:relative;z-index:2;align-items:flex-end}
@media(max-width:767px){
  .lsl-cta-wrap>.e-con-inner{padding:46px 26px;border-radius:26px;text-align:center}
  .lsl-cta-copy .elementor-heading-title{text-align:center}
  .lsl-cta-btn{align-items:center}
}

/* about */
.lsl-mission{max-width:820px;margin:0 auto;background:linear-gradient(160deg,#fff,#fdf1da);
  border-radius:34px;box-shadow:var(--lsl-shadow);position:relative}
.lsl-mission::before{content:"\201C";position:absolute;top:6px;left:34px;font-family:'Fraunces',serif;
  font-size:7rem;color:rgba(240,167,30,.28);line-height:1}
.lsl-mq p{font-family:'Fraunces',serif;font-weight:500;line-height:1.55;margin:0;position:relative;z-index:2}
.lsl-founder-card{background:#fff;border-radius:28px;box-shadow:var(--lsl-shadow);
  border:2px dashed rgba(240,167,30,.4);position:relative;transform:rotate(1.2deg);transition:transform .35s ease}
.lsl-founder-card:hover{transform:rotate(0) translateY(-4px)}
.lsl-founder-card::before{content:"";position:absolute;top:-14px;left:50%;
  transform:translateX(-50%) rotate(-3deg);width:110px;height:28px;background:rgba(255,201,77,.55);border-radius:3px}
.lsl-founder-avatar img{width:120px;height:120px;border-radius:50%;box-sizing:border-box;padding:28px;
  background:radial-gradient(circle at 35% 30%,#fdeec9,#f7cf7c);border:4px solid #fff;box-shadow:var(--lsl-shadow-sm)}
.lsl-cred p{margin:0;font-weight:800}
@media(max-width:1024px){.lsl-founder-card{max-width:440px;margin:0 auto}}

/* services — stepping stones (tabs) */
.lsl-stones .elementor-tabs-wrapper{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;border:none}
.lsl-stones .elementor-tab-title{background:#fff;border:3px solid rgba(18,53,97,.16);border-radius:999px;
  padding:12px 22px;font-family:'Nunito',sans-serif;font-weight:800;font-size:.92rem;color:var(--lsl-text);
  box-shadow:var(--lsl-shadow-sm);transition:all .35s ease}
.lsl-stones .elementor-tab-title:hover{transform:translateY(-4px)}
.lsl-stones .elementor-tab-title.elementor-active{background:linear-gradient(135deg,var(--lsl-glow),var(--lsl-gold));
  border-color:var(--lsl-gold-deep);color:var(--lsl-ink);box-shadow:0 0 0 7px rgba(255,201,77,.22),0 10px 24px rgba(240,167,30,.4)}
.lsl-stones .elementor-tabs-content-wrapper{border:none}
.lsl-stones .elementor-tab-content{background:#fff;border:2px dashed rgba(240,167,30,.4);border-radius:22px;
  padding:30px 34px;box-shadow:var(--lsl-shadow);max-width:660px;margin:26px auto 0;text-align:center;
  font-size:1rem;color:var(--lsl-text)}
.lsl-stones .elementor-tab-mobile-title{background:#fff;border:3px solid rgba(18,53,97,.16);border-radius:18px;
  margin-bottom:10px;font-family:'Nunito',sans-serif;font-weight:800;color:var(--lsl-text)}
.lsl-stones .elementor-tab-mobile-title.elementor-active{background:linear-gradient(135deg,var(--lsl-glow),var(--lsl-gold));
  border-color:var(--lsl-gold-deep);color:var(--lsl-ink)}
.lsl-stones-sec{background:linear-gradient(180deg,var(--lsl-cream) 0%,#eaf3fb 55%,#dcebf8 100%)}

/* contact */
.lsl-form-card{background:#fff;border-radius:28px;box-shadow:var(--lsl-shadow)}
.lsl-form-note p{margin:0}
.lsl-info-card{background:linear-gradient(160deg,#0d2a52,#1a4a80);border-radius:28px;
  box-shadow:var(--lsl-shadow);color:#fff}
.lsl-info-list .elementor-icon-list-item{align-items:flex-start}
.lsl-info-list .elementor-icon-list-icon svg{fill:none;stroke:currentColor;width:20px;height:20px}
.lsl-info-list .elementor-icon-list-text{color:rgba(255,255,255,.86);font-size:.95rem;line-height:1.5}
.lsl-info-list a:hover .elementor-icon-list-text{color:var(--lsl-glow)}
.lsl-beacon p{margin:0;padding:16px 18px;border-radius:16px;background:rgba(255,201,77,.10);
  border:1px dashed rgba(255,201,77,.45)}
.lsl-map iframe{border-radius:24px;box-shadow:var(--lsl-shadow);display:block}
.lsl-faq{max-width:760px;margin:0 auto;width:100%}
.lsl-faq .elementor-accordion-item{background:#fff;border:none!important;border-radius:18px;
  box-shadow:var(--lsl-shadow-sm);margin-bottom:14px;overflow:hidden}
.lsl-faq .elementor-tab-title{padding:20px 24px;font-family:'Nunito',sans-serif;font-weight:800;
  font-size:1.02rem;color:var(--lsl-heading);border:none!important;background:transparent}
.lsl-faq .elementor-tab-content{padding:0 24px 20px;border:none!important;font-size:.97rem;color:var(--lsl-text)}
.lsl-faq .elementor-accordion-icon{color:var(--lsl-gold-deep)}
.lsl-faq .elementor-accordion-icon svg{width:16px;height:16px}

/* therapists — night */
.lsl-night h2,.lsl-night h3{color:#fff}
.lsl-boom{max-width:900px;margin:0 auto;border-radius:34px;
  background:linear-gradient(150deg,rgba(255,255,255,.08),rgba(255,255,255,.03));
  border:1px solid rgba(255,201,77,.35);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  box-shadow:0 24px 70px rgba(3,10,25,.5)}
.lsl-lamp .elementor-icon{background:radial-gradient(circle at 38% 32%,#fff4d3,var(--lsl-gold) 65%,var(--lsl-gold-deep))!important;
  box-shadow:0 0 46px rgba(255,201,77,.65);animation:lslHalo 3s ease-in-out infinite}
.lsl-lamp .elementor-icon svg{fill:none;stroke:currentColor}
@keyframes lslHalo{0%,100%{box-shadow:0 0 30px rgba(255,201,77,.5)}50%{box-shadow:0 0 62px rgba(255,201,77,.9)}}
.lsl-soon{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.14);border-radius:26px;
  transition:transform .3s ease,border-color .3s ease}
.lsl-soon:hover{transform:translateY(-6px);border-color:rgba(255,201,77,.45)}
.lsl-soon .elementor-icon-box-title{color:#fff}
.lsl-soon .elementor-icon-box-description{color:rgba(255,255,255,.85)}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;
    transition-duration:.01ms!important}
}

/* ---------- legal / long-form pages ---------- */
.lsl-legal .lsl-legal-intro,.lsl-legal .lsl-legal-card,
.lsl-legal .lsl-legal-body-col,.lsl-legal .lsl-legal-contact{max-width:760px;margin-left:auto;margin-right:auto}
.lsl-legal-body p{margin:0 0 1em}
.lsl-legal-body ul,.lsl-legal-tldr ul{margin:0 0 1em;padding-left:1.25em}
.lsl-legal-body li,.lsl-legal-tldr li{margin-bottom:.5em}
.lsl-legal-tldr ul{margin-bottom:0}
.lsl-legal-h .elementor-heading-title{padding-top:16px;border-top:2px dashed rgba(240,167,30,.35)}
.lsl-legal-card{border-left:6px solid var(--lsl-gold)}
.lsl-legal-body-col{gap:10px}

/* plain Gutenberg pages (Terms, Opt-out preferences) need a reading measure */
body:not(.elementor-page) .lsl-main{padding-top:0}
body:not(.elementor-page) .lsl-main>.entry-content{max-width:760px;margin:0 auto;padding:150px 24px 90px}
body:not(.elementor-page) .lsl-main>.entry-content h1{font-size:2.4rem;line-height:1.2;margin:0 0 .5em}
body:not(.elementor-page) .lsl-main>.entry-content h2{margin:1.6em 0 .5em}
body:not(.elementor-page) .lsl-main>.entry-content h3{margin:1.4em 0 .4em}
body:not(.elementor-page) .lsl-main>.entry-content p,
body:not(.elementor-page) .lsl-main>.entry-content li{margin-bottom:1em}
body:not(.elementor-page) .lsl-main>.entry-content a{color:var(--lsl-sea);font-weight:700}
@media(max-width:767px){
  body:not(.elementor-page) .lsl-main>.entry-content{padding:120px 18px 70px}
  body:not(.elementor-page) .lsl-main>.entry-content h1{font-size:1.9rem}
}

/* footer now has four columns */
.lsl-foot-grid{grid-template-columns:1.6fr 1fr 1fr 1fr}
@media(max-width:860px){.lsl-foot-grid{grid-template-columns:1fr 1fr;gap:34px}}
@media(max-width:640px){.lsl-foot-grid{grid-template-columns:1fr;gap:28px}}
/* NAVFIX:START */
/* ============ mobile navigation overlay fix ============ */
/* backdrop-filter on the header made it the containing block for the
   fixed-position nav overlay, trapping the overlay inside the header box.
   Move the blur onto a pseudo-element so the header stays a plain box. */
.lsl-header{background:transparent!important;-webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;box-shadow:none!important}
.lsl-header::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:rgba(10,30,60,.88);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);
  box-shadow:0 6px 24px rgba(5,15,35,.28)}

/* core paints the open overlay #fff unless the block carries .has-background,
   and its selector outranks ours — so state it explicitly. */
.lsl-nav .wp-block-navigation__responsive-container.is-menu-open{
  background-color:rgba(7,22,48,.97)!important;color:#fff!important;
  justify-content:center!important;align-items:center!important}
.lsl-nav .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-container-content{padding-top:0!important;width:100%}
.lsl-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
  align-items:center!important;gap:6px}
.lsl-nav .wp-block-navigation__responsive-container.is-menu-open a.wp-block-navigation-item__content{
  color:#fff!important;font-size:1.3rem;padding:14px 24px;display:block}
.lsl-nav .wp-block-navigation__responsive-container.is-menu-open
  .lsl-nav-cta a.wp-block-navigation-item__content{
  background:linear-gradient(135deg,var(--lsl-gold),var(--lsl-gold-deep));
  color:var(--lsl-ink)!important;margin-top:14px}
.lsl-nav .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-container-close{
  color:#fff!important;position:fixed!important;right:14px;top:14px;z-index:5;padding:10px!important}
.lsl-nav .wp-block-navigation__responsive-container-close svg{width:28px;height:28px}
.lsl-nav .wp-block-navigation__responsive-close,
.lsl-nav .wp-block-navigation__responsive-dialog{width:100%}

/* NAVFIX:END */
/* FIX2:START */
/* ---- stepping-stones tabs ----
   Elementor hides the desktop pill row below 768px and swaps in accordion
   titles; the .lsl-stones rule was outranking it, so both rendered. */
@media(max-width:767px){.lsl-stones .elementor-tabs-wrapper{display:none!important}}
/* ---- keep the fixed header clear of the WP admin bar when logged in ---- */
body.admin-bar .lsl-header{top:32px}
@media screen and (max-width:782px){body.admin-bar .lsl-header{top:46px}}

/* FIX2:END */
/* LSL:END */
