:root{--color-heading-card:#008;--color-body-card:#008;--color-border-card:#223fa0;--color-title-main:#191e3d;--color-desc-main:#008;--color-accent:#4f46e5;--color-accent-hover:#3730a3;--color-card-text-hover:#4f46e5;--color-divider:#bfdbfe;--color-button-bg:#191e3d;--color-button-text:#fff;--color-button-bg-hover:#008;--color-background-light:#f8fafc;--color-gradient-start:#0062d1;--color-gradient-end:#004c97;--color-mid-banner-gradient-start:#036;--color-mid-banner-gradient-end:#06c;--color-success:#16a34a;--color-danger:#dc2626;--color-warning:#f59e0b;--color-title-main-rgb:25, 30, 61;--color-white:#fff;--space-section-y:clamp(4.5rem, 7vw, 6rem);--space-section-y-tight:clamp(3.75rem, 5vw, 5rem);--font-heading:"Source Serif Pro", serif;--font-body:"Manrope", sans-serif;--fs-h1:3rem;--fs-h2:2.25rem;--fs-h3:2rem;--fs-h4:1.625rem;--fs-h5:1.25rem;--fs-body-main:1.25rem;--fs-body-card:1.125rem;--fs-body-base:1rem;--fs-button:1.125rem;--fs-nav-link:1rem;--fs-dropdown-link:.95rem;--fs-banner-h1-mobile:2.5rem;--fs-banner-p-mobile:1.25rem;--fs-scroll-button-mobile:1.125rem}@media (min-width:768px){:root{--fs-h2:2.625rem;--fs-h3:2.125rem;--fs-h4:1.75rem}}@media (min-width:1024px){:root{--fs-h2:3rem;--fs-h3:2.375rem;--fs-h4:1.75rem;--fs-body-main:1.3125rem;--fs-banner-h1-sm:3rem;--fs-banner-p-sm:1.5rem;--fs-banner-h1-md:3.5rem;--fs-banner-p-md:1.75rem;--fs-banner-h1-lg:4rem;--fs-banner-p-lg:2rem}}html{scroll-behavior:smooth;font-size:16px;overflow-x:hidden}body{background-color:var(--color-background-light);font-family:var(--font-body);color:var(--color-title-main);margin:0;overflow-x:hidden}img{max-width:100%;height:auto;display:block}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-15px)}to{transform:translateY(0)}}.scroll-container{background:linear-gradient(#142347 0%,#191e3d 100%);width:100%}#hero-container{height:100vh;position:relative}#hero-sticky{color:#fff;text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}#hero-sticky:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(#082c7624 0%,#082c7680 45%,#082c76a8 100%);position:absolute;inset:0}#hero-video{z-index:1;opacity:1;object-fit:cover;width:100%;min-width:100%;height:auto;min-height:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-content{z-index:10;color:#fff;text-shadow:0 4px 14px #02061773,0 12px 34px #02061780;max-width:100%;padding:0 1rem;position:relative}.hero-content h1,.hero-content p{opacity:1}.hero-content h1{font-family:var(--font-heading);font-size:var(--fs-banner-h1-mobile);font-weight:600;line-height:1.1}.hero-content p{font-family:var(--font-body);font-size:var(--fs-banner-p-mobile);max-width:800px;margin:1.5rem auto 0}@media (min-width:480px){.hero-content h1{font-size:var(--fs-banner-h1-sm)}.hero-content p{font-size:var(--fs-banner-p-sm)}}@media (min-width:768px){.hero-content h1{font-size:var(--fs-banner-h1-md)}.hero-content p{font-size:var(--fs-banner-p-md)}}@media (min-width:1024px){.hero-content h1{font-size:var(--fs-banner-h1-lg)}.hero-content p{font-size:var(--fs-banner-p-lg)}}@media (max-width:767px){#hero-sticky{padding:0 1.3rem calc(7.1rem + env(safe-area-inset-bottom,0px));justify-content:flex-end;align-items:flex-start}#hero-video{width:auto;height:100%}.hero-content{text-align:left;max-width:min(22rem,90vw);padding:0}.hero-content h1{letter-spacing:-.015em;margin:0;line-height:1.03}.hero-content p{max-width:20.5rem;margin-top:1.2rem;margin-left:0;line-height:1.34}}.scroll-down{z-index:10;font-family:var(--font-body);opacity:.92;color:#fff;flex-direction:column;align-items:center;gap:.35rem;font-size:.875rem;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.scroll-down .arrow{font-size:1.65rem;line-height:1;animation:2s infinite bounce}@media (max-width:767px){.scroll-down{left:1.3rem;bottom:calc(1.9rem + env(safe-area-inset-bottom,0px));letter-spacing:.01em;align-items:flex-start;font-size:1.02rem;transform:none}}.narrative-section{color:#fff;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:2rem 1rem;display:flex;position:relative;overflow:hidden}.narrative-background{z-index:1;background-position:50%;background-size:cover;background-attachment:scroll;width:100%;height:100%;position:absolute;top:0;left:0}.narrative-background-media{object-fit:cover;width:100%;height:100%}.home-pill-divider{border-color:var(--color-divider)}.home-gateway-grid-pattern{background-image:radial-gradient(circle,#fff 1px,#0000 1px);background-size:40px 40px}.narrative-background:after{content:"";background:rgba(var(--color-title-main-rgb), .7);z-index:2;position:absolute;inset:0}.intro-section .narrative-background:after{background:radial-gradient(circle at center, rgba(var(--color-title-main-rgb), .2) 0%, rgba(var(--color-title-main-rgb), .8) 100%)}.narrative-content{z-index:3;text-align:center;opacity:0;max-width:800px;padding:2rem;transition:opacity 1s ease-out,transform 1s ease-out;position:relative;transform:translateY(60px)}.intro-section .narrative-content{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);text-align:center;background:#ffffff14;border:1px solid #fff3;padding:2.5rem 2rem;transition:all 1s ease-out;transform:scale(.95);box-shadow:0 4px 30px #0000001a}.narrative-content.is-visible,.narrative-section.is-visible .narrative-content{opacity:1;transform:translateY(0)scale(1)}.narrative-content .content-inner{opacity:0;transition:opacity 1s ease-out .5s,transform 1s ease-out .5s;transform:translateY(20px)}.narrative-section.is-visible .content-inner{opacity:1;transform:translateY(0)}.mid-banner{box-sizing:border-box;text-align:center;background:#fff;justify-content:center;align-items:center;height:auto;min-height:400px;padding:2rem 1rem;transition:background-position .5s;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 25px #0000000d}#particles-js{z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.mid-banner .content{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:2;opacity:1;background:linear-gradient(135deg,#fffffff2,#e9f0f9e6);border:1px solid #fffc;border-radius:.5rem;max-width:100%;margin:2rem auto;padding:2rem 1.5rem;animation:.8s forwards fadeIn;position:relative;transform:translateY(0);box-shadow:0 10px 40px #00000014,0 2px 5px #00000008}.eyebrow{opacity:.9;justify-content:center;align-items:center;margin:1.5rem 0 1.2rem;display:flex}.divider-line{background-color:var(--color-accent);opacity:1;flex:1;max-width:3.75rem;height:.125rem}.divider-text{font-family:var(--font-body);font-size:var(--fs-body-base);letter-spacing:.05em;text-transform:uppercase;color:var(--color-accent);white-space:nowrap;margin:0 1.5rem;font-weight:600}.mid-banner-h2{margin:0 0 .75rem;position:relative}.mid-banner-h2:after{content:"";background-color:var(--color-accent);border-radius:.1875rem;width:3.75rem;height:.125rem;margin:1rem auto 0;display:block}.tagline,.intro{max-width:95%;margin:0 auto 1rem}.tagline{line-height:1.5}.intro{line-height:1.7}.float{animation:6s ease-in-out infinite float}.particle-accent{background-color:var(--color-accent)}.particle-title-main{background-color:var(--color-title-main)}.two-column-layout{flex-direction:column;width:100%;min-height:100vh;display:flex}.content-column{opacity:0;box-sizing:border-box;background-color:#fff;flex-direction:column;flex:1;justify-content:center;align-items:flex-start;padding:2rem 1.5rem;transition:opacity 1s ease-out,transform 1s ease-out;display:flex;transform:translate(-50px)}.image-column{opacity:0;box-sizing:border-box;background-color:#fff;flex:1;justify-content:center;align-items:center;padding:0;transition:opacity 1s ease-out,transform 1s ease-out;display:flex;transform:translate(50px)}.image-column img{object-fit:cover;width:100%;height:100%}.section-is-visible .content-column,.section-is-visible .image-column{opacity:1;transform:translate(0)}h2{font-family:var(--font-heading);font-size:var(--fs-h2);color:var(--color-title-main);font-weight:600;line-height:1.2}.intro-section .narrative-content h2{color:#fff;font-size:var(--fs-h2);text-shadow:0 0 10px #fff3}.narrative-description{font-family:var(--font-body);font-size:var(--fs-body-main);color:var(--color-desc-main);margin-top:1.5rem}.intro-section .narrative-description{color:#fff}.intro-section .narrative-description a{color:#fff;text-decoration:underline;-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent);font-weight:700}.intro-section .narrative-description a:hover{color:#fff}.narrative-link{font-family:var(--font-body);font-size:var(--fs-body-base);border-bottom:2px solid var(--color-accent);color:var(--color-accent);align-items:center;gap:.5rem;margin-top:2rem;padding-bottom:2px;font-weight:600;text-decoration:none;transition:color .3s,border-color .3s;display:inline-flex}.narrative-link:hover{color:var(--color-accent-hover);border-color:var(--color-accent-hover)}.text-accent{color:var(--color-accent)}@media (min-width:768px){.hero-content{padding:2rem}.two-column-layout{flex-direction:row}.content-column{padding:2rem 5rem}.image-column{padding:0}.narrative-section{padding:2rem}.mid-banner{padding:2rem 5vw}.mid-banner .content{padding:3rem}}.fullscreen-section{place-items:center;min-height:100vh;padding:clamp(1.25rem,4vw,3rem);display:grid;position:relative}.section-6-bg-overlay{z-index:0;background-image:url(/assets/images/home/cityscape-bg.png);background-position:50%;background-size:cover;position:absolute;inset:0}.section-6-bg-overlay:before{content:"";background:linear-gradient(#ffffffb3 0%,#fff0 60%);position:absolute;inset:0}@media (min-width:1024px){.section-6-bg-overlay:before{background:linear-gradient(250deg,#fffc 0 50%,#fff0 55%)}}.section-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--color-accent);font-weight:700}.title{font-family:var(--font-heading)}.focusable:focus-visible{box-shadow:var(--ring);outline:none}.reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(32px)}.reveal.is-in{opacity:1;transform:none}#scaling-paradox-bg{will-change:transform;transition:transform .5s ease-out}.hover-zoom{overflow:hidden}.hover-zoom img{transform-origin:50%;transition:transform .6s}.hover-zoom:hover img{transform:scale(1.06)}.animated-underline{text-decoration:none;position:relative}.animated-underline:after{content:"";background-color:var(--color-accent);transform-origin:0 100%;width:100%;height:2px;transition:transform .3s ease-out;position:absolute;bottom:-.25rem;left:0;transform:scaleX(0)}.link-button:hover .animated-underline:after,.group:hover .animated-underline:after{transform-origin:0 100%;transform:scaleX(1)}.skip-link{background:var(--color-heading-card);color:#fff;z-index:9999;padding:.5rem;font-weight:700;transition:top .3s ease-in-out;position:absolute;top:-2.5rem;left:0}.skip-link:focus{top:0}.button-arrow{animation:1.5s ease-in-out infinite arrow-move}@keyframes arrow-move{0%{transform:translate(0)}50%{transform:translate(4px)}to{transform:translate(0)}}input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=url],input[type=number],input[type=date],input[type=datetime-local],textarea,select,.form-input,.form-textarea,.form-select{border-radius:0!important}.bot-i001{width:1px;height:1px;position:absolute;top:-9999px;left:-9999px;overflow:hidden}
:root{--content-max-width:1440px;--content-gutter:22px}.admin-shell,.admin-container,.dashboard-root{max-width:var(--content-max-width);padding-left:var(--content-gutter);padding-right:var(--content-gutter);margin-left:auto;margin-right:auto}@media (min-width:1280px){body{font-size:15px}.card-surface,.card-surface-soft,.ds-card{padding:1.5rem 1.6rem}.admin-table[data-admin-table] thead th{padding:.65rem .8rem;font-size:.68rem}.admin-table[data-admin-table] tbody td{padding:.75rem .85rem;font-size:.88rem}}.admin-table[data-admin-table].is-dense thead th,.admin-table[data-admin-table][data-density=dense] thead th{padding:.5rem .65rem}.admin-table[data-admin-table].is-dense tbody td,.admin-table[data-admin-table][data-density=dense] tbody td{padding:.6rem .7rem;font-size:.85rem}@media (min-width:1440px){body{font-size:16px}.admin-header{gap:1.75rem}}
@media (max-width:768px){:root{--content-gutter:14px}body{background:#f7f9fc;font-size:15px}.admin-shell,.admin-container,.dashboard-root{padding-left:var(--content-gutter);padding-right:var(--content-gutter)}.card-surface,.card-surface-soft,.ds-card{border-radius:12px;padding:1rem 1.1rem;box-shadow:0 14px 38px -30px #00000040}.admin-header{gap:1rem;padding:1rem}.admin-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-table[data-admin-table]{min-width:640px}.admin-table[data-admin-table] thead th{padding:.65rem .7rem;font-size:.72rem}.admin-table[data-admin-table] tbody td{padding:.7rem .75rem;font-size:.9rem}.dashboard-grid,.ds-grid{grid-template-columns:1fr;gap:1rem;display:grid}.ds-button{justify-content:center;width:100%}.chart-container,.dashboard-chart{width:100%;overflow-x:auto}}@media (max-width:480px){body{font-size:14px}.card-surface,.ds-card{border-radius:10px;padding:.9rem}.admin-table[data-admin-table]{min-width:560px}}
.banner-content{text-align:center;z-index:10;box-sizing:border-box;width:90%;max-width:95%;padding:1rem 1.5rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff!important}@media (min-width:640px){.banner-content{padding:1rem}}.banner-content h1{font-family:var(--font-heading);font-size:var(--fs-banner-h1-mobile);text-shadow:none;margin-bottom:.75rem;font-weight:600;line-height:1.1;color:#fff!important}.banner-content p{font-family:var(--font-body);font-size:var(--fs-banner-p-mobile);text-shadow:none;max-width:800px;margin:1.5rem auto 0;color:#fff!important}@media (min-width:480px){.banner-content h1{font-size:var(--fs-banner-h1-sm)}.banner-content p{font-size:var(--fs-banner-p-sm)}}@media (min-width:768px){.banner-content h1{font-size:var(--fs-banner-h1-md)}.banner-content p{font-size:var(--fs-banner-p-md)}.banner-content{padding:2rem}}@media (min-width:1024px){.banner-content h1{font-size:var(--fs-banner-h1-lg)}.banner-content p{font-size:var(--fs-banner-p-lg)}}#image-overlay{background:linear-gradient(#00000080 0%,#000000bf 100%)}#banner-image{object-fit:cover;width:100%;height:100%;transition:transform .5s ease-out;position:absolute;inset:0;transform:scale(1.05)}#image-banner-container{z-index:1;width:100%;height:100svh;min-height:100vh;position:relative;overflow:hidden}#image-banner-container:hover #banner-image{transform:scale(1.02)}.accent-line{background:linear-gradient(90deg, transparent, var(--color-accent), transparent);opacity:0;width:0;height:3px;margin:1rem auto;animation:1s ease-out .7s forwards expandLine;box-shadow:0 0 8px #4f46e599}.mid-page-banner-gradient{background:linear-gradient(135deg, var(--color-mid-banner-gradient-start), var(--color-mid-banner-gradient-end))}.mid-page-banner-gradient-innovation{background:linear-gradient(135deg, var(--color-mid-banner-gradient-start-innovation), var(--color-mid-banner-gradient-end-innovation))}.mobile-overlay-fade-gradient{background:linear-gradient(to top, rgba(var(--color-title-main-rgb), .9) 0%, rgba(var(--color-title-main-rgb), .7) 50%, rgba(var(--color-title-main-rgb), .3) 85%, transparent 100%)}.image-zoom-container{overflow:hidden}.image-zoom-container img{transition:transform .3s ease-in-out}.image-zoom-container:hover img{transform:scale(1.1)}.svg-pattern{z-index:9;opacity:.1;width:100%;max-width:600px;height:auto;color:var(--color-divider);pointer-events:none;margin:0 auto;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}@media (max-width:480px){.svg-pattern{display:block}}.cta-button{background:linear-gradient(135deg, var(--color-accent) 0%, var(--color-accent-hover) 100%);color:#fff;cursor:pointer;border:none;border-radius:50px;align-items:center;gap:.75rem;padding:1rem 2rem;font-size:1.125rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex;box-shadow:0 4px 16px #4f46e566}.cta-button:hover{background:linear-gradient(135deg, var(--color-accent-hover) 0%, var(--color-accent) 100%);transform:translateY(-2px);box-shadow:0 6px 24px #4f46e580}.cta-button:active{transform:translateY(0)}#home-banner-container{background-color:var(--color-title-main);justify-content:center;align-items:center;width:100%;height:100svh;min-height:100vh;display:flex;position:relative;overflow:hidden}#banner-video{object-fit:cover;z-index:1;width:100%;height:100%;transition:transform 1.5s ease-out;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#banner-video-overlay{z-index:2;background:linear-gradient(#191e3d66 0%,#191e3dcc 100%);width:100%;height:100%;position:absolute;top:0;left:0}.home-banner-content{z-index:3;text-align:center;color:#fff;max-width:1200px;padding:1.5rem;position:relative}.home-banner-content h1{font-family:var(--font-heading);font-size:var(--fs-banner-h1-mobile);text-shadow:2px 2px 10px #00000080;opacity:0;font-weight:600;line-height:1.1;animation:1s ease-out .5s forwards fadeInUp;transform:translateY(30px)}.home-banner-content p{font-family:var(--font-body);font-size:var(--fs-banner-p-mobile);text-shadow:1px 1px 8px #00000080;opacity:0;max-width:800px;margin:1.5rem auto 0;line-height:1.6;animation:1s ease-out .8s forwards fadeInUp;transform:translateY(30px)}.scroll-mouse-container{z-index:4;opacity:0;animation:1.5s ease-out 1.8s forwards fadeIn;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.mouse-wheel{animation:2.2s ease-in-out infinite scroll-animation}@media (min-width:480px){.home-banner-content h1{font-size:var(--fs-banner-h1-sm)}.home-banner-content p{font-size:var(--fs-banner-p-sm)}}@media (min-width:768px){.home-banner-content h1{font-size:var(--fs-banner-h1-md)}.home-banner-content p{font-size:var(--fs-banner-p-md)}}@media (min-width:1024px){.home-banner-content h1{font-size:var(--fs-banner-h1-lg)}.home-banner-content p{font-size:var(--fs-banner-p-lg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes expandLine{0%{opacity:0;width:0}to{opacity:1;width:60px}}@keyframes fadeIn{0%{opacity:0}to{opacity:.8}}@keyframes scroll-animation{0%{opacity:1;transform:translateY(0)}30%{opacity:1;transform:translateY(0)}70%{opacity:0;transform:translateY(15px)}to{opacity:0;transform:translateY(15px)}}
