/* hero */
.dismantling-hero {

    position: relative;

    min-height: 760px;

    display: flex;
    align-items: center;

    overflow: hidden;

    background-image:
        url("/assets/images/Office Dismentaling.webp");

    background-size: cover;
    background-position: center;

}


.dismantling-hero::before {

    content: "";

    position: absolute;

    inset: 0;

    z-index: 1;

    background:
        linear-gradient(90deg,

            rgba(255, 255, 255, .68) 0%,

            rgba(255, 255, 255, .58) 20%,

            rgba(255, 255, 255, .40) 40%,

            rgba(255, 255, 255, .20) 58%,

            rgba(255, 255, 255, .05) 78%,

            rgba(255, 255, 255, 0) 100%);

}


.dismantling-hero::after {

    content: "";

    position: absolute;

    inset: 0;

    z-index: 1;

    pointer-events: none;

    opacity: .16;

    background-image:

        linear-gradient(rgba(31, 41, 55, .12) 1px,
            transparent 1px),

        linear-gradient(90deg,
            rgba(31, 41, 55, .12) 1px,
            transparent 1px);

    background-size: 70px 70px;

    mask-image:
        linear-gradient(90deg,
            black 0%,
            transparent 60%);
}


.hero-container {

    position: relative;

    z-index: 3;

    width: min(calc(100% - 80px),
            var(--container));

    margin: auto;
}


.hero-content {

    width: 720px;

    max-width: 100%;

    padding: 105px 0 170px;

    animation:
        heroFade .8s ease forwards;
}

@keyframes heroFade {

    from {
        opacity: 0;
        transform: translateY(25px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }

}


.hero-eyebrow {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    padding: 9px 16px;

    margin-bottom: 25px;

    border: 1px solid rgba(245, 158, 11, .55);

    border-radius: 50px;

    background:
        rgba(255, 255, 255, .65);

    color: var(--accent-hover);

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 1.5px;

    text-transform: uppercase;

    box-shadow:
        0 3px 12px rgba(0, 0, 0, .04);
}


.hero-eyebrow::before {

    content: "";

    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: var(--accent);

    box-shadow:
        0 0 0 5px rgba(245, 158, 11, .12);
}


.hero-content h1 {

    color: var(--primary);

    font-size:
        clamp(48px,
            5.8vw,
            78px);

    line-height: .98;

    letter-spacing: -3.5px;

    font-weight: 850;

    margin-bottom: 30px;
}


.hero-content h1 .orange {

    color: var(--accent);

    position: relative;

    display: inline-block;
}


.hero-description {

    max-width: 680px;

    color: #4B5563;

    font-size: 17px;

    line-height: 1.75;

    font-weight: 500;

    margin-bottom: 35px;
}


.hero-buttons {

    display: flex;

    align-items: center;

    gap: 14px;

    flex-wrap: wrap;
}


.hero-btn {

    min-height: 55px;

    padding: 0 24px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    border-radius: var(--radius);

    text-decoration: none;

    font-size: 14px;

    font-weight: 750;

    transition:
        all var(--transition);
}


/* Primary */

.hero-btn-primary {

    background: var(--accent);

    color: var(--black);

    box-shadow:
        0 8px 20px rgba(245, 158, 11, .18);
}


.hero-btn-primary:hover {

    background: var(--accent-hover);

    color: #fff;

    transform: translateY(-3px);

    box-shadow:
        0 12px 25px rgba(245, 158, 11, .25);
}


/* Secondary */

.hero-btn-secondary {

    color: var(--primary);

    border:
        1px solid rgba(31, 41, 55, .30);

    background:
        rgba(255, 255, 255, .58);

    backdrop-filter: blur(5px);
}


.hero-btn-secondary:hover {

    color: var(--accent-hover);

    border-color: var(--accent);

    transform: translateY(-3px);

    background: #fff;
}


.btn-arrow {

    font-size: 18px;

    transition:
        transform var(--transition);
}


.hero-btn:hover .btn-arrow {

    transform: translateX(5px);
}

.hero-floating-card {

    position: absolute;

    z-index: 4;

    right: 6%;

    top: 50%;

    transform: translateY(-50%);

    width: 305px;

    padding: 24px;

    border:
        1px solid rgba(31, 41, 55, .10);

    border-radius: var(--radius-lg);

    background:
        rgba(255, 255, 255, .92);

    backdrop-filter: blur(12px);

    box-shadow:
        0 15px 35px rgba(31, 41, 55, .12);

    animation:
        floatingCard 4s ease-in-out infinite;
}


@keyframes floatingCard {

    0%,
    100% {
        transform: translateY(-50%);
    }

    50% {
        transform:
            translateY(calc(-50% - 8px));
    }

}


.card-top {

    display: flex;

    align-items: center;

    gap: 13px;

    margin-bottom: 19px;
}


.card-icon {

    width: 43px;
    height: 43px;

    flex: none;

    display: grid;

    place-items: center;

    border-radius: 10px;

    background:
        rgba(245, 158, 11, .15);

    color: var(--accent-hover);

    font-size: 19px;
}


.card-title {

    color: var(--primary);

    font-size: 13px;

    font-weight: 800;

    margin-bottom: 4px;
}


.card-subtitle {

    color: #6B7280;

    font-size: 11px;

    font-weight: 500;
}


.card-line {

    width: 100%;

    height: 1px;

    background:
        var(--border);

    margin-bottom: 17px;
}


.card-list {

    display: grid;

    gap: 13px;
}


.card-list-item {

    display: flex;

    align-items: center;

    gap: 10px;

    color: #4B5563;

    font-size: 12px;

    font-weight: 600;
}


.check {

    width: 18px;
    height: 18px;

    flex: none;

    display: grid;

    place-items: center;

    border-radius: 50%;

    background:
        rgba(245, 158, 11, .15);

    color: var(--accent-hover);

    font-size: 10px;

    font-weight: 900;
}


.hero-scroll {

    position: absolute;

    z-index: 4;

    right: 25px;

    top: 50%;

    transform:
        translateY(-50%);

    display: flex;

    align-items: center;

    gap: 10px;

    color: #fff;

    font-size: 9px;

    letter-spacing: 2px;

    writing-mode: vertical-rl;

    text-transform: uppercase;
}


.scroll-line {

    width: 1px;

    height: 65px;

    background:
        linear-gradient(to bottom,
            var(--accent),
            transparent);
}

@media(prefers-reduced-motion:reduce) {

    *,
    *::before,
    *::after {

        animation: none !important;

        transition: none !important;
    }

}

/* Services */

.premium-services {

    position: relative;

    padding: 65px 0 65px;

    background: #F8FAFC;

    overflow: hidden;

    color: #1F2937;

}


/* very subtle architectural grid */

.premium-services::before {

    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    opacity: .25;

    background-image:

        linear-gradient(rgba(31, 41, 55, .035) 1px,
            transparent 1px),

        linear-gradient(90deg,
            rgba(31, 41, 55, .035) 1px,
            transparent 1px);

    background-size:
        100px 100px;

}



.ps-header {

    display: flex;

    justify-content: space-between;

    align-items: flex-end;

    gap: 80px;

    margin-bottom: 60px;

}


.ps-header-left {

    max-width: 800px;

}


.ps-eyebrow {

    display: flex;

    align-items: center;

    gap: 11px;

    margin-bottom: 20px;

    color: #B45309;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;

}


.ps-eyebrow span {

    width: 7px;

    height: 7px;

    background: #F59E0B;

    border-radius: 50%;

    box-shadow:
        0 0 0 5px rgba(245, 158, 11, .10);

}


.ps-header h2 {

    margin: 0;

    font-size:
        clamp(48px, 5.5vw, 78px);

    line-height: .94;

    letter-spacing: -4px;

    font-weight: 850;

    color: #F59E0B;

}


.ps-header h2 em {

    display: block;

    font-style: normal;

    color: #8A929E;

    font-weight: 600;

}


.ps-header-right {

    width: 410px;

    padding-bottom: 5px;

}


.ps-header-right p {

    margin: 0 0 24px;

    color: #687385;

    font-size: 15px;

    line-height: 1.8;

}


.ps-header-link {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    color: #1F2937;

    font-size: 12px;

    font-weight: 850;

    letter-spacing: 1px;

    text-decoration: none;

}


.ps-header-link span {

    color: #F59E0B;

    font-size: 17px;

    transition: .35s ease;

}


.ps-header-link:hover span {

    transform:
        translate(4px, -3px);

}

.ps-services {

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    gap: 18px;

}

.ps-service {

    position: relative;

    display: block;

    height: 510px;

    overflow: hidden;

    border-radius: 5px;

    background: #1F2937;

    text-decoration: none;

    box-shadow:
        0 8px 25px rgba(31, 41, 55, .07);

    transition:
        transform .5s cubic-bezier(.2, .7, .2, 1),
        box-shadow .5s ease;

}


/* FEATURED CARD */

.ps-service-large {

    grid-column:
        span 2;

}


.ps-service:hover {

    transform:
        translateY(-7px);

    box-shadow:
        0 25px 55px rgba(31, 41, 55, .16);

}

.ps-image {

    position: absolute;

    inset: 0;

    overflow: hidden;

}


.ps-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform 1s cubic-bezier(.2, .7, .2, 1);

}


