.original-home { font-family: "Outfit", sans-serif; }
body.menu-open { overflow: hidden; }
.home .skip-link { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
.original-home h1,.original-home h2,.original-home h3,.original-home p { margin-top: 0; }
.original-home a { color: inherit; text-decoration: none; }
.home-hero { background: var(--navy); }
.hero-building { -webkit-mask-image: linear-gradient(to right,transparent,black 35%),linear-gradient(to top,transparent,black 30%); -webkit-mask-composite: source-in; mask-image: linear-gradient(to right,transparent,black 35%),linear-gradient(to top,transparent,black 30%); mask-composite: intersect; }
.home-navigation a { font-size:1.05rem;font-weight:700;letter-spacing:.01em;text-shadow:0 1px 7px rgba(0,255,197,.22);transition:color .2s ease,text-shadow .2s ease; }
.home-navigation a:hover { color:var(--mint);text-shadow:0 1px 10px rgba(0,255,197,.42); }
.home-menu-toggle { display: none; }
.me-button { display: inline-flex; align-items: center; justify-content: center; text-transform: uppercase; transition: background-color .2s ease,color .2s ease; }
.me-button:hover { background: var(--mint); color: var(--navy); }
.me-arrow { position: absolute; z-index: 10; display: grid; place-items: center; border: 1px solid color-mix(in srgb,var(--mint) 40%,transparent); border-radius: .5rem; background: color-mix(in srgb,var(--navy) 80%,transparent); box-shadow: 0 0 30px var(--mint); backdrop-filter: blur(8px); }
.me-arrow svg { width: 60%; height: 60%; filter: drop-shadow(0 0 8px var(--mint)); }
.me-arrow .arrow-flip { transform: rotate(90deg); }
.arrow-hero-one { top: 17%; right: 12%; width: 5rem; height: 5rem; }
.arrow-hero-two { top: 25%; right: 38%; width: 3rem; height: 3rem; }
.arrow-hero-three { bottom: 8%; left: 52%; width: 5rem; height: 5rem; }
.arrow-hero-four { right: 10%; bottom: 6%; width: 4rem; height: 4rem; }
.home-solutions { background: linear-gradient(to bottom,var(--navy) 55%,var(--mint)); }
.solutions-head { -webkit-mask-image: linear-gradient(to bottom,transparent,black 30%,black 60%,transparent); mask-image: linear-gradient(to bottom,transparent,black 30%,black 60%,transparent); }
.home-solutions-fade { background: linear-gradient(to bottom,transparent 0%,var(--mint) 82%,var(--mint) 100%); }
.service-card { min-height: 390px; box-shadow: inset 0 1px 0 var(--mint); backdrop-filter: blur(12px); }
.service-card h3 { width: 11rem; text-transform: uppercase; }
.service-card p { flex: 1; }
.service-icon { width: 5rem; height: 5rem; margin: 1.5rem 0; color: var(--mint); }
.service-icon svg,.diff-icon svg { width: 100%; height: 100%; }
.diff-icon { width: 3.5rem; height: 3.5rem; flex: 0 0 auto; }
.home-differences h3 { text-transform: uppercase; }
.arrow-project-one { top: 3rem; left: 12%; width: 5rem; height: 5rem; }
.arrow-project-two { top: 0; right: 18%; width: 5rem; height: 5rem; }
.arrow-project-three { top: 14rem; left: 3%; width: 2.5rem; height: 2.5rem; }
.arrow-project-four { top: 14rem; right: 2%; width: 5rem; height: 5rem; }
.project-slide { position: absolute; inset-block: 0; overflow: hidden; border-radius: 1rem; background: var(--navy-deep); box-shadow: 0 25px 50px -12px rgb(0 0 0/.45); opacity: .55; transform: translateX(-1.5rem) scale(.92); transition: all .7s cubic-bezier(.22,1,.36,1); }
.project-slide img { width: 100%; height: 100%; object-fit: cover; }
.project-slide[data-position="active"] { z-index: 30; right: 3.5rem; left: 3.5rem; opacity: 1; transform: translateX(0) scale(1); }
.project-slide[data-position="next"] { z-index: 20; right: 0; left: 6rem; transform: translateX(1.5rem) scale(.92); }
.project-slide[data-position="prev"] { z-index: 10; right: 6rem; left: 0; }
.project-shade { position: absolute; inset: 0; background: linear-gradient(to top,color-mix(in srgb,var(--navy-deep) 45%,transparent),transparent 65%); }
.carousel-home-control { position: absolute; z-index: 40; top: 10rem; display: grid; place-items: center; width: 3rem; height: 3rem; transform: translateY(-50%); border: 1px solid color-mix(in srgb,var(--mint) 20%,transparent); border-radius: 999px; background: var(--glass); color: white; font-size: 2rem; line-height: 1; transition: background-color .2s,color .2s; }
.carousel-home-control:hover { background: var(--mint); color: var(--navy); }
.carousel-home-prev { left: 0; }
.carousel-home-next { right: 0; }
.contact-engineer { -webkit-mask-image: linear-gradient(to right,transparent,black 40%); mask-image: linear-gradient(to right,transparent,black 40%); }
.home-social-links a { display:grid;place-items:center;width:2rem;height:2rem;border-radius:.5rem;background:white;color:var(--navy);font-weight:800;text-transform:uppercase; }
.home-footer-menu a:hover,.original-home footer a:hover { color:var(--mint); }
.original-home + .site-footer { display: none; }

@media (max-width: 767px) {
  .home-hero { min-height: 830px; }
  .hero-building { top: auto; bottom: 0; width: 100%; height: 48%; opacity: .65; -webkit-mask-image: linear-gradient(to bottom,transparent,black 24%); mask-image: linear-gradient(to bottom,transparent,black 24%); }
  .home-hero header { padding-top: 1.75rem; }
  .home-menu-toggle { position: relative; z-index: 70; display: grid; gap: 5px; width: 42px; padding: 9px; background: transparent; border: 0; }
  .home-menu-toggle > span:not(.sr-only) { height: 2px; background: var(--mint); }
  .home-navigation { position: fixed; z-index: 60; inset: 0; display: flex; flex-direction: column; justify-content: center; background: rgb(0 26 58/.98); opacity: 0; visibility: hidden; transition: opacity .25s,visibility .25s; }
  .home-navigation.is-open { opacity: 1; visibility: visible; }
  .home-hero > div:nth-of-type(1) { padding-top: 4rem; }
  .home-hero h1 { max-width: 100%; font-size: clamp(2.7rem,13vw,4rem); }
  .home-hero p { max-width: 90%; }
  .arrow-hero-one { top: 55%; right: 7%; }
  .arrow-hero-two,.arrow-hero-three { display: none; }
  .arrow-hero-four { right: 12%; bottom: 4%; }
  .home-solutions { padding-top: 4.5rem; }
  .home-solutions h2,.home-differences h2 { font-size: clamp(2.75rem,12vw,4.5rem); }
  .home-solutions > div[data-original-solutions] { grid-template-columns: 1fr; }
  .service-card { min-height: 350px; }
  .home-large-logo { width: 32rem; height: 20rem; }
  .home-differences { padding-top: 4rem; padding-bottom: 12rem; }
  .home-differences > div { grid-template-columns: 1fr; gap: 2.5rem; }
  .home-projects > div { padding-top: 8rem; border-radius: 50% 50% 0 0 / 5% 5% 0 0; }
  .home-projects h2 { padding-inline: 1.5rem; font-size: 1.8rem; }
  .home-projects > div > p { padding-inline: 1.5rem; font-size: 1rem; }
  .arrow-project-one { left: 8%; top: 2rem; width: 4rem; height: 4rem; }
  .arrow-project-two { right: 10%; width: 4rem; height: 4rem; }
  .arrow-project-three,.arrow-project-four { display: none; }
  .original-project-carousel { padding-inline: 1rem; }
  .original-project-stage { height: 15rem; }
  .project-slide[data-position="active"] { left: 1.5rem; right: 1.5rem; }
  .project-slide[data-position="next"] { left: 2.75rem; }
  .project-slide[data-position="prev"] { right: 2.75rem; }
  .carousel-home-control { top: 7.5rem; width: 2.6rem; height: 2.6rem; }
  .carousel-home-prev { left: .25rem; }
  .carousel-home-next { right: .25rem; }
  .original-project-copy > div { display: block; }
  .original-project-copy h3 { font-size: 1.8rem; }
  .original-project-copy span { display: block; margin-top: .75rem; }
  .home-contact { height: 650px; }
  .contact-engineer { top: auto; bottom: 0; width: 100%; height: 58%; -webkit-mask-image: linear-gradient(to bottom,transparent,black 28%); mask-image: linear-gradient(to bottom,transparent,black 28%); }
  .home-contact h2 { font-size: 2.7rem; }
  .original-home footer > div { display: grid; grid-template-columns: 1fr; gap: 2rem; }
}

.cookie-banner{position:fixed;z-index:9998;right:20px;bottom:20px;left:20px;display:flex;align-items:center;justify-content:space-between;gap:28px;max-width:1120px;margin:auto;padding:20px 22px;border:1px solid rgba(0,255,197,.45);border-radius:14px;background:#001a3af2;color:#fff;box-shadow:0 18px 55px rgba(0,0,0,.35);font-family:"Outfit",Arial,sans-serif}
.cookie-banner[hidden]{display:none}
.cookie-copy{max-width:720px}.cookie-copy strong{display:block;margin-bottom:5px;font-size:1rem}.cookie-copy p{margin:0;color:#d8e5ed;font-size:.84rem;line-height:1.4}.cookie-copy a{color:#00ffc5;text-decoration:underline}
.cookie-actions{display:flex;flex-shrink:0;gap:10px}.cookie-actions button,.cookie-settings-link{border:1px solid #00ffc5;border-radius:6px;padding:10px 14px;font:700 .76rem "Outfit",Arial,sans-serif;cursor:pointer}
.cookie-primary{background:#00ffc5;color:#001f46}.cookie-secondary{background:transparent;color:#fff}.cookie-settings-link{border:0;padding:0;background:transparent;color:inherit;text-decoration:underline}
@media(max-width:720px){.cookie-banner{display:block;right:12px;bottom:12px;left:12px;padding:18px}.cookie-banner[hidden]{display:none}.cookie-actions{display:grid;grid-template-columns:1fr;margin-top:15px}.cookie-actions button{width:100%}}
.me-footer{position:relative;padding:64px 24px 24px;background:#000b18;color:#fff;font-family:"Outfit",Arial,sans-serif}
.me-footer::before{position:absolute;top:0;right:0;left:0;height:1px;background:linear-gradient(90deg,transparent,rgba(0,255,197,.5),transparent);content:""}
.me-footer-main{display:grid;grid-template-columns:1.3fr .8fr 1fr;gap:72px;width:min(100%,1180px);margin:0 auto}
.me-footer-brand{display:flex;align-items:center;gap:14px;width:max-content;color:#fff!important;text-decoration:none!important}
.me-footer-brand img{width:92px;height:66px;object-fit:contain}
.me-footer-brand>span{font-size:1.55rem;font-weight:800;line-height:.78;letter-spacing:-.04em}
.me-footer-brand small{display:block;padding-top:8px;font-size:.52rem;font-weight:600;line-height:1;letter-spacing:.03em}
.me-footer-brand-column>p{max-width:400px;margin:22px 0 0;color:#9eb0be;font-size:.86rem;line-height:1.45}
.me-footer-nav,.me-footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:9px}
.me-footer strong{margin-bottom:7px;color:#00ffc5;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase}
.me-footer-nav a,.me-footer-contact>a{color:#c4d1db;font-size:.84rem;text-decoration:none;transition:color .2s ease}
.me-footer-nav a:hover,.me-footer-contact>a:hover{color:#00ffc5}
.me-footer-contact p{margin:4px 0 0;color:#8298aa;font-size:.78rem;line-height:1.4}
.me-footer-socials{display:flex;gap:9px;margin-top:10px}
.me-footer-socials a,.me-footer-socials span{display:grid;place-items:center;width:38px;height:38px;border:1px solid #24435d;border-radius:8px;color:#00ffc5;background:#071a2c;transition:border-color .2s ease,background-color .2s ease,color .2s ease}
.me-footer-socials a:hover{border-color:#00ffc5;background:#00ffc5;color:#001f46}
.me-footer-socials span{opacity:.45}
.me-footer-socials svg{width:18px;height:18px}
.me-footer-bottom{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:22px;width:min(100%,1180px);margin:48px auto 0;padding-top:22px;border-top:1px solid #183149;color:#718697;font-size:.72rem}
.me-footer-bottom p{margin:0}
.me-footer-legal{display:flex;align-items:center;gap:16px}
.me-footer-legal a,.me-footer-legal button,.me-footer-credit a{color:#9db0be;text-decoration:none}
.me-footer-legal a:hover,.me-footer-legal button:hover,.me-footer-credit a:hover{color:#00ffc5}
.me-footer-credit{text-align:right}.me-footer-credit a{font-weight:700}
@media(max-width:800px){.me-footer{padding-top:48px}.me-footer-main{grid-template-columns:1fr 1fr;gap:42px}.me-footer-brand-column{grid-column:1/-1}.me-footer-bottom{grid-template-columns:1fr;text-align:left}.me-footer-credit{text-align:left}}
@media(max-width:540px){.me-footer-main{grid-template-columns:1fr;gap:34px}.me-footer-brand-column{grid-column:auto}.me-footer-bottom{margin-top:36px}.me-footer-legal{flex-wrap:wrap}}
