/* ==========================================================================
   DESIGN DECISION RECORD (DDR) — ACCURANCE PUBLISHER REVIEW FOLIO
   ──────────────────────────────────────────────────────────────────────────
   1. SUBJECT       Accurance "Production, Without the Burden" Executive Folio:
                    12 Operational Commitments for Book Publishers.
   2. AUDIENCE      Book publishers, editorial directors, and production managers
                    evaluating production outsourcing on desktop and tablet.
   3. SINGLE JOB    Enable publishers to review all 12 operational commitments with
                    dignified clarity and initiate a representative 1-book test.
   4. SUBJECT WORLD Galley proofs, Chicago Manual of Style, book layout grids,
                    typesetting signatures, running headers, author correspondence.
   5. REFERENCE     Penguin Classics editorial guidelines, Monotype specimen books,
                    and the inherited Accurance brand system.
   6. MUST NOT BE   A SaaS dark-tech modal, neon startup popup, or gamified app.
   7. PALETTE       ground: #FFFFFF (cards) / #F5F7F8 (folio deck)
                    ink: #1D2A37 (primary body) / #183C56 (brand navy headers)
                    accent: #FABA0F (Accurance brand gold, ≤8% surface)
                    support: #647386 (metadata) / #DCE4E9 (hairlines) / #334352 (text)
                    semantic: #2E7D32 (green verified), #C62828 (alert)
   8. TYPE          display: Trebuchet MS, Arial, Helvetica, sans-serif
                    body: Arial, Helvetica Neue, Helvetica, sans-serif
                    numeric: Tabular figures for 01–12 index, 27 years, 100k titles
                    scale ratio: 1.25 (11px, 13px, 15px, 18px, 22px, 32px)
   9. LAYOUT        Opaque executive folio dialog (max 880px, max 88vh).
                    Header banner in brand navy (#183C56) with logo panel.
                    Clean vertical statement list with single-click expansion.
   10. SHAPE/DEPTH  radius: 6px modal, 4px cards/buttons (matching host site).
                    depth: 1px hairline border (#DCE4E9) + soft shadow (0 12px 32px rgba(24,60,86,0.14)).
   11. MOTION       160ms ease-out entrance; 140ms details expansion.
                    Full prefers-reduced-motion override. Zero infinite loops.
   12. VOICE        Decisive, calm, authoritative. No filler adjectives ("seamless",
                    "supercharge", "revolutionary", "game-changing").
   13. SIGNATURE    Publisher Review Folio anchored with the Accurance open-book
                    identity and clean numeric folio pagination.
   14. JUSTIFIED    - Accordion details: Matches publisher reading behavior for 12 policies.
                    - Search filter: Fast keyword navigation across dense copy.
   ========================================================================== */

:root {
  --acc-ground: #ffffff;
  --acc-folio-deck: #f5f7f8;
  --acc-ink: #1d2a37;
  --acc-ink-detail: #334352;
  --acc-ink-muted: #647386;
  --acc-navy: #183c56;
  --acc-navy-deep: #0e273a;
  --acc-blue-link: #034a7b;
  --acc-gold: #faba0f;
  --acc-gold-hover: #e5a707;
  --acc-line: #dce4e9;
  --acc-line-button: #b8c9d4;
  --acc-radius-sm: 4px;
  --acc-radius-md: 6px;
  --acc-font-display: Trebuchet, 'Trebuchet MS', Tahoma, Arial, sans-serif;
  --acc-font-body: Arial, 'Helvetica Neue', Helvetica, sans-serif;
  --acc-shadow: 0 16px 36px rgba(24, 60, 86, 0.18), 0 2px 8px rgba(24, 60, 86, 0.08);
}

/* --- Backdrop Overlay --- */
#accurance-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 100000;
  background-color: rgba(14, 39, 58, 0.65);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 160ms ease-out, visibility 160ms ease-out;
  box-sizing: border-box;
  font-family: var(--acc-font-body);
  color: var(--acc-ink);
}

#accurance-modal-overlay * {
  box-sizing: border-box;
}

#accurance-modal-overlay.active {
  opacity: 1;
  visibility: visible;
}