.ps-service:hover .ps-image img {

    transform:
        scale(1.07);

}


.ps-image-shade {

    position: absolute;

    inset: 0;

    background:

        linear-gradient(to bottom,
            rgba(15, 23, 42, .08) 0%,
            rgba(15, 23, 42, .08) 32%,
            rgba(15, 23, 42, .38) 55%,
            rgba(15, 23, 42, .94) 100%);

    transition:
        background .5s ease;

}


.ps-service:hover .ps-image-shade {

    background:

        linear-gradient(to bottom,
            rgba(15, 23, 42, .10) 0%,
            rgba(15, 23, 42, .14) 30%,
            rgba(15, 23, 42, .42) 52%,
            rgba(15, 23, 42, .97) 100%);

}


.ps-service-top {

    position: absolute;

    top: 22px;

    left: 22px;

    right: 22px;

    display: flex;

    justify-content: space-between;

    align-items: center;

    z-index: 3;

}


.ps-service-number {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 42px;

    height: 42px;

    border-radius: 50%;

    color: #fff;

    background:
        rgba(31, 41, 55, .62);

    border:
        1px solid rgba(255, 255, 255, .24);

    backdrop-filter:
        blur(10px);

    font-size: 10px;

    font-weight: 800;

}


.ps-service-type {

    padding: 8px 11px;

    border:
        1px solid rgba(255, 255, 255, .28);

    border-radius: 3px;

    color: #fff;

    background:
        rgba(31, 41, 55, .38);

    backdrop-filter:
        blur(8px);

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 1.4px;

}


.ps-service-content {

    position: absolute;

    z-index: 3;

    left: 28px;

    right: 28px;

    bottom: 28px;

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 20px;

}


.ps-service-content h3 {

    margin: 0 0 12px;

    max-width: 480px;

    color: #fff;

    font-size:
        clamp(25px, 2.2vw, 34px);

    line-height: 1.02;

    letter-spacing: -1.3px;

    font-weight: 800;

}


.ps-service:not(.ps-service-large) .ps-service-content h3 {

    font-size: 26px;

}


.ps-service-content p {

    max-width: 520px;

    margin: 0;

    color:
        rgba(255, 255, 255, .72);

    font-size: 12px;

    line-height: 1.7;

}


.ps-arrow {
    flex: none;

    width: 50px;
    height: 50px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 0;
    margin: 0;

    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 50%;

    color: #fff;
    background: rgba(255, 255, 255, .06);

    backdrop-filter: blur(8px);

    font-size: 30px;
    line-height: 1;

    text-align: center;

    transition: .4s ease;
}


.ps-service:hover .ps-arrow {

    color: #111827;

    background: #F59E0B;

    border-color: #F59E0B;

    transform:
        rotate(45deg);

}


.ps-bottom {

    display: flex;

    justify-content: space-between;

    align-items: center;

    min-height: 88px;

    margin-top: 35px;

    padding: 0 25px;

    border-top:
        1px solid #DDE2E8;

    border-bottom:
        1px solid #DDE2E8;

}


.ps-bottom-left {

    display: flex;

    align-items: center;

    gap: 14px;

    color: #4B5563;

    font-size: 13px;

    font-weight: 700;

}


.ps-bottom-line {

    width: 32px;

    height: 2px;

    background: #F59E0B;

}


.ps-bottom-button {

    display: flex;

    align-items: center;

    gap: 16px;

    color: #1F2937;

    font-size: 12px;

    font-weight: 850;

    letter-spacing: 1px;

    text-decoration: none;

}


