html { scroll-behavior: smooth; }

body {
    padding-top: 88px;
    font-size: 16px;
    line-height: 1.6;
}

.navbar-brand {
    display: flex;
    align-items: center;
    height: 80px;
    padding: 10px 15px;
    white-space: nowrap;
}

.navbar-brand img {
    display: block;
    width: auto;
    height: 56px;
    max-width: 250px;
    object-fit: contain;
}

section { scroll-margin-top: 95px; }

.navbar-fixed-top { min-height: 80px; }

#mainArea { margin-top: -88px; }

.gpc-section-spacer {
    padding-top: 90px;
    padding-bottom: 80px;
}

.gpc-kicker {
    display: inline-block;
    margin-bottom: 8px;
    color: #c74f4a;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.gpc-section-title {
    margin-top: 0;
    font-size: 42px;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.gpc-section-intro {
    max-width: 760px;
    margin: 0 auto 45px auto;
}

.gpc-section-subtitle {
    margin: 18px auto 0 auto;
    max-width: 980px;
    color: #8a5a44;
    font-size: 27px;
    line-height: 1.35;
    text-transform: none;
}



.gpc-lang-ribbon {
    position: fixed;
    top: 80px;
    right: 18px;
    z-index: 1040;
}

.gpc-lang-ribbon a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,.92);
    color: #3a261f;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .3px;
    box-shadow: 0 8px 20px rgba(0,0,0,.14);
    border: 1px solid rgba(58,38,31,.12);
}

.gpc-lang-ribbon a:hover {
    text-decoration: none;
    background: #ffffff;
    color: #c74f4a;
}

@media (max-width: 767px) {
    .gpc-lang-ribbon {
        top: 70px;
        right: 10px;
    }
    .gpc-lang-ribbon a {
        font-size: 11px;
        padding: 6px 10px;
    }
}

/* LANGUAGE ACCESS */
.gpc-lang-link span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.gpc-lang-flag {
    display: inline-flex;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    font-size: 13px;
    line-height: 1;
    box-shadow: 0 2px 8px rgba(0,0,0,0.16);
}

/* HERO STATIQUE */
#mainArea {
    width: 100%;
    height: 720px;
    overflow: hidden;
}

.gpc-hero-slide {
    position: relative;
    width: 100%;
    height: 720px;
    overflow: hidden;
}

.gpc-hero-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
}

.gpc-hero-overlay {
    position: absolute;
    inset: 0;
    background: rgba(255,255,255,0.34);
    z-index: 1;
}

.gpc-hero-slide .jumbotron {
    position: relative;
    z-index: 2;
    top: 50%;
    transform: translateY(-50%);
    margin: 0 auto;
}

.gpc-hero-slide .banner_header,
.gpc-hero-slide h1.banner_header,
.gpc-hero-slide p.banner_header {
    color: #3a261f !important;
    text-shadow: 0 2px 8px rgba(255,255,255,0.75);
}

.gpc-hero-slide .btn-outline-inverse {
    color: #3a261f !important;
    border: 2px solid #3a261f !important;
    background: transparent;
    letter-spacing: 0.5px;
    padding: 12px 26px;
    transition: all 0.3s ease;
}

.gpc-hero-slide .btn-outline-inverse:hover {
    color: #ffffff !important;
    background: #3a261f;
    box-shadow: 0 8px 20px rgba(58,38,31,0.25);
}

/* IMPACT VISUAL */
.gpc-impact-visual {
    width: 100%;
    max-width: 560px;
    margin: 0 auto 32px auto;
    border-radius: 16px;
    overflow: hidden;
    border: 1px solid rgba(0,0,0,0.08);
    box-shadow: 0 14px 36px rgba(0,0,0,0.14);
    background: #ffffff;
}

.gpc-impact-visual img {
    width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center center;
    display: block;
}

.gpc-impact-row {
    margin-top: 32px;
}

/* SALES PITCH VS INVESTOR PITCH */
.gpc-pitch-compare {
    background: linear-gradient(180deg, #ffffff 0%, #f8f4f0 100%);
}

.gpc-pitch-compare-row {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
}

.gpc-pitch-compare-row > [class*="col-"] {
    display: flex;
    margin-bottom: 30px;
}

.gpc-pitch-card {
    position: relative;
    width: 100%;
    padding: 42px 38px 38px 38px;
    background: #ffffff;
    border: 1px solid rgba(58, 38, 31, 0.14);
    border-top: 5px solid #8a5a44;
    border-radius: 22px;
    box-shadow: 0 20px 50px rgba(58, 38, 31, 0.12);
    text-align: left;
    transition: all 0.3s ease;
    overflow: hidden;
}

.gpc-pitch-card:before {
    content: "";
    position: absolute;
    top: -80px;
    right: -80px;
    width: 180px;
    height: 180px;
    background: rgba(199, 79, 74, 0.08);
    border-radius: 50%;
}

.gpc-pitch-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 28px 60px rgba(58, 38, 31, 0.18);
}

.gpc-pitch-card-investor {
    border-top-color: #c74f4a;
    background: #fffaf7;
}

