/* SIMS Landing Kit: form, sticky bar and animation polish for the Elementor landing page */
:root{--sims-ink:#0e2233;--sims-deep:#143149;--sims-mist:#eef4f8;--sims-line:#d3dfe8;--sims-muted:#4b5d6b;--sims-gold:#f5b82e;--sims-gold-d:#d99a0b;--sims-focus:#2f6fed;--sims-ease:cubic-bezier(.2,.7,.2,1)}
html{scroll-behavior:smooth}

/* progress bar */
.sims-progress{position:fixed;top:0;left:0;right:0;height:4px;z-index:99999;background:linear-gradient(90deg,var(--sims-gold),#ffd76a);transform:scaleX(0);transform-origin:0 50%}

/* buttons (also used by the sticky bar) */
.sims-btn,.sims-pulse .elementor-button,.sims-shine .elementor-button{position:relative;overflow:hidden}
.sims-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.6rem 1rem;border-radius:999px;border:2px solid transparent;font:600 .95rem/1 "Public Sans",system-ui,sans-serif;text-decoration:none;cursor:pointer;transition:transform .2s var(--sims-ease),box-shadow .2s,background .15s}
.sims-btn--gold{background:var(--sims-gold);color:var(--sims-ink)}
.sims-btn--gold:hover{background:var(--sims-gold-d);color:var(--sims-ink)}
.sims-btn--ink{background:var(--sims-ink);color:#fff}
.sims-btn--wa{background:#1f9d55;color:#fff}
.sims-btn:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.22)}
.sims-shine .elementor-button::after,.sims-pulse .elementor-button::after,.sims-btn--gold::after{content:"";position:absolute;top:0;left:-120%;width:60%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-20deg);transition:left .6s;pointer-events:none}
.sims-shine .elementor-button:hover::after,.sims-pulse .elementor-button:hover::after,.sims-btn--gold:hover::after{left:140%}
.sims-pulse .elementor-button{animation:simsPulse 2.4s ease-out 2s infinite}
@keyframes simsPulse{0%{box-shadow:0 0 0 0 rgba(245,184,46,.6)}70%{box-shadow:0 0 0 18px rgba(245,184,46,0)}100%{box-shadow:0 0 0 0 rgba(245,184,46,0)}}

/* hero */
.sims-hero-h1 .elementor-heading-title::after{content:"";display:block;height:5px;width:110px;margin-top:20px;background:linear-gradient(90deg,var(--sims-gold),#ffd76a);border-radius:3px;animation:simsGrow 1s var(--sims-ease) 1s both}
@keyframes simsGrow{from{width:0}to{width:110px}}
.sims-fact{transition:transform .3s var(--sims-ease)}
.sims-fact:hover{transform:translateY(-4px)}
.sims-fact:hover .sims-fact__v .elementor-heading-title{color:var(--sims-gold)!important}
.sims-fact__v .elementor-heading-title{transition:color .3s}

/* section headings: gold bar that draws in with the entrance animation */
.sims-h2 .elementor-heading-title::after{content:"";display:block;width:64px;height:5px;margin-top:16px;background:var(--sims-gold);border-radius:3px;transform-origin:left;transform:scaleX(0);transition:transform .8s var(--sims-ease) .3s}
.sims-h2.animated .elementor-heading-title::after,.elementor-editor-active .sims-h2 .elementor-heading-title::after{transform:scaleX(1)}

/* lists */
.sims-list .elementor-icon-list-item{transition:transform .3s var(--sims-ease)}
.sims-list .elementor-icon-list-item:hover{transform:translateX(8px)}
.sims-list .elementor-icon-list-item:hover .elementor-icon-list-text{color:#1d5f8f}
.sims-pills .elementor-icon-list-items{display:flex;flex-wrap:wrap;gap:10px}
.sims-pills .elementor-icon-list-item{background:#fff;border:1.5px solid var(--sims-line);border-radius:999px;padding:8px 18px;transition:transform .25s var(--sims-ease),border-color .25s,box-shadow .25s}
.sims-pills .elementor-icon-list-item:hover{transform:translateY(-4px);border-color:var(--sims-gold-d);box-shadow:0 8px 18px rgba(217,154,11,.25)}
.sims-req{transition:transform .3s var(--sims-ease)}
.sims-req:hover{transform:translateX(6px)}
.sims-callout .elementor-widget-container{position:relative;overflow:hidden}
.sims-callout .elementor-widget-container::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--sims-gold);animation:simsPulse 2.6s ease-out infinite}

/* gallery */
.sims-gal .elementor-widget-container{overflow:hidden;border-radius:14px;box-shadow:0 6px 18px rgba(14,34,51,.12);position:relative}
.sims-gal img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;transition:transform .8s var(--sims-ease),filter .4s}
.sims-gal:hover img{transform:scale(1.1) rotate(.6deg);filter:saturate(1.15)}
.sims-gal .elementor-widget-container::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(14,34,51,.45));opacity:0;transition:opacity .4s;pointer-events:none}
.sims-gal:hover .elementor-widget-container::after{opacity:1}
.sims-gal-top img{object-position:50% 25%}