.ps-bottom-button span {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 38px;

    height: 38px;

    border-radius: 50%;

    color: #1F2937;

    background: #F59E0B;

    font-size: 18px;

    transition: .35s ease;

}


.ps-bottom-button:hover span {

    transform:
        translateX(5px);

}

/* About */

.about-premium {

    position: relative;

    padding: 65px 0 65px;

    background: #1F2937;

    color: #fff;

    overflow: hidden;

}


/* subtle grid */

.about-premium::before {

    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    opacity: .07;

    background-image:

        linear-gradient(rgba(255, 255, 255, .35) 1px,
            transparent 1px),

        linear-gradient(90deg,
            rgba(255, 255, 255, .35) 1px,
            transparent 1px);

    background-size: 100px 100px;

}


.about-premium-top {

    display: flex;

    align-items: center;

    gap: 25px;

    margin-bottom: 55px;

}


.about-premium-label {

    display: flex;

    align-items: center;

    gap: 10px;

    color: #F59E0B;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 2px;

    white-space: nowrap;

}


.about-premium-label span {

    width: 7px;

    height: 7px;

    border-radius: 50%;

    background: #F59E0B;

}


.about-premium-line {

    flex: 1;

    height: 1px;

    background:
        rgba(255, 255, 255, .12);

}


.about-premium-index {

    color:
        rgba(255, 255, 255, .38);

    font-size: 10px;

    letter-spacing: 1px;

}


.about-premium-main {

    display: grid;

    grid-template-columns:
        .95fr 1.05fr;

    gap: 90px;

    align-items: center;

}

.about-premium-visual {

    position: relative;

    height: 620px;

    overflow: visible;

}


.about-premium-visual img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    border-radius: 4px;

}


.about-premium-image-overlay {

    position: absolute;

    inset: 0;

    border-radius: 4px;

    background:
        linear-gradient(180deg,
            rgba(15, 23, 42, .02),
            rgba(15, 23, 42, .48));

}


.about-image-corner {

    position: absolute;

    left: 25px;

    bottom: 25px;

    display: flex;

    align-items: center;

    gap: 11px;

    color: #fff;

    font-size: 9px;

    font-weight: 800;

    letter-spacing: 1.5px;

}


.about-image-corner span {

    width: 25px;

    height: 2px;

    background: #F59E0B;

}

.about-experience {

    position: absolute;

    right: -45px;

    bottom: 55px;

    display: flex;

    align-items: center;

    gap: 18px;

    padding: 24px 27px;

    min-width: 210px;

    background: #F59E0B;

    color: #111827;

    box-shadow:
        0 20px 50px rgba(0, 0, 0, .25);

}


.about-experience strong {

    font-size: 48px;

    line-height: 1;

    letter-spacing: -3px;

    font-weight: 850;

}


.about-experience strong span {

    color: #fff;

}


.about-experience div {

    padding-left: 16px;

    border-left:
        1px solid rgba(17, 24, 39, .25);

}


.about-experience b {

    display: block;

    font-size: 10px;

    letter-spacing: 1px;

}


.about-experience small {

    display: block;

    margin-top: 4px;

    font-size: 8px;

    letter-spacing: .8px;

}


.about-premium-content {

    max-width: 650px;

}


.about-small-heading {

    margin-bottom: 17px;

    color: #F59E0B;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 2px;

}


.about-premium-content h2 {

    margin: 0 0 28px;

    font-size:
        clamp(50px, 5.5vw, 78px);

    line-height: .91;

    letter-spacing: -4px;

    font-weight: 850;

}


.about-premium-content h2 span {

    color: #8D96A4;

}


.about-big-text {

    max-width: 580px;

    margin: 0 0 17px;

    color: #F3F4F6;

    font-size: 17px;

    line-height: 1.65;

    font-weight: 500;

}


.about-description {

    max-width: 570px;

    margin: 0 0 35px;

    color: #9CA6B5;

    font-size: 13px;

    line-height: 1.85;

}


.about-features {

    border-top:
        1px solid rgba(255, 255, 255, .12);

}


.about-feature {

    display: grid;

    grid-template-columns: 45px 1fr;

    gap: 15px;

    padding: 16px 0;

    border-bottom:
        1px solid rgba(255, 255, 255, .12);

}


.feature-number {

    color: #F59E0B;

    font-size: 18px;

    font-weight: 800;

    padding-top: 3px;

}


.about-feature strong {

    display: block;

    margin-bottom: 5px;

    color: #fff;

    font-size: 18px;

    font-weight: 800;

}


.about-feature p {

    margin: 0;

    color: #8D96A4;

    font-size: 15px;

    line-height: 1.6;

}


.about-premium-bottom {

    display: flex;

    justify-content: space-between;

    align-items: center;

    margin-top: 32px;

}


.about-premium-button {

    display: inline-flex;

    align-items: center;

    gap: 20px;

    min-height: 55px;

    padding: 0 12px 0 10px;

    color: #111827;

    background: #F59E0B;

    text-decoration: none;

    font-size: 12px;

    font-weight: 850;

    letter-spacing: 1px;

    transition: .35s ease;

}


.about-premium-button b {

    display: grid;

    place-items: center;

    width: 35px;

    height: 35px;

    background: #1F2937;

    color: #fff;

    font-size: 18px;

    transition: .35s ease;

}


.about-premium-button:hover {

    background: #D97706;

}


.about-premium-button:hover b {

    transform:
        rotate(45deg);

}



.about-signature {

    display: flex;

    align-items: center;

    gap: 12px;

}


.about-signature strong {

    color: #fff;

    font-size: 34px;

    letter-spacing: -2px;

}


.about-signature strong span {

    color: #F59E0B;

}


.about-signature small {

    color: #8D96A4;

    font-size: 10px;

    line-height: 1.5;

    letter-spacing: 1px;

    font-weight: 800;

}


.about-stats {

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    margin-top: 40px;

    border-top:
        1px solid rgba(255, 255, 255, .13);

    border-bottom:
        1px solid rgba(255, 255, 255, .13);

}


.about-stat {

    min-height: 105px;

    display: flex;

    flex-direction: column;

    justify-content: center;

    padding: 0 30px;

    border-right:
        1px solid rgba(255, 255, 255, .13);

}


.about-stat:last-child {

    border-right: none;

}


.about-stat strong {

    margin-bottom: 7px;

    color: #fff;

    font-size: 30px;

    line-height: 1;

    letter-spacing: -1px;

}


.about-stat strong span {

    color: #F59E0B;

}