.gpc-pitch-icon {
    position: relative;
    width: 72px;
    height: 72px;
    border-radius: 20px;
    background: #3a261f;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    margin-bottom: 26px;
    box-shadow: 0 12px 26px rgba(58, 38, 31, 0.25);
    z-index: 1;
}

.gpc-pitch-card-investor .gpc-pitch-icon {
    background: #8a3d38;
}

.gpc-pitch-card h3 {
    position: relative;
    color: #3a261f;
    font-size: 28px;
    font-weight: 800;
    margin-top: 0;
    margin-bottom: 14px;
    z-index: 1;
}

.gpc-pitch-chapo {
    position: relative;
    color: #8a5a44;
    font-size: 17px;
    line-height: 1.6;
    font-weight: 700;
    margin-bottom: 20px;
    z-index: 1;
}

.gpc-pitch-card p {
    position: relative;
    color: #443832;
    font-size: 16px;
    line-height: 1.75;
    z-index: 1;
}

.gpc-pitch-list {
    position: relative;
    padding-left: 0;
    margin: 18px 0 22px 0;
    list-style: none;
    z-index: 1;
}

.gpc-pitch-list li {
    position: relative;
    padding-left: 28px;
    margin-bottom: 9px;
    color: #443832;
    font-size: 16px;
    line-height: 1.5;
}

.gpc-pitch-list li:before {
    content: "\f00c";
    font-family: FontAwesome;
    position: absolute;
    left: 0;
    top: 1px;
    color: #c74f4a;
    font-size: 14px;
}

/* EXPERTISE */
.gpc-expertise-card {
    text-align: center;
    margin-bottom: 35px;
}

.gpc-expertise-visual {
    position: relative;
    height: 245px;
    max-width: 360px;
    margin: 0 auto 22px auto;
    padding: 14px;
    border-radius: 12px;
    overflow: hidden;
    background: linear-gradient(145deg, #ffffff, #f4f4f4);
    border: 1px solid rgba(0,0,0,0.08);
    box-shadow: 0 12px 28px rgba(0,0,0,0.10);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.35s ease;
}

.gpc-expertise-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
    display: block;
    transition: transform 0.4s ease;
    z-index: 1;
}

.gpc-expertise-visual:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 42px rgba(0,0,0,0.16);
}

.gpc-expertise-visual:hover img {
    transform: scale(1.035);
}

/* LOGOS */
.gpc-logo-strip {
    max-width: 920px;
    margin: 0 auto;
    padding: 22px 18px;
    background: #ffffff;
    border-radius: 14px;
    border: 1px solid rgba(0,0,0,0.06);
    box-shadow: 0 12px 30px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
}

.gpc-logo-strip img {
    width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
    opacity: 0.95;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.gpc-logo-strip:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 40px rgba(0,0,0,0.12);
}

.gpc-logo-strip:hover img {
    opacity: 1;
    transform: scale(1.01);
}

.gpc-reference-strip {
    max-width: 1080px;
    padding: 24px;
}

/* AUDIENCE */
.gpc-audience-section { background: #f7f7f7; }

.gpc-audience-row { margin-top: 20px; }

.gpc-audience-card { margin-bottom: 35px; }

.gpc-audience-visual {
    height: 245px;
    width: 100%;
    margin: 0 auto 25px auto;
    padding: 8px;
    border-radius: 14px;
    background: #fff;
    border: 1px solid rgba(0,0,0,0.08);
    box-shadow: 0 12px 30px rgba(0,0,0,0.10);
    overflow: hidden;
}

.gpc-audience-visual img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
    display: block;
    transition: transform 0.35s ease;
}

.gpc-audience-visual:hover img {
    transform: scale(1.04);
}

.gpc-audience-card h3 {
    min-height: 64px;
    margin-top: 0;
    color: #c74f4a;
    font-size: 28px;
    line-height: 1.15;
}

.gpc-audience-card p {
    font-size: 17px;
    line-height: 1.55;
}

/* CONTACT */
.gpc-contact-visual {
    width: 100%;
    max-width: 460px;
    height: 360px;
    max-height: none;
    margin: 0 auto;
    border-radius: 14px;
    border: 1px solid rgba(0,0,0,0.08);
    box-shadow: 0 14px 36px rgba(0,0,0,0.14);
    background: #fff;
    padding: 18px 22px 0;
    object-fit: contain;
    object-position: center bottom;
}

@media (max-width: 767px) {
    .gpc-contact-visual {
        max-width: 420px;
        height: 330px;
        margin-bottom: 32px;
        padding: 14px 16px 0;
    }
}


/* RESOURCES */
.gpc-resources-section {
    background: linear-gradient(180deg, #ffffff 0%, #f8f4f0 100%);
}

.gpc-resources-row {
    margin-top: 20px;
}

.gpc-resource-card {
    position: relative;
    min-height: 285px;
    margin-bottom: 30px;
    padding: 34px 28px 30px 28px;
    border-radius: 20px;
    background: #ffffff;
    border: 1px solid rgba(58,38,31,0.12);
    box-shadow: 0 16px 40px rgba(58,38,31,0.10);
    text-align: left;
    transition: all 0.3s ease;
    overflow: hidden;
}

.gpc-resource-card:before {
    content: "";
    position: absolute;
    top: -70px;
    right: -70px;
    width: 155px;
    height: 155px;
    border-radius: 50%;
    background: rgba(199,79,74,0.08);
}

.gpc-resource-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 24px 55px rgba(58,38,31,0.16);
}

