/* Requested 23 October draft. The existing initial spacing and button geometry stay intact. */
:root {
  --ivory:#f6f1e8; --ink:#3b3a37; --muted:#6d6a63;
  --gold:#b8933f; --gold-deep:#b8933f; --action-brown:#5a4634;
  --serif:"Cormorant Garamond",serif; --sans:"Cormorant Garamond",serif;
  --calligraphic:"MonteCarlo",cursive;
  --reading-size:clamp(17px,1.094vw,21px);
  --subtitle-size:clamp(21px,1.35vw,26px);
  --section-title-size:clamp(34px,3.1vw,60px);
  --metadata-size:15px;
  --content-width:min(88vw,1600px);
  --page-gutter:max(40px,calc((100vw - var(--content-width))/2));
}
body { background:var(--ivory); font-family:var(--serif); font-size:var(--reading-size); line-height:1.7; }
.announcement-banner { --ivory:#f4eee4;--ivory-soft:#fbf8f1;--ink:#6f6358;--muted:#665e57;--gold:#b47c0d;--gold-deep:#88672f;--action-brown:#8b6b30; }
button,input,textarea,select { font-family:var(--serif) !important; }
main { width:100%;max-width:none!important;margin:0!important;padding:0!important; }
main > section, main > article.news-card {
  width:100%; max-width:none!important;margin:0!important;
  padding:clamp(44px,5vw,88px) var(--page-gutter)!important;
  border-radius:0;box-shadow:none;
}
main > section:nth-of-type(odd) { background:#f6f1e8; }
main > section:nth-of-type(even) { background:#efe6d6; }
main :is(.section-heading,.editorial-copy,.scope-inner,.hero-copy) { display:block;width:100%;max-width:none!important;margin-inline:0; }
main :is(.section-heading,.scope-inner,.contact-copy,.about-copy) { background:none;box-shadow:none;border:0; }
main :is(h1,h2,h3) { font-family:var(--serif)!important;font-weight:700!important;background:none!important;box-shadow:none!important;border-radius:0;text-wrap:pretty;color:var(--ink)!important; }
main :is(h1,h2,h3)::before { content:none!important;background:none!important;box-shadow:none!important;filter:none!important; }
main h1, main h1.section-title,main.guide-article h1 {
  max-width:none!important;width:100%;font-size:var(--section-title-size)!important;
  line-height:1.2!important;margin:0 0 28px;
}
body.regularisation-page main h1 { --section-title-size:clamp(34px,3.1vw,60px); }
main h2,main h2.section-title,main h2.partners-group-title { font-size:clamp(27px,1.95vw,38px)!important;line-height:1.3!important;margin:0 0 24px; }
body:not(.tools-page) main h2::first-letter { font-family:var(--calligraphic)!important;color:var(--gold);font-size:1.18em!important;font-weight:400;letter-spacing:.1em!important; }
main h3 { font-size:var(--subtitle-size);line-height:1.35; }
main p,main li,main label,main input,main select,main textarea {
  font-size:var(--reading-size)!important;line-height:1.7!important;
}
body main p:not(.note):not(.newsletter-privacy):not(.guide-contact-note):not(.pricing-vat-note):not(.home-experience) { font-size:var(--reading-size)!important; }
main p { max-width:820px!important;margin-left:0!important;margin-right:0!important;text-align:justify!important;text-align-last:left!important;font-weight:400!important;hyphens:none!important;-webkit-hyphens:none!important;word-break:normal!important;overflow-wrap:normal;text-wrap:pretty; }
main p+p { margin-top:1.7em; }
main .text-group { white-space:normal; }
main :is(p,li,summary,h1,h2,h3) { hyphens:none!important;-webkit-hyphens:none!important; }
main :is(small,.form-consent span,.newsletter-privacy,.guide-contact-note,.pricing-vat-note,.article-date,.guide-text-eyebrow,.form-status) {
  font-size:max(14px,.76em)!important;text-align:left!important;line-height:1.6!important;
}
main :is(.service-accordion,.faq,.faq-list,.regularisation-faq,.cabinet-section,.guide-text-version) { width:100%;max-width:1000px!important;margin-left:0!important;margin-right:0!important; }
body main:is(.guide-article,.legal-page,.article-page) { padding:clamp(44px,5vw,88px) var(--page-gutter)!important; }
main :is(summary,summary h3) { font-weight:700!important; }
main .button { font-family:var(--serif)!important; background:var(--action-brown);color:var(--ivory-soft);text-align:center!important;max-width:100%; }
main .button-outline { background:transparent!important;color:var(--action-brown)!important;border:1px solid var(--action-brown); }
.gold-link { font-weight:700;color:var(--gold);text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:1px;text-underline-offset:5px;box-decoration-break:clone; }
/* One line of navigation from 1100px, click-controlled submenus only. */
.site-header-main:not(.tool-site-header) { padding-inline:max(40px,calc((100vw - 1600px)/2));gap:clamp(14px,1.2vw,24px); }
.site-header-main:not(.tool-site-header) .brand { flex:0 0 clamp(132px,12vw,220px);width:clamp(132px,12vw,220px);height:auto;overflow:visible; }
.site-header-main:not(.tool-site-header) .brand img { width:100%;height:auto; }
.site-header-main #navigation { display:flex!important;position:static!important;transform:none!important;visibility:visible!important;height:auto!important;inset:auto!important;flex-direction:row;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:clamp(7px,1.2vw,23px);padding:0!important;background:none;border:0;box-shadow:none;max-height:none;overflow:visible;width:auto;flex:1; }
.site-header-main #navigation a { font-size:clamp(17px,.94vw,18px)!important;font-weight:600!important;text-align:left!important;white-space:nowrap;line-height:1.4;padding-block:7px;text-decoration:none!important;border-bottom:1px solid transparent;color:var(--ink); }
.site-header-main #navigation .nav-contact { background:var(--action-brown);color:var(--ivory-soft);border:1px solid var(--action-brown);padding:10px 13px;margin:0!important; }
.site-header-main #navigation a[aria-current="page"],.site-header-main #navigation a[aria-current="true"] { color:var(--gold);border-bottom-color:var(--gold); }
.nav-arrow { color:var(--gold); }
.site-header-main .nav-service-group { display:block;position:relative; }
.site-header-main #navigation .nav-service-submenu { display:none!important;position:absolute;left:0;top:100%;min-width:225px;padding:12px 17px;background:var(--ivory-soft);border:1px solid #efe6d6;box-shadow:none;z-index:30; }
.site-header-main #navigation .nav-service-group.is-open .nav-service-submenu { display:grid!important;gap:4px; }
.site-header-main #navigation .nav-service-submenu a { padding:7px 0;white-space:normal; }
.site-header-main .header-actions { display:none; }
.site-header-main .menu-toggle { display:none; }
/* Service rows keep their alternating colour while expanded. */
main .service-accordion { border:0; }
main .service-accordion > details,main .cabinet-service { margin:0;border:0!important;border-radius:0;box-shadow:none!important;padding:0 24px; }
main .service-accordion > details:nth-child(odd),main .cabinet-service:nth-child(odd) { background:#efe6d6; }
main .service-accordion > details:nth-child(even),main .cabinet-service:nth-child(even) { background:#f6f1e8; }
main .service-accordion summary { padding:23px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:var(--subtitle-size)!important;line-height:1.4; }
main .service-detail { display:block!important;grid-template-columns:none!important;padding:4px 0 28px!important; }
main .service-detail p { margin:0 0 1.4em; }
main .service-detail ul { margin:0;padding-left:22px;max-width:820px; }
main .service-detail li { text-align:left!important;text-align-last:left!important;margin:0 0 .55em;border:0!important; }
main .service-detail li::marker { color:var(--gold); }
.cabinet-section { border:0;border-radius:0;box-shadow:none;background:transparent;margin:0 0 18px; }
.cabinet-section > summary { display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;list-style:none;cursor:pointer;padding:25px 0; }
.cabinet-section > summary::-webkit-details-marker { display:none; }
.cabinet-section > summary::after { content:"+";font-size:32px;color:var(--gold);line-height:1; }
.cabinet-section[open] > summary::after { content:"−"; }
main .cabinet-section summary h2 { margin:0!important;padding:0!important; }
main .cabinet-service { padding:25px 24px; }
main .cabinet-service h3 { margin:0 0 10px;font-size:var(--subtitle-size); }
main .cabinet-service p { margin:0; }
.cabinet-project-copy { padding:10px 0 28px; }
.three-columns { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px; }
.three-columns > article { border-top:1px solid var(--gold);padding-top:24px; }
body main .dossier-process .three-columns p { text-align:left!important; }
/* The seven home sections, without photographs. */
main.redesign-home .home-intro { background:#f6f1e8!important; }
body main.redesign-home p.home-experience { max-width:none!important;color:var(--gold);font-size:clamp(24px,1.57vw,30px)!important;font-weight:700!important;border-left:2px solid var(--gold);padding-left:22px;text-align:left!important; }
main.redesign-home .home-lead { max-width:none!important;margin-top:28px; }
.home-actions { display:flex;flex-wrap:wrap;gap:20px;margin-top:32px; }
main.redesign-home .home-doors { display:grid;grid-template-columns:1fr 1fr;background:var(--ivory-soft)!important;border-block:1px solid var(--gold);padding-block:0!important; }
.home-doors > a { display:block;text-decoration:none;padding:32px 40px 32px 0; }
.home-doors > a+a { border-left:1px solid var(--gold);padding-left:40px;padding-right:0; }
main .home-doors h2 { font-size:30px!important;color:var(--action-brown);margin:0 0 8px; }
main .home-doors h2::first-letter { font-family:var(--serif)!important;font-size:1em!important;font-weight:700;color:var(--action-brown);letter-spacing:normal!important; }
.home-doors h2 span { color:var(--gold); }
body main.redesign-home .home-doors p { color:var(--muted);margin:0!important;text-align:left!important; }
main.redesign-home :is(.home-services,.home-tool,.home-contact) { background:#efe6d6!important; }
main.redesign-home :is(.home-why,.home-reading) { background:#f6f1e8!important; }
.home-services-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px; }
.home-services-grid > article { display:flex;flex-direction:column;background:#f6f1e8;border-top:4px solid var(--gold);padding:28px 23px; }
.home-services-grid h3 { margin:0 0 18px; }
main .home-services-grid p { margin:0 0 24px; }
.home-services-grid .gold-link { margin-top:auto; }
main :is(.home-tool,.home-contact) { text-align:center; }
.home-tool img { height:64px;width:auto;margin:0 auto 28px; }
body main.redesign-home :is(.home-tool,.home-contact) p { margin:0 auto 30px!important;text-align:center!important;text-align-last:center!important; }
.home-reading-grid { display:grid;grid-template-columns:1fr 1fr;gap:40px; }
.home-reading-grid > article { padding-top:24px; }
.home-reading-grid time { color:var(--gold);font-size:15px; }
.home-reading-grid h3 { margin:14px 0; }
main .home-contact h2 { text-align:center!important; }
/* Individual publication bands, chronologically ordered. */
main > .news-card { border:0;display:block; }
main > .news-card:nth-of-type(odd) { background:#efe6d6; }
main > .news-card:nth-of-type(even) { background:#f6f1e8; }
main > .news-card .news-content { max-width:none;width:100%; }
main .news-card time { display:block;color:var(--gold);font-size:15px;font-variant:small-caps;margin-bottom:14px; }
main .news-card .news-title-script-initial { max-width:none;font-size:clamp(27px,1.95vw,38px)!important;line-height:1.3;margin:0 0 20px; }
main .news-title-script-initial::first-letter { font-family:var(--serif)!important;color:inherit;letter-spacing:normal!important;font-size:1em!important; }
main .news-title-script-initial a { text-decoration:none; }
main .news-title-initial,main .guide-heading-initial { font-family:var(--calligraphic)!important;font-weight:400!important;color:var(--gold); }
main .news-title-initial { font-size:1.18em; }
main h1:has(.guide-heading-initial)::first-letter { font-family:var(--serif)!important;letter-spacing:normal!important; }
/* Contact and newsletter share a vertical, centred form. */
main :is(.newsletter-intro,.contact-layout) { display:block!important; }
main :is(.newsletter-copy,.contact-copy) { max-width:none;width:100%;margin:0 0 40px; }
main :is(.newsletter-card,.contact-card) { width:min(100%,820px);max-width:820px;margin:44px auto 0!important; }
body main .newsletter-card p.newsletter-privacy,body main .native-contact-form .form-consent span { font-size:14px!important;text-align:left!important; }
body main p:is(.pricing-vat-note,.guide-contact-note,.form-privacy,.pricing-partner-note):not(.eyebrow) { text-align:left!important;font-size:max(14px,.76em)!important; }
main .pricing-reperes-list, main .pricing-reperes { max-width:1000px; }
main .pricing-reperes-list li,main .pricing-label,main .pricing-grid-request { text-align:left!important; }
.redesign-footer { display:flex!important;align-items:flex-start;justify-content:space-between;gap:60px;padding:54px var(--page-gutter)!important;background:var(--ivory-soft);width:100%; }
.redesign-footer .footer-brand { display:flex;flex-direction:column;align-items:flex-start;gap:12px;max-width:none;text-align:left; }
.redesign-footer .footer-brand span,.redesign-footer a,.redesign-footer summary { font-family:var(--serif);font-size:16px!important;text-align:left!important;line-height:1.5; }
.redesign-footer .footer-logo { width:220px;height:auto;margin:0 0 12px; }
.redesign-footer .footer-right { display:flex;flex-direction:column;align-items:flex-start;gap:14px; }
.redesign-footer .footer-legal { margin:0; }
.redesign-footer .footer-social { display:flex;gap:20px;margin:5px 0 0; }
.redesign-footer .footer-social svg { width:22px;height:22px; }
/* ORégul keeps its dedicated shell and workflow, with the requested reading sizes. */
main#regularisation-final { padding:clamp(40px,4vw,76px) var(--page-gutter)!important; }
#regularisation-final { font-size:var(--reading-size)!important;line-height:1.7!important; }
#regularisation-final p:not(.note) { font-size:var(--reading-size)!important;line-height:1.7!important; }
#regularisation-final .chk span { font-size:max(14px,.8em)!important;text-align:left!important; }
main#regularisation-final :is(.note,.legal,.muted,.consent,small) { font-size:max(14px,.8em)!important;text-align:left!important; }
@media(max-width:1250px) and (min-width:1100px) {
  .site-header-main:not(.tool-site-header) { padding-inline:40px;gap:12px; }
  .site-header-main #navigation { gap:7px; }
  .site-header-main #navigation a { font-size:17px!important; }
  .site-header-main #navigation .nav-contact { padding-inline:9px; }
}
@media(max-width:1099px) {
  :root { --content-width:calc(100vw - 48px);--page-gutter:24px; }
  .site-header-main .header-actions { display:flex; }
  .site-header-main .menu-toggle { display:block;padding:8px 0;font-size:19px; }
  .site-header-main:not(.tool-site-header) { padding-inline:24px; }
  .site-header-main:not(.tool-site-header) .brand { flex-basis:205px;width:205px; }
  .site-header-main #navigation { display:none!important;position:absolute!important;inset:100% 0 auto!important;width:100%;padding:18px 24px 26px!important;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:3px;background:var(--ivory-soft);max-height:calc(100dvh - 90px);overflow-y:auto;border-bottom:1px solid #efe6d6; }
  .site-header-main #navigation.open { display:flex!important; }
  .site-header-main #navigation a { font-size:19px!important;padding:10px 0; }
  .site-header-main #navigation .nav-service-submenu { position:static;min-width:0;border:0;padding:0 0 8px 18px;background:transparent; }
  .site-header-main #navigation .nav-contact { align-self:flex-start;padding:10px 18px;margin-top:10px; }
  .home-services-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.menu-open::before { content:none; }
}
@media(max-width:700px) {
  :root { --page-gutter:20px;--content-width:calc(100vw - 40px);--section-title-size:clamp(27px,7vw,42px);--subtitle-size:21px;--reading-size:18px; }
  main h1,main h1.section-title { line-height:1.25!important; }
  body.regularisation-page main h1 { --section-title-size:clamp(27px,7vw,42px); }
  main h2,main h2.section-title,main h2.partners-group-title { font-size:26px!important; }
  main > section,main > article.news-card { padding-block:42px!important; }
  main .section-heading { margin-bottom:28px; }
  .three-columns,.home-reading-grid,.home-services-grid { grid-template-columns:1fr;gap:28px; }
  main.redesign-home .home-doors { grid-template-columns:1fr; }
  .home-doors > a { padding:28px 0; }
  .home-doors > a+a { border-left:0;border-top:1px solid var(--gold);padding:28px 0; }
  main .home-doors h2 { font-size:27px!important; }
  .home-actions { flex-direction:column;align-items:flex-start;gap:16px; }
  main .service-accordion > details { padding-inline:16px; }
  main .service-accordion summary { padding-block:20px; }
  main :is(.newsletter-card,.contact-card) { padding:24px 20px; }
  .redesign-footer { flex-direction:column;gap:34px; }
  main .regularisation-faq { width:100%; }
}
