/*==================================================
PAGE HERO
==================================================*/

.page-hero {

    position: relative;
    height: 72vh;
    min-height: 620px;
    overflow: hidden;
    display: flex;
    align-items: center;
    background: var(--color-charcoal);

}

.page-hero img {

    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;

}

.page-hero-overlay {

    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(17,22,28,.86) 0%,
            rgba(17,22,28,.76) 45%,
            rgba(17,22,28,.48) 100%
        );

    z-index: 1;

}

.page-hero .container {

    position: relative;
    z-index: 2;

}

.page-hero-content {

    max-width: 760px;
    color: #fff;

}

.breadcrumb {

    display: flex;
    align-items: center;
    gap: .75rem;

    margin-bottom: 2rem;

    font-size: .95rem;
    color: rgba(255,255,255,.75);

}

.breadcrumb a {

    color: inherit;
    text-decoration: none;
    transition: color .3s ease;

}

.breadcrumb a:hover {

    color: var(--color-gold);

}

.page-label {

    display: inline-block;

    margin-bottom: 1.5rem;

    color: var(--color-gold);

    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .16em;
    text-transform: uppercase;

}

.page-hero h1 {

    margin-bottom: 1.75rem;

    font-family: var(--font-heading);
    font-size: clamp(3rem,5vw,4.5rem);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -.03em;

    max-width: 11ch;

}

.page-hero p {

    max-width: 650px;

    font-size: 1.15rem;
    line-height: 1.9;

    color: rgba(255,255,255,.9);

}

/*==================================================
Responsive
==================================================*/

@media (max-width: 992px) {

    .page-hero {

        min-height: 560px;

    }

    .page-hero h1 {

        max-width: 100%;

    }

}

@media (max-width: 768px) {

    .page-hero {

        min-height: 520px;

    }

    .breadcrumb {

        flex-wrap: wrap;

    }

    .page-hero h1 {

        font-size: clamp(2.5rem,8vw,3.5rem);

    }

    .page-hero p {

        font-size: 1rem;
        line-height: 1.8;

    }

}


/*==================================================
ADVISORY INTRODUCTION
==================================================*/

.advisory-intro {

    padding: 8rem 0;
    background: var(--color-white);

}

.advisory-grid {

    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 5rem;
    align-items: center;

}

.advisory-content {

    max-width: 650px;

}

.advisory-content p {

    margin-bottom: 1.75rem;

    color: var(--color-slate);
    line-height: 1.9;
    font-size: 1.08rem;

}

.advisory-content .btn {

    margin-top: 1rem;

}

.advisory-image {

    position: relative;
    overflow: hidden;
    border-radius: 22px;

}

.advisory-image img {

    display: block;
    width: 100%;
    height: 640px;

    object-fit: cover;

    transition: transform .7s ease;

}

.advisory-image:hover img {

    transform: scale(1.04);

}

/* Decorative Accent */

.advisory-image::after {

    content: "";

    position: absolute;

    width: 180px;
    height: 180px;

    right: -50px;
    bottom: -50px;

    border: 2px solid rgba(184,155,92,.18);
    border-radius: 50%;

}

/*==================================================
Responsive
==================================================*/

@media (max-width:992px){

    .advisory-grid{

        grid-template-columns:1fr;
        gap:4rem;

    }

    .advisory-content{

        max-width:100%;

    }

    .advisory-image{

        order:-1;

    }

    .advisory-image img{

        height:500px;

    }

}

@media (max-width:768px){

    .advisory-intro{

        padding:6rem 0;

    }

    .advisory-image img{

        height:380px;

    }

}

/*==================================================
SERVICE NAVIGATOR
==================================================*/

.service-navigator{

    padding:8rem 0;

    background:#F8F9FA;

}

.navigator-grid{

    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:2rem;
    margin-top:5rem;

}

.capability-card{

    background:#fff;

    border:1px solid rgba(0,0,0,.08);

    border-radius:20px;

    padding:2.5rem;

    display:flex;
    flex-direction:column;

    transition:
        transform .35s ease,
        border-color .35s ease,
        box-shadow .35s ease;

    position:relative;

    overflow:hidden;

}

.capability-card::before{

    content:"";

    position:absolute;

    left:0;
    top:0;

    width:5px;
    height:100%;

    background:var(--color-gold);

    transform:scaleY(0);

    transform-origin:top;

    transition:transform .35s ease;

}

.capability-card:hover{

    transform:translateY(-8px);

    border-color:rgba(184,155,92,.4);

    box-shadow:0 18px 50px rgba(0,0,0,.08);

}

.capability-card:hover::before{

    transform:scaleY(1);

}

.capability-number{

    font-family:var(--font-heading);

    font-size:3rem;

    font-weight:800;

    color:rgba(184,155,92,.25);

    margin-bottom:1.5rem;

}

.capability-content h3{

    margin-bottom:1rem;

    font-size:1.75rem;

}

.capability-content p{

    color:var(--color-slate);

    line-height:1.9;

    margin-bottom:2rem;

}