/* --- Modal Window Container --- */
.acc-folio-window {
  position: relative;
  width: 100%;
  max-width: 880px;
  max-height: 88vh;
  background-color: var(--acc-folio-deck);
  border: 1px solid var(--acc-line);
  border-radius: var(--acc-radius-md);
  box-shadow: var(--acc-shadow);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transform: translateY(12px);
  transition: transform 180ms ease-out;
}

#accurance-modal-overlay.active .acc-folio-window {
  transform: translateY(0);
}

/* --- Header Banner (Accurance Brand Navy) --- */
.acc-folio-header {
  background-color: var(--acc-navy);
  color: #ffffff;
  padding: 24px 28px 20px;
  position: relative;
  border-bottom: 2px solid var(--acc-gold);
}

.acc-header-top-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.acc-logo-badge {
  display: inline-flex;
  align-items: center;
  background: transparent;
  padding: 0;
  border: none;
  box-shadow: none;
}

.acc-logo-img {
  display: block;
  height: 90px;
  width: auto;
  max-width: 100%;
  object-fit: contain;
  filter: drop-shadow(1px 0 0 #ffffff)
          drop-shadow(-1px 0 0 #ffffff)
          drop-shadow(0 1px 0 #ffffff)
          drop-shadow(0 -1px 0 #ffffff)
          drop-shadow(1px 1px 0 #ffffff)
          drop-shadow(-1px -1px 0 #ffffff)
          drop-shadow(1px -1px 0 #ffffff)
          drop-shadow(-1px 1px 0 #ffffff)
          drop-shadow(0 0 3px rgba(255, 255, 255, 0.85));
}

.acc-btn-close-folio {
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: var(--acc-radius-sm);
  color: #ffffff;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  cursor: pointer;
  line-height: 1;
  padding: 0;
  transition: background-color 140ms ease, color 140ms ease;
}

.acc-btn-close-folio:hover {
  background-color: #ffffff;
  color: var(--acc-navy);
}

.acc-btn-close-folio:focus-visible {
  outline: 2px solid var(--acc-gold);
  outline-offset: 2px;
}

.acc-folio-title {
  font-family: var(--acc-font-display);
  font-size: clamp(24px, 3.5vw, 32px);
  font-weight: bold;
  letter-spacing: -0.5px;
  line-height: 1.2;
  margin: 10px 0 6px;
  color: #ffffff;
}

.acc-folio-subhead {
  color: #d8e5ee;
  font-size: 14px;
  margin: 0;
  max-width: 650px;
  line-height: 1.45;
}

/* --- Scrollable Folio Body --- */
.acc-folio-scroll {
  flex: 1;
  overflow-y: auto;
  padding: 22px 28px;
  scrollbar-width: thin;
  scrollbar-color: #b8c9d4 var(--acc-folio-deck);
}

.acc-folio-scroll::-webkit-scrollbar {
  width: 7px;
}

.acc-folio-scroll::-webkit-scrollbar-track {
  background: var(--acc-folio-deck);
}

.acc-folio-scroll::-webkit-scrollbar-thumb {
  background: #b8c9d4;
  border-radius: 4px;
}

.acc-folio-scroll::-webkit-scrollbar-thumb:hover {
  background: #8fa6b6;
}

/* --- Editorial Toolbar --- */
.acc-folio-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
  flex-wrap: wrap;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--acc-line);
}

.acc-count-label {
  font-size: 13px;
  color: var(--acc-ink-muted);
  font-weight: normal;
  margin: 0;
}

.acc-count-label strong {
  color: var(--acc-ink);
  font-variant-numeric: tabular-nums;
}

.acc-toolbar-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.acc-btn-utility {
  background-color: #ffffff;
  border: 1px solid var(--acc-line-button);
  border-radius: var(--acc-radius-sm);
  color: var(--acc-navy);
  padding: 6px 12px;
  font-size: 12px;
  font-weight: bold;
  cursor: pointer;
  font-family: inherit;
  line-height: 1.3;
  transition: background-color 140ms ease, border-color 140ms ease;
}

.acc-btn-utility:hover {
  background-color: #eaf2f7;
  border-color: #9cb4c2;
}

.acc-btn-utility:focus-visible {
  outline: 2px solid var(--acc-navy);
  outline-offset: 1px;
}

/* --- Category Filter Row --- */
.acc-filter-strip {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  flex-wrap: wrap;
}

.acc-tabs-list {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.acc-tab-btn {
  background-color: #ffffff;
  border: 1px solid var(--acc-line);
  border-radius: var(--acc-radius-sm);
  color: var(--acc-ink);
  padding: 6px 11px;
  font-size: 12px;
  font-weight: bold;
  cursor: pointer;
  font-family: inherit;
  transition: all 140ms ease;
}

.acc-tab-btn:hover {
  background-color: #f0f4f7;
  color: var(--acc-navy);
}

.acc-tab-btn.active {
  background-color: var(--acc-gold);
  border-color: var(--acc-gold);
  color: var(--acc-blue-link);
}

.acc-tab-btn:focus-visible {
  outline: 2px solid var(--acc-navy);
  outline-offset: 1px;
}

/* --- Folio Statement Items (Accurance Accordion) --- */
.acc-folio-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

details.acc-statement-item {
  background-color: #ffffff;
  border: 1px solid var(--acc-line);
  border-radius: var(--acc-radius-md);
  margin: 0;
  overflow: hidden;
  box-shadow: 0 1px 4px rgba(28, 53, 70, 0.04);
  transition: border-color 140ms ease, box-shadow 140ms ease;
}

details.acc-statement-item[open] {
  border-color: #b8c9d4;
  box-shadow: 0 2px 8px rgba(28, 53, 70, 0.07);
}

details.acc-statement-item summary {
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 20px;
  cursor: pointer;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.38;
  color: var(--acc-ink);
  user-select: none;
  transition: background-color 140ms ease;
}

details.acc-statement-item summary::-webkit-details-marker {
  display: none;
}

details.acc-statement-item summary:hover {
  background-color: #f8fbfd;
}

details.acc-statement-item summary:focus-visible {
  outline: 2px solid var(--acc-blue-link);
  outline-offset: -2px;
}

.acc-statement-headline {
  flex: 1;
  color: var(--acc-ink);
  font-size: 16px;
  line-height: 1.4;
}

details.acc-statement-item[open] .acc-statement-headline {
  color: var(--acc-navy);
}

.acc-statement-symbol {
  flex: 0 0 26px;
  width: 26px;
  height: 26px;
  display: grid;
  place-items: center;
  border: 1px solid #d0dee8;
  border-radius: 50%;
  font-size: 18px;
  font-weight: 400;
  color: #365c75;
  line-height: 1;
  transition: all 140ms ease;
}

details.acc-statement-item summary:hover .acc-statement-symbol {
  border-color: var(--acc-navy);
  background-color: #eaf2f7;
}

details.acc-statement-item[open] .acc-statement-symbol {
  font-size: 0;
  background-color: var(--acc-navy);
  border-color: var(--acc-navy);
  color: #ffffff;
}

details.acc-statement-item[open] .acc-statement-symbol::before {
  content: '−';
  font-size: 20px;
  color: #ffffff;
}

.acc-statement-explanation {
  border-top: 1px solid var(--acc-line);
  padding: 14px 22px 18px;
  font-size: 15px;
  color: var(--acc-ink-detail);
  line-height: 1.6;
  background-color: #fafbfc;
}

.acc-statement-explanation p {
  max-width: 760px;
  margin: 0 0 10px;
}

.acc-statement-explanation p:last-child {
  margin-bottom: 0;
}

/* --- Footer Action Bar --- */
.acc-folio-footer {
  padding: 14px 28px;
  background-color: #f8fafc;
  border-top: 1px solid var(--acc-line);
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
  flex-wrap: wrap;
  min-height: 62px;
  box-sizing: border-box;
}

.acc-footer-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  width: 100%;
  opacity: 1;
  pointer-events: auto;
  transform: none;
}

.acc-btn-primary-trial {
  background-color: var(--acc-gold);
  border: 1px solid var(--acc-gold);
  border-radius: var(--acc-radius-sm);
  color: var(--acc-blue-link);
  padding: 8px 16px;
  font-size: 13px;
  font-weight: bold;
  text-decoration: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: background-color 140ms ease;
}

.acc-btn-primary-trial:hover {
  background-color: var(--acc-gold-hover);
  border-color: var(--acc-gold-hover);
  color: var(--acc-navy);
}

.acc-btn-primary-trial:focus-visible {
  outline: 2px solid var(--acc-navy);
  outline-offset: 1px;
}

.acc-btn-dismiss {
  background-color: #ffffff;
  border: 1px solid var(--acc-line-button);
  border-radius: var(--acc-radius-sm);
  color: var(--acc-navy);
  padding: 8px 14px;
  font-size: 13px;
  font-weight: bold;
  cursor: pointer;
  font-family: inherit;
  transition: background-color 140ms ease;
}

.acc-btn-dismiss:hover {
  background-color: #eaf2f7;
}

.acc-btn-dismiss:focus-visible {
  outline: 2px solid var(--acc-navy);
  outline-offset: 1px;
}

.acc-btn-folio-contact {
  background-color: var(--acc-gold);
  border: 1px solid var(--acc-gold);
  border-radius: var(--acc-radius-sm);
  color: var(--acc-navy);
  padding: 8px 16px;
  font-size: 13px;
  font-weight: bold;
  cursor: pointer;
  font-family: inherit;
  transition: background-color 140ms ease, border-color 140ms ease;
}

.acc-btn-folio-contact:hover {
  background-color: var(--acc-gold-hover);
  border-color: var(--acc-gold-hover);
  color: var(--acc-navy);
}

.acc-btn-folio-contact:focus-visible {
  outline: 2px solid var(--acc-navy);
  outline-offset: 1px;
}

/* --- Prefers-Reduced-Motion --- */
@media (prefers-reduced-motion: reduce) {
  #accurance-modal-overlay,
  .acc-folio-window,
  details.acc-statement-item summary,
  .acc-statement-symbol,
  .acc-footer-actions {
    transition: none !important;
    transform: none !important;
  }
}

/* --- Responsive Layout --- */
@media (max-width: 640px) {
  .acc-folio-header {
    padding: 18px 20px 16px;
  }
  .acc-logo-badge {
    padding: 0;
  }
  .acc-logo-img {
    height: 62px;
  }
  .acc-folio-scroll {
    padding: 16px 18px;
  }
  .acc-folio-footer {
    padding: 12px 18px;
  }
  details.acc-statement-item summary {
    padding: 14px 16px;
    font-size: 15px;
  }
  .acc-statement-explanation {
    padding: 12px 16px 16px;
    font-size: 14px;
  }
  .acc-filter-strip {
    flex-direction: column;
    align-items: stretch;
  }
}

/* --- Homepage Stacked Services Rows --- */
#slideshowu534 {
  margin-bottom: 56px !important;
}

#pu648 {
  width: 960px !important;
  margin-top: 56px !important;
  margin-bottom: 64px !important;
  padding: 0 35px !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 64px !important;
  float: none !important;
  position: relative !important;
  clear: both !important;
}

.acc-service-row {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  gap: 28px !important;
  width: 100% !important;
  max-width: 890px !important;
  float: none !important;
  margin: 0 !important;
  clear: both !important;
  position: relative !important;
  padding-bottom: 12px !important;
}

.acc-service-row .clip_frame {
  flex-shrink: 0 !important;
  width: 56px !important;
  height: 56px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: static !important;
  left: auto !important;
  top: auto !important;
  margin: 3px 0 0 0 !important;
  float: none !important;
}

.acc-service-row .clip_frame img {
  display: block !important;
  max-width: 48px !important;
  max-height: 52px !important;
  width: auto !important;
  height: auto !important;
  margin: auto !important;
}

.acc-service-row .acc-service-content,
.acc-service-row #u684-15,
.acc-service-row #u685-14,
.acc-service-row #u688-13 {
  flex: 1 !important;
  width: auto !important;
  max-width: 800px !important;
  min-height: auto !important;
  position: static !important;
  left: auto !important;
  top: auto !important;
  margin: 0 !important;
  float: none !important;
}

.acc-service-row .acc-service-title,
.acc-service-row #u684-4,
.acc-service-row #u685-4,
.acc-service-row #u688-4 {
  font-family: Trebuchet, "Trebuchet MS", Tahoma, Arial, sans-serif !important;
  font-size: 18px !important;
  font-weight: bold !important;
  color: #362F2D !important;
  margin: 0 0 12px 0 !important;
  padding: 0 !important;
  line-height: 1.35 !important;
  letter-spacing: 0.4px !important;
}

.acc-service-row .acc-service-desc,
.acc-service-row #u684-13,
.acc-service-row #u685-12,
.acc-service-row #u688-9 {
  font-family: Trebuchet, "Trebuchet MS", Tahoma, Arial, sans-serif !important;
  font-size: 15.5px !important;
  color: #362F2D !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.6 !important;
}

.acc-service-row .acc-service-desc a,
.acc-service-row #u684-13 a,
.acc-service-row #u685-12 a,
.acc-service-row #u688-9 a {
  color: #FABA0F !important;
  font-weight: bold !important;
  text-decoration: none !important;
  margin-left: 8px !important;
  white-space: nowrap !important;
}