.gpc-resource-icon {
    position: relative;
    width: 62px;
    height: 62px;
    margin-bottom: 22px;
    border-radius: 18px;
    background: #3a261f;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 26px;
    box-shadow: 0 12px 28px rgba(58,38,31,0.22);
    z-index: 1;
}

.gpc-resource-card h3 {
    position: relative;
    margin-top: 0;
    margin-bottom: 12px;
    color: #3a261f;
    font-size: 24px;
    font-weight: 800;
    z-index: 1;
}

.gpc-resource-card p {
    position: relative;
    color: #443832;
    font-size: 16px;
    line-height: 1.7;
    z-index: 1;
}

.gpc-resource-link {
    position: relative;
    display: inline-block;
    margin-top: 10px;
    color: #c74f4a;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .8px;
    font-size: 12px;
    z-index: 1;
}

.gpc-resource-link:hover {
    color: #3a261f;
    text-decoration: none;
}

.gpc-guides-banner {
    margin-top: 28px;
    padding: 42px 44px;
    border: 1px solid rgba(58,38,31,0.12);
    border-left: 6px solid #a00000;
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 18px 45px rgba(58,38,31,0.12);
    overflow: hidden;
}

.gpc-guides-banner > .row {
    display: flex;
    align-items: center;
}

.gpc-guides-covers {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 24px;
}

.gpc-guide-cover {
    flex: 0 1 46%;
    margin: 0;
    text-align: center;
}

.gpc-guide-cover a {
    display: block;
}

.gpc-guide-cover img {
    display: block;
    width: 100%;
    max-width: 190px;
    height: 260px;
    margin: 0 auto;
    object-fit: contain;
    filter: drop-shadow(0 14px 18px rgba(28,20,17,0.22));
    transition: transform 0.3s ease, filter 0.3s ease;
}

.gpc-guide-cover a:hover img,
.gpc-guide-cover a:focus img {
    transform: translateY(-5px);
    filter: drop-shadow(0 18px 22px rgba(28,20,17,0.28));
}

.gpc-guide-cover figcaption {
    margin-top: 14px;
    color: #3a261f;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.35;
}

.gpc-guides-copy {
    padding-left: 38px;
    text-align: left;
}

.gpc-guides-label {
    display: inline-block;
    margin-bottom: 10px;
    color: #a00000;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.gpc-guides-copy h3 {
    margin: 0 0 16px;
    color: #3a261f;
    font-size: 30px;
    font-weight: 800;
    line-height: 1.2;
}

.gpc-guides-copy p {
    margin-bottom: 24px;
    color: #443832;
    font-size: 17px;
    line-height: 1.7;
}

.gpc-guides-copy .btn {
    white-space: normal;
}

@media (max-width: 991px) {
    .gpc-pitch-compare-row {
        display: block;
    }

    .gpc-pitch-compare-row > [class*="col-"] {
        display: block;
    }

    .gpc-pitch-card {
        margin-bottom: 24px;
    }

    .gpc-guides-banner > .row {
        display: block;
    }

    .gpc-guides-copy {
        padding-left: 15px;
        margin-top: 36px;
        text-align: center;
    }
}

@media (min-width: 768px) and (max-width: 1199px) {
    .navbar-brand {
        padding-left: 5px;
        padding-right: 8px;
        font-size: 14px;
    }

    .navbar-nav > li > a {
        padding-left: 7px;
        padding-right: 7px;
        font-size: 12px;
    }
}