.capability-content ul{

    list-style:none;

    display:flex;

    flex-direction:column;

    gap:1rem;

    margin:0;
    padding:0;

}

.capability-content li{

    position:relative;

    padding-left:1.5rem;

    color:var(--color-charcoal);

    font-weight:500;

}

.capability-content li::before{

    content:"";

    position:absolute;

    left:0;
    top:12px;

    width:7px;
    height:7px;

    border-radius:50%;

    background:var(--color-gold);

}

/*======================================
Responsive
======================================*/

@media(max-width:1100px){

    .navigator-grid{

        grid-template-columns:1fr;

    }

}

/*==================================================
FEATURED CAPABILITY
==================================================*/

.featured-capability{

    padding:8rem 0;

    background:#ffffff;

}

.featured-panel{

    display:grid;
    grid-template-columns:1.2fr .8fr;

    background:#1E2329;

    color:#fff;

    border-radius:28px;

    overflow:hidden;

}

.featured-content{

    padding:5rem;

}

.featured-content h2{

    margin:1rem 0 2rem;

    font-size:clamp(2.5rem,4vw,3.5rem);

    color:#fff;

}

.featured-intro{

    color:rgba(255,255,255,.86);

    line-height:1.9;

    font-size:1.1rem;

    margin-bottom:3rem;

    max-width:700px;

}

.featured-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:2rem;

    margin-bottom:3rem;

}

.featured-grid article{

    padding-top:1rem;

    border-top:1px solid rgba(255,255,255,.15);

}

.featured-grid h3{

    margin-bottom:1rem;

    font-size:1.15rem;

    color:var(--color-gold);

}

.featured-grid p{

    color:rgba(255,255,255,.78);

    line-height:1.8;

}

.featured-actions{

    display:flex;

    align-items:center;

    gap:1.5rem;

    flex-wrap:wrap;

}

.featured-actions .btn-text{

    color:#fff;

    text-decoration:none;

    font-weight:600;

}

.featured-actions .btn-text:hover{

    color:var(--color-gold);

}

.featured-image{

    position:relative;

}

.featured-image img{

    width:100%;

    height:100%;

    min-height:720px;

    object-fit:cover;

    display:block;

    transition:transform .7s ease;

}

.featured-panel:hover .featured-image img{

    transform:scale(1.05);

}

/* Decorative Accent */

.featured-image::before{

    content:"";

    position:absolute;

    inset:0;

    background:linear-gradient(
        to left,
        rgba(30,35,41,.15),
        rgba(30,35,41,.55)
    );

}

/*==================================================
Responsive
==================================================*/

@media(max-width:1100px){

    .featured-panel{

        grid-template-columns:1fr;

    }

    .featured-image{

        order:-1;

    }

    .featured-image img{

        min-height:420px;

    }

    .featured-grid{

        grid-template-columns:1fr;

    }

}

@media(max-width:768px){

    .featured-content{

        padding:3rem 2rem;

    }

}


/*==================================================
ADVISORY PRACTICE AREAS
==================================================*/

.practice-areas{

    padding:128px 0;
    background:#fff;

}

.practice-areas .section-header{

    max-width:760px;
    margin:0 auto 96px;
    text-align:center;

}

/*-----------------------------------
Shared Layout
------------------------------------*/

.practice-row{

    display:grid;
    grid-template-columns:1fr 1fr;
    gap:64px;
    align-items:center;
    margin-bottom:96px;

}

.practice-row.image-right{

    direction:rtl;

}

.practice-row.image-right>*{

    direction:ltr;

}

.practice-image{

    overflow:hidden;
    border-radius:18px;

}

.practice-image img{

    width:100%;
    display:block;
    aspect-ratio:4/3;
    object-fit:cover;
    transition:.5s;

}

.practice-row:hover img{

    transform:scale(1.04);

}

.practice-number{

    display:inline-block;
    font-size:.8rem;
    font-weight:700;
    letter-spacing:.18em;
    color:var(--color-accent);
    margin-bottom:18px;

}

.practice-content h3{

    margin-bottom:18px;

}

.practice-content p{

    margin-bottom:24px;
    color:var(--color-muted);

}

.practice-content ul{

    display:grid;
    gap:12px;
    padding-left:20px;
    color:var(--color-text);

}

/*-----------------------------------
Editorial Panel
------------------------------------*/

.practice-panel{

    background:#f7f7f7;
    padding:64px;
    border-radius:18px;
    margin-bottom:96px;
    border:1px solid rgba(0,0,0,.06);

}

.practice-panel h3{

    margin:20px 0;

}

.practice-panel p{

    max-width:760px;
    color:var(--color-muted);

}

.practice-tags{

    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:32px;

}

.practice-tags span{

    padding:10px 18px;
    border-radius:40px;
    background:#fff;
    border:1px solid rgba(0,0,0,.08);
    font-size:.9rem;
    font-weight:600;

}

/*-----------------------------------
Split Cards
------------------------------------*/

