/*
Theme Name: SERAPTA Child
Template: blocksy
Description: SERAPTA Lifestyle Management PLC — Platform UI System
Version: 3.0.0
*/

/* =========================================================
   SERAPTA PLATFORM DESIGN TOKENS
========================================================= */
:root{
  --s-forest:#0B3824;
  --s-forest-2:#123F2A;
  --s-forest-3:#1D5637;
  --s-gold:#B87320;
  --s-gold-2:#D28A2B;
  --s-vital:#9FC63A;
  --s-vital-2:#C5E66B;
  --s-ink:#102219;
  --s-muted:#68756D;
  --s-cream:#F6F2E8;
  --s-white:#fff;
  --s-line:rgba(11,56,36,.13);
  --s-shadow:0 20px 70px rgba(11,56,36,.12);
  --s-shadow-soft:0 10px 35px rgba(11,56,36,.09);
  --s-radius:22px;
  --s-container:1440px;
  --s-ease:cubic-bezier(.2,.75,.2,1);
  --s-scroll:0;
  --s-header:92px;
  --s-header-small:68px;
  --s-topbar:42px;
}

/* =========================================================
   BASE
========================================================= */
html{scroll-behavior:smooth}
body.serapta-site{
  margin:0;
  color:var(--s-ink);
  background:#fff;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  overflow-x:hidden;
}
body.serapta-site a{text-decoration:none}
body.serapta-site button,
body.serapta-site a{-webkit-tap-highlight-color:transparent}
body.serapta-menu-open{overflow:hidden}
body.serapta-site ::selection{background:var(--s-vital);color:var(--s-forest)}

.serapta-skip-link{
 position:fixed;left:18px;top:-100px;z-index:999999;
 padding:12px 18px;background:var(--s-ink);color:#fff;border-radius:10px;font-weight:800
}
.serapta-skip-link:focus{top:18px}

