/* Layout values live in Elementor controls; this sheet supplies behavior and resets. */
:where(.ag-native-node) {min-width:0;max-width:100%;font-family:'DM Sans',sans-serif}
:where(.ag-native-node .elementor-heading-title) {font-family:inherit;line-height:1.2}
.ag-native-node.elementor-widget-text-editor p {margin:0}
.ag-native-node svg[fill="none"] {fill:none!important}
:where(.ag-native-node.elementor-widget-text-editor) {font-size:16px;line-height:1.65}
:where(.ag-native-node.elementor-widget-image img) {max-width:100%;height:auto}
.ag-native {margin:0;overflow-x:clip}
.ag-native .animated.fadeInUp {animation-name:agnFadeInUp}
.ag-native .animated.fadeInLeft {animation-name:agnFadeInLeft}
.ag-native .animated.fadeInRight {animation-name:agnFadeInRight}
@keyframes agnFadeInUp {from{opacity:0;transform:translate3d(0,24px,0)}to{opacity:1;transform:none}}
@keyframes agnFadeInLeft {from{opacity:0;transform:translate3d(-24px,0,0)}to{opacity:1;transform:none}}
@keyframes agnFadeInRight {from{opacity:0;transform:translate3d(24px,0,0)}to{opacity:1;transform:none}}
.ag-native-center-widget {align-self:center}
.ag-native-center-block.e-con {margin-inline:auto}
.ag-native .ag-native-intrinsic.e-con {width:auto;--width:auto;flex-shrink:1}
.ag-native .ag-native-no-shrink {flex-shrink:0}
.ag-native-inline.e-con {width:max-content;align-self:center}
.ag-native-node .elementor-button {white-space:normal;line-height:1.5}
.ag-native-header {position:fixed!important;inset:0 0 auto!important;z-index:1000;background:rgba(255,255,255,.97);backdrop-filter:blur(12px);box-shadow:0 2px 12px #1118270d}
.admin-bar .ag-native-header {top:32px!important}
.ag-native-primary-menu ul {display:flex;align-items:center;justify-content:flex-end;gap:30px;list-style:none;margin:0;padding:0}
.ag-native-primary-menu .agn-menu-cta>a {background:#514595;color:white;border-radius:999px;padding:10px 24px;font-size:15px;text-align:center}
.ag-native-primary-menu a {display:block;color:#374151;font-size:16px;font-weight:500;line-height:1.5;padding:8px 0;text-decoration:none}
.ag-native-primary-menu :is(.current-menu-item,.current-menu-ancestor)>a,.ag-native-primary-menu a:hover {color:#514595}
.ag-native-primary-menu .current-menu-item>a {box-shadow:0 2px 0 #514595}
.ag-native-primary-menu .menu-item-has-children {position:relative}
.ag-native-primary-menu .sub-menu {display:none;position:absolute;top:100%;left:0;min-width:200px;padding:12px 20px;background:white;box-shadow:0 8px 24px #11182720;z-index:20}
.ag-native-primary-menu li:hover>.sub-menu,.ag-native-primary-menu li:focus-within>.sub-menu {display:block}
.agn-menu-toggle {display:none;color:#514595;background:white;border:1px solid #e5e7eb;border-radius:6px;padding:9px 12px;font:inherit;cursor:pointer}
.ag-native-menu ul {list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.ag-native-menu a {color:#d1d5db;text-decoration:none;font-size:16px;line-height:1.65}
.ag-native-menu a:hover {color:white;text-decoration:underline}
.ag-native-menu-legal ul {flex-direction:row;justify-content:center;flex-wrap:wrap;gap:8px 20px}
.ag-native-tabs {--n-tabs-title-background-color:#e5e7eb;--n-tabs-title-background-color-active:#514595;--n-tabs-title-color:#475569;--n-tabs-title-color-active:#fff;--n-tabs-title-border-radius:999px;--n-tabs-title-font-size:18px;--n-tabs-title-font-weight:600;--n-tabs-title-padding-top:12px;--n-tabs-title-padding-bottom:12px;--n-tabs-title-padding-left:28px;--n-tabs-title-padding-right:28px;--n-tabs-heading-justify-content:center;--n-tabs-heading-gap:8px;--n-tabs-gap:40px}
.ag-native-tabs .e-n-tab-title {line-height:1.5}
.ag-native-carousel .ag-carousel-track {overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.ag-native-carousel .ag-carousel-track::-webkit-scrollbar {display:none}
.ag-native-slide {scroll-snap-align:start;flex-shrink:0!important}
.ag-native-carousel-next,.ag-native-carousel-prev {width:auto!important;align-self:center}
.ag-native-carousel-next .elementor-button,.ag-native-carousel-prev .elementor-button {border:1px solid #e5e7eb;border-radius:50%;padding:8px;background:white;color:#514595}
.ag-native-carousel-next .elementor-button-text,.ag-native-carousel-prev .elementor-button-text {position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.agn-form {display:grid;grid-template-columns:1fr;gap:24px}
.agn-field {min-width:0}
.agn-form label {display:block;font-size:15px;line-height:1.6;font-weight:500;margin-bottom:8px}
.agn-form :is(input:not([type=hidden]),textarea) {box-sizing:border-box;display:block;width:100%;font-family:inherit;font-size:16px;line-height:1.5;border:1px solid #d1d5db;border-radius:6px;background:white;color:#111827;padding:12px 14px;min-height:46px;max-width:100%}
.agn-form textarea {resize:vertical}
.agn-form :is(input,textarea):focus {outline:2px solid #514595;outline-offset:2px}
.agn-submit {border:0;border-radius:999px;background:#514595;color:white;padding:12px 28px;font-family:inherit;font-size:16px;line-height:1.5;font-weight:600;cursor:pointer;justify-self:center}
.agn-submit:hover {filter:brightness(.94)}
.agn-submit:disabled {cursor:wait;opacity:.65}
.agn-form-brochure .agn-submit {justify-self:stretch;border-radius:6px}
.agn-form-newsletter {grid-template-columns:minmax(0,1fr) auto;max-width:600px;margin:0 auto;gap:16px}
.agn-form-newsletter .ag-form-status {grid-column:1/-1}
.agn-form-newsletter .agn-submit {border-radius:6px;white-space:nowrap}
.agn-form .ag-honeypot {position:absolute!important;left:-10000px!important;top:auto;width:1px;height:1px;overflow:hidden}
.agn-form .ag-form-status {font-size:15px;line-height:1.6}
.agn-form .ag-form-status:empty {display:none}
.agn-form .ag-success {color:#15803d}.agn-form .ag-error {color:#b91c1c}
.agn-form .ag-download-link {color:#514595;text-decoration:underline}
.agn-visually-hidden,.agn-skip:not(:focus) {position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.agn-skip:focus {position:fixed;top:12px;left:12px;background:white;color:#514595;z-index:10001;padding:12px}
.agn-post-inner {max-width:1280px;margin:0 auto;padding:0 24px}
.agn-posts {padding:64px 0}
.agn-post-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.ag-native .ag-card-meta {display:flex;gap:12px;justify-content:space-between;align-items:flex-start}
.ag-native .ag-card-meta time {white-space:nowrap}
.ag-native .ag-feature-meta {display:flex;gap:20px;align-items:center;justify-content:space-between}
.ag-native .agn-posts h3 a {color:inherit;text-decoration:none}
.ag-native .prose {min-width:0;overflow-wrap:anywhere;font-size:18px;line-height:1.75}
.ag-native .prose * {max-width:100%;overflow-wrap:anywhere}
.ag-native .prose table {display:block;overflow-x:auto;width:100%}
.ag-native .prose :is(p,li,td,th) {font-size:18px!important;line-height:1.75!important}
.ag-native .prose :is(p,li,td,th) :is(span,strong,em,a) {font-size:inherit!important;line-height:inherit!important}
.ag-native .ag-native-node.prose p {margin:0 0 1.1em}
.ag-native .prose :is(ul,ol) {margin:.75em 0 1.25em;padding-left:1.5em}
.ag-native .prose ul {list-style:disc}.ag-native .prose ol {list-style:decimal}
.ag-native .prose li {margin:.4em 0}
.ag-native .prose :is(h2,.ag-body-heading) {font-size:30px;line-height:1.35;font-weight:700;margin:1.5em 0 .65em}
.ag-native .prose h3 {font-size:25px;line-height:1.4;font-weight:700;margin:1.4em 0 .6em}
.ag-native .prose h4 {font-size:21px;line-height:1.45;font-weight:700;margin:1.3em 0 .6em}
.agn-tags {display:flex;gap:8px;flex-wrap:wrap}.agn-tags a {border-radius:999px;background:#f1f5f9;color:#475569;padding:4px 12px;font-size:15px}
@media(max-width:1024px){.ag-native-primary-menu ul{gap:18px}.agn-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:768px){.ag-native-span-two{grid-column:span 2}}
@media(max-width:782px){.admin-bar .ag-native-header{top:46px!important}}
@media(max-width:1024px){
 .agn-menu-toggle{display:block;margin-left:auto}
 .ag-native-primary-menu{position:static;width:auto!important;flex:1}
 .ag-native-primary-menu .elementor-widget-container>nav{display:none}
 .ag-native-primary-menu.agn-menu-open .elementor-widget-container>nav{display:block;position:absolute;left:0;right:0;top:100%;background:white;padding:24px;box-shadow:0 12px 20px #11182718;max-height:75vh;overflow:auto}
 .ag-native-primary-menu ul{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:12px}
 .ag-native-primary-menu .sub-menu{display:block;position:static;box-shadow:none;padding:8px 0 8px 20px}
 .ag-native-header-cta{display:none}
}
@media(max-width:767px){
 .agn-post-grid{grid-template-columns:1fr}
 .agn-post-inner{padding:0 16px}
 .agn-form-newsletter{grid-template-columns:1fr}
 .agn-form-newsletter .agn-submit{justify-self:stretch}
 .ag-native-tabs{--n-tabs-title-font-size:16px;--n-tabs-title-padding-left:16px;--n-tabs-title-padding-right:16px}
}
@media(prefers-reduced-motion:reduce){
 .ag-native :is(.elementor-invisible,.animated){visibility:visible!important;opacity:1!important;animation:none!important;transform:none!important;transition:none!important}
 .ag-native .animate-float{animation:none!important}
 .ag-native-carousel .ag-carousel-track{scroll-behavior:auto}
}

/* Stable interaction states for native and database-backed controls. */
.ag-native .elementor-button {text-decoration:none;transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s}
.ag-native .elementor-button:is(:hover,:focus) {text-decoration:none}
.ag-native :is(.elementor-button,.agn-submit,.agn-menu-toggle,.ag-feature-meta>a,.ag-blog-card a.inline-flex):focus-visible {outline:3px solid #22b455;outline-offset:4px}
.ag-native .ag-feature-meta {flex-wrap:wrap;align-items:flex-end;gap:16px 24px}
.ag-native .ag-feature-meta>div {flex:1 1 220px;min-width:0;font-size:16px;line-height:1.65}
.ag-native .ag-feature-meta>a,.ag-native .ag-blog-card a.inline-flex {display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;flex-shrink:0;min-height:44px;height:auto;padding:10px 18px;font-size:15px;line-height:1.5;text-decoration:none;transition:background-color .18s,color .18s}
.ag-native .ag-feature-meta>a {color:#fff;background:#514595}
.ag-native .ag-feature-meta>a:is(:hover,:focus) {color:#fff;background:#42367e;text-decoration:none}
.ag-native .ag-blog-card a.inline-flex {color:#514595;background:#ede9f5}
.ag-native .ag-blog-card a.inline-flex:is(:hover,:focus) {color:#42367e;background:#ded7ef;text-decoration:none}
.ag-native .agn-submit:is(:hover,:focus) {background:#42367e;color:#fff}
.ag-native .agn-menu-toggle:is(:hover,:focus) {background:#f3f0fb;color:#514595;border-color:#514595}
.ag-native-primary-menu .agn-menu-cta>a:is(:hover,:focus) {background:#42367e;color:#fff}
.ag-native .ag-native-tabs .e-n-tab-title:not([aria-selected=true]):is(:hover,:focus-visible) {background:#e7e3f3;color:#514595}
.ag-native .ag-native-tabs .e-n-tab-title[aria-selected=true]:is(:hover,:focus-visible) {background:#42367e;color:#fff}
.ag-native-carousel :is(.ag-native-carousel-next,.ag-native-carousel-prev) .elementor-button-content-wrapper {gap:0}
@media(max-width:767px){.ag-native .ag-feature-meta{align-items:flex-start;flex-direction:column}.ag-native .ag-feature-meta>div{flex:0 1 auto}}

.ag-native .ag-blog-feature .grid>div:last-child img {display:block;width:100%;height:100%;object-fit:cover}
.ag-native .ag-blog-card>a>img {display:block;width:100%;height:224px;object-fit:cover}