.practice-split{

    display:grid;
    grid-template-columns:1fr 1fr;
    gap:32px;
    margin-bottom:96px;

}

.practice-split>div{

    padding:48px;
    border:1px solid rgba(0,0,0,.08);
    border-radius:18px;
    background:#fff;
    transition:.35s;

}

.practice-split>div:hover{

    transform:translateY(-6px);

}

.practice-split h3{

    margin:18px 0;

}

.practice-split p{

    color:var(--color-muted);

}

/*-----------------------------------
Responsive
------------------------------------*/

@media(max-width:992px){

    .practice-row,
    .practice-split{

        grid-template-columns:1fr;

    }

    .practice-row.image-right{

        direction:ltr;

    }

    .practice-panel{

        padding:40px;

    }

}

/*==================================================
INDUSTRY EXPERTISE
==================================================*/

.industry-expertise{

    padding:128px 0;
    background:#f8f9fa;

}

.industry-layout{

    display:grid;
    grid-template-columns:5fr 7fr;
    gap:80px;
    align-items:start;

}

/*------------------------------------
Introduction
------------------------------------*/

.industry-intro{

    position:sticky;
    top:120px;

}

.industry-intro h2{

    margin:24px 0;

    max-width:520px;

}

.industry-intro p{

    max-width:500px;
    color:var(--color-muted);
    line-height:1.9;

}

/*------------------------------------
Grid
------------------------------------*/

.industry-grid{

    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:28px;

}

/*------------------------------------
Cards
------------------------------------*/

.industry-card{

    background:#fff;

    padding:40px;

    border-radius:18px;

    border:1px solid rgba(0,0,0,.06);

    transition:.35s ease;

    min-height:260px;

    display:flex;

    flex-direction:column;

}

.industry-card:hover{

    transform:translateY(-8px);

    border-color:rgba(185,151,91,.35);

}

.industry-card span{

    font-size:.8rem;

    letter-spacing:.18em;

    font-weight:700;

    color:var(--color-accent);

    margin-bottom:20px;

}

.industry-card h3{

    margin-bottom:18px;

    line-height:1.3;

}

.industry-card p{

    color:var(--color-muted);

    line-height:1.8;

    margin-top:auto;

}

/*------------------------------------
Responsive
------------------------------------*/

@media (max-width:992px){

    .industry-layout{

        grid-template-columns:1fr;

        gap:64px;

    }

    .industry-intro{

        position:relative;

        top:auto;

    }

}

@media (max-width:768px){

    .industry-grid{

        grid-template-columns:1fr;

    }

}

/*==================================================
WHY ORGANIZATIONS CHOOSE PLATINUM EDGE
==================================================*/

.service-credibility{

    padding:128px 0;

    background:#fff;

}

.service-credibility .section-header{

    max-width:760px;

    margin:0 auto 80px;

    text-align:center;

}

.credibility-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:32px;

}

.credibility-card{

    padding:40px;

    border:1px solid rgba(0,0,0,.08);

    border-radius:18px;

    background:#fff;

    transition:.35s ease;

}

.credibility-card:hover{

    transform:translateY(-8px);

    border-color:rgba(185,151,91,.35);

}

.credibility-card span{

    display:inline-block;

    margin-bottom:18px;

    font-size:.8rem;

    font-weight:700;

    letter-spacing:.18em;

    color:var(--color-accent);

}

.credibility-card h3{

    margin-bottom:18px;

    line-height:1.35;

}

.credibility-card p{

    color:var(--color-muted);

    line-height:1.8;

}

/*==================================================
SERVICES CTA
==================================================*/

.services-cta{

    padding:128px 0;

    background:#f7f7f7;

}

.services-cta-panel{

    background:#1E2329;

    color:#fff;

    border-radius:24px;

    padding:96px;

    text-align:center;

    position:relative;

    overflow:hidden;

}

.services-cta-panel .cta-line{

    width:80px;

    height:3px;

    background:var(--color-accent);

    display:block;

    margin:0 auto 32px;

}

.services-cta-panel .section-label{

    color:rgba(255,255,255,.75);

}

.services-cta-panel h2{

    max-width:760px;

    margin:24px auto;

    color:#fff;

}

.services-cta-panel p{

    max-width:720px;

    margin:0 auto;

    color:rgba(255,255,255,.82);

    line-height:1.9;

}

.services-cta-actions{

    display:flex;

    justify-content:center;

    gap:20px;

    margin-top:48px;

    flex-wrap:wrap;

}

/*==================================================
Responsive
==================================================*/

@media (max-width:992px){

    .credibility-grid{

        grid-template-columns:repeat(2,1fr);

    }

    .services-cta-panel{

        padding:64px 40px;

    }

}

@media (max-width:768px){

    .credibility-grid{

        grid-template-columns:1fr;

    }

    .services-cta-actions{

        flex-direction:column;

        align-items:center;

    }

    .services-cta-actions .btn{

        width:100%;

        max-width:320px;

    }

}