:root {
    --green-950: #004B36;
    --green-900: #004B36;
    --green-800: #07664c;
    --lime: #DDEB7F;
    --lime-soft: #e5f383;
    --ink: #111827;
    --muted: #363636;
    --white: #fff;
    --page-pad: clamp(15px, 1.9vw, 30px);
    --radius: 10px;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    overflow-x: hidden;
    color: var(--ink);
    background: var(--white);
    font-family: "Fira Sans", sans-serif;
    -webkit-font-smoothing: antialiased;
}

.reveal-section {
    opacity: 0;
    transform: translateY(36px);
    transition: opacity .75s ease, transform .75s cubic-bezier(.22, 1, .36, 1);
    will-change: opacity, transform;
}

.reveal-section.is-visible {
    opacity: 1;
    transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
    .reveal-section {
        opacity: 1;
        transform: none;
        transition: none;
    }
}

h1,
h2,
h4,
h3,
p {
    margin-top: 0;
    font-family: "Fira Sans", sans-serif;
}

img {
    display: block;
    width: 100%;
}

a {
    color: inherit;
    text-decoration: none;
}

button {
    font: inherit;
}

h1 {
    color: #FFF;
    font-size: 52px;
    font-weight: 700;
    line-height: 56px;
    letter-spacing: -1.5px;
}

h2 {
    color: #111827;
    font-size: 38px;
    font-weight: 700;
    line-height: 40px;
}

h3 {
    color: #111827;
    font-size:20px;
    font-weight: 700;
    line-height: normal;
}

h4 {
    color: #DDEB7F;
    font-size:20px;
    font-weight: 600;
    line-height:28px;
}

p {
    color: #FFF;
    font-size: 16px;
    font-weight: 400;
    line-height:24px;
}

li {    font-size: 16px;
    font-weight: 400;
    line-height:24px;
}
.container {
    width: 100%;
    max-width: 1310px;
    margin-inline: auto;
    padding-inline: var(--page-pad);
}

.site-header {
    position: fixed;
    inset: 0 0 auto;
    z-index: 1000;
    height: 72px;
    padding-block: 0;
    background: transparent;
    box-shadow: none;
    transition: transform .4s ease, background .3s ease, box-shadow .3s ease;
    will-change: transform;
}

.site-header.hidden {
    transform: translateY(-100%);
}

.site-header.scrolled {
    background: rgba(255, 255, 255, .78);
    box-shadow: 0 1px 0 rgba(0, 75, 54, .14);
    -webkit-backdrop-filter: blur(16px);
    backdrop-filter: blur(16px);
}

.header-row {
    min-height: 72px;
}

.logo {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.logo img {
    width: 200px;
    height: auto;
}

.site-header .logo-dark {
    display: none;
}

.site-header.scrolled .logo-light {
    display: none;
}

.site-header.scrolled .logo-dark {
    display: block;
}

.nav-links {
    position: static;
    width: 100%;
    flex-basis: auto;
    flex-grow: 0;
    align-items: center;
    justify-content: center;
    transform: none;
}

.nav-links .navbar-nav {
    gap: 24px;
}

.nav-links a {
    position: relative;
    padding: 8px 0 !important;
    color: #414a48;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    white-space: nowrap;
}

.nav-links a:hover,
.nav-links a.active {
    color: var(--green-900) !important;
    font-weight: 700;
}

.nav-links a.active::after {
    content: "";
    position: absolute;
    inset: auto 0 5px;
    height: 2px;
    background: var(--green-900) !important;
}

.site-header:not(.scrolled) .nav-links a {
    color: #fff;
}

.site-header:not(.scrolled) .nav-links a:hover,
.site-header:not(.scrolled) .nav-links a.active {
    color: var(--green-800) !important;
}

.site-header:not(.scrolled) .nav-links a.active::after {
    background: var(--green-800) !important;
}

.ctaPill {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 13px 24px;
    border: 0;
    border-radius: 5px;
    background: var(--lime);
    color: var(--green-950);
    font-size: 14px;
    font-weight: 600;
}

.ctaPill span {
    position: relative;
    z-index: 11;
}

.menu-toggle {
    display: none;
    width: 42px;
    height: 42px;
    padding: 5px;
    border: 0;
    box-shadow: none !important;
}

.nav-mobile-footer {
    display: none;
}

.ctaPill::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    right: 100%;
    bottom: 0;
    left: 0;
    z-index: 10;
    border-radius: 5px;
    background-color: var(--green-900);
    transition: right .4s ease;
}

.ctaPill:hover::before {
    right: 0;
}

.ctaPill:hover span {
    color: var(--white);
}

.ctaPill:hover span path {
    stroke: var(--white);
}

