/* RSM Consulting — styles propres à la page « qui-sommes-nous ». */
.rsmc-page .perim-title-nowrap { white-space: nowrap; }
.rsmc-page .cta-title-nowrap { white-space: normal; }
@media (min-width: 1200px) { .rsmc-page .cta-title-nowrap { white-space: nowrap !important; } }
@media (max-width: 760px) { .rsmc-page .perim-title-nowrap { white-space: normal !important; } }

/* Titres : H2 sur une ligne, H1 sur deux lignes max (desktop) */
.rsmc-page .h2-1l, .rsmc-page .h1-fit { max-width: none !important; }
@media (min-width: 1100px) { .rsmc-page .h2-1l { white-space: nowrap !important; } }
.rsmc-page h2 + .split { margin-top: 10px; }
.rsmc-page .hero .container:has(> .hero-top) { row-gap: 26px; }
.rsmc-page .hero-top { margin-bottom: 8px; }
.rsmc-page .hero-top h1 { max-width: none !important; }

/* ===== Page Contact ===== */
.rsmc-page .ct-hero .ct-panel {background:rgba(10,24,48,0.72) !important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 24px 60px -30px rgba(0,0,0,0.6);}
.rsmc-page .ct-hero {padding:96px 0 88px !important;}
.rsmc-page .ct-hero .container {display:grid;grid-template-columns:1.05fr 0.95fr;gap:56px;align-items:center;}
.rsmc-page .ct-panel {background:rgba(255,255,255,0.04);border:1px solid rgba(28,173,228,0.3);border-radius:16px;overflow:hidden;}
.rsmc-page .ct-row {display:flex;gap:18px;align-items:flex-start;padding:26px 28px;border-bottom:1px solid rgba(255,255,255,0.08);}
.rsmc-page .ct-row:last-child {border-bottom:none;}
.rsmc-page .ct-ico {flex:none;width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:rgba(28,173,228,0.15);color:#1cade4;}
.rsmc-page .ct-label {display:block;font-size:0.85rem;font-weight:600;color:rgba(255,255,255,0.6);margin-bottom:4px;}
.rsmc-page .ct-big {font-family:"Manrope",sans-serif;font-weight:800;font-size:clamp(1.4rem,2.2vw,1.85rem);letter-spacing:0.01em;color:#ffffff !important;text-decoration:none !important;line-height:1.2;}
.rsmc-page .ct-big:hover {color:#1cade4 !important;}
.rsmc-page .ct-addr {font-size:1.05rem;line-height:1.5;color:#ffffff !important;}
.rsmc-page .ct-link {display:inline-block;margin-top:8px;font-size:0.9rem;font-weight:600;color:#1cade4 !important;text-decoration:underline !important;text-underline-offset:3px;}
.rsmc-page .ct-main .container {display:grid;grid-template-columns:1.35fr 0.65fr;gap:48px;align-items:start;}
.rsmc-page .ct-card {background:#ffffff;border-radius:16px;padding:40px;box-shadow:0 24px 50px -30px rgba(10,24,48,0.4);border-top:4px solid #1cade4;}
.rsmc-page .ct-form {display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;margin-top:26px;}
.rsmc-page .ct-field {display:flex;flex-direction:column;gap:7px;}
.rsmc-page .ct-field.full {grid-column:1 / -1;}
.rsmc-page .ct-field label {font-size:0.88rem !important;font-weight:600 !important;color:#0a1830 !important;margin:0 !important;}
.rsmc-page .ct-req {color:#0e7fb0;}
.rsmc-page .ct-form input, .rsmc-page .ct-form select, .rsmc-page .ct-form textarea {width:100% !important;padding:13px 15px !important;font:inherit !important;font-size:0.97rem !important;box-shadow:none !important;outline:none;transition:border-color .15s ease;}
.rsmc-page .ct-form input:focus, .rsmc-page .ct-form select:focus, .rsmc-page .ct-form textarea:focus {border-color:#1cade4 !important;box-shadow:0 0 0 3px rgba(28,173,228,0.18) !important;}
.rsmc-page .ct-form textarea {min-height:150px;resize:vertical;}
.rsmc-page .ct-consent {grid-column:1 / -1;font-size:0.82rem !important;line-height:1.5;margin:0 !important;}
.rsmc-page .ct-submit {grid-column:1 / -1;display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
.rsmc-page .ct-submit .btn {border:none !important;}
.rsmc-page .ct-note {font-size:0.85rem !important;margin:0 !important;}
.rsmc-page .ct-steps {list-style:none;margin:26px 0 0;padding:0;position:relative;}
.rsmc-page .ct-steps::before {content:"";position:absolute;left:21px;top:24px;bottom:24px;width:2px;background:linear-gradient(#1cade4,#d5deea);}
.rsmc-page .ct-steps li {display:flex;gap:18px;align-items:flex-start;padding-bottom:26px;position:relative;}
.rsmc-page .ct-steps li:last-child {padding-bottom:0;}
.rsmc-page .ct-num {flex:none;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#0a1830;color:#1cade4;font-family:"Manrope",sans-serif;font-weight:800;font-size:0.95rem;position:relative;z-index:1;}
.rsmc-page .ct-steps h3 {margin:8px 0 4px !important;}
.rsmc-page .ct-steps p {font-size:0.94rem;margin:0 !important;}
@media (max-width:960px){.rsmc-page .ct-hero .container, .rsmc-page .ct-main .container {grid-template-columns:1fr;gap:36px;}}
@media (max-width:620px){.rsmc-page .ct-form {grid-template-columns:1fr;}.rsmc-page .ct-card {padding:26px 22px;}.rsmc-page .ct-row {padding:22px 20px;}}

/* ===== Page Qui sommes-nous ===== */
.rsmc-page .eyebrow::before {width:30px !important;height:2px !important;}

.rsmc-page .qs-hero .hero-visual {aspect-ratio:4/3 !important;border-radius:20px !important;box-shadow:0 30px 60px -30px rgba(0,0,0,0.6);}
.rsmc-page .qs-hero .hero-visual img {width:100%;height:100%;object-fit:cover;object-position:40% center;}
.rsmc-page .qs-tag {position:absolute;left:16px;bottom:16px;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(10,24,48,0.78);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#ffffff !important;font-size:0.82rem;font-weight:600;}
.rsmc-page .qs-tag svg {width:15px;height:15px;color:#1cade4;}
.rsmc-page .qs-photo {position:relative;border-radius:16px;overflow:hidden;box-shadow:0 24px 50px -30px rgba(10,24,48,0.5);}
.rsmc-page .qs-photo img {width:100%;height:100%;object-fit:cover;}
.rsmc-page .qs-conv .split {grid-template-columns:1fr 1fr;align-items:center;}
.rsmc-page .qs-conv .qs-photo {aspect-ratio:4/3.4;}
.rsmc-page .qs-conv .check-list {margin-top:26px;}
.rsmc-page .qs-proc .process-grid {grid-template-columns:repeat(3,1fr);}
.rsmc-page .qs-label {display:inline-block;font-family:"Manrope",sans-serif;font-weight:800;font-size:0.8rem;letter-spacing:0.12em;color:#0e7fb0;margin-bottom:6px;}
.rsmc-page .qs-proc .process-step ul {margin-top:12px;display:grid;gap:6px;}
.rsmc-page .qs-proc .process-step li {display:flex;gap:8px;align-items:flex-start;font-size:0.9rem;font-weight:600;color:#0a1830;}
.rsmc-page .qs-proc .process-step li svg {flex:none;color:#0e7fb0;margin-top:3px;}
.rsmc-page .qs-services .service-card {display:flex;flex-direction:column;color:inherit !important;}
.rsmc-page .qs-services .service-card .more {margin-top:auto !important;padding-top:14px;display:inline-flex !important;align-items:center;gap:6px;color:#0e7fb0 !important;font-weight:600;font-size:0.88rem;}
.rsmc-page .qs-region {background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.12);border-radius:10px;padding:20px 22px;}
.rsmc-page .qs-region + .qs-region {margin-top:14px;}
.rsmc-page .qs-intl .check-list li {color:#ffffff !important;}
.rsmc-page .qs-intl .check-list li svg {color:#1cade4 !important;}
.rsmc-page .qs-mosaic {display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:1fr 1fr;gap:16px;height:540px;margin-top:44px;}
.rsmc-page .qs-mosaic .qs-photo:first-child {grid-row:1 / 3;}
.rsmc-page .qs-office {display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end;}
.rsmc-page .qs-addr {display:flex;gap:16px;align-items:flex-start;background:#ffffff;border:1px solid #e3e9f1;border-radius:12px;padding:20px 22px;margin-top:22px;max-width:520px;}
.rsmc-page .qs-addr .ico {flex:none;width:44px;height:44px;border-radius:10px;display:grid;place-items:center;background:#e6f6fc;color:#0e7fb0;}
.rsmc-page .qs-actions {display:flex;gap:12px;flex-wrap:wrap;}
.rsmc-page .qs-btn-dark {background:#0a1830 !important;color:#ffffff !important;}
.rsmc-page .qs-btn-dark:hover {background:#16345f !important;}
.rsmc-page .qs-btn-line {background:transparent !important;border:1px solid #0a1830 !important;color:#0a1830 !important;}
.rsmc-page .qs-btn-line:hover {background:#0a1830 !important;color:#ffffff !important;}
@media (max-width:960px){
 .rsmc-page .qs-conv .split {grid-template-columns:1fr;}
 .rsmc-page .qs-proc .process-grid {grid-template-columns:1fr;}
 .rsmc-page .qs-proc .process-step::after {display:none !important;}
 .rsmc-page .qs-office {grid-template-columns:1fr;gap:24px;}
 .rsmc-page .qs-mosaic {height:auto;grid-template-columns:1fr 1fr;grid-template-rows:auto;}
 .rsmc-page .qs-mosaic .qs-photo {aspect-ratio:3/4;}
 .rsmc-page .qs-mosaic .qs-photo:first-child {grid-row:auto;grid-column:1 / -1;aspect-ratio:4/3;}
}