.about-stat small {

    color: #7F8998;

    font-size: 8px;

    font-weight: 800;

    letter-spacing: 1.2px;

}

/* project */

.projects-section {

    position: relative;

    padding: 65px 0 70px;

    background: #F8FAFC;

    color: #1F2937;

    overflow: hidden;

}


.projects-container {

    width: min(calc(100% - 80px), 1400px);

    margin: 0 auto;

}



.projects-header {

    display: grid;

    grid-template-columns: 1.15fr .85fr;

    gap: 80px;

    align-items: end;

    margin-bottom: 55px;

}


.projects-eyebrow {

    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 18px;

    color: #B45309;

    font-size: 12px;

    font-weight: 850;

    letter-spacing: 2px;

}


.projects-eyebrow span {

    width: 7px;

    height: 7px;

    flex: none;

    border-radius: 50%;

    background: #F59E0B;

}


.projects-header h2 {

    margin: 0;

    max-width: 700px;

    color: #1F2937;

    font-size: clamp(48px, 6vw, 78px);

    line-height: .93;

    letter-spacing: -4px;

    font-weight: 850;

}


.projects-header h2 span {

    display: block;

    color: #8A929E;

    font-weight: 600;

}


.projects-header-right {

    padding-bottom: 4px;

}


.projects-header-right p {

    max-width: 430px;

    margin: 0 0 25px;

    color: #64748B;

    font-size: 15px;

    line-height: 1.8;

}


.projects-link {

    display: inline-flex;

    align-items: center;

    gap: 13px;

    color: #1F2937;

    text-decoration: none;

    font-size: 12px;

    font-weight: 850;

    letter-spacing: 1px;

}


.projects-link span {

    color: #F59E0B;

    font-size: 17px;

    transition: .35s ease;

}


.projects-link:hover span {

    transform: translateX(5px);

}




.projects-grid {

    display: grid;

    grid-template-columns: 1.35fr .85fr;

    gap: 30px 20px;

    align-items: start;

}




.project-card {

    min-width: 0;

    position: relative;

}



.project-featured {

    grid-row: span 2;

}


.project-image {

    position: relative;

    display: block;

    width: 100%;

    height: 340px;

    overflow: hidden;

    background: #CBD5E1;

    text-decoration: none;

    isolation: isolate;

}


/* FEATURED IMAGE */

.project-featured .project-image {

    height: 700px;

}


/* WIDE PROJECT */

.project-wide {

    grid-column: 1 / -1;

}


.project-wide .project-image {

    height: 420px;

}




.project-image img {

    position: relative;

    z-index: 0;

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    transition:
        transform .8s cubic-bezier(.2,.7,.2,1);

}




.project-overlay {

    position: absolute;

    inset: 0;

    z-index: 1;

    pointer-events: none;

    background:
        linear-gradient(
            180deg,
            rgba(15,23,42,.02) 15%,
            rgba(15,23,42,.08) 48%,
            rgba(15,23,42,.72) 100%
        );

}




.project-card:hover .project-image img {

    transform: scale(1.06);

}




.project-number {

    position: absolute;

    top: 20px;

    right: 20px;

    z-index: 3;

    width: 42px;

    height: 42px;

    display: grid;

    place-items: center;

    border: 1px solid rgba(255,255,255,.35);

    border-radius: 50%;

    color: #fff;

    background:
        rgba(15,23,42,.45);

    backdrop-filter: blur(8px);

    -webkit-backdrop-filter: blur(8px);

    font-size: 10px;

    font-weight: 800;

}




.project-category {

    position: absolute;

    left: 24px;

    bottom: 23px;

    z-index: 3;

    color: #fff;

    font-size: 9px;

    font-weight: 850;

    letter-spacing: 1.7px;

}


.project-category::before {

    content: "";

    display: inline-block;

    width: 24px;

    height: 2px;

    margin-right: 10px;

    vertical-align: middle;

    background: #F59E0B;

}




.project-arrow {

    position: absolute;

    right: 22px;

    bottom: 18px;

    z-index: 3;

    width: 50px;

    height: 50px;

    display: grid;

    place-items: center;

    border: 1px solid rgba(255,255,255,.4);

    border-radius: 50%;

    color: #fff;

    background:
        rgba(255,255,255,.10);

    backdrop-filter: blur(8px);

    -webkit-backdrop-filter: blur(8px);

    font-size: 27px;

    line-height: 1;

    transition: .4s ease;

}



.project-card:hover .project-arrow {

    color: #1F2937;

    background: #F59E0B;

    border-color: #F59E0B;

    transform: rotate(45deg);

}



.project-info {

    position: relative;

    z-index: 5;

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 20px;

    padding: 18px;

    background: #F8FAFC;

}



.project-info h3 {

    margin: 0;

    color: #1F2937;

    font-size: 19px;

    line-height: 2;

    letter-spacing: -.5px;

    font-weight: 800;

}




.project-location {

    flex: none;

    color: #9CA3AF;

    font-size: 10px;

    font-weight: 800;

    letter-spacing: 1px;

}



.projects-footer {

    display: flex;

    align-items: center;

    gap: 35px;

    margin-top: 65px;

}


.projects-count {

    display: flex;

    align-items: center;

    gap: 13px;

}


.projects-count strong {

    color: #1F2937;

    font-size: 32px;

    line-height: 1;

    letter-spacing: -1.5px;

}


.projects-count strong span {

    color: #F59E0B;

}


.projects-count small {

    color: #8A929E;

    font-size: 10px;

    font-weight: 800;

    line-height: 1.5;

    letter-spacing: 1px;

}


.projects-footer-line {

    flex: 1;

    height: 1px;

    background: #DDE2E8;

}



.all-projects-btn {

    display: inline-flex;

    align-items: center;

    gap: 17px;

    min-height: 48px;

    padding: 0 10px 0 18px;

    color: #fff;

    background: #1F2937;

    text-decoration: none;

    font-size: 11px;

    font-weight: 850;

    letter-spacing: 1px;

    transition: .35s ease;

}


.all-projects-btn span {

    width: 25px;

    height: 25px;

    display: grid;

    place-items: center;

    color: #1F2937;

    background: #F59E0B;

    font-size: 18px;

    transition: .35s ease;

}


.all-projects-btn:hover {

    background: #111827;

}


.all-projects-btn:hover span {

    transform: rotate(45deg);

}



.project-visible {

    opacity: 1 !important;

    transform: translateY(0) !important;

}