.acc-service-row .acc-service-desc a:hover,
.acc-service-row #u684-13 a:hover,
.acc-service-row #u685-12 a:hover,
.acc-service-row #u688-9 a:hover {
  color: #034A7B !important;
  text-decoration: underline !important;
}

#page {
  min-height: auto !important;
}

.css_verticalspacer .verticalspacer {
  height: auto !important;
  min-height: 48px !important;
}

/* ==========================================================================
   ABOUT US PAGE — EXPANDABLE 12-AND-12 INLINE PRESENTATION
   ========================================================================== */

.acc-about-intro {
  font-family: Trebuchet, 'Trebuchet MS', Tahoma, Arial, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
  color: #362F2D !important;
  text-align: left !important;
  margin: 0 0 14px 0 !important;
}

.acc-benefits-heading {
  font-family: Trebuchet, 'Trebuchet MS', Tahoma, Arial, sans-serif !important;
  font-size: 24px !important;
  line-height: 1.3 !important;
  font-weight: bold !important;
  color: #183C56 !important;
  margin: 28px 0 8px 0 !important;
  padding: 0 !important;
  text-align: left !important;
  letter-spacing: -0.2px !important;
}

.acc-benefits-subhead {
  font-family: Trebuchet, 'Trebuchet MS', Tahoma, Arial, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  color: #555555 !important;
  margin: 0 0 16px 0 !important;
  text-align: left !important;
}