@media (max-width: 767px) {
    body { padding-top: 70px; }

    .gpc-guides-banner {
        padding: 32px 22px;
    }

    .gpc-guides-covers {
        gap: 14px;
    }

    .gpc-guide-cover img {
        height: 220px;
    }

    .gpc-guides-copy h3 {
        font-size: 25px;
    }

    #mainArea { margin-top: -70px; }

    #mainArea,
    .gpc-hero-slide {
        height: 560px;
    }

    .gpc-section-spacer {
        padding-top: 70px;

        padding-bottom: 60px;
    }

    .gpc-section-title { font-size: 32px; }

    .gpc-section-subtitle { font-size: 22px; }

    .gpc-impact-row .col-md-5 {
        margin-top: 32px;
    }

    .gpc-expertise-visual,
    .gpc-audience-visual {
        height: 220px;
    }

    .gpc-audience-card h3 {
        min-height: auto;
    }

    .navbar-brand {
        max-width: calc(100vw - 82px);
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

/* CHARTE PRÉSENTATIONS COMMERCIALES GAGNANTES */
:root {
    --pcg-bordeaux: #5b0b21;
    --pcg-bordeaux-dark: #360612;
    --pcg-blood: #8b0000;
    --pcg-blood-bright: #a50021;
    --pcg-black: #111111;
    --pcg-charcoal: #303030;
    --pcg-grey: #666666;
    --pcg-grey-light: #e5e5e5;
    --pcg-grey-pale: #f5f5f5;
    --pcg-white: #ffffff;
}

html,
body,
button,
input,
select,
textarea,
h1, h2, h3, h4, h5, h6,
.navbar,
.btn,
.label,
blockquote,
cite {
    font-family: Arial, Helvetica, sans-serif !important;
}

body {
    color: var(--pcg-charcoal);
    background: var(--pcg-white);
}

a { color: var(--pcg-blood); }
a:hover,
a:focus { color: var(--pcg-bordeaux); }

.navbar-inverse {
    background: var(--pcg-white) !important;
    border: 0 !important;
    border-bottom: 3px solid var(--pcg-bordeaux) !important;
    box-shadow: 0 8px 24px rgba(17,17,17,.12);
}

#footerArea {
    background: var(--pcg-black) !important;
    border-color: var(--pcg-bordeaux) !important;
}

.navbar-inverse .navbar-nav > li > a {
    padding-top: 29px;
    padding-bottom: 28px;
    padding-left: 8px;
    padding-right: 8px;
    color: var(--pcg-black) !important;
    font-size: 13px;
    font-weight: 700;
}

#footerArea,
#footerArea a {
    color: var(--pcg-white) !important;
}

.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:focus,
#footerArea a:hover {
    color: var(--pcg-blood) !important;
}

#footerArea .logo-bottom {
    display: flex;
    justify-content: center;
    margin: 0 auto 20px;
}

#footerArea .logo-bottom a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: min(100%, 640px);
    padding: 12px 18px;
    background: var(--pcg-white);
    border-radius: 10px;
    transition: transform .2s ease, box-shadow .2s ease;
}

#footerArea .logo-bottom a:hover,
#footerArea .logo-bottom a:focus {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(0,0,0,.28);
}

#footerArea .logo-bottom img {
    display: block;
    width: 100%;
    max-width: 609px;
    height: auto;
}

@media (max-width: 767px) {
    #footerArea .logo-bottom a {
        width: 100%;
        padding: 9px 12px;
    }
}

.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:focus {
    background: var(--pcg-grey-pale) !important;
}

.navbar-inverse .navbar-toggle {
    border-color: var(--pcg-blood) !important;
}

.navbar-inverse .navbar-toggle:hover,
.navbar-inverse .navbar-toggle:focus,
.navbar-inverse .navbar-toggle .icon-bar {
    background-color: var(--pcg-blood) !important;
}

.gpc-kicker,
.gpc-audience-card h3,
.gpc-resource-link,
.gpc-pitch-list li:before {
    color: var(--pcg-blood) !important;
}

.gpc-section-title,
.gpc-pitch-card h3,
.gpc-resource-card h3 {
    color: var(--pcg-black) !important;
}

.gpc-section-subtitle,
.gpc-pitch-chapo {
    color: var(--pcg-bordeaux) !important;
}

.gpc-pitch-card p,
.gpc-pitch-list li,
.gpc-resource-card p {
    color: var(--pcg-charcoal) !important;
}

.gpc-pitch-compare,
.gpc-resources-section {
    background: linear-gradient(180deg, var(--pcg-white) 0%, var(--pcg-grey-pale) 100%) !important;
}

.gpc-audience-section { background: var(--pcg-grey-pale) !important; }

.gpc-pitch-card,
.gpc-resource-card,
.gpc-logo-strip,
.gpc-expertise-visual,
.gpc-audience-visual,
.gpc-impact-visual,
.gpc-contact-visual {
    border-color: rgba(17,17,17,.14) !important;
    box-shadow: 0 16px 38px rgba(0,0,0,.12) !important;
}

.gpc-pitch-card { border-top-color: var(--pcg-bordeaux) !important; }
.gpc-pitch-card-investor { border-top-color: var(--pcg-blood) !important; background: #fafafa !important; }
.gpc-pitch-card:before,
.gpc-resource-card:before { background: rgba(139,0,0,.08) !important; }

.gpc-pitch-icon,
.gpc-resource-icon {
    color: var(--pcg-white) !important;
    background: var(--pcg-black) !important;
    box-shadow: 0 12px 28px rgba(0,0,0,.24) !important;
}

.gpc-pitch-card-investor .gpc-pitch-icon { background: var(--pcg-blood) !important; }

.hline,
.btn-primary,
.label-success {
    color: var(--pcg-white) !important;
    background-color: var(--pcg-blood) !important;
    border-color: var(--pcg-blood) !important;
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--pcg-bordeaux) !important;
    border-color: var(--pcg-bordeaux-dark) !important;
}

.gpc-hero-overlay {
    background: linear-gradient(90deg, rgba(255,255,255,.90) 0%, rgba(255,255,255,.68) 52%, rgba(54,6,18,.22) 100%);
}

.gpc-hero-slide .banner_header,
.gpc-hero-slide h1.banner_header,
.gpc-hero-slide p.banner_header {
    color: var(--pcg-black) !important;
    text-shadow: 0 2px 8px rgba(255,255,255,.82);
}

