:root{--color-primary: #264a78;--color-primary-dark: #1b3558;--color-primary-light: #5f82af;--color-accent: #3f638f;--color-accent-dark: #2d4a71;--color-text: #162338;--color-text-light: #435672;--color-text-muted: #66788f;--color-bg: #f5f8fc;--color-bg-alt: #ebf1f8;--color-bg-dark: #0b1830;--color-border: #d8e2ee;--color-border-strong: #bfd0e2;--color-surface: #ffffff;--color-surface-strong: #e4edf7;--color-white: #ffffff;--font-heading: "Plus Jakarta Sans", system-ui, sans-serif;--font-body: "Inter", system-ui, -apple-system, sans-serif;--shadow-sm: 0 1px 2px 0 rgb(11 24 48 / .08);--shadow: 0 10px 30px -18px rgb(22 35 56 / .22), 0 6px 18px -14px rgb(38 74 120 / .18);--shadow-lg: 0 18px 45px -24px rgb(11 24 48 / .28), 0 10px 24px -18px rgb(38 74 120 / .18);--shadow-xl: 0 30px 70px -34px rgb(11 24 48 / .34), 0 14px 34px -24px rgb(38 74 120 / .2);--radius-sm: .375rem;--radius: .625rem;--radius-lg: 1rem;--radius-xl: 1.25rem;--max-width: 1280px;--header-height: 72px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--color-text);letter-spacing:-.02em}h1{font-size:clamp(2rem,5vw,3.5rem)}h2{font-size:clamp(1.5rem,4vw,2.5rem)}h3{font-size:clamp(1.25rem,3vw,1.5rem)}p{color:var(--color-text-light)}a{color:var(--color-primary);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-primary-dark)}img{max-width:100%;height:auto;display:block}button{font-family:inherit;cursor:pointer}:focus-visible{outline:3px solid rgb(95 130 175 / .38);outline-offset:3px}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.section{padding:5rem 0}.section-alt{background:linear-gradient(180deg,#ebf1f8d6,#f5f8fcfa)}.section-dark{background:radial-gradient(circle at top right,rgb(95 130 175 / .18) 0%,transparent 28%),linear-gradient(180deg,#0b1830,#132442);color:#fff}.section-dark h1,.section-dark h2,.section-dark h3{color:#fff}.section-dark p{color:#fffc}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.75rem;font-size:.9375rem;font-weight:600;border-radius:var(--radius);border:1px solid transparent;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease,border-color .2s ease}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,#3f6695 100%);color:#fff;box-shadow:var(--shadow)}.btn-primary:hover{background:linear-gradient(135deg,var(--color-primary-dark) 0%,#345983 100%);color:#fff;transform:translateY(-1px)}.btn-accent{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-primary-light) 100%);color:#fff;box-shadow:var(--shadow)}.btn-accent:hover{background-color:var(--color-accent-dark);color:#fff;transform:translateY(-1px)}.btn-outline{background-color:#ffffffb8;color:var(--color-primary);border:1px solid rgb(38 74 120 / .24);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-outline:hover{background-color:#264a7814;border-color:#264a7866;color:var(--color-primary-dark);transform:translateY(-1px)}.btn:disabled{cursor:not-allowed;opacity:.6;box-shadow:none;transform:none}.btn-lg{padding:1rem 2rem;font-size:1rem}.text-center{text-align:center}.text-gradient{background:linear-gradient(135deg,#6e90ba 0%,var(--color-primary-light) 45%,var(--color-primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:3rem}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.section-label{display:inline-flex;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--color-primary);margin-bottom:1rem;padding:.45rem .85rem;border-radius:999px;border:1px solid rgb(38 74 120 / .12);background:#ffffffb8;box-shadow:inset 0 1px #ffffff80}.section-subtitle{font-size:1.0625rem;color:var(--color-text-light);max-width:62ch}@media(max-width:1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.section{padding:3rem 0}.grid-3,.grid-2,.grid-4{grid-template-columns:1fr;gap:2rem}.container{padding:0 1rem}}.header{position:fixed;top:0;left:0;right:0;z-index:1000;background:#f5f8fceb;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow-sm);border-bottom:1px solid rgb(216 226 238 / .72);transition:all .3s ease;transform:translateY(0)}.header-hidden{transform:translateY(-100%)}.header-scrolled{background:#f5f8fcf5;box-shadow:var(--shadow)}.header-main{padding:.75rem 0}.header-main-content{display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center}.logo-image{height:40px;width:auto;object-fit:contain}.nav-desktop{display:block}.nav-list{display:flex;gap:2rem;list-style:none}.nav-link{font-size:.875rem;font-weight:600;color:var(--color-text);background:none;border:none;padding:.375rem 0;position:relative}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--color-primary);transition:width .2s ease}.nav-link:hover{color:var(--color-primary)}.nav-link:hover:after{width:100%}.nav-link-accent{background:linear-gradient(135deg,var(--color-primary) 0%,#3d6696 100%);color:#fff;padding:.5rem 1rem;border-radius:var(--radius);box-shadow:var(--shadow-sm)}.nav-link-accent:after{display:none}.nav-link-accent:hover{background-color:var(--color-primary-dark);color:#fff}.mobile-menu-toggle{display:none;background:#ffffffb8;border:1px solid rgb(38 74 120 / .12);color:var(--color-text);padding:.5rem;border-radius:var(--radius)}.nav-mobile{display:none;background:#f8fbfff5;border-top:1px solid var(--color-border);padding:1rem 0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav-mobile-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.nav-mobile-link{display:block;width:100%;text-align:left;padding:.875rem 1.5rem;font-size:1rem;font-weight:500;color:var(--color-text);background:none;border:none;border-radius:var(--radius)}.nav-mobile-link:hover{background-color:#264a7814;color:var(--color-primary)}.nav-mobile-link-accent{background:linear-gradient(135deg,var(--color-primary) 0%,#3d6696 100%);color:#fff;margin-top:.5rem}.nav-mobile-link-accent:hover{background-color:var(--color-primary-dark);color:#fff}@media(max-width:768px){.nav-desktop{display:none}.mobile-menu-toggle,.nav-mobile{display:block}.header-main{padding:.625rem 0}.logo-image{height:32px}}.cookie-banner{position:fixed;left:1rem;right:1rem;bottom:1rem;z-index:1100}.cookie-banner-inner{max-width:1080px;margin:0 auto;padding:1rem 1.125rem;border-radius:calc(var(--radius-xl) + .25rem);border:1px solid var(--color-border-strong);background:linear-gradient(135deg,#0a1426f5,#182d4cf0);box-shadow:var(--shadow-xl);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.cookie-banner-inner,.cookie-banner-text,.cookie-banner-text a,.cookie-banner-title{color:var(--color-white)}.cookie-banner-content{display:flex;flex-direction:column;gap:.375rem}.cookie-banner-title{font-family:var(--font-heading);font-size:1rem;font-weight:700}.cookie-banner-text{font-size:.9375rem;line-height:1.6;color:#e8f1ffdb}.cookie-banner-text a{text-decoration:underline;text-underline-offset:.18em}.cookie-banner-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem;flex-wrap:wrap}.cookie-banner-button{min-width:168px}@media(min-width:860px){.cookie-banner-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1.5rem;align-items:center;padding:1.25rem 1.5rem}.cookie-banner-actions{margin-top:0}}@media(max-width:640px){.cookie-banner{left:.75rem;right:.75rem;bottom:.75rem}.cookie-banner-button{width:100%}}.footer{background:radial-gradient(circle at top right,rgb(95 130 175 / .16) 0%,transparent 28%),linear-gradient(180deg,#091427,#101f3b);color:#fff}.footer-main{padding:4rem 0}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.5fr 1fr;gap:3rem}.footer-logo-container{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.footer-logo-img{height:48px;width:auto;flex-shrink:0}.footer-brand-text{display:flex;flex-direction:column}.footer-brand-name{font-size:1.5rem;font-weight:800;color:#c6d8ee;margin:0;margin-bottom:.25rem}.footer-tagline{font-size:.9375rem;color:#ffffffb3;margin:0}.footer-heading{font-size:.9375rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#fff;margin-bottom:1.25rem}.footer-links,.footer-contact-list{list-style:none;display:flex;flex-direction:column;gap:.625rem}.footer-link{color:#ffffffb3;font-size:.9375rem;background:none;border:none;padding:0;text-align:left;cursor:pointer}.footer-link:hover{color:#e6effb}.footer-contact-list li{font-size:.9375rem;color:#ffffffb3}.footer-bottom{border-top:1px solid rgb(255 255 255 / .12);padding:1.5rem 0}.footer-bottom-content{display:flex;justify-content:space-between;align-items:center}.footer-copyright{font-size:.875rem;color:#fff9}.footer-legal{list-style:none;display:flex;gap:1.5rem}.footer-legal-link{font-size:.875rem;color:#fff9}.footer-legal-link:hover{color:#fff}@media(max-width:1024px){.footer-grid{grid-template-columns:1fr 1fr;gap:2.5rem}}@media(max-width:640px){.footer-grid{grid-template-columns:1fr;gap:2rem}.footer-logo-container{flex-direction:column;text-align:center;gap:.75rem}.footer-logo-img{height:56px}.footer-brand-text{align-items:center}.footer-bottom-content{flex-direction:column;gap:1rem;text-align:center}}.system-page-shell{min-height:calc(100vh - var(--header-height));background:radial-gradient(circle at top right,rgb(76 119 186 / .12) 0%,transparent 28%),linear-gradient(180deg,var(--color-bg-alt) 0%,var(--color-bg) 100%)}.system-page{padding:calc(var(--header-height) + 4rem) 0 5rem}.system-page-card{max-width:840px;margin:0 auto;padding:clamp(2rem,3vw,3rem);border-radius:calc(var(--radius-xl) + .25rem);border:1px solid var(--color-border-strong);background:#ffffffdb;box-shadow:var(--shadow-xl);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.system-page-card-centered{text-align:center}.system-page-code{display:inline-flex;align-items:center;justify-content:center;min-width:5rem;padding:.5rem 1rem;margin-bottom:1rem;border-radius:999px;background:var(--color-surface-strong);color:var(--color-primary);font-family:var(--font-heading);font-size:.95rem;font-weight:700;letter-spacing:.12em}.system-page-title{margin-bottom:1.25rem}.system-page-content{display:flex;flex-direction:column;gap:1rem}.system-page-content p,.system-page-lead{font-size:1rem;color:var(--color-text-light);line-height:1.7}.system-page-actions{display:flex;gap:1rem;margin-top:2rem;flex-wrap:wrap}.system-page-actions-centered{justify-content:center}@media(max-width:768px){.system-page{padding:calc(var(--header-height) + 3rem) 0 4rem}.system-page-card{padding:1.5rem}.system-page-actions .btn{width:100%}}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}.about-content .section-title{margin-bottom:1.5rem}.about-text{display:flex;flex-direction:column;gap:1rem;margin-bottom:2.5rem}.about-text p{font-size:1.0625rem;line-height:1.8;color:#445872}.about-values{display:flex;flex-direction:column;gap:1.25rem}.about-value{padding-left:1.25rem;border-left:3px solid var(--color-primary);background:linear-gradient(90deg,rgb(38 74 120 / .06) 0%,transparent 100%);padding-top:.625rem;padding-bottom:.625rem;border-radius:0 var(--radius) var(--radius) 0}.about-value-title{font-size:1.125rem;margin-bottom:.375rem;color:var(--color-text)}.about-value-description{font-size:.9375rem;color:var(--color-text-muted);line-height:1.5}.about-visual{display:flex;flex-direction:column;gap:1.5rem;position:relative}.about-image-wrapper{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid rgb(255 255 255 / .72)}.about-image{width:100%;height:280px;object-fit:cover}.about-card{padding:2rem;border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:.5rem;box-shadow:var(--shadow)}.about-card-primary{background:linear-gradient(135deg,var(--color-primary-dark) 0%,var(--color-primary-light) 100%);color:#fff;margin-left:2rem}.about-card-accent{background:linear-gradient(135deg,#314f77,#5f82af);color:#fff;margin-right:2rem}.about-card-light{background-color:var(--color-bg-alt);border:2px solid var(--color-border);margin-left:1rem}.about-card-number{font-size:3rem;font-weight:800;line-height:1}.about-card-accent .about-card-number,.about-card-primary .about-card-number{color:#fff}.about-card-light .about-card-number{color:var(--color-primary)}.about-card-label{font-size:1rem;font-weight:500}.about-card-accent .about-card-label,.about-card-primary .about-card-label{color:#ffffffe6}.about-card-light .about-card-label{color:var(--color-text-light)}@media(max-width:1024px){.about-grid{gap:3rem}}@media(max-width:768px){.about-grid{grid-template-columns:1fr;gap:2.5rem}.about-card{margin-left:0;margin-right:0}.about-card-number{font-size:2.5rem}}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start}.contact-info .section-title{margin-bottom:1rem}.contact-description{font-size:1.0625rem;color:#445872;margin-bottom:2.5rem;max-width:500px;line-height:1.75}.contact-methods{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:1.25rem}.contact-method{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#ffffffdb;border-radius:var(--radius-lg);border:1px solid var(--color-border);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.contact-method:hover{border-color:var(--color-primary);box-shadow:var(--shadow);transform:translateY(-2px)}.contact-method-icon{width:48px;height:48px;border-radius:var(--radius);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-light) 100%);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.contact-method-details{display:flex;flex-direction:column;gap:.25rem}.contact-method-title{font-size:.875rem;color:var(--color-text-muted)}.contact-method-value{font-size:1.0625rem;font-weight:600;color:var(--color-text)}.contact-hours{display:flex;align-items:center;gap:1rem;padding:1.25rem;margin-bottom:2rem;background:#ffffff94;border-radius:var(--radius-lg);border:1px solid rgb(38 74 120 / .08)}.contact-social{display:flex;align-items:center;gap:1rem}.contact-social-label{font-size:.9375rem;color:var(--color-text-muted)}.contact-social-links{display:flex;gap:.75rem}.contact-social-link{width:40px;height:40px;border-radius:var(--radius);background:linear-gradient(135deg,var(--color-primary-dark) 0%,#304f79 100%);color:#fff;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,transform .2s ease}.contact-social-link:hover{background-color:var(--color-primary);color:#fff;transform:translateY(-2px)}.contact-cta{display:flex;align-items:center;justify-content:center}.cta-card{background:linear-gradient(135deg,#10213f,#31517b);color:#fff;padding:0;border-radius:var(--radius-xl);text-align:center;max-width:420px;overflow:hidden;box-shadow:var(--shadow-xl)}.cta-image-wrapper{width:100%;height:200px;overflow:hidden}.cta-image{width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(1.02)}.cta-title{font-size:1.75rem;color:#fff;margin:2rem 2rem 1rem}.cta-description{font-size:1.0625rem;color:#e8f1ffd6;margin:0 2rem 2rem;line-height:1.6}.cta-button{background:#ffffffeb;color:var(--color-primary-dark);width:calc(100% - 4rem);margin:0 2rem 2rem}.cta-button:hover{background-color:#fff;color:var(--color-primary-dark)}@media(max-width:968px){.contact-grid{grid-template-columns:1fr;gap:3rem}.cta-card{padding:2rem;max-width:100%}}.section-dark{position:relative;overflow:hidden}.features-bg-image{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;opacity:.12;filter:saturate(.7) contrast(1.02)}.features-bg-image-asset{width:100%;height:100%;object-fit:cover}.section-dark .container{position:relative;z-index:1}.section-label-light{color:#bdd1ea;background:#ffffff14;border-color:#bdd1ea2e}.section-title-light{color:#fff}.features-header{text-align:center;max-width:600px;margin:0 auto 4rem}.features-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-bottom:4rem}.feature-item{text-align:center;padding:1.5rem 1.25rem;border-radius:var(--radius-lg);background:#ffffff0d;border:1px solid rgb(189 209 234 / .08);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.feature-icon-wrapper{width:64px;height:64px;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--color-primary-dark) 0%,var(--color-primary-light) 100%);display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem}.feature-icon{color:#fff}.feature-title{font-size:1.125rem;color:#fff;margin-bottom:.75rem}.feature-description{font-size:.9375rem;color:#e8f1ffcc;line-height:1.7}.testimonial{max-width:800px;margin:0 auto;padding:2.5rem;background:#ffffff14;border-radius:var(--radius-lg);border:1px solid rgb(189 209 234 / .12);border-left:4px solid #88a7cc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.testimonial-quote{font-size:1.25rem;font-style:italic;color:#ffffffe6;line-height:1.7;margin-bottom:1.5rem}.testimonial-author{font-size:.9375rem;font-style:normal;color:#c9daef;font-weight:500}@media(max-width:1024px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.features-grid{grid-template-columns:1fr;gap:2.5rem}.testimonial{padding:1.5rem}.testimonial-quote{font-size:1.0625rem}}.gallery-section{padding:6rem 0;background:linear-gradient(180deg,var(--color-bg) 0%,var(--color-bg-alt) 100%);content-visibility:auto;contain-intrinsic-size:1200px}.gallery-header{text-align:center;max-width:600px;margin:0 auto 4rem}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.gallery-item{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:#ffffffc7;border:1px solid rgb(38 74 120 / .1);padding:0;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease}.gallery-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:#264a7833}.gallery-image-wrapper{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:var(--radius-lg);background:var(--color-surface-strong)}.gallery-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.gallery-item:hover .gallery-image{transform:scale(1.08)}.gallery-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,transparent 0%,rgb(11 24 48 / .82) 100%);opacity:0;transition:opacity .3s ease;display:flex;align-items:flex-end;justify-content:center;padding-bottom:1.5rem}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-zoom-icon{color:#fff;transform:scale(.8);transition:transform .3s ease}.gallery-item:hover .gallery-zoom-icon{transform:scale(1)}.lightbox{position:fixed;top:0;left:0;right:0;bottom:0;z-index:2000;background:#070f1df2;display:flex;align-items:center;justify-content:center;padding:2rem;box-sizing:border-box;animation:lightboxFadeIn .3s ease;overflow:auto;transform:translateY(0)}@keyframes lightboxFadeIn{0%{opacity:0}to{opacity:1}}.lightbox-close{position:absolute;top:2rem;right:2rem;width:48px;height:48px;border-radius:50%;background:#ffffff14;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease;z-index:2001}.lightbox-close:hover{background:#ffffff29;transform:rotate(90deg)}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:56px;height:56px;border-radius:50%;background:#ffffff14;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease;z-index:2001}.lightbox-nav:hover{background:#ffffff2e;transform:translateY(-50%) scale(1.1)}.lightbox-prev{left:2rem}.lightbox-next{right:2rem}.lightbox-content{position:relative;max-width:calc(100vw - 4rem);max-height:calc(100vh - 4rem);display:flex;flex-direction:column;align-items:center;justify-content:center}.lightbox-loader{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.lightbox-spinner{width:48px;height:48px;border:3px solid rgb(255 255 255 / .3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.lightbox-image{max-width:100%;max-height:calc(100vh - 8rem);object-fit:contain;border-radius:var(--radius);opacity:0;transition:opacity .3s ease}.lightbox-image.loaded{opacity:1}.lightbox-image.loading{opacity:0}.lightbox-caption{margin-top:1.5rem;color:#fff;font-size:1rem;text-align:center;display:flex;flex-direction:column;gap:.5rem}.lightbox-counter{font-size:.875rem;color:#ffffffad}@media(max-width:1200px){.gallery-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem}}@media(max-width:768px){.gallery-section{padding:4rem 0}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.gallery-header{margin-bottom:2.5rem}.lightbox{padding:1rem}.lightbox-content{max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem)}.lightbox-image{max-height:calc(100vh - 6rem)}.lightbox-nav{display:none}.lightbox-close{top:1rem;right:1rem;width:44px;height:44px}.lightbox-caption{font-size:.875rem;padding:0 1rem}}@media(max-width:480px){.gallery-grid{grid-template-columns:1fr;gap:1rem}}.hero{position:relative;height:850px;display:flex;align-items:flex-start;padding-top:80px;padding-bottom:3rem;overflow:hidden}.hero-gradient-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:linear-gradient(135deg,#f6f9fd,#edf3fa 25%,#dde8f3 55%,#cbd9ea 78%,#b8cade);overflow:hidden}.hero-gradient-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.6;animation:float 20s ease-in-out infinite}.hero-orb-1{width:600px;height:600px;background:radial-gradient(circle,rgba(38,74,120,.28) 0%,transparent 70%);top:-10%;right:-10%;animation-delay:0s}.hero-orb-2{width:500px;height:500px;background:radial-gradient(circle,rgba(95,130,175,.24) 0%,transparent 70%);bottom:-5%;left:-5%;animation-delay:-7s}.hero-orb-3{width:400px;height:400px;background:radial-gradient(circle,rgba(63,99,143,.2) 0%,transparent 70%);top:50%;left:30%;animation-delay:-14s}@keyframes float{0%,to{transform:translate(0) scale(1)}25%{transform:translate(30px,-30px) scale(1.05)}50%{transform:translate(-20px,20px) scale(.95)}75%{transform:translate(-30px,-20px) scale(1.02)}}.hero-noise{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");pointer-events:none}.hero-container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 1.5rem;display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;position:relative;z-index:1}.hero-visual{position:relative;order:2;z-index:2}.hero-image-wrapper{display:none}.hero-image-card{position:relative;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xl);transform:perspective(1000px) rotateY(-5deg) rotateX(5deg);transition:transform .5s ease;border:1px solid rgb(255 255 255 / .55)}.hero-image-card:hover{transform:perspective(1000px) rotateY(-2deg) rotateX(2deg)}.hero-image{width:100%;height:400px;object-fit:cover;display:block;filter:saturate(.92) contrast(1.02)}.hero-image-glow{position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;background:linear-gradient(135deg,#7e9cc2 0%,var(--color-primary) 100%);border-radius:calc(var(--radius-xl) + 10px);opacity:.15;filter:blur(30px);z-index:-1}.hero-content{order:1;position:relative;z-index:2}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffffb8;border:1px solid rgb(38 74 120 / .12);border-radius:var(--radius);font-size:.875rem;font-weight:600;color:var(--color-primary);margin-bottom:1.5rem;font-family:var(--font-heading);box-shadow:var(--shadow-sm)}.hero-badge-dot{width:8px;height:8px;background-color:var(--color-primary-light);border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.hero-title{margin-bottom:1.5rem;font-family:var(--font-heading);font-weight:800;line-height:1.1;letter-spacing:-.03em;max-width:12ch}.hero-subtitle{font-size:clamp(1.125rem,2vw,1.375rem);color:#31445f;margin-bottom:2rem;max-width:540px;line-height:1.75;font-family:var(--font-body);font-weight:500}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:2rem}.hero-stats{display:flex;align-items:center;gap:1.5rem;padding:1.25rem;background:#ffffff75;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.hero-stat{display:flex;flex-direction:column;gap:.375rem}.hero-stat-value{font-size:1.5rem;font-weight:800;color:var(--color-primary-dark);line-height:1;font-family:var(--font-heading)}.hero-stat-label{font-size:.8125rem;color:#4a5d78;text-transform:uppercase;letter-spacing:.05em;font-family:var(--font-body);font-weight:700}.hero-stat-divider{width:1px;height:40px;background-color:var(--color-border)}@media(max-width:1024px){.hero-container{grid-template-columns:1fr;gap:2rem;text-align:center}.hero-visual{order:1}.hero-content{order:2}.hero-subtitle{max-width:100%;margin-left:auto;margin-right:auto}.hero-image-card{transform:none;max-width:400px;margin:0 auto}.hero-image{height:300px}.hero-stats{justify-content:center;max-width:36rem;margin:0 auto}}@media(max-width:768px){.hero{height:auto;min-height:550px;padding-top:60px;padding-bottom:2rem}.hero-container{padding:0 1rem;gap:1.5rem}.hero-image{height:240px}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn{width:100%}.hero-stats{flex-wrap:wrap;gap:1rem;justify-content:center;padding:1rem}.hero-stat{flex:1 1 120px;align-items:center;text-align:center}.hero-stat-divider{display:none}.hero-gradient-orb{filter:blur(60px);opacity:.4}.hero-orb-1{width:300px;height:300px}.hero-orb-2{width:250px;height:250px}.hero-orb-3{width:200px;height:200px}}.services-layout{display:grid;grid-template-columns:1fr 2fr;gap:4rem;align-items:start}.services-visual{position:sticky;top:calc(var(--header-height) + 2rem)}.services-image-wrapper{border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid rgb(255 255 255 / .72)}.services-image{width:100%;height:600px;object-fit:cover}.services-header{text-align:left;max-width:700px;margin:0 0 3rem}.section-label{margin-bottom:1rem}.section-title{margin-bottom:1.25rem}.section-subtitle{font-size:1.0625rem;color:var(--color-text-light)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.service-card{background:#ffffffdb;border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow);transition:transform .2s ease,box-shadow .2s ease;border:1px solid var(--color-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-border-strong)}.service-card:nth-child(4),.service-card:nth-child(5){grid-column:span 1}.service-icon-wrapper{width:56px;height:56px;border-radius:var(--radius);background:linear-gradient(135deg,var(--color-primary-dark) 0%,var(--color-primary-light) 100%);display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem}.service-icon{color:#fff}.service-title{font-size:1.25rem;margin-bottom:.75rem}.service-description{font-size:.9375rem;color:var(--color-text-light);margin-bottom:1.25rem;line-height:1.7}.service-features{list-style:none;display:flex;flex-direction:column;gap:.5rem}.service-feature{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#52657e}.service-feature svg{color:var(--color-primary-light);flex-shrink:0}@media(max-width:1024px){.services-layout{grid-template-columns:1fr;gap:2.5rem}.services-visual{position:relative;top:auto;order:-1}.services-image{height:300px}.services-header{text-align:center;margin:0 auto 2.5rem}.services-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.services-grid{grid-template-columns:1fr}.services-image{height:220px}.service-card{padding:1.5rem}.services-header{margin-bottom:2rem}}
