.mega-menu{background:var(--white);border:1px solid var(--border);border-top:none;align-items:stretch;width:100%;display:flex}.mega-menu-col-header{border-bottom:1px solid var(--border);color:var(--gray-steel-600);padding:24px}.mega-menu-groups{border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;width:400px;display:flex}.mega-menu-group{border:none;border-bottom:1px solid var(--border);background:var(--white);text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:4px;width:100%;padding:24px;font-family:inherit;display:flex}.mega-menu-group.active{background:var(--bg-light)}.mega-menu-group-title{font-family:var(--font-main);color:var(--dark);font-size:16px;font-weight:700;line-height:20px}.mega-menu-group-desc{color:var(--gray-steel-800)}.mega-menu-services{flex-direction:column;flex:1;min-width:0;display:flex}.mega-menu-grid{flex:1;grid-template-columns:repeat(3,1fr);align-items:start;gap:16px;padding:24px;display:grid}.mega-menu-tile{background:var(--gray-steel-200);flex-direction:column;justify-content:flex-end;min-height:240px;padding:24px;text-decoration:none;transition:background .3s;display:flex;position:relative;overflow:hidden}.mega-menu-tile:hover{background-image:url(/assets/illustrations/radial-gradient.svg);background-position:50%;background-size:cover}.mega-menu-tile-illus-wrap{pointer-events:none;position:absolute;inset:0;overflow:hidden}.mega-menu-tile-illus-wrap:before{content:"";background:#f3f5f8d1;transition:opacity .3s;position:absolute;inset:0}.mega-menu-tile:hover .mega-menu-tile-illus-wrap:before{opacity:0}.mega-menu-tile-illustration{aspect-ratio:1;object-fit:cover;width:65%;height:auto;position:absolute;top:-40%;left:50%;transform:translate(-50%)}.mega-menu-tile-footer{z-index:1;justify-content:space-between;align-items:flex-end;gap:16px;display:flex;position:relative}.mega-menu-tile-title{font-family:var(--font-heading);color:var(--dark);font-size:24px;font-weight:700;line-height:28px}.mega-menu-tile-arrow{color:var(--dark);opacity:0;flex-shrink:0;transition:opacity .2s}.mega-menu-tile:hover .mega-menu-tile-arrow{opacity:1}.mega-menu-backdrop{z-index:90;background:#0006;position:fixed;inset:96px 0 0}.mega-menu-panel{z-index:95;position:absolute;top:100%;left:0;right:0}@media (max-width:1100px){.mega-menu-backdrop,.mega-menu-panel{display:none}}
.header-wrap{z-index:100;background:var(--white);padding-top:env(safe-area-inset-top,0px);position:relative}.header{border-bottom:1px solid var(--border-light);align-items:center;height:96px;display:flex}.logo svg{display:block}.header-nav{flex:1;justify-content:center;align-items:center;gap:32px;display:flex}.header-nav a,.header-nav button{text-transform:uppercase;color:var(--gray-nav);letter-spacing:.02em;padding:16px 8px;font-size:16px;font-weight:600;text-decoration:none;transition:color .2s;position:relative}.header-nav a:hover,.header-nav button:hover,.header-nav a.active,.header-nav button.active{color:var(--dark)}.header-nav a.active:after,.header-nav button.active:after{content:"";background:var(--green);width:8px;height:8px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.header-menu-btn{margin-left:auto;display:none}.header-mobile-menu{padding-top:env(safe-area-inset-top);background:var(--white);z-index:101;flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.header-mobile-menu-top{flex-shrink:0;padding:0 24px}.header-mobile-menu-header{border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;height:96px;display:flex}.header-mobile-nav{flex-direction:column;padding-top:16px;display:flex}.header-mobile-nav-item{align-items:center;height:64px;padding:0 16px;text-decoration:none;display:flex;position:relative}.header-mobile-nav-item span.nav-text{text-transform:uppercase;color:var(--gray-steel-800);letter-spacing:.02em;font-size:16px;font-weight:600}.header-mobile-nav-item.active span.nav-text{color:var(--dark)}.header-mobile-nav-indicator{background:var(--green);flex-shrink:0;width:8px;height:8px;margin-right:16px;display:none}.header-mobile-nav-item.active .header-mobile-nav-indicator{display:block}.header-mobile-nav-chevron{color:var(--gray-steel-800);flex-shrink:0}.header-mobile-services-back{border:none;border-bottom:1px solid var(--border-light);background:var(--white);height:64px;color:var(--dark);cursor:pointer;align-items:center;gap:8px;padding:0 16px;font-family:inherit;display:flex}.header-mobile-services-back .nav-text{text-transform:uppercase;color:inherit;letter-spacing:.02em;font-size:16px;font-weight:600}.header-mobile-service-group{background:var(--white);width:100%;height:64px;color:var(--gray-steel-800);text-align:left;cursor:pointer;border:none;align-items:center;gap:8px;padding:0 16px;font-family:inherit;display:flex}.header-mobile-service-group .nav-text{text-transform:uppercase;color:inherit;letter-spacing:.02em;flex:1;font-size:16px;font-weight:600}.header-mobile-service-group.active{background:var(--bg-light);color:var(--dark)}.header-mobile-service-group-indicator{background:var(--green);flex-shrink:0;width:8px;height:8px}.header-mobile-service-children{flex-direction:column;display:flex}.header-mobile-service-child{text-transform:uppercase;height:64px;color:var(--dark);letter-spacing:.02em;align-items:center;padding:0 16px 0 64px;font-size:16px;font-weight:600;text-decoration:none;display:flex}.header-mobile-nav-spacer{flex:1}.header-mobile-cta{padding:0 24px 16px}@media (min-width:769px) and (max-width:1100px){.header-mobile-menu-top,.header-mobile-nav-item,.header-mobile-services-back,.header-mobile-service-group{padding:0 32px}.header-mobile-service-child{padding:0 32px 0 80px}.header-mobile-cta{padding:0 32px 16px}}@media (max-width:1100px){.header{height:96px}.header-nav,.header-cta{display:none}.header-menu-btn{display:inline-flex}}
.footer-wrap{background:var(--dark)}.footer{flex-direction:column;gap:64px;min-height:600px;margin:0 auto;padding:40px 0;display:flex}.footer-top{align-items:flex-start;gap:24px;display:flex}.footer-tagline-wrap{flex:1}.footer-tagline{width:464px;font-family:var(--font-heading);color:var(--white);font-size:24px;font-weight:500;line-height:1.28}.footer-menus{justify-content:space-between;width:323px;display:flex}.footer-menu{flex-direction:column;gap:24px;display:flex}.footer-menu a{text-transform:uppercase;color:var(--gray-muted);white-space:nowrap;font-size:16px;font-weight:600;text-decoration:none;transition:color .2s}.footer-menu a:hover{color:var(--white)}.footer-middle{flex-direction:column;flex:1;gap:32px;display:flex}.footer-contacts{flex:1;align-items:flex-end;gap:80px;display:flex}.footer-contact-item{flex-direction:column;gap:4px;display:flex}.footer-contact-label{color:var(--gray-light);font-size:16px;font-weight:400}.footer-contact-value{color:var(--white);white-space:nowrap;font-size:16px;font-weight:600}.footer-logo svg{width:100%;height:auto;display:block}.footer-bottom{border-top:1px solid #e3e6eb33;align-items:center;height:80px;display:flex;overflow:hidden}.footer-copyright{color:var(--gray-light);flex:1;font-size:16px;font-weight:400}.footer-socials{align-items:center;gap:24px;display:flex}.footer-socials img{height:24px;display:block}@media (min-width:769px) and (max-width:1100px){.footer-inner{gap:48px;min-height:auto}.footer-top{flex-direction:column;gap:40px}.footer-tagline,.footer-menus{width:100%}.footer-contacts{gap:24px}.footer-bottom{border-top:none;flex-direction:column;align-items:flex-start;gap:24px;height:auto;padding:24px 0 40px}.footer-socials{order:1;justify-content:center;width:100%}.footer-copyright{order:2}}@media (max-width:768px){.footer{padding:40px 24px 0}.footer-inner{gap:40px;min-height:auto}.footer-top{flex-direction:column;gap:40px}.footer-tagline{width:100%;font-size:20px}.footer-menus{justify-content:space-between;gap:0;width:100%}.footer-contacts{flex-direction:column;align-items:flex-start;gap:24px}.footer-logo svg{max-width:100%;height:auto}.footer-bottom{border-top:none;flex-direction:column;align-items:flex-start;gap:24px;height:auto;padding:24px 0 40px}.footer-socials{order:1;justify-content:center;width:100%}.footer-copyright{order:2;font-size:14px}}
