/* ==========================================================
   Charte Simonnot Avocats, version claire
   crème #EFEEE5, blanc, charbon chaud #302E2B,
   orange adouci #A04044 (pilules en dégradé orange → ambre),
   une seule police : Jost. Aucun italique.
   Surcouche du template Justiq, chargée après custom.css.
   ========================================================== */

:root{
	--primary-color      : #302E2B;   /* charbon chaud : sections sombres, titres, texte */
	--primary-soft       : #3B3935;
	--secondary-color    : #EFEEE5;   /* crème : fond général */
	--white-color        : #FFFFFF;
	--accent-color       : #A04044;   /* bordeaux (couleur du logo Pictet), 19/10/2026 */
	--accent-2           : #A04044;   /* identique : boutons unis, sans dégradé */
	--accent-deep        : #86343A;
	--text-color         : #5F5B55;   /* texte secondaire */
	--text-strong        : #302E2B;
	--filet-c            : #DDDBD2;
	--divider-color      : #DDDBD2;
	--dark-divider-color : #FFFFFF1F;

	--default-font       : "Jost", "Helvetica Neue", Arial, sans-serif;
	--accent-font        : "Jost", "Helvetica Neue", Arial, sans-serif;
}

/* ---------- Base ---------- */
body{ background: var(--secondary-color); color: var(--text-color); }
p{ color: var(--text-color); line-height: 1.7em; font-weight: 400; font-size: 15.5px; }
h1, h2, h3, h4, h5, h6{ font-weight: 400; letter-spacing: -0.01em; color: var(--text-strong); }
em, i:not(.fa-solid):not(.fa-brands):not(.fa-regular):not(.fab){ font-style: normal; }
.section-title h1{ font-size: 60px; line-height: 1.1em; font-weight: 400; }
.section-title h2{ font-size: 38px; line-height: 1.2em; font-weight: 400; }
.section-title h1 span,
.section-title h2 span{ color: var(--accent-color); font-style: normal; }
.h1-seo{ position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* Étiquette de section */
.section-title h3{
	font-family: var(--default-font);
	font-size: 12.5px;
	font-weight: 500;
	letter-spacing: 0.22em;
	text-transform: uppercase;
	color: var(--accent-deep);
	background: none;
	padding-left: 0;
	margin-bottom: 14px;
}
.dark-section{ background-color: var(--primary-color); }
.dark-section .section-title h3{ color: var(--accent-2); }
.dark-section .section-title h2,
.dark-section .section-title h1{ color: #F2F0E8; }
.dark-section .section-title h2 span{ color: var(--accent-2); }
.dark-section p{ color: #CFCCC4; }

/* ---------- Boutons (pilules, dégradé orange → ambre) ---------- */
.btn-default{
	font-family: var(--default-font);
	font-size: 14.5px;
	font-weight: 400;
	letter-spacing: 0.01em;
	text-transform: none;
	color: #FFFFFF;
	background: linear-gradient(90deg, var(--accent-color), var(--accent-2));
	border-radius: 10000px;
	padding: 13px 24px;
	transition: transform .25s ease, box-shadow .25s ease;
}
.btn-default:hover{ color: #FFFFFF; transform: translateY(-2px); box-shadow: 0 10px 24px rgba(160,64,68,.28); }
.btn-default:before{ background: var(--accent-deep); border-radius: 10000px; }
.btn-default.btn-highlighted{ color: #FFFFFF; background: linear-gradient(90deg, var(--accent-color), var(--accent-2)); }
.btn-default.btn-highlighted:hover{ color: #FFFFFF; }
.btn-default.btn-highlighted::before{ background: var(--accent-deep); }
.btn-default.bg-accent-btn{ background: linear-gradient(90deg, var(--accent-color), var(--accent-2)); }
.btn-outline{ background: transparent; color: var(--text-strong); border: 1.5px solid var(--text-strong); padding: 11.5px 22px; }
.btn-outline:before{ display: none; }
.btn-outline:hover{ color: var(--accent-deep); border-color: var(--accent-color); box-shadow: none; transform: none; }
.dark-section .btn-outline{ color: #F2F0E8; border-color: #F2F0E8; }
.dark-section .btn-outline:hover{ color: var(--accent-2); border-color: var(--accent-2); }
.readmore-btn{ font-family: var(--default-font); font-weight: 500; font-size: 14.5px; text-transform: none; color: var(--accent-deep); }
.readmore-btn:hover{ color: var(--text-strong); }

/* ---------- En-tête ---------- */
.main-header{ background: var(--secondary-color); }
.header-sticky{ background: var(--secondary-color); }
.header-sticky.hide{ background: var(--secondary-color); }
.navbar-brand img{ height: 60px; width: auto; display: block; }
.main-menu ul li a{
	font-family: var(--default-font);
	font-weight: 400;
	font-size: 14.5px;
	letter-spacing: 0;
	text-transform: none;
	white-space: nowrap;
	color: var(--text-strong);
	padding: 12px 11px !important;
}
.main-menu ul li a:hover,
.main-menu ul li.submenu:hover > a{ color: var(--accent-deep); }
.header-contact-box{ display: none; }
.header-btn{ margin-left: 12px; padding: 11px 20px; font-size: 14px; }

/* ---------- Hero sombre ---------- */
.hero{ padding: 110px 0 90px; }
.hero .section-title h3{ color: var(--accent-2); }
.hero .section-title h3 .mid{ padding: 0 6px; color: #8D8982; }
.section-title .hero-titre{ font-family: var(--default-font); font-size: 60px; line-height: 1.1em; color: #F2F0E8; margin: 0; font-weight: 400; letter-spacing: -0.015em; }
.section-title .hero-titre .l1, .section-title .hero-titre .l2{ display: block; font-size: inherit !important; line-height: inherit; }
.section-title .hero-titre .l2{ color: var(--accent-2); margin-top: 4px; }
.section-title .hero-titre .pt{ color: var(--accent-color); }
.hero-content-box p{ color: #CFCCC4; font-size: 16.5px; max-width: 540px; }
.hero-content-box .btns{ display: flex; gap: 12px; flex-wrap: wrap; align-items: center; margin-top: 8px; }
.hero-reassurance{ margin-top: 40px; display: flex; flex-wrap: wrap; gap: 12px 26px; padding: 0; list-style: none; }
.hero-reassurance li{ display: flex; align-items: center; gap: 9px; font-size: 14px; color: #CFCCC4; }
.hero-reassurance li::before{ content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--accent-color); flex: none; }
.hero-cta-box{ background: var(--secondary-color); padding-bottom: 20px; }
.hero-cta-item .icon-box img{ max-width: 52px; }
.hero-cta-item-content h3{ font-size: 22px; line-height: 1.3em; font-weight: 500; }
.hero-cta-item-content p{ font-size: 14.5px; margin: 0 0 14px; }
.hero-image img{ border-radius: 18px; }
.hero-legende{ margin-top: 14px; font-size: 13px; color: var(--text-color); }
.hero-legende b{ display: block; font-weight: 500; color: var(--text-strong); font-size: 14px; }

/* ---------- Sections ---------- */
.about-us{ background: #FFFFFF; }
.about-us-image figure img{ border-radius: 18px; }
.about-us-body h2{ font-size: 17px; font-weight: 500; line-height: 1.5em; }
.about-us-body h2 span{ font-size: 15px; font-weight: 500; color: var(--accent-deep); }
.about-us-body h2 small{ display: block; font-size: 14.5px; font-weight: 400; color: var(--text-color); margin-top: 4px; line-height: 1.6em; }

.our-awards{ padding: 60px 0; }
.award-image img{ max-height: 90px; width: auto; }

.our-services{ background: var(--secondary-color); }
.service-step-no{ background: #FFFFFF; border: 1px solid var(--filet-c); }
.service-step-no h3{ font-weight: 500; font-size: 14px; color: var(--text-strong); }
.service-step-item-content h3{ font-size: 26px; font-weight: 400; }
.service-step-item-content h3 a:hover{ color: var(--accent-deep); }
.service-step-item{ border-bottom-color: var(--filet-c); }
.service-step-image img{ border-radius: 14px; }
.services-note{ margin-top: 34px; font-size: 14.5px; }
.services-note a{ color: var(--accent-deep); font-weight: 500; border-bottom: 1.5px solid rgba(160,64,68,.45); }

.why-choose-us{ background: #FFFFFF; }
.why-choose-image figure img{ aspect-ratio: auto; border-radius: 14px; box-shadow: 0 18px 50px rgba(48,46,43,.12); }
.why-choose-legende{ margin-top: 14px; text-align: center; font-size: 11.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--text-color); }
.why-choose-item{ background: var(--secondary-color); border: none; border-radius: 18px; box-shadow: none; }
.why-choose-item:before{ background: linear-gradient(135deg, var(--accent-color), var(--accent-2)); }
.why-choose-item-content h3{ font-size: 19px; font-weight: 500; text-transform: none; }
.why-choose-item.active .why-choose-item-content h3,
.why-choose-item:hover .why-choose-item-content h3{ color: #FFFFFF; }
.why-choose-item.active .why-choose-item-content p,
.why-choose-item:hover .why-choose-item-content p{ color: #FFF3EC; }
.why-choose-counters{ margin-top: 70px; }
.why-choose-counter-content h2{ font-weight: 400; color: var(--text-strong); }
.why-choose-counter-content p{ font-size: 14px; }

.our-history{ background: var(--secondary-color); }
.history-box{ background: #FFFFFF; border-radius: 22px; }
.history-year h2{ font-weight: 400; color: var(--accent-deep); }
.history-item-content h3{ font-weight: 500; font-size: 19px; }

.how-it-work .work-step-no h3{ color: var(--accent-2); }
.how-it-work .work-step-content h3{ color: #F2F0E8; font-weight: 500; font-size: 19px; }
.how-it-work .work-image img{ border-radius: 18px; }
.work-counter-box{ background: #FFFFFF; border-radius: 18px; }
.work-counter-item h2{ font-weight: 400; color: var(--text-strong); }
.work-counter-item p{ color: var(--text-color); }

.our-team{ background: #FFFFFF; }
.team-image img{ border-radius: 18px; }
.team-content h3{ font-size: 21px; font-weight: 500; }
.team-content h3 a:hover{ color: var(--accent-deep); }

.our-testimonial{ padding: 100px 0; }
.engagement-box{ display: flex; flex-wrap: wrap; gap: 24px; }
.engagement-item{ flex: 1 1 260px; background: var(--primary-soft); border-radius: 18px; padding: 30px 28px; }
.engagement-item h3{ color: #F2F0E8; font-size: 20px; font-weight: 500; margin-bottom: 12px; }
.engagement-item p{ margin: 0; font-size: 15px; }
.engagement-qui{ margin-top: 28px; font-size: 13px; letter-spacing: 0.08em; text-transform: uppercase; color: #CFCCC4; }
.engagement-qui b{ font-weight: 500; color: #F2F0E8; }

.our-blog{ background: var(--secondary-color); }
.post-item{ background: #FFFFFF; border-radius: 18px; overflow: hidden; }
.post-item-content h2{ font-size: 20px; font-weight: 500; line-height: 1.4em; }
.post-item-content h2 a:hover{ color: var(--accent-deep); }
.post-item-meta ul li{ font-size: 13px; }
.post-item-meta ul li i{ color: var(--accent-color); }

/* ---------- Pied de page ---------- */
.main-footer{ background: var(--primary-color); }
.footer-cta-item p{ color: #CFCCC4; font-size: 14.5px; }
.footer-cta-item p span{ text-transform: none; color: #F2F0E8; font-weight: 500; }
.footer-cta-item p a{ color: inherit; }
.footer-cta-item img{ filter: brightness(0) invert(1); opacity: .8; }
.footer-logo img{ max-width: 150px; height: auto !important; }
.about-footer-content p{ color: #CFCCC4; }
.footer-links h3{ font-size: 12px; letter-spacing: 0.22em; text-transform: uppercase; color: var(--accent-2); font-weight: 500; }
.footer-links ul li a{ text-transform: none; color: #E6E3DB; }
.footer-links ul li a:hover{ color: var(--accent-2); }
.footer-newsletter-form .section-title h2{ color: #F2F0E8; font-size: 32px; }
.footer-newsletter-form .section-title h2 span{ color: var(--accent-2); }
.footer-newsletter-form p{ color: #CFCCC4; margin-bottom: 24px; }
.footer-newsletter-form .section-title{ margin-bottom: 14px; }
.footer-copyright-text p{ color: #9B978F; font-size: 13px; }

/* ---------- Curseur et divers ---------- */
.cb-cursor:before{ background: var(--accent-color); }
.navbar-toggle, .navbar-toggle a.slicknav_btn{ background: var(--primary-color) !important; }
::-webkit-scrollbar-thumb{ background-color: var(--accent-color); }

/* ---------- Écrans ---------- */
@media (max-width: 1199px){ .section-title h1, .section-title .hero-titre{ font-size: 50px; } .main-menu ul li a{ padding: 12px 8px !important; font-size: 13.5px; } }
@media (max-width: 991px){ .section-title h1, .section-title .hero-titre{ font-size: 42px; } .section-title h2{ font-size: 32px; } .hero-image-video{ margin-top: 30px; } }
@media (max-width: 767px){ .section-title h1, .section-title .hero-titre{ font-size: 34px; } .section-title h2{ font-size: 28px; } .hero{ padding: 70px 0 50px; } .navbar-brand img{ height: 50px; } .hero .section-title h3{ font-size: 12px; letter-spacing: 0.16em; } }

/* Compléments après revue v3 */
.post-featured-image figure::before{ background: linear-gradient(180deg, rgba(0,0,0,0) 40%, rgba(48,46,43,.88) 80%); }
.our-testimonial{ background-image: none; }
.why-choose-counter-content p, .team-content p, .work-counter-item p, .history-item-content h3{ text-transform: none; }
.work-step-no{ background: #FFFFFF; }
.work-step-no h3{ color: var(--text-strong); }
.work-step-item:hover .work-step-no{ background: var(--accent-color); }
.work-step-item:hover .work-step-no h3{ color: #FFFFFF; }
.experience-circle{ display: none; }

/* ====== Version claire : plus aucun fond sombre ====== */
.sand-section{ background-color: #E8E5D9; }
.hero{ background: var(--secondary-color); }
.hero .section-title h3{ color: var(--accent-deep); }
.hero .section-title h3 .mid{ color: #A8A49B; }
.section-title .hero-titre{ color: var(--text-strong); }
.section-title .hero-titre .l2{ color: var(--accent-color); }
.hero-content-box p{ color: var(--text-color); }
.hero-reassurance li{ color: var(--text-color); }
.our-awards .section-title h3{ color: var(--accent-deep); }
.our-awards .section-title h2{ color: var(--text-strong); }
.award-image img{ opacity: 1; }
.how-it-work .section-title h3, .our-testimonial .section-title h3{ color: var(--accent-deep); }
.how-it-work .section-title h2, .our-testimonial .section-title h2{ color: var(--text-strong); }
.how-it-work p, .our-testimonial p{ color: var(--text-color); }
.how-it-work .work-step-content h3{ color: var(--text-strong); }
.how-it-work .work-step-content p{ color: var(--text-color); }
.how-it-work .work-step-no{ background: #FFFFFF; }
.how-it-work .work-step-no h3{ color: var(--text-strong); }
.how-it-work{ background-image: none; }
.work-counter-box{ background: #FFFFFF; box-shadow: 0 14px 40px rgba(48,46,43,.10); }
.engagement-item{ background: #FFFFFF; }
.engagement-item h3{ color: var(--text-strong); }
.engagement-item p{ color: var(--text-color); }
.engagement-qui{ color: var(--text-color); }
.engagement-qui b{ color: var(--text-strong); }
.main-footer{ background: #E8E5D9; }
.footer-cta{ border-bottom: 1px solid var(--filet-c); }
.footer-cta-item{ border-color: var(--filet-c) !important; }
.footer-cta-item img{ filter: none; opacity: 1; }
.footer-cta-item p{ color: var(--text-color); }
.footer-cta-item p span{ color: var(--text-strong); }
.about-footer-content p{ color: var(--text-color); }
.footer-links h3{ color: var(--accent-deep); }
.footer-links ul li a{ color: var(--text-strong); }
.footer-links ul li a:hover{ color: var(--accent-deep); }
.footer-newsletter-form .section-title h2{ color: var(--text-strong); }
.footer-newsletter-form .section-title h2 span{ color: var(--accent-color); }
.footer-newsletter-form p{ color: var(--text-color); }
.footer-copyright-text{ border-top: 1px solid var(--filet-c); }
.footer-copyright-text p{ color: var(--text-color); }
.footer-logo .logo-blanc{ display: none; }

/* ====== Accueil v5, mise en page resserrée (19/10/2026) ====== */
.header-tel{ margin-left: 14px; font-size: 14.5px; color: var(--text-strong); white-space: nowrap; }
.header-tel:hover{ color: var(--accent-deep); }

/* 2. Ouverture centrée */
.sx-hero{ background: var(--secondary-color); padding: 70px 0 90px; }
.sx-hero-head{ text-align: center; max-width: 900px; margin: 0 auto 50px; }
.sx-hero-head h3 .mid{ padding: 0 6px; color: #A8A49B; }
.sx-hero .hero-titre .l1, .sx-hero .hero-titre .l2{ display: block; }
.sx-hero-intro{ font-size: 17px; max-width: 640px; margin: 22px auto 18px; }
.sx-pastille{ display: inline-block; font-size: 13.5px; color: var(--text-strong); background: #FFFFFF; border: 1px solid var(--filet-c); border-radius: 10000px; padding: 7px 18px; margin: 0 0 26px; }
.sx-pastille .mid{ padding: 0 8px; color: var(--accent-color); }
.sx-btns{ display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.sx-hero-row{ align-items: stretch; }
.sx-carte{ height: 100%; background: #FFFFFF; border-radius: 18px; padding: 30px 28px; display: flex; flex-direction: column; }
.sx-carte-label{ font-size: 12px; font-weight: 500; letter-spacing: .22em; text-transform: uppercase; color: var(--accent-deep); margin-bottom: 14px; }
.sx-reperes{ list-style: none; padding: 0; margin: 0 0 18px; }
.sx-reperes li{ position: relative; padding: 0 0 14px 22px; font-size: 15px; line-height: 1.55em; color: var(--text-strong); }
.sx-reperes li::before{ content: ""; position: absolute; left: 0; top: 8px; width: 8px; height: 8px; border-radius: 50%; background: var(--accent-color); }
.sx-carte-note{ margin-top: auto; padding-top: 14px; border-top: 1px solid var(--filet-c); font-size: 14px; margin-bottom: 0; }
.sx-hero-photo figure, .sx-hero-photo img{ border-radius: 18px; width: 100%; }
.sx-hero-photo img{ aspect-ratio: 16 / 9; object-fit: cover; }

/* 3. Bandeau qui défile */
.sx-ticker{ background: #E8E5D9; overflow: hidden; padding: 18px 0; border-top: 1px solid var(--filet-c); border-bottom: 1px solid var(--filet-c); }
.sx-ticker-piste{ display: flex; width: max-content; animation: sx-defile 40s linear infinite; }
.sx-ticker-piste span{ font-size: 22px; color: var(--text-strong); white-space: nowrap; padding: 0 28px; position: relative; }
.sx-ticker-piste span::after{ content: ""; position: absolute; right: -4px; top: 50%; width: 8px; height: 8px; margin-top: -4px; border-radius: 50%; background: var(--accent-color); }
@keyframes sx-defile{ from{ transform: translateX(0); } to{ transform: translateX(-50%); } }

.sx-danger{ background: #FFFFFF; border-color: var(--accent-color); }
.sx-danger b{ color: var(--accent-deep); }

.sx-expertise{ background: var(--secondary-color); padding: 100px 0; }

/* 6. Le cabinet */
.sx-cabinet{ background: #FFFFFF; padding: 100px 0; }
.sx-chapo{ font-size: 19px; color: var(--text-strong); }
.sx-specialiste{ margin-top: 34px; padding: 28px 30px; background: var(--secondary-color); border-radius: 18px; }
.sx-specialiste h2{ font-size: 22px; font-weight: 500; margin-bottom: 10px; }
.sx-specialiste p{ margin: 0; }

.sx-certificat img{ width: 100%; border-radius: 14px; box-shadow: 0 18px 50px rgba(48,46,43,.12); }
.sx-certificat figcaption{ margin-top: 12px; text-align: center; font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--text-color); }

/* 7. Étapes */
.sx-etapes{ padding: 100px 0; }
.sx-etapes .section-title{ margin-bottom: 44px; }
.sx-etapes-liste{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.sx-etape{ background: #FFFFFF; border-radius: 18px; padding: 28px 24px; }
.sx-no{ display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; background: linear-gradient(135deg, var(--accent-color), var(--accent-2)); color: #FFFFFF; font-weight: 500; margin-bottom: 18px; }
.sx-etape h3{ font-size: 19px; font-weight: 500; margin-bottom: 8px; }
.sx-etape p{ margin: 0; font-size: 14.5px; }

/* 8. Domaines */
.sx-domaines{ background: var(--secondary-color); padding: 100px 0; }
.sx-domaines .section-title{ margin-bottom: 40px; }
.sx-domaines-grille{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.sx-domaine{ background: #FFFFFF; border-radius: 18px; padding: 28px 26px; }
.sx-domaine h3{ font-size: 20px; font-weight: 500; padding-bottom: 14px; margin-bottom: 14px; border-bottom: 1px solid var(--filet-c); }
.sx-domaine h3 a:hover{ color: var(--accent-deep); }
.sx-domaine ul{ list-style: none; padding: 0; margin: 0; }
.sx-domaine li{ padding: 5px 0; font-size: 14.5px; }
.sx-domaine li a{ color: var(--text-color); }
.sx-domaine li a:hover{ color: var(--accent-deep); }

/* 10. FAQ */
.sx-faq{ background: var(--secondary-color); padding: 100px 0; }
.sx-faq .faq-accordion .accordion-item{ background: #FFFFFF; border: none; border-radius: 18px; margin-bottom: 12px; overflow: hidden; }
.sx-faq .faq-accordion .accordion-header{ margin: 0; }
.sx-faq .faq-accordion .accordion-header .accordion-button{ font-family: var(--default-font); font-size: 18px; font-weight: 500; color: var(--text-strong); background: #FFFFFF; padding: 22px 60px 22px 26px; box-shadow: none; }
.sx-faq .faq-accordion .accordion-item .accordion-body{ padding: 0 26px 22px; }
.sx-faq .faq-accordion .accordion-item .accordion-button::after{ background-color: var(--accent-color); }

/* Blog : titres d'articles en h3 */
.post-item-content h3{ font-size: 20px; font-weight: 500; line-height: 1.4em; }
.post-item-content h3 a:hover{ color: var(--accent-deep); }

/* 12. Prendre contact */
.sx-contact{ padding: 100px 0; }
.sx-contact-sous{ font-size: 19px; font-weight: 500; line-height: 1.45em; margin: 6px 0 16px; }
.sx-contact-carte{ background: #FFFFFF; border-radius: 22px; padding: 40px 36px; text-align: center; }
.sx-contact-prix{ font-size: 46px; color: var(--text-strong); line-height: 1.1em; margin-bottom: 8px; }
.sx-contact-carte .btn-default{ display: block; margin-top: 12px; }

/* Écrans */
@media (max-width: 1199px){ .header-tel{ display: none; } }
@media (max-width: 991px){
	.sx-hero-row .col-lg-4{ order: 2; margin-top: 18px; }

	.sx-etapes-liste, .sx-domaines-grille{ grid-template-columns: 1fr 1fr; }

	.sx-contact-carte{ margin-top: 30px; }
}
@media (max-width: 767px){
	.sx-hero{ padding: 40px 0 60px; }
	 .sx-expertise, .sx-cabinet, .sx-etapes, .sx-domaines, .sx-faq, .sx-contact{ padding: 60px 0; }
	 .sx-etapes-liste, .sx-domaines-grille{ grid-template-columns: 1fr; }
	.sx-ticker-piste span{ font-size: 17px; }
	.sx-faq .faq-accordion .accordion-header .accordion-button{ font-size: 16px; }
}

/* Mouvement réduit : on coupe le défilement */
@media (prefers-reduced-motion: reduce){
	.sx-ticker-piste{ animation: none; }
	 .btn-default{ transition: none; }
}
.sx-domaine h3 a{ color: var(--text-strong); }
.header-btn{ white-space: nowrap; }
.sx-faq .faq-accordion .accordion-header .accordion-button:not(.collapsed){ background: #FFFFFF; color: var(--accent-deep); }
.sx-faq .faq-accordion .accordion-item .accordion-body{ background: #FFFFFF; }
.sx-faq .faq-accordion .accordion-item .accordion-body p{ color: var(--text-color); }
.sx-faq .faq-accordion .accordion-item .accordion-button::after{ color: #FFFFFF; }

/* H1 visible (texte SEO du site actuel), accroche en sous-titre */
.sx-hero h1.hero-titre{ font-family: var(--default-font); font-size: 56px; line-height: 1.1em; font-weight: 400; letter-spacing: -0.015em; color: var(--text-strong); margin: 0; }
.sx-hero h1.hero-titre .l2{ color: var(--accent-color); margin-top: 4px; }
.sx-accroche{ font-size: 22px; color: var(--text-strong); margin: 18px 0 0; }
.sx-contact-prix{ font-size: 32px; }
@media (max-width: 1199px){ .sx-hero h1.hero-titre{ font-size: 48px; } }
@media (max-width: 991px){ .sx-hero h1.hero-titre{ font-size: 40px; } }
@media (max-width: 767px){ .sx-hero h1.hero-titre{ font-size: 32px; } .sx-accroche{ font-size: 18px; } }
.sx-hero .section-title h1.hero-titre .l1{ color: var(--text-strong); }
.sx-hero .section-title h1.hero-titre .l2{ color: var(--accent-color); }

/* Bouton flottant et fenêtre */

/* ====== Pages intérieures : en-tête de page ====== */
.sx-page-tete{ background: var(--secondary-color); padding: 60px 0 40px; }
.sx-ariane{ font-size: 13.5px; color: var(--text-color); margin-bottom: 18px; }
.sx-ariane a{ color: var(--accent-deep); }
.sx-ariane span{ padding: 0 8px; color: #A8A49B; }
.sx-page-tete h1{ font-size: 52px; line-height: 1.15em; font-weight: 400; margin-bottom: 14px; }
.sx-page-intro{ font-size: 18px; max-width: 640px; margin: 0; }

/* ====== Réservation (js/rendez-vous.js) ====== */
.sx-reservation{ background: var(--secondary-color); padding: 10px 0 80px; }
.rdv{ background: #FFFFFF; border-radius: 24px; padding: 40px 44px; }
.rdv-num{ font-size: 12px; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; color: var(--accent-deep); margin-bottom: 6px; }
.rdv h2{ font-size: 28px; font-weight: 400; margin-bottom: 24px; outline: none; }
.rdv-formules{ display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.rdv-formule{ text-align: left; font-family: var(--default-font); background: var(--secondary-color); border: 1.5px solid transparent; border-radius: 20px; padding: 28px 30px; cursor: pointer; transition: border-color .2s, transform .2s; }
.rdv-formule:hover, .rdv-formule:focus-visible{ border-color: var(--accent-color); transform: translateY(-2px); outline: none; }
.rdv-duree{ display: block; font-size: 15px; font-weight: 500; letter-spacing: .04em; color: var(--accent-deep); }
.rdv-prix{ display: block; font-size: 40px; color: var(--text-strong); line-height: 1.2em; margin: 6px 0 10px; }
.rdv-desc{ display: block; font-size: 15px; color: var(--text-color); line-height: 1.55em; }
.rdv-formule::after{ content: "Choisir \2192"; display: inline-block; margin-top: 18px; font-size: 14px; color: #FFFFFF; background: linear-gradient(90deg, var(--accent-color), var(--accent-2)); border-radius: 10000px; padding: 9px 18px; }
.rdv-modes{ list-style: none; padding: 0; margin: 22px 0 0; display: flex; flex-wrap: wrap; gap: 8px 22px; }
.rdv-modes li{ font-size: 14px; color: var(--text-color); }
.rdv-modes li::before{ content: ""; display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--accent-color); margin-right: 8px; vertical-align: middle; }
.rdv-etape2-tete{ display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; flex-wrap: wrap; }
.rdv-etape2-tete h2{ margin-bottom: 6px; }
.rdv-choisie{ font-size: 15px; color: var(--text-strong); margin-bottom: 18px; }
.rdv-changer{ font-family: var(--default-font); font-size: 13.5px; color: var(--text-strong); background: #FFFFFF; border: 1px solid var(--filet-c); border-radius: 10000px; padding: 7px 16px; }
.rdv-changer:hover{ border-color: var(--accent-color); color: var(--accent-deep); }
.rdv-calendrier iframe{ width: 100%; height: 720px; border: 0; border-radius: 16px; background: var(--secondary-color); }
.rdv-note{ font-size: 12.5px; margin: 12px 0 0; }
.sx-rdv-tel{ text-align: center; margin: 22px 0 0; font-size: 15px; }
.sx-rdv-tel a{ color: var(--accent-deep); font-weight: 500; }

.sx-rdv-infos{ background: #FFFFFF; padding: 90px 0; }
.sx-rdv-avocat{ display: flex; gap: 20px; align-items: flex-start; margin-top: 34px; padding: 24px; background: var(--secondary-color); border-radius: 18px; }
.sx-rdv-avocat img{ width: 110px; border-radius: 14px; flex: none; }
.sx-rdv-avocat-nom{ font-weight: 500; color: var(--text-strong); margin-bottom: 6px; }
.sx-rdv-avocat p:last-child{ margin-bottom: 0; }
.sx-rdv-acces{ background: var(--secondary-color); border-radius: 18px; padding: 26px 28px; margin-bottom: 18px; }
.sx-rdv-acces h2, .sx-rdv-acces h3{ font-size: 17px; font-weight: 500; line-height: 1.5em; margin: 0 0 10px; }
.sx-rdv-acces h3:last-child{ margin-bottom: 0; }
.sx-rdv-acces a{ color: var(--accent-deep); }
.sx-rdv-form{ border: 1px solid var(--filet-c); border-radius: 18px; padding: 26px 28px; }
.sx-rdv-form h2{ font-size: 19px; font-weight: 500; line-height: 1.4em; margin-bottom: 10px; }
.sx-rdv-form a{ color: var(--accent-deep); }

@media (max-width: 991px){ .sx-rdv-infos .col-lg-5{ margin-top: 30px; } }
@media (max-width: 767px){
	.sx-page-tete h1{ font-size: 34px; }
	.rdv{ padding: 26px 20px; }
	.rdv-formules{ grid-template-columns: 1fr; }
	.rdv-prix{ font-size: 32px; }
	.rdv-calendrier iframe{ height: 1000px; }
	.sx-rdv-avocat{ flex-direction: column; }
	.sx-rdv-infos{ padding: 60px 0; }
}
@media (prefers-reduced-motion: reduce){ .rdv-formule{ transition: none; } }
.rdv-formule{ display: flex; flex-direction: column; align-items: flex-start; }
.rdv-formule::after{ margin-top: auto; }
.rdv-desc{ margin-bottom: 18px; }

/* ====== Menu à deux niveaux : panneaux à colonnes (gabarits/entete.html) ====== */
@media (min-width: 992px){
	.main-header .navbar > .container{ position: relative; }
	.main-menu ul li.sx-mega-li{ position: static; }
	.main-menu ul li.submenu > a:after{ content: ""; display: inline-block; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); margin: 0 0 3px 8px; font-family: inherit; }
	.main-menu ul ul.sx-mega{ left: 0; right: 0; top: calc(100% - 6px); width: auto; background: #FFFFFF; border-radius: 22px; box-shadow: 0 24px 60px rgba(48,46,43,.16); padding: 0; column-gap: 34px; transform: translateY(8px); transition: opacity .2s ease, transform .2s ease, visibility .2s; }
	.main-menu ul li.sx-mega-li:hover > ul.sx-mega,
	.main-menu ul li.sx-mega-li:focus-within > ul.sx-mega{ visibility: visible; opacity: 1; transform: translateY(0); padding: 0 34px 28px; }
	.sx-mega-2{ columns: 2; }
	.sx-mega-4{ columns: 4; }
	.main-menu ul ul.sx-mega li{ break-inside: avoid; }
	.main-menu ul ul.sx-mega li a{ display: block; color: var(--text-strong); font-size: 15px; padding: 8px 0 !important; border-bottom: 1px solid var(--filet-c); }
	.main-menu ul ul.sx-mega li a:hover, .main-menu ul ul.sx-mega li a:focus{ color: var(--accent-deep); padding: 8px 0 8px 4px !important; }
	.main-menu ul ul.sx-mega li.sx-mega-tete{ column-span: all; margin: 0 -34px 18px; padding: 22px 34px 18px; background: var(--secondary-color); border-radius: 22px 22px 0 0; }
	.main-menu ul ul.sx-mega li.sx-mega-tete a{ border: none; font-size: 21px; padding: 0 !important; }
	.main-menu ul ul.sx-mega li.sx-mega-tete a::after{ content: " \2192"; color: var(--accent-color); }
	.main-menu ul ul.sx-mega li.sx-mega-tete small{ display: block; font-size: 13.5px; color: var(--text-color); margin-top: 4px; }
	.main-menu ul ul.sx-mega li.sx-mega-titre{ break-before: column; padding: 2px 0 6px; }
	.main-menu ul ul.sx-mega li.sx-mega-tete + li.sx-mega-titre{ break-before: auto; }
	.sx-mega-titre span{ font-size: 11.5px; font-weight: 500; letter-spacing: .18em; text-transform: uppercase; color: var(--accent-deep); }
}
/* Menu mobile (slicknav, construit par le template à partir du même menu) */
.slicknav_menu{ background: #FFFFFF; border-radius: 0 0 18px 18px; }
.slicknav_nav li a, .slicknav_nav .slicknav_row{ color: var(--text-strong); font-family: var(--default-font); text-transform: none; }
.slicknav_nav a:hover, .slicknav_nav a:focus, .slicknav_nav .slicknav_row:hover{ color: var(--accent-deep); background: transparent; }
.slicknav_menu ul ul li a{ color: var(--text-color); font-size: 15px; }
.slicknav_nav .sx-mega-tete small{ display: none; }
.slicknav_nav .sx-mega-tete a{ font-weight: 500; color: var(--accent-deep); }
.slicknav_nav .sx-mega-titre span{ display: block; padding: 10px 20px 2px; font-size: 11px; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; color: var(--accent-deep); }
.slicknav_arrow:after{ color: var(--accent-color); }

/* ====== Pied de page définitif ====== */
.sx-pied-colonnes .about-footer-content .btn-default{ margin-top: 6px; }
.footer-links ul li{ margin-bottom: 8px; }
.footer-links ul li a{ font-size: 15px; }
.navbar-brand{ flex: none; }
@media (min-width: 992px){
	.main-menu ul ul.sx-mega li a{ white-space: normal; }
	.main-menu ul ul.sx-mega li.sx-mega-tete a::after{ content: none; }
	.main-menu ul ul.sx-mega li.sx-mega-tete a:hover{ padding: 0 !important; }
}
@media (min-width: 992px) and (max-width: 1199px){
	.navbar-brand img{ height: 48px; }
	.main-menu ul li a{ padding: 12px 7px !important; font-size: 13.5px; }
	.header-btn{ padding: 10px 14px; font-size: 13px; }
}
@media (min-width: 992px) and (max-width: 1199px){
	.main-menu ul li a{ padding: 12px 5px !important; }
	.main-menu ul li.submenu > a:after{ margin-left: 5px; }
	.header-btn{ margin-left: 6px; padding: 9px 12px; }
}
/* Photo du duo, accueil : format réduit (demande du 19/10/2026) */
.sx-hero-photo img{ aspect-ratio: 16 / 10; object-position: center 30%; max-height: 360px; }
.sx-hero-row{ max-width: 1040px; margin-left: auto; margin-right: auto; }

/* ====== Gabarit page expertise (divorce-amiable/index.html) ====== */
.sx-auteur{ font-size: 14px; color: var(--text-color); margin: 0; }
.sx-article{ background: var(--secondary-color); padding: 10px 0 90px; }
.sx-article-corps{ background: #FFFFFF; border-radius: 24px; padding: 44px 48px; }
.sx-article-corps h2{ font-size: 28px; font-weight: 400; line-height: 1.3em; margin: 44px 0 16px; }
.sx-article-corps p, .sx-article-corps li{ font-size: 16.5px; line-height: 1.75em; }
.sx-article-corps p{ margin-bottom: 12px; }
.sx-article-corps a{ color: var(--accent-deep); border-bottom: 1px solid rgba(160,64,68,.4); }
.sx-article-corps a.btn-default{ color: #FFFFFF; border: none; }
.sx-article-corps a.btn-outline{ color: var(--text-strong); border: 1.5px solid var(--text-strong); }
.sx-article-corps ul, .sx-article-corps ol{ padding-left: 22px; margin-bottom: 14px; }
.sx-article-corps li{ margin-bottom: 8px; color: var(--text-color); }
.sx-article-corps li::marker{ color: var(--accent-color); }

.sx-article-image img{ width: 100%; max-height: 380px; object-fit: cover; border-radius: 18px; }
.sx-article-image{ margin-bottom: 22px; }
.sx-article-tel{ font-weight: 500; color: var(--text-strong) !important; }
.sx-consultation{ margin-top: 44px; background: var(--secondary-color); border-radius: 20px; padding: 30px 32px; }
.sx-btns-g{ display: flex; gap: 12px; flex-wrap: wrap; margin-top: 18px; }
.sx-article-corps .sx-rdv-form{ margin-top: 24px; }
.sx-article-corps .sx-rdv-form h2{ margin-top: 0; font-size: 20px; font-weight: 500; }
.sx-colonne{ position: sticky; top: 110px; }
.sx-colonne-bloc, .sx-colonne-rdv{ background: #FFFFFF; border-radius: 22px; padding: 26px 26px; margin-bottom: 18px; }
.sx-colonne-titre{ font-size: 12px; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; color: var(--accent-deep); margin-bottom: 12px; }
.sx-colonne-bloc ul{ list-style: none; padding: 0; margin: 0; }
.sx-colonne-bloc li{ border-bottom: 1px solid var(--filet-c); }
.sx-colonne-bloc li:last-child{ border-bottom: none; }
.sx-colonne-bloc li a{ display: block; padding: 10px 0; font-size: 15px; color: var(--text-strong); }
.sx-colonne-bloc li a:hover{ color: var(--accent-deep); }
.sx-colonne-rdv{ background: var(--text-strong); background: #E8E5D9; }
.sx-colonne-rdv p{ font-size: 14.5px; }
.sx-colonne-rdv .btn-default{ display: block; text-align: center; }
.sx-colonne-tel{ display: block; text-align: center; margin-top: 12px; font-weight: 500; color: var(--text-strong); }
.sx-meme-sujet{ background: #FFFFFF; padding: 80px 0; }
.sx-meme-sujet h2{ font-size: 32px; font-weight: 400; margin-bottom: 26px; }
.sx-meme-grille{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.sx-meme-carte{ display: block; background: var(--secondary-color); border-radius: 18px; padding: 22px 22px 26px; font-size: 17px; line-height: 1.4em; color: var(--text-strong); transition: transform .2s; }
.sx-meme-carte span{ display: block; font-size: 11.5px; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; color: var(--accent-deep); margin-bottom: 10px; }
.sx-meme-carte:hover{ color: var(--accent-deep); transform: translateY(-2px); }
@media (max-width: 991px){ .sx-colonne{ position: static; margin-top: 24px; } .sx-meme-grille{ grid-template-columns: 1fr 1fr; } }
@media (max-width: 767px){
	.sx-article-corps{ padding: 26px 20px; }
	.sx-article-corps h2{ font-size: 23px; margin-top: 34px; }
	.sx-article-corps p, .sx-article-corps li{ font-size: 16px; }
	.sx-meme-grille{ grid-template-columns: 1fr; }
	.sx-meme-sujet{ padding: 60px 0; }
}
@media (prefers-reduced-motion: reduce){ .sx-meme-carte{ transition: none; } }
/* Cartouche rendez-vous mis en valeur (colonne des pages expertise) */
.sx-colonne-rdv{ position: relative; background: #FFFFFF; border: 2px solid var(--accent-color); border-radius: 22px; padding: 30px 26px 24px; box-shadow: 0 18px 44px rgba(160,64,68,.18); overflow: hidden; }
.sx-rdv-accroche{ font-size: 20px !important; line-height: 1.35em; color: var(--text-strong); margin-bottom: 14px; }
.sx-colonne-rdv .btn-default{ display: block; text-align: center; padding: 15px 20px; font-size: 15.5px; }
.sx-colonne-tel{ font-size: 14px; font-weight: 400; color: var(--text-color); }
.sx-colonne-tel:hover{ color: var(--accent-deep); }
/* Cartouche rendez-vous, v3 : boutons d'action empilés et repères, version claire */
.sx-colonne-rdv{ background: #E8E5D9; border: none; box-shadow: 0 18px 44px rgba(48,46,43,.10); padding: 26px 22px 22px; }

.sx-rdv-duo{ display: flex; flex: none; }
.sx-rdv-duo img{ width: 52px; height: 52px; }
.sx-rdv-duo img + img{ margin-left: -14px; }
.rdv-rembourse{ margin: 20px 0 0; display: inline-block; background: var(--rose); color: var(--accent-deep); font-weight: 500; font-size: 14.5px; border-radius: 10000px; padding: 8px 18px; }
/* Cartouche collant : seul le cartouche reste en haut pendant la lecture, calé sous l'en-tête quand celui-ci est affiché */
@media (min-width: 992px){
	.sx-article .col-lg-4{ display: flex; }
	.sx-colonne{ position: static; display: flex; flex-direction: column; width: 100%; }
	.sx-colonne-rdv{ position: -webkit-sticky; position: sticky; top: 24px; z-index: 5; transition: top .3s ease; }
	body:has(header .header-sticky.active) .sx-colonne-rdv{ top: calc(var(--sx-entete, 108px) + 20px); }
	.sx-colonne-bloc{ order: 2; position: relative; z-index: 1; }
}
/* Navigation de la rubrique, sous le titre des pages expertise (reprend la navigation secondaire du site actuel) */
.sx-rubrique{ display: flex; align-items: center; flex-wrap: wrap; gap: 10px 14px; margin-top: 22px; }
.sx-rubrique-titre{ font-size: 12px; font-weight: 500; letter-spacing: .18em; text-transform: uppercase; color: var(--accent-deep); }
.sx-rubrique ul{ list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.sx-rubrique li a{ display: inline-block; font-size: 14px; color: var(--text-strong); background: #FFFFFF; border: 1px solid var(--filet-c); border-radius: 10000px; padding: 6px 14px; transition: border-color .2s, color .2s; }
.sx-rubrique li a:hover{ border-color: var(--accent-color); color: var(--accent-deep); }
@media (max-width: 767px){ .sx-rubrique ul{ flex-wrap: nowrap; overflow-x: auto; padding-bottom: 6px; max-width: 100%; } .sx-rubrique li a{ white-space: nowrap; } }
@media (prefers-reduced-motion: reduce){ .sx-rubrique li a{ transition: none; } }
.sx-rubrique ul{ scrollbar-width: none; }
.sx-rubrique ul::-webkit-scrollbar{ display: none; }
/* Accueil : ensemble Repères + photo sur toute la largeur, photo en format panoramique (pas plus haute) */
.sx-hero-row{ max-width: none; }
.sx-hero-photo img{ aspect-ratio: 21 / 9; max-height: 400px; object-position: center 28%; }
@media (max-width: 991px){ .sx-hero-photo img{ aspect-ratio: 16 / 10; } }
/* L'ensemble Repères + photo déborde du conteneur pour occuper la largeur de la page */
@media (min-width: 992px){
	.sx-hero-row{ --sx-large: min(1640px, calc(100vw - 64px)); width: var(--sx-large); margin-left: calc((100% - var(--sx-large)) / 2); margin-right: 0; }
	.sx-hero-photo img{ max-height: 440px; }
}
/* Ouverture de l'accueil resserrée (bloc ~980 px, titre ~50 px, intro sur deux lignes) */
.sx-hero{ padding: 40px 0 70px; }
.sx-hero-head{ max-width: 980px; margin-bottom: 40px; }
.sx-hero-head h3{ margin-bottom: 10px; }
.sx-hero .section-title h1.hero-titre{ font-size: 50px; line-height: 1.15em; letter-spacing: -0.02em; }
.sx-accroche{ font-size: 19px; margin: 12px 0 0; }
.sx-hero-intro{ font-size: 16px; line-height: 1.6em; max-width: 860px; margin: 12px auto 16px; }
.sx-pastille{ margin: 0 0 18px; padding: 6px 16px; font-size: 13px; }
@media (max-width: 1199px){ .sx-hero .section-title h1.hero-titre{ font-size: 44px; } }
@media (max-width: 991px){ .sx-hero .section-title h1.hero-titre{ font-size: 38px; } }
@media (max-width: 767px){ .sx-hero .section-title h1.hero-titre{ font-size: 30px; } .sx-accroche{ font-size: 17px; } .sx-hero{ padding: 30px 0 50px; } }
@media (max-width: 991px){ .sx-hero-photo img{ max-height: 340px; aspect-ratio: 16 / 9; } }
.sx-hero-intro{ margin-bottom: 22px; }
.sx-hero-intro{ margin-bottom: 0; }
/* En-tête : la ligne de menu tient dans la largeur à toutes les tailles d'écran d'ordinateur */
.main-header .navbar > .container{ padding-left: 24px; padding-right: 24px; }
.header-tel{ display: inline-flex; align-items: center; gap: 8px; }
.header-tel i{ color: var(--accent-color); font-size: 15px; }
@media (min-width: 1200px) and (max-width: 1439px){
	.main-menu ul li a{ padding: 12px 8px !important; font-size: 14px; }
	.header-tel span{ display: none; }
	.header-tel{ width: 40px; height: 40px; justify-content: center; border: 1.5px solid var(--filet-c); border-radius: 50%; margin-left: 8px; }
	.header-btn{ margin-left: 10px; padding: 11px 18px; }
}
@media (min-width: 992px) and (max-width: 1199px){ .main-header .navbar > .container{ padding-left: 16px; padding-right: 16px; } }
@media (max-width: 1199px){ .header-tel{ display: none; } }

/* ====== Réservation (js/reservation.js) : fenêtre et page /contact-1/ ====== */
.resa{ display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); background: #FFFFFF; border-radius: 26px; overflow: hidden; text-align: left; }

.resa-parcours{ padding: 40px 44px; }
.resa-sous{ font-size: 15px; font-weight: 500; color: var(--text-strong); margin: 18px 0 10px; }
.resa-calendly{ width: 100%; height: 680px; border: 0; border-radius: 16px; }
.resa-erreur{ grid-column: 1 / -1; }
.resa-erreur{ font-size: 13.5px; color: #B23C28; margin: 0; min-height: 0; }
.resa-erreur:empty{ display: none; }
.resa-fin{ background: var(--secondary-color); border-radius: 16px; padding: 22px 24px; }
.resa-fin p{ margin: 0; }

/* Fenêtre */
.resa-fenetre{ width: min(1180px, calc(100vw - 48px)); max-width: none; max-height: calc(100vh - 48px); padding: 0; border: none; border-radius: 28px; background: #FFFFFF; overflow: auto; box-shadow: 0 30px 80px rgba(48,46,43,.30); }
.resa-fenetre::backdrop{ background: rgba(48,46,43,.55); }
.resa-fenetre .resa{ border-radius: 0; min-height: 100%; }
.resa-fermer{ position: absolute; top: 16px; right: 16px; z-index: 2; width: 42px; height: 42px; border-radius: 50%; border: 1px solid var(--filet-c); background: #FFFFFF; color: var(--accent-deep); font-size: 18px; }
.resa-fermer:hover{ border-color: var(--accent-color); }
html.resa-ouverte, html.resa-ouverte body{ overflow: hidden; }

/* Page /contact-1/ */
.sx-resa-page .resa{ box-shadow: 0 18px 50px rgba(48,46,43,.08); }

@media (max-width: 991px){
	.resa{ grid-template-columns: 1fr; }
	.resa-parcours{ padding: 28px 26px; }
}
@media (max-width: 767px){
	.resa-fenetre{ width: 100vw; max-height: 100dvh; height: 100dvh; border-radius: 0; }

}

@media (max-width: 991px){ .resa{ grid-template-columns: minmax(0, 1fr); } }
/* Réservation : colonne d'arguments toujours visible, fond sable sur toute la hauteur */
@media (min-width: 992px){
	.resa{ background: linear-gradient(90deg, #E8E5D9 41.6667%, #FFFFFF 41.6667%); align-items: start; }

}
/* Réservation : calendrier de deux semaines (lundi à vendredi) au lieu d'une rangée qui défile */
/* Fenêtre compacte sur les écrans peu hauts (ordinateurs portables) */
.resa-fenetre{ max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); }
@media (min-width: 992px) and (max-height: 860px){

	.resa-parcours{ padding: 26px 32px; }
	.resa-sous{ margin: 12px 0 8px; font-size: 14px; }
}

/* ====== Gabarit article de blog ====== */
.sx-categorie{ display: inline-block; font-size: 12px; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; color: var(--accent-deep); background: var(--rose); border-radius: 10000px; padding: 5px 14px; margin-bottom: 14px; }
.sx-categorie:hover{ color: var(--accent-deep); background: #EEDCDD; }
.sx-sep{ padding: 0 8px; color: #A8A49B; }
.sx-chapo-article{ font-size: 18.5px !important; color: var(--text-strong) !important; }
.sx-article-corps h2:first-child{ margin-top: 0; }
.sx-article-corps h3{ font-size: 21px; font-weight: 500; margin: 30px 0 12px; }
.sx-libelle{ color: var(--accent-deep); }
.sx-faq-article .accordion-item{ background: var(--secondary-color); border: none; border-radius: 16px; margin-bottom: 10px; overflow: hidden; }
.sx-faq-article .accordion-header{ margin: 0 !important; }
.sx-faq-article .accordion-button{ font-family: var(--default-font); font-size: 17px; font-weight: 500; color: var(--text-strong); background: transparent; padding: 18px 54px 18px 22px; box-shadow: none; }
.sx-faq-article .accordion-button:not(.collapsed){ color: var(--accent-deep); background: transparent; }
.sx-faq-article .accordion-body{ padding: 0 22px 16px; background: transparent; }
.sx-faq-article .accordion-body p{ margin: 0; }
.sx-auteur-bloc{ display: flex; gap: 18px; align-items: center; margin-top: 36px; padding-top: 28px; border-top: 1px solid var(--filet-c); }
.sx-auteur-bloc img{ width: 76px; height: 76px; border-radius: 50%; object-fit: cover; object-position: center 20%; flex: none; }
.sx-auteur-bloc p{ margin: 0; font-size: 15px !important; }
.sx-auteur-bloc-nom{ font-weight: 500; color: var(--text-strong) !important; margin-bottom: 4px !important; }
@media (max-width: 767px){ .sx-auteur-bloc{ align-items: flex-start; } .sx-faq-article .accordion-button{ font-size: 15.5px; } }

/* ====== Encadré rendez-vous dans les panneaux du menu ====== */
@media (min-width: 992px){
	.main-menu ul ul.sx-mega{ padding-right: 0; }
	.main-menu ul li.sx-mega-li:hover > ul.sx-mega,
	.main-menu ul li.sx-mega-li:focus-within > ul.sx-mega{ padding: 0 370px 28px 34px; min-height: 330px; }
	.main-menu ul ul.sx-mega li.sx-mega-tete{ margin-right: -370px; padding-right: 370px; }
	.main-menu ul ul.sx-mega li.sx-mega-cta{ position: absolute; top: 104px; right: 34px; width: 300px; background: #E8E5D9; border-radius: 18px; padding: 18px; break-inside: avoid; }
	.sx-mega-cta-titre{ font-size: 12px; font-weight: 500; letter-spacing: .18em; text-transform: uppercase; color: var(--accent-deep); margin: 0 0 12px; }

	.sx-mega-cta-note{ margin: 4px 0 0; font-size: 13px; font-weight: 500; color: var(--text-strong); }
	.sx-mega-cta-note::before{ content: "\2713"; color: var(--accent-color); margin-right: 8px; }
}
.slicknav_nav .sx-mega-cta{ display: none; }
@media (min-width: 992px){
	.main-menu ul li.sx-mega-li:hover > ul.sx-mega,
	.main-menu ul li.sx-mega-li:focus-within > ul.sx-mega{ min-height: 372px; }
}
@media (min-width: 992px) and (max-width: 1199px){
	.main-menu ul li.sx-mega-li:hover > ul.sx-mega,
	.main-menu ul li.sx-mega-li:focus-within > ul.sx-mega{ padding-right: 300px; }
	.main-menu ul ul.sx-mega li.sx-mega-tete{ margin-right: -300px; padding-right: 300px; }
	.main-menu ul ul.sx-mega li.sx-mega-cta{ width: 246px; right: 24px; }
	.sx-mega-4{ columns: 2; }
}

/* Bordeaux éclairci pour les grandes surfaces pleines (19/10/2026) : le bordeaux du logo reste sur les boutons et le texte */
:root{ --accent-clair: #B4595C; --accent-clair-survol: #A04044; --rose: #F2DCDC; --rose-liseré: #D9B1B3; }

.sx-no{ background: var(--accent-clair); }

/* Réservation : cadrage (19/10/2026) */
.resa-fenetre:focus, .resa-fenetre:focus-visible{ outline: none; }
.resa-fenetre{ margin: auto; width: min(1180px, calc(100% - 48px)); }
/* Jours sur une seule ligne : « 20 oct. » */
/* Écrans peu hauts, quelle que soit la largeur au-delà du téléphone */
@media (min-width: 768px) and (max-height: 860px){

	.resa-parcours{ padding: 24px 30px; }
	.resa-sous{ margin: 10px 0 6px; font-size: 14px; }
}

/* ====== Panneaux du menu en grille (19/10/2026) : remplace la mise en colonnes CSS, mal rendue par Safari ======
   ligne 1 : titre du panneau sur toute la largeur ; dessous : les liens, colonne par colonne ; à droite : l'encadré rendez-vous */
@media (min-width: 992px){
	.main-menu ul ul.sx-mega{ columns: auto; display: grid; grid-auto-flow: column; column-gap: 34px; row-gap: 0; align-content: start; align-items: start; }
	.main-menu ul li.sx-mega-li:hover > ul.sx-mega,
	.main-menu ul li.sx-mega-li:focus-within > ul.sx-mega{ padding: 0 34px 28px; min-height: 0; }
	.sx-mega-2{ grid-template-columns: minmax(0,1fr) minmax(0,1fr) 300px; grid-template-rows: auto repeat(3, auto); }
	.sx-mega-4{ grid-template-columns: repeat(4, minmax(0,1fr)) 300px; grid-template-rows: auto repeat(5, auto); }
	.main-menu ul ul.sx-mega li.sx-mega-tete{ grid-column: 1 / -1; grid-row: 1; margin: 0 -34px 18px; padding: 22px 34px 18px; column-span: none; }
	.main-menu ul ul.sx-mega li.sx-mega-cta{ position: static; grid-column: -2 / -1; grid-row: 2 / -1; width: auto; align-self: start; }
	.sx-mega-4 li.sx-mega-titre{ grid-row-start: 2; break-before: auto; }
	.main-menu ul ul.sx-mega li{ min-width: 0; }
}
@media (min-width: 992px) and (max-width: 1199px){
	.main-menu ul li.sx-mega-li:hover > ul.sx-mega,
	.main-menu ul li.sx-mega-li:focus-within > ul.sx-mega{ padding-right: 24px; }
	.main-menu ul ul.sx-mega li.sx-mega-tete{ margin-right: -24px; padding-right: 24px; }
	.main-menu ul ul.sx-mega li.sx-mega-cta{ width: auto; }
	.sx-mega-2{ grid-template-columns: minmax(0,1fr) minmax(0,1fr) 240px; }
	.sx-mega-4{ grid-template-columns: repeat(4, minmax(0,1fr)); }
	.sx-mega-4 li.sx-mega-cta{ display: none; }
}
@media (min-width: 992px){ .main-menu ul li.submenu.sx-mega-li:first-child ul.sx-mega{ width: auto; left: 0; right: 0; } }
@media (min-width: 992px){ .sx-mega-2{ grid-template-rows: auto repeat(3, auto) 1fr; } .sx-mega-4{ grid-template-rows: auto repeat(5, auto) 1fr; } }

/* Réservation, étape 3 : le bouton de paiement reste toujours entièrement visible (19/10/2026) */
.resa{ overflow: clip; }

/* Accueil (19/10/2026) : H1 de référence en petit, titre visuel « …, des successions et du droit de la famille », cartouches à liseré bordeaux */
.sx-hero .section-title h1.sx-h1-discret{ font-family: var(--default-font); font-size: 12.5px; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; line-height: 1.5; color: var(--accent-deep); margin: 0 0 14px; }
.sx-hero .section-title p.hero-titre{ font-family: var(--default-font); font-size: 46px; line-height: 1.15em; font-weight: 400; letter-spacing: -0.015em; color: var(--text-strong); margin: 0; }
.sx-hero .section-title p.hero-titre .l1, .sx-hero .section-title p.hero-titre .l2{ display: block; }
.sx-hero .section-title p.hero-titre .l1{ color: var(--text-strong); }
.sx-hero .section-title p.hero-titre .l2{ color: var(--accent-color); }
.sx-atouts{ list-style: none; padding: 0; margin: 22px auto 4px; display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; }
.sx-atouts li{ background: #FFFFFF; border: 1.5px solid var(--accent-color); border-radius: 16px; padding: 10px 20px; text-align: left; max-width: 380px; }
.sx-atouts b{ display: block; font-weight: 500; font-size: 17px; color: var(--accent-color); line-height: 1.3; }
.sx-atouts span{ display: block; font-size: 13.5px; color: var(--text-color); line-height: 1.4; }
@media (max-width: 1199px){ .sx-hero .section-title p.hero-titre{ font-size: 40px; } }
@media (max-width: 991px){ .sx-hero .section-title p.hero-titre{ font-size: 34px; } }
@media (max-width: 767px){ .sx-hero .section-title p.hero-titre{ font-size: 27px; } .sx-atouts li{ max-width: none; width: 100%; } }
/* Le cartouche du certificat prend exactement la largeur du titre visuel */
.sx-titre-bloc{ display: table; margin: 0 auto; }
.sx-titre-bloc .sx-atouts{ display: block; margin: 22px 0 4px; }
.sx-titre-bloc .sx-atouts li{ max-width: none; width: 100%; text-align: center; }

/* Accueil, version « classe » (19/10/2026) : titre monochrome charbon, H1 de référence foncé,
   certificat présenté comme une mention entre deux filets, sans cadre */
.sx-hero .section-title h1.sx-h1-discret{ color: var(--text-strong); }
.sx-hero .section-title p.hero-titre .l1,
.sx-hero .section-title p.hero-titre .l2{ color: var(--text-strong); }
.sx-hero .section-title p.hero-titre::after{ content: ""; display: block; width: 56px; height: 2px; background: var(--accent-color); margin: 22px auto 0; }
.sx-titre-bloc .sx-atouts{ margin: 18px 0 2px; }
.sx-titre-bloc .sx-atouts li{ background: transparent; border: none; border-radius: 0; padding: 0; }
.sx-atouts b{ display: flex; align-items: center; gap: 14px; justify-content: center; font-size: 12.5px; font-weight: 500; letter-spacing: .22em; text-transform: uppercase; color: var(--accent-deep); }
.sx-atouts b::before, .sx-atouts b::after{ content: ""; flex: 1 1 auto; max-width: 90px; height: 1px; background: var(--accent-color); opacity: .6; }
.sx-atouts span{ font-size: 15px; color: var(--text-color); margin-top: 6px; }

/* ====== Les associés (refait le 26/10/2026 sur le modèle de la photo du duo) ======
   La photo est un bloc autonome (.sx-associe-photo) : image, voile en dégradé et nom posé en bas.
   Ordinateur avec souris : la présentation apparaît sur la photo au survol.
   Mobile et tactile : la présentation est sous la photo. */
.sx-associes{ display: flex; justify-content: center; gap: 24px; flex-wrap: wrap; }
.sx-associe{ position: relative; width: 340px; margin: 0; outline: none; }
.sx-associe-photo{ position: relative; border-radius: 18px; overflow: hidden; }
.sx-associe-photo img{ display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 20%; border-radius: 18px; }
.sx-associe-photo::after{ content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(48,46,43,0) 45%, rgba(48,46,43,.82) 100%); pointer-events: none; }
.sx-associe-tete{ position: absolute; left: 20px; right: 20px; bottom: 22px; z-index: 2; text-align: center; }
.sx-associe-tete h3{ font-size: 26px; font-weight: 500; color: #FFFFFF; margin: 0 0 6px; }
.sx-associe-tete p{ font-size: 12px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: #FFFFFF; margin: 0; line-height: 1.5; }
.sx-associe-bio{ padding: 14px 4px 0; }
.sx-associe-bio p{ color: var(--text-color); font-size: 15.5px; line-height: 1.6; margin: 0 0 14px; }
.sx-associe-bio a{ display: inline-block; font-size: 14px; font-weight: 500; color: var(--text-strong); background: var(--secondary-color); border-radius: 10000px; padding: 10px 20px; }
.sx-associe-bio a:hover{ color: var(--accent-deep); }
@media (max-width: 767px){ .sx-associe{ width: 100%; max-width: 380px; } }
@media (hover: hover) and (min-width: 992px){
	.sx-associe{ border-radius: 18px; overflow: hidden; }
	.sx-associe-photo img{ transition: transform .6s ease; }
	.sx-associe-tete{ transition: opacity .3s ease, transform .4s ease; }
	.sx-associe-bio{ position: absolute; inset: 0; z-index: 3; display: flex; flex-direction: column; justify-content: center; padding: 34px 30px; background: rgba(48,46,43,.78); border-radius: 18px; opacity: 0; transform: translateY(14px); transition: opacity .35s ease, transform .4s ease; }
	.sx-associe-bio p{ color: #FFFFFF; font-size: 16.5px; margin-bottom: 18px; }
	.sx-associe-bio a{ align-self: flex-start; background: #FFFFFF; }
	.sx-associe:hover .sx-associe-bio, .sx-associe:focus-within .sx-associe-bio{ opacity: 1; transform: none; }
	.sx-associe:hover .sx-associe-tete, .sx-associe:focus-within .sx-associe-tete{ opacity: 0; transform: translateY(10px); }
	.sx-associe:hover .sx-associe-photo img{ transform: scale(1.04); }
}
@media (prefers-reduced-motion: reduce){ .sx-associe-photo img, .sx-associe-bio, .sx-associe-tete{ transition: none !important; } .sx-associe:hover .sx-associe-photo img{ transform: none; } }

/* ====== Photo du duo (accueil) : texte et bouton posés sur la photo, comme les cartes des associés (19/10/2026) ====== */
.sx-photo-carte{ position: relative; border-radius: 18px; overflow: hidden; }
.sx-photo-carte img{ display: block; width: 100%; aspect-ratio: 21 / 9; max-height: 440px; object-fit: cover; object-position: center 28%; border-radius: 18px; transition: transform .6s ease; }
.sx-photo-carte::after{ content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(48,46,43,.78) 0%, rgba(48,46,43,.45) 38%, rgba(48,46,43,0) 62%); pointer-events: none; }
.sx-photo-texte{ position: absolute; left: 34px; bottom: 30px; z-index: 2; max-width: 46%; }
.sx-photo-noms{ font-size: 13px !important; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: #FFFFFF !important; margin: 0 0 8px; line-height: 1.5; }
.sx-photo-fondamentaux{ font-size: 18px !important; line-height: 1.45 !important; color: #FFFFFF !important; margin: 0 0 18px; }
.sx-photo-fondamentaux span{ padding: 0 8px; opacity: .7; }
.sx-btn-clair{ background: #FFFFFF; color: var(--text-strong); padding: 12px 24px; }
.sx-btn-clair:hover{ color: #FFFFFF; }
.sx-photo-carte:hover img{ transform: scale(1.03); }
@media (max-width: 991px){
	.sx-photo-carte img{ aspect-ratio: 4 / 3; max-height: none; object-position: center 25%; }
	.sx-photo-carte::after{ background: linear-gradient(180deg, rgba(48,46,43,0) 35%, rgba(48,46,43,.82) 100%); }
	.sx-photo-texte{ left: 20px; right: 20px; bottom: 20px; max-width: none; }
	.sx-photo-fondamentaux{ font-size: 15px !important; margin-bottom: 12px; }
}
@media (max-width: 575px){ .sx-photo-carte img{ aspect-ratio: 3 / 4; } .sx-photo-noms{ font-size: 11.5px !important; } }
@media (prefers-reduced-motion: reduce){ .sx-photo-carte img{ transition: none; } .sx-photo-carte:hover img{ transform: none; } }
/* Texte en bandeau bas, pour ne pas couvrir les visages */
@media (min-width: 992px){
	.sx-photo-carte::after{ background: linear-gradient(180deg, rgba(48,46,43,0) 45%, rgba(48,46,43,.82) 100%); }
	.sx-photo-texte{ left: 30px; right: 30px; bottom: 24px; max-width: none; display: grid; grid-template-columns: 1fr auto; column-gap: 24px; align-items: end; }
	.sx-photo-noms{ grid-column: 1; }
	.sx-photo-fondamentaux{ grid-column: 1; margin: 0; font-size: 16px !important; }
	.sx-photo-texte .sx-btn-clair{ grid-column: 2; grid-row: 1 / span 2; align-self: end; white-space: nowrap; }
}
/* Photo du duo : texte et bouton visibles au survol seulement (souris) ; toujours visibles sur écran tactile */
@media (hover: hover){
	.sx-photo-carte::after{ opacity: 0; transition: opacity .4s ease; }
	.sx-photo-texte{ opacity: 0; transform: translateY(12px); transition: opacity .35s ease, transform .4s ease; }
	.sx-photo-carte:hover::after, .sx-photo-carte:focus-within::after{ opacity: 1; }
	.sx-photo-carte:hover .sx-photo-texte, .sx-photo-carte:focus-within .sx-photo-texte{ opacity: 1; transform: none; }
}
@media (hover: hover) and (prefers-reduced-motion: reduce){ .sx-photo-carte::after, .sx-photo-texte{ transition: none; transform: none; } }

/* ====== Gabarit page « Le cabinet » (le-cabinet/index.html) ====== */
.sx-page-tete .sx-auteur a{ color: var(--accent-deep); }
.sx-cab-intro{ display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 40px; align-items: center; background: #FFFFFF; border-radius: 24px; padding: 44px 48px; }
.sx-cab-intro h2{ font-size: 30px; font-weight: 400; margin-bottom: 16px; }
.sx-cab-intro p{ font-size: 16.5px; line-height: 1.75em; }
.sx-cab-intro .sx-reperes{ margin-top: 18px; }
.sx-cab-certificat img{ width: 100%; border-radius: 12px; box-shadow: 0 18px 50px rgba(48,46,43,.12); }
.sx-cab-certificat figcaption{ margin-top: 12px; text-align: center; font-size: 11.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--text-color); }
.sx-cab-associes{ background: #FFFFFF; padding: 90px 0; }
.sx-cab-associes .section-title{ margin-bottom: 36px; }
.sx-cab-profil{ display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 36px; align-items: start; padding: 30px 0; border-top: 1px solid var(--filet-c); }
.sx-cab-profil img{ width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 20%; border-radius: 18px; }
.sx-cab-profil h3{ font-size: 28px; font-weight: 400; margin-bottom: 4px; }
.sx-cab-fonction{ font-size: 12.5px !important; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; color: var(--accent-deep) !important; margin-bottom: 16px; }
.sx-cab-profil p{ font-size: 16.5px; line-height: 1.75em; margin-bottom: 10px; }
.sx-cab-reperes{ background: var(--secondary-color); padding: 90px 0; }
.sx-cab-reperes .section-title{ margin-bottom: 30px; }
.sx-frise{ list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.sx-frise li{ background: #FFFFFF; border-radius: 18px; padding: 24px 24px 26px; font-size: 15.5px; line-height: 1.55; color: var(--text-strong); border-top: 3px solid var(--accent-color); }
.sx-frise li span{ display: block; font-size: 34px; line-height: 1; color: var(--accent-color); margin-bottom: 12px; }
.sx-cab-consultation{ padding: 70px 0; }
@media (max-width: 991px){ .sx-cab-intro{ grid-template-columns: 1fr; padding: 30px 26px; } .sx-frise{ grid-template-columns: 1fr 1fr; } }
@media (max-width: 767px){ .sx-cab-profil{ grid-template-columns: 1fr; gap: 18px; } .sx-cab-profil img{ max-width: 300px; } .sx-frise{ grid-template-columns: 1fr; } .sx-cab-associes, .sx-cab-reperes{ padding: 60px 0; } .sx-cab-intro h2{ font-size: 24px; } }

/* ====== Gabarits : page légale, liste du blog, 404 (19/10/2026) ====== */
.sx-legal h2{ font-size: 22px; font-weight: 500; margin-top: 34px; }
.sx-legal h2:first-child{ margin-top: 0; }
.sx-a-completer{ background: var(--rose); border-left: 3px solid var(--accent-color); padding: 10px 14px; font-size: 14.5px !important; color: var(--accent-deep) !important; }
.sx-posts{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.sx-post{ background: #FFFFFF; border-radius: 20px; padding: 28px 30px; display: flex; flex-direction: column; }
.sx-post-meta{ display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.sx-post-meta .sx-categorie{ margin: 0; }
.sx-post-date{ font-size: 13.5px; color: var(--text-color); }
.sx-post h2{ font-size: 22px; font-weight: 400; line-height: 1.35; margin-bottom: 12px; }
.sx-post h2 a{ color: var(--text-strong); }
.sx-post h2 a:hover{ color: var(--accent-deep); }
.sx-post p{ font-size: 15px; line-height: 1.65; margin-bottom: 16px; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.sx-post-lire{ margin-top: auto; font-weight: 500; color: var(--accent-deep); }
.sx-post-lire::after{ content: " \2192"; }
.sx-404{ background: var(--secondary-color); padding: 90px 0 110px; text-align: center; }
.sx-404-code{ font-size: 120px !important; line-height: 1 !important; color: var(--accent-color) !important; margin-bottom: 10px; }
.sx-404 h1{ font-size: 42px; font-weight: 400; margin-bottom: 14px; }
.sx-404 .sx-page-intro{ margin: 0 auto 36px; }
.sx-404-liens{ text-align: left; margin-bottom: 30px; }
.sx-404-btns{ justify-content: center; }
@media (max-width: 767px){ .sx-posts{ grid-template-columns: 1fr; } .sx-post{ padding: 22px 20px; } .sx-404-code{ font-size: 80px !important; } .sx-404 h1{ font-size: 30px; } }

/* ====== Gabarits : catégorie du blog, contact secondaire (19/10/2026) ====== */
.sx-rubrique li a.actif{ background: var(--accent-color); border-color: var(--accent-color); color: #FFFFFF; }
.sx-post-pilier{ background: var(--secondary-color); border: 1.5px solid var(--filet-c); }
.sx-contact-page{ padding-top: 40px; }
.sx-contact-page .col-lg-7 > p, .sx-contact-page .sx-reperes li{ font-size: 16.5px; }
.sx-contact-page .sx-reperes a{ color: var(--accent-deep); }
.sx-contact-page .sx-rdv-form{ margin-top: 26px; }
.sx-form-contact{ display: grid; grid-template-columns: 1fr 1fr; gap: 12px 14px; margin-top: 10px; }
.sx-form-contact select{ width: 100%; font-family: var(--default-font); font-size: 15.5px; color: var(--text-strong); background: #FFFFFF; border: 1.5px solid var(--filet-c); border-radius: 12px; padding: 10px 12px; }
 .sx-form-note, .sx-form-contact .sx-a-completer, .sx-form-contact button{ grid-column: 1 / -1; }
.sx-form-note{ font-size: 13.5px !important; margin: 0; }
.sx-form-contact button{ justify-self: start; border: none; }
.sx-form-contact button[disabled]{ opacity: .5; cursor: not-allowed; }
.sx-titre-resa{ font-size: 34px; font-weight: 400; margin-bottom: 8px; }
.sx-reservation .sx-page-intro{ margin-bottom: 24px; }
@media (max-width: 767px){ .sx-form-contact{ grid-template-columns: 1fr; } }

.sx-hero{ padding-bottom: 40px; }

@media (max-width: 767px){ .sx-hero{ padding-bottom: 30px; } }

/* ====== Lisibilité : tailles de texte relevées (19/10/2026) ====== */
body{ font-size: 17px; line-height: 1.7; }
p{ font-size: 17px; line-height: 1.7; }
.sx-article-corps p, .sx-article-corps li, .sx-cab-intro p, .sx-cab-profil p, .sx-contact-page .col-lg-7 > p, .sx-contact-page .sx-reperes li{ font-size: 17px; line-height: 1.7; }
.sx-article-corps h2{ font-size: 32px; }
.sx-article-corps h3{ font-size: 24px; }
.sx-cab-profil h3{ font-size: 30px; }
.sx-reperes li{ font-size: 16px; line-height: 1.6; }
 .sx-meme-carte p, .sx-etapes-texte p, .sx-domaines-grille p, .sx-post p{ font-size: 15.5px; }

.sx-mega-cta-note{ font-size: 14.5px; }
 .sx-rubrique a, .sx-categorie{ font-size: 14px; }
.btn-default, .sx-btn-clair{ font-size: 16px; font-weight: 500; }
.faq-accordion .accordion-button, .accordion-button{ font-size: 18px; }
.accordion-body p{ font-size: 16.5px; }
.footer-links ul li a, .footer-contact-item p, .footer-contact-item a{ font-size: 15.5px; }

@media (max-width: 767px){
	body, p, .sx-article-corps p, .sx-article-corps li{ font-size: 16.5px; }
	.sx-article-corps h2{ font-size: 27px; }

}
.sx-posts .sx-post-pilier{ grid-column: 1 / -1; }
@media (min-width: 992px) and (max-width: 1199px){ .col-lg-8 .sx-posts{ grid-template-columns: 1fr; } }
/* Page cabinet : contenu sur deux tiers, cartouche à droite (19/10/2026) */
.sx-cab-page > .container > .row > .col-lg-8 > .sx-article, .sx-cab-page .sx-cab-associes, .sx-cab-page .sx-cab-reperes{ padding: 0 0 50px; background: transparent; }
.sx-cab-page .col-lg-8 .container{ padding: 0; max-width: none; }
.sx-cab-page .sx-cab-intro{ grid-template-columns: 1fr; gap: 28px; padding: 36px 38px; margin-bottom: 50px; }
.sx-cab-page .sx-cab-certificat{ max-width: 420px; margin: 0 auto; }
.sx-cab-page .sx-cab-associes{ background: #FFFFFF; border-radius: 24px; padding: 36px 38px 20px; margin-bottom: 50px; }
.sx-cab-page .sx-cab-profil{ grid-template-columns: 220px minmax(0, 1fr); gap: 28px; }
.sx-cab-page .sx-cab-reperes{ padding-bottom: 20px; }
@media (max-width: 991px){ .sx-cab-page .col-lg-4{ margin-top: 10px; } }
@media (max-width: 767px){ .sx-cab-page .sx-cab-intro, .sx-cab-page .sx-cab-associes{ padding: 26px 22px; } .sx-cab-page .sx-cab-profil{ grid-template-columns: 1fr; } }

/* Réservation en mode Calendly (20/10/2026) : le calendrier occupe toute la colonne de droite */
.resa-calendly-seul{ height: 100%; min-height: 720px; border-radius: 0; display: block; }
.resa-fenetre .resa-parcours:has(.resa-calendly-seul){ padding: 0; }
@media (max-width: 767px){ .resa-calendly-seul{ min-height: 640px; } }

/* Réservation : rappel du format choisi sous l'étape 2 (21/10/2026) */

/* Fenêtre « Je souhaite être contacté par un avocat » (21/10/2026) */

/* Fenêtre de rendez-vous : textes et cadre un peu plus grands (21/10/2026) */
.resa-fenetre{ width: min(1280px, calc(100% - 40px)); }

.resa-parcours{ padding: 40px 46px; }
@media (max-width: 767px){ .resa-parcours{ padding: 24px 20px; } }

.resa-fermer{ position: sticky; top: 14px; float: right; margin: 14px 14px -56px 0; z-index: 6; box-shadow: 0 4px 14px rgba(48,46,43,.14); }

@media (max-width: 767px){ .resa-fermer{ margin-bottom: -46px; } }
/* Cartouche : les trois bulles ont la même couleur au repos, bordeaux plein au survol (21/10/2026) */

/* Formulaire Tally de demande de contact (23/10/2026) */
.resa-tally{ min-height: 720px; }
.resa-tally iframe{ width: 100%; height: 760px; border: 0; display: block; }
.resa-tally-attente{ font-size: 14px; color: var(--text-color); padding: 20px 0; }
@media (max-width: 767px){ .resa-tally iframe{ height: 820px; } }
/* Accueil : certificat de spécialisation mis en valeur (23/10/2026) */
.sx-certificat-carte{ margin-top: 18px; background: #FFFFFF; border: 2px solid var(--accent-color); border-radius: 22px; padding: 22px 24px 20px; box-shadow: 0 18px 44px rgba(160,64,68,.10); }
.sx-certificat-sur{ font-size: 12px; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; color: var(--accent-deep); margin: 0 0 4px; }
.sx-certificat-titre{ font-size: 21px; font-weight: 500; color: var(--text-strong); line-height: 1.3; margin: 0 0 14px; }
.sx-certificat-carte .sx-certificat{ margin: 0; }
.sx-certificat-lien{ display: block; position: relative; border-radius: 14px; overflow: hidden; }
.sx-certificat-carte .sx-certificat img{ border-radius: 14px; box-shadow: none; border: 1px solid var(--filet-c); transition: transform .3s; display: block; }
.sx-certificat-lien:hover img{ transform: scale(1.02); }
.sx-certificat-loupe{ position: absolute; right: 12px; bottom: 12px; font-size: 13px; font-weight: 500; color: #FFFFFF; background: var(--accent-color); border-radius: 10000px; padding: 6px 12px; }
.sx-certificat-carte figcaption{ margin-top: 12px; text-align: left; font-size: 13.5px; letter-spacing: 0; text-transform: none; color: var(--text-color); line-height: 1.5; }
.sx-certificat-note{ margin: 12px 0 0; padding-top: 12px; border-top: 1px dashed var(--filet-c); font-size: 14px; color: var(--text-strong); line-height: 1.5; }
@media (prefers-reduced-motion: reduce){ .sx-certificat-carte .sx-certificat img{ transition: none; } }

@media (prefers-reduced-motion: no-preference){
	@keyframes ori-apparait{ from{ opacity: 0; transform: translateY(8px); } to{ opacity: 1; transform: none; } }
}

/* ====== Fiche guidée compacte : étapes en ligne, réponses en pastilles, sans colonne de droite (23/10/2026) ====== */

/* Fiche guidée : une seule coche par pastille de réponse, étapes masquées (23/10/2026) */

/* Accueil : lanceur du questionnaire (le parcours se déroule dans la fenêtre, 23/10/2026) */

/* Accueil : espacements verticaux resserrés entre les sections (23/10/2026, 100 px → 70 px) */
.sx-expertise, .sx-cabinet, .sx-etapes, .sx-domaines, .sx-faq, .sx-contact, .our-team.our-team, .our-blog.our-blog{ padding: 70px 0; }

.sx-hero{ padding-bottom: 36px; }
.sx-expertise .section-title, .sx-cabinet .section-title, .sx-etapes .section-title, .sx-domaines .section-title, .sx-faq .section-title, .our-team .section-title, .our-blog .section-title{ margin-bottom: 28px; }
@media (max-width: 767px){ .sx-expertise, .sx-cabinet, .sx-etapes, .sx-domaines, .sx-faq, .sx-contact, .our-team.our-team, .our-blog.our-blog{ padding: 48px 0; } }

/* Rosé plus franc, option 1 validée par Julien (23/10/2026) : #F2DCDC avec liseré #D9B1B3 sur les surfaces */
.sx-a-completer{ border: 1px solid var(--rose-liseré); }
.sx-a-completer{ border-left-width: 3px; }
.sx-categorie, .rdv-rembourse{ border: 1px solid var(--rose-liseré); }
/* Réponses déjà données : thème de la question puis réponse (24/10/2026) */
/* Accueil : certificat de spécialisation mis en valeur sous le titre (24/10/2026) */
.sx-badge-certif{ display: inline-flex; align-items: center; gap: 16px; margin: 20px auto 6px; padding: 12px 18px 12px 14px; background: #FFFFFF; border: 1.5px solid var(--accent-color); border-radius: 18px; box-shadow: 0 12px 34px rgba(160,64,68,.12); text-align: left; max-width: 100%; }
.sx-badge-certif-icone{ flex: 0 0 auto; width: 48px; height: 48px; border-radius: 50%; background: var(--accent-clair); color: #FFFFFF; display: flex; align-items: center; justify-content: center; font-size: 22px; }
.sx-badge-certif-texte b{ display: block; font-size: 12.5px; font-weight: 500; letter-spacing: .18em; text-transform: uppercase; color: var(--accent-deep); line-height: 1.3; }
.sx-badge-certif-texte span{ display: block; font-size: 16px; color: var(--text-strong); line-height: 1.35; margin-top: 3px; }
.sx-badge-certif-lien{ flex: 0 0 auto; font-size: 13.5px; font-weight: 500; color: var(--accent-deep); border: 1px solid var(--accent-color); border-radius: 10000px; padding: 7px 14px; white-space: nowrap; margin-left: 6px; }
.sx-badge-certif-lien:hover{ background: var(--accent-color); color: #FFFFFF; }
.sx-titre-bloc .sx-badge-certif{ display: inline-flex; }
@media (max-width: 767px){ .sx-badge-certif{ flex-wrap: wrap; justify-content: center; text-align: center; padding: 14px 16px; } .sx-badge-certif-texte{ flex: 1 1 100%; text-align: center; } .sx-badge-certif-lien{ margin: 2px 0 0; } }
/* Formulaire de contact Tally (fenêtre et /contact-1/) : à la charte, affiché à 85 %, hauteur suivie par le script (24/10/2026) */
.resa-tally{ min-height: 0; height: 640px; overflow: hidden; margin: 0 -8px; }
.resa-tally iframe{ width: 117.65%; height: 760px; transform: scale(0.85); transform-origin: 0 0; }
@media (max-width: 767px){ .resa-tally iframe{ height: 760px; } }
/* Question à saisie de date (date d'audience), 24/10/2026 */

/* Question du parcours plus visible : bloc souligné d'un filet bordeaux, titre agrandi, rappel des réponses en retrait (24/10/2026) */

/* Haut de l'accueil, option B (24/10/2026) : titre et introduction à gauche, carte du certificat avec sa vignette à droite */
.sx-hero-deux{ display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 36px; align-items: center; text-align: left; max-width: none; }
.sx-hero-deux .sx-h1-discret, .sx-hero-deux .hero-titre, .sx-hero-deux .sx-hero-intro{ text-align: left; }
.sx-hero-deux .sx-hero-intro{ margin: 18px 0 0; max-width: none; }
.sx-hero-deux .sx-titre-bloc{ margin: 0; }
.sx-hero .section-title.sx-hero-deux p.hero-titre::after{ margin-left: 0; }
.sx-hero-certif{ background: #FFFFFF; border: 1px solid var(--filet-c); border-radius: 18px; padding: 18px 20px 18px; text-align: center; box-shadow: 0 14px 40px rgba(48,46,43,.08); }
.sx-hero-certif-vignette{ display: block; width: 150px; margin: 0 auto 12px; border-radius: 6px; overflow: hidden; border: 1px solid var(--filet-c); }
.sx-hero-certif-vignette img{ display: block; width: 100%; height: auto; transition: transform .3s; }
.sx-hero-certif-vignette:hover img{ transform: scale(1.03); }
.sx-hero-certif-sur{ font-size: 11.5px; font-weight: 500; letter-spacing: .18em; text-transform: uppercase; color: var(--accent-deep); margin: 0 0 4px; line-height: 1.35; }
.sx-hero-certif-titre{ font-size: 15.5px; color: var(--text-strong); line-height: 1.35; margin: 0 0 10px; }
.sx-hero-certif-lien{ display: inline-block; font-size: 13.5px; font-weight: 500; color: var(--accent-deep); border: 1px solid var(--accent-color); border-radius: 10000px; padding: 6px 14px; }
.sx-hero-certif-lien:hover{ background: var(--accent-color); color: #FFFFFF; }
@media (max-width: 991px){ .sx-hero-deux{ grid-template-columns: 1fr; gap: 22px; text-align: center; } .sx-hero-deux .sx-h1-discret, .sx-hero-deux .hero-titre, .sx-hero-deux .sx-hero-intro{ text-align: center; } .sx-hero .section-title.sx-hero-deux p.hero-titre::after{ margin-left: auto; } .sx-hero-certif{ max-width: 460px; margin: 0 auto; } }
@media (prefers-reduced-motion: reduce){ .sx-hero-certif-vignette img{ transition: none; } }
/* Haut de l'accueil : une seule colonne centrée, carte horizontale du certificat sous l'introduction (24/10/2026, remplace les deux colonnes qui se gênaient aux largeurs moyennes) */
.sx-hero-une{ display: block; text-align: center; }
.sx-hero-une .sx-hero-intro{ margin: 16px auto 0; max-width: 860px; }
.sx-hero-certif-ligne{ display: flex; align-items: center; gap: 18px; text-align: left; max-width: 760px; margin: 22px auto 0; padding: 12px 16px 12px 12px; box-shadow: 0 10px 30px rgba(48,46,43,.07); }
.sx-hero-certif-ligne .sx-hero-certif-vignette{ flex: 0 0 auto; width: 118px; margin: 0; }
.sx-hero-certif-ligne .sx-hero-certif-texte{ flex: 1 1 auto; min-width: 0; }
.sx-hero-certif-ligne .sx-hero-certif-sur{ margin-bottom: 3px; }
.sx-hero-certif-ligne .sx-hero-certif-titre{ margin: 0; font-size: 15px; }
.sx-hero-certif-ligne .sx-hero-certif-lien{ flex: 0 0 auto; white-space: nowrap; }
@media (max-width: 767px){ .sx-hero-certif-ligne{ flex-wrap: wrap; justify-content: center; text-align: center; padding: 14px; } .sx-hero-certif-ligne .sx-hero-certif-texte{ flex: 1 1 100%; } }
/* Cartouche du certificat sans vignette : médaillon, texte, bouton, repli propre aux petites largeurs (24/10/2026) */
.sx-hero-certif-ligne{ flex-wrap: wrap; justify-content: center; gap: 12px 18px; padding: 12px 18px; }
.sx-hero-certif-icone{ flex: 0 0 auto; width: 44px; height: 44px; border-radius: 50%; background: var(--accent-clair); color: #FFFFFF; display: flex; align-items: center; justify-content: center; font-size: 20px; }
.sx-hero-certif-ligne .sx-hero-certif-texte{ flex: 1 1 320px; }
.sx-hero-certif-ligne .sx-hero-certif-lien{ margin-left: auto; }
@media (max-width: 767px){ .sx-hero-certif-ligne{ padding: 14px; } .sx-hero-certif-ligne .sx-hero-certif-texte{ flex: 1 1 100%; text-align: center; } .sx-hero-certif-ligne .sx-hero-certif-lien{ margin-left: 0; } }
.sx-hero-certif-ligne .sx-hero-certif-texte{ text-align: center; }
@media (min-width: 768px){ .sx-hero-certif-ligne .sx-hero-certif-texte{ text-align: left; } }
/* Cartouche du certificat : liseré bordeaux, textes centrés, bouton centré en dessous (24/10/2026) */
.sx-hero-certif-ligne{ border: 1.5px solid var(--accent-color); flex-direction: column; align-items: center; gap: 10px; padding: 16px 22px 18px; }
.sx-hero-certif-ligne .sx-hero-certif-texte{ flex: 0 0 auto; text-align: center; }
@media (min-width: 768px){ .sx-hero-certif-ligne .sx-hero-certif-texte{ text-align: center; } }
.sx-hero-certif-ligne .sx-hero-certif-lien{ margin-left: 0; }
/* Cartouche du certificat resserré (24/10/2026) */
.sx-hero-certif-ligne{ display: inline-flex; width: auto; max-width: 100%; margin: 16px auto 0; padding: 10px 18px 12px; gap: 6px; box-shadow: none; }
.sx-hero-une .sx-hero-certif-ligne{ display: inline-flex; }
.sx-hero-certif-ligne .sx-hero-certif-sur{ margin-bottom: 2px; }
.sx-hero-certif-ligne .sx-hero-certif-titre{ font-size: 14.5px; }
.sx-hero-certif-ligne .sx-hero-certif-lien{ padding: 5px 12px; font-size: 13px; margin-top: 2px; }
/* Ligne du cartouche : segments insécables, séparateurs masqués quand la ligne se replie (24/10/2026) */
.sx-hero-certif-sur .sx-seg{ white-space: nowrap; display: inline-block; }
.sx-hero-certif-sur .sx-sep{ white-space: pre; }
@media (max-width: 767px){ .sx-hero-certif-sur .sx-sep{ display: none; } .sx-hero-certif-sur .sx-seg{ display: block; } .sx-hero-certif-ligne{ padding: 10px 14px 12px; } .sx-hero-certif-ligne .sx-hero-certif-titre{ font-size: 14px; } }
/* Bloc « Formulaire de contact » des pages : bulle de rappel du cartouche à la place du texte provisoire (24/10/2026) */
.sx-rdv-form{ border-color: var(--accent-color); border-width: 1.5px; }
.sx-rdv-form-tel{ font-size: 15px; margin: 0; }
.sx-rdv-form-tel a{ font-weight: 500; }
/* Logo de l'en-tête agrandi (24/10/2026) : 60 px → 72 px sur grand écran */
@media (min-width: 1200px){ .navbar-brand img{ height: 80px; } }
/* Affichage en minuscules d'un mot repris en capitales du site actuel, texte inchangé dans le code (24/10/2026) */
.sx-minuscule{ text-transform: lowercase; }

/* Mobile (24/10/2026, retours de Julien sur iPhone) : H1 discret sur une seule ligne, grand titre en texte continu et plus grand, textes agrandis */
@media (max-width: 767px){
  .sx-hero .section-title h1.sx-h1-discret{ font-size: 2.6vw; letter-spacing: .09em; white-space: nowrap; }
  .sx-hero .section-title p.hero-titre .l1, .sx-hero .section-title p.hero-titre .l2{ display: inline; }
  .sx-hero .section-title p.hero-titre .l2{ margin-top: 0; }
  .sx-hero .section-title p.hero-titre{ font-size: 36px; line-height: 1.12; letter-spacing: -0.01em; }
  .sx-hero .section-title p.hero-titre::after{ margin-top: 16px; }
  body, p{ font-size: 17.5px; line-height: 1.6; }
  .sx-hero-intro{ font-size: 17.5px; line-height: 1.55; }
  .sx-hero-certif-ligne .sx-hero-certif-sur{ font-size: 12.5px; letter-spacing: .14em; }
  .sx-hero-certif-ligne .sx-hero-certif-titre{ font-size: 15.5px; }
  .sx-hero-certif-ligne .sx-hero-certif-lien{ font-size: 14.5px; padding: 8px 16px; }
  .sx-reperes li{ font-size: 16.5px; }
}
@media (max-width: 400px){ .sx-hero .section-title h1.sx-h1-discret{ font-size: 2.55vw; letter-spacing: .07em; } }
/* Mobile : un cran de plus (24/10/2026, second retour de Julien) */
@media (max-width: 767px){
  body, p{ font-size: 18px; line-height: 1.6; }
  .sx-hero-intro{ font-size: 18px; }
  .sx-hero .section-title p.hero-titre{ font-size: 38px; }
  .sx-reperes li{ font-size: 17px; }
  .sx-hero-certif-ligne .sx-hero-certif-titre{ font-size: 16px; }
  .main-menu ul li a, .slicknav_nav a{ font-size: 17px; }
  h2{ font-size: 30px; }
}

/* Réservation sur mobile : calendrier Calendly à pleine largeur et hauteur suivie (24/10/2026) */
@media (max-width: 767px){
  .resa-parcours{ padding: 20px 12px 24px; }
  .resa-calendly{ min-height: 760px; height: 900px; border-radius: 12px; }
}
/* Fenêtre de réservation sur mobile : pleine largeur réelle (le navigateur impose sinon une marge autour des fenêtres) (24/10/2026) */
@media (max-width: 767px){
  .resa-fenetre{ width: 100vw; max-width: 100vw; height: 100dvh; max-height: 100dvh; margin: 0; padding: 0; inset: 0; border-radius: 0; }
  .resa-fenetre .resa{ width: 100%; min-height: 100%; border-radius: 0; }
   .resa-fenetre .resa-parcours{ width: 100%; }
}

@media (max-width: 1199px){

  header .navbar{ position: relative; }
}
/* Loupe : version dans le menu jusqu'à 992 px (petite entre 992 et 1199), version mobile seulement sous 992 px (24/10/2026) */

/* Barre basse centrée : loupe et contact, remplace le bouton flottant « Divorce amiable » (25/10/2026) */

/* Cadres Tally : hauteur de départ suffisante tant que la hauteur réelle n'est pas connue (25/10/2026) */
@media (max-width: 767px){ .resa-tally{ height: 760px; } .resa-tally iframe{ transform: none; width: 100%; height: 760px; } }
/* Cadres Tally sans réduction d'échelle : Safari ne peint pas un cadre transformé (25/10/2026) */
.resa-tally{ height: auto; overflow: visible; margin: 0; }
.resa-tally iframe{ transform: none; width: 100%; height: 780px; }

/* Page contact : formulaire Tally intégré dans la page (25/10/2026) */
.sx-tally-page{ margin: 14px -8px 10px; }
.sx-tally-page iframe{ display: block; width: 100%; height: 820px; border: 0; }
@media (max-width: 767px){ .sx-tally-page iframe{ height: 880px; } }
/* Formulaire de contact Tally : cadre assez haut pour les sept questions et le bouton d'envoi (25/10/2026) */
.resa-tally iframe{ height: 1060px; }
.sx-tally-page iframe{ height: 1060px; }
@media (max-width: 767px){ .resa-tally iframe{ height: 1120px; } .sx-tally-page iframe{ height: 1120px; } }
/* Mobile (26/10/2026) : grand titre ramené à une taille proche des sites de référence, petite ligne jamais coupée sur iPhone */
html{ -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
@media (max-width: 767px){
  .sx-hero .section-title p.hero-titre{ font-size: 31px; line-height: 1.15; }
  .sx-hero .section-title h1.sx-h1-discret{ font-size: min(2.4vw, 11px); letter-spacing: .06em; white-space: nowrap; overflow: visible; }
}
@media (max-width: 360px){ .sx-hero .section-title p.hero-titre{ font-size: 28px; } }
/* Coupures de lignes harmonieuses (26/10/2026) : titres équilibrés, paragraphes sans mot orphelin */
h1, h2, h3, .hero-titre, .hero-titre .l1, .hero-titre .l2, .sx-hero-certif-titre, .sx-badge-certif-texte span{ text-wrap: balance; }
p, li{ text-wrap: pretty; }
.sx-hero-intro{ text-wrap: balance; }
@media (max-width: 767px){
  .sx-hero .section-title p.hero-titre .l1, .sx-hero .section-title p.hero-titre .l2{ display: block; text-wrap: balance; }
  .sx-hero .section-title p.hero-titre .l2{ margin-top: 2px; }
}
/* Mobile : grand titre sur trois lignes équilibrées, bloc élargi (26/10/2026) */
@media (max-width: 767px){
  .sx-hero .section-title p.hero-titre{ font-size: 7.6vw; line-height: 1.16; letter-spacing: -0.01em; margin-left: -8px; margin-right: -8px; text-wrap: balance; }
  .sx-hero .section-title p.hero-titre .l1, .sx-hero .section-title p.hero-titre .l2{ display: inline; }
}
/* Accueil : petite ligne du H1 en bordeaux (26/10/2026) */
.sx-hero .section-title h1.sx-h1-discret{ color: var(--accent-deep); }

/* ====== Bandeau cookies (26/10/2026, js/mesure.js) : Refuser et Accepter au même niveau ====== */
.cc-bandeau{ position: fixed; left: 20px; bottom: 20px; z-index: 1000; width: min(440px, calc(100vw - 40px)); background: #FFFFFF; border: 1px solid var(--filet-c, #DDDBD2); border-radius: 18px; box-shadow: 0 18px 50px rgba(48,46,43,.16); padding: 22px 24px 20px; }
.cc-bandeau[hidden]{ display: none; }
.cc-titre{ font-size: 13px !important; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; color: var(--accent-deep) !important; margin: 0 0 8px; }
.cc-texte{ font-size: 14.5px !important; line-height: 1.55 !important; color: var(--text-color); margin: 0 0 16px; }
.cc-texte a{ color: var(--accent-deep); text-decoration: underline; text-underline-offset: 2px; }
.cc-boutons{ display: flex; gap: 10px; }
.cc-bouton{ flex: 1 1 0; font: inherit; font-size: 15px; font-weight: 500; line-height: 1; padding: 13px 18px; border-radius: 10000px; border: 1.5px solid var(--text-strong, #302E2B); background: #FFFFFF; color: var(--text-strong, #302E2B); cursor: pointer; }
.cc-bouton:hover, .cc-bouton:focus-visible{ background: var(--text-strong, #302E2B); color: #FFFFFF; }

@media (max-width: 575px){ .cc-bandeau{ left: 12px; right: 12px; bottom: 12px; width: auto; padding: 18px 18px 16px; } .cc-texte{ font-size: 14px !important; } }
/* Préchargeur raccourci (27/10/2026, accord de Julien) : il s'efface au plus tard 0,8 s après l'affichage,
   sans attendre le chargement de toutes les images (meilleure mesure de vitesse de Google) */
.preloader{ animation: sx-fin-prechargeur .35s ease .45s forwards; }
@keyframes sx-fin-prechargeur{ to{ opacity: 0; visibility: hidden; pointer-events: none; } }
@media (prefers-reduced-motion: reduce){ .preloader{ animation-duration: .01s; animation-delay: 0s; } }
/* Bandeau cookies plus compact (27/10/2026) */
.cc-bandeau{ padding: 16px 18px 14px; }
.cc-titre{ margin-bottom: 6px; }
.cc-texte{ font-size: 13.5px !important; line-height: 1.5 !important; margin-bottom: 12px; }
.cc-bouton{ padding: 11px 16px; font-size: 14.5px; }

/* Page « Coût d'un divorce amiable » (27/10/2026) : cartes des trois formules */
.sx-formules{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin: 22px 0 10px; }
.sx-formule{ display: flex; flex-direction: column; background: var(--secondary-color); border: 1px solid var(--filet-c); border-top: 3px solid var(--accent-color); border-radius: 18px; padding: 20px 20px 18px; }
.sx-article-corps .sx-formule p{ margin: 0; }
.sx-article-corps .sx-formule-nom{ font-size: 12.5px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--accent-deep); }
.sx-article-corps .sx-formule-prix{ font-size: 30px; line-height: 1.2; font-weight: 500; color: var(--text-strong); margin: 8px 0 10px; white-space: nowrap; }
.sx-formule-prix span{ font-size: 15px; font-weight: 500; color: var(--accent-deep); }
.sx-article-corps .sx-formule-cas{ font-size: 15px; line-height: 1.6; padding-top: 10px; border-top: 1px solid var(--filet-c); }
.sx-article-corps .sx-formules-note{ font-size: 14px; color: var(--text-color); margin-bottom: 18px; }
@media (max-width: 991px){
	.sx-formules{ grid-template-columns: 1fr; }
	.sx-article-corps .sx-formule-prix{ font-size: 27px; }
}

/* Images dont la largeur et la hauteur sont déclarées dans le HTML (27/10/2026) : la hauteur suit la largeur
   affichée, sinon l'image est déformée (logo du pied de page). :where() garde une priorité nulle, toute règle
   qui fixe une hauteur (logo de l'en-tête, photos recadrées) reste prioritaire. */
:where(img[height]){ height: auto; }

/* Accessibilité (28/10/2026) : les liens du fil d'Ariane et de la ligne auteur se distinguent du texte autrement
   que par la couleur (soulignement fin). */
.sx-ariane a, .sx-page-tete .sx-auteur a{ text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; text-decoration-color: rgba(134,52,58,.5); }
.sx-ariane a:hover, .sx-page-tete .sx-auteur a:hover{ text-decoration-color: currentColor; }

/* Tableau comparatif de la page « Prix d'un divorce amiable » (28/10/2026) */
.sx-tableau{ overflow-x: auto; margin: 18px 0 14px; border: 1px solid var(--filet-c); border-radius: 14px; }
.sx-tableau table{ width: 100%; border-collapse: collapse; font-size: 14.5px; line-height: 1.5; min-width: 640px; }
.sx-tableau th, .sx-tableau td{ padding: 12px 14px; text-align: left; vertical-align: top; border-bottom: 1px solid var(--filet-c); }
.sx-tableau th{ background: var(--secondary-color); font-weight: 500; color: var(--text-strong); font-size: 13px; letter-spacing: .04em; text-transform: uppercase; }
.sx-tableau tbody tr:last-child td{ border-bottom: 0; }
.sx-tableau td:first-child{ color: var(--text-strong); font-weight: 500; }
@media (max-width: 767px){
	/* Sur mobile, chaque ligne du tableau devient une fiche : plus de défilement horizontal */
	.sx-tableau{ border: 0; overflow: visible; }
	.sx-tableau table{ min-width: 0; display: block; }
	.sx-tableau thead{ display: none; }
	.sx-tableau tbody, .sx-tableau tr, .sx-tableau td{ display: block; }
	.sx-tableau tr{ border: 1px solid var(--filet-c); border-radius: 14px; background: #FFFFFF; margin-bottom: 12px; padding: 4px 0; }
	.sx-tableau td{ border-bottom: 0; padding: 8px 14px; }
	.sx-tableau td:first-child{ font-size: 16px; padding-top: 12px; border-bottom: 1px solid var(--filet-c); margin-bottom: 4px; }
	.sx-tableau td:not(:first-child)::before{ content: attr(data-label); display: block; font-size: 11.5px; letter-spacing: .08em; text-transform: uppercase; color: var(--accent-deep); margin-bottom: 2px; }
}

/* Page prix (29/10/2026) : liste « l'essentiel » et sommaire */
.sx-article-corps .sx-essentiel{ list-style: none; padding: 0; margin: 0 0 22px; display: grid; grid-template-columns: 1fr 1fr; gap: 6px 18px; }
.sx-article-corps .sx-essentiel li{ font-size: 15.5px; padding-left: 18px; position: relative; margin: 0; }
.sx-article-corps .sx-essentiel li::before{ content: ""; position: absolute; left: 0; top: .6em; width: 8px; height: 8px; border-radius: 50%; background: var(--accent-color); }
.sx-sommaire{ background: var(--secondary-color); border-radius: 14px; padding: 16px 22px; margin: 0 0 26px; }
.sx-sommaire-titre{ font-size: 12px !important; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; color: var(--accent-deep); margin: 0 0 6px !important; }
.sx-article-corps .sx-sommaire ol{ margin: 0; padding-left: 20px; columns: 2; column-gap: 24px; }
.sx-article-corps .sx-sommaire li{ font-size: 15px; margin: 0 0 4px; break-inside: avoid; }
.sx-article-corps .sx-sommaire a{ border-bottom: 0; }
.sx-article-corps .sx-sommaire a:hover{ text-decoration: underline; }
@media (max-width: 767px){ .sx-article-corps .sx-essentiel{ grid-template-columns: 1fr; } .sx-article-corps .sx-sommaire ol{ columns: 1; } }

.sx-infos-ligne{ display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 0; margin: 22px auto 0; font-size: 14.5px; color: var(--text-strong); }
.sx-infos-ligne span{ padding: 0 16px; border-left: 1px solid var(--filet-c); }
.sx-infos-ligne span:first-child{ border-left: 0; }
.sx-infos-ligne a{ color: inherit; }
.sx-voies{ display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: start; }
.sx-voie{ background: #FFFFFF; border-radius: 18px; padding: 36px 38px; }
.sx-voie-sur{ font-size: 11.5px; font-weight: 500; letter-spacing: .18em; text-transform: uppercase; color: var(--accent-deep); margin-bottom: 14px; }
.sx-voie h3{ font-size: 24px; font-weight: 400; margin-bottom: 14px; }
.sx-voie p a{ color: var(--accent-deep); border-bottom: 1px solid rgba(160,64,68,.45); }
.sx-voie .readmore-btn{ margin-top: 4px; }
.sx-voie-cas{ padding-top: 26px; margin-top: 26px; border-top: 1px solid var(--filet-c); }
.sx-voie-cas:first-of-type{ padding-top: 0; margin-top: 0; border-top: 0; }
.sx-voie-cas h3{ font-size: 21px; }
.sx-voie-plus{ margin: 18px 0 0; font-size: 15px; }
.sx-voie-plus a{ color: var(--accent-deep); border-bottom: 1px solid rgba(160,64,68,.45); }
.sx-domaines-grille{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.sx-domaine ul{ columns: 2; column-gap: 24px; }
.sx-domaine li{ break-inside: avoid; }
/* Cartouche de la colonne : bloc simple */
.sx-colonne-rdv.sx-rdv-simple{ border: 1px solid var(--filet-c); border-radius: 18px; padding: 26px 26px 22px; }
.sx-colonne-rdv.sx-rdv-simple::before{ display: none; }
.sx-rdv-sur{ font-size: 11.5px; font-weight: 500; letter-spacing: .2em; text-transform: uppercase; color: var(--accent-deep); margin: 0 0 10px; }
.sx-rdv-texte{ font-size: 15px !important; line-height: 1.55; color: var(--text-strong); margin: 0 0 16px; }
.sx-rdv-simple .btn-default{ display: block; text-align: center; }
.sx-rdv-tel-ligne{ margin: 14px 0 0; font-size: 14.5px !important; text-align: center; }
.sx-rdv-tel-ligne a{ color: var(--text-strong); font-weight: 500; }
.sx-rdv-lien{ margin: 6px 0 0; font-size: 14px !important; text-align: center; }
.sx-rdv-lien a{ color: var(--accent-deep); border-bottom: 1px solid rgba(160,64,68,.45); }
/* Fenêtre de réservation et de contact : un seul volet, pleine largeur */
.resa.resa-simple{ display: block; }
.resa-simple .resa-parcours{ max-width: 760px; margin: 0 auto; }
.resa-titre-simple{ font-size: 26px; font-weight: 400; margin: 0 0 18px; }

@media (max-width: 991px){ .sx-voies{ grid-template-columns: 1fr; } .sx-voie{ padding: 26px 22px; } .sx-infos-ligne span{ display: block; width: 100%; border: 0; padding: 0; text-align: center; } .sx-domaines-grille{ grid-template-columns: 1fr; } .sx-domaine ul{ columns: 1; } }
.resa-fenetre-corps, .resa.resa-simple{ background: #FFFFFF; }
.resa.resa-simple::before, .resa.resa-simple::after{ display: none; }
.resa-simple .resa-zone{ min-height: 200px; }
/* Fenêtre de rendez-vous : tuiles lieu puis durée (03/11/2026) */
.resa-tuiles-titre{ font-size: 12px; font-weight: 500; letter-spacing: .18em; text-transform: uppercase; color: var(--accent-deep); margin: 18px 0 10px; }
.resa-tuiles-titre:first-child{ margin-top: 0; }
.resa-tuiles{ display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.resa-tuile{ display: grid; gap: 4px; text-align: left; padding: 18px 20px; border-radius: 14px; background: #FFFFFF; border: 1.5px solid var(--filet-c); font-family: var(--default-font); color: var(--text-strong); cursor: pointer; transition: border-color .2s, background .2s; }
.resa-tuile b{ font-size: 17px; font-weight: 500; }
.resa-tuile span{ font-size: 14px; color: var(--text-color); }
.resa-tuile:hover{ border-color: var(--accent-color); }
.resa-tuile.actif{ border-color: var(--accent-color); background: var(--rose); }
.resa-cal-zone{ margin-top: 18px; }
@media (max-width: 575px){ .resa-tuiles{ grid-template-columns: 1fr; } }

.sx-devis-tally{ border: 1px solid var(--filet-c); border-radius: 18px; padding: 18px 22px; margin: 0 0 34px; background: #FFFFFF; }
.sx-devis-tally iframe{ display: block; width: 100%; border: 0; }
/* Panneaux du menu : appel simple (03/11/2026) */
.sx-mega-cta-bouton{ display: block; text-align: center; margin: 8px 0 10px; }
.sx-mega-cta-tel{ font-size: 14px; text-align: center; margin: 0 0 10px; color: var(--text-strong); }
.sx-mega-cta-tel a{ color: var(--text-strong); font-weight: 500; }
.sx-rdv-lien-page{ text-align: left; margin: 14px 0 12px; font-size: 15px !important; }
/* Panneaux du menu : bouton de rendez-vous lisible, texte blanc sur bordeaux (03/11/2026) */
.main-menu ul ul.sx-mega li.sx-mega-cta a.sx-mega-cta-bouton, .main-menu ul ul.sx-mega li.sx-mega-cta a.sx-mega-cta-bouton:hover, .main-menu ul ul.sx-mega li.sx-mega-cta a.sx-mega-cta-bouton:focus{ color: #FFFFFF !important; background: var(--accent-color); border: 0; border-radius: 10000px; padding: 13px 20px !important; font-weight: 500; font-size: 15.5px; }
.main-menu ul ul.sx-mega li.sx-mega-cta a.sx-mega-cta-bouton:hover{ background: var(--accent-deep); }
.main-menu ul ul.sx-mega li.sx-mega-cta .sx-mega-cta-tel a{ display: inline; border: 0; padding: 0 !important; color: var(--text-strong); font-weight: 500; }
.resa-offre{ font-size: 17px; font-weight: 500; color: var(--text-strong); margin: 0 0 16px; }
/* Quatre types de divorce : quatre tuiles égales, deux par rangée, liens alignés en bas (03/11/2026) */
.sx-voies{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; align-items: stretch; }
.sx-voie{ display: flex; flex-direction: column; padding: 32px 34px 28px; }
.sx-voie h3{ font-size: 23px; line-height: 1.25; margin-bottom: 14px; }
.sx-voie p{ margin-bottom: 12px; }
.sx-voie p.sx-voie-sur{ margin-bottom: 12px; }
.sx-voie-liens{ margin-top: auto; padding-top: 14px; border-top: 1px solid var(--filet-c); display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 22px; }
.sx-voie-liens a:not(.readmore-btn){ font-size: 15px; color: var(--accent-deep); border-bottom: 1px solid rgba(160,64,68,.45); }
.sx-voie .sx-voie-liens .readmore-btn{ margin-top: 0; }
@media (max-width: 991px){ .sx-voies{ grid-template-columns: 1fr; } .sx-voie{ padding: 26px 22px 22px; } }
/* Menu mobile : bouton de rendez-vous (03/11/2026) */
.main-menu #menu > .sx-menu-rdv{ display: none; }
.slicknav_nav li.sx-menu-rdv{ padding: 10px 16px 16px; }
.slicknav_nav li.sx-menu-rdv a, .slicknav_nav li.sx-menu-rdv a:hover, .slicknav_nav li.sx-menu-rdv a:focus{ display: block; text-align: center; background: var(--accent-color); color: #FFFFFF !important; border-radius: 10000px; padding: 13px 20px; font-weight: 500; }
.slicknav_nav li.sx-menu-rdv a{ border-radius: 10000px !important; }

/* Widget d'appel, 07/11/2026 : une pilule posée en bas à droite, présente sur toutes les pages. */
.sx-tel{
	position: fixed; right: max(18px, env(safe-area-inset-right, 0px));
	bottom: max(18px, env(safe-area-inset-bottom, 0px)); z-index: 60;
	display: inline-flex; align-items: center; gap: 11px;
	background: var(--accent-color); color: #FFFFFF;
	border: 1px solid rgba(255,255,255,.18); border-radius: 10000px;
	padding: 10px 20px 10px 12px; text-decoration: none;
	box-shadow: 0 10px 28px rgba(15,46,73,.24);
	transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.sx-tel:hover, .sx-tel:focus-visible{
	color: #FFFFFF; background: var(--accent-clair-survol);
	transform: translateY(-2px); box-shadow: 0 14px 34px rgba(15,46,73,.3);
}
.sx-tel-icone{
	width: 32px; height: 32px; flex: 0 0 32px; border-radius: 50%;
	background: rgba(255,255,255,.14); display: inline-flex; align-items: center; justify-content: center;
	font-size: 14px; color: var(--or-clair, #E9D4A6);
}
.sx-tel-texte{ display: flex; flex-direction: column; line-height: 1.15; font-weight: 500; font-size: 14.5px; }
.sx-tel-num{ font-weight: 400; font-size: 13px; color: rgba(255,255,255,.78); letter-spacing: .02em; }
/* une fenêtre ouverte prend toute l'attention : le widget s'efface */
body:has(dialog[open]) .sx-tel{ display: none; }
@media (max-width: 575px){
	/* Pastille seule : elle doit se détacher aussi bien du panneau bleu du haut que des sections blanches,
	   d'où l'or de la charte, un liseré blanc et une ombre marquée (07/11/2026). */
	.sx-tel{
		padding: 0; gap: 0; width: 56px; height: 56px; justify-content: center;
		background: var(--or-clair-fort, #BCAB86);
		border: 2px solid rgba(255,255,255,.92);
		box-shadow: 0 6px 20px rgba(0,0,0,.28);
	}
	.sx-tel:hover, .sx-tel:focus-visible{ background: #A8966E; }
	.sx-tel-texte{ display: none; }
	.sx-tel-icone{ width: auto; height: auto; flex: none; background: none; font-size: 21px; color: #0F2E49; }
}
@media (prefers-reduced-motion: reduce){ .sx-tel{ transition: none; } .sx-tel:hover{ transform: none; } }

/* Tuile « Prise de contact » de /contact-1/ : même gabarit que la tuile de consultation,
   pleine largeur, bandeau de titre et fond blanc (07/11/2026). Le formulaire garde une
   largeur de lecture à l'intérieur de la tuile. */
.sx-contact-tuile{ background: #FFFFFF; border-radius: 26px; overflow: hidden; margin-top: 26px; box-shadow: 0 18px 50px rgba(48,46,43,.08); }
.sx-contact-tuile-corps{ padding: 24px 34px 20px; }
.sx-contact-tuile-corps > p{ max-width: 760px; margin-bottom: 4px; }
.sx-rdv-tally{ max-width: 760px; }
.sx-rdv-tally iframe{ height: 560px; }
.sx-contact-tuile .sx-rdv-form-tel{ margin-top: 10px; }
/* Le formulaire se déplie : fermée, la tuile garde la hauteur de la tuile de consultation. */
.sx-contact-depli{ margin-top: 14px; }
.sx-contact-depli > summary{ display: inline-flex; align-items: center; gap: 10px; cursor: pointer; font-size: 15.5px; font-weight: 500; color: var(--accent-deep); border: 1.5px solid var(--accent-color); border-radius: 10000px; padding: 10px 22px; list-style: none; }
.sx-contact-depli > summary::-webkit-details-marker{ display: none; }
.sx-contact-depli > summary::after{ content: "\203A"; font-size: 20px; line-height: 1; transform: rotate(90deg); }
.sx-contact-depli[open] > summary::after{ transform: rotate(-90deg); }
.sx-contact-depli > summary:hover{ background: var(--secondary-color); }
.sx-contact-depli .sx-contact-depli-fermer{ display: none; }
.sx-contact-depli[open] .sx-contact-depli-ouvrir{ display: none; }
.sx-contact-depli[open] .sx-contact-depli-fermer{ display: inline; }
.sx-contact-depli[open] .sx-rdv-tally{ margin-top: 14px; }
/* Page de contact : moins de vide entre la tuile du formulaire et la suite de la page. */
.sx-reservation:has(.sx-contact-tuile){ padding-bottom: 34px; }
.sx-reservation:has(.sx-contact-tuile) + .sx-rdv-infos{ padding-top: 48px; }
@media (max-width: 767px){
	.sx-reservation:has(.sx-contact-tuile){ padding-bottom: 26px; }
	.sx-reservation:has(.sx-contact-tuile) + .sx-rdv-infos{ padding-top: 38px; }
}
@media (max-width: 767px){
	.sx-contact-tuile-corps{ padding: 20px 20px 16px; }
	.sx-rdv-tally iframe{ height: 640px; }
}
/* Les trois voies de contact sous le titre de /contact-1/, présentation reprise du site d'origine (07/11/2026). */
.sx-contact-voies{ max-width: 760px; margin-top: 16px; }
.sx-contact-voies p{ margin-bottom: 8px; }
.sx-contact-voies .sx-reperes{ margin-bottom: 0; }
/* Photo et présentation du cabinet reportées en fin de page de contact (07/11/2026). */
.sx-rdv-cabinet{ padding-bottom: 70px; }
.sx-rdv-cabinet .sx-rdv-avocat{ max-width: 880px; margin: 0 auto; padding: 28px 30px; gap: 26px; align-items: center; }
.sx-rdv-cabinet .sx-rdv-avocat img{ width: 140px; }
@media (max-width: 575px){ .sx-rdv-cabinet .sx-rdv-avocat{ padding: 22px; } }

/* Page « Prix d'un divorce amiable à Paris » : socle d'honoraires selon le degré d'accord des époux (07/11/2026) */
.sx-socle{ display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:26px; align-items:center; background:linear-gradient(165deg,#1A4268 0%,#123250 72%); color:#fff; border-radius:24px; padding:30px 32px; margin:6px 0 28px; border-bottom:2px solid #BCAB86; }
.sx-article-corps .sx-socle p{ color:#fff; margin:0; }
.sx-article-corps .sx-socle .sx-socle-sur{ font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:#E9D4A6; margin-bottom:8px; }
.sx-article-corps .sx-socle .sx-socle-montant{ font-size:50px; line-height:1.05; font-weight:500; }
.sx-socle-montant span{ font-size:18px; font-weight:400; }
.sx-article-corps .sx-socle .sx-socle-ttc{ font-size:15px; color:rgba(255,255,255,.82); margin-top:6px; }
.sx-article-corps .sx-socle-points{ list-style:none; padding:0; margin:0; }
.sx-article-corps .sx-socle-points li{ color:#fff; font-size:15.5px; line-height:1.45; padding-left:20px; position:relative; margin:0 0 9px; }
.sx-article-corps .sx-socle-points li:last-child{ margin-bottom:0; }
.sx-article-corps .sx-socle-points li::before{ content:""; position:absolute; left:0; top:.55em; width:8px; height:8px; border-radius:50%; background:#BCAB86; }
.sx-article-corps .sx-credit-etapes{ list-style:none; padding:0; margin:0 0 18px; }
.sx-article-corps .sx-credit-etapes li{ display:flex; gap:14px; align-items:flex-start; margin:0 0 14px; }
.sx-credit-num{ flex:none; width:34px; height:34px; border-radius:50%; background:#0F2E49; color:#E9D4A6; display:flex; align-items:center; justify-content:center; font-weight:500; }
.sx-accord-grille{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:20px 0 18px; }
.sx-accord-carte{ border:1px solid var(--filet-c); border-radius:18px; padding:20px 18px; background:#fff; }
.sx-article-corps .sx-accord-carte p{ margin:0; }
.sx-article-corps .sx-accord-niveau{ font-weight:500; color:#0F2E49; font-size:16px; }
.sx-accord-jauge{ display:block; height:6px; border-radius:6px; margin-bottom:12px; background:linear-gradient(90deg,#BCAB86 var(--part),#E7EBEF var(--part)); }
.sx-article-corps .sx-accord-prix{ font-size:21px; line-height:1.25; font-weight:500; color:#0F2E49; margin-top:10px; }
.sx-article-corps .sx-accord-ttc{ font-size:14px; margin:3px 0 10px; }
.sx-article-corps .sx-accord-texte{ font-size:15px; line-height:1.5; }
.sx-estim-barre{ display:flex; height:38px; border-radius:10px; overflow:hidden; font-size:13.5px; font-weight:500; }
.sx-estim-socle{ flex:5 0 0; background:#0F2E49; color:#fff; display:flex; align-items:center; justify-content:center; white-space:nowrap; }
.sx-estim-plus{ flex:0 0 0; background:#BCAB86; color:#0F2E49; display:flex; align-items:center; justify-content:center; white-space:nowrap; overflow:hidden; transition:flex-grow .3s; }
.sx-article-corps .sx-estim-prix{ font-size:25px; font-weight:500; color:#0F2E49; margin:14px 0 2px; }
.sx-estim-ttc{ font-size:15px; font-weight:400; margin-left:10px; color:var(--text-color,#55606B); }
.sx-article-corps .sx-estim-note{ font-size:15px; margin:0; }
.sx-quiz{ background:var(--secondary-color); border-radius:20px; padding:22px 24px; margin:16px 0 22px; }
.sx-quiz-sujet{ border:0; padding:0 0 14px; margin:0 0 14px; border-bottom:1px solid var(--filet-c); min-width:0; }
.sx-quiz legend{ font-size:16px; font-weight:500; color:#0F2E49; margin-bottom:8px; float:none; width:auto; padding:0; }
.sx-quiz-reponses{ display:flex; flex-wrap:wrap; gap:8px; }
.sx-quiz-reponses label{ cursor:pointer; margin:0; }
.sx-quiz-reponses input{ position:absolute; opacity:0; pointer-events:none; }
.sx-quiz-reponses span{ display:inline-block; background:#fff; border:1.5px solid var(--filet-c); border-radius:10000px; padding:7px 16px; font-size:14.5px; color:#0F2E49; transition:background .15s, border-color .15s; }
.sx-quiz-reponses label:hover span{ border-color:#BCAB86; }
.sx-quiz-reponses input:checked + span{ background:#0F2E49; border-color:#0F2E49; color:#fff; }
.sx-quiz-reponses input:focus-visible + span{ outline:2px solid #BCAB86; outline-offset:2px; }
.sx-article-corps .sx-quiz-niveau{ font-size:13px; letter-spacing:.12em; text-transform:uppercase; color:#8A7645; margin:4px 0 10px; }
.sx-postes{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:14px 0 24px; }
.sx-poste{ border:1px solid var(--filet-c); border-radius:18px; padding:18px; }
.sx-article-corps .sx-poste p{ margin:0; font-size:14.5px; line-height:1.5; }
.sx-article-corps .sx-poste .sx-poste-titre{ font-size:12px; letter-spacing:.1em; text-transform:uppercase; color:#8A7645; }
.sx-article-corps .sx-poste .sx-poste-montant{ font-size:20px; font-weight:500; color:#0F2E49; margin:4px 0 6px; }
@media (max-width:767px){
.sx-postes{ grid-template-columns:minmax(0,1fr) !important; }
.sx-quiz{ padding:18px 16px; }
}
@media (max-width:767px){
.sx-socle{ grid-template-columns:minmax(0,1fr); padding:24px 22px; gap:18px; }
.sx-accord-grille{ grid-template-columns:minmax(0,1fr); }
.sx-estim-ttc{ display:block; margin-left:0; }
}
@media (prefers-reduced-motion:reduce){
.sx-estim-plus{ transition:none; }
}
.sx-ico{ width:24px; height:24px; flex:none; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.sx-citation{ position:relative; margin:22px 0; padding:26px 30px 22px 34px; background:#F7F4EC; border-left:4px solid #BCAB86; border-radius:0 20px 20px 0; }
.sx-article-corps .sx-citation p{ font-size:21px; line-height:1.45; color:#0F2E49; margin:0 0 10px; }
.sx-citation footer{ font-size:13px; letter-spacing:.12em; text-transform:uppercase; color:#8A7645; }
.sx-quiz{ border:1px solid var(--filet-c); box-shadow:0 18px 50px rgba(15,46,73,.08); }
.sx-quiz-resultat{ background:#fff; border:1.5px solid #BCAB86; border-radius:16px; padding:18px 20px; margin-top:6px; }
.sx-accord-carte{ box-shadow:0 10px 30px rgba(15,46,73,.05); }
.sx-encadre{ display:flex; gap:14px; align-items:flex-start; background:#EEF2F6; border-radius:16px; padding:18px 20px; margin:16px 0 22px; }
.sx-encadre .sx-ico{ color:#0F2E49; margin-top:2px; }
.sx-article-corps .sx-encadre p{ margin:0; }
.sx-encadre-rassure{ background:#F7F4EC; border:1px solid #E5D9BD; }
.sx-encadre-rassure .sx-ico{ color:#8A7645; }
.sx-article-corps .sx-encadre-rassure p{ color:#0F2E49; font-weight:500; }
.sx-cas{ border:1px solid var(--filet-c); border-radius:22px; overflow:hidden; margin:16px 0 18px; box-shadow:0 18px 50px rgba(15,46,73,.08); }
.sx-cas-tete{ background:linear-gradient(165deg,#1A4268 0%,#123250 72%); padding:22px 24px; border-bottom:2px solid #BCAB86; }
.sx-article-corps .sx-cas-tete p{ color:rgba(255,255,255,.9); margin:0 0 12px; font-size:15.5px; line-height:1.55; }
.sx-article-corps .sx-cas-tete .sx-cas-sur{ font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:#E9D4A6; margin-bottom:8px; }
.sx-article-corps .sx-cas-pastilles{ list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:8px; }
.sx-article-corps .sx-cas-pastilles li{ margin:0; font-size:13.5px; color:#fff; border:1px solid rgba(233,212,166,.6); border-radius:10000px; padding:4px 12px; }
.sx-article-corps .sx-cas-pastilles li:last-child{ background:#BCAB86; border-color:#BCAB86; color:#0F2E49; font-weight:500; }
.sx-cas-lignes{ margin:0; padding:6px 24px; background:#fff; }
.sx-cas-lignes > div{ display:flex; justify-content:space-between; gap:18px; padding:14px 0; border-bottom:1px dashed var(--filet-c); }
.sx-cas-lignes > div:last-child{ border-bottom:0; }
.sx-cas-lignes dt{ font-weight:400; font-size:15px; color:var(--text-color,#55606B); }
.sx-cas-lignes dd{ margin:0; text-align:right; font-weight:500; color:#0F2E49; font-size:16.5px; white-space:nowrap; }
.sx-cas-lignes dd span{ display:block; font-weight:400; font-size:12.5px; color:#59606A; white-space:normal; max-width:230px; margin-left:auto; }
.sx-cas-lignes > div:first-child dd{ font-size:20px; }
.sx-article-corps .sx-devis-intro{ font-size:16px; color:#0F2E49; margin:0 0 6px; }
.sx-devis-tally{ border-top:3px solid #BCAB86 !important; box-shadow:0 18px 50px rgba(15,46,73,.08); }
.sx-poste{ box-shadow:0 10px 30px rgba(15,46,73,.05); }
@media (max-width:575px){
.sx-cas-lignes > div{ flex-direction:column; gap:4px; }
.sx-cas-lignes dd{ text-align:left; }
.sx-cas-lignes dd span{ margin-left:0; max-width:none; }
.sx-article-corps .sx-citation p{ font-size:18.5px; }
.sx-citation{ padding:20px 20px 18px 22px; }
}
.sx-prix-hero{ padding:10px 0 46px; }
.sx-prix-hero-grille{ display:grid; grid-template-columns:minmax(0,7fr) minmax(0,5fr); gap:56px; align-items:center; }
.sx-prix-hero-pastille{ display:inline-flex; align-items:center; gap:10px; border:1px solid var(--filet-c); border-radius:10000px; padding:7px 16px; background:#fff; font-size:12.5px; letter-spacing:.14em; text-transform:uppercase; color:#0F2E49; margin:0 0 22px; }
.sx-prix-hero-pastille span{ width:7px; height:7px; border-radius:50%; background:#BCAB86; }
.sx-prix-hero-titre{ font-size:clamp(30px,3vw,42px); line-height:1.04; font-weight:500; letter-spacing:-.02em; color:#0F2E49; margin:0 0 22px; }
.sx-prix-hero-titre span{ display:block; font-weight:400; color:#2E5F8E; }
.sx-prix-hero .sx-chapo-article{ font-size:18.5px !important; line-height:1.6; max-width:600px; margin:0 0 26px; }
.sx-prix-hero-boutons{ display:flex; flex-wrap:wrap; gap:12px; margin-bottom:22px; }
.sx-prix-hero-garanties{ list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:6px 22px; font-size:14.5px; color:#59606A; }
.sx-prix-hero-garanties li{ position:relative; margin:0; }
.sx-prix-hero-garanties li + li::before{ content:""; position:absolute; left:-13px; top:.62em; width:4px; height:4px; border-radius:50%; background:#BCAB86; }
.sx-prix-hero-garanties span{ color:#0F2E49; font-weight:500; }
.sx-fiche{ position:relative; }
.sx-fiche-corps{ background:#fff; border:1px solid var(--filet-c); border-radius:26px; padding:26px 30px 26px; box-shadow:0 30px 70px rgba(15,46,73,.13); }
.sx-fiche-tete{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding-bottom:16px; border-bottom:1px solid var(--filet-c); }
.sx-fiche p{ margin:0; }
.sx-fiche-sur{ font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:#59606A; }
.sx-fiche-etat{ font-size:12px; font-weight:500; letter-spacing:.06em; text-transform:uppercase; color:#0F2E49; background:#F3EDDF; border-radius:10000px; padding:5px 12px; white-space:nowrap; }
.sx-fiche-choix{ display:grid; grid-template-columns:repeat(3,1fr); gap:6px; background:#F2F4F7; border-radius:14px; padding:5px; margin:18px 0 6px; }
.sx-fiche-choix button{ border:0; background:transparent; border-radius:10px; padding:9px 4px; font:inherit; font-size:14px; color:#0F2E49; cursor:pointer; }
.sx-fiche-choix button.actif{ background:#0F2E49; color:#fff; }
.sx-fiche-choix button:focus-visible{ outline:2px solid #BCAB86; outline-offset:2px; }
.sx-fiche-lignes{ margin:0; }
.sx-fiche-lignes > div{ display:flex; justify-content:space-between; align-items:baseline; gap:14px; padding:15px 0; border-bottom:1px solid var(--filet-c); }
.sx-fiche-lignes dt{ font-weight:400; color:#59606A; font-size:15.5px; }
.sx-fiche-lignes dd{ margin:0; font-weight:500; color:#0F2E49; font-size:17px; text-align:right; }
.sx-fiche-lignes .sx-fiche-prix{ font-size:28px; letter-spacing:-.01em; }
.sx-fiche-bouton{ display:flex; justify-content:center; gap:10px; margin-top:20px; background:#F2F4F7; border-radius:10000px; padding:14px; color:#0F2E49; font-weight:500; }
.sx-fiche-bouton:hover{ background:#E6EBF1; color:#0F2E49; }
@media (max-width:991px){
.sx-prix-hero-grille{ grid-template-columns:minmax(0,1fr); gap:40px; }
}
@media (max-width:575px){
.sx-fiche-corps{ padding:30px 18px 20px; }
.sx-fiche-lignes .sx-fiche-prix{ font-size:23px; }
}
.sx-cas-lignes > div.sx-cas-total{ border-top:2px solid #0F2E49; border-bottom:0; margin-top:4px; }
.sx-cas-lignes > div.sx-cas-total dt{ color:#0F2E49; font-weight:500; }
.sx-cas-lignes > div.sx-cas-total dd{ font-size:20px; }
.sx-article-corps > p, .sx-article-corps > ul > li, .sx-article-corps .sx-credit-etapes li > div, .sx-article-corps .accordion-body p, .sx-prix-hero .sx-chapo-article, .sx-article-corps .sx-cas-tete p:not(.sx-cas-sur){ text-align:justify; hyphens:auto; -webkit-hyphens:auto; }
.sx-prix-hero{ background:#FFFFFF; padding-bottom:24px; }
.sx-prix-hero + .sx-article{ padding-top:0; }
.sx-prix-hero + .sx-article .sx-article-corps{ padding-top:12px; }
.sx-fiche-corps{ box-shadow:0 14px 36px rgba(15,46,73,.10); }
@media (min-width:1200px){
.sx-article-corps h2.sx-h2-ligne{ max-width:none; white-space:nowrap; font-size:clamp(24px,1.95vw,30px); }
}
