/* Safeland theme — tokens from the Safeland Design System */

:root{
--gold-50:#FFF8E1;--gold-100:#FFEDB3;--gold-200:#FFE07A;--gold-300:#FFD13D;--gold-400:#FFC20E;--gold-500:#E6A800;--gold-600:#B88600;--gold-700:#8A6400;
--blue-50:#E5F7FE;--blue-100:#B8EAFC;--blue-200:#7FD8F8;--blue-300:#3FC4F4;--blue-400:#00AEEF;--blue-500:#0092CC;--blue-600:#0074A3;--blue-700:#00587C;
--ink-950:#07090C;--ink-900:#0E1217;--ink-800:#161B22;--ink-700:#232A33;--ink-600:#3A434F;--ink-500:#5B6573;--ink-400:#8590A0;--ink-300:#B4BCC7;--ink-200:#D8DDE3;--ink-100:#ECEFF2;--ink-50:#F6F7F9;--white:#FFFFFF;
--red-500:#D92D20;--red-100:#FDE4E2;--amber-500:#F08C00;--amber-100:#FFF0D6;--green-500:#12955A;--green-100:#DDF4E8;
--brand-primary:var(--gold-400);--brand-primary-hover:var(--gold-300);--brand-primary-press:var(--gold-500);
--brand-secondary:var(--blue-400);--brand-secondary-hover:var(--blue-500);
--brand-black:var(--ink-950);
--surface-page:var(--white);--surface-subtle:var(--ink-50);--surface-card:var(--white);--surface-sunken:var(--ink-100);
--surface-inverse:var(--ink-950);--surface-inverse-raised:var(--ink-800);--surface-overlay:rgba(7,9,12,.64);
--text-strong:var(--ink-950);--text-body:var(--ink-700);--text-muted:var(--ink-500);--text-disabled:var(--ink-300);
--text-on-inverse:var(--white);--text-on-inverse-muted:var(--ink-300);--text-on-gold:var(--ink-950);--text-link:var(--blue-600);--text-link-hover:var(--blue-700);--text-accent-on-dark:var(--gold-400);
--border-subtle:var(--ink-200);--border-strong:var(--ink-400);--border-inverse:var(--ink-700);--border-focus:var(--blue-400);
--status-critical:var(--red-500);--status-critical-bg:var(--red-100);
--status-elevated:var(--amber-500);--status-elevated-bg:var(--amber-100);
--status-secure:var(--green-500);--status-secure-bg:var(--green-100);
--status-info:var(--blue-500);--status-info-bg:var(--blue-50);
}
:root{
--font-display:'Archivo','Helvetica Neue',Arial,sans-serif;
--font-body:'Source Sans 3','Segoe UI',Arial,sans-serif;
--font-mono:'IBM Plex Mono',ui-monospace,Menlo,monospace;
--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-black:800;
--text-display-xl:72px;--text-display-l:56px;--text-display-m:44px;
--text-h1:36px;--text-h2:28px;--text-h3:22px;--text-h4:18px;
--text-body-l:18px;--text-body:16px;--text-body-s:14px;--text-caption:12px;--text-overline:12px;
--leading-tight:1.05;--leading-snug:1.2;--leading-normal:1.5;--leading-relaxed:1.65;
--tracking-display:-0.02em;--tracking-normal:0;--tracking-overline:0.14em;
--type-heading-family:var(--font-display);--type-body-family:var(--font-body);--type-data-family:var(--font-mono);
}
:root{
--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;
--container-max:1200px;--container-pad:24px;--header-h:72px;
--radius-0:0;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-pill:999px;
--radius-control:var(--radius-sm);--radius-card:var(--radius-md);--radius-dialog:var(--radius-lg);
--border-w:1px;--border-w-strong:2px;--rule-gold:3px solid var(--gold-400);
--shadow-0:none;
--shadow-1:0 1px 2px rgba(7,9,12,.08),0 1px 1px rgba(7,9,12,.04);
--shadow-2:0 4px 12px -2px rgba(7,9,12,.10),0 2px 4px rgba(7,9,12,.06);
--shadow-3:0 16px 40px -8px rgba(7,9,12,.22),0 4px 10px rgba(7,9,12,.08);
--focus-ring:0 0 0 3px rgba(0,174,239,.40);
--ease-standard:cubic-bezier(.2,0,0,1); 
--ease-exit:cubic-bezier(.4,0,1,1); 
--dur-fast:120ms; 
--dur-base:180ms; 
--dur-slow:280ms; 
--z-header:50; 
--z-overlay:90; 
--z-dialog:100; 
--z-toast:110; 
--z-tooltip:120; 
}

