/* Project Management landing page */
.pm-hero{
    position: relative;
    min-height: 720px;
    display: flex;
    align-items: center;
    background-image: linear-gradient(90deg, rgba(4,6,24,.92) 0%, rgba(4,6,24,.72) 38%, rgba(4,6,24,.18) 68%, rgba(4,6,24,.05) 100%), url('../images/img/project-management-hero-ai.jpg');
    background-size: cover;
    background-position: center;
    overflow: hidden;
    border-radius: 0 0 36px 36px;
}
.pm-hero::after{
    content: '';
    position: absolute;
    inset: auto 0 0 0;
    height: 170px;
    background: linear-gradient(180deg, rgba(4,6,24,0) 0%, rgba(4,6,24,.55) 100%);
    pointer-events: none;
}
.pm-hero .container{ position: relative; z-index: 2; padding-top: 85px; }
.pm-hero-content{ max-width: 710px; }
.pm-eyebrow{
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 9px 14px;
    border: 1px solid rgba(255,255,255,.3);
    border-radius: 100px;
    color: #fff;
    font-size: 14px;
    margin-bottom: 24px;
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(10px);
}
.pm-eyebrow i{ color: var(--accent-secondary-color); }
.pm-hero h1{
    color: #fff;
    font-size: clamp(48px, 5.3vw, 82px);
    line-height: 1.02em;
    letter-spacing: -2.5px;
    margin-bottom: 24px;
}
.pm-hero h1 span{ color: #e1bd83; }
.pm-hero p{
    max-width: 620px;
    color: rgba(255,255,255,.86);
    font-size: 19px;
    line-height: 1.65em;
    margin-bottom: 32px;
}
.pm-hero-actions{ display:flex; align-items:center; gap:18px; flex-wrap:wrap; }
.pm-hero-link{ color:#fff; font-weight:600; display:inline-flex; align-items:center; gap:9px; }
.pm-hero-link:hover{ color:var(--accent-secondary-color); }

.pm-highlights-wrap{ position: relative; z-index: 5; margin-top: -58px; }
.pm-highlights{
    background: #fff;
    border-radius: 24px;
    box-shadow: 0 24px 70px rgba(4,6,24,.12);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    overflow: hidden;
}
.pm-highlight{ padding: 30px 26px; display:flex; gap:16px; align-items:flex-start; position:relative; }
.pm-highlight:not(:last-child)::after{ content:''; position:absolute; right:0; top:28px; bottom:28px; width:1px; background:var(--divider-color); }
.pm-highlight-icon{
    width: 52px; height: 52px; flex: 0 0 52px;
    border-radius: 14px; display:flex; align-items:center; justify-content:center;
    background:#f8f2e8; color:var(--accent-secondary-color); font-size:22px;
}
.pm-highlight h3{ font-size:17px; margin-bottom:6px; }
.pm-highlight p{ font-size:14px; line-height:1.5; margin:0; }

.pm-section{ padding: 100px 0; }
.pm-section.pm-soft{ background:#eceff2; }
.pm-kicker{ color:#7d1025; text-transform:uppercase; letter-spacing:1.3px; font-size:13px; font-weight:700; margin-bottom:14px; display:block; }
.pm-heading{ font-size: clamp(34px, 3.6vw, 54px); line-height:1.08; letter-spacing:-1.6px; margin-bottom:22px; }
.pm-heading span{ color:#7d1025; }
.pm-lead{ font-size:18px; line-height:1.75; }
.pm-copy p{ font-size:16px; line-height:1.8; }
.pm-image-card{ position:relative; border-radius:28px; overflow:hidden; min-height:520px; box-shadow:0 24px 60px rgba(4,6,24,.14); }
.pm-image-card img{ width:100%; height:100%; position:absolute; inset:0; object-fit:cover; }
.pm-image-badge{
    position:absolute; left:24px; right:24px; bottom:24px; z-index:2;
    padding:24px; border-radius:20px; background:rgba(4,6,24,.9); color:#fff; backdrop-filter:blur(12px);
}
.pm-image-badge h3{ color:#fff; font-size:24px; margin-bottom:8px; }
.pm-image-badge p{ color:rgba(255,255,255,.75); margin:0; font-size:14px; }

.pm-why-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:38px; }
.pm-why-card{ background:#fff; border-radius:22px; padding:30px; border:1px solid rgba(4,6,24,.08); height:100%; transition:.3s ease; }
.pm-why-card:hover{ transform:translateY(-6px); box-shadow:0 20px 45px rgba(4,6,24,.09); }
.pm-why-card i{ width:48px; height:48px; border-radius:14px; display:flex; align-items:center; justify-content:center; background:#7d1025; color:#fff; font-size:20px; margin-bottom:20px; }
.pm-why-card h3{ font-size:21px; margin-bottom:10px; }
.pm-why-card p{ margin:0; font-size:15px; line-height:1.65; }
.pm-framework{
    margin-top:30px; padding:28px 30px; border-radius:22px;
    background:#040618; color:rgba(255,255,255,.78); font-size:16px; line-height:1.75;
}
.pm-framework strong{ color:#e1bd83; }

.pm-scope-header{ max-width:820px; margin:0 auto 50px; text-align:center; }
.pm-stage{ background:#fff; border-radius:28px; padding:38px; height:100%; border:1px solid rgba(4,6,24,.07); }
.pm-stage-num{ display:inline-flex; width:48px; height:48px; border-radius:50%; background:#7d1025; color:#fff; align-items:center; justify-content:center; font-weight:700; margin-bottom:22px; }
.pm-stage h3{ font-size:27px; margin-bottom:10px; }
.pm-stage > p{ color:#74757d; }
.pm-stage ul{ list-style:none; padding:0; margin:22px 0 24px; }
.pm-stage li{ position:relative; padding-left:27px; margin-bottom:12px; line-height:1.55; }
.pm-stage li::before{ content:'\f00c'; font-family:'Font Awesome 6 Free'; font-weight:900; position:absolute; left:0; top:2px; color:var(--accent-secondary-color); }
.pm-stage-detail{ border-top:1px solid var(--divider-color); padding-top:22px; margin-top:18px; font-size:14px; line-height:1.72; }
.pm-stage-detail strong{ color:#7d1025; }

.pm-freehold{ background:#040618; border-radius:32px; overflow:hidden; }
.pm-freehold-content{ padding:55px; }
.pm-freehold .pm-kicker{ color:#e1bd83; }
.pm-freehold h2{ color:#fff; font-size:42px; line-height:1.12; margin-bottom:20px; }
.pm-freehold p{ color:rgba(255,255,255,.72); line-height:1.75; }
.pm-freehold-list{ display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.pm-freehold-list span{ padding:9px 13px; border-radius:100px; border:1px solid rgba(255,255,255,.16); color:#fff; font-size:13px; }

.pm-cta{
    position:relative; overflow:hidden; border-radius:32px; padding:64px;
    background:linear-gradient(135deg,#6a0a20 0%,#86142d 55%,#b89053 140%);
}
.pm-cta::after{ content:''; position:absolute; width:330px; height:330px; border-radius:50%; border:1px solid rgba(255,255,255,.15); right:-100px; top:-100px; box-shadow:0 0 0 65px rgba(255,255,255,.04),0 0 0 130px rgba(255,255,255,.025); }
.pm-cta-content{ position:relative; z-index:2; max-width:760px; }
.pm-cta h2{ color:#fff; font-size:48px; margin-bottom:16px; }
.pm-cta p{ color:rgba(255,255,255,.82); font-size:18px; line-height:1.7; }
.pm-contact-line{ display:flex; gap:20px; flex-wrap:wrap; margin-top:24px; }
.pm-contact-line a{ color:#fff; font-weight:600; display:inline-flex; gap:8px; align-items:center; }
.pm-contact-line i{ color:#e1bd83; }

@media (max-width: 1199px){
    .pm-highlights{ grid-template-columns:repeat(2,1fr); }
    .pm-highlight:nth-child(2)::after{ display:none; }
    .pm-highlight:nth-child(-n+2){ border-bottom:1px solid var(--divider-color); }
}
@media (max-width: 991px){
    .pm-hero{ min-height:660px; border-radius:0; background-position:66% center; }
    .pm-hero .container{ padding-top:120px; }
    .pm-hero h1{ font-size:52px; }
    .pm-image-card{ min-height:440px; margin-top:35px; }
    .pm-why-grid{ grid-template-columns:1fr; }
    .pm-freehold-content{ padding:40px; }
}
@media (max-width: 767px){
    .pm-hero{ min-height:620px; background-image:linear-gradient(90deg,rgba(4,6,24,.9),rgba(4,6,24,.55)), url('../images/img/project-management-hero-ai.jpg'); }
    .pm-hero .container{ padding-top:100px; }
    .pm-hero h1{ font-size:42px; letter-spacing:-1.3px; }
    .pm-hero p{ font-size:16px; }
    .pm-highlights-wrap{ margin-top:-35px; }
    .pm-highlights{ grid-template-columns:1fr; }
    .pm-highlight{ padding:23px 20px; }
    .pm-highlight::after{ display:none !important; }
    .pm-highlight:not(:last-child){ border-bottom:1px solid var(--divider-color); }
    .pm-section{ padding:65px 0; }
    .pm-heading{ font-size:34px; letter-spacing:-1px; }
    .pm-lead{ font-size:16px; }
    .pm-stage{ padding:27px 22px; }
    .pm-stage h3{ font-size:23px; }
    .pm-freehold{ border-radius:22px; }
    .pm-freehold-content{ padding:30px 24px; }
    .pm-freehold h2{ font-size:31px; }
    .pm-cta{ padding:40px 25px; border-radius:22px; }
    .pm-cta h2{ font-size:34px; }
}