/* HOw we Work */

.how-we-work {

    position: relative;

    padding: 65px 0 65px;

    background: #f8fafc;

    overflow: hidden;

}


.how-we-work::before {

    content: "";

    position: absolute;

    inset: 0;

    pointer-events: none;

    opacity: .55;

    background-image:

        linear-gradient(rgba(31, 41, 55, .035) 1px,
            transparent 1px),

        linear-gradient(90deg,
            rgba(31, 41, 55, .035) 1px,
            transparent 1px);

    background-size: 80px 80px;

}


/* Orange glow */

.how-we-work::after {

    content: "";

    position: absolute;

    width: 420px;

    height: 420px;

    top: -220px;

    right: -180px;

    border-radius: 50%;

    background: rgba(245, 158, 11, .08);

    filter: blur(80px);

    pointer-events: none;

}



.how-work-header {

    position: relative;

    z-index: 2;

    max-width: 760px;

    margin: 0 auto 65px;

    text-align: center;

}


.how-work-eyebrow {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 18px;

    color: var(--accent);

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;

}


.how-work-eyebrow span {

    width: 27px;

    height: 2px;

    background: var(--accent);

}


.how-work-header h2 {

    margin: 0 0 18px;

    color: var(--primary);

    font-size: clamp(44px, 5vw, 68px);

    line-height: 1;

    letter-spacing: -3px;

    font-weight: 850;

}


.how-work-header h2 strong {

    color: var(--accent);

}


.how-work-header p {

    max-width: 680px;

    margin: auto;

    color: #64748b;

    font-size: 16px;

    line-height: 1.8;

    font-weight: 500;

}



.work-steps {

    position: relative;

    z-index: 2;

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 18px;

}



.work-card {

    position: relative;

    min-height: 395px;

    padding: 28px 27px 25px;

    display: flex;

    flex-direction: column;

    background: #ffffff;

    border: 1px solid #e4e8ed;

    border-radius: 14px;

    box-shadow:
        0 10px 30px rgba(15, 23, 42, .045);

    overflow: hidden;

    transition:
        transform .4s ease,
        box-shadow .4s ease,
        border-color .4s ease;

}


.work-card::before {

    content: "";

    position: absolute;

    top: 0;

    left: 0;

    width: 4px;

    height: 0;

    background: var(--accent);

    transition: height .4s ease;

}


.work-card:hover {

    transform: translateY(-8px);

    border-color: rgba(245, 158, 11, .35);

    box-shadow:
        0 25px 55px rgba(15, 23, 42, .10);

}


.work-card:hover::before {

    height: 100%;

}


.work-card-top {

    display: flex;

    align-items: center;

    justify-content: space-between;

    margin-bottom: 35px;

}


.work-number {

    color: #e9edf2;

    font-size: 58px;

    line-height: 1;

    font-weight: 900;

    letter-spacing: -4px;

}


.work-icon {

    width: 56px;

    height: 56px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 12px;

    background: #fff7e8;

    color: var(--accent);

    font-size: 20px;

    border: 1px solid rgba(245, 158, 11, .15);

    transition:
        background .35s ease,
        color .35s ease,
        transform .35s ease;

}


.work-card:hover .work-icon {

    background: var(--accent);

    color: #ffffff;

    transform: rotate(-4deg);

}


.work-card-content {

    flex: 1;

}


.work-label {

    display: block;

    margin-bottom: 10px;

    color: var(--accent);

    font-size: 10px;

    font-weight: 800;

    letter-spacing: 1.7px;

}


.work-card h3 {

    margin: 0 0 15px;

    color: var(--primary);

    font-size: 21px;

    line-height: 1.25;

    font-weight: 800;

    letter-spacing: -.5px;

}


.work-card p {

    margin: 0;

    color: #64748b;

    font-size: 13px;

    line-height: 1.75;

    font-weight: 500;

}


.work-card-line {

    width: 100%;

    height: 1px;

    margin: 22px 0 16px;

    background: #edf0f3;

}


.work-card-footer {

    color: #94a3b8;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: .3px;

}



.work-trust {

    position: relative;

    z-index: 2;

    margin-top: 28px;

    min-height: 92px;

    padding: 18px 30px;

    display: grid;

    grid-template-columns:
        repeat(3, 1fr);

    background: #ffffff;

    border: 1px solid #e3e7ec;

    border-radius: 14px;

    box-shadow:
        0 10px 35px rgba(15, 23, 42, .045);

}


.trust-item {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 14px;

    position: relative;

}


.trust-item:not(:last-child)::after {

    content: "";

    position: absolute;

    right: 0;

    width: 1px;

    height: 38px;

    background: #e5e7eb;

}


.trust-icon {

    width: 43px;

    height: 43px;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

    border-radius: 10px;

    background: #fff7e8;

    color: var(--accent);

    font-size: 16px;

}


.trust-item div:last-child {

    display: flex;

    flex-direction: column;

    gap: 4px;

}


.trust-item strong {

    color: var(--primary);

    font-size: 13px;

    font-weight: 800;

}


.trust-item span {

    color: #64748b;

    font-size: 10px;

    font-weight: 500;

}



/* Why Choose us */

.why-choose-section {

    position: relative;

    padding: 65px 0;

    background: #F8FAFC;

    overflow: hidden;

}


/* SUBTLE GRID */

.why-choose-section::before {

    content: "";

    position: absolute;

    inset: 0;

    background-image:
        linear-gradient(rgba(31, 41, 55, .025) 1px,
            transparent 1px),
        linear-gradient(90deg,
            rgba(31, 41, 55, .025) 1px,
            transparent 1px);

    background-size: 55px 55px;

    pointer-events: none;

}


.why-choose-section .container {

    position: relative;

    z-index: 2;

}




.why-choose-grid {

    display: grid;

    grid-template-columns: 1fr 1fr;

    align-items: center;

    gap: 90px;

}



.why-choose-content {

    max-width: 650px;

}


.section-label {

    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 20px;

    color: #F59E0B;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 2px;

    text-transform: uppercase;

}


.section-label span {

    width: 30px;

    height: 2px;

    background: #F59E0B;

    display: inline-block;

}


.why-choose-content h2 {

    margin: 0 0 22px;

    color: #1F2937;

    font-size: clamp(42px, 4vw, 64px);

    line-height: 1.04;

    font-weight: 800;

    letter-spacing: -2px;

}


.why-choose-content h2 span {

    color: #F59E0B;

}


