.lfr-layout-structure-item-container {padding: 0;}.lfr-layout-structure-item-row {overflow: hidden;}.lfr-layout-structure-item-a0900f7e-9d90-d44d-01fb-443fca497d16 {
background-color: var(--gray-100) !important;
}
.lfr-layout-structure-item-0886ee54-a517-01de-25ef-47e2fa2b8e9d {
padding-bottom: var(--spacer-3,1rem) !important;
}
.lfr-layout-structure-item-578e5ed4-a466-4262-aef8-debd4671bd24 {
text-align: justify !important;
}
/* ════════════════════════════════════════════════════════
   PORTNET — À propos page layout
   Used by: apropos.html
   Requires: css/common.css (brand tokens + font)
   ════════════════════════════════════════════════════════ */

/* ── Hero (white, compact) ───────────────────────────── */
/* breadcrumb: use .page-breadcrumb from common.css       */
/* hero image: use .page-hero-img-wrap from common.css    */
.ap-hero-section { background: #fff; overflow: hidden; }
.ap-hero-title { font-size: clamp(1.9rem,4.5vw,3.2rem); font-weight: 900; color: var(--pn-blue); line-height: 1.1; }

/* ── Intro section ───────────────────────────────────── */
.ap-intro-section { background: var(--pn-bg); border-bottom: 1px solid rgba(0,0,0,.04); }
.ap-intro-chip { display: inline-block; padding: .35rem 1rem; font-size: .72rem; font-weight: 700; color: var(--pn-blue); border: 1px solid rgba(35,42,86,.2); background: #fff; border-radius: 20px; text-transform: uppercase; letter-spacing: .08em; margin-bottom: 1.5rem; }
.ap-intro-text { font-size: .95rem; color: var(--pn-gray); line-height: 1.8; }
.btn-ap-portal { display: inline-flex; align-items: center; gap: .45rem; padding: .7rem 1.5rem; background: var(--pn-blue); color: #fff; font-weight: 700; font-size: .875rem; border-radius: 12px; text-decoration: none; box-shadow: 0 4px 14px rgba(35,42,86,.22); transition: opacity .2s; }
.btn-ap-portal:hover { opacity: .9; color: #fff; }

/* ── Vision quote (photo + overlay) ─────────────────── */
/* dot overlay: use .overlay-dots from common.css         */
.ap-vision-section { position: relative; overflow: hidden; }
.ap-vision-bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ap-vision-overlay { position: absolute; inset: 0; background: rgba(35,42,86,.85); }
.ap-vision-grad { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(35,42,86,.9) 0%,rgba(35,42,86,.75) 50%,rgba(35,42,86,.85) 100%); }
.ap-vision-content { position: relative; z-index: 2; }
.ap-vision-quote { font-size: clamp(1.15rem,2.5vw,1.75rem); font-weight: 900; color: #fff; line-height: 1.45; text-align: center; }
.ap-vision-quote .hl { color: #67E8F9; }

/* ── Nos Valeurs ─────────────────────────────────────── */
.ap-valeurs-section { background: var(--pn-bg); }
.ap-valeur-card { background: #fff; border-radius: 16px; border: 1px solid rgba(0,0,0,.06); box-shadow: 0 1px 6px rgba(0,0,0,.04); padding: 1.5rem; display: flex; flex-direction: column; height: 100%; transition: box-shadow .3s, transform .3s; }
.ap-valeur-card:hover { box-shadow: 0 8px 28px rgba(0,0,0,.1); transform: translateY(-3px); }
.ap-valeur-icon { width: 48px; height: 48px; border-radius: 14px; display: flex; align-items: center; justify-content: center; margin-bottom: 1rem; flex-shrink: 0; box-shadow: 0 2px 8px rgba(0,0,0,.12); }
.ap-valeur-icon i { font-size: 1.3rem; color: #fff; }
.ap-valeur-icon--navy { background: var(--pn-blue); }
.ap-valeur-icon--teal  { background: #0E7490; }
.ap-valeur-icon--green { background: #15803D; }
.ap-valeur-title { font-size: 1.1rem; font-weight: 800; line-height: 1.3; margin-bottom: .6rem; }
.ap-valeur-title--navy { color: var(--pn-blue); }
.ap-valeur-title--teal  { color: #0E7490; }
.ap-valeur-title--green { color: #15803D; }
.ap-valeur-desc { font-size: .82rem; color: var(--pn-gray); line-height: 1.65; flex: 1; }

/* ── Objectifs ambitieux ─────────────────────────────── */
.ap-objectifs-section { background: #fff; }
.ap-mission-chip { display: inline-block; padding: .35rem 1rem; font-size: .72rem; font-weight: 700; color: var(--pn-blue); border: 1px solid rgba(35,42,86,.15); background: #EEF0F8; border-radius: 20px; text-transform: uppercase; letter-spacing: .08em; margin-bottom: 1.25rem; }
.ap-objectif-item { display: flex; align-items: flex-start; gap: 1rem; background: var(--pn-bg); border: 1px solid rgba(0,0,0,.05); border-radius: 14px; padding: 1.1rem 1.25rem; height: 100%; transition: border-color .2s; }
.ap-objectif-item:hover { border-color: rgba(35,42,86,.2); }
.ap-objectif-icon { width: 40px; height: 40px; border-radius: 10px; background: var(--pn-blue); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.ap-objectif-icon i { font-size: 1rem; color: #fff; }
.ap-objectif-text { font-size: .85rem; color: var(--pn-gray); line-height: 1.65; }
.ap-objectif-text strong { color: var(--pn-blue); font-weight: 800; }

/* ── Chiffres clés ───────────────────────────────────── */
.ap-chiffres-section { background: var(--pn-bg); }
.ap-chiffre-card { background: #fff; border-radius: 16px; border: 1px solid rgba(0,0,0,.06); box-shadow: 0 1px 6px rgba(0,0,0,.04); padding: 2rem 1.5rem; text-align: center; height: 100%; }
.ap-chiffre-icon-wrap { width: 56px; height: 56px; border-radius: 14px; background: #EEF0F8; display: flex; align-items: center; justify-content: center; margin: 0 auto 1.25rem; }
.ap-chiffre-icon-wrap i { font-size: 1.4rem; color: var(--pn-blue); }
.ap-chiffre-value { font-size: clamp(2.5rem,5vw,3.5rem); font-weight: 900; color: var(--pn-blue); line-height: 1; margin-bottom: .6rem; }
.ap-chiffre-label { font-size: .7rem; font-weight: 700; color: var(--pn-light); text-transform: uppercase; letter-spacing: .1em; }

/* ── CTA Relation client (dark navy) ─────────────────── */
/* dot overlay: use .overlay-dots from common.css         */
.ap-cta-section { background: var(--pn-blue); position: relative; overflow: hidden; }
.ap-cta-content { position: relative; z-index: 2; }
.ap-cta-title { font-size: clamp(1.4rem,3vw,2.2rem); font-weight: 900; color: #fff; line-height: 1.35; text-align: center; margin-bottom: 2rem; }
.ap-cta-title .hl { color: #67E8F9; }
.btn-ap-cta-white { display: inline-flex; align-items: center; gap: .45rem; padding: .8rem 1.75rem; background: #fff; color: var(--pn-blue); font-weight: 700; font-size: .875rem; border-radius: 12px; text-decoration: none; box-shadow: 0 6px 20px rgba(0,0,0,.2); transition: opacity .2s; }
.btn-ap-cta-white:hover { opacity: .9; color: var(--pn-blue); }
.ap-cta-phone { font-size: .875rem; color: rgba(255,255,255,.8); font-weight: 500; display: inline-flex; align-items: center; gap: .5rem; }
.ap-cta-phone i { color: #67E8F9; }
.ap-cta-phone strong { color: #fff; }