/* =========================================================
   TOP PLATFORM STRIP
========================================================= */
.serapta-topbar{
 position:relative;z-index:1100;color:rgba(255,255,255,.94);
 background:
 linear-gradient(105deg,var(--s-ink) 0%,var(--s-forest) 42%,#24583B 72%,var(--s-gold) 145%);
 border-bottom:1px solid rgba(197,230,107,.28);
 box-shadow:0 7px 28px rgba(11,56,36,.17);
 overflow:hidden;
}
.serapta-topbar:before{
 content:"";position:absolute;inset:0;opacity:.45;pointer-events:none;
 background:repeating-linear-gradient(115deg,rgba(255,255,255,.045) 0 1px,transparent 1px 15px)
}
.serapta-topbar:after{
 content:"";position:absolute;width:38%;height:220%;right:-8%;top:-70%;
 background:radial-gradient(circle,rgba(197,230,107,.20),transparent 66%);
 pointer-events:none
}
.serapta-topbar .serapta-topbar-stripes{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.28;background:repeating-linear-gradient(132deg,transparent 0 18px,rgba(255,255,255,.08) 18px 20px,transparent 20px 38px)}
.serapta-topbar-glow{position:absolute;left:22%;top:0;width:18%;height:100%;background:linear-gradient(90deg,transparent,rgba(210,138,43,.17),transparent);filter:blur(10px)}
.serapta-topbar-inner{
 position:relative;z-index:2;width:min(calc(100% - 48px),var(--s-container));min-height:var(--s-topbar);
 margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px
}
.serapta-topbar-left,.serapta-topbar-right{display:flex;align-items:center;gap:18px}
.serapta-topbar-item{
 display:inline-flex;align-items:center;gap:8px;color:rgba(255,255,255,.88);
 font-size:11px;font-weight:650;letter-spacing:.02em;transition:.25s var(--s-ease)
}
.serapta-topbar-item:hover{color:var(--s-vital-2);transform:translateY(-1px)}
.serapta-top-icon{width:15px;height:15px;display:inline-flex}.serapta-top-icon svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.6;fill:none}
.serapta-topbar-status{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:rgba(255,255,255,.68);white-space:nowrap}
.serapta-topbar-status i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--s-vital);box-shadow:0 0 0 4px rgba(197,230,107,.12);margin-right:7px}
.serapta-top-socials{display:flex;gap:6px}.serapta-top-socials a{
 width:25px;height:25px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:grid;place-items:center;
 color:#fff;font-size:10px;font-weight:800;transition:.25s var(--s-ease)
}.serapta-top-socials a:hover{background:var(--s-vital);color:var(--s-forest);border-color:var(--s-vital);transform:translateY(-2px)}
.serapta-language{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.serapta-gtranslate{display:inline-flex;align-items:center}.serapta-gtranslate .gt_switcher{font-size:11px!important}

/* =========================================================
   HEADER / SHRINK
========================================================= */
.serapta-header{
 position:sticky;top:0;z-index:1005;background:rgba(255,255,255,.94);
 border-bottom:1px solid rgba(11,56,36,.08);
 backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
 box-shadow:0 5px 28px rgba(11,56,36,.06);
}
.serapta-header-inner{
 width:min(calc(100% - 48px),var(--s-container));height:calc(var(--s-header) - (var(--s-scroll) * 24px));
 margin:auto;display:flex;align-items:center;gap:24px;transition:height .18s linear
}
.serapta-header-logo{display:flex;align-items:center;flex:0 0 auto;position:relative;z-index:2}
.serapta-header-logo img{
 width:210px;height:auto;max-height:calc(58px - (var(--s-scroll) * 14px));object-fit:contain;
 transition:max-height .18s linear,width .18s linear
}
.serapta-desktop-nav{margin-left:auto}
.serapta-main-menu{display:flex;align-items:stretch;gap:2px;list-style:none;padding:0;margin:0}
.serapta-menu-item{position:relative}.serapta-nav-link{
 position:relative;display:inline-flex;align-items:center;gap:7px;height:100%;padding:13px 11px;
 color:#24352B;font-size:13px;font-weight:750;white-space:nowrap;transition:.25s var(--s-ease)
}
.serapta-nav-link:after{
 content:"";position:absolute;left:11px;right:11px;bottom:5px;height:2px;border-radius:99px;
 background:linear-gradient(90deg,var(--s-vital),var(--s-gold));transform:scaleX(0);transform-origin:left;transition:.28s var(--s-ease)
}
.serapta-menu-item:hover>.serapta-nav-link,.serapta-menu-item.active>.serapta-nav-link{color:var(--s-forest)}
.serapta-menu-item:hover>.serapta-nav-link:after,.serapta-menu-item.active>.serapta-nav-link:after{transform:scaleX(1)}
.serapta-chevron{font-size:14px;color:var(--s-gold);line-height:1;transition:.25s}.serapta-menu-item:hover .serapta-chevron{transform:rotate(180deg)}

.serapta-header-actions{display:flex;align-items:center;gap:9px;flex:0 0 auto}
.serapta-search-toggle{
 width:42px;height:42px;border:1px solid var(--s-line);border-radius:50%;background:#fff;color:var(--s-forest);
 display:grid;place-items:center;cursor:pointer;transition:.25s var(--s-ease);box-shadow:0 6px 20px rgba(11,56,36,.06)
}
.serapta-search-toggle svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.8;fill:none}
.serapta-search-toggle:hover,.serapta-search-toggle.is-active{background:var(--s-forest);color:#fff;border-color:var(--s-forest);transform:translateY(-2px)}
.serapta-header-cta,.serapta-footer-cta{
 display:inline-flex;align-items:center;justify-content:center;gap:15px;padding:13px 17px;border-radius:999px;
 color:#fff;background:linear-gradient(110deg,var(--s-forest),#1D5939);font-size:12px;font-weight:800;
 box-shadow:0 10px 25px rgba(11,56,36,.18);transition:.28s var(--s-ease);position:relative;overflow:hidden
}
.serapta-header-cta:before,.serapta-footer-cta:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(197,230,107,.22),transparent);transform:translateX(-120%);transition:.6s var(--s-ease)}
.serapta-header-cta:hover:before,.serapta-footer-cta:hover:before{transform:translateX(120%)}
.serapta-header-cta:hover,.serapta-footer-cta:hover{transform:translateY(-3px);box-shadow:0 15px 35px rgba(11,56,36,.24)}
.serapta-header-cta b,.serapta-footer-cta b{color:var(--s-vital-2);font-size:17px;position:relative}
.serapta-mobile-toggle{display:none;width:45px;height:45px;border:0;border-radius:50%;background:var(--s-forest);align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}
.serapta-mobile-toggle span{display:block;width:20px;height:2px;background:#fff;border-radius:4px;transition:.25s var(--s-ease)}
.serapta-mobile-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.serapta-mobile-toggle.is-open span:nth-child(2){opacity:0}.serapta-mobile-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.serapta-header-rail,.serapta-footer-rail{
 display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;height:4px;padding:0 24px;
 background:#fff
}.serapta-header-rail span,.serapta-footer-rail span{height:1px;background:linear-gradient(90deg,transparent,rgba(11,56,36,.18))}
.serapta-header-rail span:last-child,.serapta-footer-rail span:last-child{background:linear-gradient(90deg,rgba(11,56,36,.18),transparent)}
.serapta-header-rail i,.serapta-footer-rail i{display:block;width:80px;height:3px;border-radius:99px;background:linear-gradient(90deg,var(--s-vital),var(--s-gold))}

/* =========================================================
   MEGA MENUS
========================================================= */
.serapta-mega-menu{
 position:absolute;top:calc(100% + 4px);left:50%;width:min(920px,calc(100vw - 36px));transform:translate(-50%,10px);
 opacity:0;visibility:hidden;pointer-events:none;background:rgba(255,255,255,.98);border:1px solid var(--s-line);
 border-radius:0 0 24px 24px;box-shadow:0 28px 80px rgba(11,56,36,.17);transition:.22s var(--s-ease);overflow:hidden
}
.serapta-menu-item:hover>.serapta-mega-menu,.serapta-menu-item.mega-open>.serapta-mega-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.serapta-mega-inner{display:grid;grid-template-columns:310px 1fr;min-height:310px}
.serapta-mega-intro{padding:34px;background:linear-gradient(145deg,var(--s-forest),#173F2B);color:#fff;position:relative;overflow:hidden}
.serapta-mega-intro:after{content:"";position:absolute;width:180px;height:180px;right:-80px;bottom:-80px;border-radius:50%;border:30px solid rgba(197,230,107,.12)}
.serapta-mega-kicker,.serapta-footer-eyebrow,.serapta-mobile-kicker{
 display:block;font-size:9px;font-weight:850;letter-spacing:.18em;text-transform:uppercase;color:var(--s-gold);margin-bottom:12px
}
.serapta-mega-intro .serapta-mega-kicker{color:var(--s-vital-2)}
.serapta-mega-intro h2{font-family:Manrope,sans-serif;font-size:26px;line-height:1.08;margin:0 0 13px;letter-spacing:-.04em}
.serapta-mega-intro p{font-size:12px;line-height:1.7;color:rgba(255,255,255,.72);margin:0 0 25px}
.serapta-mega-feature-link{display:inline-flex;gap:10px;color:#fff;font-size:11px;font-weight:800;border-bottom:1px solid rgba(197,230,107,.45);padding-bottom:7px}
.serapta-mega-feature-link b{color:var(--s-vital-2)}
.serapta-mega-links{padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:7px}
.serapta-mega-link{padding:17px;border-radius:14px;border:1px solid transparent;display:flex;flex-direction:column;gap:5px;transition:.25s var(--s-ease)}
.serapta-mega-link:hover,.serapta-mega-link.is-active{background:#F5F8F1;border-color:rgba(159,198,58,.28);transform:translateY(-2px)}
.serapta-mega-link strong{color:var(--s-forest);font-size:12px}.serapta-mega-link span{color:var(--s-muted);font-size:10px;line-height:1.5}.mega-wide{grid-template-columns:280px 1fr}

/* =========================================================
   SEARCH
========================================================= */
.serapta-search-panel{
 position:absolute;left:0;right:0;top:100%;background:rgba(246,242,232,.98);border-top:1px solid var(--s-line);
 box-shadow:0 30px 70px rgba(11,56,36,.17);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-10px);transition:.28s var(--s-ease)
}
.serapta-search-panel.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.serapta-search-panel-inner{width:min(calc(100% - 48px),1000px);margin:auto;padding:36px 0 42px;position:relative}
.serapta-search-heading h2{font-family:Manrope,sans-serif;font-size:34px;letter-spacing:-.045em;color:var(--s-forest);margin:0 0 6px}.serapta-search-heading p{margin:0 0 22px;color:var(--s-muted);font-size:13px}
.serapta-search-form{height:64px;background:#fff;border:1px solid rgba(11,56,36,.14);border-radius:17px;display:flex;align-items:center;padding:7px 8px 7px 18px;box-shadow:var(--s-shadow-soft)}
.serapta-search-icon{width:21px;height:21px;display:grid;place-items:center;color:var(--s-gold)}.serapta-search-icon svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.8;fill:none}
.serapta-search-input{flex:1;border:0!important;outline:0!important;background:transparent!important;font:600 15px Inter,sans-serif;color:var(--s-ink);padding:0 14px!important;box-shadow:none!important}
.serapta-search-input::placeholder{color:#99A29C}
.serapta-search-submit{border:0;border-radius:12px;background:var(--s-forest);color:#fff;height:48px;padding:0 19px;font-weight:800;cursor:pointer}.serapta-search-submit span{color:var(--s-vital-2);margin-left:8px}
.serapta-search-quick{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:14px;font-size:10px}.serapta-search-quick>span{font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--s-muted);margin-right:4px}.serapta-search-quick a{padding:8px 11px;border-radius:999px;background:#fff;color:var(--s-forest);border:1px solid var(--s-line);font-weight:700}.serapta-search-quick a:hover{border-color:var(--s-vital);background:#F4F8E8}
.serapta-search-close{position:absolute;right:0;top:34px;border:0;background:transparent;font-size:30px;color:var(--s-forest);cursor:pointer}
.serapta-search-results{margin-top:14px;background:#fff;border:1px solid var(--s-line);border-radius:16px;overflow:hidden}.serapta-search-result,.serapta-search-view-all{display:flex;justify-content:space-between;gap:20px;padding:14px 17px;color:var(--s-forest);border-bottom:1px solid #edf0eb;font-size:12px}.serapta-search-result:hover{background:#F6F8F3}.serapta-search-result-type{font-size:9px;text-transform:uppercase;color:var(--s-gold);font-weight:800}.serapta-search-view-all{font-weight:800;background:#F4F7F0}.serapta-search-state{padding:20px;font-size:12px;color:var(--s-muted)}

/* =========================================================
   MOBILE OFFCANVAS
========================================================= */
.serapta-mobile-overlay{position:fixed;inset:0;background:rgba(7,25,16,.56);backdrop-filter:blur(5px);z-index:1998;opacity:0;visibility:hidden;transition:.3s var(--s-ease)}
.serapta-mobile-overlay.is-open{opacity:1;visibility:visible}
.serapta-mobile-panel{
 position:fixed;z-index:1999;top:0;right:0;width:min(430px,92vw);height:100dvh;background:#fff;
 transform:translateX(105%);transition:transform .42s var(--s-ease);box-shadow:-30px 0 80px rgba(0,0,0,.2);overflow:auto
}
.serapta-mobile-panel.is-open{transform:translateX(0)}
.serapta-mobile-panel-accent{height:5px;background:linear-gradient(90deg,var(--s-vital),var(--s-gold),var(--s-forest))}
.serapta-mobile-panel-top{height:84px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--s-line)}
.serapta-mobile-panel-logo img{width:185px;height:auto}.serapta-mobile-panel-top button{width:42px;height:42px;border:1px solid var(--s-line);border-radius:50%;background:#fff;display:grid;place-items:center;cursor:pointer}.serapta-mobile-panel-top button span{position:absolute;width:18px;height:2px;background:var(--s-forest)}.serapta-mobile-panel-top button span:first-child{transform:rotate(45deg)}.serapta-mobile-panel-top button span:last-child{transform:rotate(-45deg)}
.serapta-mobile-panel-inner{padding:26px 22px 40px}.serapta-mobile-kicker{color:var(--s-gold)}
.serapta-mobile-nav>a,.serapta-mobile-parent-row>a{color:var(--s-forest);font:800 18px Manrope,sans-serif}
.serapta-mobile-top-link{display:block;padding:16px 0;border-bottom:1px solid var(--s-line)}
.serapta-mobile-group{border-bottom:1px solid var(--s-line)}.serapta-mobile-parent-row{display:grid;grid-template-columns:1fr 44px;align-items:center}
.serapta-mobile-parent-row>a{padding:16px 0}.serapta-mobile-parent{width:38px;height:38px;border:1px solid var(--s-line);border-radius:50%;background:#fff;position:relative;cursor:pointer}.serapta-mobile-parent span{position:absolute;left:10px;top:18px;width:16px;height:2px;background:var(--s-forest);transition:.25s}.serapta-mobile-parent span:last-child{transform:rotate(90deg)}.serapta-mobile-parent.is-open span:last-child{transform:rotate(0)}
.serapta-mobile-submenu{max-height:0;overflow:hidden;transition:max-height .38s var(--s-ease);padding-left:10px}.serapta-mobile-group.is-open .serapta-mobile-submenu{max-height:600px;padding-bottom:10px}
.serapta-mobile-submenu a{display:flex;justify-content:space-between;padding:11px 10px;color:var(--s-muted);font-size:12px;font-weight:700;border-left:2px solid transparent}.serapta-mobile-submenu a:hover{color:var(--s-forest);border-left-color:var(--s-vital);background:#F5F8F0}
.serapta-mobile-utility{display:grid;gap:9px;margin-top:26px}.serapta-mobile-utility a{display:flex;justify-content:space-between;padding:14px 15px;border-radius:13px;background:var(--s-forest);color:#fff;font-size:12px;font-weight:800}.serapta-mobile-utility a+ a{background:linear-gradient(110deg,var(--s-gold),#C98127)}.serapta-mobile-language{margin-top:18px;padding-top:18px;border-top:1px solid var(--s-line)}

/* =========================================================
   PAGE STRIP SYSTEM — reusable between Elementor sections
========================================================= */
.serapta-platform-strip{
 display:flex;align-items:center;gap:13px;max-width:100%;padding:9px 0;color:var(--s-muted);
 font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.17em
}
.serapta-platform-strip-line{height:1px;flex:1;background:linear-gradient(90deg,transparent,var(--s-line))}
.serapta-platform-strip-line:last-child{background:linear-gradient(90deg,var(--s-line),transparent)}
.serapta-platform-strip-label{color:var(--s-forest);white-space:nowrap}.serapta-platform-strip-text{color:var(--s-gold);white-space:nowrap}
.serapta-section-strip{position:relative}.serapta-section-strip:before{
 content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,transparent 0%,var(--s-vital) 30%,var(--s-gold) 70%,transparent 100%);opacity:.9
}
.serapta-platform-band{
 background:linear-gradient(120deg,#F6F2E8 0%,#fff 50%,#F2F7EA 100%);
 position:relative;overflow:hidden
}
.serapta-platform-band:after{content:"";position:absolute;width:420px;height:420px;right:-220px;top:-220px;border:70px solid rgba(159,198,58,.07);border-radius:50%;pointer-events:none}

/* =========================================================
   FOOTER
========================================================= */
.serapta-footer{position:relative;background:var(--s-forest);color:#fff;overflow:hidden}
.serapta-footer:before{content:"";position:absolute;inset:0;opacity:.16;background:linear-gradient(120deg,transparent 0 25%,rgba(197,230,107,.08) 25% 26%,transparent 26% 60%,rgba(210,138,43,.08) 60% 61%,transparent 61%)}
.serapta-footer:after{content:"";position:absolute;width:600px;height:600px;right:-300px;top:-250px;border:100px solid rgba(197,230,107,.055);border-radius:50%}
.serapta-footer-rail{position:relative;z-index:2;background:var(--s-forest);padding-top:10px}.serapta-footer-rail span{background:linear-gradient(90deg,transparent,rgba(255,255,255,.17))}.serapta-footer-rail span:last-child{background:linear-gradient(90deg,rgba(255,255,255,.17),transparent)}
.serapta-footer-main,.serapta-footer-conversation,.serapta-footer-signature{position:relative;z-index:2}
.serapta-footer-main{padding:72px 24px 58px}.serapta-footer-grid{width:min(100%,var(--s-container));margin:auto;display:grid;grid-template-columns:1.7fr 1fr 1fr 1.1fr;gap:50px}
.serapta-footer-logo-link{display:inline-flex;padding:13px 16px;border-radius:16px;background:#fff}.serapta-footer-logo{width:220px;height:auto}.serapta-footer-kicker{font-size:9px;letter-spacing:.18em;color:var(--s-vital-2);margin-top:13px;font-weight:850}.serapta-footer-brand p{max-width:410px;color:rgba(255,255,255,.68);font-size:12px;line-height:1.75;margin:15px 0}.serapta-footer-location{display:flex;gap:8px;color:rgba(255,255,255,.76);font-size:11px}.serapta-footer-location span{color:var(--s-gold-2)}
.serapta-footer-column h3{font:800 12px Manrope,sans-serif;text-transform:uppercase;letter-spacing:.14em;margin:5px 0 16px;color:#fff}
.serapta-footer-column>a{display:flex;justify-content:space-between;gap:20px;padding:9px 0;color:rgba(255,255,255,.62);font-size:11px;border-bottom:1px solid rgba(255,255,255,.07);transition:.25s var(--s-ease)}.serapta-footer-column>a:hover{color:#fff;padding-left:5px}.serapta-footer-column>a b{color:var(--s-vital-2);opacity:0;transform:translateX(-6px);transition:.25s}.serapta-footer-column>a:hover b{opacity:1;transform:none}.serapta-footer-contact-link{justify-content:flex-start!important}
.serapta-footer-socials{display:flex;gap:7px;margin-top:18px}.serapta-footer-socials a{width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.16);display:grid;place-items:center;color:#fff;font-size:10px;font-weight:800;transition:.25s}.serapta-footer-socials a:hover{background:var(--s-vital);color:var(--s-forest);border-color:var(--s-vital);transform:translateY(-3px)}
.serapta-footer-conversation{padding:0 24px 55px}.serapta-footer-conversation-inner{width:min(100%,var(--s-container));margin:auto;padding:30px 34px;border:1px solid rgba(197,230,107,.22);border-radius:24px;background:linear-gradient(105deg,rgba(255,255,255,.07),rgba(159,198,58,.08));display:flex;align-items:center;justify-content:space-between;gap:30px}.serapta-footer-eyebrow{color:var(--s-vital-2);margin:0 0 7px}.serapta-footer-conversation h2{font:800 29px Manrope,sans-serif;letter-spacing:-.04em;margin:0 0 7px}.serapta-footer-conversation p{margin:0;color:rgba(255,255,255,.62);font-size:12px}.serapta-footer-cta{background:var(--s-gold);white-space:nowrap}
.serapta-footer-signature{border-top:1px solid rgba(255,255,255,.09);background:rgba(0,0,0,.12)}.serapta-footer-bottom{width:min(calc(100% - 48px),var(--s-container));margin:auto;min-height:60px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:rgba(255,255,255,.48);font-size:10px}.serapta-footer-made strong{color:#E99A91;font-size:13px}.serapta-footer-made a{color:var(--s-vital-2);font-weight:800}

/* =========================================================
   BACK TO TOP
========================================================= */
.serapta-back-top{position:fixed;right:22px;bottom:22px;z-index:1500;width:48px;height:48px;border-radius:50%;border:1px solid rgba(11,56,36,.15);background:#fff;color:var(--s-forest);display:grid;place-items:center;box-shadow:var(--s-shadow-soft);opacity:0;visibility:hidden;transform:translateY(15px);transition:.28s var(--s-ease);cursor:pointer}.serapta-back-top.is-visible{opacity:1;visibility:visible;transform:none}.serapta-back-top:hover{background:var(--s-forest);color:#fff;transform:translateY(-3px)}.serapta-back-top svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.8;fill:none}

/* =========================================================
   RESPONSIVE
========================================================= */
@media (max-width:1180px){
 .serapta-desktop-nav{display:none}.serapta-header-actions{margin-left:auto}.serapta-mobile-toggle{display:flex}.serapta-header-cta{display:none}
 .serapta-topbar-status{display:none}
}
@media (max-width:800px){
 :root{--s-header:76px;--s-header-small:62px}
 .serapta-topbar-inner{width:calc(100% - 28px);min-height:36px}.serapta-topbar-left{gap:12px}.serapta-topbar-left .serapta-topbar-item:nth-child(3){display:none}.serapta-topbar-right{gap:8px}.serapta-topbar-email span:last-child{display:none}.serapta-language>span:first-child{display:none}
 .serapta-header-inner{width:calc(100% - 28px);gap:7px}.serapta-header-logo img{width:175px;max-height:50px}.serapta-header-actions{gap:7px}.serapta-search-toggle{width:40px;height:40px}.serapta-mobile-toggle{width:43px;height:43px}
 .serapta-header-rail{padding:0 14px}
 .serapta-search-panel-inner{width:calc(100% - 28px);padding:26px 0 30px}.serapta-search-heading h2{font-size:27px}.serapta-search-form{height:56px}.serapta-search-submit{height:42px;padding:0 13px}.serapta-search-close{top:24px}
 .serapta-footer-main{padding:50px 20px}.serapta-footer-grid{grid-template-columns:1fr 1fr;gap:35px}.serapta-footer-brand{grid-column:1/-1}.serapta-footer-conversation{padding:0 20px 40px}.serapta-footer-conversation-inner{align-items:flex-start;flex-direction:column;padding:25px}.serapta-footer-bottom{width:calc(100% - 40px);padding:16px 0;flex-direction:column;align-items:flex-start}
}
@media (max-width:560px){
 .serapta-topbar-left .serapta-topbar-phone{display:none}.serapta-top-socials a:nth-child(n+3){display:none}
 .serapta-header-logo img{width:157px}.serapta-search-toggle{width:38px;height:38px}.serapta-mobile-toggle{width:42px;height:42px}
 .serapta-mobile-panel{width:94vw}.serapta-footer-grid{grid-template-columns:1fr}.serapta-footer-brand{grid-column:auto}.serapta-footer-logo{width:190px}.serapta-footer-conversation h2{font-size:24px}.serapta-footer-cta{width:100%}
 .serapta-platform-strip{gap:7px;font-size:7px}.serapta-platform-strip-text{display:none}
}
@media (prefers-reduced-motion:reduce){
 *,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}
}


/* =========================================================
   SERAPTA PLATFORM V7 — REFINED VISUAL SYSTEM
   Global platform rail + contrast + navigation polish
   ========================================================= */

:root{
  --s-deep:#011F1A;
  --s-forest:#022C25;
  --s-green:#063F33;
  --s-green-2:#075442;
  --s-vital:#A9D65B;
  --s-leaf:#7FAE3D;
  --s-gold:#C9A44B;
  --s-gold-soft:#F0CF76;
  --s-cream:#F6F8F2;
}

/* TOP MINI BAR — unmistakable platform rail */
.serapta-topbar{
  min-height:44px!important;
  background:
    radial-gradient(circle at 14% 50%,rgba(169,214,91,.18),transparent 22%),
    radial-gradient(circle at 86% 50%,rgba(240,207,118,.12),transparent 20%),
    linear-gradient(110deg,var(--s-deep) 0%,var(--s-forest) 46%,var(--s-green) 100%)!important;
  border:0!important;
  box-shadow:0 7px 28px rgba(1,31,26,.18)!important;
}
.serapta-topbar:after{
  content:""!important;
  position:absolute!important;
  left:0!important;right:0!important;bottom:0!important;
  height:4px!important;
  background:linear-gradient(90deg,
    var(--s-leaf) 0%,
    var(--s-vital) 17%,
    var(--s-gold) 36%,
    var(--s-gold-soft) 50%,
    var(--s-gold) 64%,
    var(--s-vital) 83%,
    var(--s-leaf) 100%)!important;
  box-shadow:0 0 22px rgba(201,164,75,.48)!important;
  opacity:1!important;
}
.serapta-topbar-glow{
  width:34%!important;
  left:33%!important;
  height:100%!important;
  background:linear-gradient(90deg,transparent,rgba(169,214,91,.12),rgba(201,164,75,.14),transparent)!important;
  filter:blur(12px)!important;
}
.serapta-topbar-inner{min-height:44px!important}
.serapta-topbar-item{
  font-size:11.5px!important;
  font-weight:800!important;
}
.serapta-topbar-right{gap:12px!important}
.serapta-topbar-status{
  font-size:9px!important;
  font-weight:800!important;
  letter-spacing:.12em!important;
}
.serapta-top-socials{gap:5px!important}
.serapta-top-socials a{
  width:28px!important;height:28px!important;
  display:grid!important;place-items:center!important;
  background:rgba(255,255,255,.045)!important;
}
.serapta-top-socials svg{
  width:14px!important;height:14px!important;
  fill:none!important;stroke:currentColor!important;
  stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important;
}
.serapta-top-socials a:hover{
  background:var(--s-vital)!important;
  color:var(--s-deep)!important;
  border-color:var(--s-vital)!important;
  box-shadow:0 0 18px rgba(169,214,91,.28)!important;
}

/* LANGUAGE */
.serapta-language{
  min-height:30px!important;
  padding:3px 5px 3px 9px!important;
  border:1px solid rgba(255,255,255,.15)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.055)!important;
}
.serapta-language-label{
  color:rgba(255,255,255,.55)!important;
  font-size:9px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.10em!important;
}
.serapta-language-pills{
  display:inline-flex!important;
  align-items:center!important;
  gap:3px!important;
}
.serapta-language-pills a,
.serapta-language-pills .glink,
.serapta-language-fallback{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:30px!important;
  height:23px!important;
  padding:0 7px!important;
  border-radius:999px!important;
  color:#fff!important;
  background:transparent!important;
  text-decoration:none!important;
  font-size:10px!important;
  font-weight:950!important;
  letter-spacing:.03em!important;
  transition:all .18s ease!important;
}
.serapta-language-pills a:hover,
.serapta-language-pills .glink:hover{
  background:var(--s-gold-soft)!important;
  color:var(--s-deep)!important;
}
.serapta-language-divider{color:rgba(255,255,255,.28)!important}
.serapta-gtranslate{display:none!important}

/* MAIN HEADER — no decorative center line */
.serapta-header{
  position:sticky!important;
  top:0!important;
  z-index:10000!important;
  background:rgba(255,255,255,.975)!important;
  border-bottom:1px solid rgba(6,63,51,.10)!important;
  box-shadow:0 9px 30px rgba(1,31,26,.055)!important;
  backdrop-filter:blur(18px)!important;
}
.serapta-header:before,
.serapta-header:after,
.serapta-header-rail{
  display:none!important;
  content:none!important;
}
.serapta-header.is-scrolled,
body.serapta-scrolled .serapta-header{
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 16px 44px rgba(1,31,26,.13)!important;
}
.serapta-header-inner{
  min-height:86px!important;
  transition:min-height .25s ease!important;
}
body.serapta-scrolled .serapta-header-inner{
  min-height:68px!important;
}
.serapta-header-logo img{
  max-height:62px!important;
  transition:max-height .25s ease,transform .25s ease!important;
}
body.serapta-scrolled .serapta-header-logo img{
  max-height:50px!important;
}

/* NAV */
.serapta-main-menu{gap:3px!important}
.serapta-nav-link{
  min-height:50px!important;
  padding:9px 12px!important;
  border-radius:12px!important;
  color:var(--s-deep)!important;
  font-family:Manrope,Inter,sans-serif!important;
  font-size:15px!important;
  font-weight:900!important;
  letter-spacing:-.025em!important;
  text-decoration:none!important;
  box-shadow:none!important;
}
.serapta-nav-link:hover,
.serapta-nav-link:focus-visible,
.serapta-menu-item.active>.serapta-nav-link,
.serapta-menu-item.mega-open>.serapta-nav-link{
  color:var(--s-green)!important;
  background:linear-gradient(105deg,rgba(169,214,91,.14),rgba(201,164,75,.10))!important;
  box-shadow:inset 0 -2px 0 var(--s-gold)!important;
}
.serapta-chevron{color:var(--s-gold)!important;font-weight:900!important}

/* ACTIONS — balanced spacing */
.serapta-header-actions{
  gap:10px!important;
}
.serapta-search-toggle{
  width:43px!important;height:43px!important;
  border:1px solid rgba(6,63,51,.14)!important;
  background:#fff!important;
  box-shadow:0 6px 20px rgba(1,31,26,.06)!important;
}
.serapta-search-toggle:hover,
.serapta-search-toggle.is-active{
  background:var(--s-green)!important;
  border-color:var(--s-green)!important;
  color:#fff!important;
  box-shadow:0 10px 25px rgba(6,63,51,.17)!important;
}
.serapta-header-cta{
  min-height:45px!important;
  padding:12px 16px 12px 18px!important;
  border-radius:14px!important;
  border:1px solid rgba(201,164,75,.46)!important;
  background:linear-gradient(135deg,var(--s-green),var(--s-forest))!important;
  font-size:12px!important;
  font-weight:900!important;
}
.serapta-header-cta:hover{
  color:var(--s-deep)!important;
  background:linear-gradient(135deg,var(--s-vital),var(--s-gold-soft))!important;
  border-color:var(--s-vital)!important;
  box-shadow:0 15px 32px rgba(127,174,61,.23)!important;
}

/* MEGA MENU — centered and visually anchored */
.serapta-mega-menu{
  top:calc(100% + 1px)!important;
  width:min(1100px,calc(100vw - 34px))!important;
  border:1px solid rgba(6,63,51,.13)!important;
  border-top:4px solid var(--s-gold)!important;
  border-radius:0 0 26px 26px!important;
  background:
    radial-gradient(circle at 92% 4%,rgba(169,214,91,.13),transparent 23%),
    linear-gradient(145deg,#fff 0%,#FBFCF8 62%,#F1F5EB 100%)!important;
  box-shadow:0 34px 90px rgba(1,31,26,.22)!important;
}
.serapta-mega-inner{grid-template-columns:320px 1fr!important;min-height:330px!important}
.serapta-mega-intro{
  padding:36px!important;
  background:linear-gradient(145deg,var(--s-forest),var(--s-green))!important;
}
.serapta-mega-intro h2{font-size:29px!important;font-weight:900!important}
.serapta-mega-intro p{font-size:13px!important}
.serapta-mega-links{padding:24px!important;gap:9px!important}
.serapta-mega-link{
  min-height:76px!important;
  padding:16px 17px 16px 20px!important;
  border:1px solid rgba(6,63,51,.07)!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.65)!important;
}
.serapta-mega-link strong{
  font-size:14px!important;
  font-weight:900!important;
  color:var(--s-green)!important;
}
.serapta-mega-link span{
  font-size:11px!important;
  color:#697970!important;
}
.serapta-mega-link:hover,
.serapta-mega-link.active{
  transform:translateX(4px)!important;
  border-color:rgba(127,174,61,.30)!important;
  background:linear-gradient(105deg,rgba(169,214,91,.14),rgba(201,164,75,.09))!important;
  box-shadow:0 10px 28px rgba(6,63,51,.09)!important;
}

/* SEARCH — platform command center */
.serapta-search-panel{
  background:rgba(1,31,26,.78)!important;
  backdrop-filter:blur(16px)!important;
}
.serapta-search-panel-inner{
  border:1px solid rgba(201,164,75,.30)!important;
  border-radius:28px!important;
  background:
    radial-gradient(circle at 90% 5%,rgba(169,214,91,.14),transparent 25%),
    linear-gradient(145deg,#fff,#F2F6EE)!important;
  box-shadow:0 40px 100px rgba(1,31,26,.32)!important;
}
.serapta-search-heading h2{
  font-size:36px!important;
  font-weight:900!important;
  color:var(--s-deep)!important;
}
.serapta-search-form{
  border:1px solid rgba(6,63,51,.14)!important;
  border-radius:17px!important;
  box-shadow:0 14px 36px rgba(6,63,51,.09)!important;
}
.serapta-search-input{font-size:18px!important;font-weight:750!important}
.serapta-search-submit{
  background:var(--s-green)!important;
  font-weight:900!important;
  border-radius:12px!important;
}
.serapta-search-submit:hover{
  background:linear-gradient(135deg,var(--s-vital),var(--s-gold-soft))!important;
  color:var(--s-deep)!important;
}

/* PAGE STRIP — use on .serapta-platform-section or [serapta_strip] */
.serapta-platform-strip{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  width:100%!important;
  min-height:28px!important;
  padding:11px 0!important;
  color:var(--s-green)!important;
}
.serapta-platform-strip:before{
  content:""!important;
  position:absolute!important;
  left:0!important;right:0!important;top:50%!important;
  height:2px!important;
  transform:translateY(-50%)!important;
  background:linear-gradient(90deg,transparent,rgba(127,174,61,.22) 20%,rgba(201,164,75,.42) 50%,rgba(127,174,61,.22) 80%,transparent)!important;
}
.serapta-platform-strip-label,
.serapta-platform-strip-text{
  position:relative!important;
  z-index:2!important;
  background:#fff!important;
  padding:0 9px!important;
}
.serapta-platform-strip-label{
  color:var(--s-green)!important;
  font-size:9px!important;
  font-weight:950!important;
  letter-spacing:.16em!important;
}
.serapta-platform-strip-text{
  color:var(--s-gold)!important;
  font-size:9px!important;
  font-weight:900!important;
}

/* FOOTER — same visual rail as the top bar */
.serapta-footer{
  background:var(--s-deep)!important;
}
.serapta-footer:before{
  opacity:.20!important;
}
.serapta-footer-rail{
  height:7px!important;
  padding:0!important;
  display:block!important;
  background:
    linear-gradient(90deg,
      var(--s-leaf) 0%,
      var(--s-vital) 17%,
      var(--s-gold) 36%,
      var(--s-gold-soft) 50%,
      var(--s-gold) 64%,
      var(--s-vital) 83%,
      var(--s-leaf) 100%)!important;
  box-shadow:0 0 24px rgba(201,164,75,.38)!important;
}
.serapta-footer-rail span,
.serapta-footer-rail i{display:none!important}
.serapta-footer-main{
  padding-top:70px!important;
  background:
    radial-gradient(circle at 90% 5%,rgba(169,214,91,.13),transparent 25%),
    radial-gradient(circle at 7% 86%,rgba(201,164,75,.09),transparent 27%),
    linear-gradient(145deg,var(--s-green),var(--s-deep) 72%)!important;
}
.serapta-footer-logo-link{
  border:1px solid rgba(201,164,75,.24)!important;
  box-shadow:0 15px 35px rgba(0,0,0,.14)!important;
}
.serapta-footer-column h3{
  color:var(--s-gold-soft)!important;
  font-size:12px!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.serapta-footer-column>a{
  font-size:12px!important;
  font-weight:800!important;
}
.serapta-footer-column>a:hover{
  color:var(--s-vital)!important;
  text-shadow:0 0 14px rgba(169,214,91,.18)!important;
}
.serapta-footer-socials a{
  width:35px!important;height:35px!important;
  background:rgba(255,255,255,.04)!important;
  display:grid!important;place-items:center!important;
}
.serapta-footer-socials svg{
  width:15px!important;height:15px!important;
  fill:none!important;stroke:currentColor!important;
  stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important;
}
.serapta-footer-socials a:hover{
  background:var(--s-vital)!important;
  color:var(--s-deep)!important;
  border-color:var(--s-vital)!important;
  box-shadow:0 0 18px rgba(169,214,91,.25)!important;
}
.serapta-footer-conversation{
  padding-bottom:48px!important;
}
.serapta-footer-conversation-inner{
  border:1px solid rgba(201,164,75,.28)!important;
  background:
    radial-gradient(circle at 92% 10%,rgba(169,214,91,.13),transparent 25%),
    linear-gradient(105deg,rgba(255,255,255,.07),rgba(169,214,91,.055))!important;
  box-shadow:0 20px 50px rgba(0,0,0,.10)!important;
}
.serapta-footer-conversation h2{
  font-size:34px!important;
  font-weight:900!important;
}
.serapta-footer-cta{
  background:linear-gradient(135deg,var(--s-vital),var(--s-gold-soft))!important;
  color:var(--s-deep)!important;
  border-radius:14px!important;
  font-weight:950!important;
}
.serapta-footer-cta:hover{
  background:#fff!important;
  color:var(--s-green)!important;
  box-shadow:0 15px 35px rgba(169,214,91,.22)!important;
}
.serapta-footer-signature{
  background:#011A16!important;
  border-top:1px solid rgba(201,164,75,.18)!important;
}
.serapta-footer-made a{
  color:var(--s-gold-soft)!important;
  font-weight:950!important;
}
.serapta-footer-made a:hover{
  color:var(--s-vital)!important;
  text-shadow:0 0 14px rgba(169,214,91,.22)!important;
}

/* MOBILE — phone + language only on topbar; strong shrink */
@media(max-width:800px){
  .serapta-topbar{min-height:40px!important}
  .serapta-topbar-inner{min-height:40px!important;width:calc(100% - 24px)!important}
  .serapta-topbar-email,
  .serapta-location,
  .serapta-topbar-status,
  .serapta-top-socials{display:none!important}
  .serapta-topbar-left{gap:0!important}
  .serapta-topbar-phone{display:inline-flex!important;font-size:11px!important}
  .serapta-topbar-right{margin-left:auto!important}
  .serapta-language-label{display:none!important}
  .serapta-header-inner{min-height:78px!important}
  body.serapta-scrolled .serapta-header-inner{min-height:61px!important}
  .serapta-header-logo img{max-height:52px!important}
  body.serapta-scrolled .serapta-header-logo img{max-height:43px!important}
  .serapta-header-actions{gap:7px!important}
  .serapta-footer-conversation h2{font-size:27px!important}
}
@media(max-width:560px){
  .serapta-topbar-phone{font-size:10.5px!important}
  .serapta-header-logo img{width:157px!important}
  .serapta-search-toggle{width:39px!important;height:39px!important}
  .serapta-mobile-toggle{width:42px!important;height:42px!important}
  .serapta-mega-menu{width:auto!important}
  .serapta-platform-strip{gap:6px!important}
  .serapta-platform-strip-text{display:none!important}
}


/* =========================================================
   SERAPTA PLATFORM V8 — FINAL GLOBAL REFINEMENT
   ========================================================= */
:root{
  --s-v8-deep:#031B17;
  --s-v8-forest:#06372E;
  --s-v8-green:#075044;
  --s-v8-vital:#A8D45A;
  --s-v8-vital-bright:#C2E875;
  --s-v8-gold:#C9A24A;
  --s-v8-gold-bright:#F1D27D;
  --s-v8-paper:#F7F9F4;
}

/* TOP MINI BAR */
.serapta-topbar{
  min-height:46px!important;
  color:#fff!important;
  background:
    radial-gradient(circle at 9% 50%,rgba(168,212,90,.13),transparent 28%),
    radial-gradient(circle at 74% 0%,rgba(201,162,74,.10),transparent 28%),
    linear-gradient(105deg,#021512 0%,#06372E 46%,#075044 74%,#043027 100%)!important;
  border-bottom:0!important;
  box-shadow:0 8px 30px rgba(3,27,23,.22)!important;
}
.serapta-topbar:before{opacity:.22!important;background:linear-gradient(90deg,transparent,rgba(255,255,255,.035),transparent)!important}
.serapta-topbar:after{
  content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;width:auto!important;height:4px!important;
  background:linear-gradient(90deg,#709D38 0%,var(--s-v8-vital) 17%,var(--s-v8-gold) 36%,var(--s-v8-gold-bright) 50%,var(--s-v8-gold) 64%,var(--s-v8-vital) 83%,#709D38 100%)!important;
  box-shadow:0 0 22px rgba(201,162,74,.32)!important;
}
.serapta-topbar-glow{display:none!important}
.serapta-topbar-item{font-weight:800!important;color:rgba(255,255,255,.88)!important}
.serapta-topbar-item:hover{color:var(--s-v8-vital-bright)!important}
.serapta-top-socials{gap:6px!important}
.serapta-top-socials a{
  width:28px!important;height:28px!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:9px!important;
  background:rgba(255,255,255,.045)!important;color:#fff!important;
}
.serapta-top-socials a:hover{background:var(--s-v8-vital)!important;color:var(--s-v8-deep)!important;border-color:var(--s-v8-vital)!important;box-shadow:0 0 18px rgba(168,212,90,.25)!important}
.serapta-top-socials svg{width:14px!important;height:14px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
.serapta-language{border:1px solid rgba(241,210,125,.25)!important;background:rgba(0,0,0,.13)!important}
.serapta-language-pills a:hover,.serapta-language-pills .glink:hover{background:var(--s-v8-gold-bright)!important;color:var(--s-v8-deep)!important}

/* MAIN NAV — unmistakable active state, no line-only treatment */
.serapta-nav-link:after{display:none!important}
.serapta-nav-link{border:1px solid transparent!important;border-radius:13px!important}
.serapta-menu-item.active>.serapta-nav-link,
.serapta-menu-item.mega-open>.serapta-nav-link,
.serapta-nav-link.active{
  color:#fff!important;
  background:linear-gradient(135deg,var(--s-v8-green),var(--s-v8-forest))!important;
  border-color:rgba(201,162,74,.38)!important;
  box-shadow:0 9px 24px rgba(3,27,23,.13),inset 0 0 0 1px rgba(255,255,255,.025)!important;
}
.serapta-menu-item.active>.serapta-nav-link:before,
.serapta-menu-item.mega-open>.serapta-nav-link:before{
  content:"";position:absolute;left:11px;right:11px;bottom:4px;height:3px;border-radius:999px;
  background:linear-gradient(90deg,var(--s-v8-vital),var(--s-v8-gold-bright));box-shadow:0 0 10px rgba(168,212,90,.25)
}
.serapta-menu-item.active>.serapta-nav-link .serapta-chevron,.serapta-menu-item.mega-open>.serapta-nav-link .serapta-chevron{color:var(--s-v8-gold-bright)!important}
.serapta-menu-item:hover>.serapta-nav-link:not(.active),
.serapta-nav-link:hover,
.serapta-nav-link:focus-visible{
  color:var(--s-v8-deep)!important;
  background:linear-gradient(135deg,rgba(168,212,90,.18),rgba(201,162,74,.12))!important;
  border-color:rgba(127,174,61,.28)!important;
  box-shadow:0 8px 20px rgba(3,27,23,.08)!important;
}
.serapta-menu-item:hover>.serapta-nav-link:not(.active):before,
.serapta-nav-link:hover:before,
.serapta-nav-link:focus-visible:before{
  content:"";position:absolute;left:11px;right:11px;bottom:4px;height:3px;border-radius:999px;
  background:linear-gradient(90deg,var(--s-v8-vital),var(--s-v8-gold-bright));
}
.serapta-who-mega .serapta-mega-links{padding-left:58px!important;padding-right:34px!important}
.serapta-who-mega .serapta-mega-inner{grid-template-columns:350px minmax(0,1fr)!important}
.serapta-mega-intro h2{color:#fff!important}
.serapta-mega-intro .serapta-mega-kicker{color:var(--s-v8-vital-bright)!important}
.serapta-mega-intro p{color:rgba(255,255,255,.78)!important}

/* MEGA MENUS — centered platform panels */
.serapta-mega-menu{
  left:50%!important;right:auto!important;transform:translate(-50%,10px)!important;
  width:min(1160px,calc(100vw - 40px))!important;
  border:1px solid rgba(6,55,46,.14)!important;border-top:4px solid var(--s-v8-gold)!important;
  border-radius:0 0 28px 28px!important;
  background:radial-gradient(circle at 92% 4%,rgba(168,212,90,.14),transparent 24%),linear-gradient(145deg,#fff,#F5F8F1)!important;
  box-shadow:0 36px 95px rgba(3,27,23,.24)!important;
}
.serapta-menu-item:hover>.serapta-mega-menu,.serapta-menu-item.mega-open>.serapta-mega-menu{transform:translate(-50%,0)!important}
.serapta-mega-inner{grid-template-columns:330px minmax(0,1fr)!important;min-height:350px!important}
.serapta-mega-intro{padding:40px 34px!important;color:#fff!important;background:radial-gradient(circle at 100% 0%,rgba(168,212,90,.16),transparent 32%),linear-gradient(150deg,#075044,#031B17)!important}
.serapta-mega-links{padding:30px 34px 32px 40px!important;gap:11px!important}
.serapta-mega-link{min-height:80px!important;padding:17px 20px 17px 23px!important;border:1px solid rgba(6,55,46,.07)!important;border-radius:17px!important;background:rgba(255,255,255,.72)!important;position:relative!important}
.serapta-mega-link:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 4px 4px 0;background:linear-gradient(var(--s-v8-vital),var(--s-v8-gold));opacity:0;transition:opacity .2s ease}
.serapta-mega-link:hover,.serapta-mega-link.is-active{transform:translateX(5px)!important;background:linear-gradient(105deg,rgba(168,212,90,.14),rgba(201,162,74,.08))!important;border-color:rgba(127,174,61,.30)!important;box-shadow:0 12px 30px rgba(3,27,23,.09)!important}
.serapta-mega-link:hover:before,.serapta-mega-link.is-active:before{opacity:1}
.serapta-mega-link strong{font-size:14px!important;font-weight:950!important;color:var(--s-v8-green)!important}
.serapta-mega-link span{font-size:11px!important;color:#66766E!important}

/* MOBILE OFF-CANVAS — one header only */
@media(max-width:1180px){
  .serapta-mobile-panel{background:radial-gradient(circle at 88% 0%,rgba(168,212,90,.12),transparent 28%),linear-gradient(155deg,#06372E,#031B17)!important;border-left:1px solid rgba(201,162,74,.22)!important}
  .serapta-mobile-panel-top{height:76px!important;padding:0 20px!important;border-bottom:1px solid rgba(255,255,255,.10)!important;background:rgba(1,27,23,.78)!important}
  .serapta-mobile-panel-logo img{width:175px!important}
  .serapta-mobile-panel-logo img{filter:brightness(0) invert(1)!important}
  .serapta-mobile-panel-inner{padding:22px 18px 34px!important}
  .serapta-mobile-kicker{color:var(--s-v8-gold-bright)!important}
  .serapta-mobile-nav a{font-weight:900!important;color:rgba(255,255,255,.90)!important;border-radius:13px!important}
  .serapta-mobile-group.active>.serapta-mobile-parent-row>a,
  .serapta-mobile-nav>a.active{background:linear-gradient(105deg,var(--s-v8-vital),var(--s-v8-gold-bright))!important;color:var(--s-v8-deep)!important;box-shadow:0 10px 25px rgba(168,212,90,.12)!important}
  .serapta-mobile-submenu a.active{color:var(--s-v8-vital-bright)!important;background:rgba(168,212,90,.09)!important;border-left:3px solid var(--s-v8-gold-bright)!important}
}

/* FOOTER — clearly visible platform strip */
.serapta-footer{background:linear-gradient(145deg,#075044 0%,#06372E 42%,#031B17 100%)!important}
.serapta-footer-rail{height:8px!important;padding:0!important;display:block!important;background:linear-gradient(90deg,#709D38 0%,var(--s-v8-vital) 17%,var(--s-v8-gold) 36%,var(--s-v8-gold-bright) 50%,var(--s-v8-gold) 64%,var(--s-v8-vital) 83%,#709D38 100%)!important;box-shadow:0 0 26px rgba(201,162,74,.36)!important}
.serapta-footer-rail span,.serapta-footer-rail i{display:none!important}
.serapta-footer-main{background:radial-gradient(circle at 90% 5%,rgba(168,212,90,.12),transparent 26%),radial-gradient(circle at 8% 80%,rgba(201,162,74,.08),transparent 25%),transparent!important}
.serapta-footer-column>a{font-size:13px!important;font-weight:850!important;color:rgba(255,255,255,.76)!important}
.serapta-footer-column>a:hover{color:var(--s-v8-vital-bright)!important;transform:translateX(5px)!important}
.serapta-footer-made{display:flex!important;flex-wrap:wrap!important;gap:4px!important;align-items:baseline!important;line-height:1.7!important}
.serapta-footer-made .serapta-powered-label{opacity:.66!important}
.serapta-footer-made a{color:var(--s-v8-gold-bright)!important}
.serapta-footer-made a:hover{color:var(--s-v8-vital-bright)!important;text-shadow:0 0 15px rgba(168,212,90,.22)!important}

@media(max-width:800px){
  .serapta-topbar{min-height:42px!important}
  .serapta-topbar-inner{min-height:42px!important;width:calc(100% - 24px)!important}
  .serapta-topbar-email,.serapta-location,.serapta-topbar-status,.serapta-top-socials{display:none!important}
  .serapta-topbar-phone{display:inline-flex!important;font-size:11px!important}
  .serapta-topbar-right{margin-left:auto!important}
  .serapta-language-label{display:none!important}
  .serapta-footer-main{padding-top:48px!important}
  .serapta-footer-grid{grid-template-columns:1fr!important;gap:34px!important}
  .serapta-footer-bottom{display:flex!important;flex-direction:column!important;gap:8px!important;align-items:flex-start!important}
  .serapta-footer-made{display:block!important}
  .serapta-footer-made .serapta-powered-label{display:inline!important}
  .serapta-footer-rail{height:7px!important}
}
@media(max-width:560px){
  .serapta-mega-menu{width:calc(100vw - 20px)!important}
  .serapta-footer-main{padding-top:40px!important}
  .serapta-footer-column>a{font-size:14px!important;padding:7px 0!important}
}
@media(prefers-reduced-motion:reduce){.serapta-nav-link,.serapta-mega-link,.serapta-footer-column>a,.serapta-top-socials a{transition:none!important}}


/* =========================================================
   SERAPTA V8.1 — FINAL HEADER / MOBILE / FOOTER REFINEMENT
========================================================= */

/* Top mini bar — premium diagonal stripe visual */
.serapta-topbar{
  position:relative;
  isolation:isolate;
}
.serapta-topbar:before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.34;
  pointer-events:none;
  z-index:0;
  background:
    repeating-linear-gradient(
      115deg,
      transparent 0 17px,
      rgba(255,255,255,.075) 17px 19px,
      transparent 19px 38px
    );
}
.serapta-topbar:after{
  content:"";
  position:absolute;
  width:34%;
  height:190%;
  right:-7%;
  top:-45%;
  transform:skewX(-18deg);
  pointer-events:none;
  z-index:0;
  background:
    linear-gradient(
      90deg,
      transparent 0 22%,
      rgba(197,230,107,.12) 22% 25%,
      transparent 25% 47%,
      rgba(210,138,43,.15) 47% 50%,
      transparent 50% 72%,
      rgba(255,255,255,.055) 72% 75%,
      transparent 75%
    );
}
.serapta-topbar-inner,
.serapta-topbar-glow{z-index:2}

/* Hide the desktop/main header while the dedicated mobile panel is open.
   The off-canvas owns its own logo/header, so no duplicate header should
   remain visible behind/alongside it. */
@media(max-width:1180px){
  body.serapta-menu-open #serapta-header{
    visibility:hidden!important;
    pointer-events:none!important;
  }

  /* Dedicated mobile panel */
  .serapta-mobile-panel{
    width:min(460px,100vw)!important;
    max-width:100vw!important;
    background:
      radial-gradient(circle at 92% 0%,rgba(168,212,90,.13),transparent 29%),
      radial-gradient(circle at 0% 76%,rgba(201,162,74,.07),transparent 30%),
      linear-gradient(155deg,#06372E 0%,#031B17 100%)!important;
    border-left:1px solid rgba(201,162,74,.28)!important;
    box-shadow:-34px 0 100px rgba(0,0,0,.34)!important;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    scrollbar-color:rgba(197,230,107,.35) transparent;
  }
  .serapta-mobile-panel::-webkit-scrollbar{width:6px}
  .serapta-mobile-panel::-webkit-scrollbar-track{background:transparent}
  .serapta-mobile-panel::-webkit-scrollbar-thumb{
    background:rgba(197,230,107,.32);
    border-radius:99px;
  }

  .serapta-mobile-panel-accent{
    height:6px!important;
    background:
      repeating-linear-gradient(
        115deg,
        var(--s-v8-vital) 0 18px,
        var(--s-v8-gold-bright) 18px 32px,
        var(--s-v8-green) 32px 50px
      )!important;
    box-shadow:0 2px 18px rgba(168,212,90,.15);
  }

  .serapta-mobile-panel-top{
    height:78px!important;
    padding:0 20px!important;
    background:rgba(3,27,23,.76)!important;
    backdrop-filter:blur(16px);
    border-bottom:1px solid rgba(255,255,255,.09)!important;
    position:sticky;
    top:0;
    z-index:5;
  }
  .serapta-mobile-panel-logo{
    display:flex!important;
    align-items:center;
  }
  .serapta-mobile-panel-logo img{width:172px!important;max-width:72vw!important}
  .serapta-mobile-panel-top button{
    width:44px!important;
    height:44px!important;
    border:1px solid rgba(201,162,74,.30)!important;
    background:rgba(255,255,255,.06)!important;
    box-shadow:0 8px 24px rgba(0,0,0,.16);
  }
  .serapta-mobile-panel-top button span{background:#fff!important}

  .serapta-mobile-panel-inner{
    padding:24px 18px 42px!important;
  }
  .serapta-mobile-kicker{
    margin:0 4px 14px!important;
    font-size:9px!important;
    letter-spacing:.20em!important;
    color:var(--s-v8-gold-bright)!important;
  }

  /* Main mobile links */
  .serapta-mobile-nav{
    display:grid;
    gap:5px;
  }
  .serapta-mobile-nav>a,
  .serapta-mobile-parent-row>a{
    min-height:54px;
    box-sizing:border-box;
    display:flex;
    align-items:center;
    color:rgba(255,255,255,.90)!important;
    font:800 16px/1.25 Manrope,sans-serif!important;
    letter-spacing:-.01em;
    border:1px solid transparent!important;
    border-radius:14px!important;
    transition:background .22s var(--s-ease),color .22s var(--s-ease),transform .22s var(--s-ease),border-color .22s var(--s-ease);
  }
  .serapta-mobile-nav>a{
    padding:0 16px!important;
  }
  .serapta-mobile-nav>a:hover,
  .serapta-mobile-parent-row>a:hover{
    background:rgba(255,255,255,.065)!important;
    color:#fff!important;
    border-color:rgba(197,230,107,.13)!important;
    transform:translateX(2px);
  }
  .serapta-mobile-nav>a.active,
  .serapta-mobile-group.active>.serapta-mobile-parent-row>a{
    background:linear-gradient(105deg,var(--s-v8-vital),var(--s-v8-gold-bright))!important;
    color:var(--s-v8-deep)!important;
    border-color:rgba(255,255,255,.10)!important;
    box-shadow:0 12px 28px rgba(168,212,90,.13)!important;
  }

  /* Parent rows and submenu controls */
  .serapta-mobile-group{
    border:0!important;
    border-radius:14px;
    overflow:hidden;
  }
  .serapta-mobile-parent-row{
    grid-template-columns:minmax(0,1fr) 46px!important;
    gap:4px;
  }
  .serapta-mobile-parent-row>a{padding:0 16px!important}
  .serapta-mobile-parent{
    width:40px!important;
    height:40px!important;
    margin-right:4px;
    border:1px solid rgba(255,255,255,.13)!important;
    background:rgba(255,255,255,.055)!important;
    border-radius:12px!important;
    transition:.22s var(--s-ease);
  }
  .serapta-mobile-parent:hover,
  .serapta-mobile-parent.is-open{
    background:rgba(197,230,107,.13)!important;
    border-color:rgba(197,230,107,.32)!important;
    transform:none!important;
  }
  .serapta-mobile-parent span{
    background:#fff!important;
  }
  .serapta-mobile-group.active .serapta-mobile-parent span{
    background:var(--s-v8-deep)!important;
  }

  .serapta-mobile-submenu{
    margin:2px 5px 4px 14px!important;
    padding:0 0 0 9px!important;
    border-left:1px solid rgba(197,230,107,.18);
    max-height:0;
  }
  .serapta-mobile-group.is-open .serapta-mobile-submenu{
    max-height:900px!important;
    padding-bottom:7px!important;
  }
  .serapta-mobile-submenu a{
    min-height:43px;
    box-sizing:border-box;
    padding:9px 12px!important;
    border-left:2px solid transparent!important;
    border-radius:9px!important;
    color:rgba(255,255,255,.64)!important;
    font-size:13px!important;
    font-weight:700!important;
    gap:10px;
    transition:.2s var(--s-ease);
  }
  .serapta-mobile-submenu a:hover{
    color:#fff!important;
    background:rgba(255,255,255,.055)!important;
    border-left-color:var(--s-v8-vital)!important;
    transform:translateX(2px);
  }
  .serapta-mobile-submenu a.active{
    color:var(--s-v8-vital-bright)!important;
    background:rgba(168,212,90,.09)!important;
    border-left:3px solid var(--s-v8-gold-bright)!important;
    font-weight:850!important;
  }
  .serapta-mobile-submenu a span{
    margin-left:auto;
    opacity:.45;
    transition:.2s ease;
  }
  .serapta-mobile-submenu a:hover span,
  .serapta-mobile-submenu a.active span{opacity:1;color:var(--s-v8-gold-bright)}

  .serapta-mobile-utility{
    margin-top:25px!important;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.09);
    gap:8px!important;
  }
  .serapta-mobile-utility a{
    min-height:50px;
    box-sizing:border-box;
    padding:0 15px!important;
    align-items:center;
    border:1px solid rgba(201,162,74,.20)!important;
    border-radius:13px!important;
    background:rgba(255,255,255,.045)!important;
    color:rgba(255,255,255,.84)!important;
    font-weight:800!important;
  }
  .serapta-mobile-utility a:last-child{
    background:linear-gradient(105deg,var(--s-v8-vital),var(--s-v8-gold-bright))!important;
    color:var(--s-v8-deep)!important;
    border-color:transparent!important;
  }
  .serapta-mobile-language{
    margin-top:20px;
    padding-top:16px;
    border-top:1px solid rgba(255,255,255,.08);
  }
}

/* Who We Are mega menu — give the right-side list more breathing room */
.serapta-who-mega .serapta-mega-links{
  padding-left:56px!important;
  padding-right:42px!important;
}
.serapta-who-mega .serapta-mega-link{
  padding-left:26px!important;
}
@media(min-width:1181px) and (max-width:1280px){
  .serapta-who-mega .serapta-mega-links{padding-left:48px!important;padding-right:32px!important}
}

/* Footer conversation statement — stronger, warmer contrast */
.serapta-footer-conversation h2{
  color:var(--s-v8-vital-bright)!important;
  text-shadow:0 0 24px rgba(168,212,90,.10);
}

/* Footer — diagonal stripe visual matching the top mini bar */
.serapta-footer{
  position:relative;
  isolation:isolate;
}
.serapta-footer:before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.24;
  pointer-events:none;
  z-index:0;
  background:
    repeating-linear-gradient(
      115deg,
      transparent 0 20px,
      rgba(255,255,255,.045) 20px 22px,
      transparent 22px 44px
    );
}
.serapta-footer:after{
  content:"";
  position:absolute;
  width:620px;
  height:130%;
  right:-250px;
  top:-25%;
  border:0;
  border-radius:0;
  transform:skewX(-18deg);
  pointer-events:none;
  z-index:0;
  background:
    linear-gradient(
      90deg,
      transparent 0 28%,
      rgba(168,212,90,.08) 28% 31%,
      transparent 31% 51%,
      rgba(201,162,74,.10) 51% 54%,
      transparent 54% 74%,
      rgba(255,255,255,.035) 74% 77%,
      transparent 77%
    );
}
.serapta-footer-main,
.serapta-footer-conversation,
.serapta-footer-signature,
.serapta-footer-rail{
  position:relative;
  z-index:2;
}
.serapta-footer-rail{
  overflow:hidden!important;
  height:8px!important;
  background:
    repeating-linear-gradient(
      115deg,
      #709D38 0 18px,
      var(--s-v8-vital) 18px 34px,
      var(--s-v8-gold-bright) 34px 48px,
      #709D38 48px 66px
    )!important;
  box-shadow:0 0 24px rgba(201,162,74,.24)!important;
}
.serapta-footer-rail span,
.serapta-footer-rail i{display:none!important}

@media(max-width:800px){
  .serapta-footer-conversation h2{font-size:25px!important}
}



/* =========================================================
   SERAPTA V11 — REFINED TOP STRIPE / VIEWPORT-SAFE WHO MEGA
========================================================= */
/* Top mini bar: restrained architectural stripe treatment — visible, not noisy. */
.serapta-topbar{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
.serapta-topbar .serapta-topbar-stripes{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  opacity:1!important;
  background:
    linear-gradient(90deg,rgba(168,212,90,.13),transparent 24%,transparent 76%,rgba(201,162,74,.10)),
    repeating-linear-gradient(
      118deg,
      transparent 0 30px,
      rgba(255,255,255,.075) 30px 31px,
      transparent 31px 62px
    )!important;
}
.serapta-topbar:before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:0!important;
  bottom:0!important;
  width:42%!important;
  opacity:1!important;
  pointer-events:none!important;
  z-index:0!important;
  background:
    linear-gradient(105deg,transparent 0 18%,rgba(168,212,90,.10) 18% 18.7%,transparent 18.7% 34%,rgba(201,162,74,.08) 34% 34.7%,transparent 34.7% 52%,rgba(255,255,255,.045) 52% 52.7%,transparent 52.7%);
}
.serapta-topbar:after{
  content:""!important;
  position:absolute!important;
  right:-3%!important;
  top:0!important;
  bottom:0!important;
  width:32%!important;
  opacity:1!important;
  pointer-events:none!important;
  z-index:0!important;
  background:
    linear-gradient(105deg,transparent 0 25%,rgba(201,162,74,.09) 25% 25.8%,transparent 25.8% 48%,rgba(168,212,90,.075) 48% 48.8%,transparent 48.8% 72%,rgba(255,255,255,.04) 72% 72.8%,transparent 72.8%);
}
.serapta-topbar-inner{position:relative!important;z-index:2!important}

/* Who We Are: anchor the panel to the viewport, so neither edge gets clipped. */
@media(min-width:1181px){
  .serapta-who-mega{
    position:fixed!important;
    left:50vw!important;
    right:auto!important;
    top:calc(var(--s-header) + 1px)!important;
    width:min(1160px,calc(100vw - 48px))!important;
    max-width:calc(100vw - 48px)!important;
    margin:0!important;
    transform:translate(-50%,10px)!important;
  }
  .serapta-menu-item:hover>.serapta-who-mega,
  .serapta-menu-item.mega-open>.serapta-who-mega{
    transform:translateX(-50%)!important;
  }
  .serapta-who-mega .serapta-mega-inner{
    width:100%!important;
    grid-template-columns:330px minmax(0,1fr)!important;
  }
  .serapta-who-mega .serapta-mega-links{
    padding:30px 36px 32px 42px!important;
    min-width:0!important;
    overflow:visible!important;
  }
  .serapta-who-mega .serapta-mega-link{min-width:0!important}
}
@media(min-width:1181px) and (max-width:1280px){
  .serapta-who-mega{
    width:calc(100vw - 32px)!important;
    max-width:calc(100vw - 32px)!important;
  }
  .serapta-who-mega .serapta-mega-links{padding-left:34px!important;padding-right:28px!important}
}
@media(max-width:1180px){
  .serapta-who-mega{position:absolute!important;transform:none!important}
}

/* =========================================================
   SERAPTA V12 — FULL-WIDTH HEADER CONNECTOR + ADVANCED SEARCH
========================================================= */
/* Full-width colored connector between utility strip and main header. */
.serapta-header{
  border-top:4px solid transparent!important;
  border-image:linear-gradient(90deg,var(--s-v8-green) 0%,var(--s-v8-vital) 28%,var(--s-v8-gold-bright) 50%,var(--s-v8-vital) 72%,var(--s-v8-green) 100%) 1!important;
}
/* V13: the header border itself provides the single full-width connector.
   The previous viewport pseudo-element is intentionally removed so it cannot
   create a duplicate/half line above the top utility bar. */
.serapta-header:before{
  content:none!important;
  display:none!important;
}

/* Search command center */
.serapta-search-panel-inner{padding:42px 44px 44px!important;}
.serapta-search-form{gap:8px!important;}
.serapta-search-input{min-width:0!important;}
.serapta-search-clear{
  width:34px!important;height:34px!important;flex:0 0 34px!important;
  border:0!important;border-radius:50%!important;background:#eef3ec!important;
  color:var(--s-v8-green)!important;font-size:20px!important;line-height:1!important;
  cursor:pointer!important;display:grid!important;place-items:center!important;
}
.serapta-search-clear[hidden]{display:none!important}
.serapta-search-clear:hover{background:#dfe9dc!important;color:var(--s-v8-deep)!important}
.serapta-search-scope{
  height:48px!important;border:1px solid rgba(6,55,46,.10)!important;border-radius:12px!important;
  background:#f4f7f2!important;color:var(--s-v8-green)!important;padding:0 34px 0 12px!important;
  font:800 11px Inter,sans-serif!important;cursor:pointer!important;outline:0!important;
}
.serapta-search-scope:focus{border-color:rgba(127,174,61,.45)!important;box-shadow:0 0 0 3px rgba(168,212,90,.12)!important}
.serapta-search-tools{display:flex!important;justify-content:space-between!important;align-items:center!important;margin-top:10px!important;min-height:20px!important;color:#718078!important;font-size:10px!important}
.serapta-search-hint{display:flex;gap:7px;align-items:center}
.serapta-search-hint kbd{font:800 9px Inter,sans-serif!important;padding:3px 6px!important;border:1px solid #dce4db!important;border-bottom-width:2px!important;border-radius:5px!important;background:#fff!important;color:var(--s-v8-green)!important}
.serapta-search-count{font-weight:800!important;color:var(--s-v8-gold)!important}
.serapta-search-result{align-items:center!important;transition:background .16s ease,transform .16s ease!important}
.serapta-search-result:hover{transform:translateX(3px)!important}
.serapta-search-result-title{font-weight:800!important}
.serapta-search-result-type{padding:5px 8px!important;border-radius:999px!important;background:#edf4e9!important;color:var(--s-v8-green)!important;white-space:nowrap!important}
.serapta-search-state{display:flex!important;align-items:center!important;gap:9px!important;line-height:1.6!important}
.serapta-search-state strong{color:var(--s-v8-green)!important}
.serapta-search-spinner{width:14px;height:14px;border:2px solid #dbe5d7;border-top-color:var(--s-v8-gold);border-radius:50%;animation:seraptaSearchSpin .7s linear infinite;flex:0 0 auto}
@keyframes seraptaSearchSpin{to{transform:rotate(360deg)}}
@media(max-width:720px){
  .serapta-search-panel-inner{padding:30px 20px 34px!important;border-radius:22px!important;width:calc(100% - 20px)!important}
  .serapta-search-form{height:auto!important;min-height:56px!important;flex-wrap:wrap!important;padding:7px!important}
  .serapta-search-input{flex:1 1 calc(100% - 50px)!important;height:40px!important}
  .serapta-search-clear{order:2}
  .serapta-search-scope{order:3;flex:1;height:42px!important}
  .serapta-search-submit{order:4;flex:1;height:42px!important}
  .serapta-search-tools{margin-top:8px!important}
}

/* =========================================================
   SERAPTA V14 — REMOVE STRAY TOP EDGE ACCENT
========================================================= */
/*
 * The utility bar should begin cleanly at the top edge. The earlier
 * left-side decorative ::before stripe was creating the unwanted
 * partial colored line above the contact information. Keep the
 * dedicated stripe layer and right-side accent, but remove this
 * pseudo-element entirely.
 */
.serapta-topbar:before{
  content:none!important;
  display:none!important;
  background:none!important;
  opacity:0!important;
}

/* =========================================================
   SERAPTA V15 — DEFINITIVE TOP EDGE CLEANUP
========================================================= */
/*
 * The unwanted colored segment is on the TOP edge of the utility bar.
 * It is not the intended connector between the utility bar and main header.
 * Hard-reset every possible top-edge source on the utility bar while
 * preserving the internal stripe layer and the bottom connector.
 */
html body.serapta-site > .serapta-topbar,
body.serapta-site .serapta-topbar{
  border-top:0!important;
  outline:0!important;
  box-shadow:0 7px 28px rgba(1,31,26,.18)!important;
}
html body.serapta-site > .serapta-topbar:before,
html body.serapta-site > .serapta-topbar:after,
body.serapta-site .serapta-topbar:before,
body.serapta-site .serapta-topbar:after{
  content:none!important;
  display:none!important;
  border:0!important;
  box-shadow:none!important;
  background:none!important;
}
/* Keep the intentional stripe artwork as a child layer. */
body.serapta-site .serapta-topbar .serapta-topbar-stripes{
  border:0!important;
  outline:0!important;
  top:0!important;
  bottom:0!important;
}

/* =========================================================
   SERAPTA V16 — HEADER STABILITY PATCH
   Authoritative final layer. Fixes mega-menu/header gap,
   removes positional fluctuation, and tightens utility bar.
   ========================================================= */

/* Compact utility bar */
.serapta-topbar{
  min-height:34px!important;
  height:34px!important;
}
.serapta-topbar-inner{
  min-height:34px!important;
  height:34px!important;
  width:min(calc(100% - 48px),var(--s-container))!important;
  gap:16px!important;
}
.serapta-topbar-item{
  font-size:10.5px!important;
  line-height:1!important;
}
.serapta-top-icon{
  width:13px!important;
  height:13px!important;
}
.serapta-top-socials{
  gap:5px!important;
}
.serapta-top-socials a{
  width:24px!important;
  height:24px!important;
}
.serapta-language{
  min-height:25px!important;
  padding:2px 4px 2px 7px!important;
  gap:5px!important;
}
.serapta-language-label{
  font-size:8px!important;
}
.serapta-language-pills a,
.serapta-language-pills .glink,
.serapta-language-fallback{
  min-width:26px!important;
  height:20px!important;
  padding:0 5px!important;
  font-size:9px!important;
}

/* Main header: one predictable geometry */
.serapta-header{
  position:sticky!important;
  top:0!important;
  z-index:1005!important;
  min-height:0!important;
}
.serapta-header-inner{
  height:clamp(72px, calc(86px - (var(--s-scroll) * 18px)), 86px)!important;
  min-height:0!important;
  width:min(calc(100% - 48px),var(--s-container))!important;
  transition:height .16s ease!important;
}
body.serapta-scrolled .serapta-header-inner{
  height:68px!important;
  min-height:0!important;
}
.serapta-header-logo img{
  width:210px!important;
  max-height:58px!important;
  transition:max-height .16s ease,width .16s ease!important;
}
body.serapta-scrolled .serapta-header-logo img{
  max-height:50px!important;
}
.serapta-main-menu{
  gap:2px!important;
}
.serapta-nav-link{
  height:48px!important;
  min-height:48px!important;
  padding:9px 11px!important;
}

/* Mega menus are anchored directly to the nav item so the panel
   touches the normal header and remains attached while sticky. */
@media(min-width:1181px){
  /*
   * IMPORTANT: mega menus live inside the sticky header.
   * Do NOT use position:fixed here: the header uses backdrop-filter,
   * which can create a containing block for fixed descendants and makes
   * the normal (unscrolled) header produce a large vertical gap.
   * Anchor the menu directly to its nav item instead.
   */
  .serapta-menu-item.has-mega{
    position:relative!important;
  }
  .serapta-mega-menu{
    position:absolute!important;
    top:100%!important;
    left:50%!important;
    right:auto!important;
    width:min(1100px,calc(100vw - 34px))!important;
    max-width:calc(100vw - 34px)!important;
    margin:0!important;
    transform:translateX(-50%)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    z-index:10050!important;
    transition:
      opacity .16s ease,
      visibility 0s linear .16s!important;
  }

  .serapta-menu-item:hover>.serapta-mega-menu,
  .serapta-menu-item.mega-open>.serapta-mega-menu{
    transform:translateX(-50%)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transition:
      opacity .16s ease,
      visibility 0s linear 0s!important;
  }

  /* Prevent a mouse from losing the panel in the tiny old gap. */
  .serapta-mega-menu:before{
    content:""!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:-10px!important;
    height:10px!important;
    background:transparent!important;
  }

  .serapta-who-mega{
    position:absolute!important;
    top:100%!important;
  }
}

/* Keep the active/hover state clean and consistent */
.serapta-nav-link:after{
  display:none!important;
}
.serapta-nav-link{
  border:1px solid transparent!important;
  border-radius:11px!important;
  box-shadow:none!important;
}
.serapta-menu-item.active>.serapta-nav-link,
.serapta-menu-item.mega-open>.serapta-nav-link,
.serapta-nav-link.active{
  color:var(--s-deep)!important;
  background:linear-gradient(105deg,rgba(169,214,91,.18),rgba(201,164,75,.12))!important;
  border-color:rgba(127,174,61,.26)!important;
  box-shadow:inset 0 -2px 0 var(--s-gold)!important;
}
.serapta-menu-item:hover>.serapta-nav-link:not(.active),
.serapta-nav-link:hover,
.serapta-nav-link:focus-visible{
  color:var(--s-deep)!important;
  background:linear-gradient(105deg,rgba(169,214,91,.14),rgba(201,164,75,.08))!important;
  border-color:rgba(127,174,61,.20)!important;
  box-shadow:none!important;
}

/* Search panel follows the same header edge */
@media(min-width:1181px){
  .serapta-search-panel{
    position:fixed!important;
    top:var(--serapta-mega-top,120px)!important;
    left:0!important;
    right:0!important;
    z-index:10040!important;
  }
}

/* Desktop breakpoint */
@media(max-width:1180px){
  .serapta-topbar{
    min-height:32px!important;
    height:32px!important;
  }
  .serapta-topbar-inner{
    min-height:32px!important;
    height:32px!important;
    width:calc(100% - 28px)!important;
  }
  .serapta-header-inner{
    height:72px!important;
    min-height:72px!important;
  }
  body.serapta-scrolled .serapta-header-inner{
    height:64px!important;
    min-height:64px!important;
  }
  .serapta-header-logo img{
    max-height:50px!important;
  }
  body.serapta-scrolled .serapta-header-logo img{
    max-height:45px!important;
  }
}

/* Mobile utility rail stays deliberately minimal */
@media(max-width:800px){
  .serapta-topbar{
    min-height:31px!important;
    height:31px!important;
  }
  .serapta-topbar-inner{
    min-height:31px!important;
    height:31px!important;
    width:calc(100% - 24px)!important;
  }
  .serapta-topbar-phone{
    font-size:10px!important;
  }
  .serapta-top-icon{
    width:12px!important;
    height:12px!important;
  }
  .serapta-header-inner{
    height:70px!important;
    min-height:70px!important;
  }
  body.serapta-scrolled .serapta-header-inner{
    height:62px!important;
    min-height:62px!important;
  }
}


/* =========================================================
   SERAPTA V18 — ZERO-GAP MEGA MENU ANCHOR
   The panel is a child of the nav item. Keep its top edge exactly
   on the nav item's bottom; no fixed-position viewport offset.
========================================================= */
@media (min-width:1181px){
  .serapta-menu-item.has-mega{
    position:relative!important;
  }
  .serapta-menu-item.has-mega > .serapta-mega-menu{
    position:absolute!important;
    top:100%!important;
    bottom:auto!important;
    margin-top:0!important;
    margin-bottom:0!important;
    transform:translateX(-50%)!important;
  }
  .serapta-menu-item.has-mega:hover > .serapta-mega-menu,
  .serapta-menu-item.has-mega.mega-open > .serapta-mega-menu{
    transform:translateX(-50%)!important;
  }
  .serapta-mega-menu:before{
    top:-12px!important;
    height:12px!important;
  }
}


/* =========================================================
   SERAPTA V20 — FINAL DESKTOP MEGA MENU GEOMETRY
   One source of truth: the rendered header/nav geometry.
   - Nav chain fills the header height.
   - Mega panels attach at the exact bottom of that height.
   - JS only adjusts horizontal centering per menu item.
   - No fixed positioning, no vertical transforms, no artificial gap.
========================================================= */
@media (min-width:1181px){
  .serapta-header-inner{
    align-items:stretch!important;
  }

  .serapta-desktop-nav,
  .serapta-main-menu{
    height:100%!important;
    min-height:0!important;
  }

  .serapta-desktop-nav{
    display:flex!important;
    align-items:stretch!important;
  }

  .serapta-main-menu{
    align-items:stretch!important;
  }

  .serapta-menu-item{
    height:100%!important;
    display:flex!important;
    align-items:stretch!important;
    position:relative!important;
  }

  .serapta-nav-link{
    height:100%!important;
    min-height:0!important;
    display:flex!important;
    align-items:center!important;
  }

  .serapta-menu-item.has-mega > .serapta-mega-menu{
    position:absolute!important;
    top:100%!important;
    left:50%!important;
    right:auto!important;
    bottom:auto!important;
    margin:0!important;
    transform:translateX(-50%)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    z-index:10050!important;
  }

  .serapta-menu-item.has-mega:hover > .serapta-mega-menu,
  .serapta-menu-item.has-mega.mega-open > .serapta-mega-menu,
  .serapta-menu-item.has-mega:focus-within > .serapta-mega-menu{
    transform:translateX(-50%)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  /* Keep the pointer bridge invisible; it occupies no visual space. */
  .serapta-menu-item.has-mega > .serapta-mega-menu:before{
    top:-8px!important;
    height:8px!important;
  }

  /* Who We Are gets the same viewport-safe width as the other panels. */
  .serapta-who-mega{
    width:min(1160px,calc(100vw - 32px))!important;
    max-width:calc(100vw - 32px)!important;
  }
}


/* =========================================================
   SERAPTA V22 — PRODUCTION REFINEMENT
   Focused polish: utility bar, GTranslate flags, search UX,
   and footer typography. V21 header geometry is preserved.
========================================================= */

/* Utility bar: stronger, more readable information hierarchy */
.serapta-topbar-inner{
  min-height:42px!important;
  gap:22px!important;
}
.serapta-topbar-left,
.serapta-topbar-right{
  gap:18px!important;
}
.serapta-topbar-item{
  font-size:13px!important;
  font-weight:750!important;
  letter-spacing:.012em!important;
  gap:9px!important;
}
.serapta-top-icon{
  width:17px!important;
  height:17px!important;
  flex:0 0 17px!important;
}
.serapta-top-socials{
  gap:8px!important;
}
.serapta-top-socials a{
  width:31px!important;
  height:31px!important;
  border-radius:10px!important;
  border:1px solid rgba(255,255,255,.24)!important;
  background:rgba(255,255,255,.075)!important;
  color:#fff!important;
}
.serapta-top-socials a svg{
  width:16px!important;
  height:16px!important;
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.7!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.serapta-top-socials a svg path[fill="currentColor"],
.serapta-top-socials a svg .serapta-icon-fill{
  fill:currentColor!important;
  stroke:none!important;
}
.serapta-top-socials a:hover{
  background:var(--s-vital)!important;
  color:var(--s-forest)!important;
  border-color:var(--s-vital)!important;
  transform:translateY(-2px)!important;
}
.serapta-language{
  gap:9px!important;
  font-size:11px!important;
  letter-spacing:.08em!important;
}
.serapta-language-label{
  font-size:10px!important;
  font-weight:800!important;
}
.serapta-language-pills{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
}
.serapta-language-pills a,
.serapta-language-pills .glink,
.serapta-language-pills .gt_link,
.serapta-language-pills .gt-link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:28px!important;
  padding:3px 8px!important;
  border:1px solid rgba(255,255,255,.26)!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.09)!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:850!important;
  line-height:1!important;
  text-decoration:none!important;
  overflow:hidden!important;
}
.serapta-language-pills img,
.serapta-language-pills .gt_flag,
.serapta-language-pills .gtflag,
.serapta-gtranslate img,
.serapta-mobile-language img{
  border-radius:4px!important;
  overflow:hidden!important;
}
.serapta-language-pills a:hover,
.serapta-language-pills .glink:hover{
  background:rgba(255,255,255,.18)!important;
  border-color:rgba(255,255,255,.58)!important;
}

/* Search panel: balanced width, strong input and category chips */
.serapta-search-panel{
  z-index:10040!important;
  max-height:calc(100vh - var(--serapta-mega-top,120px))!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
}
.serapta-search-panel-inner{
  width:min(calc(100% - 48px),1080px)!important;
  padding:38px 44px 40px!important;
}
.serapta-search-heading h2{
  font-size:clamp(29px,3vw,38px)!important;
  line-height:1.08!important;
  letter-spacing:-.045em!important;
}
.serapta-search-heading p{
  font-size:14px!important;
  line-height:1.6!important;
}
.serapta-search-form{
  min-height:66px!important;
  height:auto!important;
  gap:10px!important;
  padding:8px 9px 8px 19px!important;
  border-radius:18px!important;
}
.serapta-search-input{
  min-width:0!important;
  min-height:48px!important;
  font-size:18px!important;
  font-weight:650!important;
}
.serapta-search-input::placeholder{
  color:#87938a!important;
  font-weight:500!important;
}
.serapta-search-submit{
  min-width:112px!important;
  height:48px!important;
  padding:0 20px!important;
  border-radius:13px!important;
  font-size:13px!important;
}
.serapta-search-filters{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:15px 0 2px!important;
}
.serapta-search-filter-label{
  margin-right:3px!important;
  color:#68766c!important;
  font-size:11px!important;
  font-weight:850!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.serapta-search-filter{
  min-height:34px!important;
  padding:0 14px!important;
  border:1px solid #dce5d9!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#42604a!important;
  font:750 12px/1 Inter,sans-serif!important;
  cursor:pointer!important;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease!important;
}
.serapta-search-filter:hover{
  border-color:#9dbb76!important;
  background:#f3f8ed!important;
  transform:translateY(-1px)!important;
}
.serapta-search-filter.is-active{
  border-color:#386641!important;
  background:#386641!important;
  color:#fff!important;
  box-shadow:0 5px 14px rgba(56,102,65,.16)!important;
}
.serapta-search-tools{
  margin-top:9px!important;
  font-size:11px!important;
}
.serapta-search-results{
  max-height:min(42vh,390px)!important;
  overflow-y:auto!important;
  border-radius:16px!important;
  box-shadow:0 14px 36px rgba(31,46,26,.08)!important;
}
.serapta-search-result{
  align-items:center!important;
  min-height:56px!important;
  padding:15px 18px!important;
  font-size:14px!important;
}
.serapta-search-result-title{
  font-weight:750!important;
}
.serapta-search-result-type{
  flex:0 0 auto!important;
  padding:5px 8px!important;
  border-radius:999px!important;
  background:#f1f5ed!important;
  color:#55734c!important;
  font-size:10px!important;
  font-weight:850!important;
}
.serapta-search-state{
  padding:22px!important;
  font-size:13px!important;
  line-height:1.65!important;
}
.serapta-search-view-all{
  padding:15px 18px!important;
  font-size:13px!important;
}
.serapta-search-close{
  right:0!important;
  top:30px!important;
  width:38px!important;
  height:38px!important;
  border-radius:50%!important;
  background:#eef3eb!important;
  color:#386641!important;
  font-size:24px!important;
  line-height:1!important;
}
.serapta-search-close:hover{
  background:#386641!important;
  color:#fff!important;
}

/* Footer: increase reading size without changing its layout */
.serapta-footer-brand p{
  font-size:14px!important;
  line-height:1.8!important;
}
.serapta-footer-location{
  font-size:13px!important;
  line-height:1.5!important;
}
.serapta-footer-column h3{
  font-size:14px!important;
  letter-spacing:.12em!important;
  margin-bottom:18px!important;
}
.serapta-footer-column>a{
  padding:11px 0!important;
  font-size:14px!important;
  line-height:1.5!important;
}
.serapta-footer-connect>a{
  font-size:13px!important;
  overflow-wrap:anywhere!important;
}
.serapta-footer-kicker{
  font-size:11px!important;
}
.serapta-footer-conversation p{
  font-size:14px!important;
  line-height:1.7!important;
}
.serapta-footer-eyebrow{
  font-size:11px!important;
}
.serapta-footer-conversation h2{
  font-size:clamp(26px,3vw,38px)!important;
  line-height:1.12!important;
}
.serapta-footer-cta{
  font-size:14px!important;
}
.serapta-footer-bottom{
  font-size:12px!important;
  line-height:1.7!important;
}
.serapta-footer-made strong{
  font-size:15px!important;
}
.serapta-footer-made a{
  font-size:13px!important;
}

@media(max-width:1180px){
  .serapta-topbar-inner{min-height:38px!important}
  .serapta-topbar-item{font-size:12px!important}
  .serapta-top-socials a{width:29px!important;height:29px!important}
}
@media(max-width:720px){
  .serapta-search-panel-inner{
    width:calc(100% - 20px)!important;
    padding:28px 18px 30px!important;
  }
  .serapta-search-heading h2{font-size:27px!important;padding-right:35px!important}
  .serapta-search-form{
    display:grid!important;
    grid-template-columns:24px minmax(0,1fr) auto!important;
    gap:6px!important;
    padding:8px 10px!important;
  }
  .serapta-search-icon{grid-column:1;grid-row:1}
  .serapta-search-input{
    grid-column:2/4;grid-row:1;
    width:100%!important;
    min-height:42px!important;
    padding:0 5px!important;
    font-size:16px!important;
  }
  .serapta-search-clear{grid-column:3;grid-row:1;z-index:2}
  .serapta-search-submit{
    grid-column:1/4;grid-row:2;
    width:100%!important;
    min-height:43px!important;
  }
  .serapta-search-filters{gap:6px!important}
  .serapta-search-filter{min-height:32px!important;padding:0 11px!important}
  .serapta-search-tools{align-items:flex-start!important;gap:8px!important}
  .serapta-footer-brand p{font-size:14px!important}
  .serapta-footer-column>a{font-size:14px!important}
  .serapta-footer-bottom{font-size:11px!important}
}

@media(min-width:1181px){
  .serapta-topbar,.serapta-topbar-inner{
    min-height:44px!important;
    height:44px!important;
  }
}
@media(max-width:1180px){
  .serapta-topbar,.serapta-topbar-inner{
    min-height:38px!important;
    height:38px!important;
  }
}
@media(max-width:560px){
  .serapta-topbar,.serapta-topbar-inner{
    min-height:34px!important;
    height:34px!important;
  }
}