.why-intro {

    max-width: 600px;

    margin: 0 0 38px;

    color: #64748B;

    font-size: 17px;

    line-height: 1.8;

}


.why-feature {

    display: flex;

    align-items: flex-start;

    gap: 18px;

    padding: 20px 0;

    border-bottom: 1px solid #E5E7EB;

    transition: .35s ease;

}


.why-feature:first-of-type {

    border-top: 1px solid #E5E7EB;

}


.why-feature:hover {

    padding-left: 8px;

}


.why-feature-icon {

    flex-shrink: 0;

    width: 50px;

    height: 50px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 12px;

    background: #FFF7E8;

    color: #F59E0B;

    font-size: 18px;

    transition: .35s ease;

}


.why-feature:hover .why-feature-icon {

    background: #F59E0B;

    color: #fff;

    transform: translateY(-3px);

}


.why-feature h3 {

    margin: 2px 0 6px;

    color: #1F2937;

    font-size: 17px;

    font-weight: 750;

}


.why-feature p {

    margin: 0;

    color: #64748B;

    font-size: 14px;

    line-height: 1.6;

}



.why-cta {

    display: inline-flex;

    align-items: center;

    gap: 13px;

    margin-top: 35px;

    padding: 15px 22px;

    background: #F59E0B;

    color: #fff;

    border-radius: 9px;

    font-size: 14px;

    font-weight: 700;

    box-shadow: 0 12px 30px rgba(245, 158, 11, .20);

    transition: .35s ease;

}


.why-cta i {

    transition: .35s ease;

}


.why-cta:hover {

    background: #D97706;

    color: #fff;

    transform: translateY(-3px);

}


.why-cta:hover i {

    transform: translateX(5px);

}



.why-choose-visual {

    position: relative;

}


.why-image-wrapper {

    position: relative;

    height: 590px;

    overflow: hidden;

    border-radius: 22px;

    background: #E5E7EB;

    box-shadow:
        0 25px 70px rgba(15, 23, 42, .12);

}


.why-image-wrapper img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    display: block;

    transition: transform .8s ease;

}


.why-image-wrapper:hover img {

    transform: scale(1.04);

}


.why-image-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(180deg,
            transparent 50%,
            rgba(15, 23, 42, .45));

    pointer-events: none;

}



.why-experience-card {

    position: absolute;

    left: 25px;

    bottom: 25px;

    display: flex;

    align-items: center;

    gap: 14px;

    padding: 18px 22px;

    background: rgba(255, 255, 255, .96);

    backdrop-filter: blur(10px);

    border-radius: 12px;

    box-shadow: 0 15px 40px rgba(15, 23, 42, .18);

}


.why-experience-card strong {

    color: #F59E0B;

    font-size: 42px;

    line-height: 1;

    font-weight: 800;

}


.why-experience-card span {

    color: #1F2937;

    font-size: 13px;

    line-height: 1.4;

    font-weight: 700;

}



.why-safety-card {

    position: absolute;

    right: 25px;

    top: 25px;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 14px 18px;

    background: #1F2937;

    color: #fff;

    border-radius: 10px;

    box-shadow: 0 15px 40px rgba(15, 23, 42, .20);

}


.why-safety-icon {

    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 8px;

    background: #F59E0B;

    color: #fff;

}


.why-safety-card strong {

    display: block;

    font-size: 13px;

}


.why-safety-card span {

    display: block;

    margin-top: 3px;

    color: #CBD5E1;

    font-size: 11px;

}




.why-stats {

    display: grid;

    grid-template-columns: repeat(3, 1fr);

    margin-top: 18px;

    padding: 20px 10px;

    background: #fff;

    border: 1px solid #E5E7EB;

    border-radius: 14px;

    box-shadow: 0 10px 30px rgba(15, 23, 42, .05);

}


.why-stat {

    text-align: center;

    padding: 0 15px;

    border-right: 1px solid #E5E7EB;

}


.why-stat:last-child {

    border-right: 0;

}


.why-stat strong {

    display: block;

    margin-bottom: 5px;

    color: #1F2937;

    font-size: 25px;

    font-weight: 800;

}


.why-stat span {

    color: #64748B;

    font-size: 11px;

    font-weight: 500;

}


/* Industry we serve */

.industries-section {

    position: relative;

    background: #f8fafc;

    padding: 65px 0 65px;

    overflow: hidden;

}




.industries-heading {

    max-width: 760px;

    margin-bottom: 65px;

}


.industries-eyebrow {

    display: flex;

    align-items: center;

    gap: 12px;

    margin-bottom: 20px;

    color: #f59e0b;

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2.5px;

}


.industries-eyebrow span {

    width: 34px;

    height: 2px;

    background: #f59e0b;

    display: block;

}


.industries-heading h2 {

    margin: 0;

    color: #172033;

    font-size: clamp(42px, 5vw, 68px);

    line-height: .98;

    letter-spacing: -3px;

    font-weight: 800;

}


.industries-heading h2 em {

    display: block;

    color: #f59e0b;

    font-style: normal;

}


.industries-heading p {

    max-width: 650px;

    margin: 27px 0 0;

    color: #64748b;

    font-size: 15px;

    line-height: 1.8;

}




.industries-grid {

    display: grid;

    grid-template-columns: repeat(2, 1fr);

    border-top: 1px solid #dce2e9;

}



.industry-item {

    min-height: 145px;

    display: flex;

    align-items: center;

    gap: 30px;

    padding: 25px 30px 25px 0;

    position: relative;

    border-bottom: 1px solid #dce2e9;

    transition: .35s ease;

}


/* vertical divider */

.industry-item:nth-child(odd) {

    border-right: 1px solid #dce2e9;

    padding-right: 45px;

}


.industry-item:nth-child(even) {

    padding-left: 45px;

}


.industry-no {

    flex-shrink: 0;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 1px;

    color: #a7b0bd;

    transition: .35s ease;

}




.industry-info h3 {

    margin: 0;

    color: #172033;

    font-size: 19px;

    line-height: 1.3;

    font-weight: 750;

    letter-spacing: -.4px;

    transition: .35s ease;

}


.industry-info p {

    margin: 9px 0 0;

    color: #94a3b8;

    font-size: 10px;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 1.5px;

}




.industry-item::after {

    content: "";

    position: absolute;

    left: 0;

    bottom: -1px;

    width: 0;

    height: 2px;

    background: #f59e0b;

    transition: width .4s ease;

}


.industry-item:hover::after {

    width: 90px;

}


