/* Option A: shared paper service disclosure. Home retains its own design layer. */
.cs-site-header .cs-services-toggle[hidden],
.cs-site-header .cs-services-fallback[hidden],
.cs-site-header .cs-services-panel[hidden] { display:none !important; }
.cs-site-header .cs-services-entry { position:static; min-width:0; }
.cs-site-header .cs-services-toggle {
  display:inline-flex; align-items:center; gap:7px; min-height:44px;
  margin:0; padding:0; border:0; border-radius:0; background:transparent;
  color:var(--cs-text,#f7f8fa); font-family:inherit; font-size:13px;
  font-weight:400; line-height:1.5; cursor:pointer; text-align:left;
  transition:color 140ms;
}
.cs-site-header .cs-services-toggle:hover,
.cs-site-header .cs-services-toggle[aria-expanded="true"],
.cs-site-header .cs-services-toggle.is-current {
  text-decoration:underline; text-decoration-color:#b83229;
  text-underline-offset:7px; text-decoration-thickness:2px;
}
.cs-site-header .cs-services-toggle:focus-visible { outline:2px solid #f7f8fa; outline-offset:5px; }
.cs-site-header .cs-services-chevron { flex:none; transition:transform 160ms cubic-bezier(.2,.7,.2,1); }
.cs-site-header .cs-services-toggle[aria-expanded="true"] .cs-services-chevron { transform:rotate(180deg); transition-duration:220ms; }
.cs-site-header .cs-services-panel {
  position:absolute; inset:100% 0 auto; z-index:1;
  background-color:#f5f3ef;
  background-image:var(--cs-paper-texture,url('../images/comans-fine-paper-v1.webp'));
  background-repeat:repeat; background-size:384px 384px; background-position:0 0;
  color:#0b0d12; box-shadow:0 16px 24px rgba(11,13,18,.12);
  opacity:0; transform:translateY(-6px);
}
.cs-site-header .cs-services-panel.is-open { opacity:1; transform:translateY(0); }
.cs-site-header .cs-services-inner { width:min(100%,1328px); margin-inline:auto; padding:32px 64px 20px; }
.cs-site-header .cs-services-groups { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px; }
.cs-site-header .cs-services-group { min-width:0; }
.cs-site-header .cs-services-group h2 { margin:0 0 12px; color:#545b66; font:500 13px/1.5 Lexend,Arial,sans-serif; letter-spacing:0; text-transform:none; }
.cs-site-header .cs-services-group ul { list-style:none; padding:0; margin:0; }
.cs-site-header .cs-services-group li { margin:0; padding:0; }
.cs-site-header .cs-services-panel a {
  display:flex; align-items:center; gap:8px; min-height:44px; padding:10px 0;
  color:#0b0d12; font:400 15px/1.5 Lexend,Arial,sans-serif;
  text-decoration:none; text-underline-offset:5px; text-decoration-thickness:1px;
  overflow-wrap:normal; white-space:normal; transition:color 140ms;
}
.cs-site-header .cs-services-panel a:hover,
.cs-site-header .cs-services-panel a[aria-current],
.cs-site-header .cs-services-panel a:focus-visible { color:#b83229; text-decoration:underline; text-decoration-thickness:1px; text-underline-offset:5px; }
.cs-site-header .cs-services-panel a:focus-visible { outline:2px solid #b83229; outline-offset:3px; }
.cs-site-header .cs-services-footer { margin-top:20px; border-top:1px solid #d9dde3; padding-top:12px; }
.cs-site-header .cs-services-footer a { width:fit-content; font-size:14px; }
.cs-site-header .cs-services-footer a span { display:inline-block; text-decoration:none; }
@media(max-width:1200px) {
  .cs-site-header .cs-services-inner { padding-inline:40px; }
}
@media(max-width:1000px) {
  .cs-site-header .cs-mobile-nav > nav {
    max-height:calc(100vh - 88px); max-height:calc(100dvh - var(--cs-header-height,88px));
    padding-bottom:max(20px,env(safe-area-inset-bottom));
    overflow-y:auto; overscroll-behavior-y:contain;
  }
  .cs-site-header .cs-mobile-nav .cs-services-toggle { width:100%; justify-content:space-between; padding:12px; min-height:48px; font-size:16px; }
  .cs-site-header .cs-mobile-nav .cs-services-panel { position:static; box-shadow:none; }
  .cs-site-header .cs-services-inner { padding:24px 0 20px; }
  .cs-site-header .cs-services-groups { grid-template-columns:1fr; gap:24px; }
  .cs-site-header .cs-services-group h2 { margin-inline:20px; }
  .cs-site-header .cs-services-panel a { font-size:16px; padding:10px 20px; }
  /* Outrank the older page-specific mobile navigation padding. */
  .cs-site-header .cs-mobile-nav .cs-services-panel a { padding-inline:20px; }
  .cs-site-header .cs-services-panel a:focus-visible { outline-offset:-4px; }
  .cs-site-header .cs-services-footer { margin-inline:20px; }
  .cs-site-header .cs-mobile-nav .cs-services-panel .cs-services-footer a { padding-inline:0; }
}
@media(prefers-reduced-motion:reduce) {
  .cs-site-header .cs-services-chevron,
  .cs-site-header .cs-services-toggle,
  .cs-site-header .cs-services-panel a { transition:none !important; }
  .cs-site-header .cs-services-panel { transform:none !important; }
}
@media print {
  .cs-site-header .cs-services-panel { display:none !important; background-image:none !important; }
}