/* ---------- Base ---------- */
:root{--ease:cubic-bezier(.2,0,0,1)}
body.safeland{margin:0;background:#fff;color:var(--text-body);font-family:var(--font-body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
body.safeland a{color:var(--blue-600)}
body.safeland a:hover{color:var(--blue-700)}
.safeland img{max-width:100%;height:auto}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.sl-main{max-width:1200px;margin:0 auto;padding:150px 24px 96px}
.sl-main h1{font:800 44px/1.1 var(--font-display);letter-spacing:-.02em;color:var(--ink-950);margin:0 0 24px}
.sl-main h2,.sl-main h3{font-family:var(--font-display);color:var(--ink-950)}

/* ---------- Buttons (theme-rendered) ---------- */
.sl-button{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 18px;border-radius:4px;font:700 15px/1 var(--font-display);text-decoration:none!important;background:var(--gold-400);color:var(--ink-950)!important;border:0;cursor:pointer;transition:background 120ms var(--ease),transform 120ms var(--ease);white-space:nowrap}
.sl-button:hover{background:var(--gold-300)}
.sl-button:active{background:var(--gold-500);transform:translateY(1px)}
.sl-button--lg{height:52px;padding:0 24px;font-size:16px}

/* ---------- Header ---------- */
.sl-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:16px 24px 0;pointer-events:none}
.admin-bar .sl-header{top:32px}
@media (max-width:782px){.admin-bar .sl-header{top:46px}}
.sl-header__bar{pointer-events:auto;position:relative;max-width:1248px;margin:0 auto;height:68px;box-sizing:border-box;background:var(--ink-950);border:1px solid var(--ink-800);border-radius:6px;box-shadow:var(--shadow-3);display:flex;align-items:center;gap:28px;padding:0 12px 0 16px}
.sl-brand{display:flex;align-items:center;gap:12px;text-decoration:none!important;flex:none}
.sl-brand img{height:44px;width:auto;display:block}
.sl-brand__text{display:flex;flex-direction:column;gap:3px}
.sl-brand__name{font:800 18px/1 var(--font-display);color:#fff;letter-spacing:-.01em}
.sl-brand__tag{font:600 9px/1.4 var(--font-display);color:var(--gold-400);letter-spacing:.2em}
.sl-nav{margin:0 auto}
.sl-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:24px}
.sl-nav li{position:relative}
.sl-nav a{display:block;font:600 13px/1 var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-200)!important;text-decoration:none!important;padding:8px 0;border-bottom:2px solid transparent;transition:color 180ms var(--ease),border-color 180ms var(--ease)}
.sl-nav a:hover{color:#fff!important}
.sl-nav .current-menu-item>a,.sl-nav .current_page_item>a{color:var(--gold-400)!important;border-bottom-color:var(--gold-400)}
.sl-nav .sub-menu{display:none;position:absolute;top:100%;left:-16px;min-width:240px;flex-direction:column;gap:0;padding:8px;background:var(--ink-950);border:1px solid var(--ink-800);border-radius:6px;box-shadow:var(--shadow-3)}
.sl-nav li:hover>.sub-menu,.sl-nav li:focus-within>.sub-menu{display:flex}
.sl-nav .sub-menu a{padding:10px 12px;border:0;text-transform:none;letter-spacing:0;font-size:14px}
.sl-menu-toggle{display:none;width:40px;height:40px;margin-left:auto;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:transparent;border:1.5px solid var(--ink-700);border-radius:4px;cursor:pointer}
.sl-menu-toggle span:not(.screen-reader-text){display:block;width:18px;height:2px;background:#fff}
@media (max-width:1180px){
  .sl-menu-toggle{display:flex}
  .sl-nav{display:none;position:absolute;top:76px;left:0;right:0;margin:0}
  .sl-nav.is-open{display:block}
  .sl-nav ul{flex-direction:column;gap:0;padding:8px;background:var(--ink-950);border:1px solid var(--ink-800);border-radius:6px;box-shadow:var(--shadow-3)}
  .sl-nav a{padding:14px 12px;border:0}
  .sl-nav .sub-menu{display:flex;position:static;border:0;box-shadow:none;padding:0 0 0 12px}
}
@media (max-width:640px){.sl-header__bar>.sl-button{display:none}.sl-brand__tag{display:none}.sl-header{padding:10px 12px 0}}

/* ---------- Footer ---------- */
.sl-cta{position:relative;background:var(--ink-950) center/cover no-repeat;border-top:3px solid var(--gold-400);overflow:hidden}
.sl-cta::before{content:"";position:absolute;inset:0;background:rgba(7,9,12,.82)}
.sl-cta__inner{position:relative;max-width:1200px;margin:0 auto;padding:88px 24px;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}
.sl-cta__text{max-width:680px}
.sl-cta h2{margin:18px 0 0;font:800 40px/1.12 var(--font-display);letter-spacing:-.02em;color:#fff}
.sl-cta p{margin:14px 0 0;color:var(--ink-300);font-size:17px}
.sl-overline{display:flex;align-items:center;gap:12px;font:700 12px/1.4 var(--font-display);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-400)}
.sl-overline::before{content:"";width:32px;height:3px;background:var(--gold-400);flex:none}
.sl-footer{background:var(--ink-950);border-top:1px solid var(--ink-800)}
.sl-footer__grid{max-width:1200px;margin:0 auto;padding:64px 24px 40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:48px}
.sl-footer__brand img{height:76px;width:auto}
.sl-footer__brand p{margin:16px 0 0;color:var(--ink-400);font-size:15px;line-height:1.55;max-width:300px}
.sl-footer h4{margin:0 0 14px;font:700 12px var(--font-display);letter-spacing:.14em;color:var(--gold-400)}
.sl-footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.sl-footer ul a{color:var(--ink-300)!important;text-decoration:none!important;font-size:15px;transition:color 180ms var(--ease)}
.sl-footer ul a:hover{color:#fff!important}
.sl-footer .sub-menu{display:none}
.sl-footer__contact li{display:flex;gap:10px;align-items:flex-start;color:var(--ink-300);font-size:15px}
.sl-footer__contact svg{flex:none;margin-top:3px;color:var(--gold-400)}
.sl-footer__bottom{max-width:1200px;margin:0 auto;padding:20px 24px;border-top:1px solid var(--ink-800);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font:500 12px var(--font-mono);color:var(--ink-500);text-transform:uppercase}

/* ---------- Elementor layout primitives ---------- */
.e-con[class*=" sl-"],.e-con[class^="sl-"]{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--gap:0px;--row-gap:0px;--column-gap:0px}
.e-con.sl-sec{padding:104px 24px!important}
.e-con.sl-alt{background-color:var(--ink-50)}
.e-con.sl-dark{background-color:var(--ink-950)}
.e-con.sl-bordered{border-top:1px solid var(--ink-200)}
.e-con.sl-wrap{max-width:1200px!important;width:100%!important;margin-left:auto!important;margin-right:auto!important}
.e-con.sl-stack{gap:18px!important}
.e-con.sl-stack-sm{gap:4px!important;flex:1 1 auto}
.e-con.sl-stack-lg{gap:44px!important}
.e-con.sl-row{flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;gap:12px 28px!important}
.e-con.sl-pt{margin-top:14px}
.e-con.sl-row>.elementor-widget,.e-con.sl-head-row>.elementor-widget{width:auto!important}
.e-con.sl-head-row{flex-direction:row!important;flex-wrap:wrap!important;justify-content:space-between!important;align-items:flex-end!important;gap:24px 32px!important}
.sl-max-620{max-width:620px!important}.sl-max-440{max-width:440px!important}.sl-max-420{max-width:420px!important}
.e-con.sl-split{--display:grid;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px!important;align-items:center}
.e-con.sl-split-start{align-items:start}
.e-con.sl-grid-2,.e-con.sl-grid-3,.e-con.sl-grid-4,.e-con.sl-grid-5,.e-con.sl-industries{--display:grid;display:grid!important}
.e-con.sl-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px!important}
.e-con.sl-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px!important}
.e-con.sl-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px!important}
.e-con.sl-grid-5{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px!important}
.e-con.sl-sticky{position:sticky!important;top:120px}
@media (max-width:1024px){
  .e-con.sl-grid-3,.e-con.sl-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .e-con.sl-grid-5{grid-template-columns:repeat(3,minmax(0,1fr))}
  .e-con.sl-split{gap:48px!important}
}
@media (max-width:767px){
  .e-con.sl-sec{padding:72px 20px!important}
  .e-con.sl-split,.e-con.sl-grid-2,.e-con.sl-grid-3,.e-con.sl-grid-4,.e-con.sl-industries{grid-template-columns:minmax(0,1fr)}
  .e-con.sl-grid-5{grid-template-columns:repeat(2,minmax(0,1fr))}
  .e-con.sl-sticky{position:static!important}
}
@media (min-width:768px){.e-con.sl-split-rev>:first-child{order:2}}