.gpc-hero-slide .btn-outline-inverse {
    color: var(--pcg-white) !important;
    background: var(--pcg-blood) !important;
    border-color: var(--pcg-blood) !important;
}

.gpc-hero-slide .btn-outline-inverse:hover,
.gpc-hero-slide .btn-outline-inverse:focus {
    color: var(--pcg-white) !important;
    background: var(--pcg-black) !important;
    border-color: var(--pcg-black) !important;
}

#testimonialArea {
    color: var(--pcg-white);
    background: linear-gradient(135deg, var(--pcg-bordeaux-dark), var(--pcg-bordeaux) 56%, var(--pcg-blood));
}

#testimonialArea h2,
#testimonialArea .gpc-kicker { color: var(--pcg-white) !important; }

.gpc-method-grid { margin-top: 42px; }

.gpc-method-card {
    min-height: 230px;
    margin: 0 0 30px;
    padding: 32px 26px;
    color: var(--pcg-charcoal);
    background: var(--pcg-white);
    border: 0;
    border-top: 5px solid var(--pcg-blood);
    border-radius: 12px;
    box-shadow: 0 16px 38px rgba(0,0,0,.24);
}

.gpc-method-card footer { color: var(--pcg-grey); }
.gpc-method-card cite { color: var(--pcg-blood); }

/* PASSERELLES VERS LES SITES CONJOINTS */
.gpc-ecosystem-section {
    background: var(--pcg-grey-pale);
    border-top: 1px solid var(--pcg-grey-light);
}

.gpc-ecosystem-row {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    margin-top: 34px;
}

.gpc-ecosystem-row > [class*="col-"] {
    display: flex;
    margin-bottom: 30px;
}

.gpc-ecosystem-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 34px;
    background: var(--pcg-white);
    border: 1px solid rgba(17,17,17,.12);
    border-top: 5px solid var(--pcg-bordeaux);
    border-radius: 16px;
    box-shadow: 0 16px 38px rgba(0,0,0,.10);
    text-align: left;
    transition: transform .25s ease, box-shadow .25s ease;
}

.gpc-ecosystem-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 22px 46px rgba(0,0,0,.15);
}

.gpc-ecosystem-card-master { border-top-color: var(--pcg-blood); }

.gpc-ecosystem-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 260px;
    margin-bottom: 28px;
    padding: 24px 28px;
    background: linear-gradient(180deg, var(--pcg-white) 0%, #fafafa 100%);
    border-bottom: 1px solid var(--pcg-grey-light);
    border-radius: 10px;
}

.gpc-ecosystem-logo img {
    display: block;
    width: auto;
    max-width: 100%;
    max-height: 220px;
    object-fit: contain;
}

.gpc-ecosystem-logo img[alt="Global Pitch Coach"] {
    width: 95%;
    max-width: 540px;
    height: auto;
    max-height: none;
}

.gpc-ecosystem-logo img[alt="Face-Client"] {
    width: auto;
    height: 220px;
    max-height: 220px;
}

.gpc-ecosystem-label {
    display: inline-block;
    align-self: flex-start;
    margin-bottom: 12px;
    color: var(--pcg-blood);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.gpc-ecosystem-card h3 {
    margin: 0 0 12px;
    color: var(--pcg-black);
    font-size: 27px;
    font-weight: 800;
}

.gpc-ecosystem-card p {
    flex-grow: 1;
    margin-bottom: 24px;
    color: var(--pcg-charcoal);
    font-size: 17px;
    line-height: 1.65;
}

.gpc-ecosystem-link {
    align-self: flex-start;
    color: var(--pcg-white) !important;
    background: var(--pcg-blood);
    border: 2px solid var(--pcg-blood);
    border-radius: 4px;
    padding: 11px 18px;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .3px;
}

.gpc-ecosystem-link:hover,
.gpc-ecosystem-link:focus {
    color: var(--pcg-white) !important;
    background: var(--pcg-black);
    border-color: var(--pcg-black);
    text-decoration: none;
}

.gpc-lang-ribbon a {
    color: var(--pcg-black) !important;
    background: rgba(255,255,255,.94) !important;
    border-color: rgba(91,11,33,.20) !important;
}

.gpc-lang-ribbon a:hover,
.gpc-lang-ribbon a:focus { color: var(--pcg-blood) !important; }

.btn-default {
    color: var(--pcg-black) !important;
    background: var(--pcg-white) !important;
    border-color: var(--pcg-grey) !important;
}

.btn-default:hover,
.btn-default:focus {
    color: var(--pcg-white) !important;
    background: var(--pcg-black) !important;
    border-color: var(--pcg-black) !important;
}

.progress-bar-danger { background-color: var(--pcg-blood) !important; }
.progress-bar-info { background-color: var(--pcg-bordeaux) !important; }
.progress-bar-success { background-color: var(--pcg-charcoal) !important; }
.progress-bar-warning { background-color: var(--pcg-grey) !important; }

.i-overlay,
.icon2 { color: var(--pcg-white) !important; background-color: var(--pcg-blood) !important; }

#factsArea,
#twitterArea {
    color: var(--pcg-white);
    background-color: var(--pcg-black) !important;
}