.industry-item:hover .industry-no {

    color: #f59e0b;

}


.industry-item:hover .industry-info h3 {

    transform: translateX(6px);

}




/* Certifications */

.certifications-section {
    position: relative;
    padding: 65px 0 65px;
    background: #f8fafc;
    overflow: hidden;
}


/* subtle premium background */

.certifications-section::before {
    content: "";
    position: absolute;
    width: 500px;
    height: 500px;
    top: -300px;
    right: -180px;
    border: 1px solid rgba(245, 158, 11, .12);
    border-radius: 50%;
}

.certifications-section::after {
    content: "";
    position: absolute;
    width: 350px;
    height: 350px;
    bottom: -250px;
    left: -170px;
    border: 1px solid rgba(31, 41, 55, .06);
    border-radius: 50%;
}




.certifications-heading {
    margin-bottom: 52px;
}


.section-eyebrow {
    display: flex;
    align-items: center;
    gap: 11px;

    color: #d97706;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2.4px;
    text-transform: uppercase;

    margin-bottom: 17px;
}


.section-eyebrow span {
    width: 34px;
    height: 2px;
    background: #f59e0b;
    display: block;
}


.certifications-title-row {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 60px;
}


.certifications-title-row h2 {
    margin: 0;

    max-width: 720px;

    color: #172033;

    font-size: clamp(42px, 4vw, 64px);
    line-height: .98;

    font-weight: 800;
    letter-spacing: -2.8px;
}


.certifications-title-row h2 strong {
    display: block;
    color: #f59e0b;
    font-weight: 800;
}


.certifications-title-row p {
    max-width: 420px;

    margin: 0 0 5px;

    color: #64748b;

    font-size: 15px;
    line-height: 1.8;
}


/* =====================================================
   CERTIFICATE CARD
===================================================== */

.certificate-image {
    position: relative;
    width: 100%;
    height: 300px;
    padding: 16px;
    background: linear-gradient(
        135deg,
        #f8fafc,
        #eef2f6
    );
    overflow: hidden;
}


/* Certificate border */

.certificate-image::before {
    content: "";
    position: absolute;
    inset: 12px;

    border: 1px solid rgba(245, 158, 11, .12);
    border-radius: 10px;

    pointer-events: none;
    z-index: 3;
}


/* PDF */

.certificate-image iframe {
    position: relative;

    width: 100%;
    height: 100%;

    display: block;

    border: 0;
    outline: 0;

    background: #fff;

    z-index: 1;
}


/* Overlay */

.certificate-overlay {
    position: absolute;
    inset: 0;

    background: rgba(15, 23, 42, .62);

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    gap: 9px;

    opacity: 0;

    transition: .35s ease;

    z-index: 4;
}

.certificate-card:hover .certificate-overlay {
    opacity: 1;
}


.certificate-overlay span {
    width: 50px;
    height: 50px;

    border-radius: 50%;

    background: #f59e0b;
    color: #fff;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 17px;
}


.certificate-overlay small {
    color: #fff;

    font-size: 11px;
    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: 1.4px;
}



/* =====================================================
   CERTIFICATE SLIDER
===================================================== */

.certificate-slider-wrap {
    display: flex;
    align-items: center;
    gap: 18px;
}


.certificate-slider {
    width: 100%;
    overflow: hidden;
}


.certificate-track {
    display: flex;

    transition:
        transform .65s cubic-bezier(.22, .61, .36, 1);

    will-change: transform;
}


.certificate-slide {
    flex: 0 0 33.333333%;
    padding: 0 9px;
}


.certificate-card {
    background: #fff;

    border: 1px solid #e2e8f0;

    border-radius: 18px;

    overflow: hidden;

    cursor: pointer;

    box-shadow:
        0 8px 25px rgba(15, 23, 42, .035);

    transition:
        transform .4s ease,
        box-shadow .4s ease,
        border-color .4s ease;
}


.certificate-card:hover {
    transform: translateY(-7px);

    border-color:
        rgba(245, 158, 11, .45);

    box-shadow:
        0 24px 55px rgba(15, 23, 42, .11);
}



/* =====================================================
   CERTIFICATE INFO
===================================================== */

.certificate-info {
    min-height: 105px;

    padding: 20px 21px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 15px;

    border-top:
        1px solid #eef2f6;
}


.certificate-number {
    display: block;

    margin-bottom: 5px;

    color: #f59e0b;

    font-size: 10px;
    font-weight: 800;

    letter-spacing: 1.5px;
}


.certificate-info h3 {
    margin: 0 0 5px;

    color: #172033;

    font-size: 16px;
    font-weight: 750;
}


.certificate-info p {
    margin: 0;

    color: #94a3b8;

    font-size: 11px;
    line-height: 1.4;
}


.certificate-info > i {
    color: #cbd5e1;

    font-size: 14px;

    transition: .3s ease;
}


.certificate-card:hover
.certificate-info > i {
    color: #f59e0b;

    transform:
        translate(3px, -3px);
}



/* =====================================================
   SLIDER ARROWS
===================================================== */

.certificate-arrow {
    flex: 0 0 48px;

    width: 48px;
    height: 48px;

    border: 1px solid #dbe3eb;

    border-radius: 50%;

    background: #fff;
    color: #172033;

    display: flex;
    align-items: center;
    justify-content: center;

    cursor: pointer;

    transition: .3s ease;

    z-index: 5;
}


.certificate-arrow:hover {
    background: #f59e0b;

    border-color: #f59e0b;

    color: #fff;

    transform:
        translateY(-2px);
}


.certificate-arrow:disabled {
    opacity: .35;

    cursor: default;

    transform: none;
}



/* =====================================================
   BOTTOM
===================================================== */

.certification-bottom {
    margin-top: 38px;

    display: flex;
    align-items: center;
    justify-content: center;

    gap: 0;

    border-top:
        1px solid #e2e8f0;

    border-bottom:
        1px solid #e2e8f0;

    padding: 17px 0;
}


.certification-bottom span {
    flex: 1;

    display: flex;
    justify-content: center;
    align-items: center;

    gap: 9px;

    color: #64748b;

    font-size: 11px;
    font-weight: 600;

    letter-spacing: .2px;
}


.certification-bottom span + span {
    border-left:
        1px solid #e2e8f0;
}


.certification-bottom i {
    color: #f59e0b;

    font-size: 14px;
}



/* =====================================================
   PDF VIEWER
===================================================== */