/* closing band */
.sims-close{background:linear-gradient(120deg,#143149,#1d4a6b,#143149,#0e2233)!important;background-size:250% 250%!important;animation:simsDrift 14s ease infinite}
@keyframes simsDrift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}

/* footer links */
.sims-foot a{color:#fff;text-decoration:none}
.sims-foot a:hover{text-decoration:underline}
.sims-top a{color:var(--sims-ink);text-decoration:none;font-weight:500}
.sims-top a:hover{text-decoration:underline}

/* lead form */
.sims-form{background:rgba(255,255,255,.62);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.55);color:var(--sims-ink);border-radius:14px;padding:clamp(22px,3vw,34px);box-shadow:0 24px 60px rgba(0,0,0,.28);font-family:"Public Sans",system-ui,sans-serif;font-size:1rem;line-height:1.5}
.sims-form__title{font:800 1.6rem/1.1 "Bricolage Grotesque","Public Sans",sans-serif;margin:0 0 6px;color:var(--sims-ink)}
.sims-form__intro{font-size:.95rem;margin:0 0 20px;color:var(--sims-ink)}
.sims-field{margin-bottom:14px}
.sims-field label{display:block;font-weight:600;font-size:.92rem;margin-bottom:5px}
.sims-field input,.sims-field select{width:100%;min-height:48px;padding:.6rem .85rem;border:1.5px solid #b7c6d2;border-radius:10px;font:inherit;color:var(--sims-ink);background:rgba(255,255,255,.85);box-sizing:border-box;transition:border-color .2s,box-shadow .2s,transform .2s}
.sims-field input:focus,.sims-field select:focus{border-color:var(--sims-focus);outline:2px solid var(--sims-focus);outline-offset:0;transform:translateY(-1px);box-shadow:0 6px 16px rgba(47,111,237,.18)}
.sims-field--split{display:grid;gap:14px}
@media(min-width:520px){.sims-field--split{grid-template-columns:1fr 1fr}}
.sims-consent{display:flex;gap:10px;align-items:flex-start;font-size:.85rem;margin:6px 0 18px;line-height:1.5;color:var(--sims-ink)}
.sims-consent input{margin-top:3px;width:18px;height:18px;flex:none}
.sims-submit{width:100%;min-height:48px;font-size:1rem;border:0;animation:simsPulse 2.4s ease-out 2s infinite}
.sims-submit[disabled]{opacity:.7;cursor:wait;animation:none}
.sims-msg{min-height:0;margin:0 0 12px;font-weight:600}
.sims-msg--err{color:#b3261e}
.sims-msg--ok{color:#0b6b3a}
.sims-rc{font-size:.72rem;line-height:1.4;margin:10px 0 0;color:var(--sims-muted)}
.sims-rc a{color:inherit;text-decoration:underline}
.sims-thanks{text-align:center;padding:20px 0}
.sims-thanks strong{display:block;font:800 1.5rem/1.2 "Bricolage Grotesque",sans-serif;margin-bottom:8px}
.sims-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* mobile sticky bar */
.sims-sticky{position:fixed;inset:auto 0 0 0;z-index:9990;display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;padding:10px 12px;background:#fff;border-top:1px solid var(--sims-line);box-shadow:0 -6px 20px rgba(0,0,0,.08)}
@media(min-width:900px){.sims-sticky{display:none}}
@media(max-width:899px){body{padding-bottom:72px}}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .sims-h2 .elementor-heading-title::after{transform:none}
}