#factsArea h2,
#twitterArea h2,
#factsArea .gpc-kicker,
#twitterArea .gpc-kicker { color: var(--pcg-white) !important; }

.gpc-lang-ribbon { display: none !important; }

@media (min-width: 1200px) {
    body { padding-top: 92px; }

    section { scroll-margin-top: 100px; }

    .navbar-fixed-top {
        min-height: 92px;
        height: 92px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #mainArea { margin-top: 0 !important; }

    .navbar-fixed-top > .container {
        display: flex;
        align-items: center;
        height: 89px;
    }

    .navbar-header {
        flex: 0 0 auto;
        float: none;
        height: 89px;
    }

    .navbar-brand {
        height: 89px;
        padding: 9px 12px 8px 0;
    }

    .navbar-brand img {
        width: auto;
        height: 72px;
        max-width: 245px;
    }

    .navbar-inverse .navbar-collapse {
        position: static;
        display: flex !important;
        flex: 1 1 auto;
        justify-content: flex-end;
        float: none !important;
        width: auto;
        height: auto !important;
        padding: 0;
        border: 0;
    }

    .navbar-inverse .navbar-nav {
        display: flex;
        align-items: center;
        float: none !important;
        width: auto;
        margin: 0;
    }

    .navbar-inverse .navbar-nav > li { float: none; }

    .navbar-inverse .navbar-nav > li > a {
        padding: 35px 6px 34px;
        font-size: 12px;
        white-space: nowrap;
    }
}

@media (min-width: 768px) and (max-width: 1199px) {
    body { padding-top: 158px; }

    section { scroll-margin-top: 166px; }

    .navbar-fixed-top {
        min-height: 158px;
        height: 158px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #mainArea { margin-top: 0 !important; }

    .navbar-fixed-top > .container {
        position: relative;
        height: 155px;
    }

    .navbar-header {
        float: none;
        height: 86px;
    }

    .navbar-brand {
        height: 86px;
        padding: 7px 5px;
    }

    .navbar-brand img {
        width: auto;
        height: 72px;
        max-width: 245px;
    }

    .navbar-inverse .navbar-collapse {
        position: absolute;
        top: 96px;
        right: 15px;
        left: 15px;
        display: block !important;
        height: 59px !important;
        padding: 0;
        border: 0;
    }

    .navbar-inverse .navbar-nav {
        display: flex;
        float: none !important;
        justify-content: center;
        width: 100%;
        margin: 0;
    }

    .navbar-inverse .navbar-nav > li { float: none; }

    .navbar-inverse .navbar-nav > li > a {
        padding: 20px 5px;
        font-size: 11px;
        white-space: nowrap;
    }
}

@media (max-width: 767px) {
    .navbar-fixed-top {
        min-height: 70px;
        height: 70px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #mainArea { margin-top: 0 !important; }

    .navbar-brand {
        width: calc(100vw - 78px);
        height: 70px;
        padding: 9px 12px;
    }

    .navbar-brand img {
        width: auto;
        height: 48px;
        max-width: 100%;
    }

    .navbar-toggle { margin-top: 17px; }

    .navbar-inverse .navbar-collapse {
        background: var(--pcg-white);
        border-color: var(--pcg-grey-light);
        box-shadow: 0 12px 20px rgba(17,17,17,.12);
    }

    .navbar-inverse .navbar-nav > li > a {
        padding-top: 12px;
        padding-bottom: 12px;
    }

    .gpc-ecosystem-row,
    .gpc-ecosystem-row > [class*="col-"] {
        display: block;
    }

    .gpc-ecosystem-card { padding: 26px 22px; }
    .gpc-ecosystem-logo {
        height: 200px;
        padding: 20px;
    }

    .gpc-ecosystem-logo img { max-height: 160px; }

    .gpc-ecosystem-logo img[alt="Global Pitch Coach"] {
        width: 100%;
        max-width: 430px;
        height: auto;
    }

    .gpc-ecosystem-logo img[alt="Face-Client"] {
        width: auto;
        height: 160px;
        max-height: 160px;
    }
}

/* Accès à la page-pilier du guide : entrée de navigation et invitation éditoriale. */
.navbar-inverse .navbar-nav > li > a.gpc-guide-nav {
    color: #8b0000 !important;
    font-weight: 800;
}

.navbar-inverse .navbar-nav > li > a.gpc-guide-nav:hover,
.navbar-inverse .navbar-nav > li > a.gpc-guide-nav:focus {
    color: #590d18 !important;
}

.gpc-guide-preview {
    display: flex;
    align-items: center;
    gap: 32px;
    margin-top: 24px;
    padding: 28px 36px;
    border-radius: 18px;
    background: #641823;
    color: #ffffff;
    box-shadow: 0 14px 32px rgba(65, 13, 24, .16);
    text-align: left;
}

.gpc-guide-preview-count {
    flex: 0 0 175px;
    color: #ffffff;
    font-size: 74px;
    font-weight: 800;
    line-height: .85;
    letter-spacing: -5px;
}

.gpc-guide-preview-count span {
    display: block;
    margin-top: 14px;
    font-size: 14px;
    line-height: 1.35;
    letter-spacing: .5px;
    text-transform: uppercase;
}

.gpc-guide-preview-label {
    display: inline-block;
    margin-bottom: 8px;
    color: #f3c8c7;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.1px;
    text-transform: uppercase;
}

.gpc-guide-preview h3 {
    margin: 0 0 10px;
    color: #ffffff !important;
    font-size: 27px;
    line-height: 1.25;
}

.gpc-guide-preview p {
    max-width: 750px;
    margin: 0 0 17px;
    color: #ffffff;
    font-size: 16px;
    line-height: 1.65;
}

.gpc-guide-preview-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    border: 2px solid #ffffff;
    border-radius: 6px;
    background: #ffffff;
    color: #641823;
    font-weight: 800;
    text-decoration: none;
}

.gpc-guide-preview-link:hover,
.gpc-guide-preview-link:focus {
    background: transparent;
    color: #ffffff;
    text-decoration: none;
}

@media (max-width: 767px) {
    .gpc-guide-preview { display: block; padding: 26px 24px; }
    .gpc-guide-preview-count { margin-bottom: 20px; font-size: 62px; }
    .gpc-guide-preview-count span { margin-top: 8px; }
    .gpc-guide-preview h3 { font-size: 24px; }
}
	
/* Sous-menus et menu responsive */
.navbar-nav .gpc-has-sub{position:relative}
.navbar-nav .gpc-sub{margin:0;padding:0;list-style:none}
.navbar-nav .gpc-sub li{float:none!important;margin:0!important;display:block;list-style:none}
.navbar-nav .gpc-sub a{display:block!important;float:none!important;padding:11px 18px!important;color:#111!important;font-size:13px!important;font-weight:700!important;line-height:1.3!important;white-space:nowrap;text-transform:none!important;letter-spacing:0!important;background:#fff!important;border-bottom:1px solid #eee}
.navbar-nav .gpc-sub a:hover,.navbar-nav .gpc-sub a:focus{color:#8b0000!important;background:#f7f2f2!important}
.navbar-nav .gpc-sub i.fa{display:inline-block!important;width:18px;margin-right:4px}
.navbar-nav .gpc-has-sub>a:after{content:" \25BE";font-size:10px}
.navbar-inverse .navbar-toggle{background:#fff!important}
.navbar-inverse .navbar-toggle .icon-bar{background-color:#751b28!important}
.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background:#751b28!important}
.navbar-inverse .navbar-toggle:hover .icon-bar,.navbar-inverse .navbar-toggle:focus .icon-bar{background-color:#fff!important}
@media (min-width:1200px){
  .navbar-nav .gpc-sub{display:none;position:absolute;top:100%;left:0;min-width:210px;border-top:2px solid #5b0b21;box-shadow:0 12px 20px rgba(0,0,0,.16);z-index:1100}
  .navbar-nav .gpc-has-sub:hover>.gpc-sub,.navbar-nav .gpc-has-sub:focus-within>.gpc-sub{display:block}
}
@media (max-width:1199px){
  body{padding-top:70px!important}
  section{scroll-margin-top:78px!important}
  .navbar-fixed-top{min-height:70px!important;height:70px!important;margin:0!important;padding:0!important}
  .navbar-fixed-top>.container{position:static!important;display:block!important;height:70px!important;width:100%!important;padding:0!important}
  #mainArea{margin-top:0!important}
  .navbar-header{float:none!important;height:70px!important;display:flex!important;align-items:center;justify-content:space-between;margin:0!important}
  .navbar-brand{width:auto!important;max-width:calc(100vw - 82px)!important;height:70px!important;padding:9px 12px!important;margin:0!important;float:none!important}
  .navbar-brand img{max-width:240px!important;height:auto!important;max-height:48px!important}
  .navbar-toggle{display:block!important;float:none!important;order:2;margin:0 15px 0 0!important}
  .navbar-brand{order:1}
  .navbar-inverse .navbar-collapse{position:absolute!important;top:70px!important;left:0!important;right:0!important;display:none!important;float:none!important;width:auto!important;height:auto!important;max-height:calc(100vh - 70px);overflow-y:auto;padding:6px 0!important;border:0!important;border-bottom:2px solid #5b0b21!important;background:#fff!important;box-shadow:0 12px 20px rgba(17,17,17,.14)}
  .navbar-inverse .navbar-collapse.in{display:block!important}
  .navbar-inverse .navbar-nav{display:block!important;float:none!important;width:100%!important;margin:0!important}
  .navbar-inverse .navbar-nav>li{float:none!important;margin:0!important;display:block}
  .navbar-inverse .navbar-nav>li>a{padding:12px 24px!important;font-size:14px!important;text-align:left;white-space:normal!important}
  .navbar-nav>li>a i.fa{display:inline-block!important}
  .navbar-nav .gpc-has-sub>a:after{content:""}
  .navbar-nav .gpc-sub{display:block;position:static;border:0;box-shadow:none;background:transparent}
  .navbar-nav .gpc-sub a{padding:9px 24px 9px 52px!important;background:transparent!important;border:0;font-size:14px!important}
}
.vg-nav-cta{background:#c3544e;color:#fff!important;border-radius:999px;padding:10px 18px!important;display:inline-block;margin:8px 0 8px 10px}.vg-nav-cta:hover{background:#a8443f;color:#fff!important}.evg-nav-cta>a.vg-nav-cta{margin-top:8px}@media(max-width:767px){.vg-nav-cta{margin:8px 0}}
  .pcg-foot, .pcg-foot * { box-sizing: border-box; }
  .pcg-foot { font-family: inherit; color: #202025; line-height: 1.5; text-align: left; }
  .pcg-foot a { text-decoration: none; }
  .pcg-foot__eco { background: #f4f1f0; border-top: 1px solid #e5dbda; padding: 44px 0; }
  .pcg-foot__inner { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
  .pcg-foot__eco .pcg-foot__inner { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(0,1fr) minmax(0,1fr); gap: 26px; align-items: stretch; }
  .pcg-foot__kicker { display: block; margin: 0 0 8px; color: #8b0000; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
  .pcg-foot__intro h2 { margin: 0 0 12px; color: #111; font-size: clamp(22px, 2.2vw, 28px); font-weight: 800; line-height: 1.2; text-transform: none; letter-spacing: 0; }
  .pcg-foot__intro p { margin: 0; color: #444; font-size: 14.5px; }
  .pcg-foot__card { display: flex; flex-direction: column; align-items: flex-start; padding: 22px 24px; background: #fff; border: 1px solid #e5dbda; border-top: 4px solid #751b28; border-radius: 12px; box-shadow: 0 8px 22px rgba(43,17,16,.07); }
  .pcg-foot__card--master { border-top-color: #b32632; }
  .pcg-foot__logo { display: flex; align-items: center; height: 68px; margin: 0 0 12px; }
  .pcg-foot__logo img { display: block; width: auto; max-width: 100%; max-height: 68px; height: auto; }
  .pcg-foot__label { display: block; margin: 0 0 4px; color: #8b0000; font-size: 11px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
  .pcg-foot__card h3 { margin: 0 0 8px; color: #111; font-size: 19px; font-weight: 800; line-height: 1.2; text-transform: none; }
  .pcg-foot__card p { margin: 0 0 16px; color: #444; font-size: 14px; flex: 1; }
  .pcg-foot__link { display: inline-block; padding: 9px 16px; background: #751b28; color: #fff !important; border-radius: 6px; font-size: 13px; font-weight: 800; }
  .pcg-foot__link:hover, .pcg-foot__link:focus { background: #54131e; }
  .pcg-foot__bar { background: #131315; color: #eee; padding: 18px 0; }
  .pcg-foot__bar .pcg-foot__inner { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 26px; }
  .pcg-foot__brand { justify-self: start; display: inline-flex; padding: 7px 12px; background: #fff; border-radius: 8px; }
  .pcg-foot__brand img { display: block; width: 210px; max-width: 100%; height: auto; }
  .pcg-foot__copy { margin: 0; color: #e8e8e8; font-size: 13px; line-height: 1.6; text-align: center; }
  .pcg-foot__nav { justify-self: end; justify-content: flex-end; display: flex; gap: 8px 18px; flex-wrap: wrap; font-size: 13px; }
  .pcg-foot__nav a { color: #fff !important; text-decoration: underline; text-underline-offset: 3px; }
  .pcg-foot__nav a:hover { color: #ffd0d4 !important; }
  @media (max-width: 991px) {
    .pcg-foot__eco .pcg-foot__inner { grid-template-columns: 1fr 1fr; }
    .pcg-foot__intro { grid-column: 1 / -1; }
  }
  @media (max-width: 900px) {
    .pcg-foot__bar .pcg-foot__inner { grid-template-columns: 1fr; justify-items: center; gap: 14px; }
    .pcg-foot__brand, .pcg-foot__nav { justify-self: center; justify-content: center; }
  }
  @media (max-width: 640px) {
    .pcg-foot__eco { padding: 32px 0; }
    .pcg-foot__eco .pcg-foot__inner { grid-template-columns: 1fr; }
    .pcg-foot__bar .pcg-foot__inner { grid-template-columns: 1fr; justify-items: center; gap: 14px; }
    .pcg-foot__brand, .pcg-foot__nav { justify-self: center; }
    .pcg-foot__nav { justify-content: center; }
  }
.pcg-qr{margin:0;display:flex;flex-direction:column;align-items:center;gap:6px;width:136px;flex:0 0 auto}.pcg-qr img{display:block;width:128px;height:128px;border-radius:6px;background:#fff}.pcg-qr figcaption{font-size:11px;line-height:1.35;color:#d8d8d8;text-align:center}.pcg-qr--center{margin:20px auto 0}.pcg-foot__side{justify-self:end;display:flex;align-items:center;justify-content:flex-end;gap:24px}.pcg-foot__side .pcg-foot__nav{justify-self:auto}@media (max-width:900px){.pcg-foot__side{justify-self:center;justify-content:center;flex-wrap:wrap;gap:16px}}