.certificate-viewer {
    position: fixed;

    inset: 0;

    z-index: 99999;

    display: flex;

    align-items: center;
    justify-content: center;

    opacity: 0;
    visibility: hidden;

    transition: opacity .3s ease,
                visibility .3s ease;
}


.certificate-viewer.active {
    opacity: 1;
    visibility: visible;
}



/* =====================================================
   BACKDROP
===================================================== */

.viewer-backdrop {
    position: absolute;

    inset: 0;

    background:
        rgba(9, 15, 27, .88);

    backdrop-filter: blur(8px);
}



/* =====================================================
   VIEWER BOX
===================================================== */

.viewer-box {
    position: relative;

    width: min(1100px, 92vw);

    height: min(90vh, 850px);

    z-index: 2;

    background: #fff;

    border-radius: 18px;

    overflow: hidden;

    box-shadow:
        0 35px 100px rgba(0, 0, 0, .35);
}



/* =====================================================
   PDF AREA
===================================================== */

.viewer-image-area {
    position: relative;

    width: 100%;
    height: 100%;

    overflow: hidden;

    background: #e5e7eb;

    display: block;
}


/* PDF iframe */

.viewer-image-area iframe {
    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    min-height: 0;

    margin: 0;
    padding: 0;

    border: 0;
    outline: 0;

    display: block;

    background: #fff;
}



/* =====================================================
   CLOSE BUTTON
===================================================== */

.viewer-close {
    position: absolute;

    top: 18px;
    right: 18px;

    width: 44px;
    height: 44px;

    border: 0;

    border-radius: 50%;

    background: #172033;
    color: #fff;

    display: flex;
    align-items: center;
    justify-content: center;

    cursor: pointer;

    z-index: 20;

    transition: .3s ease;
}


.viewer-close:hover {
    background: #f59e0b;
}


/* =====================================================
   RESPONSIVE
===================================================== */

@media (max-width: 1200px) {

    .certificate-slide {
        flex: 0 0 33.333333%;
    }

}


@media (max-width: 992px) {

    .certificate-slide {
        flex: 0 0 50%;
    }

    .viewer-box {
        width: 94vw;
        height: 88vh;
    }

}


@media (max-width: 650px) {

    .certificate-slide {
        flex: 0 0 100%;
    }

    .certificate-image {
        height: 320px;
    }

    .certificate-slider-wrap {
        gap: 8px;
    }

    .certificate-arrow {
        flex: 0 0 42px;

        width: 42px;
        height: 42px;
    }

    .viewer-box {
        width: 96vw;
        height: 90vh;

        border-radius: 12px;
    }

}


/* Leader */

.leader-section {
    position: relative;
    background: #f8fafc;
    padding: 65px 0 0;
    overflow: hidden;
}


/* CONTAINER */

.leader-container {
    width: min(1400px, calc(100% - 40px));
    margin: auto;

    display: grid;
    grid-template-columns: 1fr 0.85fr;

    gap: 90px;
    align-items: center;

    position: relative;
    z-index: 2;
}



.leader-content {
    max-width: 650px;
}

.section-eyebrow {
    display: flex;
    align-items: center;
    gap: 12px;

    color: #f59e0b;

    font-size: 11px;
    font-weight: 800;

    letter-spacing: 2.5px;

    margin-bottom: 22px;
}

.section-eyebrow span {
    width: 38px;
    height: 2px;

    background: #f59e0b;

    display: block;
}


/* HEADING */

.leader-content h2 {
    margin: 0;

    color: #172033;

    font-size: clamp(42px, 5vw, 68px);
    line-height: .98;

    letter-spacing: -3px;

    font-weight: 800;
}

.leader-content h2 strong {
    display: block;

    color: #f59e0b;

    font-weight: 800;
}


/* INTRO */

.leader-intro {
    max-width: 570px;

    margin: 30px 0 35px;

    color: #64748b;

    font-size: 16px;
    line-height: 1.8;
}



   /* QUOTE */

.leader-quote {
    position: relative;

    border-top: 1px solid #dfe4ea;
    border-bottom: 1px solid #dfe4ea;

    padding: 27px 0 27px 45px;

    margin-bottom: 30px;
}

.quote-mark {
    position: absolute;

    left: 0;
    top: 17px;

    font-size: 48px;
    line-height: 1;

    color: #f59e0b;

    font-weight: 800;
}

.leader-quote p {
    margin: 0;

    max-width: 510px;

    color: #253044;

    font-size: 17px;
    line-height: 1.65;

    font-weight: 600;
}



   /* PROFILE */


.leader-profile {
    display: flex;
    align-items: center;
}

.leader-name h3 {
    margin: 0 0 5px;

    color: #172033;

    font-size: 20px;
    font-weight: 800;
}

.leader-name span {
    color: #94a3b8;

    font-size: 12px;
    font-weight: 700;

    letter-spacing: 1.2px;

    text-transform: uppercase;
}




.leader-visual {
    position: relative;

    display: flex;
    justify-content: flex-end;
}

.leader-image-wrap {
    position: relative;

    width: min(430px, 100%);
    height: 540px;

    overflow: hidden;

    background: #e9edf2;
}

.leader-image-wrap::after {
    content: "";

    position: absolute;

    inset: 0;

    background:
        linear-gradient(180deg,
            transparent 55%,
            rgba(15, 23, 42, .32));

    pointer-events: none;
}

.leader-image-wrap img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    display: block;

    transition: transform .7s ease;
}

.leader-image-wrap:hover img {
    transform: scale(1.035);
}



/* SIDE LINE */

.leader-side-line {
    position: absolute;

    right: -25px;
    top: 40px;

    width: 2px;
    height: 130px;

    background: #f59e0b;
}



.leader-bottom {
    width: min(1180px, calc(100% - 40px));

    margin: 95px auto 0;

    border-top: 1px solid #dfe4ea;

    display: grid;
    grid-template-columns: repeat(4, 1fr);

    position: relative;
    z-index: 2;
}

.leader-stat {
    min-height: 105px;

    display: flex;
    align-items: center;
    gap: 18px;

    border-right: 1px solid #dfe4ea;

    padding: 0 30px;
}

.leader-stat:first-child {
    padding-left: 0;
}

.leader-stat:last-child {
    border-right: 0;
}

.leader-stat strong {
    color: #f59e0b;

    font-size: 25px;

    font-weight: 800;
}

.leader-stat span {
    color: #64748b;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 1.1px;

    text-transform: uppercase;
}