/* ---------- Type ---------- */
.safeland .elementor-widget-heading .elementor-heading-title{margin:0}
.sl-eyebrow .elementor-heading-title{display:flex;align-items:center;gap:12px;font:700 12px/1.4 var(--font-display)!important;letter-spacing:.14em!important;text-transform:uppercase;color:var(--gold-600)!important}
.sl-eyebrow .elementor-heading-title::before{content:"";width:32px;height:3px;background:var(--gold-400);flex:none}
.sl-dark .sl-eyebrow .elementor-heading-title{color:var(--gold-400)!important}
.sl-h1 .elementor-heading-title{font:800 64px/1.03 var(--font-display)!important;letter-spacing:-.025em!important;color:#fff!important;text-wrap:balance}
.sl-page-hero .sl-h1 .elementor-heading-title{font-size:56px!important}
.sl-accent{color:var(--gold-400)}
.sl-h2 .elementor-heading-title{font:800 42px/1.1 var(--font-display)!important;letter-spacing:-.02em!important;color:var(--ink-950)!important;text-wrap:balance}
.sl-dark .sl-h2 .elementor-heading-title{color:#fff!important}
.sl-h3 .elementor-heading-title{font:700 21px/1.2 var(--font-display)!important;color:var(--ink-950)!important}
.sl-h4 .elementor-heading-title{font:700 18px/1.3 var(--font-display)!important;color:var(--ink-950)!important}
.sl-h5 .elementor-heading-title{font:700 17px/1.25 var(--font-display)!important;color:var(--ink-950)!important}
.sl-h6 .elementor-heading-title{font:700 15px/1.4 var(--font-display)!important;color:var(--ink-950)!important}
.sl-on-dark .elementor-heading-title{color:#fff!important}
.sl-mono .elementor-heading-title{font:500 12px/1.4 var(--font-mono)!important;letter-spacing:.06em!important;color:var(--ink-400)!important}
.sl-dark .sl-mono .elementor-heading-title,.sl-on-dark.sl-mono .elementor-heading-title{color:var(--ink-300)!important}
.safeland .elementor-widget-text-editor p{margin:0 0 12px}
.safeland .elementor-widget-text-editor p:last-child{margin-bottom:0}
.sl-lead{font-size:18px;line-height:1.6;color:var(--ink-200)!important;max-width:560px}
.sl-body{font-size:17px;line-height:1.65;color:var(--text-body)!important}
.sl-body strong{color:var(--ink-900)}
.sl-body-s{font-size:15px;line-height:1.55;color:var(--text-body)!important}
.sl-dark .sl-body,.sl-dark .sl-body-s,.sl-muted-dark{color:var(--ink-300)!important}
.sl-crumbs{font:500 13px/1.4 var(--font-mono);color:var(--ink-300)!important;text-transform:uppercase;letter-spacing:.04em}
.sl-crumbs a{color:var(--gold-400)!important;text-decoration:none}
.sl-crumbs span{margin:0 6px}
@media (max-width:767px){
  .sl-h1 .elementor-heading-title,.sl-page-hero .sl-h1 .elementor-heading-title{font-size:40px!important}
  .sl-h2 .elementor-heading-title{font-size:32px!important}
}

/* ---------- Elementor buttons ---------- */
.safeland .sl-btn .elementor-button{display:inline-flex;align-items:center;height:44px;padding:0 20px;border-radius:4px;border:1.5px solid transparent;font:700 15px/1 var(--font-display);background:var(--gold-400);color:var(--ink-950);fill:var(--ink-950);transition:background 120ms var(--ease),color 120ms var(--ease),transform 120ms var(--ease)}
.safeland .sl-btn .elementor-button:hover{background:var(--gold-300);color:var(--ink-950)}
.safeland .sl-btn .elementor-button:active{transform:translateY(1px)}
.safeland .sl-btn .elementor-button-content-wrapper{gap:8px}
.safeland .sl-btn .elementor-button-icon svg{width:13px;height:13px}
.safeland .sl-btn-lg .elementor-button{height:52px;padding:0 24px;font-size:16px}
.safeland .sl-btn-dark .elementor-button{background:var(--ink-950);color:#fff;fill:#fff}
.safeland .sl-btn-dark .elementor-button:hover{background:var(--ink-800);color:#fff}
.safeland .sl-btn-inverse .elementor-button{background:transparent;border-color:#fff;color:#fff;fill:#fff}
.safeland .sl-btn-inverse .elementor-button:hover{background:#fff;color:var(--ink-950)}
.safeland .sl-btn-outline .elementor-button{background:transparent;border-color:var(--ink-950);color:var(--ink-950);fill:var(--ink-950)}
.safeland .sl-btn-outline .elementor-button:hover{background:var(--ink-50);color:var(--ink-950)}

/* ---------- Icons ---------- */
.safeland .sl-icon .elementor-icon-wrapper{line-height:0;text-align:left}
.safeland .sl-icon .elementor-icon{font-size:28px;color:var(--blue-500);fill:var(--blue-500)}
.safeland .sl-icon .elementor-icon svg{width:28px;height:28px}
.safeland .sl-icon-gold .elementor-icon{color:var(--gold-400);fill:var(--gold-400)}
.safeland .sl-d-gold .sl-icon .elementor-icon{color:var(--ink-950);fill:var(--ink-950)}
.safeland .sl-icon-sm .elementor-icon{font-size:18px}.safeland .sl-icon-sm .elementor-icon svg{width:18px;height:18px}
.safeland .sl-icon-lg .elementor-icon{font-size:36px}.safeland .sl-icon-lg .elementor-icon svg{width:36px;height:36px}
.safeland .sl-icon-box{width:auto!important;flex:none}
.safeland .sl-icon-box .elementor-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--ink-50);border:1px solid var(--ink-200);border-radius:4px;font-size:20px}
.safeland .sl-alt .sl-icon-box .elementor-icon{background:#fff}
.safeland .sl-icon-box .elementor-icon svg{width:20px;height:20px}

/* ---------- Icon lists ---------- */
.safeland .elementor-icon-list-icon svg{width:16px;height:16px}
.sl-hero-labels .elementor-icon-list-items{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.sl-hero-labels .elementor-icon-list-item{margin:0!important;padding:10px 18px 10px 10px!important;background:var(--ink-900);border:1px solid var(--ink-700);border-radius:6px;box-shadow:var(--shadow-3)}
.sl-hero-labels .elementor-icon-list-item:nth-child(2){margin-right:40px!important}
.sl-hero-labels .elementor-icon-list-item:nth-child(3){margin-right:80px!important}
.sl-hero-labels .elementor-icon-list-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--ink-800);border-radius:4px;margin-right:12px}
.sl-hero-labels .elementor-icon-list-icon i{color:var(--gold-400)!important;font-size:16px}
.sl-hero-labels .elementor-icon-list-icon svg{fill:var(--gold-400)!important}
.sl-hero-labels .elementor-icon-list-text{font:700 14px var(--font-display);color:#fff!important;padding:0!important}
.e-con.sl-hero-grid{align-items:end}
.e-con.sl-hero{padding-top:210px!important;padding-bottom:150px!important}
.e-con.sl-page-hero{padding-top:180px!important;padding-bottom:80px!important}
@media (max-width:1024px){.e-con.sl-hero-side{display:none!important}.e-con.sl-hero{padding-top:170px!important;padding-bottom:110px!important}}
.e-con.sl-strip{background:var(--ink-50);border-bottom:1px solid var(--ink-200);padding:30px 24px!important}
.sl-sectors .elementor-icon-list-items{display:flex!important;flex-wrap:wrap;justify-content:space-between;gap:18px 28px}
.sl-sectors .elementor-icon-list-item{margin:0!important;padding:0!important}
.sl-sectors .elementor-icon-list-item::after{display:none!important}
.sl-sectors .elementor-icon-list-icon i{color:var(--ink-400)!important;font-size:20px}
.sl-sectors .elementor-icon-list-icon svg{fill:var(--ink-400)!important;width:20px;height:20px}
.sl-sectors .elementor-icon-list-text{font:700 17px var(--font-display);color:var(--ink-600)!important;padding-left:10px!important}
.sl-checks .elementor-icon-list-item{padding:6px 0!important;margin:0!important}
.sl-checks .elementor-icon-list-icon i{color:var(--blue-500)!important;font-size:16px}
.sl-checks .elementor-icon-list-icon svg{fill:var(--blue-500)!important}
.sl-checks .elementor-icon-list-text{font-size:16px;color:var(--ink-800)!important;padding-left:10px!important}
.sl-chips .elementor-icon-list-items{display:flex!important;flex-wrap:wrap;gap:8px}
.sl-chips .elementor-icon-list-item{margin:0!important;padding:6px 12px!important;border:1px solid var(--ink-200);background:#fff;border-radius:4px}
.sl-chips .elementor-icon-list-item::after{display:none!important}
.sl-chips .elementor-icon-list-text{font:500 12px var(--font-mono);color:var(--ink-700)!important;text-transform:uppercase;padding:0!important}
.sl-chips-dark .elementor-icon-list-item{background:var(--ink-950);border-color:var(--ink-950)}
.sl-chips-dark .elementor-icon-list-text{color:#fff!important}
.sl-bullets .elementor-icon-list-items{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;border-top:1px solid var(--ink-200)}
.sl-bullets .elementor-icon-list-item{margin:0!important;padding:12px 0!important;border-bottom:1px solid var(--ink-200)}
.sl-bullets .elementor-icon-list-icon i{color:var(--gold-400)!important;font-size:6px}
.sl-bullets .elementor-icon-list-icon svg{fill:var(--gold-400)!important;width:6px!important;height:6px!important}
.sl-bullets .elementor-icon-list-text{font-size:15px;color:var(--ink-800)!important;padding-left:12px!important}
@media (max-width:767px){.sl-bullets .elementor-icon-list-items{grid-template-columns:1fr}}

/* ---------- Cards & media ---------- */
.e-con.sl-card{background:#fff;border:1px solid var(--ink-200);border-radius:6px;box-shadow:var(--shadow-1);padding:26px 24px!important;gap:14px!important;text-decoration:none!important;color:inherit!important;transition:transform 180ms var(--ease),box-shadow 180ms var(--ease)}
.e-con.sl-card-link:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}
.e-con.sl-card-top{flex-direction:row!important;justify-content:space-between!important;align-items:flex-start!important;margin-bottom:6px}
.e-con.sl-card-top>.elementor-widget{width:auto!important}
.sl-more .elementor-heading-title{margin-top:8px!important;font:700 14px var(--font-display)!important;color:var(--ink-950)!important}
.sl-more .elementor-heading-title::after{content:" \2192"}
.e-con.sl-photo-card{position:relative;min-height:440px;border-radius:6px;overflow:hidden;justify-content:flex-end!important;padding-right:24px!important;background-color:var(--ink-900);box-shadow:var(--shadow-1);text-decoration:none!important;transition:transform 180ms var(--ease),box-shadow 180ms var(--ease)}
.e-con.sl-photo-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}
.sl-card-num{position:absolute!important;top:22px;left:24px;width:auto!important;z-index:2}
.sl-card-num .elementor-heading-title{font:500 12px var(--font-mono)!important;color:var(--gold-400)!important}
.e-con.sl-card-panel{position:relative;z-index:2;background:var(--ink-950);border-top:3px solid var(--gold-400);padding:26px 24px!important;gap:10px!important}
.sl-img img{display:block;width:100%;height:auto!important;aspect-ratio:4/5;object-fit:cover;border-radius:6px;filter:saturate(.6)}
.sl-img-wide img{aspect-ratio:4/3}
.sl-img-tall img{aspect-ratio:3/4}
.e-con.sl-media{position:relative;padding-left:90px!important}
.e-con.sl-float-card{position:absolute!important;left:0;bottom:40px;width:230px!important;z-index:2;background:var(--ink-950);border-top:3px solid var(--gold-400);border-radius:6px;box-shadow:var(--shadow-3);padding:22px!important;gap:14px!important}
@media (max-width:767px){.e-con.sl-media{padding-left:0!important}.e-con.sl-float-card{left:16px;bottom:16px}}
.e-con.sl-media-tag{position:relative}
.e-con.sl-img-tag{position:absolute!important;left:0;bottom:0;width:auto!important;z-index:2;flex-direction:row!important;align-items:center!important;gap:10px!important;padding:14px 18px!important;background:var(--ink-950);border-top:3px solid var(--gold-400);border-radius:0 6px 0 6px}
.e-con.sl-img-tag>.elementor-widget{width:auto!important}
.e-con.sl-rows{border-top:1px solid var(--ink-200);margin-top:10px}
.e-con.sl-feature-row{flex-direction:row!important;flex-wrap:nowrap!important;gap:18px!important;padding:20px 0!important;border-bottom:1px solid var(--ink-200);align-items:flex-start!important}
.e-con.sl-d-card{padding:30px 26px!important;gap:14px!important;background:var(--ink-800);border:1px solid var(--ink-700);border-radius:6px}
.e-con.sl-d-gold{background:var(--gold-400);border-color:var(--gold-400)}
.sl-d-title .elementor-heading-title{font:800 30px/1 var(--font-display)!important;letter-spacing:-.02em!important;color:#fff!important}
.sl-d-title .elementor-heading-title::after{content:"";display:block;height:3px;margin-top:18px;background:linear-gradient(to right,var(--gold-400) var(--pct,25%),var(--ink-700) var(--pct,25%))}
.sl-bar-25{--pct:25%}.sl-bar-50{--pct:50%}.sl-bar-75{--pct:75%}.sl-bar-100{--pct:100%}
.sl-d-gold .sl-d-title .elementor-heading-title{color:var(--ink-950)!important}
.sl-d-gold .sl-d-title .elementor-heading-title::after{background:var(--ink-950)}
.sl-d-gold .sl-mono .elementor-heading-title{color:var(--ink-800)!important}
.safeland .sl-dark .sl-d-gold .sl-body-s{color:var(--ink-900)!important}
.e-con.sl-industries{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px!important;border-top:1px solid var(--ink-200)}
.sl-industry .elementor-heading-title{font:700 17px/1.3 var(--font-display)!important}
.sl-industry .elementor-heading-title a{display:flex;align-items:center;gap:16px;padding:20px 0;border-bottom:1px solid var(--ink-200);color:var(--ink-950)!important;text-decoration:none;transition:padding 180ms var(--ease),border-color 180ms var(--ease)}
.sl-industry .elementor-heading-title a:hover{padding-left:10px;border-bottom-color:var(--gold-400)}
.sl-industry .elementor-heading-title a::after{content:"\2197";margin-left:auto;color:var(--gold-600)}
.sl-num{font:500 12px var(--font-mono);color:var(--ink-400);width:22px;flex:none}
.sl-logo{height:120px;background:#fff;border:1px solid var(--ink-200);border-radius:6px;box-shadow:var(--shadow-1);display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box;transition:transform 180ms var(--ease),box-shadow 180ms var(--ease)}
.sl-logo:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}
.sl-logo img{max-height:84px;width:auto!important;aspect-ratio:auto!important;object-fit:contain;filter:none;border-radius:0}
.e-con.sl-tile{flex-direction:row!important;align-items:center!important;gap:12px!important;padding:14px 16px!important;background:var(--ink-800);border:1px solid var(--ink-700);border-radius:6px}
.e-con.sl-tile>.elementor-widget{width:auto!important}
.sl-tile-title .elementor-heading-title{font:700 15px var(--font-display)!important;color:#fff!important}
.e-con.sl-def{border-top:1px solid var(--ink-200)}
.e-con.sl-def-row{--display:grid;display:grid!important;grid-template-columns:180px minmax(0,1fr);gap:16px!important;padding:14px 0!important;border-bottom:1px solid var(--ink-200)}
@media (max-width:767px){.e-con.sl-def-row{grid-template-columns:1fr;gap:4px!important}}

/* ---------- Shortcodes ---------- */
.sl-phone-link{display:inline-flex;align-items:center;gap:10px;font:700 16px var(--font-display);color:var(--ink-950)!important;text-decoration:none!important}
.sl-phone-link svg{color:var(--blue-500)}
.sl-contact{list-style:none;margin:10px 0 0;padding:0;border-top:1px solid var(--ink-200)}
.sl-contact li{display:flex;gap:16px;align-items:flex-start;padding:18px 0;border-bottom:1px solid var(--ink-200)}
.sl-contact__ico{width:44px;height:44px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--ink-50);border:1px solid var(--ink-200);border-radius:4px;color:var(--blue-500)}
.sl-contact small{display:block;font:500 11px var(--font-mono);letter-spacing:.08em;color:var(--ink-500);text-transform:uppercase}
.sl-contact strong,.sl-contact a{font:700 17px/1.4 var(--font-display);color:var(--ink-950)!important;text-decoration:none}
.e-con.sl-form-card{padding:32px!important;gap:20px!important;border-top:3px solid var(--gold-400)}
.sl-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.sl-form .sl-field{display:flex;flex-direction:column;gap:6px}
.sl-form .sl-field--full{grid-column:1/-1}
.sl-form label{font:600 14px var(--font-body);color:var(--ink-900)}
.sl-form input,.sl-form select,.sl-form textarea{font:16px var(--font-body);color:var(--ink-950);background:#fff;border:1px solid var(--ink-300);border-radius:4px;padding:10px 12px;min-height:44px;box-sizing:border-box;width:100%;transition:border-color 120ms var(--ease),box-shadow 120ms var(--ease)}
.sl-form textarea{min-height:140px;resize:vertical}
.sl-form input:focus,.sl-form select:focus,.sl-form textarea:focus{outline:0;border-color:var(--ink-950);box-shadow:var(--focus-ring)}
.sl-form .sl-hp{position:absolute;left:-9999px}
.sl-form .sl-form__foot{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.sl-form .sl-form__note{font-size:13px;color:var(--ink-500)}
.sl-notice{grid-column:1/-1;padding:12px 14px;border-radius:4px;font-size:15px}
.sl-notice--ok{background:var(--green-100);color:#0b5e39}
.sl-notice--err{background:var(--red-100);color:#8f1d14}
@media (max-width:640px){.sl-form{grid-template-columns:1fr}}

/* ---------- Motion (brand: short, small translate, no bounce) ---------- */
@keyframes slFadeUp{from{opacity:0;transform:translate3d(0,16px,0)}to{opacity:1;transform:none}}
.elementor-element.animated.fadeInUp{animation-name:slFadeUp!important;animation-duration:.48s!important;animation-timing-function:cubic-bezier(.2,0,0,1)!important}
@media (prefers-reduced-motion:reduce){.elementor-element.animated{animation:none!important}.elementor-invisible{visibility:visible!important}}

/* ---------- v1.1: Industries / Our Approach / Insights ---------- */
.e-con.sl-grid-6{--display:grid;display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px!important}
@media (max-width:1100px){.e-con.sl-grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.e-con.sl-grid-6{grid-template-columns:repeat(2,minmax(0,1fr))}}
.e-con.sl-gap-20{gap:20px!important}
.e-con.sl-split-wide-right{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}
@media (max-width:767px){.e-con.sl-split-wide-right{grid-template-columns:minmax(0,1fr)}}
.e-con.sl-steps{border-top:1px solid var(--ink-200)}
.e-con.sl-step{--display:grid;display:grid!important;grid-template-columns:56px minmax(0,1fr);gap:20px!important;padding:26px 0!important;border-bottom:1px solid var(--ink-200)}
.sl-step-num .elementor-heading-title{width:56px;height:56px;display:flex!important;align-items:center;justify-content:center;background:var(--ink-950);border-radius:4px;font:800 18px/1 var(--font-display)!important;color:var(--gold-400)!important}
.sl-step-gold .sl-step-num .elementor-heading-title{background:var(--gold-400);color:var(--ink-950)!important}
.sl-step-title .elementor-heading-title{font:800 24px/1.2 var(--font-display)!important;letter-spacing:-.01em!important;color:var(--ink-950)!important;margin-bottom:6px!important}
.e-con.sl-note-box{margin-top:12px;padding:16px 18px!important;gap:4px!important;background:var(--ink-50);border:1px solid var(--ink-200);border-radius:6px}
.e-con.sl-note-box .sl-chips .elementor-icon-list-items{margin-top:8px}
.sl-flow .elementor-heading-title{margin-top:6px!important;font:600 13px/1.8 var(--font-mono)!important;letter-spacing:.04em!important;color:var(--gold-400)!important}
.sl-flow-light .elementor-heading-title{color:var(--ink-700)!important}
.sl-mono-gold .elementor-heading-title{color:var(--gold-600)!important}
.sl-dark .sl-mono-gold .elementor-heading-title{color:var(--gold-400)!important}
.sl-label-gold .elementor-heading-title{font:700 12px var(--font-display)!important;letter-spacing:.14em!important;color:var(--gold-400)!important}
.e-con.sl-top-gold{border-top:3px solid var(--gold-400)!important}
.e-con.sl-tile-light{background:#fff;border-color:var(--ink-200);box-shadow:var(--shadow-1)}
.sl-bullets-1 .elementor-icon-list-items{grid-template-columns:1fr!important}
.e-con.sl-card-dark{padding:40px!important;gap:18px!important;background:var(--ink-950);border-top:3px solid var(--gold-400);border-radius:6px;box-shadow:var(--shadow-3)}
.sl-h2-sm .elementor-heading-title{font-size:32px!important;line-height:1.15!important}
.sl-card-dark .sl-body,.sl-featured .sl-body{color:var(--ink-300)!important}
.sl-center .elementor-heading-title{text-align:center}
/* Insights */
.e-con.sl-featured{--display:grid;display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);background:var(--ink-950);border-radius:6px;overflow:hidden;box-shadow:var(--shadow-2);text-decoration:none!important;transition:transform 180ms var(--ease),box-shadow 180ms var(--ease)}
.e-con.sl-featured:hover{transform:translateY(-2px);box-shadow:var(--shadow-3)}
.sl-img-fill,.sl-img-fill .elementor-widget-container{height:100%}
.sl-img-fill img{height:100%!important;min-height:360px;aspect-ratio:auto!important;border-radius:0!important}
.e-con.sl-featured-body{padding:44px 40px!important;gap:18px!important;border-top:3px solid var(--gold-400)}
.sl-badge-gold .elementor-heading-title{padding:5px 10px;background:var(--gold-400);border-radius:4px;font:500 11px var(--font-mono)!important;letter-spacing:.06em!important;color:var(--ink-950)!important}
.sl-more-gold .elementor-heading-title{color:var(--gold-400)!important}
@media (max-width:767px){.e-con.sl-featured{grid-template-columns:minmax(0,1fr)}.sl-img-fill img{min-height:240px}}
.e-con.sl-filters{gap:8px!important;margin-top:20px}
.sl-filter-count{margin-left:auto!important}
.safeland .sl-filter-btn .elementor-button{height:36px;padding:0 14px;background:#fff;border:1px solid var(--ink-200);color:var(--ink-700);font:600 14px/1 var(--font-display)}
.safeland .sl-filter-btn .elementor-button:hover{background:var(--ink-50);color:var(--ink-950)}
.safeland .sl-filter-btn.is-active .elementor-button{background:var(--ink-950);border-color:var(--ink-950);color:#fff}
.e-con.sl-art-card{background:#fff;border:1px solid var(--ink-200);border-radius:6px;overflow:hidden;box-shadow:var(--shadow-1);text-decoration:none!important;transition:transform 180ms var(--ease),box-shadow 180ms var(--ease)}
.e-con.sl-art-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}
.e-con.sl-art-media{position:relative}
.sl-img-card img{aspect-ratio:16/10!important;border-radius:0!important;filter:saturate(.55)}
.sl-art-tag{position:absolute!important;left:16px;top:16px;width:auto!important;z-index:2}
.sl-art-tag .elementor-heading-title{padding:5px 10px;background:var(--ink-950);border-radius:4px;font:500 11px var(--font-mono)!important;letter-spacing:.06em!important;color:var(--gold-400)!important}
.e-con.sl-art-body{padding:24px!important;gap:12px!important;flex-grow:1}
.e-con.sl-art-body .sl-more{margin-top:auto}
.sl-is-hidden{display:none!important}

/* ---------- v1.2: Contact cards + office map ---------- */
.sl-org{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:18px 22px;margin-bottom:20px;background:var(--ink-50);border:1px solid var(--ink-200);border-radius:6px}
.sl-org small,.sl-ccard small{font:500 11px var(--font-mono);letter-spacing:.08em;color:var(--ink-500);text-transform:uppercase}
.sl-org strong{font:800 18px var(--font-display);color:var(--ink-950)}
.sl-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media (max-width:1024px){.sl-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.sl-contact-grid{grid-template-columns:1fr}}
.sl-ccard{display:flex;flex-direction:column;gap:12px;padding:28px 26px;background:#fff;border:1px solid var(--ink-200);border-top:3px solid var(--gold-400);border-radius:6px;box-shadow:var(--shadow-1)}
.sl-ccard small{color:var(--gold-600);margin-top:6px}
.sl-ccard__top{display:flex;justify-content:space-between;align-items:flex-start}
.sl-ccard__ico{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--ink-950);border-radius:4px;color:var(--gold-400)}
.sl-ccard__num{font:500 12px var(--font-mono);color:var(--ink-400)}
.sl-ccard p{margin:0;font:700 18px/1.45 var(--font-display);color:var(--ink-950)}
.sl-ccard__link{margin-top:auto;padding-top:6px;display:inline-flex;align-items:center;gap:6px;font:700 14px var(--font-display);color:var(--ink-950)!important;text-decoration:none!important}
.sl-ccard__phones{border-top:1px solid var(--ink-200)}
.sl-ccard__phones a{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--ink-200);font:700 18px var(--font-display);color:var(--ink-950)!important;text-decoration:none!important}
.sl-ccard__phones a:hover{color:var(--blue-600)!important}
.sl-ccard__phones svg{color:var(--blue-500)}
.sl-ccard__note{margin-top:auto;font-size:14px;color:var(--ink-500)}
.sl-map-wrap{display:flex;flex-direction:column;gap:16px}
.sl-map-tabs{display:flex;flex-wrap:wrap;gap:8px}
.sl-map-tabs button{height:40px;padding:0 16px;border:1px solid var(--ink-950);border-radius:4px;background:#fff;color:var(--ink-800);font:700 14px var(--font-display);cursor:pointer;transition:background 120ms var(--ease),color 120ms var(--ease)}
.sl-map-tabs button:hover{background:var(--ink-50)}
.sl-map-tabs button.is-active{background:var(--ink-950);color:#fff}
.sl-map{border-radius:6px;overflow:hidden;border:1px solid var(--ink-200);box-shadow:var(--shadow-2);background:var(--ink-100)}
@media (max-width:640px){.sl-map{height:420px!important}}
.sl-pin{position:relative;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--ink-950);border:3px solid var(--gold-400);border-radius:4px;box-shadow:0 8px 20px -4px rgba(7,9,12,.45);font:800 15px/1 var(--font-display);color:var(--gold-400);box-sizing:border-box}
.sl-pin::after{content:"";position:absolute;left:50%;bottom:-9px;margin-left:-6px;border:6px solid transparent;border-top-color:var(--gold-400);border-bottom:0}
.sl-map .leaflet-popup-content-wrapper{border-radius:6px;border-top:3px solid var(--gold-400);box-shadow:var(--shadow-3)}
.sl-map .leaflet-popup-content{margin:14px 16px;font:15px/1.45 var(--font-body);color:var(--ink-700)}
.sl-map .leaflet-popup-content small{display:block;font:500 11px var(--font-mono);letter-spacing:.08em;color:var(--gold-600);margin-bottom:6px}
.sl-map .leaflet-popup-content a{color:var(--blue-600)}
.sl-list-rows .elementor-icon-list-items{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;border-top:1px solid var(--ink-200)}
.sl-list-rows .elementor-icon-list-item{margin:0!important;padding:18px 0!important;border-bottom:1px solid var(--ink-200)}
.sl-list-rows .elementor-icon-list-text{font:700 16px var(--font-display);color:var(--ink-950)!important;padding-left:12px!important}
.sl-list-rows .elementor-icon-list-icon i{color:var(--gold-600)!important;font-size:12px}
.sl-list-rows .elementor-icon-list-icon svg{fill:var(--gold-600)!important;width:12px;height:12px}
@media (max-width:640px){.sl-list-rows .elementor-icon-list-items{grid-template-columns:1fr}}