.hero {
    position: relative;
    height: 584px;
    color: #fff;
    background-color: rgba(0, 0, 0, 0.70);
    background-image: url(../images/hero-bg.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.hero::after {
    z-index: 1;
    position: absolute;
    content: "";
    width: 100%;
    height: 90%;
    bottom: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 0%, rgba(0, 0, 0, 0.70) 100%);
}

.hero-content {
    z-index: 2;
    position: relative;
    padding-bottom:50px;
    transform: translateY(26px);
}
.service-card img.mx-16{max-width:16px;height:16px;transform: rotate(180deg);}
.eyebrow {
    margin-bottom: 20px;
    color: var(--green-900);
    font-size: 14px;
    line-height: 1;
    font-weight: 600;
    text-transform: uppercase;
}

.hero-eyebrow {
    display: inline-flex;
    padding: 7px 10px;
    margin-bottom: 28px;
    border-radius: 2px;
    background: var(--lime);
}

.hero h1 {
    max-width: 830px;
    margin-bottom:15px;
}
.hero h3{font-style: italic;font-weight: 500; margin-bottom:30px;letter-spacing: -1.5px;}

.hero h4 {
    max-width: 650px;
    margin-bottom: 0;
    color: #e2e8e5;
    font-weight: 400;
    line-height: 30px;
}

.hero h4 strong {
    display: block;
    color: var(--lime);
    font-weight: 600;
}

.hero-actions {
    position: absolute;
    right: var(--page-pad);
    bottom: 81px;
}

.hero-actions .ctaPill {
    font-size: 13px;
    padding: 13px 32px;
    font-weight: 700;
    text-transform: uppercase;
}

.btn-outline {
    padding: 13px 32px;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
}

.stats {
    position: relative;
    z-index: 4;
    margin-top: -132px;
}

.stats-row {
    overflow: hidden;
    border-radius: 10px 10px 0 0;
    background: linear-gradient(180deg, #FFF 31.58%, #DDEB7F 241.35%);
}

.stat {
    min-height: 132px;
    padding: 30px 50px;
    border-right: 1px solid #E0E5E3;
}

.stat:last-child {
    border-right: 0;
}

.stat strong {
    display: block;
    margin-bottom: 2px;
    color: var(--green-900);
    font-size: 48px;
    line-height: 100%;
}

.stat-number {
    font-variant-numeric: tabular-nums;
}

.stat span {
    color: #57605e;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
}

.section {
    padding-top: 40px;
    padding-bottom: 80px;
    overflow: hidden;
}

.section-head {
    margin-bottom:30px;
}

.section-head .eyebrow {
    font-size: 14px;
    margin-bottom: 16px;
}

.services h2 {
    max-width: 950px;
    margin-bottom: 0;
    font-size: 40px;
    font-weight: 600;
}

.view-link {
    display: flex;
    justify-content: end;
    white-space: nowrap;
    gap: 6px;
    margin-bottom:10px;
    color: var(--green-900);
    font-size: 14px;
    font-weight: 700;
}

.view-link img {
    max-width: 12px;
}

.arrow {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid var(--green-900);
    border-radius: 50%;
    background: var(--green-900);
    color: var(--green-900);
    font-size: 19px;
    cursor: pointer;
}

.arrow.next {
    background: var(--green-900);
    color: #fff;
}

.arrow.projects-prev {
    background: var(--green-900);
    color: #fff;
}

.projects-prev span {
    display: inline-block;
    line-height: 1;
}

.arrow.next .left {
    display: none;
}

.arrow.next.swiper-button-disabled .left {
    display: flex;
    transform: rotate(180deg);
}

.arrow.next.swiper-button-disabled .right {
    display: none;
}

.arrow.prev.swiper-button-disabled .right {
    display: none;
}

.arrow.prev.swiper-button-disabled .left {
    display: flex;
}

.arrow.prev .left {
    display: none;
}

.arrow.prev .right {
    display: flex;
    transform: rotate(180deg);
}



.arrow.swiper-button-disabled {
    color: var(--green-900);
    background-color: transparent;
    opacity: 1;
    cursor: default;
}

.arrow.swiper-button-disabled span {
    color: var(--green-900);
}

.swiper {
    overflow: visible;
}

.swiper-slide {
    height: auto;
}

.projects .eyebrow {
    font-size: 14px;
    font-weight: 500;
    margin-bottom: 10px;
}

.project-card {
    position: relative;
    overflow: hidden;
    border-radius: var(--radius);
    background: #ddd;
}
.project-card img {
    height: 100%;
    object-fit: cover;
    transition: transform .45s ease;
}

.project-card:hover img {
    transform: scale(1.04);
}

.project-card::after {
    content: "";
    position: absolute;
    inset: 34% 0 0;
    background: linear-gradient(transparent, rgba(0, 0, 0, .83));
}
.project-card:hover::after {  background: linear-gradient(transparent, rgba(0, 0, 0, .95))}
.project-info {
    position: absolute;
    z-index: 2;
    inset: auto 20px 20px;
    color: #fff;
    width:calc(100% - 40px);
    max-width: 240px;
    left: 0px;
    right: 0px;
    margin-inline: auto;
}

.tag {
    display: inline-block;
    padding:4px 8px;
    margin-bottom: 9px;
    border-radius: 6px;
    background: var(--lime);
    color: var(--green-950);
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 16px;
}

.project-info h3 {
    margin-bottom: 8px;
    color: var(--white);
    font-weight: 600;
    font-size: 18px;

}

.project-info p {
    margin-bottom: 0;
    opacity: 0.8;
    font-size: 14px;
    line-height:20px;
}

.services {
    padding-block: 80px;
    background: var(--lime-soft);
}

.service-card {
    height:auto;
    overflow: hidden;
    border-radius: var(--radius);
    background: #fff;
}
 .service-card img {
   object-fit: cover;
}
.service-copy.card-body{position:absolute;bottom:0px; width:100%; background-color:#fff;}

.service-copy {
    padding: 24px 24px 28px;
}

.service-copy h3 {
    margin-bottom: 10px;
    font-size:18px;
}

.service-copy p {
    margin-bottom: 0;
    color: var(--muted);
 
}

.expertise {
    padding-block: 80px;
    color: #fff;
    background: var(--green-900);
}

.expertise .eyebrow {
    color: var(--lime);
}

.expertise h2 {
    color: #fff;
    margin-bottom: 0;
}

.expertise .view-link {
    color: #fff;
}

.expertise .arrow {
    border-color: #fff;
    color: #fff;
    background-color: #fff;
}

.expertise .arrow.next {
    background: #fff;
    color: var(--green-900);
}

.expertise .arrow.swiper-button-disabled {
    background-color: transparent;
}

.expertise-card {
    padding:20px;
    border-radius: 9px;
    background: rgba(255, 255, 255, .085);
}

.expertise-icon {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    border-radius: 50%;
    background: rgba(220, 239, 101, .16);
    color: var(--lime);
    font-size: 19px;
}

.expertise-icon img {
    max-width: 20px;
}

.expertise-card h3 {
    margin-bottom: 0;
    color: #fff;
    font-size:18px;
}

.expertise .swiper-backface-hidden .swiper-slide:hover h3{color:#fff;}
.expertise .arrow.prev.swiper-button-disabled .right {
    display: block;
}

.expertise .arrow.prev.swiper-button-disabled .left {
    display: none;
}

.expertise .arrow.prev .left {
    display: block;
}

.expertise .arrow.prev .right {
    display: none;
}

.expertise .arrow.next.swiper-button-disabled .right {
    display: block;
}

.expertise .arrow.next.swiper-button-disabled .left {
    display: none;
}

.expertise .arrow.next .left {
    display: block;
    transform: rotate(180deg);
}

.expertise .arrow.next .right {
    display: none;
}




.site-footer {
    min-height: 412px;
    padding: 80px 0px 24px;
    color: #9da5a2;
    background-color: #252525;
}

.footer-grid {
    display: grid;
    grid-template-columns: 1.5fr .8fr 1fr 1fr;
    gap: 60px;
    padding-bottom: 25px;
}

.footer-about .logo {
    margin-bottom: 26px;
    color: #fff;
}

.footer-about .logo-small {
    font-size: 11px;
    font-weight: 700;
    font-style: italic;
}

.footer-about .logo-mark {
    font-size: 36px;
    line-height: 1;
    font-weight: 600;
    letter-spacing: -3px;
}

.footer-about .logo-copy {
    margin-left: 9px;
    color: #b6bcb9;
    font-size: 14px;
    line-height: 1.15;
    font-weight: 700;
    font-style: italic;
}

.footer-about p {
    max-width: 336px;
    color: #9B9C9D;
}

.socials {
    display: flex;
    gap: 10px;
    margin-top: 22px;
}

.social {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #2d312f;
    color: #c3cbc7;
    font-size: 14px;
    font-weight: 700;
}

.footer-col h3 {
    margin: 5px 0 25px;
    color: #F8F8F5;
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
}

.footer-col a,
.footer-col p {
    display: block;
    margin-bottom: 14px;
    color: #9B9C9D;
    font-size: 14px;
    line-height: 1.4;
    align-items: start;
}

.footer-col a:hover,.legal a:hover {
    color:#DDEB7F;
}

.footer-col img {
    max-width: 14px;
}

.footer-col p img {
    vertical-align: top;
    margin-top: 5px;
}

.copyright {
    display: flex;
    justify-content: space-between;
    gap: 25px;
    padding-top: 24px;
    border-top: 1px solid #333735;
    font-size: 11px;
}

.legal {
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
}

.legal a {
    color: #9B9C9D;
    font-size: 14px;
    font-weight: 400;
}

.copyright p {
    margin-bottom: 0px;
    color: #9B9C9D;
    font-size: 14px;
    font-weight: 400;
}

/* Inner pages — page hero */
.page-hero {
    padding: 152px 0 56px;
    background: var(--green-900);
    color: #fff;
}

.page-hero .eyebrow {
    margin-bottom: 20px;
    color: var(--lime);
    display: block;
}

.page-hero h1 {
    margin-bottom: 0;
}




/* About */
.about-section {
    padding-block: 80px 80px;
}

.about-layout {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

.about-sidebar {
    position: sticky;
    top: 96px;
    width: 248px;
    flex-shrink: 0;
}

.about-nav {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.about-nav-link {
    display: block;
    padding: 14px 18px;
    border-radius: 8px;
    color: var(--ink);
    font-size: 14px;
    font-weight: 600;
}

.about-nav-link:hover {
    color: var(--green-900);
}

.about-nav-link.active {
    background: #EAF3EE;
    color: var(--green-900);
}

.about-content {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.about-group {
    display: flex;
    flex-direction: column;
    scroll-margin-top: 100px;
    background: #FAFAF7;
    border: 1px solid #DDE5DF;
    border-radius: var(--radius);
}

.about-card {
    padding: 30px 30px;


}

.about-card .eyebrow {
    margin-bottom: 16px;
    display: block;
}

.about-card h2 {
    margin-bottom: 20px;
}

.about-card p {
    margin-bottom: 18px;
    color: var(--muted);
  
}

.about-card p:last-child {
    margin-bottom: 0;
}

.about-card--highlight {
    background: var(--lime);
    border-color: transparent;
}

.about-card--highlight .eyebrow {
    color: var(--green-900);
}

.about-card--highlight p {
    color: var(--ink);
    font-weight: 400;
}

.about-card--highlight p.lead {
    font-weight: 600;
    color: #000;
}

.accreditation-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    flex-wrap: wrap;
}

.accreditation-copy {
    flex: 1;
    min-width: 260px;
}

.accreditation-copy p {
    margin-bottom: 0;
}

.accreditation-logos {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
    flex-shrink: 0;
}

.accreditation-logo {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    text-align: center;
}

.accreditation-logo img {

    height: 69px;
    object-fit: contain;
}

.accreditation-logo span {
    color: var(--muted);
    font-size: 10px;
    font-weight: 600;
    line-height: 1.3;
    text-transform: uppercase;
    letter-spacing: .02em;
}

.leadership-card {
    background: #fff;
}

.leadership-head {
    display: flex;
    align-items:end;
    justify-content: space-between;
    gap: 24px;
    padding-bottom: 28px;
    margin-bottom: 36px;
    border-bottom: 1px solid #ECEEEA;
}

.leadership-head h2 {
    margin-bottom: 0;
}

.leadership-count {
    flex-shrink: 0;
    text-align: right;
}

.leadership-count strong {
    display: block;
    color: var(--ink);
    font-size: 52px;
    font-weight: 600;
    line-height: 1;
}

.leadership-count span {
    color: var(--muted);
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    display: block;
    margin-top: 5px;
}

.leadership-grid {
    row-gap: 40px;
}

.leader {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.leader-top {
    display: flex;
    align-items: center;
    gap: 20px;
    text-align: left;
}

.leader-photo {
    width: 92px;
    height: 92px;
    flex-shrink: 0;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 36px;
    background: var(--lime);
    color: var(--green-900);
}

.leader-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.leader-body {
    text-align: left;
}

.leader-heading h3 {
    margin-bottom: 2px;
}

.leader-role {
    margin: 0;
    color: var(--muted);
    font-size: 14px;
    font-weight: 400;
}

.about-card p.leader-bio {
    margin-bottom: 10px;
    color: var(--muted);
   
}

.read-more {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
    color: var(--green-900);
    font-size: 16px;
    font-weight: 700;
}

.read-more img {
    max-width: 12px;
}

/* Team member modal */
.team-modal-overlay {
    position: fixed;
    inset: 0;
    z-index: 1200;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(17, 24, 39, .55);
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s ease, visibility .3s ease;
}

.team-modal-overlay.active {
    opacity: 1;
    visibility: visible;
}

.team-modal-container {
    --tm-pad-x: 30px;
    width: 100%;
    max-width: 900px;
    max-height: 88vh;
    overflow-y: auto;
    overflow-x: hidden;
    background: var(--white);
    border-radius: 20px;
    padding: 28px var(--tm-pad-x) 28px;
    transform: translateY(24px);
    transition: transform .3s ease;
}

.team-modal-overlay.active .team-modal-container {
    transform: translateY(0);
}

.team-modal-back {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 calc(var(--tm-pad-x) * -1) 24px;
    padding: 0 var(--tm-pad-x) 20px;
    border: 0;
    background: none;
    color: var(--green-900);
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    position: relative;
    width: 120%;
}

.team-modal-back:before {
    border-bottom: 1px solid #ECEEEA;
    position: absolute;
    width: 100%;
    height: 1px;
    content: '';
    left: 0px;
    bottom: 0px
}

.team-modal-back-icon {
    width: 14px;
    transform: rotate(180deg);
}

.team-modal-body {
    display: flex;
    gap: 40px;
    align-items: flex-start;
}

.team-modal-photo {
    flex: 0 0 230px;
    width: 230px;
    height: 230px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 24px;
    background: var(--lime);
}

.team-modal-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.team-modal-right {
    flex: 1;
    min-width: 0;
}

.team-modal-right h3 {
    margin-bottom: 4px;
    font-size: 38px;
}

.team-modal-role {
    margin-bottom: 20px;
    color: var(--muted);
    font-size: 24px;
    font-weight: 400;
}

.team-modal-bio p {
    margin-bottom: 16px;
    color: var(--muted);
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
}

.team-modal-bio p:last-child {
    margin-bottom: 0;
}



/* Services */
.svc-section {
    padding-block: 80px 80px;
}

.svc-layout {
    display: flex;
    align-items: flex-start;
    gap: 32px;
}

.svc-sidebar {
    position: sticky;
    top: 96px;
    width: 248px;
    flex-shrink: 0;
}

.svc-nav {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.svc-nav-link {
    display: block;
    padding: 14px 18px;
    border-radius: 8px;
    color: var(--ink);
    font-size: 14px;
    font-weight: 600;
}

.svc-nav-link:hover {
    color: var(--green-900);
}

.svc-nav-link.active {
    background: #EAF3EE;
    color: var(--green-900);
}

.svc-content {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.svc-block {
    padding: 28px 30px;
    background: #fff;
    border: 1px solid #DDE5DF;
    border-radius: var(--radius);
    scroll-margin-top: 100px;
}

.svc-block#engineering-design,
.svc-block#greenfield-development,
.svc-block#project-management {
    background: #FAFAF7;
}

.svc-block h2 {
    margin-bottom: 10px;
    font-size: 26px;
    line-height: 40px;
}

.svc-block-top {
    display: flex;
    align-items: stretch;
    gap: 20px;
}

.svc-block-copy {
    flex: 1 1 55%;
    min-width: 0;
}

.svc-block-copy p {
    margin-bottom: 14px;
    color: var(--muted);
    font-size: 16px;
    line-height: 26px;
}

.svc-block-copy p:last-child {
    margin-bottom: 0;
}

.svc-media {
    flex: 0 0 44%;
    border-radius: var(--radius);
    background: linear-gradient(180deg, #d9d9d9 0%, #1a1a1a 100%);
    overflow: hidden;
}

.svc-media img {
    display: block;
    width: 100%;
    object-fit: cover;
}

.svc-groups {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 32px;
}

.svc-group {
    padding: 24px 28px;
    background: #F6F8F4;
    border-radius: 8px;
}

.svc-group-title {
    display: block;
    margin-bottom: 14px;
    color: var(--green-900);
    font-size:20px;
    font-weight: 700;
}

.svc-group p {
    margin: 0;
    color: var(--muted);
 }

.svc-checklist {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px 24px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.svc-checklist.checklist1{display:flex; flex-direction:column;}
#advisory-consulting{margin-bottom:130px;}
.svc-checklist li {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    color: var(--muted);
    font-size: 16px;
    }

.svc-checklist li svg {
    flex-shrink: 0;
    margin-top: 3px;
    color: var(--green-900);
}

/* Expertise */
.exp-section {
    padding-block: 80px 80px;
}

.exp-layout {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

.exp-sidebar {
    position: sticky;
    top: 96px;
    width: 248px;
    flex-shrink: 0;
}

.exp-nav {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.exp-nav-link {
    display: block;
    padding: 14px 18px;
    border-radius: 8px;
    color: var(--ink);
    font-size: 14px;
    font-weight: 600;
}

.exp-nav-link:hover {
    color: var(--green-900);
}

.exp-nav-link.active {
    background: #EAF3EE;
    color: var(--green-900);
}

.exp-content {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.exp-group {
    scroll-margin-top: 100px;
}

.exp-group-head {
    margin-bottom: 20px;
}

.exp-group-head h2 {
    margin-bottom: 12px;
}

.exp-group-head p {
    margin: 0;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.7;
}

.exp-sectors {
    display: flex;
    flex-direction: column;
    background: #FAFAF7;
    border: 1px solid #FAFAF7;
    border-radius: var(--radius);
    overflow: hidden;
}

.exp-sector-card {
    position: relative;
    padding: 28px 30px;
}

.exp-sector-card:not(:last-child)::after {
    content: "";
    position: absolute;
    left: 30px;
    right: 30px;
    bottom: 0;
    border-bottom: 1px solid #E2E5DE;
}

.exp-sector-card.sectornew:not(:last-child)::after {

    border-bottom: 0px solid #E2E5DE;
}

.exp-sector-card.sectornew {
    padding-bottom: 0px;
}

.exp-sector-card.sectornew p {
    margin-bottom: 0px;
    font-size: 16px;
}

.exp-sector-card>p {
    margin: 0 0 14px;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.7;
}

.exp-sector-card>p strong {
    color: var(--ink);
}

.exp-sector-head {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

.exp-sector-icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    display: grid;
    place-items: center;
    color: var(--green-900);
}

.exp-sector-icon svg {
    width: 20px;
    height: 20px;
}

.exp-sector-head h3 {
    margin: 0;
    color: #111827;


}

.exp-sector-head.comerfris h3 {
    color: var(--green-900);
}

.exp-sector-top {
    display: flex;
    align-items: stretch;
    gap: 20px;
}

.exp-sector-copy {
    flex: 1 1 58%;
    min-width: 0;
}

.exp-sector-copy p {
    color: var(--muted);
     line-height: 22px;
    margin-bottom: 14px;
}

.copyrexpro {
    margin-top: 20px;
}

.copyrexpro p {

    color: var(--muted);
    line-height: 22px;
    margin-bottom: 14px;

}

.exp-sector-copy p:last-child {
    margin-bottom: 0;
}

.exp-sector-copy p strong {
    color: var(--ink);
}

.exp-sector-media {
    flex: 0 0 42%;
    border-radius: var(--radius);
    overflow: hidden;
    background: linear-gradient(180deg, #d9d9d9 0%, #1a1a1a 100%);
}

.exp-sector-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.exp-explore {
    display: none;
    align-items: center;
    gap: 6px;
    color: var(--green-900);
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;

}

.exp-explore img {
    max-width: 12px;
}

.exp-checklist-groups {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-top: 32px;
}

.exp-checklist-group {
    padding: 18px 20px;
    background: #fff;
    border: 1px solid #fff;
    border-radius: 8px;
}

.exp-checklist-title {
    display: block;
    margin-bottom: 14px;
    color: var(--green-900);
    font-size: 16px;
    font-weight: 700;
}

.exp-checklist {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px 24px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.exp-checklist li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    color: var(--muted);
    font-size: 14px;
    line-height: 1.5;
}

.exp-checklist li svg {
    flex-shrink: 0;
    margin-top: 3px;
    color: var(--green-900);
}

.exp-panel {
    padding: 28px 30px;
    border: 1px solid #ECEEEA;
    border-radius: var(--radius);
}

.exp-capabilities-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: start;
    align-content: start;
    grid-auto-rows: 1px;
    column-gap: 20px;
    row-gap: 0.07px;
}

.exp-capability-card {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    background: #F7F8F5;
    border: 1px solid #ECEEEA;
    border-radius: var(--radius);
    overflow: hidden;
}

.exp-capability-media {
    height: 260px;
    background: linear-gradient(180deg, #d9d9d9 0%, #1a1a1a 100%);
}

.exp-capability-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.exp-capability-caption {
    margin: 0;
    padding: 20px 24px;
    color: var(--ink);
    font-size: 18px;
    font-weight: 600;
    line-height: 29px;
}

.exp-tech-intro {
    margin-bottom: 22px;
}

.exp-tech-intro p {
    margin: 0;
    color: var(--muted);
    font-size: 16px;
    line-height: 26px;
}

.exp-pillars-label {
    display: block;
    margin-bottom: 16px;
    color: #111827;
    font-size: 18px;
    font-weight: 700;
    line-height: 29px;
}

.exp-pillars-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-bottom: 40px;
}

.exp-pillar-card {
    padding: 28px;
    background: #F6F8F4;
    border-radius: var(--radius);
}

.exp-pillar-head {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

.exp-pillar-icon {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    display: grid;
    place-items: center;
    color: var(--green-900);
}

.exp-pillar-icon img {
    width: 24px;
    height: 24px;
}

.exp-pillar-card h3 {
    margin: 0;

}

.exp-pillar-card p {
    margin: 0;
    color: var(--muted);

}

.exp-digital {
    margin: 0 -30px -30px;
    padding: 30px;
    background: var(--lime);
    border-radius: 0 0 var(--radius) var(--radius);
}

.exp-digital-head {
    margin-bottom: 24px;
}

.exp-digital-head h3 {
    margin-bottom: 8px;
    color: var(--ink);
}

.exp-digital-head p {
    margin: 0;
    color: var(--ink);
}

.exp-digital-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.exp-digital-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 20px;
    background: #fff;
    border-radius: 16px;
    min-height: 157px;
}

.exp-digital-logos {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-bottom: 10px;
}

.exp-digital-logos img {
    width: auto;
    height: 32px;
    max-width: 100%;
}

.exp-digital-card h4 {
    margin: 0;
    color: var(--ink);
    font-size: 18px;
    font-weight: 700;
}

.exp-digital-card p {
    margin: 0;
    color: var(--muted);

}

/* ===== Career Page CSS Start ===== */
.career-page {
    background: #fff;
}

.career-page .site-header {
    background: var(--white);
}

.career-page .site-header .logo-light {
    display: none;
}

.career-page .site-header .logo-dark {
    display: block;
}

.career-page .site-header .nav-links a {
    color: #414a48;
}

.career-page .site-header .nav-links a.active {
    color: var(--green-900) !important;
}

.career-hero {
    padding-top: 76px;
    display: flex;
    align-items: flex-end;
    padding-bottom: 76px;
    color: #fff;
    background: #004B36;
    margin-top: 72px;
}

.career-hero .eyebrow {
    margin-bottom: 25px;
    color: var(--lime);
    font-weight: 500;
}

.career-hero h1 {
    margin: 0;
    font-size: 52px;
    line-height: 1;
    letter-spacing: 0;
}

.career-culture {
    padding: 80px 0;
    background: #fff;
}

.career-culture-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 510px;
    gap: 40px;
    align-items: center;
}

.career-culture .eyebrow,
.career-opportunities .eyebrow,
.career-benefits .eyebrow {
    margin-bottom: 16px;
    color: #1B4332;
    font-size: 14px;
    font-weight: 500;
}

.career-culture h2,
.career-opportunities h2,
.career-benefits h2 {
    margin-bottom: 28px;
    color: #111827;
    font-size: 38px;
    line-height: 1;
}

.career-culture p {
    max-width: 710px;
    margin: 0;
    color: #363636;
    font-size: 16px;
    line-height: 26px;
}

.career-culture-image {
    width: 100%;
    height: 238px;
    border-radius: 9px;
    background: linear-gradient(180deg, #c6c6c6 0%, #bdbdbd 40%, #242424 100%);
    overflow: hidden;
}

.career-culture-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.career-opportunities {
    padding: 48px 0 50px;
    background: #F7F9F5;
}

.career-apply-note {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
    padding: 20px 24px;
    background: #fff;
    border: 1px solid #E3E8E1;
    border-radius: 10px;
    color: #363636;
    font-size: 15px;
}

.career-apply-email {
    color: var(--green-900);
    font-weight: 700;
}

.career-mail-icon {
    flex-shrink: 0;
    display: inline-flex;
    color: var(--green-900);
    line-height: 1;
}

.career-benefits {
    padding: 84px 0 88px;
    background: var(--lime-soft);
}

.career-benefits h2 {
    margin-bottom: 42px;
    color: var(--green-900);
}

.career-benefits-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.career-benefit-card {
    min-height: 182px;
    padding: 31px 32px;
    border-radius: 10px;
    background: #fff;
}

.career-benefit-icon {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    margin-bottom: 19px;
    border-radius: 8px;
    color: var(--green-900);
    background: #EAF3EE;
}

.career-benefit-icon svg {
    width: 21px;
    height: 21px;
}

.career-benefit-card h3 {
    margin-bottom: 9px;
    color: #111827;
    font-size: 16px;
    line-height: normal;
}

.career-benefit-card p {
    margin: 0;
    color: #363636;
    font-size: 14px;
    line-height: normal;
}

/* ===== Career Page CSS End ===== */

.contact-page {
    background: #fff;
}

.contact-page .site-header {
    background: var(--white);
}

.contact-page .site-header .logo-light {
    display: none;
}

.contact-page .site-header .logo-dark {
    display: block;
}

.contact-page .site-header .nav-links a {
    color: #414a48;
}

.contact-page .site-header .nav-links a.active {
    color: var(--green-900) !important;
}

.page-inner .site-header {
    background: var(--white);
}

.page-inner .site-header .logo-light {
    display: none;
}

.page-inner .site-header .logo-dark {
    display: block;
}

.page-inner .site-header .nav-links a {
    color: #414a48;
}

.page-inner .site-header .nav-links a.active {
    color: var(--green-900) !important;
}

.contact-hero {
    padding-top: 76px;
    display: flex;
    align-items: flex-end;
    margin-top: 72px;
    padding-bottom: 76px;
    color: #fff;
    background: #004B36;
}

.contact-hero .eyebrow {
    margin-bottom: 25px;
    color: var(--lime);
    font-size: 14px;
    font-weight: 500;
}

.contact-hero h1 {
    margin: 0;
    font-size: 52px;
    line-height: 1;
    letter-spacing: 0;
}

.contact-details {
    padding: 80px 0 74px;
    background: #fff;
}

.contact-details-grid {
    display: grid;
    grid-template-columns: 400px minmax(0, 1fr);
    gap: 28px;
    align-items: start;
}

.contact-location-card {
    padding: 28px 28px 28px;
    border-radius: 10px;
    background: #F7F9F5;
}

.contact-location-card>.eyebrow,
.contact-form-wrap>.eyebrow {
    padding-top: 0;
    margin-bottom: 20px;
    color: #1B4332;
    font-size: 14px;
    font-weight: 500;
}

.contact-location-map {
    height: 70px;
    margin: 0 0 28px;
    border-radius: 10px;
}

.contact-map-placeholder {
    background: #C4C4C4;
}

.contact-location-card h2 {
    margin-bottom: 10px;
    color: #111827;
    font-size: 18px;
    line-height: normal;
}

.contact-location-card>p {
    margin-bottom: 20px;
    color: #363636;
   
}

.contact-location-rule {
    height: 1px;
    margin-bottom: 20px;
    background: #d9ded8;
}

.contact-location-list p {
    display: flex;
    gap: 11px;
    margin: 0 0 16px;
    color: #363636;
    
}

.contact-detail-icon {
    padding-top:6px;
}

.contact-detail-icon img {
    height: 14px;
    width: 14px;
}

.contact-form-wrap {
    padding: 0 0 0 0;
}
.contact-form-wrap p{color: #363636;}
.contact-form-wrap>.eyebrow {
    margin-bottom: 18px;
}

.contact-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 24px;
    row-gap: 20px;
}

.contact-form-row {
    min-width: 0;
}

.contact-form-row label {
    display: block;
    margin-bottom: 8px;
    color: var(--green-900);
    font-size: 14px;
    font-weight: 700;
    line-height: normal;
}

.contact-form input,
.contact-form select,
.contact-form textarea {
    width: 100%;
    border: 1px solid #DDE5DF;
    border-radius: 10px;
    outline: 0;
    color: #888A8D;
    background: #F7F9F5;
    font-family: inherit;
    font-size: 14px;
}

.contact-form input,
.contact-form select {
    height: 45px;
    padding: 0 12px;
}

.contact-form textarea {
    height: 150px;
    padding: 12px;
    resize: vertical;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder {
    color: #858c88;
    opacity: 1;
}

.contact-form select {
    appearance: auto;
}

.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
    border-color: var(--green-900);
}

.contact-form-message {
    grid-column: 1 / -1;
}

.contact-submit {
    max-width: 176px;
    padding: 12px 16px;
    font-size: 16px;
    font-weight: 700;
    background: #D9F26E;
    border-radius: 8px;
}

.contact-submit::before {
    border-radius: 5px;
}

.contact-map-section {
    padding: 80px 0 80px;
    background: #DDEB7F;
}

.contact-map {
    display: block;
    width: 100%;
    height:150px;
    border: 0;
    border-radius: 8px;
    margin-bottom: 20px;
}

/* ===== Contact Page CSS End ===== */

/* ===== Sustainability Page CSS Start ===== */
.sustainability-page {
    background: #fff;
}

.sustainability-page .site-header {
    background: var(--white);
}

.sustainability-page .site-header .logo-light {
    display: none;
}

.sustainability-page .site-header .logo-dark {
    display: block;
}

.sustainability-page .site-header .nav-links a {
    color: #414a48;
}

.sustainability-page .site-header .nav-links a.active {
    color: var(--green-900) !important;
}

.sustainability-hero {
    display: flex;
    align-items: flex-end;
    margin-top: 72px;
    padding-bottom: 76px;
    color: #fff;
    background: #004B36;
    padding-top: 76px
}

.sustainability-hero .eyebrow {
    margin-bottom: 24px;
    color: var(--lime);
    font-size: 14px;
    font-weight: 500;
}

.sustainability-hero h1 {
    margin: 0 0 20px;
    font-size: 52px;
    line-height: 1;
    letter-spacing: 0;
}

.sustainability-hero p {
    margin: 0;
    color: rgba(255, 255, 255, 0.75);
    font-size: 18px;
    font-weight: 400;
    line-height: 160%;
}

.sustainability-practice {
    min-height: 400px;
    display: flex;
    align-items: center;
}

.sustainability-practice-light {
    background: #fff;
}

.sustainability-practice-muted {
    background: #f7f9f5;
}

.sustainability-practice-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 480px;
    gap: 80px;
    align-items: center;
}

.sustainability-practice-reverse {
    grid-template-columns: 480px minmax(0, 1fr);
}

.sustainability-copy h2 {
    margin: 0 0 14px;
    color: #111827;
    font-size: 38px;
    line-height: 40px;
}

.sustainability-copy p {
    max-width: 690px;
    margin: 0;
    color: #363636;
     
}

.sustainability-image {
    width: 100%;
    height: 320px;
    border-radius: 9px;
    background: linear-gradient(180deg, #c6c6c6 0%, #bdbdbd 43%, #242424 100%);
    overflow: hidden;
}

.sustainability-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sustainability-certifications {
    padding: 74px 0 74px;
    background: #DDEB7F;
}

.sustainability-certifications-grid {
    display: grid;
    grid-template-columns: 1.7fr 2fr;
    gap: 50px;
    align-items: center;
}

.sustainability-cert-copy h2 {
    margin: 0 0 12px;
    color: #111827;
    font-size: 38px;
    line-height: 40px;
}

.sustainability-cert-copy p {
    margin: 0;
    color: #363636;
    font-size: 16px;
  
}

.sustainability-cert-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 26px;
}

.sustainability-cert-card {
    min-height: 112px;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 20px 24px;
    border-radius: 10px;
    background: #f7faf6;
}

.sustainability-cert-seal {
    width: 60px;
    height: 60px;
    flex: 0 0 60px;
    color: #59605e;
}

.sustainability-cert-seal svg {
    width: 100%;
    height: 100%;
}

.sustainability-cert-card strong {
    display: block;
    color: var(--green-900);
    font-size: 64px;
    font-weight: 900;
    line-height: 60px;
}

.sustainability-cert-card small {
    display: block;
    color: #5F6B65;
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
}

.sustainability-cert-gold .sustainability-cert-seal {
    color: #c49d18;
}

.sustainability-practice,
.sustainability-practice-muted {
    padding: 76px 0;
}

/* ===== Sustainability Page CSS End ===== */


/* ===== projects-page CSS start ===== */

.projects-page {
    padding-top: 72px;
}

.projects-page .site-header {
    background: var(--white);
}

.projects-page .site-header .logo-light {
    display: none;
}

.projects-page .site-header .logo-dark {
    display: block;
}

.projects-page .site-header .nav-links a {
    color: #414a48;
}

.projects-page .site-header .nav-links a.active {
    color: var(--green-900) !important;
}

.portfolio-hero {
    padding-block: 80px;
    background: var(--green-900);
}

.projects .portfolio-hero .eyebrow {
    margin-bottom: 16px;
    color: var(--lime);
}

.portfolio-hero h1 {
    margin-bottom: 0;
    letter-spacing: 0px;
}

.portfolio-list {
    padding-block: 80px;
}

.portfolio-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

.portfolio-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 30px;
    border: 1px solid #DDE5DF;
    border-radius: var(--radius);
    background: #FAFAF7;
}

.portfolio-card h2 {
    margin-bottom: 14px;
    font-size: 26px;
}

.portfolio-image {
    aspect-ratio: 2 / 1;
    height: auto;
    object-fit: cover;
    border-radius: var(--radius);
}

.portfolio-card p {
    color: #505050;
    font-size: 16px;
 
}

.portfolio-description {
    margin: 20px 0 16px;
}

.portfolio-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    width: 100%;
    margin-top: auto;
}

.portfolio-facts h3 {
    margin-bottom: 0;
    font-size: 20px;
}

.portfolio-facts small {
    color: #414141;
    font-size: 14px;
}

.portfolio-facts p {
    margin-bottom: 12px;
    line-height: 22px;
}

.portfolio-case-study {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: var(--green-900);
    font-size: 14px;
    font-weight: 700;
}

.portfolio-case-study img {
    width: 14px;
    height: 14px;
}

.project-detail {
    color: #143e32;
}



.project-detail .sub-title {
    display: block;
    margin-bottom: 10px;
    color: #08704f;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .09em;
}

.project-hero {
    padding: 80px 0 40px;
    background: #00563f;
}

.project-hero .hero-header {
    display: flex;
    align-items:end;
    gap: 13px;
    padding-bottom: 16px;
}

.project-hero h1 {
    font-size: 40px;
    line-height: 50px;
    letter-spacing: 0px;
    margin-bottom: 0px;
}
.project-hero h4{font-weight: 400;font-size:18px; line-height:28px; color: rgba(255, 255, 255, 0.75);margin-bottom:0px;}
.project-hero .swiper {
    overflow: hidden;
}

.project-hero .swiper-slide {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
}

.project-hero .swiper-slide img {
    height: 100%;
    object-fit: cover;
}

.project-hero .img-label {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 9px 12px;
    color: #fff;
    background: #00563f;
    font-size: 10px;
    font-weight: 700;
}

.project-hero .swiper-button-next,
.project-hero .swiper-button-prev {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    color: #00563f;
    background: #fff;
}

.project-hero .swiper-button-next:after,
.project-hero .swiper-button-prev:after {
    font-size: 11px;
    font-weight: 600;
}

.project-hero .hero-header {
    justify-content: space-between;
}

.project-hero .section-tools .view-link {
    color: #fff;
}

.hero-slider-actions {
    display: flex;
    align-items: center;
    gap: 10px;
}

.hero-slider-actions a {
    margin-right: 8px;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
}

.hero-slider-actions a span {
    padding-left: 4px;
}

.hero-arrow {
    display: grid;
    place-items: center;
    width: 31px;
    height: 31px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .8);
    border-radius: 50%;
    color: #fff;
    background: transparent;
    font-size: 15px;
    line-height: 1;
    cursor: pointer;
}

.hero-next {
    color: #00563f;
    background: #fff;
}

.project-hero .swiper-slide {
    width: 25%;
}

.project-hero .swiper-slide.gallery-primary {
    width: 50%;
}

.project-hero .swiper-slide:after {
    content: '';
    position: absolute;
    inset: 42% 0 0;
    background: linear-gradient(transparent, rgba(0, 0, 0, .88));
    pointer-events: none;
}

.project-hero .img-label {
    right: 0;
    left: 0;
    z-index: 1;
    padding: 16px;
    background: transparent;
}

.project-hero .img-label h3 {
    color: #fff;
}

.project-hero .img-label p {
    margin: 0;
    color: rgba(255, 255, 255, .85);
}

/*.project-hero .img-label span { display:inline-block; padding:3px 6px; color:#00563f; background:#dff06a; font-size:8px; font-weight:800; }
 .Centred-scale slider behaviour, based on the supplied CodePen reference. */
.hero-gallery-slider {
    overflow: hidden;
}

.project-hero .swiper-slide,
.project-hero .swiper-slide.gallery-primary {
    width: 50%;
    transition: transform .3s ease-in-out, opacity .3s ease-in-out;
}

.project-hero .swiper-slide.swiper-slide-active {
    opacity: 1;
    transform: scale(1);
}

.project-hero .swiper-slide.swiper-slide-prev,
.project-hero .swiper-slide.swiper-slide-next {
    z-index: 1;
}

.project-info-section {
    padding: 40px 0 30px;
}

.project-overview {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
}

.desc-col p {
    margin-bottom: 15px;
    color: #363636;
    line-height: 22px;
}

.stats-col {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px 44px;
}

.stat-box h2 {
    margin: 0 0 4px;
    color: #08704f;
    font-size: 27px;
    line-height: 1;
}

.stat-box h2 small {
    font-size: 14px;
}

.stat-box p {
    margin: 0;
    color: #6d837a;
    font-size:14px;
    font-weight: 700;
    text-transform: uppercase;
}

.project-info-section .project-overview {
    grid-template-columns: minmax(0, .96fr) minmax(430px, 1fr);
    gap: 64px;
    align-items: start;
}
.project-info-section .project-overview.matrikirProject {
    grid-template-columns: 1fr 1fr;
  gap:0px;

}

.project-info-section .desc-col h2{color: #004B36;font-size: 22px;font-weight: 700; margin-bottom:20px;}
.project-info-section .desc-col p {
    margin: 0 0 22px;
    color: #3d3d3d;
  }

.project-info-section .desc-col p:last-child {
    margin-bottom: 0;
}

.project-info-section .stats-col {
    gap: 0;
    border: 0;
}

.project-info-section .stat-box {
    min-height: 81px;
    padding: 17px 20px 13px;
}

.project-info-section .stat-box:nth-child(odd) {
    border-right: 1px solid #dce5df;
}

.project-info-section .stat-box:nth-child(-n + 2) {
    border-bottom: 1px solid #dce5df;
}

.project-info-section .stat-box h2 {
    margin-bottom: 7px;
    color: #00563f;
    font-size: 29px;
    font-weight: 600;
    letter-spacing: -.7px;
}

.project-info-section .stat-box h2 small {
    margin-left: 3px;
    font-size:14px;
    font-weight: 700;
    letter-spacing: 0;
}

.project-info-section .stat-box p {
    color: #303834;
     font-weight:600;
   }

.scope-map-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 55px;
    margin-top: 28px;
    padding-top: 24px;
    border-top: 1px solid #e4ebe6;
}

.scope-map-grid h3 {
    margin-bottom: 11px;
    color: #173e33;
    font-size: 16px;
}

.scope-box ul {
    display: grid;
    gap: 7px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.scope-box li {
    position: relative;
    padding-left: 14px;
    color: #536a60;
    font-size: 11px;
    line-height: 1.4;
}

.scope-box li:before {
    content: '•';
    position: absolute;
    left: 0;
    color: #08704f;
}

.map-wrapper {
    overflow: hidden;
    border-radius: 4px;
}

.highlights-section {
    padding: 58px 0;
    background: #fff;
}

.highlights-section h2 {
    max-width: 870px;
    margin-bottom: 10px;
    color: #173e33;
    font-size: 29px;
    line-height: 1.14;
    letter-spacing: -.5px;
}

.section-desc {  color: #61746c;}

.cards-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-top: 25px;
}

.light-card {
    min-height: 120px;
    padding: 18px;
    background: #dff06a;
    color: #315342;
    font-size: 11px;
    line-height: 1.5;
}

.light-card strong {
    display: block;
    margin-bottom: 9px;
    color: #075e43;
    font-size: 13px;
}

.highlights-location-section {
    padding: 36px 0 75px;
    background: #fff;
}

.highlights-location-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.highlights-card,
.location-card {
    padding: 26px 30px;
    border-radius: 10px;
    background: #f7f8f5;
}

.highlights-location-section h2 {
    margin: 0 0 13px;
    color: #172033;
    font-size:16px;
    font-weight: 700;
    line-height:30px;
}

.highlights-card ul {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0 0 0 20px;
    color: #3e4546;
}

.highlights-card li {
    color: #363636;
    font-size:16px;
    font-weight: 400;
    line-height: 22px;
}

.highlights-card li::marker {
    color: #007052;
    font-size: 16px;
}

.highlights-card strong {
    color: #252d30;
}

.location-map {
    position: relative;
    overflow: hidden;
    border-radius: 9px;
}

.location-map iframe {
    display: block;
    filter: saturate(.75) contrast(.95);
}

.location-map span {
    position: absolute;
    z-index: 1;
    top: 12px;
    left: 12px;
    padding: 8px 12px;
    border-radius: 18px;
    color: #fff;
    background: #00563f;
    font-size: 11px;
    font-weight: 700;
}

.location-facts {
    display: grid;
    list-style: none;
    gap: 10px;
    margin: 16px 0 0;
    padding: 0;
    list-style: none;
    color: #495151;
    font-size: 11px;
    line-height: 1.35;
}

.location-facts li {
    position: relative;
    padding-left: 22px;
}

.location-facts li {
    display: flex;
    gap: 12px;
    padding: 0px;
    color: #363636;
    font-size: 14px;
    font-weight: 400;
    line-height: 18px;
    padding-bottom: 5px;
}

.features-grid-section {
    padding: 40px 0 70px;
    background: #EAF3EE;
}

.features-grid-section h2 {
    margin-bottom: 7px;
    color: #173e33;
    font-size: 28px;
}

.two-col-features {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
    margin-top: 28px;
    align-items: start;
}

.feature-col {
    display: grid;
    gap: 18px;
}

.feature-card {
    padding: 20px;
    border-radius: 12px;
    border: 1px solid #DDE5DF;
    background: #FFF;
}

.feature-card .num {
    display: grid;
    place-items: center;
    width: 22px;
    height: 22px;
    margin-bottom: 10px;
    border-radius: 50%;
    color: #fff;
    background: #08704f;
    font-size: 9px;
    font-weight: 600;
}

.feature-card h3 {
    margin: 0 0 8px;
    color: #0a523d;
    font-size: 15px;
    line-height: 1.2;
}

.feature-card p {
    color: #363636;
}
.highlight-bg {
    margin-top: 14px;
    padding: 13px 14px;
    background: #dff06a;
    color: #285341;
    font-size: 10px;
    line-height: 1.45;
}

.highlight-bg strong {
    display: block;
    margin-bottom: 5px;
}

.highlight-bg ul {
    margin: 0;
    padding-left: 15px;
}

.engineering-challenge {
    padding: 75px 0px 40px;
    background: #FAFAF7;
}
.engineering-challenge h2{ text-transform: inherit;}

/* .engineering-challenge .container  { max-width:1120px; } */
.challenge-label {
    display: inline-block;
    margin-bottom: 10px;
    color: #1B4332;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
}

.engineering-challenge h2 {
    margin: 0 0 14px;
    color: #111827;
    font-size: 32px;
    line-height: 40px;
    font-weight: 600;
}

.engineering-challenge>.container>p {
    margin: 0 0 12px;
    color: #363636;
  }

.engineering-challenge h3 {
    margin: 24px 0 12px;
    color: #111827;
}

.engineering-scales {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 12px;
}

.engineering-scales article {
    grid-column: span 3;
    padding: 28px;
    border-radius: 8px;
    border: 1px solid #DDE5DF;
    background: #DDEB7F;
    margin-bottom: 20px;
}

.engineering-scales article:nth-child(-n+3) {
    grid-column: span 2;
}

.engineering-scales h4 {
    margin: 0 0 11px;
    color: #075e43;
    font-size:20px;
    line-height: 1.15;
}

.engineering-scales p {
    margin: 0;
    color: #363636;
    margin-bottom:16px;
}

.engineering-challenge .challenge-note {
    margin-top: 17px;
    color: #56635e;
}

.engineering-systems h2 {
    margin: 0 0 7px;
    color: #172033;
    font-size: 32px;
    font-weight: 600;
}

.engineering-systems .section-desc {
    color: #363636;
}

.engineering-systems .two-col-features {
    margin-top: 26px;
}

/* Detailed numbered systems: compact two-column editorial card layout. */
.engineering-systems .two-col-features {
    gap: 14px;
    margin-top: 25px;
}

.engineering-systems .feature-col {
    gap: 14px;
}

.engineering-systems .feature-card {
    padding: 18px;
    border: 1px solid #dce5df;
    border-radius: 7px;
    box-shadow: none;
}

.engineering-systems .feature-card .d-flex {
    align-items: center;
    margin-bottom: 10px;
}

.engineering-systems .feature-card .num {
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    margin: 0;
    background: #007052;
    font-size: 9px;
}

.engineering-systems .feature-card h3 {
    margin: 0;
    color: #172033;
    font-size:20px;
    font-weight: 600;
    line-height: 1.2;
}

/* .engineering-systems .feature-card > p { color:#485554; font-size:10px; line-height:1.48; } */
.engineering-systems .highlight-bg {
    margin-bottom:16px;
    padding: 12px;
    border-radius: 4px;
    background: #ddeb7f;
    color: #294738;
   
}

/* Project hero gallery lightbox (triggered by the hero "View all" link) */
.hero-lightbox {
    position: fixed;
    inset: 0;
    z-index: 1300;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px 90px 104px;
    background: rgba(17, 24, 39, .92);
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s ease, visibility .25s ease;
}

.hero-lightbox[hidden] {
    display: none;
}

.hero-lightbox.is-open {
    opacity: 1;
    visibility: visible;
}

body.hero-lightbox-open {
    overflow: hidden;
}

.hero-lightbox__counter {
    position: fixed;
    top: 22px;
    left: 24px;
    z-index: 3;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .5px;
    opacity: .8;
}

.hero-lightbox__stage {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.hero-lightbox__image {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    margin: auto;
    border-radius: 8px;
    object-fit: contain;
}

.hero-lightbox__close,
.hero-lightbox__arrow,
.hero-lightbox__thumb {
    appearance: none;
    border: 0;
    box-shadow: none;
    cursor: pointer;
}

.hero-lightbox__close {
    position: fixed;
    top: 15px;
    right: 15px;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    padding: 0;
    background: transparent;
    color: #fff;
    opacity: .7;
    transition: opacity .2s ease;
}

.hero-lightbox__close:hover,
.hero-lightbox__close:focus-visible {
    opacity: 1;
}

.hero-lightbox__close svg {
    width: 26px;
    height: 26px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
}

.hero-lightbox__arrow {
    position: fixed;
    top: 50%;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 90px;
    height: 110px;
    padding: 0;
    background: transparent;
    color: #fff;
    opacity: .7;
    transform: translateY(-50%);
    transition: opacity .2s ease;
}

.hero-lightbox__arrow:hover,
.hero-lightbox__arrow:focus-visible {
    opacity: 1;
}

.hero-lightbox__arrow--prev {
    left: 0;
}

.hero-lightbox__arrow--next {
    right: 0;
}

.hero-lightbox__arrow svg {
    width: 32px;
    height: 32px;
    fill: none;
    stroke: #fff;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.hero-lightbox__thumbs {
    position: fixed;
    bottom: 16px;
    left: 50%;
    z-index: 4;
    display: flex;
    gap: 8px;
    max-width: calc(100vw - 32px);
    padding: 8px;
    overflow-x: auto;
    border-radius: 999px;
    background: rgba(255, 255, 255, .08);
    transform: translateX(-50%);
    scrollbar-width: none;
}

.hero-lightbox__thumbs::-webkit-scrollbar {
    display: none;
}

.hero-lightbox__thumb {
    flex: 0 0 auto;
    width: 64px;
    height: 48px;
    padding: 0;
    overflow: hidden;
    border: 2px solid transparent;
    border-radius: 7px;
    background: transparent;
    opacity: .65;
    transition: border-color .25s ease, opacity .25s ease, transform .25s ease;
}

.hero-lightbox__thumb:hover,
.hero-lightbox__thumb:focus-visible,
.hero-lightbox__thumb.is-active {
    border-color: var(--lime);
    opacity: 1;
    transform: translateY(-2px);
}

.hero-lightbox__thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 640px) {
    .hero-lightbox {
        padding: 54px 24px 88px;
    }

    .hero-lightbox__arrow {
        width: 54px;
        height: 88px;
    }

    .hero-lightbox__arrow svg {
        width: 22px;
        height: 22px;
    }

    .hero-lightbox__thumb {
        width: 52px;
        height: 40px;
    }
}

.engineering-systems .highlight-bg strong {
    font-size:16px; line-height:22px; font-weight:600;
}

.engineering-systems .highlight-bg ul {
    padding-left: 14px;
}

.engineering-systems .highlight-bg li {
    color: #363636;
    font-weight: 600;
    padding-bottom: 5px;
}
.feature-card ol li {color: #363636;}

.engineering-systems .highlight-bg p {
    margin-bottom:10px;
}

.engineering-systems .highlight-bg .process-flow {
    font-weight: 600;
}

.work-scope-tags {
    padding: 55px 0 38px;
    background: #00563f;
}

.outcome-section .sub-title {
    color: #dff06a;
}

.outcome-section h2 {
    margin-bottom: 8px;
    color: #fff;
    font-size: 28px;
}

.outcome-section>.container>p {
    color: #c8ddd4;
   }

.tags-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 9px;
    margin-top: 25px;
}

.tags-grid span {
    padding: 12px;
    color: #fff;
    background: rgba(255, 255, 255, .09);
    font-size: 11px;
    font-weight: 700;
}

.bottom-info-box {
    padding: 0 0 55px;
    background: #00563f;
}

.light-card-wide {
    padding: 23px;
    background: #dff06a;
}

.light-card-wide h3 {
    margin-bottom: 7px;
    color: #1f4a3b;
    font-size: 16px;
}

.light-card-wide p {
    max-width: 850px;
    margin: 0;
    color: #254c3e;
}

.outcome-section {
    padding: 80px 0px;
}

.outcome-section h2 {
    margin-bottom: 16px;
    font-size: 32px;
    font-weight: 600;
}

.outcome-section>.container>p {
    color: rgba(255, 255, 255, .85);
}

.outcome-section .tags-grid {
    margin: 18px 0 15px;
}

.outcome-section .tags-grid li {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px;
    border-radius: 10px;
    background: rgba(221, 235, 127, 0.10);
    font-size: 14px;
}

.outcome-section .tags-grid li img {
    max-width: 40px;
}

.outcome-section .tags-grid h3 {
    margin-bottom: 0px;
    color: #fff;
    font-size:18px;
}

.outcome-section .outcome-copy {
    max-width: 100% !important;
    margin-top: 8px;
}

.bottom-info-box {
    padding: 15px 0 0px;
}

.bottom-info-box .light-card-wide {
    padding:30px;
    border-radius: 6px;
    background: #dff06a;
}

.legacy-label {
    display: block;
    margin-bottom: 20px;
    color: #004B36;
   font-size: 32px;
 font-weight: 800;
}

.bottom-info-box .light-card-wide h3 {
    margin-bottom: 12px;
    font-size: 17px;
}

.bottom-info-box .light-card-wide p {
    max-width: none;
    color:#363636;
    margin-bottom: 12px;
  }

.bottom-info-box .light-card-wide ul {
    padding-left: 16px;
}

.bottom-info-box .light-card-wide ul li {
    margin-bottom: 10px;
 color:#363636;
  }

.legacy-stats {
    display: block;
    color: #111827;
   
}

.buildingWithin .living-city-block,
.buildingWithin .tech-innovations-block {
    padding: 60px 0;
    background: #F7F9F5;
}

.buildingWithin .testing-commissioning-block {
    padding: 60px 0;
    background: #FFF;
}

.buildingWithin h2 {
    margin: 0 0 18px;
    color: #172033;
    font-size:32px;
    font-weight: 600;
}

.buildingWithin p {
    /* max-width: 900px; */
    margin: 0 0 12px;
    color: #363636;
  
}

.buildingWithin .highlight-callout {
    /* max-width: 900px; */
    margin: 4px 0 16px;
    padding: 16px 18px;
    border-radius: 6px;
    background: #dff06a;
}

.buildingWithin .highlight-callout p {
    margin: 0;
    color: #285341;
}

.buildingWithin .highlight-callout p:first-child {
    margin-bottom: 6px;
}

.buildingWithin .highlight-callout strong {
    color: #173e33;
}

.innovation-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin-top: 24px;
}

.innovation-grid article {
    padding:26px;
    border-radius: 8px;
    background: #DDEB7F;
}

.innovation-grid h4 {
    margin: 0 0 8px;
    color: #004B36;
  
}

.innovation-grid p {
    margin: 0;
    max-width: none;
    color: #363636;
 
}

.engineeriMass {
    padding: 60px 0;
    background: #FFF;
}

.engineeriMass h2 {
    margin: 0 0 12px;
    color: #172033;
    font-size:32px;
    font-weight: 600;
}

.engineeriMass > .container > p {
    max-width: 900px;
    margin: 0 0 12px;
    color: #363636;

}

.engineeriMass .lead-bold {
    max-width: none;
    color: #172033;
    font-weight: 700;
}

.process-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 14px;
    margin: 24px 0 28px;
}

.process-grid article {
    position: relative;
    padding: 16px;
    border-radius: 8px;
    background: #DDEB7F;
}

.process-grid article:not(:nth-child(5n))::after {
    content: '';
    position: absolute;
    top: 34px;
    right: -14px;
    width: 14px;
    height: 1px;
    background: #b9c98a;
}

.process-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
}

.process-icon {
    width: 36px;
    height: 36px;
}

.process-num {
  display: flex;
padding: 4px 8px;
align-items: flex-start;
border-radius: 999px;
background: #EEF0F3;
    color: #111;
    font-size: 14px;
    font-weight: 700;
}

 

.customisation-list {
    columns: 2;
    column-gap: 32px;
    max-width: 900px;
    margin: 8px 0 16px;
    padding-left: 20px;
}

.customisation-list li {
    break-inside: avoid;
    margin-bottom: 8px;
    color: #363636;
    
}

.more-projects {
    padding: 55px 0 75px;
}

.more-projects .section-head h2 {
    margin-bottom: 22px;
    color: #173e33;
    font-size: 28px;
}

.projects-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.p-card {
    overflow: hidden;
    border: 1px solid #e3ebe5;
}

.p-card img {
    object-fit: cover;
}

.p-info {
    padding: 14px;
}

.p-cat {
    color: #08704f;
    font-size: 9px;
    font-weight: 600;
    text-transform: uppercase;
}

.p-info h3 {
    margin: 4px 0 3px;
    color: #173e33;
    font-size: 16px;
}

.p-info p {
    margin: 0;
    color: #74847e;
    font-size: 11px;
}

.more-projects .section-head {
    margin-bottom: 0px;
}

/* ===== projects-page CSS end ===== */




.locamap {
    width: 100%;
    height: 70px;
}

about-content.subContent {
    padding: 15px;
}

.about-content.subContent .about-card {
    padding: 0px;
}

.about-content.subContent .leadership-head {
    padding-left: 30px;
    padding-top: 30px;
    margin-bottom: 0px;
}

.about-content.subContent .back-link {
    color: #004B36;
    font-size: 14px;
    font-weight: 600;
    line-height: normal;
}

.about-content.subContent .contBox {
    padding-left: 30px;
}

.about-content .meetExpert {
    padding: 30px;
}

.about-content .meetExpert h2 {
    margin-bottom: 5px;
}

.about-content .meetExpert h3 {
    color: #363636;
    font-weight: 400;
}

.about-content .meetExpert .leader-heading {
    margin-bottom: 20px;
}

.expertise-card {
    padding:18px;
}

#projects .swiper-slide a{
    position: relative; display: block; width:100%;
}

#projects .swiper-slide a:hover::after{
    content: "";
    position: absolute;
    top:25px;
    right:25px;
    width:30px;
    height:30px;
    background-image: url('../images/Icon-hover.svg');
    background-repeat: no-repeat;
    background-position: right top;

}
.swiper-backface-hidden .swiper-slide:hover h3{    color: var(--green-900) }
/* Terms & Conditions page start */
.swiper-backface-hidden .swiper-slide img{    object-fit: cover;
    transition: transform .45s ease;}
/* .swiper-backface-hidden .swiper-slide:hover img{
    transform: scale(1.04);} */
.terms-hero {
    padding: 152px 0 56px;
    background: var(--green-900);
    color: #fff;
}

.terms-hero h1 {
    margin-bottom: 0;
}

.terms-section {
    padding: 80px 0 72px;
    background: #F7F9F5;
}

.terms-layout {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

.terms-sidebar {
    position: sticky;
    top: 96px;
    width: 260px;
    flex-shrink: 0;
}

.terms-nav {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.terms-nav-link {
    display: block;
    padding: 14px 18px;
    border-radius: 8px;
    color: var(--ink);
    font-size: 14px;
    font-weight: 600;
}

.terms-nav-link:hover {
    color: var(--green-900);
}

.terms-nav-link.active {
    background: #EAF3EE;
    color: var(--green-900);
}

.terms-content {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.terms-block {
    padding: 28px 30px;
    background: #fff;
    border: 1px solid #DDE5DF;
    border-radius: var(--radius);
    scroll-margin-top: 100px;
}

.terms-block h2 {
    margin-bottom: 5px;
    font-size: 26px;
    line-height: 40px;
    color: var(--ink);
}

.terms-block p {
    margin-bottom: 14px;
    color: var(--muted);
    font-size: 14px;
    line-height: 23px;
}

.terms-block p:last-child {
    margin-bottom: 0;
}

.terms-block ol {
    margin: 0 0 14px;
    padding-left: 20px;
    color: var(--muted);
    font-size: 14px;
    line-height: 24px;
}

.terms-block ol li {
    margin-bottom: 6px;
}

.terms-block ol li:last-child {
    margin-bottom: 0;
}

.terms-final-note {
    margin: 0;
    padding: 0 4px;
    color: var(--muted);
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
}

.terms-final-note strong {
    color: var(--ink);
    font-size: 18px;
    font-weight: 700;
}

/* Terms & Conditions page end */

/* pravacy-policy page start */

.privacy-hero {
    padding: 152px 0 56px;
    background: var(--green-900);
    color: #fff;
}

.privacy-hero h1 {
    margin-bottom: 0;
}

.privacy-intro {
    padding: 40px 0 0;
    background: #fff;
}

.privacy-intro p {
    margin-bottom: 20px;
    color: var(--muted);
    font-size: 16px;
    line-height: 26px;
}

.privacy-intro h3 {
    margin-bottom: 10px;
    color: var(--muted);
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
    margin-top: 30px;
}

.privacy-intro ul {
    margin: 0;
    padding-left: 20px;
    color: var(--muted);
    font-size: 15px;
    line-height: 24px;
}

.privacy-intro ul li {
    margin-bottom: 8px;
}

.privacy-intro ul li:last-child {
    margin-bottom: 0;
}

.privacy-section {
    padding: 40px 0 72px;
    background: #fff;
}

.privacy-layout {
    display: flex;
    align-items: flex-start;
    gap: 20px;
}

.privacy-sidebar {
    position: sticky;
    top: 96px;
    width: 260px;
    flex-shrink: 0;
}

.privacy-nav {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.privacy-nav-link {
    display: block;
    padding: 14px 18px;
    border-radius: 8px;
    color: var(--ink);
    font-size: 14px;
    font-weight: 600;
}

.privacy-nav-link:hover {
    color: var(--green-900);
}

.privacy-nav-link.active {
    background: #EAF3EE;
    color: var(--green-900);
}

.privacy-content {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.privacy-block {
    padding: 28px 30px;

    border: 1px solid #DDE5DF;
    border-radius: var(--radius);
    scroll-margin-top: 100px;
}

.privacy-block h2 {
    margin-bottom: 10px;
    font-size: 26px;
    line-height: 40px;
    color: var(--ink);
}

.privacy-block p {
    margin-bottom: 14px;
    color: var(--muted);
    font-size: 14px;
    line-height: 23px;
}

.privacy-block p:last-child {
    margin-bottom: 0;
}

.privacy-block a {
    color: var(--green-900);
    text-decoration: underline;
}

.privacy-block ul,
.privacy-block ol {
    margin: 0 0 14px;
    padding-left: 20px;
    color: var(--muted);
    font-size: 14px;
    line-height: 24px;
}

.privacy-block ul li,
.privacy-block ol li {
    margin-bottom: 10px;
color: #363636;
}

.privacy-block ul li:last-child,
.privacy-block ol li:last-child {
    margin-bottom: 0;
}

.privacy-block ol[type="a"] {
    margin-top: 10px;
    margin-bottom: 0;
}

.privacy-block ol[type="a"] li {
    margin-bottom: 6px;
}

.privacy-final-note {
    margin: 0;
    padding: 0 4px;
    color: var(--muted);
    font-size: 14px;
    line-height: 22px;
    font-weight: 400;
}

.privacy-final-note strong {
    color: var(--ink);
    font-size: 18px;
    line-height: 22px;
    font-weight: 700;
}

/* pravacy-policy page end */
.termcondtion .navbar-collapse {
    display: none !important;
}

.termcondtion .footer-grid {
    display: none;
}

.termcondtion .site-footer {
    min-height: auto;
    padding: 0px;
}

.termcondtion .copyright {
    padding-bottom: 24px;

}

.svc-block-copy ul {
    padding-left: 20px;
}

.svc-block-copy ul li {
    color: #363636;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 26px;
    padding-bottom: 10px;

}

.imgriht {
    float: right;
    margin-left: 20px;
    margin-top: -30px;
    margin-bottom: 10px;
}

img.imgriht {
    width: auto;
}

#greenfield-development .svc-group {
    background-color: #ffffff;
}

.termcondtion .terms-section {
    background-color: #ffffff;
}

.cluman {
    display: flex;
}

.cluman ul,
.cluman ol {
    width: 48%;
}

.engineering-systems .highlight-bg ul.liststye li {
    list-style: number;
}


.matrikirnach .engineering-scales article {
    margin-bottom: 0px
}

.matrikirnach.engineering-challenge .challenge-note {
    margin-top: 20px;

}


.matrikirnoucm.outcome-section>.container>p {
    max-width: 100%;
}



/* MatriKiran school page: "The VES Engineering Approach" cards section */
.ves-approach-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-top: 16px;
}

.ves-approach-grid article {
    padding: 20px;
    border-radius: 8px;
    border: 1px solid #E5E7E4;
    background: #F5F5F3;
}

.ves-approach-grid h4 {
    margin: 0 0 6px;
    color:var(--green-900);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3;
}

.ves-approach-grid p {
    margin: 0;
    color: #363636;
  }

/* MatriKiran school page: "The Outcome" section — 11 items, 3-column layout */
.matrikirnoucm .tags-grid {
    grid-template-columns: repeat(3, 1fr);
    
}
.terms-block#legal-notice-disclaimer,
.terms-block#products-services-conditions,
.terms-block#trade-marks-copyrights,
.terms-block#limitation-of-liability,
.terms-block#no-warranties-disclaimer {
    background: #FAFAF7;
}


.privacy-block#information-collection-use,
.privacy-block#changes-to-policy {
    background: #FAFAF7;
}
.info-grid.matrikirProject .stats-col{float:right; width:100%; max-width:50%; padding-left:20px;}



/* Vatika One On One page: "Engineering At Scale" stats section */
.engineering-at-scale {
    padding: 55px 0;
}

.engineering-at-scale h2 {
    margin: 0 0 24px;
    color: #111827;
    font-size: 32px;
    font-weight: 600;
}

.scale-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}
.scale-stats-grid.statsGrid{  grid-template-columns: repeat(4, 1fr);}
.scale-stats-grid article {
    padding: 20px;
    border-radius: 8px;
    border: 1px solid #E5E7E4;
    background: #F5F5F3;
}

.scale-stats-grid h4 {
    margin: 0 0 8px;
    color:var(--green-900);
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3;
}

.scale-stats-grid p {
    margin: 0;
    color: #363636;
   }
.locamaap { display: flex; gap: 15px;}

.expertise .arrow.next,.expertise .arrow{background-color:transparent;}
.expertise .arrow.next .right{display:block;}
.expertise .arrow.next .left{ display:none;}
.expertise .arrow img{width:18px;}
.expertise .arrow.next:hover, .expertise .arrow:hover{background-color:#fff;}
.expertise .arrow.next:hover .right{display:none;}
.expertise .arrow.next:hover .left { display:block;}

.expertise .arrow.prev .right{display:block;}
.expertise .arrow.prev .left{ display:none;}
.expertise .arrow.prev:hover .right{display:none;}
.expertise .arrow.prev:hover .left { display:block;}
.expertise .arrow.swiper-button-disabled{opacity:0.6;}


@media (max-width: 991.98px) {
    .scale-stats-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    .scale-stats-grid.statsGrid{  grid-template-columns: repeat(3, 1fr);}
}

@media (max-width: 680px) {
    .engineering-at-scale {
        padding: 30px 0;
    }

    .engineering-at-scale h2 {
        font-size: 20px;
        margin-bottom: 16px;
    }

    .scale-stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }
.scale-stats-grid.statsGrid{      grid-template-columns: repeat(2, 1fr);}
    .scale-stats-grid article {
        padding: 16px;
    }
}

/* Vatika One On One page: "The Outcome" section redesign */
.outcome-v2 .tags-grid {
    grid-template-columns: repeat(3, 1fr);
}

.outcome-integration-box {
    margin: 20px 0;
    padding: 32px;
    border-radius: 16px;
    background: rgba(0, 0, 0, .15);
}

.outcome-integration-box>p:first-child {
    margin-bottom: 0;
}

.outcome-v2 .outcome-integration-box .tags-grid {
    margin-bottom: 15px;
}

.outcome-v2 .legacy-label {
    display: block;
    margin-bottom: 16px;
    color: #1f4a3b;
    font-size: 28px;
    font-weight: 600;
}
.gallerySlider{position: absolute; z-index: 2; top: 45%; left: 0px; right: 0px;}

@media (max-width: 991.98px) {
    .outcome-v2 .tags-grid,.matrikirnoucm .tags-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 680px) {
    .outcome-integration-box {
        padding: 20px;
        border-radius: 10px;
    }

      .outcome-v2 .legacy-label {
        font-size: 20px;
    }
}

.error-page {
    min-height: 68vh;
    display: flex;
    align-items: center;
    padding: 140px 0 80px;
    color: #fff;
    background:
        linear-gradient(90deg, rgba(0, 52, 38, .92), rgba(0, 75, 54, .68)),
        url("../images/hero-bg.webp") center/cover no-repeat;
}

.error-copy {
    max-width: 680px;
}

.error-code {
    display: inline-block;
    margin-bottom: 18px;
    color: #B7E2C7;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .08em;
}

.error-copy h1 {
    margin-bottom: 18px;
    color: #fff;
    font-size: 64px;
    font-weight: 800;
    line-height: 1.05;
}

.error-copy p {
    max-width: 540px;
    margin-bottom: 28px;
    color: rgba(255, 255, 255, .88);
    font-size: 18px;
    line-height: 1.7;
}

@media (max-width: 680px) {
    .error-page {
        min-height: 62vh;
        padding: 110px 0 54px;
    }

    .error-copy h1 {
        font-size: 38px;
    }

    .error-copy p {
        font-size: 15px;
    }
}
