/* ============ Copilote d'Entreprise — pages de détail (chargé en plus de style.css) ============ */
.page { line-height:1.6; }
.page .wrap { max-width:1200px; margin:0 auto; padding:0 40px; }
.page [id] { scroll-margin-top:80px; }

/* En-tête */
.page .header { position:sticky; top:0; z-index:50; background:rgba(11,29,46,.9); backdrop-filter:blur(14px); border-bottom:1px solid rgba(255,255,255,.08); }
.page .header-inner { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:14px 0; }
.page .brand { display:flex; align-items:center; gap:12px; color:#fff; }
.page .brand:hover { color:#fff; }
.page .brand-logo { width:46px; height:46px; border-radius:50%; overflow:hidden; flex-shrink:0; }
.page .brand-logo img { width:100%; height:100%; display:block; }
.page .brand-name { font-size:18px; font-weight:700; white-space:nowrap; }
.page .brand-name span { color:#d4a574; }
.page .nav { display:flex; align-items:center; gap:24px; font-size:14.5px; font-weight:500; }
.page .nav a { color:#c3d0de; }
.page .nav a:hover, .page .nav a[aria-current="page"] { color:#d4a574; }
.page .btn { display:inline-block; background:#d4a574; color:#0b1d2e; padding:15px 28px; border-radius:9px; font-weight:700; font-size:16px; text-align:center; }
.page .btn:hover { background:#e8c98f; color:#0b1d2e; }
.page .nav .btn { padding:10px 20px; font-size:14px; border-radius:8px; color:#0b1d2e; white-space:nowrap; }
.page .btn-ghost { display:inline-block; color:#e8eef4; font-weight:600; font-size:16px; border:1px solid rgba(255,255,255,.25); padding:14px 26px; border-radius:9px; }
.page .btn-ghost:hover { border-color:#d4a574; color:#d4a574; }

/* Typo & sections */
.page .eyebrow { font-family:'JetBrains Mono',monospace; font-size:13px; letter-spacing:2px; text-transform:uppercase; color:#d4a574; margin-bottom:16px; }
.page h1 { font-family:'Playfair Display',serif; font-size:56px; line-height:1.06; font-weight:800; color:#fff; margin-bottom:22px; }
.page h1 em, .page h2 em { font-style:normal; color:#d4a574; }
.page h2 { font-family:'Playfair Display',serif; font-size:40px; line-height:1.12; font-weight:800; color:#fff; margin-bottom:16px; }
.page h3 { font-size:19px; font-weight:700; color:#fff; margin-bottom:8px; line-height:1.35; }
.page .lead { font-size:20px; line-height:1.65; color:#b9cbdc; max-width:720px; margin-bottom:32px; }
.page .section { padding:88px 0; }
.page .section-alt { background:#081521; border-top:1px solid rgba(255,255,255,.05); border-bottom:1px solid rgba(255,255,255,.05); }
.page .section-head { max-width:780px; margin-bottom:48px; }
.page .section-head p { font-size:18px; color:#a9bccf; }
.page .actions { display:flex; gap:14px; flex-wrap:wrap; align-items:center; }
.page .hero-page { padding:76px 0 60px; background:linear-gradient(160deg,#12314a,#0b1d2e 70%); border-bottom:1px solid rgba(255,255,255,.08); }
.page .breadcrumb { font-size:13.5px; color:#7fa0c4; margin-bottom:22px; }
.page .breadcrumb a { color:#7fa0c4; }
.page .breadcrumb a:hover { color:#d4a574; }
.page .prose p { font-size:17px; color:#b9cbdc; margin-bottom:16px; max-width:780px; }
.page .prose strong { color:#fff; }

/* Cartes, étapes, listes */
.page .grid-2 { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.page .grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.page .grid-4 { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.page .card { background:#132741; border:1px solid rgba(255,255,255,.08); border-radius:16px; padding:28px; display:flex; flex-direction:column; }
.page .card p { font-size:15px; color:#a9bccf; }
.page .card-hi { border-color:rgba(122,158,126,.6); background:linear-gradient(160deg,rgba(122,158,126,.14),rgba(122,158,126,.04)); }
.page .card-tag { font-family:'JetBrains Mono',monospace; font-size:11.5px; letter-spacing:1.2px; text-transform:uppercase; color:#7fa0c4; margin-bottom:10px; }
.page .price { font-family:'Playfair Display',serif; font-size:30px; font-weight:800; color:#d4a574; line-height:1.1; margin:6px 0 4px; }
.page .price small { font-family:'Libre Franklin',sans-serif; font-size:13px; color:#8aa3bd; font-weight:500; }
.page .meta { font-size:13px; color:#7fa0c4; margin-bottom:10px; }
.page .steps { display:grid; grid-template-columns:repeat(4,1fr); gap:28px; counter-reset:step; }
.page .step { counter-increment:step; }
.page .step::before { content:"Étape " counter(step); display:block; font-family:'JetBrains Mono',monospace; font-size:13px; color:#7fa0c4; padding-top:18px; border-top:2px solid #d4a574; margin-bottom:8px; }
.page .step p { font-size:14.5px; color:#a9bccf; }
.page .check { list-style:none; }
.page .check li { display:flex; gap:12px; font-size:16px; color:#b9cbdc; margin-bottom:12px; }
.page .check li::before { content:"✓"; color:#7A9E7E; font-weight:800; flex-shrink:0; }
.page .note { font-size:14px; color:#7fa0c4; margin-top:18px; }

/* FAQ */
.page .faq { display:flex; flex-direction:column; gap:12px; max-width:860px; }
.page .faq details { background:#132741; border:1px solid rgba(255,255,255,.08); border-radius:14px; padding:0 24px; }
.page .faq summary { list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:18px; padding:20px 0; font-size:17px; font-weight:600; color:#fff; }
.page .faq summary::-webkit-details-marker { display:none; }
.page .faq summary::after { content:"+"; font-family:'Playfair Display',serif; font-size:26px; color:#d4a574; line-height:1; transition:transform .2s; }
.page .faq details[open] summary::after { transform:rotate(45deg); }
.page .faq details p { padding:0 0 20px; font-size:15.5px; color:#a9bccf; }

/* Bandeau CTA + liens vers les autres offres */
.page .cta-band { background:linear-gradient(120deg,#1a3a52,#0f2537); border:1px solid rgba(212,165,116,.3); border-radius:24px; padding:52px 44px; text-align:center; box-shadow:0 30px 70px rgba(0,0,0,.35); }
.page .cta-band p { font-size:18px; color:#c3d0de; margin-bottom:28px; }
.page .cta-band .actions { justify-content:center; }
.page .related a { display:block; background:#0f2537; border:1px solid rgba(255,255,255,.08); border-radius:14px; padding:22px 24px; color:#e8eef4; transition:border-color .2s; }
.page .related a:hover { border-color:rgba(212,165,116,.45); }
.page .related strong { display:block; color:#fff; margin-bottom:4px; }
.page .related span { font-size:14px; color:#a9bccf; }

/* Pied de page */
.page .footer { background:#060f18; padding:48px 0 32px; }
.page .footer-grid { display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:40px; }
.page .footer h4 { font-size:13px; letter-spacing:1.5px; text-transform:uppercase; color:#7fa0c4; margin-bottom:14px; font-weight:600; }
.page .footer ul { list-style:none; }
.page .footer li { margin-bottom:8px; }
.page .footer a, .page .footer p { color:#8aa3bd; font-size:14px; }
.page .footer a:hover { color:#d4a574; }
.page .footer-bottom { margin-top:34px; padding-top:20px; border-top:1px solid rgba(255,255,255,.06); font-size:13px; color:#5f7d99; }

@media (max-width: 880px) {
  .page .wrap { padding:0 20px; }
  .page .nav a:not(.btn) { display:none; }
  .page .nav { gap:12px; }
  .page .nav .btn { padding:10px 12px; font-size:13px; }
  .page h1 { font-size:36px; }
  .page h2 { font-size:29px; }
  .page .lead { font-size:17px; }
  .page .section { padding:58px 0; }
  .page .hero-page { padding:50px 0 42px; }
  .page .grid-2, .page .grid-3, .page .grid-4, .page .steps, .page .footer-grid { grid-template-columns:1fr; gap:16px; }
  .page .cta-band { padding:36px 22px; }
}
@media (max-width: 880px) {
  .page .header-inner { gap:10px; }
  .page .brand { gap:10px; min-width:0; }
  .page .brand-name { white-space:normal; font-size:16px; line-height:1.15; }
  .page .brand-name span { display:block; }
  .page .nav-toggle { flex-shrink:0; }
}
@media (max-width: 420px) {
  .page .nav .btn { display:none; }
  .page .brand-logo { width:40px; height:40px; }
}
