/* Swachha Parisara Prathistana – site styles for interactions Elementor has no native control for.
   Colours, fonts, spacing and text stay editable in Elementor; this file only adds behaviour and decoration. */
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{overflow-x:hidden}
.spp-d{display:none}
@media(min-width:1025px){.spp-d{display:inline}}
.spp-shadow .elementor-heading-title,.spp-shadow p{text-shadow:0 2px 14px rgba(0,0,0,.35)}
.spp-maxw{max-width:64ch}
@media(max-width:560px){.spp-cta>.elementor-widget-button{width:100%}.spp-cta .elementor-button{width:100%}}

/* ---------- Header: fixed, transparent over the green hero ---------- */
body:not(.elementor-editor-active) .ekit-template-content-header{position:fixed;top:0;left:0;right:0;z-index:999}
body.admin-bar:not(.elementor-editor-active) .ekit-template-content-header{top:32px}
@media(max-width:782px){body.admin-bar:not(.elementor-editor-active) .ekit-template-content-header{top:46px}}
.spp-header{transition:background-color .3s,border-color .3s}
.spp-logo .elementor-widget-image{width:100%}
.spp-logo-light{display:none}
body.spp-top .spp-header{background-color:transparent!important;border-color:transparent!important}
body.spp-top .spp-logo-dark{display:none}
body.spp-top .spp-logo-light{display:block}
.spp-nav .elementskit-navbar-nav>li>a{border-bottom:2px solid transparent}
.spp-nav .elementskit-navbar-nav>li.current-menu-item>a,.spp-nav .elementskit-navbar-nav>li>a:hover{border-bottom-color:#5A9B5A}
@media(min-width:1025px){
 .spp-nav .elementskit-menu-container{background:transparent!important}
 body.spp-top .spp-nav .elementskit-navbar-nav>li>a{color:#fff!important}
 body.spp-top .spp-nav .elementskit-navbar-nav>li.current-menu-item>a,body.spp-top .spp-nav .elementskit-navbar-nav>li>a:hover{border-bottom-color:#fff}
 body.spp-top .spp-hb-solid .elementor-button{background-color:#fff!important;border-color:#fff!important;color:#2D5A3D!important}
 body.spp-top .spp-hb-outline .elementor-button{border-color:#fff!important;color:#fff!important}
 body.spp-top .spp-hb-outline .elementor-button:hover{background-color:#fff!important;color:#2D5A3D!important}
}
@media(max-width:1024px){
 .spp-nav .elementskit-menu-hamburger{background:transparent!important;width:44px;height:44px;padding:0;display:grid;place-items:center}
 .spp-nav .elementskit-menu-hamburger svg{width:20px;height:20px}
 body.spp-top .spp-nav .elementskit-menu-hamburger{border-color:rgba(255,255,255,.6)!important}
 body.spp-top .spp-nav .elementskit-menu-hamburger svg{fill:#fff!important}
 body.spp-top .spp-nav .elementskit-menu-hamburger i{color:#fff!important}
}

/* ---------- Home: how it works ---------- */
.spp-how{background:radial-gradient(circle at 88% 15%,rgba(90,155,90,.2),transparent 42%),radial-gradient(circle at 5% 95%,rgba(201,169,97,.16),transparent 40%),#fff!important;overflow:hidden}
.spp-st{position:relative;overflow:hidden;cursor:pointer;opacity:.85;transition:opacity .35s,translate .35s,box-shadow .35s,border-color .35s}
.spp-st .elementor-widget-icon{transition:transform .35s}
.spp-st.on{opacity:1;translate:8px 0;box-shadow:0 14px 34px -16px rgba(45,90,61,.45);border-color:#5A9B5A!important}
.spp-st.on .elementor-widget-icon{transform:scale(1.08) rotate(-6deg)}
.spp-st.on::after{content:"";position:absolute;left:0;bottom:0;height:4px;width:0;background:linear-gradient(90deg,#5A9B5A,#C9A961);animation:spp-pg 5s linear forwards}
.spp-sts:hover .spp-st.on::after{animation-play-state:paused}
@keyframes spp-pg{to{width:100%}}
.spp-phone-wrap{position:relative;display:grid;place-items:center;width:100%;min-height:600px}
.spp-phone-wrap .ph2{position:relative;width:280px;height:560px;border-radius:40px;background:#fff;border:10px solid #1c2b22;box-shadow:0 40px 70px -30px rgba(0,0,0,.55);overflow:hidden;color:#2D5A3D;font-family:Poppins,Verdana,sans-serif;animation:spp-fl 6s ease-in-out infinite}
@keyframes spp-fl{50%{transform:translateY(-10px) rotate(.6deg)}}
.spp-phone-wrap .nt{position:absolute;top:0;left:50%;width:90px;height:20px;margin-left:-45px;background:#1c2b22;border-radius:0 0 14px 14px;z-index:3}
.spp-phone-wrap .sc{position:absolute;inset:0;padding:38px 16px 16px;display:flex;flex-direction:column;gap:12px;opacity:0;transform:translateX(30px) scale(.97);transition:.5s;pointer-events:none;background:linear-gradient(#fff,#F3ECDC)}
.spp-phone-wrap .sc.on{opacity:1;transform:none}
.spp-phone-wrap .sh{font:700 15px Montserrat,Arial,sans-serif;text-align:center}
.spp-phone-wrap .shot{position:relative;height:150px;border-radius:16px;background:#dfeedd;overflow:hidden;display:grid;place-items:center}
.spp-phone-wrap .shot svg{width:150px}
.spp-phone-wrap .sc.on .shot svg{animation:spp-bob 2s ease-in-out infinite}
@keyframes spp-bob{50%{transform:translateY(-6px)}}
.spp-phone-wrap .cap{font-size:13px;text-align:center;line-height:1.4}
.spp-phone-wrap .cap small,.spp-phone-wrap .cl small{color:#666}
.spp-phone-wrap .chs{display:flex;gap:8px;justify-content:center}
.spp-phone-wrap .chs span{padding:7px 12px;border-radius:99px;border:1px solid #5A9B5A;font-size:12px;font-weight:600}
.spp-phone-wrap .chs .sel{background:#2D5A3D;color:#fff;border-color:#2D5A3D}
.spp-phone-wrap .cb{margin-top:auto;text-align:center;padding:13px;border-radius:12px;background:#2D5A3D;color:#fff;font:600 14px Montserrat,Arial,sans-serif}
.spp-phone-wrap .sc.on .cb{animation:spp-pu 1.6s ease-in-out infinite}
@keyframes spp-pu{50%{transform:scale(1.04);box-shadow:0 0 0 8px rgba(90,155,90,.25)}}
.spp-phone-wrap .map{position:relative;width:228px;height:230px;margin:0 auto;border-radius:16px;background:linear-gradient(135deg,#e3efe0,#d2e6cd);overflow:hidden;flex:none}
.spp-phone-wrap .map>svg{position:absolute;inset:0}
.spp-phone-wrap .rt{fill:none;stroke:#2D5A3D;stroke-width:3;stroke-dasharray:4 7;stroke-linecap:round}
.spp-phone-wrap .sc.on .rt{animation:spp-da 1s linear infinite}
@keyframes spp-da{to{stroke-dashoffset:-22}}
.spp-phone-wrap .rg{transform-box:fill-box;transform-origin:center}
.spp-phone-wrap .sc.on .rg{animation:spp-rg 1.5s ease-out infinite}
@keyframes spp-rg{to{transform:scale(2.4);opacity:0}}
.spp-phone-wrap .tk{position:absolute;left:0;top:0;width:30px;height:30px;margin:-15px 0 0 -15px;border-radius:50%;background:#C9A961;display:grid;place-items:center;color:#1F3A28;offset-path:path('M24 200C70 160 40 100 112 98S190 70 206 30');offset-rotate:0deg;offset-distance:0}
.spp-phone-wrap .sc.on .tk{animation:spp-mv 4s ease-in-out forwards}
@keyframes spp-mv{to{offset-distance:100%}}
.spp-phone-wrap .pill{align-self:center;padding:8px 16px;border-radius:99px;background:#2D5A3D;color:#fff;font-size:13px;font-weight:600}
.spp-phone-wrap .cl{display:flex;gap:10px;align-items:center;font-size:13px;margin-top:auto;padding:12px;border-radius:14px;background:#fff;box-shadow:0 4px 14px -6px rgba(0,0,0,.3)}
.spp-phone-wrap .av{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#5A9B5A;color:#fff;font-weight:700;flex:none}
.spp-phone-wrap .pts{position:relative;text-align:center;padding:14px 0 8px}
.spp-phone-wrap .pts b{display:block;font:700 56px/1 Montserrat,Arial,sans-serif}
.spp-phone-wrap .pts span{font-size:13px;color:#555}
.spp-phone-wrap .cn{position:absolute;left:50%;top:50%;width:12px;height:12px;border-radius:50%;background:#C9A961;opacity:0}
.spp-phone-wrap .sc.on .cn{animation:spp-cn 1.6s ease-out infinite;animation-delay:var(--d)}
@keyframes spp-cn{0%{opacity:1;transform:translate(0,0)}100%{opacity:0;transform:translate(var(--x),-80px)}}
.spp-phone-wrap .rw{display:flex;justify-content:space-between;align-items:center;padding:11px 14px;border-radius:12px;background:#fff;box-shadow:0 4px 12px -6px rgba(0,0,0,.3);font-size:13px;font-weight:600}
.spp-phone-wrap .rw em{font-style:normal;background:#E8DCC4;border-radius:99px;padding:3px 10px;font-size:11px}
.spp-phone-wrap .sc.on .rw{animation:spp-si .5s both;animation-delay:calc(var(--n)*.2s + .4s)}
@keyframes spp-si{from{opacity:0;transform:translateX(24px)}}
.spp-phone-wrap .fl{position:absolute;z-index:2;padding:9px 16px;border-radius:14px;background:#fff;color:#2D5A3D;font:600 13px Montserrat,Arial,sans-serif;box-shadow:0 16px 30px -12px rgba(0,0,0,.35);animation:spp-fl2 5s ease-in-out infinite}
.spp-phone-wrap .f1{left:2%;top:90px}
.spp-phone-wrap .f2{right:2%;bottom:110px;animation-delay:-2.5s;background:#C9A961;color:#1F3A28}
@keyframes spp-fl2{50%{transform:translateY(-14px)}}
@media(max-width:1024px){
 .spp-how-l{display:contents!important}
 .spp-how-l>.elementor-widget-heading{order:1}.spp-how-l>.elementor-widget-text-editor{order:2}.spp-how-r{order:3}.spp-sts{order:4}
 .spp-phone-wrap{min-height:0;height:476px}.spp-phone-wrap .ph2{zoom:.82}
 .spp-st:not(.on) .spp-st-d{display:none}.spp-st.on{translate:none}.spp-st{align-items:center!important}.spp-st.on{align-items:flex-start!important}
}
@media(max-width:559px){.spp-phone-wrap .fl{display:none}}

/* ---------- Home: counters ---------- */
.spp-counter .elementor-counter{text-align:center}
.spp-counter .elementor-counter-number-wrapper{justify-content:center}

/* ---------- About: core values bento ---------- */
.spp-bento>.b1{grid-column:span 2;grid-row:span 2}
.spp-bento>.b2{grid-column:span 2}
.spp-bt{position:relative;overflow:hidden;box-shadow:0 2px 10px rgba(0,0,0,.1);transition:translate .35s,box-shadow .35s}
.spp-bt:hover{translate:0 -4px;box-shadow:0 18px 34px -18px rgba(0,0,0,.4)}
.spp-bt>.elementor-widget{position:relative;z-index:1}
.spp-bt>.elementor-widget-html:first-child{position:absolute!important;left:28px;top:28px;width:auto}
.spp-av3{display:flex}
.spp-av3 i{width:46px;height:46px;border-radius:50%;margin-right:-12px;border:3px solid #2D5A3D;background:var(--c)}
.spp-bars{display:flex;align-items:flex-end;gap:7px;height:110px}
.spp-bt.b2>.elementor-widget-html:first-child{left:auto;right:28px}
.spp-bars i{width:13px;height:var(--h);border-radius:7px 7px 3px 3px;background:linear-gradient(#5A9B5A,#2D5A3D)}
.spp-deco{position:absolute!important;right:-14px;top:-14px;width:auto!important;opacity:.14;transform:rotate(18deg);z-index:0!important}
.spp-bt.b4>.elementor-widget-html:first-child{left:auto;right:18px;top:18px}
.spp-route{width:110px;display:block}
.spp-route path{fill:none;stroke:#7FB069;stroke-width:2.5;stroke-dasharray:4 6}
@media(max-width:1024px){.spp-bento>.b1{grid-row:auto}}
@media(max-width:767px){.spp-bento>.b1,.spp-bento>.b2{grid-column:auto}.spp-bars{height:84px}}

/* ---------- Programs: four engines (hover to open) ---------- */
.spp-eng{align-items:stretch}
.spp-eng>.spp-en{position:relative;overflow:hidden;flex:1 1 0!important;width:auto!important;min-width:0;height:540px;cursor:pointer;transition:flex .6s cubic-bezier(.3,.7,.2,1),filter .3s}
.spp-eng>.spp-en.on{flex:5 1 0!important;cursor:default}
.spp-en:not(.on):hover{filter:brightness(1.08)}
.spp-en>.elementor-widget,.spp-en>.e-con{position:relative;z-index:1}
.spp-en>.spp-wmk{position:absolute!important;right:-30px;bottom:-40px;width:auto!important;opacity:.13;pointer-events:none;z-index:0}
.spp-eh{cursor:pointer;flex-wrap:nowrap!important}
.spp-en:not(.on)>.spp-eh{flex:1;flex-direction:column!important;align-items:flex-start!important}
.spp-en:not(.on) .spp-lb{margin-top:auto}
.spp-en:not(.on) .spp-lb .elementor-heading-title{writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap;font-size:17px}
@supports (writing-mode:sideways-lr){.spp-en:not(.on) .spp-lb .elementor-heading-title{writing-mode:sideways-lr;transform:none}}
.spp-en.on .spp-lb .elementor-heading-title{padding:6px 14px;border-radius:99px;background:rgba(255,255,255,.2)}
.spp-en>.spp-eb{display:none;margin-top:auto;max-width:100%}
.spp-en.on>.spp-eb{display:flex;animation:spp-ebin .5s .12s both}
@keyframes spp-ebin{from{opacity:0;transform:translateY(16px)}}
.spp-eb-em p{opacity:.85;margin-bottom:8px}
@media(max-width:1024px){
 .spp-eng>.spp-en,.spp-eng>.spp-en.on{flex:none!important;width:100%!important;height:auto;transition:none}
 .spp-en:not(.on)>.spp-eh{flex:none;flex-direction:row!important;align-items:center!important}
 .spp-en:not(.on) .spp-lb{margin-top:0}
 .spp-en:not(.on) .spp-lb .elementor-heading-title{writing-mode:horizontal-tb!important;transform:none;font-size:16px}
 .spp-eh::after{content:"+";margin-left:auto;font:400 28px/1 Montserrat,Arial,sans-serif;color:#fff}
 .spp-en.on .spp-eh::after{content:"–"}
 .spp-en:nth-child(4) .spp-eh::after{color:#1F3A28}
 .spp-en>.spp-eb{margin-top:4px}
 .spp-en.on>.spp-eb{animation:none}
 .spp-en>.spp-wmk .elementor-icon{font-size:200px!important}.spp-en>.spp-wmk svg{width:200px!important;height:200px!important}
}
/* keep every engine's text visible while editing in Elementor */
body.elementor-editor-active .spp-en>.spp-eb{display:flex!important}
body.elementor-editor-active .spp-eng>.spp-en{height:auto;flex:1 1 0!important}

/* ---------- Technology ---------- */
.spp-chips{display:flex;flex-wrap:wrap;gap:10px}
.spp-chips span{padding:8px 16px;border-radius:99px;border:1px solid #5A9B5A;font:600 14px Poppins,sans-serif;color:#3A3A3A}
.spp-big{border-left:4px solid #C9A961;padding-left:20px;max-width:70ch}

/* ---------- Impact ---------- */
.spp-donut{width:180px;height:180px;border-radius:50%;margin:0 auto 20px;background:conic-gradient(#2D5A3D 0 45%,#5A9B5A 45% 70%,#1E6091 70% 90%,#C9A961 90% 100%);-webkit-mask:radial-gradient(circle 54px,transparent 98%,#000 100%);mask:radial-gradient(circle 54px,transparent 98%,#000 100%)}
.spp-lgd{list-style:none;margin:0;padding:0;display:grid;gap:6px;font:400 16px Poppins,sans-serif;color:#3A3A3A}
.spp-lgd li:before{content:"";display:inline-block;width:14px;height:14px;border-radius:3px;margin-right:10px;vertical-align:-2px;background:var(--c)}

/* ---------- Get involved cards ---------- */
.spp-pc .elementor-widget-image img{width:100%;height:170px;object-fit:cover;display:block}
.spp-pc-b>.elementor-widget-text-editor{flex:1}

/* ---------- Contact ---------- */
.elementor-widget-icon-box .elementor-icon-box-description a{color:#2D5A3D}
.spp-faq .elementor-toggle-item{border-radius:12px;overflow:hidden;border:1px solid rgba(58,58,58,.18)}
.spp-faq .elementor-tab-title,.spp-faq .elementor-tab-content{border:0!important}

/* ---------- MetForm forms ---------- */
.metform-form-content .mf-input-wrapper .mf-input:focus{border-color:#5A9B5A!important;box-shadow:0 0 0 1px #5A9B5A}
.spp-nl .mf-input-wrapper label{display:none}
.spp-nl>.elementor-widget-mf-email{flex:1 1 auto;min-width:0}
.spp-nl>.elementor-widget-mf-button{flex:none}
.spp-nl .mf-btn-wraper,.spp-nl .metform-btn{white-space:nowrap}

/* ---------- Footer ---------- */
.spp-footer .elementor-widget-text-editor a{color:#fff!important}
.spp-maxw{max-width:64ch!important}
.spp-footer .elementor-widget-image img{background:#fff}
@media(max-width:767px){
 .spp-fgrid>.spp-fcol{padding-bottom:14px!important;border-bottom:1px solid rgba(255,255,255,.15)}
 .spp-fgrid>.spp-fcol:last-child{border:0}
 .spp-fbrand{flex-direction:row!important;align-items:center}
 .spp-fbrand .elementor-widget-image{flex:none;width:auto}
 .spp-fbrand p{font-size:12.5px;margin:0}
 .spp-flinks .elementor-icon-list-items{display:flex;flex-wrap:wrap;gap:6px 16px}
 .spp-flinks .elementor-icon-list-item{margin:0!important;padding:0!important}
 .spp-footer .elementor-widget-heading .elementor-heading-title{font-size:16px!important}
}

/* respect reduced motion */
@media(prefers-reduced-motion:reduce){.spp-st.on::after{animation:none;width:100%}.spp-phone-wrap *{animation:none!important}.spp-eng>.spp-en{transition:none}}

/* Match original text rhythm: Elementor margins control spacing, so paragraphs add none of their own */
.elementor-widget-text-editor p{margin-top:0;max-width:70ch}
.elementor-widget-text-editor p:last-child{margin-bottom:0}
.elementor-widget-icon-box .elementor-icon-box-description{margin:0}
.elementor-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;line-height:1.25}
.spp-hbtns .elementor-button{min-height:44px}
.elementor-button .elementor-button-content-wrapper{justify-content:center}
.spp-pc>.spp-pc-b{flex:1 1 auto}
/* mobile rhythm matching the original */
@media(max-width:1024px){.spp-how>.e-con{gap:18px!important}.spp-how-l>.elementor-widget{margin:0!important}.spp-sts{padding-top:6px!important}}
.elementor-widget-icon-box .elementor-icon-box-title:has(>span:empty),.elementor-widget-icon-box .elementor-icon-box-title:empty{display:none}
@media(max-width:767px){.elementor-widget-icon-box .elementor-icon-box-wrapper{display:flex!important;flex-direction:row!important;align-items:center;text-align:left!important;gap:14px}.elementor-widget-icon-box .elementor-icon-box-icon{margin:0!important;flex:none}}.elementor-widget-icon .elementor-icon-wrapper{line-height:0}
@media(max-width:767px){
 .spp-bt.b2>.elementor-widget-html:first-child{position:static!important;margin-bottom:6px}
 .spp-bt.b2 .spp-bars{height:84px}
 .spp-phone-wrap{height:447px}
}
/* ---------- Header (identical to the original HTML) ---------- */
.spp-header{position:relative;padding-left:clamp(20px,calc((100vw - 1200px)/2),120px)!important;padding-right:clamp(20px,calc((100vw - 1200px)/2),120px)!important}
.spp-header>.spp-logo{width:auto!important;flex:none!important}
.spp-logo img{height:56px!important;width:auto!important;max-width:none;display:block}
.spp-burger-w{margin-left:auto!important;width:auto!important;flex:none!important}
.spp-burger,.spp-burger:hover,.spp-burger:focus{width:48px;height:48px;padding:0;display:grid;place-items:center;border:1px solid rgba(58,58,58,.18);border-radius:8px;background:none;color:#2D5A3D;font-size:24px;line-height:1;cursor:pointer}
.spp-header>.spp-menu{display:none!important;flex:1 1 auto!important;align-items:center;gap:20px!important;flex-wrap:wrap!important}
.spp-header.open>.spp-menu{display:flex!important;flex-direction:column!important;align-items:stretch!important;position:absolute;left:0;right:0;top:100%;background:#fff;padding:16px 20px 24px!important;border-bottom:1px solid rgba(58,58,58,.18);z-index:5}
.spp-nav-w{flex:1 1 auto!important;width:auto!important}
.spp-mainnav{display:flex;flex-direction:column;gap:4px;flex:1}
.spp-mainnav a{white-space:nowrap;font:500 16px/1 Montserrat,Arial,sans-serif;text-decoration:none;color:#3A3A3A;padding:10px 4px;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}
.spp-mainnav a:hover,.spp-mainnav a[aria-current]{color:#2D5A3D;border-color:#5A9B5A}
.spp-menu>.spp-bg2{display:flex!important;flex-direction:row!important;gap:10px!important;flex-wrap:wrap!important;width:auto!important}
.spp-bg2 .elementor-button{min-height:44px;padding:8px 16px}
@media(min-width:1280px){
 .spp-burger-w{display:none!important}
 .spp-header>.spp-menu,.spp-header.open>.spp-menu{display:flex!important;flex-direction:row!important;position:static;padding:0!important;border:0;align-items:center!important;flex-wrap:nowrap!important;gap:12px!important;background:none}
 .spp-mainnav{flex-direction:row;justify-content:center;gap:0}
 .spp-mainnav a{padding:9px}
 .spp-menu>.spp-bg2{flex:none!important;flex-wrap:nowrap!important;gap:8px!important}
 .spp-bg2 .elementor-button{padding:8px 14px;white-space:nowrap}
}
@media(max-width:767px){.spp-logo img{height:36px!important}.spp-burger,.spp-burger:hover,.spp-burger:focus{width:42px;height:42px;font-size:20px}}
body.spp-top .spp-mainnav a{color:#fff}
body.spp-top .spp-mainnav a:hover,body.spp-top .spp-mainnav a[aria-current]{color:#fff;border-color:#fff}
body.spp-top .spp-burger{color:#fff;border-color:rgba(255,255,255,.55)}
body.spp-top .spp-hb-solid .elementor-button{background-color:#fff!important;border-color:#fff!important;color:#2D5A3D!important}
body.spp-top .spp-hb-outline .elementor-button{border-color:#fff!important;color:#fff!important}
body.spp-top .spp-hb-outline .elementor-button:hover{background-color:#fff!important;color:#2D5A3D!important}

/* ---------- Leadership cards ---------- */
.spp-leader{transition:translate .3s,box-shadow .3s}
.spp-leader:hover{translate:0 -4px;box-shadow:0 18px 34px -20px rgba(20,38,26,.35)}
@media(max-width:767px){.spp-leader{min-height:0!important}}
.spp-header .spp-burger,.spp-header .spp-burger:hover,.spp-header .spp-burger:focus{background:transparent!important;color:#2D5A3D!important;border:1px solid rgba(58,58,58,.18)!important;padding:0!important;border-radius:8px!important;box-shadow:none!important;font-family:Arial,sans-serif!important;line-height:1!important;text-align:center}
body.spp-top .spp-header .spp-burger{color:#fff!important;border-color:rgba(255,255,255,.55)!important}
.spp-header .spp-burger:focus-visible{outline:3px solid #C9A961;outline-offset:2px}

@media(min-width:1280px){.spp-mainnav a{padding:9px 6px}.spp-nav-w{min-width:0}}

/* Hero: keep video + green overlay on stable GPU layers so the overlay never flickers while scrolling */
/* still beach photo directly under the video: if the browser drops the video layer for a frame while scrolling, the same scene shows instead of a flash of solid green */
.spp-hero{background:#1e3527 url(/wp-content/uploads/2026/10/spp-hero.jpg) center/cover no-repeat!important}
.spp-hero>.elementor-background-video-container{z-index:0}
.spp-hero::before{transition:none!important;z-index:1}
.spp-hero>.e-con,.spp-hero>.e-con-inner{position:relative;z-index:2}
.spp-hero>.elementor-shape{z-index:3}

/* ---------- WCAG 2.1 AA contrast fixes ---------- */
.spp-st{opacity:.85}
.spp-st.on{opacity:1}

.metform-form-content .mf-input::placeholder,.metform-form-content textarea::placeholder{color:#6B6B6B!important;opacity:1}
.metform-form-content .mf-input-select .mf_select__placeholder,.metform-form-content [class*=placeholder]{color:#6B6B6B!important}
.metform-form-content .mf-input-required-indicator{color:#C62828!important}
/* ---------- Brand kit v1.0 compliance ---------- */
.spp-header>.spp-logo{width:180px!important}
.spp-logo img{width:180px!important;height:auto!important}
@media(max-width:767px){.spp-header>.spp-logo{width:120px!important}.spp-logo img{width:120px!important;height:auto!important}}
@media(min-width:1200px){.spp-w{padding-left:max(120px,calc((100% - 1600px)/2))!important;padding-right:max(120px,calc((100% - 1600px)/2))!important}}
@media(min-width:1441px){.spp-header{padding-left:max(120px,calc((100vw - 1600px)/2))!important;padding-right:max(120px,calc((100vw - 1600px)/2))!important}}
@media(min-width:1280px) and (max-width:1439px){.spp-mainnav a{padding:9px 5px}}
.elementor-icon svg[stroke]{fill:none!important}
.spp-en>.spp-wmk{opacity:.1}
.spp-en:nth-child(3) .spp-lb .elementor-heading-title{background:rgba(45,90,61,.1)}
.spp-en:nth-child(4) .spp-lb .elementor-heading-title{background:rgba(58,58,58,.08)}
@media(max-width:1024px){.spp-en:nth-child(3) .spp-eh::after{color:#2D5A3D}.spp-en:nth-child(4) .spp-eh::after{color:#3A3A3A}}
.metform-form-content .mf-input-required-indicator{color:#D32F2F!important}
/* Hero shade on phones/tablets: vertical band behind the stacked text (independent of the chosen video) */
@media(max-width:1024px){.spp-hero::before{background-image:linear-gradient(180deg,rgba(20,48,32,.30) 0%,rgba(20,48,32,.66) 22%,rgba(20,48,32,.66) 78%,rgba(20,48,32,.25) 100%)!important;background-color:transparent!important}}