/* Seamless list laid directly into the page */
.acc-benefits-list {
  margin: 12px 0 36px 0 !important;
  border-top: 1px solid #dcdcdc !important;
  text-align: left !important;
  background: transparent !important;
}

.acc-benefit-item {
  border-bottom: 1px solid #e5e5e5 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.acc-benefit-summary {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 13px 4px !important;
  cursor: pointer !important;
  list-style: none !important;
  font-family: Trebuchet, 'Trebuchet MS', Tahoma, Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: bold !important;
  color: #034A7B !important;
  line-height: 1.4 !important;
  user-select: none !important;
  transition: color 150ms ease !important;
  background: transparent !important;
}

.acc-benefit-summary::-webkit-details-marker {
  display: none !important;
}

.acc-benefit-summary:hover {
  color: #faba0f !important;
}

.acc-benefit-headline {
  flex: 1 !important;
  padding-right: 12px !important;
}

.acc-benefit-icon {
  font-size: 20px !important;
  font-weight: normal !important;
  color: #7a8b99 !important;
  flex-shrink: 0 !important;
  width: 22px !important;
  text-align: center !important;
  line-height: 1 !important;
  transition: color 150ms ease !important;
}

.acc-benefit-summary:hover .acc-benefit-icon {
  color: #faba0f !important;
}

.acc-benefit-item[open] > .acc-benefit-summary {
  color: #034A7B !important;
}

.acc-benefit-item[open] > .acc-benefit-summary .acc-benefit-icon {
  font-size: 0 !important;
  color: #034A7B !important;
}

.acc-benefit-item[open] > .acc-benefit-summary .acc-benefit-icon::before {
  content: '−' !important;
  font-size: 20px !important;
}

.acc-benefit-explanation {
  padding: 2px 4px 16px 4px !important;
  font-family: Trebuchet, 'Trebuchet MS', Tahoma, Arial, sans-serif !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  color: #362F2D !important;
  text-align: left !important;
  background: transparent !important;
}

.acc-benefit-explanation p {
  margin: 0 0 10px 0 !important;
  max-width: 900px !important;
}

.acc-benefit-explanation p:last-child {
  margin-bottom: 0 !important;
}


