/* One quiet closing composition. No image, email display or extra back-to-top control. */
.contact-cta--editorial { padding-block:70px 74px; background:var(--navy-deep); }
.closing-invitation { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(240px,.85fr); align-items:center; gap:72px; }
.closing-kicker { display:flex; align-items:center; gap:20px; margin-bottom:23px; color:#d8bc8e; font-size:11px; font-weight:500; line-height:1.5; letter-spacing:.12em; text-transform:uppercase; }
.closing-kicker::after { content:''; width:34px; height:1px; background:currentColor; opacity:.8; }
.contact-cta--editorial h2 { font:500 clamp(38px,4.25vw,58px)/1.1 var(--font-sans); letter-spacing:-.04em; color:#fff; }
.contact-cta--editorial .closing-intro { max-width:560px; margin-top:23px; font-size:16px; line-height:1.8; color:#d5e0e5; }
.closing-invitation-action { justify-self:end; }
.closing-invitation-action .button { min-width:242px; min-height:56px; background:#ddc59f; color:#102c39; border:1px solid #ddc59f; border-radius:6px; gap:32px; padding-inline:23px; }
.closing-invitation-action .button:hover { background:#ead7b9; border-color:#ead7b9; }
.closing-invitation-action .button:focus-visible { outline-color:#fff; outline-offset:5px; }
.site-footer--editorial { border:0; background-color:var(--footer-bg,#f3f5f3); }
.footer-editorial-grid { display:grid; grid-template-columns:1.2fr .8fr 1.2fr; padding-block:54px 42px; }
.footer-editorial-grid>div { min-width:0; }
.footer-editorial-grid>div+div { border-left:1px solid #dbe2df; padding-left:32px; }
.footer-signature { padding-right:30px; }
.footer-signature>a { display:block; width:144px; max-width:100%; }
.footer-signature img { width:144px; height:auto; }
.footer-signature p { max-width:235px; margin-top:24px; font-size:13px; color:var(--muted); line-height:1.85; }
.footer-editorial-grid h2 { margin:0 0 17px; color:#806442; font-size:11px; font-weight:600; line-height:1.6; letter-spacing:.1em; text-transform:uppercase; }
.footer-editorial-grid nav { display:flex; flex-direction:column; align-items:flex-start; gap:0; }
.footer-editorial-grid nav a { display:flex; align-items:center; min-height:41px; padding-block:7px; padding-right:18px; font-size:14px; line-height:1.6; color:var(--ink); }
.footer-editorial-grid nav a:hover,.footer-privacy-link:hover { text-decoration:underline; }
.footer-editorial-grid nav a[aria-current=page] { text-decoration:underline; text-decoration-color:#a2845c; }
.footer-editorial-bottom { display:flex; flex-wrap:wrap; align-items:center; gap:12px 26px; padding-block:20px 26px; border-top:1px solid #d1dcd7; font-size:11px; color:var(--muted); }
.footer-copyright { line-height:1.6; }
.footer-privacy-link { display:inline-flex; align-items:center; min-height:44px; line-height:1.6; }
.footer-bottom-language { margin-left:auto; }
.site-footer--editorial .language-switch { gap:19px; }
.site-footer--editorial .language-switch a { font-size:12px; min-height:44px; }
.site-footer--editorial .language-switch a[aria-current=true]::after { background:#a2845c; }
.site-footer--editorial .footer-credit { font-size:11px; margin:0; gap:6px; }
.site-footer--editorial .footer-credit a { min-height:44px; }
@media (max-width:1100px) {
  .footer-editorial-grid { grid-template-columns:1.1fr .8fr 1.1fr; }
  .footer-editorial-grid>div+div { padding-left:24px; }
  .footer-signature { padding-right:24px; }
  .footer-editorial-bottom { column-gap:20px; }
  .footer-bottom-language { margin-left:0; }
  .site-footer--editorial .footer-credit { margin-left:auto; }
}
@media (max-width:899px) {
  .closing-invitation { grid-template-columns:1fr; gap:27px; }
  .closing-invitation-action { justify-self:start; }
  .contact-cta--editorial { padding-block:52px 58px; }
  .contact-cta--editorial h2 { font-size:46px; }
  .footer-editorial-grid { grid-template-columns:1fr 1fr; grid-template-areas:'brand brand' 'navigation expertise'; gap:34px 44px; padding-block:40px 32px; }
  .footer-signature { grid-area:brand; display:flex; align-items:center; gap:28px; padding-right:0; }
  .footer-signature>a { flex:0 0 144px; }
  .footer-signature p { margin-top:0; }
  .footer-navigation { grid-area:navigation; }
  .footer-expertise { grid-area:expertise; }
  .footer-editorial-grid>div+div { border:0; padding:0; }
}
@media (max-width:650px) {
  .contact-cta--editorial { padding-block:45px 48px; }
  .contact-cta--editorial h2 { font-size:38px; }
  .closing-kicker { font-size:10px; margin-bottom:19px; gap:17px; }
  .contact-cta--editorial .closing-intro { margin-top:20px; font-size:15px; }
  .closing-invitation-action { width:100%; }
  .closing-invitation-action .button { display:flex; min-width:0; width:100%; min-height:54px; }
  .footer-editorial-grid { grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); grid-template-areas:'brand brand' 'navigation expertise'; gap:29px 22px; padding-block:34px 27px; }
  .footer-signature { display:flex; align-items:center; gap:24px; padding-right:0; }
  .footer-signature>a { flex:0 0 112px; }
  .footer-signature img { width:112px; }
  .footer-signature p { margin:0; max-width:210px; font-size:12px; line-height:1.7; }
  .footer-editorial-grid h2 { font-size:10px; margin-bottom:11px; letter-spacing:.065em; }
  .footer-editorial-grid nav a { min-height:44px; font-size:13px; padding-right:0; }
  .footer-editorial-bottom { display:grid; grid-template-columns:1fr; gap:0; padding-block:21px max(23px,env(safe-area-inset-bottom)); padding-right:54px; }
  .footer-copyright { margin-bottom:3px; }
  .footer-bottom-language { margin:4px 0 0; }
  .site-footer--editorial .footer-credit { margin:4px 0 0; font-size:11px; }
  .site-footer--editorial .language-switch { gap:24px; }
}
@media (max-width:359px) { .footer-signature { gap:19px; } .footer-signature>a { flex-basis:100px; } .footer-signature p { font-size:11px; } }
@media (prefers-reduced-motion:reduce) { .closing-invitation-action .button .icon { transition:none; } .closing-invitation-action .button:hover .icon { transform:none; } }
@media (forced-colors:active) { .closing-invitation-action .button { border:1px solid ButtonText; } .footer-editorial-grid>div+div,.footer-editorial-bottom { border-color:CanvasText; } }
@media print { .site-footer--editorial,.contact-cta--editorial { display:none!important; } }

/* Small flags, generous hit areas. Real language names remain available to assistive technology. */
.site-footer--editorial .language-switch--flags { gap:4px; }
.site-footer--editorial .language-switch--flags a { display:inline-flex; align-items:center; justify-content:center; flex:0 0 44px; width:44px; height:44px; min-height:44px; padding:0; border-radius:5px; text-decoration:none; }
.site-footer--editorial .language-switch--flags .language-flag { display:block; flex:0 0 20px; width:20px; height:14px; max-width:none; overflow:hidden; border-radius:2px; box-shadow:0 0 0 1px #102c3914; }
.site-footer--editorial .language-switch--flags a[aria-current=true]::after { left:12px; right:auto; bottom:5px; width:20px; height:1px; background:#a2845c; }
.site-footer--editorial .language-switch--flags a:hover { background:#102c3908; }
.site-footer--editorial .language-switch--flags a:focus-visible { outline:2px solid #547788; outline-offset:2px; }
@media (forced-colors:active) {
  .site-footer--editorial .language-switch--flags .language-flag { display:none; }
  .site-footer--editorial .language-switch--flags .language-switch-label { position:static; width:auto; height:auto; margin:0; padding:0; clip:auto; clip-path:none; overflow:visible; white-space:normal; border:0; }
  .site-footer--editorial .language-switch--flags a { flex-basis:auto; width:auto; min-width:44px; padding-inline:8px; }
  .site-footer--editorial .language-switch--flags a:focus-visible { outline-color:Highlight; }
  .site-footer--editorial .language-switch--flags a[aria-current=true]::after { background:CanvasText; }
}
